:root {
  font-family: "Microsoft YaHei UI", "Microsoft YaHei", "Segoe UI", Arial, sans-serif;
  color: #1f2d3d;
  background: #eef2f6;
  --blue: #0f477a;
  --active: #2f86e8;
  --line: #e4e9f0;
}

* { box-sizing: border-box; }
body { margin: 0; background: #eef2f6; -webkit-font-smoothing: antialiased; text-rendering: optimizeLegibility; }
.app-shell { display: flex; min-height: 100vh; }
.sidebar { width: 162px; flex: 0 0 162px; background: var(--blue); color: #d8eaff; box-shadow: 2px 0 10px #123b5e22; }
.brand { height: 50px; display: flex; align-items: center; gap: 9px; padding: 0 18px; background: #0c406f; color: #fff; font-size: 23px; }
.brand-mark { width: 25px; height: 25px; border-radius: 50%; background: #fff; color: #1976d2; display: grid; place-items: center; font-weight: 800; font-size: 16px; }
.side-nav { padding-top: 7px; }
.nav-title, .nav-item { height: 48px; width: 100%; border: 0; background: transparent; color: #c9e0f8; display: flex; align-items: center; gap: 11px; padding: 0 12px; font-size: 16px; text-align: left; cursor: pointer; }
.nav-title:hover, .nav-item:hover, .nav-item.active { background: var(--active); color: #fff; }
.nav-children:not(.open) .nav-item.child { display: none; }
.nav-item.child { height: 44px; padding-left: 31px; font-size: 15px; background: #0b3f70; }
.nav-item.child:hover, .nav-item.child.active { background: var(--active); }
.nav-item.child.pending { color: #7792a8; }
.nav-item.child.pending .nav-icon { color: #668299; }
.nav-item.child.pending:hover { color: #a9bac8; background: #155481; }
.nav-item.child.pending.active { color: #a9bac8; background: #1c5f91; }
.nav-item.muted { opacity: .95; }
.chevron { margin-left: auto; width: 7px; height: 7px; border-right: 1px solid currentColor; border-bottom: 1px solid currentColor; transform: rotate(45deg); transition: transform .16s ease; opacity: .85; }
.nav-group:has(.nav-children.open) .chevron { transform: rotate(225deg); }
.nav-icon { width: 16px; height: 16px; flex: 0 0 16px; position: relative; display: inline-block; color: #9ec4e8; background: #0f477a; border-radius: 2px; isolation: isolate; }
.active .nav-icon, .nav-title:hover .nav-icon, .nav-item:hover .nav-icon { color: #fff; }
.nav-title:hover .nav-icon, .nav-item:hover .nav-icon, .nav-item.active .nav-icon { background: var(--active); }
.nav-icon.home { border: 0; transform: none; }
.nav-icon.home:before { content: ""; position: absolute; width: 9px; height: 9px; border-left: 1px solid currentColor; border-top: 1px solid currentColor; transform: rotate(45deg); left: 3px; top: 2px; }
.nav-icon.home:after { content: ""; position: absolute; width: 9px; height: 7px; border: 1px solid currentColor; border-top: 0; left: 3px; bottom: 1px; }
.nav-icon.list { border: 1px solid currentColor; }
.nav-icon.list:before, .nav-icon.list:after { content: ""; position: absolute; left: 3px; right: 3px; border-top: 1px solid currentColor; }
.nav-icon.list:before { top: 4px; }
.nav-icon.list:after { top: 8px; }
.nav-icon.chart { border: 0; }
.nav-icon.chart:after { content: ""; position: absolute; left: 1px; right: 1px; bottom: 1px; height: 1px; background: currentColor; }
.nav-icon.chart:before { content: ""; position: absolute; left: 3px; bottom: 2px; width: 2px; height: 7px; background: currentColor; box-shadow: 4px -3px 0 currentColor, 8px -6px 0 currentColor; }
.nav-icon.target { border: 1px solid currentColor; border-radius: 50%; }
.nav-icon.target:before { content: ""; position: absolute; inset: 4px; border: 1px solid currentColor; border-radius: 50%; }
.nav-icon.profit { border: 1px solid currentColor; border-radius: 2px; }
.nav-icon.profit:before { content: ""; position: absolute; left: 3px; right: 3px; bottom: 3px; height: 5px; border-top: 1px solid currentColor; border-bottom: 1px solid currentColor; }
.nav-icon.box { border: 1px solid currentColor; border-radius: 2px; }
.nav-icon.box:before { content: ""; position: absolute; left: 2px; right: 2px; top: 4px; border-top: 1px solid currentColor; }
.nav-icon.warn { border: 1px solid currentColor; border-radius: 50%; }
.nav-icon.warn:before { content: ""; position: absolute; left: 6px; top: 3px; height: 5px; border-left: 1px solid currentColor; }
.nav-icon.warn:after { content: ""; position: absolute; left: 6px; bottom: 2px; width: 2px; height: 2px; background: currentColor; }
.nav-icon.msg { border: 1px solid currentColor; border-radius: 50%; }
.nav-icon.msg:after { content: ""; position: absolute; left: 2px; bottom: -3px; width: 4px; height: 4px; border-left: 1px solid currentColor; border-bottom: 1px solid currentColor; }
.nav-icon.shield { border: 1px solid currentColor; border-radius: 7px 7px 5px 5px; }
.nav-icon.gear { border: 1px solid currentColor; border-radius: 50%; }
.nav-icon.gear:before { content: ""; position: absolute; inset: 4px; border: 1px solid currentColor; border-radius: 50%; }
.nav-icon.dot:before { content: ""; position: absolute; width: 5px; height: 5px; border-radius: 50%; background: currentColor; left: 5px; top: 5px; }

.main-panel { flex: 1; min-width: 0; }
.topbar { height: 50px; background: #0c406f; color: #d8eaff; display: flex; align-items: center; justify-content: space-between; padding: 0 18px; }
.crumbs { display: flex; align-items: center; gap: 10px; font-size: 14px; }
.crumbs b { color: #81afd9; font-weight: 400; }
.top-actions { display: flex; align-items: center; gap: 14px; }
.status-dot, .clock { font-size: 12px; color: #d6e7f7; }
.clock { min-width: 182px; display: flex; flex-direction: column; justify-content: center; gap: 2px; line-height: 1.15; white-space: nowrap; font-variant-numeric: tabular-nums; }
.clock span { display: grid; grid-template-columns: 42px 1fr; align-items: center; column-gap: 5px; }
.clock b { font-weight: 400; text-align: right; }
.clock time { text-align: left; }
.status-dot:before { content: ""; display: inline-block; width: 7px; height: 7px; border-radius: 50%; background: #45d18a; margin-right: 7px; }
.primary, .ghost { height: 32px; border: 1px solid var(--active); background: var(--active); color: #fff; padding: 0 14px; border-radius: 4px; font-weight: 600; cursor: pointer; }
.primary:disabled { opacity: .6; cursor: wait; }
.ghost { background: #fff; color: #2f6fae; border-color: #d4e0ed; }

main { padding: 14px 14px 20px; }
.metrics { display: grid; grid-template-columns: repeat(5, minmax(150px, 1fr)); gap: 16px; background: #fff; margin: 0 0 14px; padding: 16px 24px; }
.metrics.order-metrics { grid-template-columns: repeat(7, minmax(132px, 1fr)); gap: 12px; }
.metric { height: 76px; border-radius: 5px; display: flex; flex-direction: column; align-items: center; justify-content: center; position: relative; overflow: hidden; }
.metric:after { content: ""; position: absolute; right: 0; bottom: 0; width: 72px; height: 42px; background: linear-gradient(135deg, #ffffff00, #ffffff66); }
.metric.blue { background: #d9eaff; }
.metric.violet { background: #e1e3ff; }
.metric.pink { background: #ffe8fb; }
.metric.green { background: #d5f3ee; }
.metric strong { font-size: 22px; color: #2178ff; line-height: 1; }
.metric.green strong { color: #1cb7a9; }
.metric.pink strong { color: #db55dc; }
.metric span { margin-top: 7px; color: #1677ff; font-size: 13px; }
.metric small { font-size: 11px; color: #708296; }
.toolbar { background: #fff; border-bottom: 1px solid var(--line); padding: 13px 24px; }
.filters { display: flex; align-items: center; gap: 8px; flex-wrap: wrap; }
.filters select, .filters input { height: 34px; border: 1px solid #d4dde8; background: #fff; border-radius: 4px; padding: 0 10px; color: #33404a; }
.filters input { width: 250px; }
.table-shell { background: #fff; }
.table-head { height: 40px; display: flex; justify-content: space-between; align-items: center; padding: 0 18px; border-bottom: 1px solid var(--line); font-size: 14px; }
.table-head span { font-size: 12px; color: #7d8b99; }
.table-scroll { overflow: auto; max-height: calc(100vh - 241px); }
table { width: 100%; border-collapse: collapse; min-width: 1380px; }
th, td { text-align: center; padding: 9px 12px; border: 1px solid #e8edf3; font-size: 12px; white-space: nowrap; }
th { position: sticky; top: 0; background: #f7f8fa; color: #3f4c5a; font-weight: 650; z-index: 1; }
td.title { text-align: left; max-width: 310px; overflow: hidden; text-overflow: ellipsis; }
.details-cell { min-width: 130px; }
.details-cell details summary { cursor: pointer; color: #1677ff; }
.details-cell details pre { position: fixed; left: 7vw; top: 7vh; width: 86vw; height: 80vh; overflow: auto; background: #10253a; color: #eef7ff; padding: 18px; text-align: left; white-space: pre-wrap; z-index: 50; box-shadow: 0 8px 30px #0005; }
.stock-low, .negative { color: #d84848; font-weight: 650; }
.positive { color: #108c5a; font-weight: 650; }
.tag { display: inline-block; padding: 3px 7px; border-radius: 3px; background: #eaf3ff; color: #1976d2; }
.toast { position: fixed; right: 24px; bottom: 24px; background: #173552; color: #fff; padding: 12px 16px; border-radius: 5px; display: none; max-width: 520px; font-size: 13px; z-index: 100; }
.toast.show { display: block; }
.modal-backdrop { position:fixed; inset:0; z-index:180; display:grid; place-items:center; padding:20px; background:#14253666; }
.modal-backdrop[hidden] { display:none; }
.sync-dialog { width:min(540px,calc(100vw - 32px)); background:#fff; border:1px solid #dce3ea; border-radius:6px; box-shadow:0 18px 48px #10203040; color:#3e4b57; }
.sync-dialog > header { height:52px; display:flex; align-items:center; justify-content:space-between; padding:0 18px; border-bottom:1px solid #e6ebef; }
.sync-dialog h2 { margin:0; font-size:16px; font-weight:650; }
.modal-close { width:30px; height:30px; border:0; background:transparent; color:#7f8a94; font-size:22px; cursor:pointer; }
.sync-mode-options { display:grid; grid-template-columns:1fr 1fr; gap:12px; padding:20px 20px 14px; }
.sync-mode { min-height:78px; display:flex; flex-direction:column; align-items:flex-start; justify-content:center; gap:7px; padding:12px 15px; border:1px solid #d8e0e8; border-radius:4px; background:#fff; color:#46535f; text-align:left; cursor:pointer; }
.sync-mode strong { font-size:14px; }.sync-mode span { color:#89949e; font-size:11px; }
.sync-mode.active { border-color:#348be0; background:#edf6ff; color:#287fd0; box-shadow:inset 0 0 0 1px #348be022; }
.sync-history-range { display:flex; align-items:end; justify-content:center; gap:10px; padding:4px 20px 18px; }
.sync-history-range[hidden] { display:none; }
.sync-history-range label { display:flex; flex-direction:column; gap:6px; color:#67737e; font-size:11px; }
.sync-history-range input { width:170px; height:34px; padding:0 9px; border:1px solid #cfd9e3; border-radius:3px; color:#4d5964; }
.sync-progress { margin:4px 20px 18px; padding:15px; border:1px solid #dce4eb; background:#f8fafb; }.sync-progress[hidden] { display:none; }.sync-progress-head { display:flex; align-items:center; justify-content:space-between; color:#3f4d59; font-size:12px; }.sync-progress-head span { color:#2d89da; font-weight:650; }.sync-progress-track { height:8px; margin:9px 0 14px; overflow:hidden; border-radius:4px; background:#e3e9ee; }.sync-progress-track i { display:block; width:0; height:100%; border-radius:4px; background:#36a56e; transition:width .25s ease; }.sync-progress dl { display:grid; grid-template-columns:1fr 1fr; gap:9px 16px; margin:0; }.sync-progress dl div { min-width:0; }.sync-progress dt { color:#8a96a0; font-size:10px; }.sync-progress dd { margin:3px 0 0; overflow:hidden; color:#4b5965; font-size:11px; text-overflow:ellipsis; white-space:nowrap; }.sync-progress-detail { max-height:88px; overflow:auto; margin-top:12px; color:#737f89; font-size:10px; line-height:1.65; }.sync-progress-detail .error { color:#d95058; }
.sync-dialog > footer { height:58px; display:flex; align-items:center; justify-content:flex-end; gap:10px; padding:0 18px; border-top:1px solid #e6ebef; }

/* Reference ERP workspace layout */
.nav-group { position: relative; }
.nav-group.active-group > .nav-title { color: #fff; }
.nav-title sup, .nav-item sup { margin-left: auto; color: #ffd77b; font-size: 10px; }
.nav-children { display: none; background: #0a3963; }
.nav-children.open { display: block; }
.nav-children.open .nav-item.child { display: grid; }
.currency-label { font-size: 12px; color: #d6e7f7; }
.top-select { height: 28px; border: 0; border-radius: 3px; padding: 0 9px; background: #fff; color: #2b5f8d; cursor: pointer; }
.currency-picker { position: relative; }
.currency-picker .top-select { display: flex; align-items: center; gap: 5px; }
.currency-picker .top-select i { width: 6px; height: 6px; margin: 0 1px 3px 4px; border-right: 1px solid #6b7d8d; border-bottom: 1px solid #6b7d8d; transform: rotate(45deg); }
.currency-menu { position: absolute; right: 0; top: 35px; width: 245px; z-index: 80; background: #fff; color: #4c5864; border: 1px solid #dce3e9; box-shadow: 0 8px 22px #1728392b; }
.currency-menu[hidden] { display: none; }
.currency-menu:before { content: ""; position: absolute; right: 28px; top: -6px; width: 10px; height: 10px; transform: rotate(45deg); background: #fff; border-left: 1px solid #dce3e9; border-top: 1px solid #dce3e9; }
.currency-rate-row { width: 100%; height: 31px; display: grid; grid-template-columns: 28px 43px 1fr; align-items: center; border: 0; background: #fff; padding: 0 11px; color: #4f5a65; text-align: left; cursor: pointer; }
.currency-rate-row:hover, .currency-rate-row.active { background: #eef5fd; color: #217fcf; }
.currency-rate-row b { font-weight: 500; }
.currency-flag { width: 20px; height: 14px; display: inline-flex; align-items: center; justify-content: center; overflow: hidden; border: 1px solid #d7dde3; background: #f4f6f8; }
.currency-flag img { display: block; width: 20px; height: 14px; object-fit: cover; }
.currency-rate-row span:last-child { color: #6d7781; font-size: 11px; }
.currency-menu footer { height: 38px; display: flex; align-items: center; justify-content: flex-end; gap: 16px; padding: 0 11px; border-top: 1px solid #e7ebef; }
.currency-menu footer button { border: 0; background: transparent; color: #3187d4; font-size: 11px; cursor: pointer; }
.currency-rates > span { display: block; padding: 14px; color: #8b96a0; font-size: 12px; }
.tab-bar { min-height: 38px; display: flex; align-items: end; gap: 2px; padding: 0 14px; background: #f4f6f9; border-bottom: 1px solid #dfe5eb; }
.page-tab { height: 34px; min-width: 94px; padding: 0 11px; border: 1px solid #dfe5eb; border-bottom: 0; border-radius: 4px 4px 0 0; background: #e9edf2; color: #657587; cursor: pointer; }
.page-tab.active { background: #fff; color: #2d6fa8; font-weight: 650; }
.tab-close { margin-left: 10px; color: #9aa8b5; font-size: 15px; }
.page { padding: 14px; }
.page-heading { display: flex; align-items: center; justify-content: space-between; margin: 0 0 14px; }
.page-heading h1 { margin: 0; color: #23384d; font-size: 21px; font-weight: 650; }
.page-heading p { margin: 4px 0 0; color: #8997a5; font-size: 12px; }
.heading-actions { display: flex; gap: 8px; }
.metrics { grid-template-columns: repeat(5, minmax(150px, 1fr)); }
.metric.orange { background: #fff0dc; }
.metric.orange strong, .metric.orange span { color: #e18a31; }
.grid-2 { display: grid; grid-template-columns: minmax(0, 1fr) minmax(0, 1fr); gap: 14px; margin-bottom: 14px; }
.panel { background: #fff; border: 1px solid #e3e8ee; box-shadow: 0 1px 2px #20304008; }
.panel-title { min-height: 44px; display: flex; justify-content: space-between; align-items: center; padding: 0 16px; border-bottom: 1px solid #e7ebf0; color: #304454; font-size: 14px; }
.link-button { border: 0; background: transparent; color: #3181ca; cursor: pointer; font-size: 12px; }
.muted { color: #8b99a5; font-size: 12px; }
.chart-panel { min-height: 250px; }
.chart { height: 190px; display: flex; padding: 14px 16px 10px 10px; }
.chart-y { width: 42px; display: flex; flex-direction: column; justify-content: space-between; color: #a0abb5; font-size: 10px; text-align: right; padding: 2px 8px 10px 0; }
.chart-area { flex: 1; position: relative; min-width: 0; }
.grid-lines { position: absolute; inset: 0 0 10px; background: repeating-linear-gradient(to bottom, #e8edf2 0, #e8edf2 1px, transparent 1px, transparent 25%); }
.chart svg { position: absolute; inset: 0 0 10px; width: 100%; height: 100%; overflow: visible; }
.product-cell { display: block; max-width: 260px; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; text-align: left; }
.row-action { border: 0; background: transparent; color: #2d80ca; cursor: pointer; }
.loading, .error-state { min-height: 350px; display: grid; place-items: center; align-content: center; gap: 10px; color: #8795a2; background: #fff; border: 1px solid #e2e7ed; }
.error-state strong { color: #c14d4d; }
.error-state span { max-width: 600px; font-size: 12px; }
.empty-cell { height: 180px; color: #a4adb6; }
.toolbar { margin-bottom: 14px; border: 1px solid #e3e8ee; }
.filters { gap: 9px; }
.filters input { width: 270px; }
.date-control { height: 34px; border: 1px solid #d4dde8; border-radius: 4px; background: #fff; color: #4d5d6c; padding: 0 12px; cursor: pointer; }
.table-wrap { overflow: auto; max-height: calc(100vh - 370px); }
.table-wrap table { min-width: 980px; }
.table-wrap th { background: #f5f7fa; }
.table-wrap td { height: 42px; }

@media (max-width: 1100px) {
  .top-actions .currency-label, .top-actions .status-dot { display: none; }
  .metrics { grid-template-columns: repeat(3, minmax(145px, 1fr)); }
}
@media (max-width: 760px) {
  .grid-2 { grid-template-columns: 1fr; }
  .page-heading { align-items: flex-start; gap: 10px; flex-direction: column; }
  .metrics { grid-template-columns: repeat(2, minmax(130px, 1fr)); }
  .top-actions { gap: 6px; }
  .primary { padding: 0 8px; }
}

/* Keep every sidebar row on one clean grid and avoid icon artifacts. */
.side-nav { padding: 8px 0 18px; }
.nav-group { width: 100%; }
.nav-title,
.nav-item {
  display: grid;
  grid-template-columns: 18px minmax(0, 1fr) 12px;
  align-items: center;
  column-gap: 10px;
  width: 100%;
  height: 46px;
  padding: 0 14px;
  border: 0;
  border-left: 3px solid transparent;
  border-radius: 0;
  overflow: hidden;
}
.nav-title > span:not(.nav-icon):not(.chevron),
.nav-item > span:not(.nav-icon):not(.chevron) {
  min-width: 0;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}
.nav-title:hover,
.nav-title.active,
.nav-item:hover,
.nav-item.active {
  background: #2f86e8;
  border-left-color: #9ecfff;
  color: #fff;
}
.nav-group.active-group > .nav-title:not(.active) { color: #fff; }
.nav-icon,
.nav-title:hover .nav-icon,
.nav-title.active .nav-icon,
.nav-item:hover .nav-icon,
.nav-item.active .nav-icon {
  grid-column: 1;
  width: 16px;
  height: 16px;
  margin: 0;
  background: transparent;
  border-radius: 0;
}
.chevron {
  grid-column: 3;
  justify-self: end;
  margin: 0 2px 3px 0;
}
.nav-title sup,
.nav-item sup {
  grid-column: 3;
  justify-self: end;
  margin: 0;
}
.nav-children { padding: 2px 0 4px; background: #0c406f; }
.nav-children .nav-item.child {
  grid-template-columns: 18px minmax(0, 1fr) 12px;
  height: 40px;
  padding: 0 14px 0 28px;
  background: transparent;
  font-size: 14px;
}
.nav-children .nav-item.child:hover,
.nav-children .nav-item.child.active { background: #287ac7; }
.nav-title.implemented,
.nav-children .nav-item.child.implemented { color: #fff; }
.nav-title.pending { color: #7792a8; }
.nav-title.pending .nav-icon,
.nav-children .nav-item.child.pending .nav-icon { color: #668299; }
.nav-icon.dot::before {
  width: 4px;
  height: 4px;
  left: 6px;
  top: 6px;
}

/* Homepage mirrors the reference ERP dashboard composition. */
.home-dashboard { padding: 14px 16px 24px; color: #243547; }
.home-filter { height: 48px; display: flex; align-items: center; gap: 10px; padding: 7px 0; }
.home-filter select, .home-filter button { height: 34px; border: 1px solid #dbe2e9; background: #fff; color: #536273; padding: 0 16px; border-radius: 2px; }
.home-filter select { width: 214px; }
.home-filter .home-date { width: 242px; text-align: left; }
.home-filter button.selected { background: #398fe5; border-color: #398fe5; color: #fff; }
.home-kpis { display: grid; grid-template-columns: repeat(4, minmax(190px, 1fr)); gap: 16px; margin: 4px 0 12px; }
.home-kpi { height: 132px; display: flex; align-items: center; justify-content: space-between; padding: 20px 24px; background: #fff; border: 1px solid #e0e5eb; border-radius: 3px; }
.home-kpi h3 { margin: 0 0 12px; font-size: 16px; font-weight: 650; }
.home-kpi strong { display: block; font-size: 29px; line-height: 1; letter-spacing: 0; }
.home-kpi p { margin: 14px 0 0; color: #5b6570; font-size: 12px; }
.home-kpi.cyan strong { color: #17b6bd; }.home-kpi.blue strong { color: #2394ee; }.home-kpi.violet strong { color: #7569d5; }.home-kpi.sky strong { color: #1b9ce6; }
.help-dot { display: inline-grid; place-items: center; width: 13px; height: 13px; margin-left: 4px; border: 1px solid #86919c; border-radius: 50%; color: #86919c; font-size: 9px; }
.kpi-symbol { width: 58px; height: 58px; display: grid; place-items: center; border-radius: 14px; background: #e6f7fa; color: #27bac5; font-size: 25px; box-shadow: inset 0 0 20px #fff8; }
.blue .kpi-symbol { color: #2e8fe5; background: #e6f2ff; }.violet .kpi-symbol { color: #7769d5; background: #efedff; }.sky .kpi-symbol { color: #20a0e8; background: #e7f7ff; }
.home-row { display: grid; gap: 16px; margin-bottom: 12px; }
.home-row-main { grid-template-columns: 22% minmax(420px, 1fr) 24%; }
.home-row-half { grid-template-columns: 1fr 1fr; }
.home-box { min-width: 0; background: #fff; border: 1px solid #dfe5eb; border-radius: 2px; }
.home-box > header { height: 48px; display: flex; align-items: center; justify-content: space-between; padding: 0 16px; border-bottom: 1px solid #e5e9ed; }
.home-box > header b { font-size: 15px; }
.home-box header button, .rank-box nav button { height: 32px; border: 1px solid #dce2e8; background: #fff; color: #5e6874; padding: 0 14px; }
.home-box header button.active, .rank-box nav button.active { background: #e7f2ff; color: #2583d8; border-color: #d5e7fb; font-weight: 650; }
.performance-box, .trend-box, .store-box { height: 300px; }
.performance-head, .performance-line { display: grid; grid-template-columns: 1.3fr repeat(3, 1fr); align-items: center; padding: 0 20px; }
.performance-head { height: 56px; color: #a0a8b0; font-size: 12px; text-align: center; }
.performance-line { height: 62px; color: #586471; font-size: 13px; }
.performance-line strong { color: #f05e70; text-align: center; }.performance-line em { font-style: normal; font-size: 10px; }
.performance-line em.up { color:#18a47c; }.performance-line em.down { color:#e45a6c; }
.performance-line span { text-align: center; font-weight: 650; color: #7d8791; }
.combo-chart { height: 250px; position: relative; overflow: hidden; padding: 34px 20px 28px; background: repeating-linear-gradient(to bottom,#fff 0,#fff 44px,#e8edf2 45px); }
.combo-chart svg { position: absolute; inset: 38px 18px 30px; width: calc(100% - 36px); height: calc(100% - 68px); z-index: 2; }
.chart-bars { position: absolute; inset: 45px 22px 31px; display: flex; align-items: end; gap: 9px; }
.chart-bars i { flex: 1; position: relative; background: #22c1c3; }.chart-bars i span { position: absolute; left: 50%; width: 48%; bottom: 0; background: #28a7dd; }
.trend-chart-shell { height: 250px; position: relative; overflow: hidden; background: #fff; }
.trend-svg { position: absolute; inset: 28px 8px 8px; width: calc(100% - 16px); height: calc(100% - 36px); overflow: visible; }
.trend-grid line { stroke: #e5e9ed; stroke-width: 1; vector-effect: non-scaling-stroke; }.trend-grid text,.trend-labels text { fill: #89949e; font-size: 10px; }.trend-bars rect { fill: #21c0c4; }.trend-visit-line,.trend-rate-line { fill: none; stroke-linejoin: round; stroke-linecap: round; vector-effect: non-scaling-stroke; }.trend-visit-line { stroke: #7567df; stroke-width: 2.5; }.trend-rate-line { stroke: #258ddc; stroke-width: 2; }.trend-hit { fill: transparent; pointer-events: all; cursor: crosshair; }
.trend-sales-line { fill:none; stroke:#2f86e8; stroke-width:2.5; stroke-linejoin:round; stroke-linecap:round; vector-effect:non-scaling-stroke; }
.trend-legend { position: absolute; right: 18px; top: 8px; z-index: 4; display: flex; gap: 15px; color: #697582; font-size: 10px; }.trend-legend span:before { content:""; display:inline-block; width:10px; height:3px; margin:0 5px 2px 0; }.trend-legend .bar:before { height:8px; background:#21c0c4; }.trend-legend .visit:before { background:#7567df; }.trend-legend .rate:before { background:#258ddc; }
.trend-legend .sales-line:before { background:#2f86e8; }
.trend-guide { position:absolute; top:48px; bottom:30px; z-index:5; border-left:1px dashed #4b9adf; pointer-events:none; }.trend-guide[hidden],.trend-tooltip[hidden] { display:none; }
.trend-tooltip { position:absolute; top:18px; z-index:7; width:132px; padding:8px 10px; border:1px solid #dfe4e9; border-radius:3px; background:#fff; box-shadow:0 5px 15px #24384b2c; color:#5c6874; font-size:10px; pointer-events:none; }.trend-tooltip b { display:block; margin-bottom:5px; color:#66717c; font-weight:500; }.trend-tooltip span { display:grid; grid-template-columns:10px 1fr auto; align-items:center; gap:4px; line-height:18px; }.trend-tooltip i { width:7px; height:7px; border-radius:50%; background:#21c0c4; }.trend-tooltip i.visits { background:#7567df; }.trend-tooltip i.rate { background:#258ddc; }.trend-tooltip i.orders { background:#e9a73d; }.trend-tooltip i.amount { background:#29a978; }.trend-tooltip strong { color:#3f4a55; }
.trend-empty { height:250px; display:grid; place-items:center; color:#9aa5af; }
.store-box .table-wrap { max-height: 251px; }.store-box table { min-width: 100%; }.store-box td,.store-box th { height: 37px; padding: 6px; }
.alert-box, .message-box { height: 300px; }.alert-content { display: grid; grid-template-columns: 55% 45%; height: 250px; padding: 14px; }
.donut { display: grid; place-items: center; position: relative; }.donut i { width: 112px; height: 112px; border-radius: 50%; background: conic-gradient(#2d95e8 0 33%,#25bbb5 33% 66%,#52c965 66%); position: relative; }.donut i:after { content:""; position:absolute; inset:32px; border-radius:50%; background:#fff; }
.alert-stores { overflow: hidden; }.alert-stores > div { padding: 11px 12px; border: 1px solid #e1e6ec; margin-bottom: 5px; }.alert-stores b i { display:inline-block; width:9px; height:9px; border-radius:50%; background:#2f90e5; margin-right:6px; }.alert-stores p { display:flex; gap:20px; margin:10px 0 0; }.alert-stores p span { font-size:11px; color:#65717c; }.alert-stores p strong { display:block; font-size:18px; color:#25384a; margin-top:4px; }
.message-box .table-wrap { max-height: 250px; }.message-box table { min-width:100%; }.message-box .empty-cell { height:180px; }
.ad-box, .stock-box { min-height: 230px; }.ad-metrics { display:grid; grid-template-columns:repeat(5,1fr); gap:1px; background:#e6ebef; }.ad-metrics > div { background:#fff; padding:28px 16px; }.ad-metrics span,.ad-metrics small { display:block; color:#788590; font-size:12px; }.ad-metrics strong { display:block; margin:10px 0; font-size:22px; color:#258bdc; }
.stock-totals { display:flex; gap:56px; padding:16px 22px 6px; }.stock-totals span { color:#77838e; }.stock-totals strong { display:block; font-size:22px; margin-top:4px; }.stock-box .table-wrap { max-height:none; }.stock-box table { min-width:100%; }
.rank-box > header { justify-content:flex-start; gap:30px; }.rank-box nav { display:flex; }.rank-box .table-wrap { max-height:360px; }.rank-box table { min-width:1000px; }.rank-product { min-width:300px; text-align:left; }.rank-product b { display:block; color:#2785d5; font-size:11px; }.rank-product span { display:block; margin-top:4px; overflow:hidden; text-overflow:ellipsis; }
.rank-product-with-image { min-width:310px; display:flex; align-items:center; gap:9px; text-align:left; }.rank-product-with-image > div { min-width:0; }.rank-product-with-image b,.rank-product-with-image small,.rank-product-with-image > div > span { display:block; }.rank-product-with-image b { color:#2785d5; font-size:11px; }.rank-product-with-image small { margin-top:2px; color:#cf5962; font-size:10px; }.rank-product-with-image > div > span { max-width:245px; margin-top:3px; overflow:hidden; text-overflow:ellipsis; white-space:nowrap; color:#6e7a85; font-size:11px; }
@media (max-width: 1200px) { .home-row-main { grid-template-columns: 1fr 1.6fr; }.store-box { grid-column: 1 / -1; height:auto; }.home-kpis { grid-template-columns:repeat(2,1fr); } }
@media (max-width: 800px) { .home-row-main,.home-row-half { grid-template-columns:1fr; }.home-kpis { grid-template-columns:1fr; }.home-filter { overflow:auto; }.home-kpi { height:110px; } }

.store-picker { position: relative; flex: 0 0 214px; width: 214px; z-index: 35; }
.store-picker-trigger { width: 214px; height: 34px; display: flex; align-items: center; gap: 6px; padding: 0 10px 0 6px; border: 1px solid #cbd5df; border-radius: 3px; background: #fff; color: #586570; cursor: pointer; }
.store-picker-trigger:hover, .store-picker-trigger[aria-expanded="true"] { border-color: #3b91e4; }
.store-tags { min-width: 0; flex: 1; display: flex; align-items: center; gap: 4px; overflow: hidden; }
.store-tag { min-width: 0; max-width: 145px; height: 24px; display: flex; align-items: center; gap: 6px; padding: 0 7px 0 9px; border: 1px solid #e0e5ea; border-radius: 3px; background: #f4f6f8; color: #5c6873; font-size: 12px; }
.store-tag span { overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.store-tag i { color: #909aa3; font-size: 14px; font-style: normal; }
.store-tag-count { flex: 0 0 auto; color: #7f8a94; font-size: 11px; }
.store-placeholder { color: #9aa4ad; font-size: 12px; padding-left: 4px; }
.store-chevron { flex: 0 0 7px; width: 7px; height: 7px; margin: 0 1px 3px 3px; border-right: 1px solid #7f8c97; border-bottom: 1px solid #7f8c97; transform: rotate(45deg); transition: transform .15s ease; }
.store-picker-trigger[aria-expanded="true"] .store-chevron { transform: rotate(225deg) translate(-2px, -2px); }
.store-popover { position: fixed; width: 230px; max-height: 276px; overflow-y: auto; border: 1px solid #dbe1e7; border-radius: 4px; background: #fff; box-shadow: 0 8px 24px #1b2c3d2b; z-index: 140; }
.store-popover[hidden] { display: none; }
.store-all-header, .store-group-header { width: 100%; height: 34px; display: flex; align-items: center; padding: 0 14px 0 20px; border: 0; border-bottom: 1px solid #ebeef2; border-radius: 0; background: #f5f7fa; color: #606266; text-align: left; font-size: 12px; font-weight: 650; }
.store-group-header { cursor: pointer; }
.store-group-header small { margin-left: 2px; color: #7c8791; font-size: 11px; font-weight: 400; }
.store-group-header:hover, .store-group-header.selected { color: #2f86da; background: #eef5fd; }
.store-all-option { position: relative; width: 100%; height: 34px; padding: 0 36px 0 20px; border: 0; border-radius: 0; background: #fff; color: #596570; text-align: left; font-size: 12px; cursor: pointer; }
.store-option { position: relative; height: 34px; display: flex; align-items: center; background: #fff; }
.store-option-main { width: 100%; height: 34px; padding: 0 88px 0 20px; border: 0; border-radius: 0; background: transparent; color: #596570; text-align: left; font-size: 12px; cursor: pointer; }
.store-all-option:hover, .store-option:hover { background: #f3f7fc; color: #2d83d4; }
.store-all-option.selected, .store-option.selected .store-option-main { color: #2d83d4; font-weight: 600; }
.store-all-option.selected:after, .store-option.selected:after { content: ""; position: absolute; right: 15px; top: 9px; width: 5px; height: 9px; border-right: 2px solid #2f87d8; border-bottom: 2px solid #2f87d8; transform: rotate(45deg); }
.store-only { position: absolute; right: 9px; top: 5px; height: 24px; padding: 0 5px; border: 0; border-radius: 2px; background: transparent; color: #3488d5; font-size: 10px; cursor: pointer; opacity: 0; }
.store-option:hover .store-only { opacity: 1; }
.store-option:hover:after { display: none; }
.store-only:hover { background: #e4f0fc; }
:is(.home-filter, .order-date-bar, .sku-profit-filters, .ads-filters) .store-picker-trigger { width: 214px; height: 34px; padding: 0 10px 0 6px; border: 1px solid #cbd5df; border-radius: 3px; background: #fff; color: #586570; }
:is(.home-filter, .order-date-bar, .sku-profit-filters, .ads-filters) .store-popover button { flex: initial; margin: 0; box-shadow: none; }
:is(.home-filter, .order-date-bar, .sku-profit-filters, .ads-filters) button.store-group-header { width: 100%; height: 34px; padding: 0 14px 0 20px; border: 0; border-bottom: 1px solid #ebeef2; border-radius: 0; background: #f5f7fa; color: #606266; }
:is(.home-filter, .order-date-bar, .sku-profit-filters, .ads-filters) button.store-all-option { width: 100%; height: 34px; padding: 0 36px 0 20px; border: 0; border-radius: 0; background: #fff; color: #596570; }
:is(.home-filter, .order-date-bar, .sku-profit-filters, .ads-filters) button.store-option-main { width: 100%; height: 34px; padding: 0 88px 0 20px; border: 0; border-radius: 0; background: transparent; color: #596570; }
:is(.home-filter, .order-date-bar, .sku-profit-filters, .ads-filters) button.store-only { height: 24px; padding: 0 5px; border: 0; background: transparent; color: #3488d5; }
:is(.home-filter, .order-date-bar, .sku-profit-filters, .ads-filters) button.store-all-option:hover, :is(.home-filter, .order-date-bar, .sku-profit-filters, .ads-filters) .store-option:hover { background: #f3f7fc; color: #2d83d4; }
:is(.home-filter, .order-date-bar, .sku-profit-filters, .ads-filters) button.store-group-header:hover, :is(.home-filter, .order-date-bar, .sku-profit-filters, .ads-filters) button.store-group-header.selected { color: #2f86da; background: #eef5fd; }
:is(.home-filter, .order-date-bar, .sku-profit-filters, .ads-filters) .store-option.selected button.store-option-main, :is(.home-filter, .order-date-bar, .sku-profit-filters, .ads-filters) button.store-all-option.selected { color: #2d83d4; font-weight: 600; }
:is(.home-filter, .order-date-bar, .sku-profit-filters, .ads-filters) button.store-only:hover { background: #e4f0fc; }

.date-range { position: relative; flex: 0 0 auto; z-index: 30; }
.date-range.disabled { opacity: .58; }
.date-range-trigger { height: 34px; width: 264px; border: 1px solid #c8d5e4; background: #fff; border-radius: 3px; padding: 0 10px; display: flex; align-items: center; gap: 8px; color: #53606d; cursor: pointer; white-space: nowrap; }
.date-range-trigger:hover, .date-range-trigger[aria-expanded="true"] { border-color: #3a91e5; }
.date-range-trigger:focus { outline: 1px solid #7fb8ee; outline-offset: 0; }
.calendar-icon { width: 13px; height: 13px; border: 1px solid #667a8f; border-radius: 2px; position: relative; }
.calendar-icon:before { content: ""; position: absolute; left: 2px; right: 2px; top: 3px; border-top: 1px solid #667a8f; }
.timezone-label { font-size: 12px; color: #536170; border-right: 1px solid #dce3ea; padding-right: 8px; }
.date-chevron { margin-left: auto; width: 7px; height: 7px; border-right: 1px solid #84919d; border-bottom: 1px solid #84919d; transform: rotate(45deg) translateY(-2px); }
.date-popover { position: absolute; left: 0; top: 40px; width: 758px; background: #fff; border: 1px solid #d7dee6; border-radius: 4px; box-shadow: 0 8px 24px #1a2b3c24; display: flex; z-index: 100; }
.date-popover[hidden] { display: none; }
.date-quick { flex: 0 0 120px; border-right: 1px solid #e5e9ee; padding: 8px 0; }
.date-quick button { display: block; width: 100%; height: 34px; border: 0; background: #fff; text-align: left; padding: 0 14px; color: #56616c; cursor: pointer; font-size: 12px; border-radius: 0; }
.date-quick button:hover { background: #eef5ff; color: #1976d2; }
.calendar-area { flex: 1; position: relative; padding: 12px 18px 15px; min-width: 0; }
.calendar-toolbar { position: absolute; left: 15px; right: 15px; top: 12px; height: 22px; display: flex; justify-content: space-between; pointer-events: none; }
.calendar-toolbar span { display: flex; gap: 2px; }
.calendar-toolbar button { width: 25px; height: 24px; padding: 0; border: 0; background: transparent; color: #68747f; font-size: 19px; line-height: 20px; cursor: pointer; pointer-events: auto; border-radius: 2px; }
.calendar-toolbar button:hover { background: #eef5fc; color: #2685da; }
.calendar-months { display: grid; grid-template-columns: 1fr 1fr; gap: 26px; }
.calendar-month { min-width: 0; }
.month-title { text-align: center; font-size: 15px; color: #4b5661; margin: 3px 0 15px; }
.days { display: grid; grid-template-columns: repeat(7, minmax(27px, 1fr)); text-align: center; row-gap: 1px; }
.weekday { height: 27px; display: grid; place-items: center; color: #5f6b76; font-size: 12px; }
.day { width: 100%; height: 38px; padding: 0; border: 0; border-radius: 0; background: transparent; color: #56616c; font-size: 12px; cursor: pointer; }
.day.muted { color: #b7bec6; }
.day:hover { background: #eaf3ff; }
.day.in-range { background: #eef5fd; }
.day.selected { background: #3f92e7; color: #fff; border-radius: 50%; font-weight: 650; }
.day.range-start, .day.range-end { border-radius: 50%; }
:is(.home-filter, .order-date-bar, .sku-profit-filters, .ads-filters) .date-range-trigger { width: 264px; height: 34px; padding: 0 10px; border: 1px solid #c8d5e4; border-radius: 3px; background: #fff; color: #53606d; }
:is(.home-filter, .order-date-bar, .sku-profit-filters, .ads-filters) .date-popover button { flex: initial; margin: 0; box-shadow: none; }
:is(.home-filter, .order-date-bar, .sku-profit-filters, .ads-filters) .date-quick button { width: 100%; height: 34px; padding: 0 14px; border: 0; border-radius: 0; background: #fff; color: #56616c; }
:is(.home-filter, .order-date-bar, .sku-profit-filters, .ads-filters) .calendar-toolbar button { width: 25px; height: 24px; padding: 0; border: 0; background: transparent; color: #68747f; }
:is(.home-filter, .order-date-bar, .sku-profit-filters, .ads-filters) button.day { width: 100%; height: 38px; padding: 0; border: 0; border-radius: 0; background: transparent; color: #56616c; }
:is(.home-filter, .order-date-bar, .sku-profit-filters, .ads-filters) button.day.muted { color: #b7bec6; }
:is(.home-filter, .order-date-bar, .sku-profit-filters, .ads-filters) button.day.in-range { background: #eef5fd; }
:is(.home-filter, .order-date-bar, .sku-profit-filters, .ads-filters) button.day.selected { border-radius: 50%; background: #3f92e7; color: #fff; }
:is(.home-filter, .order-date-bar, .sku-profit-filters, .ads-filters) .date-quick button:hover { background: #eef5ff; color: #1976d2; }
:is(.home-filter, .order-date-bar, .sku-profit-filters, .ads-filters) .calendar-toolbar button:hover { background: #eef5fc; color: #2685da; }
:is(.home-filter, .order-date-bar, .sku-profit-filters, .ads-filters) button.day:hover { background: #eaf3ff; }
:is(.home-filter, .order-date-bar, .sku-profit-filters, .ads-filters) button.day.selected:hover { background: #3f92e7; color: #fff; }

/* Order workspace follows the reference ERP's dense, wide-table composition. */
.order-dashboard { padding: 12px 14px 22px; color: #344353; }
.order-date-bar { min-height: 50px; display: flex; align-items: center; gap: 8px; padding: 7px 14px; background: #fff; border: 1px solid #e0e5eb; }
.order-date-bar select, .order-date-bar button { height: 32px; border: 1px solid #d6dee7; border-radius: 2px; background: #fff; color: #5d6874; padding: 0 14px; cursor: pointer; }
.order-date-bar select { width: 190px; }.order-date-bar .order-date { width: 245px; display: flex; align-items: center; gap: 9px; text-align: left; }.order-date-bar button.active { color: #fff; background: #3389df; border-color: #3389df; }
.order-summary { display: grid; grid-template-columns: repeat(7, minmax(112px, 1fr)); min-height: 112px; margin-top: 10px; background: #fff; border: 1px solid #e0e5eb; }
.order-summary-item { position: relative; display: flex; flex-direction: column; justify-content: center; align-items: center; min-width: 0; }
.order-summary-item:not(:last-child):after { content: ""; position: absolute; right: 0; top: 25px; bottom: 25px; border-right: 1px solid #e8ecf0; }
.order-summary-item span { color: #747f8a; font-size: 12px; }.order-summary-item span i { display: inline-grid; place-items:center; width: 13px; height: 13px; margin-left: 4px; border: 1px solid #a1aab3; border-radius: 50%; font-size: 9px; font-style: normal; }
.order-summary-item strong { margin: 9px 0 4px; color: #2d8adf; font-size: 24px; font-weight: 500; }.order-summary-item small { color: #9ca6af; font-size: 11px; }
.order-filter-panel { margin-top: 10px; padding: 4px 16px; background: #fff; border: 1px solid #e0e5eb; }
.order-filter-line { min-height: 47px; display: flex; align-items: center; border-bottom: 1px dashed #e2e7ec; }.order-filter-line:last-child { border-bottom: 0; }.order-filter-line > b { width: 86px; font-size: 13px; font-weight: 600; }.order-filter-line > div { display: flex; gap: 6px; }
.order-filter { height: 28px; min-width: 64px; padding: 0 13px; border: 0; background: transparent; color: #63707d; border-radius: 2px; cursor: pointer; }.order-filter.active { color: #fff; background: #3389df; }
.order-search-row { min-height: 56px; display: flex; align-items: center; gap: 7px; margin-top: 10px; padding: 10px 12px; background: #fff; border: 1px solid #e0e5eb; overflow-x: auto; }
.order-search-row select, .order-search-row input { flex: 0 0 auto; width: 132px; height: 32px; border: 1px solid #d5dee7; border-radius: 2px; background: #fff; padding: 0 9px; color: #55616d; }.order-search-row input { width: 126px; }.order-search-row #search { width: 160px; }
.order-type-tabs { flex: 0 0 auto; display: flex; height: 32px; }.order-type-tabs button, .order-tools button { border: 1px solid #d6dee7; background: #fff; color: #5d6874; padding: 0 12px; cursor: pointer; }.order-type-tabs button + button { border-left: 0; }.order-type-tabs button.active { color: #2e86d8; background: #edf6ff; border-color: #acd2f4; }
.order-tools { margin-left: auto; flex: 0 0 auto; display: flex; gap: 7px; height: 32px; }.order-tools button { border-radius: 2px; }.order-tools .sync-order { color: #fff; border-color: #3389df; background: #3389df; }
.order-table-panel { margin-top: 10px; background: #fff; border: 1px solid #e0e5eb; }
.column-config-backdrop { position:fixed; inset:0; z-index:220; display:grid; place-items:center; background:#16263742; }.column-config-dialog { width:min(560px,calc(100vw - 32px)); max-height:min(680px,calc(100vh - 32px)); display:flex; flex-direction:column; border:1px solid #d6dfe7; border-radius:4px; background:#fff; box-shadow:0 16px 40px #17293b42; }.column-config-dialog header { height:52px; display:flex; align-items:center; justify-content:space-between; padding:0 18px; border-bottom:1px solid #e6ebef; color:#35424e; }.column-config-dialog header button { width:28px; height:28px; border:0; background:transparent; color:#7b8792; font-size:22px; cursor:pointer; }.column-config-list { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:4px 14px; overflow:auto; padding:16px 18px; }.column-config-list label { display:flex; align-items:center; gap:7px; min-width:0; height:30px; color:#55616d; font-size:12px; cursor:pointer; }.column-config-list label.locked { color:#9aa5ae; cursor:default; }.column-config-list input { accent-color:#368de1; }.column-config-dialog footer { display:flex; justify-content:flex-end; gap:9px; padding:12px 18px; border-top:1px solid #e6ebef; }.column-config-dialog footer button { height:30px; min-width:72px; border:1px solid #d5dee7; border-radius:2px; background:#fff; color:#5d6975; cursor:pointer; }.column-config-dialog footer .primary { border-color:#3389df; background:#3389df; color:#fff; }
.order-table-meta { height: 42px; display: flex; align-items: center; gap: 18px; padding: 0 13px; border-bottom: 1px solid #e5e9ed; color: #7d8893; font-size: 12px; }.order-table-meta label { color: #45525f; }
.order-table-wrap { overflow: auto; max-height: calc(100vh - 425px); min-height: 260px; }
.order-table { width: max-content; min-width: 100%; border-collapse: separate; border-spacing: 0; }
.order-table th, .order-table td { height: 45px; padding: 8px 11px; border: 0; border-right: 1px solid #edf0f3; border-bottom: 1px solid #e8ecf0; background: #fff; font-size: 11px; vertical-align: middle; }
.order-table th { height: 42px; position: sticky; top: 0; z-index: 3; background: #f5f7f9; color: #53606d; font-size: 12px; }.order-table th:first-child, .order-table td:first-child { position: sticky; left: 0; z-index: 2; }.order-table th:first-child { z-index: 4; }
.order-id-cell { width: 168px; min-width: 168px; text-align: left; white-space: nowrap; line-height: 1.55; }.order-id-cell b, .order-id-cell a { display: block; }.order-id-cell b { color: #8c97a2; font-weight: 400; }.order-id-cell a { color: #2683d4; }.order-product-cell { min-width: 290px; max-width: 320px; display:flex; align-items:center; gap:9px; text-align: left; white-space: normal; line-height: 1.55; }.order-product-cell > div { min-width:0; }.order-product-cell strong { display: block; max-width: 245px; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; color: #374656; font-weight: 500; }.order-product-cell > div > span { display:block; color: #87929c; }
.text-action { padding: 0; border: 0; background: transparent; color: #2985d5; cursor: pointer; }.outline-action { min-width: 42px; height: 26px; border: 1px solid #bcd4ea; border-radius: 2px; background: #fff; color: #2c82cf; cursor: pointer; }.order-actions { display: flex; align-items: center; gap: 8px; }.order-note-input { width: 112px; height: 28px; padding: 0 7px; border: 1px solid #d7dfe7; border-radius: 2px; background: #fff; color: #4f5d69; font-size: 11px; outline: 0; }.order-note-input::placeholder { color: #a3adb7; }.order-note-input:focus { border-color: #3d91de; box-shadow: 0 0 0 2px #e4f1fd; }.order-note-input.saving { background: #f5f9fd; }.order-note-input.save-error { border-color: #df6b6b; }.order-state { color: #6d7883; }.order-state.paid { color: #24a275; }.order-state.shipping { color: #3187d5; }

@media (max-width: 1200px) { .order-summary { grid-template-columns: repeat(4, 1fr); }.order-summary-item { min-height: 92px; }.order-filter-line { overflow-x: auto; }.order-search-row { align-items: flex-start; } }

/* SKU profit page mirrors the reference ERP's accounting workspace. */
.sku-profit-page { padding: 0 14px 22px; color: #344352; }
.sku-profit-tabs { height: 56px; display: flex; align-items: end; gap: 36px; padding: 0 0 12px; border-bottom: 1px solid #dde4ea; }.sku-profit-tabs button { height: 32px; padding: 0; border: 0; border-bottom: 2px solid transparent; background: transparent; color: #35414d; font-size: 14px; cursor: pointer; }.sku-profit-tabs button.active { color: #3188d8; border-bottom-color: #3188d8; }.sku-profit-tabs > span { margin-left: auto; align-self: center; display: grid; place-items: center; width: 22px; height: 22px; border-radius: 50%; color: #fff; background: #398fe1; }
.sku-profit-cards { display: grid; grid-template-columns: repeat(6, minmax(150px, 1fr)); gap: 16px; padding: 16px 22px; background: #fff; }
.sku-profit-card { height: 77px; display: flex; flex-direction: column; align-items: center; justify-content: center; position: relative; overflow: hidden; border-radius: 3px; }.sku-profit-card:after { content: ""; position: absolute; right: -13px; bottom: -22px; width: 72px; height: 72px; transform: rotate(45deg); background: #fff2; border: 10px solid #fff2; }.sku-profit-card strong { font-size: 22px; line-height: 1; font-weight: 650; }.sku-profit-card span { margin-top: 8px; font-size: 14px; }.sku-profit-card.blue { background:#d9eaff; color:#237fd0; }.sku-profit-card.violet { background:#e4e5ff; color:#4a6fd5; }.sku-profit-card.pink { background:#ffe8fb; color:#d44dcc; }.sku-profit-card.green { background:#d7f3ee; color:#16a891; }.sku-profit-card.purple { background:#e8e9ff; color:#4c70d7; }.sku-profit-card.sky { background:#dbeeff; color:#2386d9; }
.sku-profit-workspace { margin-top: 12px; padding: 16px 22px 18px; background: #fff; }.sku-mode-tabs { display: flex; height: 34px; }.sku-mode-tabs button { width: 80px; border: 1px solid #d8e0e8; background: #fff; color:#56616c; cursor:pointer; }.sku-mode-tabs button + button { border-left:0; }.sku-mode-tabs button.active { color:#fff; border-color:#358ce1; background:#358ce1; }
.sku-mode-note { margin: 10px 0 12px; color: #ef6a31; font-size: 12px; line-height: 1.6; }
.sku-profit-filters { display: flex; align-items: center; gap: 8px; overflow: visible; padding-bottom: 2px; }.sku-profit-filters select, .sku-profit-filters input, .sku-profit-filters button { flex: 0 0 auto; height: 34px; border: 1px solid #d6dee7; border-radius: 2px; background: #fff; color: #5a6672; padding: 0 12px; }.sku-profit-filters select { width: 215px; }.sku-profit-filters input { width: 195px; }.sku-profit-filters .sku-date { width: 242px; display:flex; align-items:center; gap:8px; }.sku-profit-filters button.active { color:#fff; border-color:#358ce1; background:#358ce1; }.sku-profit-filters .currency-select { width: 112px; margin-left: auto; }
.sku-profit-tools { display:flex; gap:12px; padding:14px 0 16px; }.sku-profit-tools button { height:33px; padding:0 16px; border:1px solid #d6dee7; border-radius:3px; background:#fff; color:#586571; cursor:pointer; }.sku-profit-tools .export { color:#fff; border-color:#368ee4; background:#368ee4; }.sku-profit-tools .export.order { border-color:#edae3e; background:#edae3e; }
.sku-profit-table-wrap { overflow:auto; max-height:calc(100vh - 445px); min-height:265px; border:1px solid #e1e6eb; }.sku-profit-table { min-width:1620px; width:100%; border-collapse:separate; border-spacing:0; }.sku-profit-table th,.sku-profit-table td { height:50px; padding:8px 10px; border:0; border-right:1px solid #e8edf1; border-bottom:1px solid #e6ebef; background:#fff; font-size:11px; }.sku-profit-table th { height:48px; position:sticky; top:0; z-index:3; background:#f5f6f7; color:#4f5b66; font-size:12px; white-space:normal; }.sku-profit-table th:first-child,.sku-profit-table td:first-child { position:sticky; left:0; z-index:2; }.sku-profit-table th:first-child { z-index:4; }.sku-product { width:245px; display:flex; align-items:center; gap:9px; text-align:left; }.sku-product-thumb { flex:0 0 42px; height:42px; display:grid; place-items:center; background:#edf3f8; color:#7390a8; font-size:10px; }.sku-product div { min-width:0; }.sku-product a,.sku-product span,.sku-product small { display:block; }.sku-product a { color:#3187d3; }.sku-product div span { color:#a05a62; margin-top:2px; font-size:10px; }.sku-product small { max-width:180px; overflow:hidden; text-overflow:ellipsis; white-space:nowrap; color:#89949f; }.sku-order-info { border:0; background:transparent; color:#3188d7; cursor:pointer; white-space:nowrap; }
.profit-orders-backdrop{position:fixed;inset:0;z-index:270;display:grid;place-items:center;padding:18px;background:#172a3b55}.profit-orders-dialog{width:min(1540px,calc(100vw - 30px));height:min(760px,calc(100vh - 34px));display:flex;flex-direction:column;border:1px solid #d6dee5;border-radius:4px;background:#fff;box-shadow:0 18px 50px #182b3e4d}.profit-orders-dialog>header{flex:0 0 56px;display:flex;align-items:center;justify-content:space-between;padding:0 18px;border-bottom:1px solid #e3e8ec}.profit-orders-dialog>header div{min-width:0}.profit-orders-dialog>header strong,.profit-orders-dialog>header span{display:block}.profit-orders-dialog>header strong{color:#344552;font-size:16px}.profit-orders-dialog>header span{max-width:900px;margin-top:3px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:#909aa3;font-size:11px}.profit-orders-dialog>header button{width:28px;height:28px;border:0;background:transparent;color:#7d8993;font-size:22px;cursor:pointer}.profit-orders-loading{flex:1;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:8px;color:#7a8791}.profit-orders-loading strong{color:#d55359}.profit-orders-tools{flex:0 0 51px;display:flex;align-items:center;justify-content:flex-end;gap:14px;padding:0 18px;color:#6f7b86;font-size:12px}.profit-orders-tools button{height:31px;padding:0 15px;border:1px solid #378de0;border-radius:3px;background:#378de0;color:#fff;cursor:pointer}.profit-orders-table-wrap{flex:1;min-height:0;overflow:auto;border-top:1px solid #e3e8ec;border-bottom:1px solid #e3e8ec}.profit-orders-table{width:max-content;min-width:100%;border-collapse:separate;border-spacing:0}.profit-orders-table th,.profit-orders-table td{height:52px;min-width:100px;padding:7px 10px;border-right:1px solid #e8edf1;border-bottom:1px solid #e7ebef;background:#fff;text-align:center;font-size:11px;white-space:nowrap}.profit-orders-table th{position:sticky;top:0;z-index:3;height:44px;background:#f5f7f9;color:#4d5a65;font-size:12px;font-weight:600}.profit-orders-table th:nth-child(2),.profit-orders-table td:nth-child(2){min-width:125px}.profit-orders-table th:nth-child(7),.profit-orders-table td:nth-child(7){min-width:150px}.profit-orders-table th:nth-child(20),.profit-orders-table td:nth-child(20){min-width:150px}.profit-order-product{color:#3188d6}.profit-order-image{display:inline-grid;width:42px;height:42px;place-items:center}.profit-order-image .product-main-image{width:42px;height:42px}.profit-order-status{display:inline-block;padding:3px 7px;border-radius:2px;background:#f0f3f5;color:#66737e}.profit-order-status.paid{background:#e9f7f1;color:#22966e}.profit-order-status.cancelled{background:#fff0f0;color:#dc5a60}.profit-orders-footer{flex:0 0 54px;display:flex;align-items:center;justify-content:flex-end;gap:8px;padding:0 14px;color:#707c86;font-size:12px}.profit-orders-footer select,.profit-orders-footer button,.profit-orders-footer input{height:29px;border:1px solid #d6dee6;border-radius:2px;background:#fff;color:#66727d}.profit-orders-footer select{width:90px}.profit-orders-footer button{min-width:29px}.profit-orders-footer button.active{border-color:#378de0;background:#378de0;color:#fff}.profit-orders-footer input{width:42px;text-align:center}
.sku-pagination { min-height:50px; display:flex; align-items:center; justify-content:flex-end; gap:8px; color:#6d7883; font-size:12px; }.sku-pagination select,.sku-pagination button,.sku-pagination input { height:29px; border:1px solid #d9e0e7; background:#fff; color:#626d78; }.sku-pagination select { width:90px; }.sku-pagination button { min-width:28px; }.sku-pagination button.active { color:#fff; background:#388fe5; border-color:#388fe5; }.sku-pagination input { width:46px; text-align:center; }
.sku-profit-notes { display:flex; flex-direction:column; gap:5px; padding-top:8px; border-top:1px solid #e6eaee; color:#6b7580; font-size:11px; }.sku-profit-notes b { color:#4a5662; }
.sku-cost-warning { margin:10px 22px 0; min-height:44px; padding:8px 13px; display:flex; align-items:center; justify-content:space-between; border:1px solid #f2c5c8; border-radius:3px; background:#fff5f5; color:#b84d54; }
.sku-cost-warning>strong { font-size:12px; }
.sku-cost-warning button { height:28px; padding:0 13px; border:1px solid #d85b63; border-radius:3px; background:#fff; color:#bd4d54; cursor:pointer; }
.system-warning-banner{display:flex;align-items:center;gap:14px;margin:12px 14px 0;padding:10px 14px;border:1px solid #f2d39b;background:#fff9ed;color:#8d671e;font-size:12px}.system-warning-banner strong{white-space:nowrap;color:#805b15}.system-warning-banner>div{display:flex;flex-wrap:wrap;gap:7px}.system-warning-banner span{padding:3px 7px;border-radius:2px;background:#fff1cf}.system-warning-banner span.danger{background:#fff0f0;color:#c34c52}.auth-health{display:block;margin-top:4px;font-size:11px}.auth-health.warning{color:#c8861e}.auth-health.danger{color:#d45159}
@media (max-width:1200px) { .sku-profit-cards { grid-template-columns:repeat(3,1fr); }.sku-profit-filters .currency-select { margin-left:0; } }

/* Product advertising analysis is the only advertising workspace. */
.product-ads-page { padding:0 14px 22px; color:#344352; }.product-ads-tabs { height:58px; display:flex; align-items:end; padding-bottom:12px; border-bottom:1px solid #dde4ea; }.product-ads-tabs button { height:32px; border:0; border-bottom:2px solid #348be0; background:transparent; color:#3188d8; padding:0; font-size:14px; }
.ads-kpis { display:grid; grid-template-columns:repeat(9,minmax(145px,1fr)); gap:12px; padding:16px 22px; overflow-x:auto; background:#fff; }.ads-kpi { min-width:145px; height:100px; display:flex; align-items:center; justify-content:space-between; padding:15px 12px 15px 18px; border:1px solid #e0e4ea; border-radius:3px; background:#fff; }.ads-kpi div { min-width:0; }.ads-kpi span { display:block; color:#3f4a55; font-size:13px; font-weight:600; white-space:nowrap; }.ads-kpi span i { display:inline-grid; place-items:center; width:13px; height:13px; margin-left:3px; border:1px solid #8b96a0; border-radius:50%; font-style:normal; font-size:9px; }.ads-kpi strong { display:block; margin-top:14px; color:#7767df; font-size:20px; white-space:nowrap; }.ads-kpi > b { flex:0 0 48px; height:55px; display:grid; place-items:center; margin-left:8px; border-radius:15px; background:#e5e1ff; color:#7465df; font-size:22px; box-shadow:inset 0 0 16px #fff8; }
.ads-workspace { margin-top:12px; padding:15px 22px 18px; background:#fff; }.ads-filters { display:flex; align-items:center; gap:9px; overflow:visible; }.ads-filters select,.ads-filters input,.ads-filters button { flex:0 0 auto; height:34px; border:1px solid #d6dee7; border-radius:2px; background:#fff; color:#596571; padding:0 13px; }.ads-filters select { width:215px; }.ads-filters input { width:190px; }.ads-filters .ads-date { width:245px; display:flex; align-items:center; gap:8px; }.ads-filters button.active { color:#fff; border-color:#348de3; background:#348de3; }
.ads-filters .ads-date-input { width:122px; }.ads-filters .ads-date-sep { flex:0 0 auto; color:#7b8792; }
.ads-tools { display:flex; justify-content:flex-end; gap:12px; padding:10px 0 14px; }.ads-tools button { height:34px; padding:0 17px; border:1px solid #348de3; border-radius:3px; background:#348de3; color:#fff; cursor:pointer; }.ads-tools button.tax { border-color:#f36a70; background:#f36a70; }
.ads-table-wrap { overflow:auto; max-height:calc(100vh - 405px); min-height:315px; border:1px solid #e1e6eb; }.ads-table { width:100%; min-width:2050px; border-collapse:separate; border-spacing:0; }.ads-table th,.ads-table td { height:48px; padding:8px 11px; border:0; border-right:1px solid #e7ecf0; border-bottom:1px solid #e5eaee; background:#fff; font-size:11px; }.ads-table th { height:44px; position:sticky; top:0; z-index:3; background:#f5f6f7; color:#4e5a66; font-size:12px; }.ads-table th:first-child,.ads-table td:first-child { position:sticky; left:0; z-index:2; }.ads-table th:first-child { z-index:4; }.ads-product { width:275px; display:flex; align-items:center; gap:10px; text-align:left; }.ads-product-thumb { flex:0 0 44px; height:44px; display:grid; place-items:center; background:#edf3f8; color:#758da3; font-size:10px; }.ads-product div { min-width:0; }.ads-product a,.ads-product div span,.ads-product small { display:block; }.ads-product a { color:#3188d7; }.ads-product div span { max-width:205px; overflow:hidden; text-overflow:ellipsis; white-space:nowrap; color:#56636f; margin-top:3px; }.ads-product small { color:#8b96a0; font-size:10px; }.ads-detail { height:26px; padding:0 12px; border:1px solid #b9d3ea; border-radius:2px; background:#eef6fd; color:#3186d2; cursor:pointer; }
.ads-pagination { min-height:50px; display:flex; align-items:center; justify-content:flex-end; gap:8px; color:#6c7782; font-size:12px; }.ads-pagination select,.ads-pagination button,.ads-pagination input { height:29px; border:1px solid #d9e0e7; background:#fff; color:#626d78; }.ads-pagination select { width:90px; }.ads-pagination button { min-width:28px; }.ads-pagination button.active { color:#fff; background:#388fe5; border-color:#388fe5; }.ads-pagination input { width:46px; text-align:center; }
.product-image-box { flex:0 0 44px; width:44px; height:44px; position:relative; display:grid; place-items:center; overflow:hidden; border:1px solid #e2e7eb; background:#f2f5f7; color:#9aa5af; }
.product-main-image { position:absolute; inset:0; z-index:1; width:100%; height:100%; display:block; object-fit:contain; background:#fff; }
.product-title-link { display:block; max-width:100%; overflow:hidden; text-overflow:ellipsis; white-space:nowrap; color:#3185ce; text-decoration:none; font-weight:500; }
.product-title-link:hover { color:#176eb9; text-decoration:underline; }
.sortable-column { cursor:pointer; user-select:none; transition:background-color .15s ease; }
.sortable-column:hover { background:#eaf2fa !important; color:#287fca; }
.sort-indicator { display:inline-block; width:13px; margin-left:5px; color:#9aa7b2; font-size:11px; font-weight:400; text-align:center; }
.sortable-column[data-sort-direction="asc"] .sort-indicator,.sortable-column[data-sort-direction="desc"] .sort-indicator { color:#2f86d5; }
.product-image-fallback { position:absolute; inset:0; display:grid; place-items:center; font-size:11px; color:#9aa5af; }
.inventory-product { min-width:285px; max-width:340px; display:flex; align-items:center; gap:9px; text-align:left; }.inventory-product > div { min-width:0; }.inventory-product strong,.inventory-product > div > span { display:block; }.inventory-product strong { max-width:265px; overflow:hidden; text-overflow:ellipsis; white-space:nowrap; color:#374656; font-weight:500; }.inventory-product > div > span { color:#87929c; font-size:10px; }
.replenishment-table { overflow-x:auto; }.replenishment-table table { min-width:1320px; }.replenish-number { width:76px; min-width:76px; padding:6px 7px; border:1px solid #d7dde3; border-radius:4px; background:#fff; color:#263645; }
@media (max-width:1200px) { .ads-kpis { grid-template-columns:repeat(9,145px); }.ads-tools { justify-content:flex-start; } }

.ads-product .ads-sku { color: #ce5961; font-size: 10px; margin-top: 5px; }
.ads-expand{flex:0 0 22px;width:22px;height:22px;padding:0;border:1px solid #bdd6ed;border-radius:2px;background:#f4f9fe;color:#3186d1;font-size:20px;line-height:16px;cursor:pointer}.ads-expand:hover{border-color:#3188d7;background:#eaf4fe}.ads-detail-backdrop{position:fixed;inset:0;z-index:280;display:grid;place-items:center;padding:18px;background:#172a3b55}.ads-daily-dialog{display:flex;flex-direction:column;width:min(1220px,calc(100vw - 36px));height:min(700px,calc(100vh - 36px));border:1px solid #d7e0e8;border-radius:4px;background:#fff;box-shadow:0 18px 50px #182b3e4d}.ads-daily-dialog>header{flex:0 0 56px;display:flex;align-items:center;justify-content:space-between;padding:0 18px;border-bottom:1px solid #e3e8ec}.ads-daily-dialog header strong,.ads-daily-dialog header span{display:block}.ads-daily-dialog header strong{font-size:16px;color:#344552}.ads-daily-dialog header span{margin-top:3px;color:#8b969f;font-size:11px}.ads-daily-dialog header button{width:28px;height:28px;border:0;background:transparent;color:#72808c;font-size:22px;cursor:pointer}.ads-daily-loading{flex:1;display:grid;place-items:center;color:#77848f}.ads-daily-table-wrap{flex:1;min-height:0;overflow:auto}.ads-daily-table-wrap table{width:100%;min-width:1080px;border-collapse:separate;border-spacing:0}.ads-daily-table-wrap th,.ads-daily-table-wrap td{height:44px;padding:7px 11px;border-right:1px solid #e7ecf0;border-bottom:1px solid #e5eaee;background:#fff;text-align:right;font-size:12px;white-space:nowrap}.ads-daily-table-wrap th{position:sticky;top:0;z-index:2;background:#f5f7f9;color:#4d5a65;text-align:center}.ads-daily-table-wrap th:first-child,.ads-daily-table-wrap td:first-child{text-align:left}

/* Product analysis workspace follows the reference page's dense analytical layout. */
.product-analysis-page { padding:10px 14px 22px; color:#35424e; }
.product-filter-bar { min-height:42px; display:flex; align-items:center; gap:9px; padding:0 10px; background:#fff; border:1px solid #e0e5ea; overflow:visible; }.product-filter-bar > span { color:#697580; font-size:12px; }.product-filter-bar .product-switch { margin-left:auto; height:32px; padding:0 16px; border:0; border-radius:3px; background:#dceeff; color:#2d86d7; cursor:pointer; }
:is(.product-filter-bar) .store-picker-trigger { width:214px; height:34px; padding:0 10px 0 6px; border:1px solid #cbd5df; border-radius:3px; background:#fff; color:#586570; }
:is(.product-filter-bar) .date-range-trigger { width:246px; height:34px; padding:0 10px; border:1px solid #c8d5e4; border-radius:3px; background:#fff; color:#53606d; }
.product-filter-bar .date-preset-button { height:34px; padding:0 15px; border:1px solid #d7dfe7; background:#fff; color:#5e6974; cursor:pointer; }.product-filter-bar .date-preset-button.active { border-color:#388fe5; background:#388fe5; color:#fff; }
.product-kpis { display:grid; grid-template-columns:repeat(6,minmax(155px,1fr)); gap:14px; padding:10px 0; overflow-x:auto; }.product-kpi { min-width:155px; height:98px; display:flex; align-items:center; justify-content:space-between; padding:13px 10px 13px 17px; border:1px solid #dfe5eb; background:#fff; }.product-kpi span { display:block; color:#3e4a56; font-size:13px; font-weight:600; }.product-kpi span i { display:inline-grid; place-items:center; width:13px; height:13px; margin-left:4px; border:1px solid #8f9aa4; border-radius:50%; color:#7e8994; font-size:9px; font-style:normal; }.product-kpi strong { display:block; margin-top:15px; color:#318de1; font-size:22px; font-weight:650; }.product-kpi > b { flex:0 0 55px; height:55px; display:grid; place-items:center; border-radius:14px; background:#dcecff; color:#348ee1; font-size:23px; box-shadow:inset 0 0 18px #fff; }
.product-trend { min-height:285px; border:1px solid #dfe5ea; background:#fff; }.product-trend > header { height:52px; display:flex; align-items:center; justify-content:space-between; padding:0 22px; border-bottom:1px solid #e6eaee; font-size:14px; }.product-trend-legend { display:flex; align-items:center; gap:7px; color:#77838e; font-size:11px; font-weight:400; }.product-trend-legend i,.product-trend-legend em { display:inline-block; width:12px; height:3px; background:#29bec2; }.product-trend-legend em { height:8px; margin-left:10px; background:#4aa6ea; }.product-trend-canvas { position:relative; height:230px; padding:10px 15px 0; }.product-trend-canvas svg { width:100%; height:100%; overflow:visible; }.product-trend-grid line { stroke:#e7ebef; stroke-width:1; vector-effect:non-scaling-stroke; }.product-trend-bars rect { fill:#48a7e9; opacity:.9; }.product-trend-line { fill:none; stroke:#2abcc0; stroke-width:3; stroke-linecap:round; stroke-linejoin:round; vector-effect:non-scaling-stroke; }.product-trend-labels text { fill:#8d98a2; font-size:10px; }.product-trend-hit { fill:transparent; cursor:crosshair; pointer-events:all; }.product-trend-guide { position:absolute; top:18px; bottom:29px; border-left:1px dashed #318ddd; pointer-events:none; }.product-trend-tip { position:absolute; top:15px; z-index:5; width:142px; padding:8px 10px; border:1px solid #dce3e9; border-radius:3px; background:#fff; box-shadow:0 5px 16px #24384b2b; color:#65717d; font-size:11px; pointer-events:none; }.product-trend-tip b { display:block; margin-bottom:4px; }.product-trend-tip span { display:flex; justify-content:space-between; line-height:19px; }.product-trend-tip strong { color:#35424e; }
.product-workspace { margin-top:10px; padding:14px 20px 16px; border:1px solid #dfe5ea; background:#fff; }.product-view-tabs { display:flex; height:34px; }.product-view-tabs button { min-width:88px; padding:0 14px; border:1px solid #d7dfe7; background:#fff; color:#5a6672; cursor:pointer; }.product-view-tabs button+button { border-left:0; }.product-view-tabs button.active { color:#2f87d7; background:#e9f4ff; border-color:#a9cff0; }
.product-search-tools { display:flex; align-items:center; gap:12px; padding:12px 0; }.product-search-tools input { width:150px; height:33px; padding:0 10px; border:1px solid #d6dee6; border-radius:2px; color:#56626e; }.product-search-tools > span { flex:1; }.product-search-tools button { height:33px; padding:0 16px; border:1px solid #9ec7eb; border-radius:3px; background:#e5f2ff; color:#3388d5; cursor:pointer; }.product-search-tools button.primary { border-color:#318ee4; background:#318ee4; color:#fff; }
.product-analysis-table-wrap { overflow:auto; height:clamp(520px,calc(100vh - 300px),720px); border:1px solid #dfe5ea; }.product-analysis-table { width:max-content; min-width:100%; border-collapse:separate; border-spacing:0; }.product-analysis-table th,.product-analysis-table td { height:58px; min-width:115px; padding:8px 11px; border:0; border-right:1px solid #e7ebef; border-bottom:1px solid #e5eaee; background:#fff; text-align:center; font-size:11px; white-space:nowrap; }.product-analysis-table th { height:44px; position:sticky; top:0; z-index:3; background:#a9c7ff; color:#35424e; font-size:12px; font-weight:600; }.product-analysis-table th:first-child,.product-analysis-table td:first-child { position:sticky; left:0; z-index:2; min-width:350px; }.product-analysis-table th:first-child { z-index:4; }.product-analysis-product { width:325px; display:flex; align-items:center; gap:10px; text-align:left; }.product-analysis-product > div { min-width:0; }.product-analysis-product strong,.product-analysis-product a,.product-analysis-product small { display:block; }.product-analysis-product strong { max-width:250px; overflow:hidden; text-overflow:ellipsis; white-space:nowrap; color:#3185ce; font-weight:500; }.product-analysis-product button { float:left; margin:3px 8px 0 0; padding:1px 5px; border:1px solid #b8c9d8; border-radius:2px; background:#fff; color:#64717d; font-size:10px; }.product-analysis-product a { margin-top:5px; color:#2c85d2; }.product-analysis-product small { margin-top:2px; color:#c45d66; }.product-type-tag { padding:3px 8px; border:1px solid #f1dfbd; border-radius:3px; background:#fff8e9; color:#bd8c37; }.product-pagination { min-height:50px; display:flex; align-items:center; justify-content:flex-end; gap:9px; color:#6d7883; font-size:12px; }.product-pagination select,.product-pagination button { height:29px; border:1px solid #d7dfe7; background:#fff; color:#5f6b76; }.product-pagination select { width:90px; }.product-pagination button { min-width:28px; }.product-pagination button.active { border-color:#368de1; background:#368de1; color:#fff; }
.product-analysis-table tbody tr { content-visibility:auto; contain-intrinsic-size:auto 58px; }
.product-chart-thumb { display:inline-flex; flex-direction:column; align-items:center; justify-content:center; gap:1px; width:72px; min-height:42px; padding:3px 5px; border:1px solid #c8d9e8; border-radius:3px; background:#f7fbff; color:#4d7fa8; cursor:pointer; }
.product-chart-thumb:hover { border-color:#318ddd; background:#edf6ff; }
.product-chart-thumb svg { width:62px; height:25px; overflow:visible; }
.product-chart-thumb polyline { fill:none; stroke-linecap:round; stroke-linejoin:round; }
.product-chart-thumb polyline.units { stroke:#318ddd; stroke-width:2; }
.product-chart-thumb polyline.visits { stroke:#e59b41; stroke-width:1.4; stroke-dasharray:2 1; }
.product-chart-thumb rect { fill:#62c3d2; opacity:.52; }
.product-chart-thumb.down path { stroke:#d27a67; }
.product-chart-thumb.down polyline.units { stroke:#d27a67; }
.product-chart-thumb span { font-size:10px; line-height:11px; }
.product-chart-thumb-empty { color:#a3adb5; font-size:9px !important; line-height:25px !important; }
.comparison-na { color:#a0aab3; }
.product-chart-expanded-row > td { position:static !important; min-width:0 !important; height:auto !important; padding:0 !important; background:#f7fafc !important; text-align:left !important; }
.product-expanded-chart { width:min(1320px,calc(100vw - 80px)); min-width:680px; box-sizing:border-box; padding:14px 18px 17px; border-top:1px solid #cbddea; background:#f7fafc; }
.product-expanded-chart > header { display:flex; align-items:center; justify-content:space-between; gap:16px; min-height:34px; }
.product-expanded-chart > header strong,.product-expanded-chart > header span { display:block; }
.product-expanded-chart > header strong { color:#354e60; font-size:13px; font-weight:650; }
.product-expanded-chart > header span { margin-top:3px; color:#87939d; font-size:10px; }
.product-expanded-chart > header nav { display:flex; gap:4px; }
.product-expanded-chart > header nav button { min-width:34px; height:27px; padding:0 8px; border:1px solid #cbd9e4; border-radius:2px; background:#fff; color:#62717d; font-size:11px; cursor:pointer; }
.product-expanded-chart > header nav button:hover,.product-expanded-chart > header nav button.active { border-color:#318ddd; background:#318ddd; color:#fff; }
.product-chart-legend { display:flex; align-items:center; gap:8px; flex-wrap:wrap; margin:8px 0 2px 54px; color:#657581; font-size:10px; }
.product-chart-legend button { display:inline-flex; align-items:center; height:24px; padding:0 7px; border:1px solid transparent; border-radius:2px; background:transparent; color:#82909b; font-size:10px; cursor:pointer; }
.product-chart-legend button:before { content:""; display:inline-block; width:14px; height:3px; margin:0 5px 2px 0; background:#aeb8c0; opacity:.45; }
.product-chart-legend button.active { border-color:#cbd9e4; background:#fff; color:#536572; }
.product-chart-legend button.active:before { opacity:1; }
.product-chart-legend .units.active:before { background:#2f8fe6; }
.product-chart-legend .revenue.active:before { height:9px; background:#62c3d2; }
.product-chart-legend .visits.active:before { background:#e59b41; }
.product-chart-legend .conversion.active:before { background:#a26dd5; }
.product-expanded-chart-svg { display:block; width:100%; height:330px; margin-top:4px; overflow:visible; }
.product-chart-grid line { stroke:#dfe8ee; stroke-width:1; vector-effect:non-scaling-stroke; }
.product-chart-revenue-bars rect { fill:#62c3d2; opacity:.45; }
.product-chart-units-line,.product-chart-visits-line { fill:none; stroke-linecap:round; stroke-linejoin:round; vector-effect:non-scaling-stroke; }
.product-chart-units-line { stroke:#2f8fe6; stroke-width:2.8; }
.product-chart-visits-line { stroke:#e59b41; stroke-width:2; stroke-dasharray:5 3; }
.product-chart-conversion-line { fill:none; stroke:#a26dd5; stroke-width:2.2; stroke-dasharray:7 3; stroke-linecap:round; stroke-linejoin:round; vector-effect:non-scaling-stroke; }
.product-chart-unit-point { fill:#2f8fe6; stroke:#fff; stroke-width:1; vector-effect:non-scaling-stroke; }
.product-expanded-chart svg text { font-family:"Microsoft YaHei UI","Microsoft YaHei","Segoe UI",Arial,sans-serif; text-rendering:geometricPrecision; }
.product-chart-value-label { fill:#3d5868; font-size:10px; font-weight:500; }
.product-chart-labels text { fill:#8796a1; font-size:10px; font-weight:400; }
.product-chart-axis-labels text { fill:#8796a1; font-size:10px; font-weight:400; }
.product-chart-hit-layer { cursor:crosshair; }
.product-chart-hit { fill:transparent; pointer-events:all; }
.product-chart-plot { position:relative; }
.product-chart-guide { position:absolute; top:24px; bottom:42px; width:0; border-left:1px dashed #6a9bc3; pointer-events:none; }
.product-chart-tooltip { position:absolute; z-index:5; min-width:150px; padding:8px 10px; border:1px solid #d8e1e8; border-radius:3px; background:#fff; box-shadow:0 5px 16px #24384b2b; color:#65717d; font-size:10px; pointer-events:none; }
.product-chart-tooltip[hidden],.product-chart-guide[hidden] { display:none; }
.product-chart-tooltip b { display:block; margin-bottom:4px; color:#35424e; }
.product-chart-tooltip span { display:flex; justify-content:space-between; gap:16px; line-height:17px; }
.product-chart-tooltip strong { color:#35424e; }
.product-chart-loading,.product-chart-empty { display:grid; place-items:center; height:170px; color:#8d99a3; font-size:12px; }
@media (max-width:1200px) { .product-kpis { grid-template-columns:repeat(6,155px); }.product-filter-bar,.product-search-tools { overflow-x:auto; }.product-search-tools > span { flex:0 0 10px; } }

/* Store alias management follows the reference settings table workflow. */
.store-alias-page { padding: 22px 28px 30px; color: #404c57; }
.alias-toolbar { display:flex; align-items:center; gap:18px; min-height:42px; font-size:13px; }.alias-toolbar label { display:flex; align-items:center; gap:7px; color:#3f4b56; }.alias-toolbar select { width:130px; height:32px; border:1px solid #d8e0e8; border-radius:2px; padding:0 10px; color:#5c6873; background:#fff; }.alias-toolbar > span { color:#e56b3d; font-size:12px; }
.alias-table-panel { margin-top:10px; overflow:auto; border:1px solid #e2e7ec; background:#fff; }.alias-table { width:100%; min-width:760px; border-collapse:collapse; }.alias-table th,.alias-table td { height:52px; padding:0 18px; border-bottom:1px solid #edf0f3; text-align:left; font-size:13px; }.alias-table th { height:44px; background:#f6f8fa; color:#505d68; font-weight:600; }.alias-table th:nth-child(1) { width:34%; }.alias-table th:nth-child(2) { width:30%; }.alias-table th:nth-child(3) { width:18%; }.alias-table td:last-child { white-space:nowrap; }.alias-store-name { display:block; color:#384652; }.alias-table td:first-child small { display:block; margin-top:4px; color:#9aa4ad; font-size:11px; }.alias-value { color:#596672; }.alias-sort { color:#77838d; }.alias-input,.alias-sort-input { height:30px; border:1px solid #d4dde6; border-radius:2px; padding:0 9px; color:#4f5c67; background:#fff; outline:0; }.alias-input { width:min(260px, 100%); }.alias-sort-input { width:76px; }.alias-input:focus,.alias-sort-input:focus { border-color:#3a91e3; box-shadow:0 0 0 2px #e5f2ff; }.alias-edit,.alias-save,.alias-cancel { height:28px; border:0; background:transparent; color:#2d86d7; cursor:pointer; padding:0 8px; }.alias-save { min-width:48px; border:1px solid #348ce0; border-radius:2px; background:#348ce0; color:#fff; }.alias-cancel { margin-left:6px; border:1px solid #d9e0e6; border-radius:2px; color:#64717c; }
.alias-pagination { min-height:58px; display:flex; align-items:center; justify-content:flex-end; gap:8px; color:#737f89; font-size:12px; }.alias-pagination select,.alias-pagination button,.alias-pagination input { height:29px; border:1px solid #d7dfe7; border-radius:2px; background:#fff; color:#62707b; }.alias-pagination select { width:88px; }.alias-pagination button { min-width:28px; padding:0 9px; }.alias-pagination button.active { color:#fff; border-color:#358ce1; background:#358ce1; }.alias-pagination button:disabled { color:#b3bcc4; background:#f7f8f9; }.alias-pagination input { width:46px; text-align:center; }.alias-note { margin:0; padding:12px 0 0; border-top:1px solid #e7ebef; color:#697681; font-size:12px; line-height:1.8; }.alias-note b { color:#47545f; }
.store-tax-page { min-height:100%; padding:20px 28px 30px; color:#404c57; background:#fff; }
.tax-table-panel { overflow:auto; border:1px solid #e2e7ec; background:#fff; }
.tax-table { width:100%; min-width:720px; border-collapse:collapse; table-layout:fixed; }
.tax-table th,.tax-table td { height:54px; padding:0 18px; border-bottom:1px solid #edf0f3; text-align:left; font-size:13px; }
.tax-table th { height:46px; background:#f6f8fa; color:#505d68; font-weight:600; }
.tax-table th:nth-child(1) { width:34%; }.tax-table th:nth-child(2),.tax-table th:nth-child(3) { width:24%; }.tax-table th:nth-child(4) { width:18%; }
.tax-store-name { color:#394752; }.tax-rate-value { color:#5d6974; }
.tax-number-control { display:inline-grid; grid-template-columns:28px 96px 28px; height:31px; border:1px solid #d5dde5; border-radius:3px; overflow:hidden; background:#fff; vertical-align:middle; }
.tax-number-control button { border:0; background:#f7f9fb; color:#83909a; font-size:16px; cursor:pointer; }.tax-number-control button:first-child { border-right:1px solid #dfe5eb; }.tax-number-control button:last-child { border-left:1px solid #dfe5eb; }
.tax-number-control input { width:100%; min-width:0; border:0; padding:0 8px; text-align:center; color:#4e5b66; outline:0; appearance:textfield; }.tax-number-control input::-webkit-inner-spin-button,.tax-number-control input::-webkit-outer-spin-button { appearance:none; margin:0; }
.tax-number-control:focus-within { border-color:#4094e2; box-shadow:0 0 0 2px #e6f2fd; }
.tax-note { padding-top:11px; border-top:1px solid #e7ebef; color:#697681; font-size:12px; line-height:1.75; }.tax-note p { margin:0 0 2px; }.tax-note b { color:#47545f; }

/* SKU basic cost settings mirror the dense profit-management workspace. */
.sku-cost-page{padding:0 0 24px;color:#46535f}.sku-cost-toolbar{min-height:64px;display:flex;align-items:center;gap:9px;padding:10px 14px;border:1px solid #e0e6eb;background:#fff;overflow:visible}.sku-cost-toolbar>input{width:150px;height:33px;padding:0 9px;border:1px solid #d4dde5;border-radius:2px;color:#53606c}.sku-cost-toolbar>input[type=date]{width:132px}.sku-cost-toolbar>i{flex:1}.sku-cost-toolbar>button{height:33px;padding:0 13px;border:1px solid #9bc5e9;border-radius:3px;background:#e9f4ff;color:#3287d4;white-space:nowrap;cursor:pointer}.sku-cost-toolbar>button.primary{border-color:#378de0;background:#378de0;color:#fff}.sku-cost-store .store-picker-trigger{width:190px;height:33px;border:1px solid #d4dde5;border-radius:2px;background:#fff}.sku-cost-table-wrap{height:clamp(540px,calc(100vh - 280px),760px);overflow:auto;border:1px solid #e0e6eb;border-top:0;background:#fff}.sku-cost-table{width:max-content;min-width:100%;border-collapse:separate;border-spacing:0}.sku-cost-table th,.sku-cost-table td{height:55px;min-width:104px;padding:7px 10px;border-right:1px solid #e8edf1;border-bottom:1px solid #e5eaee;background:#fff;text-align:center;font-size:11px;white-space:nowrap}.sku-cost-table th{position:sticky;top:0;z-index:4;height:45px;background:#f5f7f9;color:#4c5964;font-size:12px;font-weight:600}.sku-cost-table th:first-child,.sku-cost-table td:first-child{position:sticky;left:0;z-index:3;min-width:320px}.sku-cost-table th:first-child{z-index:5;background:#f5f7f9}.sku-cost-table td:first-child{background:#fff}.sku-cost-table th:nth-child(4),.sku-cost-table td:nth-child(4){min-width:260px;max-width:300px;overflow:hidden;text-overflow:ellipsis}.sku-cost-table th:last-child,.sku-cost-table td:last-child{min-width:235px}.sku-cost-product{width:300px;display:flex;align-items:center;gap:9px;text-align:left}.sku-cost-product>div{min-width:0}.sku-cost-product a,.sku-cost-product small{display:block;max-width:240px;overflow:hidden;text-overflow:ellipsis}.sku-cost-product .product-title-link{color:#45535f;white-space:nowrap}.sku-cost-product a:not(.product-title-link){margin-top:3px;color:#3188d6}.sku-cost-product small{margin-top:2px;color:#8c98a2}.sku-cost-actions{display:flex;align-items:center;gap:6px}.sku-cost-actions button{height:25px;padding:0 5px;border:0;background:transparent;color:#2e87d7;cursor:pointer}.sku-cost-actions button.danger{color:#df5c61}.sku-cost-actions .approved{padding:3px 6px;border-radius:2px;background:#e8f7f1;color:#24966f}.sku-cost-pagination{min-height:52px;display:flex;align-items:center;justify-content:flex-end;gap:8px;padding:0 12px;color:#727e88;font-size:12px}.sku-cost-pagination select,.sku-cost-pagination button,.sku-cost-pagination input{height:29px;border:1px solid #d6dee6;border-radius:2px;background:#fff;color:#66727d}.sku-cost-pagination select{width:88px}.sku-cost-pagination button{min-width:29px}.sku-cost-pagination button.active{border-color:#378de0;background:#378de0;color:#fff}.sku-cost-pagination input{width:42px;text-align:center}.sku-cost-note{margin:0;padding:8px 14px;border-top:1px solid #e2e7eb;color:#6d7984;font-size:12px}.sku-cost-dialog-backdrop{position:fixed;inset:0;z-index:260;display:grid;place-items:center;padding:18px;background:#172b3c55}.sku-cost-dialog{width:min(880px,calc(100vw - 30px));max-height:calc(100vh - 34px);overflow:auto;border:1px solid #d6dee5;border-radius:4px;background:#fff;box-shadow:0 18px 50px #1b30424a}.sku-cost-dialog header{height:54px;display:flex;align-items:center;justify-content:space-between;padding:0 18px;border-bottom:1px solid #e5e9ed}.sku-cost-dialog header strong{font-size:16px;color:#344552}.sku-cost-dialog header button{border:0;background:transparent;color:#82909a;font-size:22px;cursor:pointer}.sku-cost-dialog-body{display:grid;grid-template-columns:repeat(3,1fr);gap:14px;padding:18px}.sku-cost-dialog-body>label{display:flex;flex-direction:column;gap:6px;color:#4d5a65;font-size:12px}.sku-cost-dialog-body>label.wide{grid-column:span 3}.sku-cost-dialog-body input,.sku-cost-dialog-body select{height:33px;padding:0 9px;border:1px solid #d3dce4;border-radius:2px;color:#52606b;background:#fff}.sku-cost-dialog-body fieldset{grid-column:span 3;display:grid;grid-template-columns:repeat(3,1fr);gap:10px;margin:0;padding:12px;border:1px solid #e0e6eb}.sku-cost-dialog-body fieldset legend{padding:0 6px;color:#43515d;font-size:12px}.sku-cost-dialog-body fieldset label{display:flex;flex-direction:column;gap:5px;color:#66737e;font-size:11px}.sku-cost-dialog-body fieldset small{grid-column:span 3;color:#929ca5}.sku-cost-dialog-body label.check{grid-column:span 3;flex-direction:row;align-items:center}.sku-cost-dialog-body label.check input{width:15px;height:15px}.sku-cost-dialog footer{display:flex;align-items:center;justify-content:flex-end;gap:9px;padding:12px 18px;border-top:1px solid #e5eaee}.sku-cost-dialog footer span{flex:1;color:#d95359;font-size:12px}.sku-cost-dialog footer button{min-width:76px;height:32px;border:1px solid #d4dde5;border-radius:3px;background:#fff;color:#5e6a75;cursor:pointer}.sku-cost-dialog footer .primary{border-color:#378de0;background:#378de0;color:#fff}

/* Platform authorization uses the same restrained, dense settings workspace. */
.platform-auth-page { padding:18px 22px 30px; color:#3e4b57; }
.platform-auth-header { min-height:58px; display:flex; align-items:flex-start; justify-content:space-between; gap:20px; }
.platform-auth-header h1 { margin:0; color:#263b4d; font-size:20px; font-weight:650; }
.platform-auth-header p { margin:5px 0 0; color:#8a96a1; font-size:12px; }
.platform-auth-summary { display:flex; gap:20px; padding-top:2px; color:#77838e; font-size:12px; }
.platform-auth-summary span { display:flex; align-items:baseline; gap:5px; }
.platform-auth-summary b { color:#2f87d6; font-size:19px; font-weight:650; }
.platform-auth-toolbar { min-height:56px; display:flex; align-items:center; justify-content:space-between; gap:16px; padding:10px 14px; border:1px solid #e0e6eb; border-bottom:0; background:#fff; }
.platform-auth-toolbar > div { display:flex; gap:10px; }
.platform-auth-toolbar button { height:33px; padding:0 15px; border:1px solid #d5dee6; border-radius:3px; background:#fff; color:#53616d; cursor:pointer; }
.platform-auth-toolbar button.primary { border-color:#378de0; background:#378de0; color:#fff; }
.platform-auth-toolbar label { position:relative; display:block; }
.platform-auth-toolbar input { width:260px; height:33px; padding:0 34px 0 11px; border:1px solid #d3dce4; border-radius:3px; outline:0; color:#52606c; }
.platform-auth-toolbar input:focus { border-color:#3a91e3; box-shadow:0 0 0 2px #e6f2fd; }
.platform-auth-toolbar label span { position:absolute; right:11px; top:6px; color:#73808b; font-size:18px; }
.platform-auth-panel { overflow:auto; min-height:390px; max-height:calc(100vh - 285px); border:1px solid #e0e6eb; background:#fff; }
.platform-auth-table { width:100%; min-width:1120px; border-collapse:separate; border-spacing:0; }
.platform-auth-table th,.platform-auth-table td { padding:12px 14px; border-right:1px solid #e8edf1; border-bottom:1px solid #e7ecf0; background:#fff; text-align:left; vertical-align:top; font-size:12px; }
.platform-auth-table th { position:sticky; top:0; z-index:2; height:43px; padding-top:0; padding-bottom:0; background:#f5f7f9; color:#4b5965; vertical-align:middle; font-weight:600; }
.platform-auth-table th:nth-child(1) { width:195px; }.platform-auth-table th:nth-child(2) { width:120px; }.platform-auth-table th:nth-child(3) { width:105px; }.platform-auth-table th:nth-child(4) { width:270px; }.platform-auth-table th:nth-child(5) { width:210px; }.platform-auth-table th:nth-child(6) { width:145px; }.platform-auth-table th:nth-child(7) { width:105px; }
.platform-store { display:flex; align-items:center; gap:10px; }.platform-logo { flex:0 0 36px; height:36px; display:grid; place-items:center; border-radius:4px; background:#ffe96c; color:#2d5571; font-size:11px; font-weight:700; }.platform-store strong,.platform-store small { display:block; }.platform-store strong { color:#344451; font-weight:600; }.platform-store small { margin-top:4px; color:#929da6; font-size:10px; }
.platform-id { color:#4a5966; font-variant-numeric:tabular-nums; }.auth-status { display:inline-flex; align-items:center; gap:6px; min-width:68px; padding:4px 8px; border-radius:3px; }.auth-status i { width:7px; height:7px; border-radius:50%; }.auth-status.connected { background:#e9f7f2; color:#239a76; }.auth-status.connected i { background:#2db88d; }.auth-status.inactive { background:#f2f4f6; color:#7d8993; }.auth-status.inactive i { background:#a9b1b8; }
.site-auth-list { display:grid; grid-template-columns:repeat(2,minmax(175px,1fr)); gap:8px 12px; }.site-auth-option { min-width:0; display:grid; grid-template-columns:34px auto auto; grid-template-areas:"toggle name state" "toggle seller seller"; align-items:center; justify-content:start; column-gap:7px; color:#65727d; text-align:left; }.site-auth-option b { grid-area:name; font-weight:500; white-space:nowrap; }.site-auth-option em { grid-area:state; color:#8b96a0; font-size:10px; font-style:normal; white-space:nowrap; }.site-auth-option small { grid-area:seller; margin-top:2px; color:#a0a9b1; font-size:9px; font-variant-numeric:tabular-nums; }.site-auth-option.enabled b,.site-auth-option.enabled em { color:#229b75; }.site-switch { grid-area:toggle; position:relative; width:32px; height:18px; padding:0; border:0; border-radius:10px; background:#cfd6dc; cursor:pointer; transition:background .18s; }.site-switch i { position:absolute; top:2px; left:2px; width:14px; height:14px; border-radius:50%; background:#fff; box-shadow:0 1px 3px #26374745; transition:transform .18s; }.site-switch[aria-checked="true"] { background:#2fbd73; }.site-switch[aria-checked="true"] i { transform:translateX(14px); }.site-switch:disabled { opacity:.55; cursor:wait; }
.ad-account { display:block; color:#586773; }.ad-account b { margin-right:7px; color:#3187d5; font-weight:500; }.platform-actions { display:flex; flex-direction:column; align-items:flex-start; gap:3px; }.platform-actions button { height:21px; padding:0; border:0; background:transparent; color:#2f86d4; cursor:pointer; font-size:12px; }
.platform-auth-footer { min-height:54px; display:flex; align-items:center; justify-content:flex-end; gap:8px; color:#6f7b86; font-size:12px; }.platform-auth-footer select,.platform-auth-footer button { height:29px; border:1px solid #d6dee6; border-radius:2px; background:#fff; color:#65717c; }.platform-auth-footer select { width:88px; }.platform-auth-footer button { min-width:29px; }.platform-auth-footer button.active { border-color:#378ee2; background:#378ee2; color:#fff; }.platform-auth-footer button:disabled { color:#b1bbc3; background:#f6f8f9; }
.auth-dialog-backdrop { position:fixed; inset:0; z-index:240; display:grid; place-items:center; padding:20px; background:#15283a55; }.auth-dialog { width:min(680px,calc(100vw - 30px)); border:1px solid #d4dde5; border-radius:4px; background:#fff; box-shadow:0 18px 48px #172a3c4d; }.auth-dialog header { min-height:58px; display:flex; align-items:center; justify-content:space-between; padding:0 18px; border-bottom:1px solid #e4e9ed; }.auth-dialog header div { display:flex; flex-direction:column; gap:4px; }.auth-dialog header strong { color:#304252; font-size:16px; }.auth-dialog header span { color:#8a96a0; font-size:11px; }.auth-dialog header button { width:28px; height:28px; border:0; background:transparent; color:#7c8892; font-size:22px; cursor:pointer; }.auth-dialog-body { padding:18px; }.auth-dialog-body > label { display:block; margin:0 0 7px; color:#44525e; font-size:12px; font-weight:600; }.auth-link-row { display:flex; gap:8px; }.auth-link-row input { flex:1; min-width:0; height:34px; padding:0 10px; border:1px solid #d4dde5; background:#f7f9fa; color:#5d6974; font-size:11px; }.auth-link-row button { flex:0 0 82px; height:34px; border:1px solid #39a56e; border-radius:3px; background:#e9f7ef; color:#23875a; cursor:pointer; }.auth-dialog-body p { margin:11px 0 17px; color:#7a8791; font-size:11px; }.auth-dialog-body textarea { width:100%; resize:vertical; min-height:86px; padding:9px 10px; border:1px solid #d3dce4; border-radius:2px; color:#4f5d68; font-family:inherit; outline:0; }.auth-dialog-body textarea:focus { border-color:#3990e1; box-shadow:0 0 0 2px #e6f2fd; }.auth-dialog-error { display:block; min-height:18px; margin-top:6px; color:#d94e55; font-size:11px; }.auth-dialog footer { display:flex; justify-content:flex-end; gap:9px; padding:12px 18px; border-top:1px solid #e5eaee; }.auth-dialog footer button { min-width:76px; height:32px; border:1px solid #d4dde5; border-radius:3px; background:#fff; color:#5d6974; cursor:pointer; }.auth-dialog footer .primary { border-color:#348de1; background:#348de1; color:#fff; }.auth-dialog footer button:disabled { opacity:.65; cursor:wait; }

.sku-cost-dialog-body fieldset { grid-column:span 1; grid-template-columns:1fr; }
.sku-cost-dialog-body .sku-cost-scope-note { grid-column:span 3; margin:0; color:#75818b; font-size:11px; line-height:1.6; }
.sku-cost-table th:nth-child(4),.sku-cost-table td:nth-child(4) { min-width:145px; max-width:none; }
.sku-cost-table th:nth-child(12),.sku-cost-table td:nth-child(12) { min-width:270px; }
.sku-cost-table th,.sku-cost-table td { min-width:76px; padding:7px 8px; }
.sku-cost-table th:first-child,.sku-cost-table td:first-child { min-width:210px; }
.sku-cost-product { width:190px; }
.sku-cost-product a,.sku-cost-product small { max-width:132px; }
.sku-cost-table th:nth-child(2),.sku-cost-table td:nth-child(2) { min-width:82px; }
.sku-cost-table th:nth-child(3),.sku-cost-table td:nth-child(3) { min-width:96px; }
.sku-cost-table th:nth-child(4),.sku-cost-table td:nth-child(4),.sku-cost-table th:nth-child(5),.sku-cost-table td:nth-child(5),.sku-cost-table th:nth-child(6),.sku-cost-table td:nth-child(6) { min-width:106px; }
.sku-cost-table th:nth-child(7),.sku-cost-table td:nth-child(7) { min-width:94px; }
.sku-cost-table th:nth-child(8),.sku-cost-table td:nth-child(8) { min-width:158px; }
.sku-cost-table th:nth-child(9),.sku-cost-table td:nth-child(9) { min-width:58px; }
.sku-cost-table th:nth-child(10),.sku-cost-table td:nth-child(10) { min-width:78px; }
.sku-cost-table th:nth-child(11),.sku-cost-table td:nth-child(11) { min-width:112px; }
.sku-cost-table th:nth-child(12),.sku-cost-table td:nth-child(12) { min-width:142px; }
.sku-cost-table th:nth-child(13),.sku-cost-table td:nth-child(13) { min-width:218px; }
.sku-cost-table th:first-child,.sku-cost-table td:first-child { min-width:230px; }
.sku-cost-product { width:210px; }
.sku-cost-product a,.sku-cost-product small { max-width:150px; }

@media (max-width: 900px) {
  .platform-auth-page { padding:12px 8px 24px; }
  .platform-auth-header,.platform-auth-toolbar { align-items:stretch; flex-direction:column; }
  .platform-auth-toolbar input,.platform-auth-toolbar label { width:100%; }
  .sidebar { width: 58px; flex-basis: 58px; }
  .brand strong, .nav-item, .nav-title { font-size: 0; }
  .brand { padding: 0 16px; }
  .nav-item, .nav-title { justify-content: center; padding: 0; }
  .nav-item.child { padding-left: 0; }
  .chevron { display: none; }
  .topbar { padding: 0 10px; }
  .clock { display: none; }
  main { padding: 8px; }
  .metrics, .metrics.order-metrics { grid-template-columns: repeat(2, 1fr); padding: 12px; }
  .filters input { width: 100%; }
  .date-popover { width: min(758px, calc(100vw - 86px)); }
  .calendar-months { gap: 8px; }
}
.site-auth-option.pending{opacity:.62}.site-auth-option.pending .site-switch{background:#eef1f4;cursor:not-allowed}.site-auth-option.pending em{color:#9aa4ad}
.sku-extra-empty{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:8px;min-height:180px;color:#8a94a6}.sku-extra-empty strong{font-size:14px;color:#566176;font-weight:600}.sku-extra-empty span{font-size:12px}.sku-extra-empty button{margin-top:6px}
.sync-failure-row{display:grid;grid-template-columns:68px 80px minmax(0,1fr);gap:8px;align-items:start;margin-top:7px;padding:8px;border:1px solid #f2d3d5;background:#fff7f7;color:#b24b52;font-size:12px}.sync-failure-row small{line-height:1.45;overflow-wrap:anywhere}.sync-retry-failed{margin-top:10px;height:30px;padding:0 12px;border:1px solid #e58d92;border-radius:3px;background:#fff;color:#c5575d;cursor:pointer}
.home-data-sources{display:flex;align-items:flex-start;gap:18px;margin:0 0 12px;padding:10px 14px;border:1px solid #e1e7ed;background:#fff;color:#687682;font-size:11px}.home-data-sources>strong{color:#465560;white-space:nowrap;font-size:12px}.home-data-sources>div{display:flex;flex-wrap:wrap;gap:6px 18px}.home-data-sources span{white-space:nowrap}.home-data-sources b{color:#526370;font-weight:600}
.refund-reason-cell{display:flex;flex-direction:column;align-items:center;gap:4px;min-width:110px}.refund-reason-cell small{max-width:140px;overflow:hidden;text-overflow:ellipsis;color:#8a96a1;font-size:11px}
.auth-gate{position:fixed;inset:0;z-index:1000;display:grid;place-items:center;padding:24px;background:#edf3f8}.auth-card{width:min(390px,100%);padding:34px;border:1px solid #dce5ec;border-radius:6px;background:#fff;box-shadow:0 18px 46px #1f3a4a18}.auth-brand{display:flex;align-items:center;gap:9px;color:#223343;font-size:19px}.auth-brand span{display:grid;place-items:center;width:31px;height:31px;border-radius:4px;background:#378de0;color:#fff;font-weight:800}.auth-card h1{margin:25px 0 8px;color:#283946;font-size:22px}.auth-card p{margin:0 0 22px;color:#74818b;font-size:13px;line-height:1.6}.auth-card form{display:flex;flex-direction:column;gap:13px}.auth-card label{display:flex;flex-direction:column;gap:6px;color:#586671;font-size:12px}.auth-card input{height:38px;padding:0 10px;border:1px solid #d6e0e8;border-radius:3px;color:#334550}.auth-card button{height:38px;margin-top:5px}.auth-error{min-height:16px;color:#d95359;font-size:12px}
.auth-user-menu{display:flex;align-items:center;gap:8px;padding-left:10px;border-left:1px solid #dce4ea;color:#5b6872;font-size:12px}.auth-user-menu button{padding:0;border:0;background:transparent;color:#2d83cf;cursor:pointer}.user-create-form{display:flex;flex-wrap:wrap;align-items:center;gap:9px;padding:14px}.user-create-form input,.user-create-form select{height:34px;padding:0 9px;border:1px solid #d4dde5;border-radius:3px;color:#52606b}.user-create-form input{width:170px}.user-create-form button{height:34px}.user-create-form .auth-error{min-width:160px}
.user-actions{display:flex;justify-content:center;gap:7px}.user-actions button{height:28px;padding:0 8px;border:0;background:transparent;color:#2f86d2;cursor:pointer}.user-actions button.danger{color:#d95359}.user-actions button:disabled{color:#aab3ba;cursor:not-allowed}.user-enabled{display:flex;align-items:center;justify-content:center;gap:5px;white-space:nowrap}.role-permission-list{display:grid;gap:12px}.role-permission-row{border:1px solid #dfe7ed;background:#fff}.role-permission-row header{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:13px 16px;border-bottom:1px solid #e7edf1}.role-permission-row header div{display:flex;flex-direction:column;gap:4px}.role-permission-row header strong{color:#334653;font-size:14px}.role-permission-row header span{color:#82909b;font-size:12px}.role-permission-row header button{height:31px;padding:0 12px}.role-permission-options{display:flex;flex-wrap:wrap;gap:10px 22px;padding:14px 16px}.role-permission-options label{display:flex;align-items:center;gap:6px;min-width:150px;color:#52616c;font-size:12px}.role-permission-options input{width:15px;height:15px}
.store-auth-toolbar{display:flex;align-items:flex-end;gap:18px;flex-wrap:wrap;padding:14px 16px}.store-auth-toolbar label{display:flex;align-items:center;gap:9px;color:#52616c;font-size:12px}.store-auth-toolbar select{min-width:250px;height:34px;padding:0 9px;border:1px solid #d4dde5;border-radius:3px;background:#fff;color:#334653}.store-auth-toolbar small{width:100%;color:#83909a;font-size:11px}.store-auth-actions{display:flex;gap:8px}.store-auth-actions button{height:34px;padding:0 11px;border:1px solid #d5e0e8;border-radius:3px;background:#fff;color:#4d6472;cursor:pointer}.store-auth-actions button.primary{border-color:#2f86d2;background:#2f86d2;color:#fff}.store-auth-actions button:disabled{color:#aab3ba;background:#f5f7f8;cursor:not-allowed}.store-auth-table-wrap{overflow:auto}.store-auth-table{width:100%;border-collapse:collapse;font-size:12px}.store-auth-table th,.store-auth-table td{padding:11px 14px;border-bottom:1px solid #e8edf1;text-align:left;white-space:nowrap}.store-auth-table th{background:#f7f9fb;color:#6c7b86;font-weight:600}.store-auth-table td strong{display:block;color:#405461;font-weight:600}.store-auth-table td small{display:block;margin-top:3px;color:#8a98a2;font-size:11px}.store-auth-switch{display:inline-flex;align-items:center;gap:8px;color:#70808b;cursor:pointer}.store-auth-switch input{width:16px;height:16px;accent-color:#2bb673}.store-auth-switch input:disabled{cursor:not-allowed}.store-auth-switch input:checked+span{color:#23955e;font-weight:600}
.product-price-cell { display: grid; gap: 3px; min-width: 132px; line-height: 1.35; }
.product-price-cell span { color: #24364b; white-space: nowrap; }
.product-price-cell small { color: #708197; white-space: nowrap; font-size: 12px; }
.sync-center-page { padding: 20px 24px; color: #35424e; }
.sync-center-layout { display: grid; grid-template-columns: minmax(0, 1.35fr) minmax(300px, .65fr); gap: 16px; align-items: start; }
.sync-center-form, .sync-center-progress, .sync-center-history { border: 1px solid #dce4eb; background: #fff; }
.sync-center-form { padding: 18px; }
.sync-center-section { padding-bottom: 16px; margin-bottom: 16px; border-bottom: 1px solid #edf0f3; }
.sync-center-section > strong { display: block; margin-bottom: 12px; font-size: 14px; }
.sync-store-actions { display: flex; gap: 8px; margin: -4px 0 10px; }.sync-store-actions button, .sync-center-form footer button { height: 32px; padding: 0 12px; border: 1px solid #d2dce6; border-radius: 3px; background: #fff; color: #546473; cursor: pointer; }.sync-center-form footer button.primary { border-color: #3389df; background: #3389df; color: #fff; }
.sync-store-options { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 8px; }.sync-store-options label { display: grid; grid-template-columns: 16px minmax(0,1fr); gap: 2px 8px; align-items: center; padding: 9px; border: 1px solid #e0e6ec; color: #4b5b69; font-size: 12px; cursor: pointer; }.sync-store-options small { grid-column: 2; color: #8996a2; font-size: 11px; }
.sync-content-options { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 8px; }.sync-content-options label { display: flex; align-items: flex-start; gap: 8px; padding: 9px; border: 1px solid #e0e6ec; color: #4b5b69; font-size: 12px; cursor: pointer; }.sync-content-options b, .sync-content-options small { display: block; }.sync-content-options small { margin-top: 3px; color: #8996a2; font-size: 11px; }
.sync-center-modes { display: flex; gap: 10px; }.sync-center-modes button { flex: 1; min-height: 70px; padding: 10px 12px; border: 1px solid #d7e0e8; border-radius: 3px; background: #fff; color: #657382; text-align: left; cursor: pointer; }.sync-center-modes button.active { border-color: #398de0; background: #edf6ff; color: #247ace; }.sync-center-modes b, .sync-center-modes span { display: block; }.sync-center-modes b { margin-bottom: 5px; font-size: 13px; }.sync-center-modes span { font-size: 11px; }
.sync-center-dates { display: flex; gap: 12px; margin-bottom: 16px; }.sync-center-dates[hidden] { display: none; }.sync-center-dates label { display: grid; gap: 5px; color: #687887; font-size: 12px; }.sync-center-dates input { height: 32px; border: 1px solid #d3dde6; border-radius: 3px; padding: 0 8px; }
.sync-center-form footer { display: flex; justify-content: flex-end; gap: 8px; }.sync-center-progress { padding: 18px; }.sync-center-progress header { display: flex; justify-content: space-between; gap: 12px; }.sync-center-progress header span { color: #3189dc; font-weight: 650; }.sync-center-track { height: 8px; margin: 14px 0; background: #e5ebf0; }.sync-center-track i { display: block; height: 100%; background: #37a46e; transition: width .25s; }.sync-center-progress-meta { display: grid; gap: 8px; color: #71808d; font-size: 12px; }.sync-center-errors { margin-top: 14px; color: #c45159; font-size: 11px; }
.sync-cancel-task { width: 100%; height: 34px; margin-top: 16px; border: 1px solid #d65a5a; border-radius: 3px; background: #fff; color: #c34d4d; cursor: pointer; }
.sync-center-history { margin-top: 16px; }.sync-center-history > header { display: flex; justify-content: space-between; padding: 13px 16px; border-bottom: 1px solid #e8edf1; }.sync-center-history > header span { color: #84919d; font-size: 12px; }.sync-center-history-table { overflow: auto; }.sync-center-history table { width: 100%; border-collapse: collapse; font-size: 12px; }.sync-center-history th, .sync-center-history td { padding: 11px 14px; border-bottom: 1px solid #edf0f3; text-align: left; }.sync-center-history th { color: #6d7b87; font-weight: 600; background: #fafbfc; }.sync-task-status { color: #5e7180; }.sync-task-status.completed { color: #268851; }.sync-task-status.failed { color: #c85259; }
.sync-continue-task { margin-left: 8px; height: 25px; padding: 0 8px; border: 1px solid #3389df; border-radius: 3px; background: #fff; color: #277fc7; cursor: pointer; }
@media (max-width: 880px) { .sync-center-layout { grid-template-columns: 1fr; }.sync-store-options, .sync-content-options { grid-template-columns: 1fr; } }

/* Operational workspaces: dense queues with a persistent detail surface. */
.workspace-page { max-width: 100%; }
.workspace-metrics { grid-template-columns: repeat(4, minmax(150px, 1fr)); }
.catalog-page .workspace-metrics { grid-template-columns: repeat(5, minmax(135px, 1fr)); }
.workspace-page .catalog-metrics-compact { grid-template-columns:repeat(4,minmax(135px,1fr)); }
.workspace-tabs { display:flex; align-items:end; gap:0; height:43px; margin:0 0 14px; padding:0 16px; border:1px solid #e0e7ed; background:#fff; }
.workspace-tabs button { position:relative; height:42px; padding:0 17px; border:0; border-bottom:2px solid transparent; background:transparent; color:#647382; cursor:pointer; font-size:13px; }
.workspace-tabs button:hover { color:#287fcb; background:#f8fbfe; }
.workspace-tabs button.active { border-bottom-color:#2e8ad9; color:#247bc3; font-weight:650; }
.workspace-tabs button b { margin-left:5px; color:#87949f; font-size:11px; font-weight:500; }
.workspace-toolbar { margin-bottom:14px; padding:10px 14px; }
.workspace-toolbar .filters input { width:300px; }
.workspace-table-panel { position:relative; }
.workspace-table-panel .table-wrap { max-height:calc(100vh - 365px); }
.workspace-table-panel table { min-width:1420px; }
.workspace-table-panel td { vertical-align:middle; }
.case-type,.case-status,.rule-state { display:inline-flex; align-items:center; justify-content:center; min-width:44px; height:22px; padding:0 7px; border-radius:3px; font-size:11px; line-height:1; white-space:nowrap; }
.case-return { background:#fff1df; color:#bc6c1d; }
.case-claim { background:#f0e9ff; color:#7453b9; }
.case-refund { background:#e7f4ff; color:#287fc4; }
.case-status.open { background:#fff3df; color:#b87820; }
.case-status.closed { background:#e8f5ed; color:#248a58; }
.rule-state { background:#f0f3f5; color:#75818b; }
.rule-state.configured { background:#e8f6ee; color:#268b5b; }
.subline { display:block; margin-top:4px; color:#84929d; font-size:10px; line-height:1.25; }
.case-id { min-width:150px; text-align:left; }.case-id b,.case-id small { display:block; }.case-id b { color:#3b4e5d; font-size:12px; }.case-id small { margin-top:4px; color:#84919b; font-size:10px; }
.case-product { display:flex; align-items:center; gap:9px; min-width:210px; text-align:left; }.case-product > img,.case-product .product-image,.case-product .product-image-box { flex:0 0 34px; width:34px; height:34px; }.case-product > div { min-width:0; }.case-product b,.case-product a,.case-product small { display:block; max-width:210px; overflow:hidden; text-overflow:ellipsis; white-space:nowrap; }.case-product b,.case-product a { color:#364b5b; font-size:12px; font-weight:600; }.case-product small { margin-top:4px; color:#8996a1; font-size:10px; }.last-message { min-width:170px; text-align:left; }.last-message span,.last-message small { display:block; max-width:190px; overflow:hidden; text-overflow:ellipsis; white-space:nowrap; }.last-message span { color:#596876; }.last-message small { margin-top:4px; color:#909ca6; font-size:10px; }
.workspace-drawer { position:fixed; z-index:210; top:88px; right:0; bottom:0; width:min(500px,calc(100vw - 180px)); overflow:auto; border-left:1px solid #d9e2e9; background:#fff; box-shadow:-14px 0 34px #18304418; }
.drawer-header { display:flex; align-items:flex-start; justify-content:space-between; gap:14px; min-height:102px; padding:18px 20px 15px; border-bottom:1px solid #e5ebef; }.drawer-header h2 { margin:7px 0 4px; color:#2f4250; font-size:17px; font-weight:650; line-height:1.35; }.drawer-header p { margin:0; color:#85929d; font-size:11px; }.drawer-kicker { display:flex; align-items:center; gap:5px; }.icon-close { flex:0 0 30px; width:30px; height:30px; border:0; background:transparent; color:#71808c; font-size:23px; line-height:1; cursor:pointer; }.icon-close:hover { background:#f3f6f8; color:#435563; }
.drawer-facts { display:grid; grid-template-columns:1fr 1fr; gap:0; border-bottom:1px solid #e5ebef; }.drawer-facts div { min-height:58px; padding:11px 18px; border-right:1px solid #edf0f3; border-bottom:1px solid #edf0f3; }.drawer-facts div:nth-child(2n) { border-right:0; }.drawer-facts div:nth-last-child(-n+2) { border-bottom:0; }.drawer-facts span,.drawer-facts b { display:block; }.drawer-facts span { margin-bottom:5px; color:#8b98a2; font-size:10px; }.drawer-facts b { overflow:hidden; color:#4b5c68; font-size:11px; text-overflow:ellipsis; white-space:nowrap; }
.drawer-section { padding:16px 18px; border-bottom:1px solid #e8edf1; }.drawer-section-title { display:flex; align-items:center; justify-content:space-between; margin-bottom:11px; }.drawer-section-title strong { color:#40525f; font-size:13px; }.drawer-section-title span { color:#8b98a2; font-size:10px; }.message-thread { display:flex; flex-direction:column; gap:9px; max-height:260px; overflow:auto; }.message-bubble { max-width:86%; padding:9px 11px; border:1px solid #e2e8ed; background:#f7f9fa; color:#4a5965; }.message-bubble.seller { align-self:flex-end; border-color:#d5e8fa; background:#edf7ff; }.message-bubble header { display:flex; justify-content:space-between; gap:12px; margin-bottom:5px; }.message-bubble header b { color:#3a5569; font-size:10px; }.message-bubble header time { color:#92a0aa; font-size:10px; }.message-bubble p { margin:0; font-size:12px; line-height:1.55; }.drawer-empty { padding:15px; border:1px dashed #d9e1e7; color:#8b98a3; font-size:12px; text-align:center; }
.response-composer textarea { display:block; width:100%; min-height:92px; resize:vertical; padding:9px 10px; border:1px solid #d4dee7; border-radius:3px; color:#455563; font:12px/1.5 inherit; outline:0; }.response-composer textarea:focus { border-color:#3a91df; box-shadow:0 0 0 2px #e8f3fc; }.composer-actions { display:flex; align-items:center; justify-content:space-between; gap:10px; margin-top:9px; }.composer-actions small { color:#84919c; font-size:10px; }.composer-actions .primary { height:30px; }
.action-timeline { display:grid; gap:8px; margin:0; padding:0; list-style:none; }.action-timeline li { display:grid; grid-template-columns:minmax(0,1fr) auto; gap:4px 12px; padding:9px 10px; border-left:3px solid #d8e2e9; background:#f8fafb; color:#5f6e79; font-size:11px; }.action-timeline li time,.action-timeline li small { grid-column:1 / -1; color:#8a97a1; font-size:10px; }.action-timeline li small { color:#be5960; overflow-wrap:anywhere; }
.catalog-form { display:grid; gap:13px; padding:18px; }.catalog-form label { display:grid; gap:6px; color:#5c6b76; font-size:11px; font-weight:600; }.catalog-form input,.catalog-form select,.catalog-form textarea { width:100%; border:1px solid #d4dde5; border-radius:3px; background:#fff; color:#40515e; font:12px inherit; }.catalog-form input,.catalog-form select { height:34px; padding:0 9px; }.catalog-form textarea { min-height:84px; padding:8px 9px; resize:vertical; line-height:1.45; }.catalog-form textarea#catalogDraftAttributes,.catalog-form textarea#catalogDraftPictures { min-height:96px; font-family:Consolas,"Courier New",monospace; font-size:11px; }.catalog-form input:focus,.catalog-form select:focus,.catalog-form textarea:focus { border-color:#3a91df; outline:0; box-shadow:0 0 0 2px #e8f3fc; }.form-grid { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:11px; }.form-grid:has(label:nth-child(3)) { grid-template-columns:repeat(3,minmax(0,1fr)); }.catalog-form footer { display:flex; justify-content:flex-end; gap:8px; padding-top:4px; }.catalog-form footer button { height:32px; }.catalog-drawer { top:88px; }
.catalog-page,.promotion-workspace,.promotion-workspace > * { min-width:0; }
.promotion-workspace { display:grid; width:100%; max-width:100%; gap:14px; }
.promotion-price-panel { overflow:hidden; }
.promotion-command-bar { display:flex; align-items:center; justify-content:space-between; gap:16px; padding:12px 14px; border:1px solid #dde5eb; background:#fff; }
.promotion-command-bar > div { display:flex; align-items:center; gap:8px; flex-wrap:wrap; }.promotion-command-bar button { min-height:32px; padding:0 11px; border:1px solid #d4dee6; border-radius:3px; background:#fff; color:#506574; cursor:pointer; }.promotion-command-bar button.primary { border-color:#2f88d7; background:#2f88d7; color:#fff; }.promotion-command-bar .promotion-monthly { border-color:#2a9662; background:#edf8f2; color:#247f55; }.promotion-command-bar span { color:#86939d; font-size:10px; }
.promotion-alerts { display:grid; gap:5px; padding:10px 14px; border-left:3px solid #e1a33c; background:#fff8eb; color:#8a6428; font-size:11px; }
.promotion-section { border:1px solid #dde5eb; background:#fff; }.promotion-section > header { display:flex; align-items:center; justify-content:space-between; gap:14px; min-height:46px; padding:0 14px; border-bottom:1px solid #e7ecf0; }.promotion-section > header div { display:flex; align-items:baseline; gap:9px; }.promotion-section > header strong { color:#3d5261; font-size:13px; }.promotion-section > header span { color:#84929d; font-size:10px; }
.promotion-cards { display:grid; grid-template-columns:repeat(auto-fill,minmax(210px,1fr)); gap:8px; padding:10px; background:#f5f7f8; }
.promotion-card { min-width:0; padding:8px; border:1px solid #dce3e8; border-left:3px solid #bdc8d0; border-radius:4px; background:#fff; cursor:pointer; }.promotion-card:hover,.promotion-card:focus-visible { border-color:#8fc4ed; outline:0; box-shadow:0 0 0 2px #e8f3fc; }.promotion-card.selected { border-left-color:#2b9b67; box-shadow:0 0 0 1px #d9eee3; }.promotion-card > header { display:flex; align-items:center; justify-content:space-between; gap:5px; }.promotion-kind,.promotion-status { display:inline-flex; align-items:center; min-height:17px; padding:0 4px; border-radius:3px; font-size:8px; text-transform:uppercase; }.promotion-kind.owned { background:#e8f6ee; color:#27865a; }.promotion-kind.platform { background:#edf2f6; color:#687986; }.promotion-status { background:#fff3df; color:#a46c21; }.promotion-status.started,.promotion-status.active { background:#e8f6ee; color:#27865a; }.promotion-card h3 { margin:7px 0 2px; overflow:hidden; color:#344956; font-size:12px; font-weight:650; text-overflow:ellipsis; white-space:nowrap; }.promotion-card > p { margin:0; color:#7c8993; font-size:9px; }.promotion-card dl { display:grid; grid-template-columns:1fr 1fr; gap:0; margin:7px 0; border:1px solid #e5eaee; }.promotion-card dl div { padding:5px 7px; }.promotion-card dl div+div { border-left:1px solid #e5eaee; }.promotion-card dt { color:#8b97a0; font-size:8px; }.promotion-card dd { margin:1px 0 0; color:#405563; font-size:13px; font-weight:650; }.promotion-card footer { display:flex; align-items:center; gap:4px; flex-wrap:wrap; }.promotion-card footer button { min-height:23px; padding:0 5px; border:1px solid #d7e0e7; border-radius:3px; background:#fff; color:#4f6a7b; font-size:9px; cursor:pointer; }.promotion-card.selected footer button[data-promotion-select] { border-color:#aad8c1; background:#edf8f2; color:#247f55; }
.promotion-empty { grid-column:1/-1; padding:28px; border:1px dashed #d5dee5; color:#87949e; text-align:center; }.promotion-price-panel table { min-width:1100px; }.promotion-form-note { padding:9px 10px; border-left:3px solid #368cd8; background:#edf6ff; color:#547083; font-size:11px; }.promotion-check { grid-template-columns:16px 1fr!important; align-items:center; }.promotion-check input { width:15px!important; height:15px!important; accent-color:#2a9662; }
.promotion-plan-summary { display:grid; grid-template-columns:repeat(4,1fr); border-bottom:1px solid #e4eaee; }.promotion-plan-summary div { padding:11px 8px; border-right:1px solid #e7ecef; text-align:center; }.promotion-plan-summary div:last-child { border-right:0; }.promotion-plan-summary span,.promotion-plan-summary b { display:block; }.promotion-plan-summary span { color:#88959f; font-size:9px; }.promotion-plan-summary b { margin-top:4px; color:#3e5361; font-size:16px; }.promotion-plan-body { display:grid; gap:12px; padding:14px 18px 84px; }.promotion-plan-group { border:1px solid #e0e6eb; }.promotion-plan-group > header { display:flex; align-items:center; justify-content:space-between; padding:9px 10px; border-bottom:1px solid #e7ecef; background:#f7f9fa; }.promotion-plan-group > header strong { color:#4c606e; font-size:11px; }.promotion-plan-group > header span { color:#84919b; font-size:10px; }.promotion-plan-group > div { display:grid; grid-template-columns:minmax(0,1fr) auto auto; gap:10px; align-items:center; min-height:34px; padding:6px 10px; border-bottom:1px solid #edf0f2; font-size:10px; }.promotion-plan-group > div:last-child { border-bottom:0; }.promotion-plan-group > div b { overflow:hidden; color:#405563; text-overflow:ellipsis; white-space:nowrap; }.promotion-plan-group > div span { color:#607584; }.promotion-plan-group small { color:#87949e; }.promotion-plan-group small.ready,.promotion-plan-group small.joined { color:#27865a; }.promotion-plan-group small.ineligible,.promotion-plan-group small.not-for-sale { color:#c35a5f; }.promotion-plan-group > p { margin:0; padding:12px; color:#8a97a1; font-size:10px; }.promotion-extension { padding:12px; border-left:3px solid #e0a13b; background:#fff8ec; }.promotion-extension strong { color:#7e5c26; font-size:11px; }.promotion-extension p { margin:5px 0 9px; color:#8b7048; font-size:10px; }.promotion-extension button { min-height:28px; border:1px solid #d9b36e; border-radius:3px; background:#fff; color:#866024; cursor:pointer; }.promotion-plan-footer { position:fixed; right:0; bottom:0; width:min(500px,calc(100vw - 180px)); display:flex; justify-content:flex-end; gap:8px; padding:12px 18px; border-top:1px solid #dae3e9; background:#fff; }.promotion-plan-footer button { min-height:33px; }.promotion-plan-footer button:disabled { opacity:.5; cursor:not-allowed; }
.promotion-detail-section { padding:16px 18px 76px; }.promotion-detail-section > header { display:flex; align-items:center; justify-content:space-between; gap:12px; margin-bottom:10px; }.promotion-detail-section > header div { display:grid; gap:3px; }.promotion-detail-section strong { color:#40525f; font-size:13px; }.promotion-detail-section header span { color:#8a97a1; font-size:10px; }.promotion-detail-table { overflow:auto; border:1px solid #e0e6eb; }.promotion-detail-table table { width:100%; min-width:620px; border-collapse:collapse; font-size:11px; }.promotion-detail-table th,.promotion-detail-table td { padding:10px 9px; border-bottom:1px solid #e8edf0; color:#586a76; text-align:left; white-space:nowrap; }.promotion-detail-table th { background:#f6f8fa; color:#6f7f8a; font-size:10px; font-weight:600; }.promotion-detail-table .case-product { min-width:180px; }.promotion-detail-footer { position:fixed; right:0; bottom:0; width:min(500px,calc(100vw - 180px)); display:flex; justify-content:flex-end; gap:8px; padding:12px 18px; border-top:1px solid #dae3e9; background:#fff; }.promotion-detail-footer button { min-height:33px; }
.promotion-inline-detail { overflow:hidden; }.promotion-inline-detail > header { display:flex; align-items:flex-start; justify-content:space-between; gap:14px; padding:15px 16px; border-bottom:1px solid #e4eaee; }.promotion-inline-detail > header > div { display:flex; align-items:center; gap:10px; min-width:0; }.promotion-inline-detail > header > div > div { display:grid; gap:3px; min-width:0; }.promotion-inline-detail > header strong { overflow:hidden; color:#405563; font-size:15px; text-overflow:ellipsis; white-space:nowrap; }.promotion-inline-detail > header small { color:#84919b; font-size:10px; }.promotion-inline-facts { display:grid; grid-template-columns:repeat(4,1fr); border-bottom:1px solid #e5ebef; }.promotion-inline-facts div { min-height:62px; padding:12px 15px; border-right:1px solid #edf0f3; }.promotion-inline-facts div:last-child { border-right:0; }.promotion-inline-facts span,.promotion-inline-facts b { display:block; }.promotion-inline-facts span { margin-bottom:5px; color:#8b98a2; font-size:10px; }.promotion-inline-facts b { color:#4a5d6b; font-size:12px; }.promotion-inline-table { padding:14px 16px; }.promotion-inline-table .table-wrap { max-height:360px; }.promotion-inline-detail > footer { display:flex; justify-content:flex-end; padding:0 16px 16px; }.promotion-inline-detail > footer button { min-height:32px; }
.promotion-product-cell { min-width:250px; }.promotion-product-cell .product-image-box { flex:0 0 38px; width:38px; height:38px; }.promotion-product-cell .product-image-box img { width:38px; height:38px; object-fit:cover; }
@media (max-width:1100px) { .workspace-metrics,.catalog-page .workspace-metrics { grid-template-columns:repeat(3,minmax(145px,1fr)); }.workspace-drawer { width:min(490px,calc(100vw - 72px)); } }
@media (max-width:760px) { .workspace-tabs { overflow:auto; padding:0 5px; }.workspace-tabs button { flex:0 0 auto; padding:0 12px; }.workspace-toolbar .filters input { width:100%; }.workspace-drawer { top:0; width:100vw; }.drawer-facts { grid-template-columns:1fr; }.drawer-facts div,.drawer-facts div:nth-child(2n),.drawer-facts div:nth-last-child(-n+2) { border-right:0; border-bottom:1px solid #edf0f3; }.drawer-facts div:last-child { border-bottom:0; }.form-grid,.form-grid:has(label:nth-child(3)) { grid-template-columns:1fr; }.workspace-metrics,.catalog-page .workspace-metrics,.workspace-page .catalog-metrics-compact { grid-template-columns:repeat(2,minmax(130px,1fr)); }.promotion-command-bar { align-items:flex-start; flex-direction:column; }.promotion-cards { grid-template-columns:1fr; }.promotion-plan-footer,.promotion-detail-footer { width:100vw; }.promotion-plan-summary,.promotion-inline-facts { grid-template-columns:repeat(2,1fr); }.promotion-inline-facts div:nth-child(2n) { border-right:0; }.promotion-inline-facts div:nth-child(-n+2) { border-bottom:1px solid #edf0f3; } }
.inbound-page .inbound-metrics { grid-template-columns:repeat(5,minmax(130px,1fr)); }.inbound-tabs { overflow-x:auto; padding:0 7px; }.inbound-tabs button { flex:0 0 auto; padding:0 11px; }.inbound-table table { min-width:1320px; }.inbound-number b,.inbound-number small { display:block; }.inbound-number b { color:#344b5a; font-weight:650; }.inbound-number small { margin-top:4px; color:#8b98a2; font-size:9px; }.inbound-status,.inbound-mode-badge { display:inline-flex; align-items:center; justify-content:center; min-height:22px; padding:0 7px; border-radius:3px; white-space:nowrap; font-size:10px; }.inbound-status { background:#eef2f5; color:#677884; }.inbound-status.pending_create,.inbound-status.creating { background:#fff2df; color:#a66d22; }.inbound-status.creation_failed { background:#fdebed; color:#bb4d56; }.inbound-status.pending_pack { background:#ebeefe; color:#5368b5; }.inbound-status.domestic_transit { background:#e8f5fb; color:#277b9d; }.inbound-status.domestic_warehouse { background:#eef1f3; color:#586d79; }.inbound-status.sea_transit { background:#e7f1fb; color:#2c6f9f; }.inbound-status.e_warehouse,.inbound-status.delivered { background:#e9f5ed; color:#2c8052; }.inbound-status.appointment_required { background:#fff1e2; color:#a85f24; }.inbound-status.pending_delivery { background:#f2eefe; color:#7055aa; }.inbound-mode-badge { background:#e7f1fb; color:#2e74a5; }.inbound-mode-badge.custom { background:#edf3e8; color:#5d7c38; }
.inbound-drawer { width:min(620px,calc(100vw - 180px)); }.inbound-detail-drawer { width:min(720px,calc(100vw - 180px)); }.inbound-form fieldset { margin:0; }.inbound-mode { display:grid; grid-template-columns:1fr 1fr; gap:9px; padding:0; border:0; }.inbound-mode legend { margin-bottom:7px; color:#5c6b76; font-size:11px; font-weight:600; }.inbound-mode label { position:relative; display:grid; grid-template-columns:18px 1fr; grid-template-areas:"radio title" "radio note"; gap:2px 7px; min-height:57px; padding:10px; border:1px solid #dbe3e9; border-radius:4px; cursor:pointer; }.inbound-mode input { grid-area:radio; align-self:center; width:15px; height:15px; accent-color:#2d88d5; }.inbound-mode span { grid-area:title; color:#405563; font-size:12px; font-weight:650; }.inbound-mode small { grid-area:note; color:#89959e; font-size:9px; }.inbound-quantity-grid { grid-template-columns:repeat(3,minmax(0,1fr)); }.inbound-form label > small { color:#86949e; font-weight:400; }.inbound-form label > small.valid { color:#27865a; }.inbound-form label > small.invalid { color:#c24e57; }
.inbound-stepper { display:flex; min-height:66px; overflow-x:auto; padding:12px 16px 9px; border-bottom:1px solid #e4eaee; background:#fafbfc; }.inbound-stepper div { position:relative; flex:0 0 74px; padding-top:19px; color:#96a1a9; font-size:9px; text-align:center; }.inbound-stepper div::before { content:""; position:absolute; top:7px; left:0; right:0; height:2px; background:#dbe2e7; }.inbound-stepper div:first-child::before { left:50%; }.inbound-stepper div:last-child::before { right:50%; }.inbound-stepper i { position:absolute; z-index:1; top:3px; left:50%; width:10px; height:10px; margin-left:-5px; border:2px solid #cdd7de; border-radius:50%; background:#fff; }.inbound-stepper div.done::before,.inbound-stepper div.active::before { background:#43a371; }.inbound-stepper div.done i,.inbound-stepper div.active i { border-color:#369765; background:#43a371; }.inbound-stepper div.active { color:#287d55; font-weight:650; }.inbound-boxes .table-wrap { max-height:260px; }.inbound-boxes table { width:100%; border-collapse:collapse; font-size:10px; }.inbound-boxes th,.inbound-boxes td { padding:8px 9px; border-bottom:1px solid #e9edf0; text-align:left; white-space:nowrap; }.inbound-boxes th { background:#f8fafb; color:#71818c; font-weight:600; }.inbound-boxes td small { color:#97a2aa; font-size:8px; }
.inbound-action-panel { display:flex; align-items:center; justify-content:flex-end; gap:8px; }.inbound-action-panel button,.inbound-action-form button,.inbound-exception button { min-height:32px; padding:0 11px; border:1px solid #d4dfe7; border-radius:3px; background:#fff; color:#506674; cursor:pointer; }.inbound-action-panel button.primary,.inbound-action-form button.primary { border-color:#2f88d7; background:#2f88d7; color:#fff; }.inbound-action-form button:disabled { color:#a0abb3; background:#f4f6f7; cursor:not-allowed; }.inbound-action-form { display:grid; gap:10px; }.inbound-action-form > strong { color:#405563; font-size:12px; }.inbound-action-form > p { margin:0; padding:8px 10px; border-left:3px solid #e0a23b; background:#fff8eb; color:#806332; font-size:10px; line-height:1.5; }.inbound-action-form label,.inbound-exception > label { display:grid; gap:5px; color:#5d6e7a; font-size:10px; font-weight:600; }.inbound-action-form input,.inbound-action-form textarea,.inbound-exception textarea { width:100%; min-height:33px; padding:6px 8px; border:1px solid #d5dfe6; border-radius:3px; color:#40525f; font:11px inherit; }.inbound-action-form textarea,.inbound-exception textarea { min-height:64px; resize:vertical; }.inbound-exception { background:#fffaf3; }.inbound-carton-select { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:7px; margin-bottom:10px; }.inbound-carton-select label { display:grid; grid-template-columns:16px 1fr; grid-template-areas:"check number" "check detail"; gap:2px 6px; padding:8px; border:1px solid #e2d8ca; background:#fff; cursor:pointer; }.inbound-carton-select input { grid-area:check; align-self:center; accent-color:#c47a31; }.inbound-carton-select span { grid-area:number; color:#4a5e6c; font-size:10px; font-weight:650; }.inbound-carton-select small { grid-area:detail; overflow:hidden; color:#8c989f; font-size:8px; text-overflow:ellipsis; white-space:nowrap; }.inbound-exception button { border-color:#d39552; color:#9a6328; }
@media (max-width:1100px) { .inbound-page .inbound-metrics { grid-template-columns:repeat(3,minmax(130px,1fr)); }.inbound-drawer,.inbound-detail-drawer { width:min(650px,calc(100vw - 72px)); } }
@media (max-width:760px) { .inbound-page .inbound-metrics { grid-template-columns:repeat(2,minmax(125px,1fr)); }.inbound-drawer,.inbound-detail-drawer { width:100vw; }.inbound-mode,.inbound-carton-select { grid-template-columns:1fr; }.inbound-quantity-grid { grid-template-columns:1fr; } }
.product-analysis-table th[draggable="true"] { cursor: grab; }
.product-analysis-table th[draggable="true"]:active { cursor: grabbing; }
.product-analysis-table th.column-dragging { opacity: .45; outline: 2px dashed #318ddd; outline-offset: -2px; }
.sync-continue-task { height: 29px; padding: 0 11px; border: 1px solid #3389df; border-radius: 3px; background: #eef6ff; color: #277fc6; cursor: pointer; }
.sync-continue-task:disabled { opacity: .6; cursor: wait; }
.inbound-form [hidden] { display:none!important; }
.inbound-relations { background:#fbfcfd; }
.inbound-related-list,.inbound-transfer-list { display:grid; gap:6px; margin:0; padding:0; list-style:none; }
.inbound-related-list li { display:grid; grid-template-columns:86px auto 1fr; align-items:center; gap:7px; min-height:28px; padding:6px 8px; border:1px solid #e2e8ed; background:#fff; }
.inbound-related-list li > span { color:#7b8993; font-size:9px; }
.inbound-related-list li > button { border:0; padding:0; background:transparent; color:#2f82c4; font-size:10px; font-weight:650; text-align:left; cursor:pointer; }
.inbound-related-list li > small { color:#88959e; font-size:9px; text-align:right; }
.inbound-transfer-list { margin-top:8px; }
.inbound-transfer-list li { display:flex; align-items:center; gap:7px; padding:6px 8px; border-left:2px solid #d8e4eb; background:#fff; color:#647580; font-size:9px; }
.inbound-transfer-list li b { color:#405866; font-size:10px; }
.inbound-transfer-list li small { margin-left:auto; max-width:45%; overflow:hidden; color:#8d999f; text-overflow:ellipsis; white-space:nowrap; }
@media (max-width:760px) { .inbound-related-list li { grid-template-columns:1fr; gap:3px; }.inbound-related-list li > small { text-align:left; }.inbound-transfer-list li { flex-wrap:wrap; }.inbound-transfer-list li small { width:100%; max-width:none; margin-left:0; } }
.product-ads-tabs { gap:24px; }
.product-ads-tabs button { border-bottom-color:transparent; color:#6c7a85; cursor:pointer; }
.product-ads-tabs button.active { border-bottom-color:#348be0; color:#3188d8; }
.ads-management-trend { margin:0; overflow:hidden; }
.ads-trend-header { display:flex; align-items:center; justify-content:space-between; gap:16px; min-height:48px; padding:0 16px; border-bottom:1px solid #e4e9ed; }
.ads-trend-header > div:first-child { display:grid; gap:3px; }
.ads-trend-header strong { color:#3d5564; font-size:13px; }
.ads-trend-header span { color:#89959d; font-size:9px; }
.ads-trend-legend { display:flex; align-items:center; gap:14px; color:#788690; font-size:9px; white-space:nowrap; }
.ads-trend-legend span:before { content:""; display:inline-block; width:12px; height:7px; margin:0 5px 1px 0; border-radius:1px; background:#4a9fe8; }
.ads-trend-legend .cost:before { background:#69c4ce; }
.ads-trend-legend .roas:before { width:13px; height:3px; margin-bottom:3px; background:#9560c3; }
.ads-trend-chart { height:252px; padding:5px 12px 0; }
.ads-trend-chart svg { display:block; width:100%; height:100%; overflow:visible; }
.ads-trend-grid line { stroke:#e7ebef; stroke-width:1; stroke-dasharray:3 3; vector-effect:non-scaling-stroke; }
.ads-trend-grid text,.ads-trend-axis-labels text { fill:#8a969f; font-size:10px; }
.ads-trend-bars .revenue-bar { fill:#4a9fe8; opacity:.82; }
.ads-trend-bars .cost-bar { fill:#69c4ce; opacity:.84; }
.roas-line { fill:none; stroke:#9560c3; stroke-width:2.5; stroke-linecap:round; stroke-linejoin:round; vector-effect:non-scaling-stroke; }
.roas-points circle { fill:#9560c3; stroke:#fff; stroke-width:1; vector-effect:non-scaling-stroke; }
.roas-axis-top,.roas-axis-bottom { fill:#9560c3; font-size:9px; }
.ads-trend-empty { display:grid; place-items:center; height:252px; color:#9aa5af; font-size:11px; }
.ads-management-page { display:grid; gap:12px; padding:14px 8px 22px; background:#f4f6f8; }
.ads-management-intro { display:flex; align-items:center; justify-content:space-between; min-height:54px; padding:0 16px; border:1px solid #dfe6eb; background:#fff; }
.ads-management-intro > div:first-child { display:grid; gap:4px; }
.ads-management-intro strong { color:#334b5b; font-size:16px; }
.ads-management-intro span { color:#7a8993; font-size:10px; }
.ads-api-badge { padding:6px 9px; border:1px solid #b8d7c6; border-radius:3px; background:#edf7f1; color:#307a52; font-size:10px; font-weight:650; }
.ads-management-metrics { grid-template-columns:repeat(4,minmax(150px,1fr)); margin:0; }
.ads-management-toolbar { margin:0; }
.ads-management-toolbar .filters { flex-wrap:wrap; }
.ads-metric-toggle { display:flex; align-items:center; gap:7px; min-height:34px; padding:0 10px; border:1px solid #d8e0e6; background:#fff; color:#596b77; font-size:10px; }
.ads-metric-toggle input { width:14px; height:14px; accent-color:#3188d8; }
.ads-api-errors { display:grid; gap:6px; }
.ads-api-errors div { display:flex; align-items:flex-start; gap:9px; padding:9px 11px; border-left:3px solid #d25b63; background:#fff2f3; color:#8d4b50; font-size:10px; }
.ads-api-errors strong { flex:0 0 auto; color:#733f43; }
.ads-management-table { margin:0; }
.ads-management-table .table-wrap { max-height:360px; overflow:auto; }
.ads-management-table table { min-width:1060px; }
.ads-management-name { display:grid; gap:3px; min-width:190px; }
.ads-management-name strong { max-width:310px; overflow:hidden; color:#3d5463; font-size:11px; text-overflow:ellipsis; white-space:nowrap; }
.ads-management-name small { color:#8a98a1; font-size:9px; }
.ads-status { display:inline-flex; align-items:center; min-height:22px; padding:0 7px; border-radius:3px; background:#eef1f3; color:#687985; font-size:10px; }
.ads-status.active { background:#e8f5ed; color:#287a50; }
.ads-status.paused { background:#fff2df; color:#9a6524; }
.ads-status.deleted { background:#f5e9ea; color:#a04e55; }
.ads-group-select { display:flex; align-items:center; gap:9px; min-width:250px; cursor:pointer; }
.ads-group-select > input { flex:0 0 auto; width:14px; height:14px; accent-color:#3188d8; }
.ads-management-image { flex:0 0 38px; width:38px; height:38px; }
.ads-management-image .product-main-image { width:38px; height:38px; object-fit:contain; }
.ads-bulk-actions { display:flex; align-items:center; gap:6px; }
.ads-bulk-actions button { min-height:28px; padding:0 9px; border:1px solid #cfdae2; border-radius:3px; background:#fff; color:#526976; cursor:pointer; }
.ads-bulk-actions button.danger { border-color:#e0b8bc; color:#aa4d55; }
.ads-management-editor { margin:0; }
.ads-management-form { display:grid; gap:14px; padding:14px 16px 16px; }
.ads-management-form .form-grid { grid-template-columns:repeat(3,minmax(150px,1fr)); }
.ads-management-form label { display:grid; gap:5px; color:#5d6e79; font-size:10px; font-weight:600; }
.ads-management-form input,.ads-management-form select { width:100%; height:34px; padding:0 9px; border:1px solid #d5dfe6; border-radius:3px; background:#fff; color:#40535f; font-size:11px; }
.ads-management-form label small { color:#8a969e; font-size:9px; font-weight:400; }
.ads-management-form footer { display:flex; justify-content:flex-end; gap:8px; }
.ads-management-form footer button { min-height:32px; padding:0 12px; border:1px solid #d5dfe6; border-radius:3px; background:#fff; color:#536a78; cursor:pointer; }
.ads-management-form footer button.primary { border-color:#3188d8; background:#3188d8; color:#fff; }
.ads-editor-record { display:flex; align-items:center; gap:10px; padding:10px; border:1px solid #e1e7eb; background:#fafbfc; }
.ads-editor-record > div { display:grid; gap:4px; }
.ads-editor-record strong { color:#3f5665; font-size:11px; }
.ads-editor-record small { color:#87949d; font-size:9px; }
.ads-task-table { margin:0; }
.task-status { display:inline-flex; min-height:21px; align-items:center; padding:0 6px; border-radius:3px; background:#eef1f3; color:#677a86; font-size:9px; }
.task-status.completed { background:#e8f5ed; color:#287a50; }
.task-status.failed { background:#f8e9eb; color:#a24c54; }
.task-status.pending_confirmation { background:#fff3df; color:#9a6726; }
@media (max-width:1100px) { .ads-management-metrics { grid-template-columns:repeat(2,minmax(145px,1fr)); }.ads-management-form .form-grid { grid-template-columns:repeat(2,minmax(150px,1fr)); } }
@media (max-width:760px) { .ads-management-intro { align-items:flex-start; flex-direction:column; gap:8px; padding:12px; }.ads-trend-header { align-items:flex-start; flex-direction:column; gap:4px; padding:10px 12px; }.ads-trend-legend { flex-wrap:wrap; gap:10px; }.ads-trend-chart { height:210px; padding:3px 5px 0; }.ads-trend-empty { height:210px; }.ads-management-form .form-grid { grid-template-columns:1fr; }.ads-bulk-actions { width:100%; overflow:auto; }.ads-management-toolbar .filters > button { flex:1 1 auto; } }
.copy-button, .copy-field { display: none; }
.copy-target { cursor: copy; }
.copy-target:hover { color: #3986c9; }
.copy-target.copied { color: #39a276; }
