@import "tailwindcss";

:root {
  --ink: #16231d;
  --ink-soft: #51615a;
  --forest: #173d2f;
  --forest-2: #215943;
  --mint: #e6f4ec;
  --cream: #f5f3ed;
  --paper: #fff;
  --line: #e3e7e3;
  --orange: #ed7a3c;
  --red: #c95043;
  --blue: #416f9d;
  --shadow: 0 14px 36px rgba(22, 35, 29, .08);
}

* { box-sizing: border-box; }
html { background: var(--cream); color: var(--ink); }
body { margin: 0; font-family: "Microsoft YaHei", "PingFang SC", Arial, sans-serif; background: var(--cream); }
button, input, select, textarea { font: inherit; }
button { cursor: pointer; }
a { color: inherit; }

.loading-screen {
  min-height: 100vh; display: grid; place-content: center; justify-items: center;
  gap: 18px; background: var(--ink); color: white;
}
.loading-screen span { width: 120px; height: 3px; border-radius: 4px; background: #30463d; overflow: hidden; position: relative; }
.loading-screen span::after { content: ""; position: absolute; inset: 0; width: 45%; background: #c5e8d3; animation: loading 1.1s infinite ease-in-out; }
@keyframes loading { from { transform: translateX(-110%); } to { transform: translateX(230%); } }

.global-loading-shield {
  position: fixed;
  right: 28px;
  bottom: 28px;
  z-index: 55;
  width: min(390px, calc(100vw - 36px));
  pointer-events: none;
}
.global-loading-card {
  width: 100%;
  padding: 16px 18px 14px;
  border: 1px solid #d5d7d5;
  border-radius: 12px;
  color: #303030;
  background: #fff;
  box-shadow: 0 12px 34px rgba(0, 0, 0, .18);
}
.global-loading-copy { display: flex; align-items: center; justify-content: space-between; gap: 22px; }
.global-loading-copy > div { display: grid; gap: 3px; }
.global-loading-copy strong { font-size: 15px; font-weight: 750; }
.global-loading-copy span { color: #6d7175; font-size: 12px; }
.global-loading-copy b { min-width: 62px; color: #087f5b; font-size: 25px; line-height: 1; text-align: right; }
.global-loading-track { height: 9px; margin-top: 15px; overflow: hidden; border-radius: 999px; background: #e4e7e5; box-shadow: inset 0 1px 2px rgba(0,0,0,.08); }
.global-loading-track i { display: block; height: 100%; border-radius: inherit; background: linear-gradient(90deg, #20a36f, #36c991); transition: width .22s ease; }
.global-loading-card small { display: block; margin-top: 10px; color: #8a8f8c; font-size: 11px; }
.global-loading-shield.failed .global-loading-copy b { color: #d72c0d; }
.global-loading-shield.failed .global-loading-track i { background: #d72c0d; }

@media (max-width: 720px) {
  .global-loading-shield { right: 18px; bottom: 18px; }
}

.data-sync-progress {
  width: min(680px, 100%);
  margin: 36px auto 24px;
  padding: 22px;
  border: 1px solid #cbded3;
  border-radius: 14px;
  background: #f5fbf7;
}
.data-sync-progress-head { display: flex; align-items: center; justify-content: space-between; gap: 22px; }
.data-sync-progress-head > div { display: grid; gap: 5px; }
.data-sync-progress-head strong { color: #202223; font-size: 17px; font-weight: 780; }
.data-sync-progress-head span { color: #5f6f66; font-size: 12px; line-height: 1.5; }
.data-sync-progress-head b { color: #087f5b; font-size: 28px; line-height: 1; }
.data-sync-progress-track { height: 11px; margin: 18px 0; overflow: hidden; border-radius: 999px; background: #dfe8e3; box-shadow: inset 0 1px 2px rgba(0,0,0,.08); }
.data-sync-progress-track i { display: block; height: 100%; border-radius: inherit; background: linear-gradient(90deg, #198a62, #43c996); transition: width .25s ease; }
.data-sync-store-list { display: grid; gap: 7px; }
.data-sync-store-list > div { display: grid; grid-template-columns: minmax(160px, 1fr) minmax(140px, auto) 55px; gap: 12px; align-items: center; padding: 9px 11px; border: 1px solid #dfe8e3; border-radius: 8px; background: #fff; }
.data-sync-store-list span { overflow: hidden; color: #303030; font-size: 12px; font-weight: 700; text-overflow: ellipsis; white-space: nowrap; }
.data-sync-store-list small { color: #68766f; font-size: 11px; }
.data-sync-store-list strong { color: #087f5b; font-size: 12px; text-align: right; }
.data-sync-progress > p { margin: 15px 0 0; color: #68766f; font-size: 11px; line-height: 1.55; }

.brand-mark {
  width: 38px; height: 38px; border-radius: 12px; display: grid; place-content: center;
  background: #d8eddf; color: var(--forest); font-weight: 900; box-shadow: inset 0 0 0 1px rgba(255,255,255,.45);
}
.brand-mark.large { width: 64px; height: 64px; font-size: 24px; border-radius: 20px; }
.brand-mark img, .global-brand-mark img { display: block; width: 100%; height: 100%; }

.login-page { min-height: 100vh; display: grid; grid-template-columns: minmax(480px, 1.12fr) minmax(420px, .88fr); }
.login-story { position: relative; overflow: hidden; padding: 44px clamp(44px, 7vw, 112px); color: white; background: var(--ink); display: flex; flex-direction: column; justify-content: space-between; }
.login-story::before { content: ""; position: absolute; width: 520px; height: 520px; border-radius: 50%; right: -210px; bottom: -180px; border: 95px solid rgba(100, 166, 128, .11); }
.login-brand { display: flex; align-items: center; gap: 13px; position: relative; z-index: 2; }
.login-brand strong { font-size: 18px; letter-spacing: .04em; }
.story-copy { max-width: 640px; position: relative; z-index: 2; padding: 70px 0; }
.eyebrow { display: block; color: #9dc8ae; letter-spacing: .18em; font-size: 11px; font-weight: 800; margin-bottom: 16px; }
.eyebrow.dark { color: var(--forest-2); }
.story-copy h1 { font-size: clamp(42px, 5vw, 74px); line-height: 1.08; letter-spacing: -.04em; margin: 0 0 28px; }
.story-copy > p { max-width: 540px; margin: 0; color: #b7c5bf; font-size: 17px; line-height: 1.8; }
.story-metrics { display: flex; margin-top: 58px; gap: 48px; }
.story-metrics div { display: grid; gap: 7px; }
.story-metrics strong { font-size: 28px; }
.story-metrics span { font-size: 12px; color: #91a49c; }
.story-grid { display: grid; grid-template-columns: repeat(6, 1fr); gap: 9px; position: relative; z-index: 2; max-width: 420px; }
.story-grid i { height: 5px; border-radius: 4px; background: #365045; }
.story-grid i:nth-child(2), .story-grid i:nth-child(5) { background: #8ebda1; }
.login-panel { display: grid; place-content: center; padding: 40px; background: #f8f7f2; }
.login-card { width: min(420px, 90vw); }
.login-card h2 { font-size: 34px; margin: 0 0 8px; letter-spacing: -.04em; }
.login-card > p { color: #768079; margin: 0 0 36px; }
.login-card label, .form-grid label, .filters label, .search-field {
  display: grid; gap: 9px; color: #3e4a44; font-size: 13px; font-weight: 700;
}
.login-card label { margin-bottom: 18px; }
input, select, textarea {
  width: 100%; border: 1px solid #d8ded9; background: white; color: var(--ink); border-radius: 10px;
  min-height: 44px; padding: 0 13px; outline: none; transition: border-color .18s, box-shadow .18s;
}
textarea { min-height: 100px; padding-top: 12px; resize: vertical; }
input:focus, select:focus, textarea:focus { border-color: #4f886d; box-shadow: 0 0 0 3px rgba(79, 136, 109, .12); }
.form-error { color: #a53d33; background: #fbe8e4; border: 1px solid #f1c8c0; padding: 11px 13px; border-radius: 9px; font-size: 13px; margin-bottom: 14px; }
.data-error { display: grid; grid-template-columns: 28px 1fr auto; gap: 12px; align-items: center; margin: 14px 16px; padding: 13px 14px; color: #8e1f0b; background: #fff4f2; border: 1px solid #fed3d1; border-radius: 10px; }
.data-error > span { display: grid; place-items: center; width: 26px; height: 26px; border-radius: 50%; color: white; background: #d72c0d; font-weight: 800; }
.data-error strong { display: block; font-size: 13px; }
.data-error p { margin: 3px 0 0; color: #6d2d20; font-size: 12px; }
.primary, .secondary, .text-button, .hero-action {
  border: 0; border-radius: 9px; min-height: 40px; padding: 0 16px; font-weight: 800; transition: transform .15s, background .15s, opacity .15s;
}
.primary { background: var(--forest); color: white; box-shadow: 0 8px 18px rgba(23, 61, 47, .16); }
.primary:hover, .hero-action:hover { transform: translateY(-1px); background: #20503d; }
.primary:disabled { opacity: .45; cursor: not-allowed; transform: none; }
.primary.wide { width: 100%; min-height: 50px; font-size: 15px; margin-top: 7px; }
.primary.small { min-height: 34px; padding: 0 12px; font-size: 12px; }
.secondary { background: #f0f3f0; color: #33453c; border: 1px solid #dce2dd; box-shadow: none; }
.secondary:hover { background: #e6ebe7; }
.text-button { background: transparent; color: #31684f; padding: 0 5px; min-height: auto; }
.security-note { margin-top: 24px; text-align: center; color: #8a938e; font-size: 11px; }
.security-note span { color: #4e9472; margin-right: 5px; }
.mobile-login-brand { display: none; }

.app-shell { min-height: 100vh; display: grid; grid-template-columns: 248px 1fr; }
.sidebar { position: sticky; top: 0; height: 100vh; background: var(--ink); color: white; padding: 24px 16px 18px; display: flex; flex-direction: column; z-index: 20; }
.brand { display: flex; align-items: center; gap: 11px; padding: 2px 8px 28px; }
.brand div:last-child { display: grid; gap: 3px; }
.brand strong { font-size: 15px; }
.brand span { color: #6f847b; letter-spacing: .13em; font-size: 8px; }
.sidebar nav { display: grid; gap: 4px; }
.sidebar nav button { border: 0; background: transparent; color: #9dadA6; border-radius: 9px; min-height: 43px; display: grid; grid-template-columns: 28px 1fr auto; align-items: center; text-align: left; padding: 0 12px; font-size: 13px; }
.sidebar nav button:hover { background: #1d3027; color: white; }
.sidebar nav button.active { background: #2b4a3c; color: white; box-shadow: inset 3px 0 #97c3a8; }
.nav-icon { font-size: 16px; text-align: center; }
.nav-dot { width: 6px; height: 6px; border-radius: 50%; background: var(--orange); }
.sidebar-footer { margin-top: auto; border-top: 1px solid #2d3b35; padding: 18px 7px 0; display: grid; grid-template-columns: 38px 1fr 30px; gap: 10px; align-items: center; }
.avatar { width: 38px; height: 38px; border-radius: 10px; display: grid; place-content: center; font-weight: 900; background: #dbece1; color: var(--forest); }
.avatar.small { width: 31px; height: 31px; border-radius: 8px; }
.user-copy { display: grid; gap: 3px; min-width: 0; }
.user-copy strong { font-size: 12px; white-space: nowrap; overflow: hidden; text-overflow: ellipsis; }
.user-copy span { color: #80948b; font-size: 10px; }
.logout-button { background: transparent; border: 0; color: #82948c; font-size: 18px; }
.main { min-width: 0; }
.topbar { height: 92px; background: rgba(245, 243, 237, .92); backdrop-filter: blur(14px); border-bottom: 1px solid #e2e3dd; padding: 0 clamp(24px, 3.5vw, 54px); display: flex; align-items: center; justify-content: space-between; position: sticky; top: 0; z-index: 15; }
.breadcrumb { color: #8a938e; font-size: 11px; }
.topbar h1 { margin: 4px 0 0; font-size: 24px; letter-spacing: -.03em; }
.topbar-actions { display: flex; align-items: center; gap: 10px; }
.sync-chip, .date-chip { padding: 9px 12px; border-radius: 9px; border: 1px solid #dfe3de; background: rgba(255,255,255,.7); color: #5c6b64; font-size: 11px; }
.sync-chip i { display: inline-block; width: 7px; height: 7px; border-radius: 50%; background: #4d9f73; margin-right: 6px; box-shadow: 0 0 0 3px #dbeee3; }
.mobile-menu { display: none; }
.content { padding: 30px clamp(24px, 3.5vw, 54px) 60px; max-width: 1700px; margin: auto; }
.hero-strip { background: var(--forest); color: white; min-height: 174px; border-radius: 18px; padding: 30px 34px; display: flex; align-items: center; justify-content: space-between; gap: 24px; overflow: hidden; position: relative; box-shadow: var(--shadow); }
.hero-strip::after { content: ""; position: absolute; right: -55px; width: 320px; height: 320px; border: 58px solid rgba(196, 231, 209, .08); border-radius: 50%; }
.hero-strip > * { position: relative; z-index: 2; }
.hero-strip h2 { font-size: 29px; margin: 0 0 9px; letter-spacing: -.04em; }
.hero-strip p { margin: 0; color: #b7ccc2; }
.hero-action { min-height: 46px; background: #e2f0e7; color: var(--forest); white-space: nowrap; }
.hero-action span { margin-left: 18px; }
.metric-grid { display: grid; grid-template-columns: repeat(4, minmax(0,1fr)); gap: 15px; margin: 18px 0; }
.metric-card { background: white; border: 1px solid var(--line); border-radius: 14px; padding: 21px 22px; display: grid; gap: 9px; position: relative; overflow: hidden; }
.metric-card::before { content: ""; position: absolute; left: 0; top: 0; bottom: 0; width: 4px; background: #82a792; }
.metric-card.orange::before { background: var(--orange); }.metric-card.red::before { background: var(--red); }.metric-card.blue::before { background: var(--blue); }
.metric-card span { color: #65716b; font-size: 12px; }
.metric-card strong { font-size: 27px; letter-spacing: -.03em; }
.metric-card small { color: #98a09b; font-size: 10px; }
.dashboard-grid { display: grid; grid-template-columns: 1.35fr .65fr; gap: 18px; }
.panel { background: white; border: 1px solid var(--line); border-radius: 16px; box-shadow: 0 6px 24px rgba(22,35,29,.035); overflow: hidden; }
.panel-head { padding: 21px 24px; border-bottom: 1px solid #edf0ed; display: flex; align-items: center; justify-content: space-between; gap: 18px; }
.panel-head h2 { margin: 0 0 5px; font-size: 18px; letter-spacing: -.02em; }
.panel-head p { margin: 0; color: #8a948e; font-size: 11px; }
.panel-body { padding: 22px 24px 26px; }
.panel-actions { display: flex; gap: 8px; }
.store-health-list { display: grid; }
.store-health-list > div { display: grid; grid-template-columns: 43px 1fr auto; align-items: center; gap: 11px; padding: 12px 0; border-bottom: 1px solid #eef0ee; }
.store-health-list > div:last-child { border-bottom: 0; }
.store-avatar { width: 43px; height: 43px; border-radius: 11px; background: #edf2ee; color: #3a604d; display: grid; place-content: center; font-size: 11px; font-weight: 900; }
.store-avatar.small { width: 32px; height: 32px; border-radius: 8px; flex: 0 0 auto; }
.store-health-list div div { display: grid; gap: 3px; }
.store-health-list small { color: #919a95; font-size: 10px; }
.status { display: inline-flex; width: fit-content; align-items: center; gap: 6px; padding: 5px 8px; border-radius: 999px; background: #edf4ef; color: #3f785b; font-size: 10px; font-weight: 800; white-space: nowrap; }
.status i { width: 5px; height: 5px; border-radius: 50%; background: currentColor; }
.status.estimated, .status.attention, .status.syncing { color: #b6582e; background: #fff0e7; }
.status.pending, .status.disconnected { color: #a8473e; background: #fae9e6; }
.status.virtual { color: #4b6482; background: #edf2f8; }
.rule-list { display: grid; }
.rule-list div { display: grid; grid-template-columns: 32px 1fr; gap: 10px; padding: 13px 0; border-bottom: 1px solid #eef0ee; align-items: center; }
.rule-list div:last-child { border: 0; }
.rule-list > div > span { font-size: 10px; color: #8ca095; font-weight: 900; }
.rule-list p { display: grid; margin: 0; gap: 2px; color: #879089; font-size: 10px; }
.rule-list strong { color: var(--ink); font-size: 12px; }
.filters { display: flex; align-items: flex-end; flex-wrap: wrap; gap: 12px; margin-bottom: 19px; }
.filters label { min-width: 150px; }
.filters input, .filters select { min-height: 38px; }
.filter-note { color: #8c9690; font-size: 11px; padding: 0 6px 10px; margin-left: auto; }
.search-field { min-width: min(340px, 100%) !important; }
.table-scroll { width: 100%; overflow-x: auto; }
table { border-collapse: collapse; width: 100%; min-width: 840px; font-size: 11px; }
th { text-align: left; color: #79847e; background: #f6f7f4; padding: 11px 12px; font-weight: 800; white-space: nowrap; border-bottom: 1px solid #e4e8e4; }
td { padding: 12px; border-bottom: 1px solid #edf0ed; color: #53615a; vertical-align: middle; }
tbody tr:hover { background: #fbfcfa; }
td strong { color: var(--ink); }
.profit-table { min-width: 1320px; }
.profit-table th:first-child { width: 330px; }
.profit-table td:not(:first-child), .profit-table th:not(:first-child) { text-align: right; }
.grand-total { background: var(--ink) !important; }
.grand-total td { color: white; border-color: #2b3a33; font-weight: 800; }
.store-row { background: #f5f8f5; }
.store-row td { font-weight: 700; color: #2d463a; }
.date-row td { background: #fafbf9; }
.order-row td { color: #77817c; font-size: 10px; }
.sku-detail-row td { color: #88928d; font-size: 10px; background: #fcfcfb; }
.tree-label { display: flex; align-items: center; gap: 9px; text-align: left; }
.tree-label > button { width: 25px; height: 25px; padding: 0; border: 1px solid #dce2dd; background: white; color: #486052; border-radius: 6px; font-size: 17px; }
.tree-label > span:not(.store-avatar):not(.sku-state):not(.provisional-tag):not(.sku-code) { display: grid; gap: 2px; }
.tree-label small { color: #929a96; font-size: 9px; font-weight: 400; }
.tree-label.level-1 { padding-left: 28px; }.tree-label.level-2 { padding-left: 58px; }.tree-label.level-3 { padding-left: 94px; }
.mini-link { border: 0 !important; width: auto !important; background: transparent !important; color: #3e7258 !important; font-size: 9px !important; white-space: nowrap; }
.provisional-tag { background: #fce9e4; color: #b34c3e; border-radius: 4px; padding: 3px 5px; font-size: 8px; }
.sku-code { font-family: ui-monospace, Consolas, monospace; color: var(--ink); font-weight: 800; }
.sku-state { font-size: 8px; padding: 3px 5px; border-radius: 4px; }
.sku-state.estimated, .estimated-row td { color: #b14c3e; background: #fff6f3; }
.tree-label a, .sku-cell a, .task-main a { color: #397356; text-decoration: none; font-weight: 800; }
.negative { color: #b34136 !important; font-weight: 800; }.profit-positive { color: #287150 !important; font-weight: 800; }
.empty { min-height: 190px; display: grid; place-content: center; justify-items: center; text-align: center; color: #8b9590; }
.empty > span { font-size: 30px; color: #92aa9d; margin-bottom: 7px; }
.empty strong { color: #3d4a43; }
.empty p { max-width: 430px; margin: 7px 0 0; font-size: 11px; line-height: 1.6; }
.table-skeleton { display: grid; gap: 10px; }
.table-skeleton i { display: block; height: 42px; border-radius: 7px; background: linear-gradient(90deg,#f1f3f1,#fafbfa,#f1f3f1); background-size: 220% 100%; animation: shimmer 1.4s infinite; }
@keyframes shimmer { from { background-position: 100% 0; } to { background-position: -100% 0; } }
.amount { font-size: 14px; color: var(--forest); font-weight: 900; }
.setup-banner { display: flex; align-items: flex-start; gap: 13px; border: 1px solid #efd8bd; background: #fff7ed; color: #82502b; padding: 14px 16px; border-radius: 11px; margin-bottom: 18px; }
.setup-banner > span { width: 24px; height: 24px; border-radius: 50%; background: #f1c38d; display: grid; place-content: center; font-weight: 900; flex: 0 0 auto; }
.setup-banner > div { flex: 1; }
.setup-banner p { margin: 3px 0 0; font-size: 11px; color: #997255; }
.setup-banner > button { flex: 0 0 auto; min-height: 34px; }
.card-grid { display: grid; grid-template-columns: repeat(3, minmax(260px,1fr)); gap: 14px; }
.store-card { border: 1px solid #e2e6e2; border-radius: 14px; padding: 18px; }
.store-card-head { display: flex; justify-content: space-between; }
.store-card h3 { margin: 16px 0 3px; font-size: 17px; }
.store-card > a { color: #738079; font-size: 10px; text-decoration: none; }
.store-card dl { margin: 18px 0; display: grid; gap: 9px; }
.store-card dl div { display: flex; justify-content: space-between; gap: 10px; font-size: 10px; }
.store-card dt { color: #919994; }.store-card dd { margin: 0; text-align: right; color: #3f4d45; font-weight: 700; }
.store-card-actions { display: flex; align-items: center; gap: 10px; border-top: 1px solid #edf0ed; padding-top: 14px; }
.timezone-warning { width: 100%; background: #fff0e9; color: #ad4d37; border: 0; border-radius: 7px; padding: 9px; font-size: 9px; margin-bottom: 10px; text-align: left; font-weight: 800; }
.sku-cell { display: grid; gap: 5px; }
.sku-cell div { font-size: 9px; }
.task-summary { display: flex; align-items: center; gap: 28px; background: #f7f8f5; border: 1px solid #e5e8e4; border-radius: 12px; padding: 16px 20px; margin-bottom: 16px; }
.task-summary > div { display: grid; padding-right: 28px; border-right: 1px solid #dce1dc; }
.task-summary strong { font-size: 24px; }.task-summary span { font-size: 9px; color: #7e8983; }
.task-summary .danger strong { color: var(--red); }.task-summary p { margin: 0; margin-left: auto; color: #7b867f; font-size: 10px; }
.task-list { display: grid; gap: 8px; }
.task-list article { border: 1px solid #e4e8e4; border-radius: 11px; display: grid; grid-template-columns: 28px 1fr auto auto; gap: 12px; align-items: center; padding: 12px 14px; }
.task-list article.overdue { border-color: #efcac4; background: #fff8f6; }
.task-priority { width: 25px; height: 25px; border-radius: 7px; background: #edf3ef; color: #527460; display: grid; place-content: center; font-weight: 900; }
.overdue .task-priority { background: #f5d7d1; color: #ab4338; }
.task-main { display: grid; gap: 4px; }
.task-main > div { display: flex; align-items: center; gap: 8px; }
.task-main p { margin: 0; color: #8a948f; font-size: 10px; }
.task-deadline { display: grid; gap: 3px; text-align: right; }
.task-deadline span { font-size: 8px; color: #919a95; }.task-deadline strong { font-size: 10px; }
.task-list.compact .task-deadline { display: none; }
.task-list.compact article { grid-template-columns: 28px 1fr; }
.department-grid { display: grid; grid-template-columns: repeat(4,1fr); gap: 12px; }
.department-grid article { border: 1px solid #e3e7e3; border-radius: 12px; padding: 17px; }
.department-index { color: #9ba79f; font-size: 9px; }
.department-grid h3 { margin: 14px 0 18px; font-size: 16px; }
.department-grid article div { display: flex; justify-content: space-between; color: #87928c; font-size: 9px; }
.person-cell { display: flex; align-items: center; gap: 9px; }
.pill { padding: 4px 7px; border-radius: 999px; background: #e8f3ec; color: #347052; font-size: 9px; font-weight: 800; }
.pill.disabled { background: #f5e8e5; color: #a24b40; }
.stack { display: grid; gap: 18px; }
.scope-tabs { display: flex; gap: 7px; margin-bottom: 20px; border-bottom: 1px solid #e7eae7; }
.scope-tabs button { border: 0; background: transparent; padding: 9px 16px 13px; color: #7e8983; font-size: 11px; border-bottom: 2px solid transparent; }
.scope-tabs button.active { color: #245a41; border-bottom-color: #3f7b5c; font-weight: 900; }
.scope-picker { display: flex; align-items: flex-end; gap: 18px; padding: 14px 16px; margin-bottom: 16px; border: 1px solid #dfe6e1; background: #f4f7f4; border-radius: 11px; }
.scope-picker label { min-width: 260px; display: grid; gap: 7px; color: #425148; font-size: 11px; font-weight: 800; }
.scope-picker select { min-height: 38px; }
.scope-picker p { margin: 0 0 9px; color: #7c8881; font-size: 10px; line-height: 1.6; }
.settings-grid { display: grid; grid-template-columns: 1fr 1fr; gap: 10px; }
.settings-grid form { display: grid; grid-template-columns: 1fr 120px 62px; align-items: center; gap: 10px; border: 1px solid #e5e8e5; border-radius: 10px; padding: 13px; }
.settings-grid form > div { display: grid; gap: 3px; }
.settings-grid span { color: #8d9691; font-size: 9px; }.settings-grid input { min-height: 36px; }
.settings-grid button { min-height: 36px; padding: 0 10px; }
.formula-card { margin-top: 18px; border-radius: 12px; background: var(--ink); color: white; padding: 20px; display: grid; gap: 8px; }
.formula-card span { color: #96a89f; font-size: 9px; text-transform: uppercase; letter-spacing: .15em; }
.formula-card strong { font-family: ui-monospace, Consolas, monospace; color: #dcecdf; }
.formula-card small { color: #8fa299; font-size: 9px; }
.audit-value { display: block; max-width: 220px; overflow: hidden; color: #68746d; font-family: ui-monospace, Consolas, monospace; font-size: 9px; }
code { background: #edf1ed; color: #3d6952; border-radius: 5px; padding: 3px 5px; font-family: ui-monospace, Consolas, monospace; font-size: 9px; }

.modal-backdrop { position: fixed; inset: 0; z-index: 100; background: rgba(13, 25, 19, .55); backdrop-filter: blur(5px); display: grid; place-content: center; padding: 20px; }
.modal { width: min(620px, calc(100vw - 32px)); max-height: calc(100vh - 40px); overflow: auto; background: white; border-radius: 16px; box-shadow: 0 28px 80px rgba(0,0,0,.24); }
.modal > header { display: flex; justify-content: space-between; align-items: flex-start; padding: 20px 23px; border-bottom: 1px solid #e9ece9; }
.modal > header h3 { margin: 0 0 4px; font-size: 19px; }.modal > header p { margin: 0; color: #8b958f; font-size: 10px; }
.modal > header > button { border: 0; background: #f1f3f1; width: 30px; height: 30px; border-radius: 8px; color: #6b7770; font-size: 20px; }
.modal-body { padding: 23px; }
.form-grid { display: grid; grid-template-columns: 1fr 1fr; gap: 16px; }
.form-grid .full { grid-column: 1 / -1; }
.modal-actions { display: flex; justify-content: flex-end; gap: 9px; margin-top: 9px; }
.inline-notice { background: #eef5f0; color: #557061; border-radius: 8px; padding: 10px 12px; font-size: 10px; }
.inline-notice code { display: block; margin-top: 7px; overflow-wrap: anywhere; }
.input-suffix { display: flex; align-items: center; }
.input-suffix input { border-radius: 9px 0 0 9px; }.input-suffix span { height: 44px; display: flex; align-items: center; background: #f1f3f1; border: 1px solid #d8ded9; border-left: 0; padding: 0 12px; border-radius: 0 9px 9px 0; color: #87918c; font-size: 10px; }
.step-list { display: grid; grid-template-columns: 24px 1fr; gap: 9px 12px; align-items: center; background: #f7f8f5; padding: 13px; border-radius: 9px; }
.step-list span { width: 24px; height: 24px; border-radius: 50%; display: grid; place-content: center; background: #dfece3; color: #33644b; font-size: 9px; font-weight: 900; }
.step-list p { margin: 0; color: #65716a; font-size: 10px; }
.assignment-section { margin-bottom: 22px; }
.assignment-section h4 { margin: 0 0 11px; font-size: 13px; display: flex; justify-content: space-between; }
.assignment-section h4 small { color: #929a96; font-size: 9px; font-weight: 400; }
.assignment-section h4 small { display: flex; align-items: center; gap: 10px; }
.user-store-assignment { margin: 2px 0 0; padding: 14px; border: 1px solid #e3e3e3; border-radius: 10px; background: #fafafa; }
.text-button { border: 0; padding: 0; background: transparent; color: #005bd3; font: inherit; font-weight: 650; cursor: pointer; }
.text-button:hover { text-decoration: underline; }
.check-grid { display: grid; grid-template-columns: 1fr 1fr; gap: 8px; }
.check-card { display: grid; grid-template-columns: 18px 31px 1fr; gap: 9px; align-items: center; border: 1px solid #e3e7e3; border-radius: 9px; padding: 9px; }
.check-card input { min-height: auto; width: 15px; height: 15px; accent-color: var(--forest); }
.check-card > span:last-child { display: grid; gap: 2px; }.check-card small, .muted { color: #8b958f; font-size: 9px; }
.toast { position: fixed; right: 24px; bottom: 24px; z-index: 200; background: var(--ink); color: white; border-radius: 10px; padding: 13px 18px; box-shadow: 0 18px 50px rgba(0,0,0,.23); font-size: 12px; }

@media (max-width: 1180px) {
  .metric-grid { grid-template-columns: 1fr 1fr; }
  .card-grid { grid-template-columns: 1fr 1fr; }
  .department-grid { grid-template-columns: 1fr 1fr; }
  .settings-grid { grid-template-columns: 1fr; }
}
@media (max-width: 860px) {
  .login-page { grid-template-columns: 1fr; }
  .login-story { display: none; }
  .login-panel { min-height: 100vh; }
  .mobile-login-brand { display: flex; align-items: center; gap: 10px; margin-bottom: 45px; }
  .app-shell { grid-template-columns: 1fr; }
  .sidebar { position: fixed; transform: translateX(-105%); transition: transform .22s; width: 248px; box-shadow: 20px 0 50px rgba(0,0,0,.25); }
  .sidebar.mobile-open { transform: translateX(0); }
  .mobile-menu { display: block; border: 0; background: transparent; font-size: 20px; margin-right: 10px; }
  .topbar { justify-content: flex-start; height: 78px; }
  .topbar-actions { margin-left: auto; }
  .sync-chip { display: none; }
  .dashboard-grid { grid-template-columns: 1fr; }
  .card-grid { grid-template-columns: 1fr; }
  .hero-strip { align-items: flex-start; flex-direction: column; }
  .task-list article { grid-template-columns: 28px 1fr; }
  .task-deadline, .task-list article > button { grid-column: 2; text-align: left; justify-self: start; }
  .task-summary p { display: none; }
}
@media (max-width: 560px) {
  .content { padding: 18px 12px 40px; }
  .topbar { padding: 0 14px; }
  .date-chip { display: none; }
  .metric-grid { grid-template-columns: 1fr; }
  .panel-head, .panel-body { padding-left: 14px; padding-right: 14px; }
  .panel-head { align-items: flex-start; flex-direction: column; }
  .filters { align-items: stretch; flex-direction: column; }
  .filter-note { margin-left: 0; }
  .department-grid, .check-grid { grid-template-columns: 1fr; }
  .form-grid { grid-template-columns: 1fr; }
  .form-grid > * { grid-column: 1 !important; }
  .settings-grid form { grid-template-columns: 1fr 84px 60px; }
  .scope-picker { align-items: stretch; flex-direction: column; }
  .scope-picker label { min-width: 0; }
  .story-metrics { gap: 18px; }
}

/* 2026-08 后台信息架构重设计 */
:root {
  --ink: #17211c;
  --ink-soft: #5d6862;
  --forest: #174d39;
  --forest-2: #247056;
  --mint: #eaf5ef;
  --cream: #f4f6f4;
  --paper: #ffffff;
  --line: #e1e7e3;
  --orange: #d97732;
  --red: #c54e43;
  --blue: #3f6f9b;
  --shadow: 0 10px 30px rgba(28, 43, 35, .055);
}

html, body { background: var(--cream); }
body { font-size: 14px; line-height: 1.5; }
.app-shell { grid-template-columns: 264px minmax(0, 1fr); }

.sidebar {
  width: 264px;
  padding: 22px 16px 16px;
  background: #13251d;
  border-right: 1px solid rgba(255,255,255,.04);
}
.brand { padding: 0 8px 20px; }
.brand-mark { width: 40px; height: 40px; border-radius: 11px; background: #d9f0e2; }
.brand strong { font-size: 16px; letter-spacing: -.01em; }
.brand span { font-size: 10px; letter-spacing: .08em; color: #7f978c; }
.sidebar-context {
  display: grid;
  grid-template-columns: 1fr auto;
  gap: 3px 8px;
  margin: 0 5px 22px;
  padding: 12px 13px;
  border: 1px solid rgba(187, 221, 202, .12);
  border-radius: 10px;
  background: rgba(255,255,255,.035);
}
.sidebar-context span { color: #849a90; font-size: 10px; }
.sidebar-context strong { font-size: 11px; color: #dcebe2; }
.sidebar-context small { grid-column: 1 / -1; color: #6f877c; font-size: 10px; }
.nav-groups { display: block !important; overflow-y: auto; padding-right: 2px; }
.nav-group { display: grid; gap: 4px; margin-bottom: 20px; }
.nav-group-label {
  padding: 0 12px 6px;
  color: #61796e;
  font-size: 10px;
  font-weight: 800;
  letter-spacing: .08em;
}
.sidebar nav button {
  min-height: 42px;
  grid-template-columns: 30px 1fr auto;
  padding: 0 11px;
  border-radius: 9px;
  color: #aabbb2;
  font-size: 13px;
}
.sidebar nav button.active {
  color: #fff;
  background: #24513f;
  box-shadow: inset 3px 0 #91c9a8, 0 5px 14px rgba(0,0,0,.1);
}
.nav-icon {
  width: 24px;
  height: 24px;
  display: grid;
  place-content: center;
  border-radius: 7px;
  background: rgba(255,255,255,.055);
  color: #91aa9e;
  font-size: 10px;
  font-weight: 900;
}
.active .nav-icon { background: rgba(219,243,228,.14); color: #d9f0e2; }
.sidebar-service {
  display: grid;
  grid-template-columns: 9px 1fr;
  gap: 10px;
  align-items: center;
  margin-top: auto;
  padding: 12px 10px;
  border-top: 1px solid rgba(255,255,255,.07);
}
.service-light { width: 8px; height: 8px; border-radius: 50%; background: #65c88d; box-shadow: 0 0 0 4px rgba(101,200,141,.1); }
.sidebar-service div { display: grid; gap: 1px; }
.sidebar-service strong { color: #c8d8cf; font-size: 10px; }
.sidebar-service small { color: #70867b; font-size: 9px; }
.sidebar-footer { margin-top: 0; padding-top: 13px; }

.topbar {
  height: 108px;
  padding: 0 clamp(24px, 3vw, 48px);
  background: rgba(255,255,255,.92);
  border-bottom: 1px solid var(--line);
}
.topbar-copy { display: grid; gap: 2px; }
.breadcrumb { font-size: 11px; color: #8a948e; }
.breadcrumb b { margin: 0 5px; color: #c1c8c3; }
.title-line { display: flex; align-items: center; gap: 10px; }
.title-line h1 { margin: 0; font-size: 25px; }
.title-line > span { border-radius: 999px; padding: 3px 8px; background: #fff0e8; color: #b8592d; font-size: 10px; font-weight: 800; }
.topbar-copy > p { margin: 0; color: #77827c; font-size: 12px; }
.topbar-actions { gap: 18px; }
.date-block { display: grid; gap: 2px; text-align: right; }
.date-block span { color: #9aa29e; font-size: 9px; }
.date-block strong { color: #56615b; font-size: 11px; font-weight: 700; }
.header-action {
  min-height: 40px;
  padding: 0 16px;
  border: 0;
  border-radius: 9px;
  background: var(--forest);
  color: white;
  font-size: 12px;
  font-weight: 800;
  box-shadow: 0 8px 18px rgba(23,77,57,.16);
}
.header-action span { margin-right: 5px; }
.content { max-width: 1760px; padding: 28px clamp(24px, 3vw, 48px) 64px; }

.overview-heading {
  display: flex;
  justify-content: space-between;
  align-items: flex-end;
  gap: 24px;
  padding: 4px 2px 22px;
}
.section-kicker { color: #3f785e; font-size: 10px; font-weight: 900; letter-spacing: .12em; }
.overview-heading h2 { margin: 6px 0 5px; font-size: clamp(23px, 2vw, 31px); letter-spacing: -.035em; }
.overview-heading p { margin: 0; color: #758079; font-size: 12px; }
.overview-action { min-height: 42px; white-space: nowrap; }
.overview-action span { margin-left: 12px; }

.metric-grid { gap: 14px; margin: 0 0 18px; }
.metric-card {
  min-height: 142px;
  padding: 19px 20px 17px;
  gap: 10px;
  border-radius: 13px;
  box-shadow: 0 4px 16px rgba(28,43,35,.025);
}
.metric-card::before { width: 3px; }
.metric-label { display: flex; align-items: center; justify-content: space-between; }
.metric-label > span { color: #67736d; font-size: 12px; font-weight: 700; }
.metric-label i { width: 30px; height: 30px; display: grid; place-content: center; border-radius: 9px; background: #edf5f0; color: #3e7659; font-style: normal; font-size: 10px; font-weight: 900; }
.metric-card.orange .metric-label i { background: #fff1e8; color: #bd622e; }
.metric-card.red .metric-label i { background: #faecea; color: #b54d43; }
.metric-card.blue .metric-label i { background: #edf3f8; color: #4c7193; }
.metric-card strong { font-size: 29px; letter-spacing: -.035em; }
.metric-card small { display: flex; align-items: center; gap: 6px; color: #909994; font-size: 10px; }
.metric-card small b { width: 5px; height: 5px; border-radius: 50%; background: #88a898; }

.dashboard-grid { grid-template-columns: minmax(0, 1.18fr) minmax(340px, .82fr); gap: 16px; }
.panel { border-radius: 13px; box-shadow: var(--shadow); }
.panel-head { min-height: 76px; padding: 18px 21px; }
.panel-head h2 { font-size: 17px; }
.panel-head p { font-size: 11px; }
.panel-body { padding: 20px 21px 23px; }
.attention-list { display: grid; gap: 8px; }
.attention-list > button {
  width: 100%;
  display: grid;
  grid-template-columns: 38px 1fr auto;
  gap: 12px;
  align-items: center;
  padding: 11px 12px;
  border: 1px solid #e7ebe8;
  border-radius: 10px;
  background: #fbfcfb;
  text-align: left;
}
.attention-list > button:hover { border-color: #cfdcd4; background: #f6faf7; }
.attention-count { width: 34px; height: 34px; display: grid; place-content: center; border-radius: 9px; background: #fff0e7; color: #b45c2e; font-weight: 900; }
.attention-count.danger { background: #fbeae8; color: #b54a40; }
.attention-list button > span:nth-child(2) { display: grid; gap: 2px; }
.attention-list strong { color: var(--ink); font-size: 12px; }
.attention-list small { color: #8a948e; font-size: 10px; }
.attention-list button > b { color: #347155; font-size: 10px; }
.all-clear { min-height: 152px; display: flex; align-items: center; justify-content: center; gap: 14px; }
.all-clear > span { width: 42px; height: 42px; display: grid; place-content: center; border-radius: 50%; background: #e6f5ec; color: #2e865d; font-weight: 900; }
.all-clear strong { font-size: 13px; }
.all-clear p { margin: 3px 0 0; color: #8a948e; font-size: 10px; }
.store-health-list > div { grid-template-columns: 40px 1fr auto; padding: 10px 0; }
.store-health-list small { font-size: 10px; }
.system-rules-strip {
  display: flex;
  align-items: center;
  gap: 0;
  margin-top: 16px;
  padding: 13px 16px;
  border: 1px solid #e1e6e2;
  border-radius: 11px;
  background: rgba(255,255,255,.55);
  color: #7d8781;
  font-size: 10px;
}
.system-rules-strip > span { margin-right: 8px; color: #365b49; font-weight: 900; }
.system-rules-strip p { margin: 0; padding: 0 14px; border-left: 1px solid #dfe4e0; }
.system-rules-strip b { color: #53635a; }

.profit-summary { display: grid; grid-template-columns: repeat(4, 1fr); gap: 10px; margin-bottom: 15px; }
.profit-summary > div { display: grid; gap: 4px; min-height: 104px; padding: 15px 16px; border: 1px solid #e5e9e6; border-radius: 11px; background: #fbfcfb; }
.profit-summary span { color: #7c8781; font-size: 10px; }
.profit-summary strong { color: #24342c; font-size: 21px; }
.profit-summary small { color: #979f9a; font-size: 9px; }
.profit-summary .positive { background: #f1f8f4; border-color: #dbeae1; }
.profit-summary .positive strong { color: #247451; }
.profit-summary .danger { background: #fff5f3; border-color: #f0d8d4; }
.profit-summary .danger strong { color: #b4473d; }
.filter-bar { display: flex; align-items: flex-end; gap: 16px; margin-bottom: 16px; padding: 11px 12px; border: 1px solid #e4e8e5; border-radius: 10px; background: #f8faf8; }
.date-presets { display: flex; gap: 4px; padding: 3px; border-radius: 8px; background: #ebefec; }
.date-presets button { min-height: 31px; padding: 0 11px; border: 0; border-radius: 6px; background: transparent; color: #6c7871; font-size: 10px; }
.date-presets button.active, .date-presets button:hover { background: white; color: #235f45; box-shadow: 0 2px 7px rgba(20,40,30,.06); font-weight: 800; }
.compact-filters { margin: 0; align-items: center; gap: 7px; }
.compact-filters label { min-width: 135px; font-size: 9px; gap: 3px; }
.compact-filters input { min-height: 33px; }
.compact-filters > span { margin-top: 13px; color: #929b96; font-size: 10px; }
.filter-bar .filter-note { margin-left: auto; padding-bottom: 8px; }

.table-scroll { border: 1px solid #e4e8e5; border-radius: 10px; }
table { font-size: 12px; }
th { position: sticky; top: 0; z-index: 2; padding: 12px 13px; background: #f5f7f5; color: #6f7b74; font-size: 10px; }
td { padding: 13px; color: #53615a; }
tbody tr:last-child td { border-bottom: 0; }
.profit-table th:first-child { width: 360px; }
.order-row td, .sku-detail-row td { font-size: 10px; }
.tree-label small { font-size: 9px; }

.store-summary-grid { display: grid; grid-template-columns: repeat(4, 1fr); gap: 10px; margin-bottom: 16px; }
.store-summary-grid > div { display: flex; align-items: center; justify-content: space-between; min-height: 60px; padding: 12px 14px; border: 1px solid #e4e8e5; border-radius: 10px; background: #f8faf8; }
.store-summary-grid span { color: #7f8983; font-size: 10px; }
.store-summary-grid strong { font-size: 20px; }
.store-list { display: grid; gap: 8px; }
.store-list-row {
  display: grid;
  grid-template-columns: minmax(210px, 1.15fr) minmax(100px, .55fr) minmax(140px, .72fr) minmax(190px, 1fr) 120px auto;
  gap: 16px;
  align-items: center;
  min-height: 92px;
  padding: 14px 16px;
  border: 1px solid #e3e8e4;
  border-radius: 11px;
  background: white;
}
.store-list-row:hover { border-color: #cad8cf; box-shadow: 0 6px 18px rgba(27,45,35,.045); }
.store-identity { display: flex; align-items: center; gap: 12px; min-width: 0; }
.store-identity > div { min-width: 0; }
.store-identity h3 { margin: 0 0 3px; font-size: 14px; }
.store-identity a { display: block; overflow: hidden; text-overflow: ellipsis; color: #728078; font-size: 9px; text-decoration: none; }
.store-fact, .store-state { display: grid; gap: 3px; min-width: 0; }
.store-fact > span, .store-state > small { color: #929b96; font-size: 9px; }
.store-fact strong { overflow: hidden; text-overflow: ellipsis; color: #3e4e45; font-size: 11px; }
.store-fact.people small { overflow: hidden; text-overflow: ellipsis; color: #8f9893; font-size: 9px; }
.store-state { justify-items: start; }
.store-row-actions { display: flex; align-items: center; justify-content: flex-end; gap: 7px; flex-wrap: wrap; }
.store-row-actions button { min-height: 32px; white-space: nowrap; font-size: 10px; }
.manual-sync-button:disabled { color: #8a8a8a; cursor: not-allowed; text-decoration: none; }
.warning-action { min-height: 32px; padding: 0 10px; border: 0; border-radius: 7px; background: #fff0e8; color: #ad542d; font-size: 10px; font-weight: 800; }

.task-summary { background: #f8faf8; }
.task-list article { min-height: 60px; padding: 13px 14px; }
.task-main strong { font-size: 12px; }
.task-main p { font-size: 10px; }
.department-grid article { background: #fbfcfb; }
.department-grid h3 { font-size: 15px; }
.settings-grid form { min-height: 68px; background: #fbfcfb; }
.settings-grid span, .formula-card small, .audit-value, code { font-size: 10px; }
.scope-tabs button { font-size: 12px; }
.modal { border-radius: 14px; }
.modal > header { padding: 20px 22px; }
.modal > header h3 { font-size: 20px; }
.modal > header p { font-size: 11px; }
.modal-body { padding: 22px; }
.form-grid label, .filters label, .search-field { font-size: 12px; }
input, select, textarea { min-height: 43px; font-size: 13px; }
.inline-notice, .step-list p, .assignment-section h4 small, .check-card small, .muted { font-size: 10px; }
.empty strong { font-size: 13px; }
.empty p { font-size: 11px; }
.mobile-overlay { display: none; }

@media (max-width: 1380px) {
  .store-list-row { grid-template-columns: minmax(200px, 1fr) 110px 150px minmax(170px, .8fr) auto; }
  .store-state { display: none; }
}

@media (max-width: 1100px) {
  .app-shell { grid-template-columns: 236px minmax(0, 1fr); }
  .sidebar { width: 236px; }
  .dashboard-grid { grid-template-columns: 1fr; }
  .profit-summary, .store-summary-grid { grid-template-columns: 1fr 1fr; }
  .store-list-row { grid-template-columns: minmax(210px, 1fr) 120px minmax(190px, .8fr) auto; }
  .store-fact:nth-of-type(3) { display: none; }
  .system-rules-strip { flex-wrap: wrap; gap: 8px 0; }
}

@media (max-width: 860px) {
  .app-shell { grid-template-columns: 1fr; }
  .sidebar { width: 264px; }
  .mobile-overlay { display: block; position: fixed; inset: 0; z-index: 19; border: 0; background: rgba(12,24,18,.45); }
  .topbar { height: 92px; }
  .topbar-copy > p, .date-block { display: none; }
  .content { padding-top: 22px; }
  .overview-heading { align-items: flex-start; }
  .store-list-row { grid-template-columns: minmax(210px, 1fr) minmax(150px, .8fr) auto; }
  .store-fact { display: none; }
  .filter-bar { align-items: stretch; flex-direction: column; }
  .filter-bar .filter-note { margin-left: 0; padding: 0; }
}

@media (max-width: 620px) {
  .topbar { height: 78px; }
  .title-line h1 { font-size: 20px; }
  .breadcrumb { display: none; }
  .header-action { min-height: 36px; padding: 0 11px; font-size: 10px; }
  .content { padding: 18px 12px 44px; }
  .overview-heading { display: grid; }
  .overview-heading h2 { font-size: 23px; }
  .overview-action { justify-self: start; }
  .metric-grid, .profit-summary, .store-summary-grid { grid-template-columns: 1fr; }
  .metric-card { min-height: 120px; }
  .panel-head, .panel-body { padding-left: 14px; padding-right: 14px; }
  .system-rules-strip { display: none; }
  .store-list-row { grid-template-columns: 1fr; gap: 11px; }
  .store-row-actions { justify-content: flex-start; }
  .compact-filters { align-items: stretch; flex-direction: column; }
  .compact-filters > span { display: none; }
  .date-presets { align-self: flex-start; }
}

/* 2026-08 Shopify Admin / Polaris 风格 */
:root {
  --ink: #202223;
  --ink-soft: #616161;
  --forest: #303030;
  --forest-2: #1a1a1a;
  --mint: #e3f1df;
  --cream: #f1f1f1;
  --paper: #ffffff;
  --line: #e3e3e3;
  --orange: #b98900;
  --red: #8e1f0b;
  --blue: #005bd3;
  --shadow: 0 1px 0 rgba(0, 0, 0, .05), 0 1px 3px rgba(0, 0, 0, .08);
  --polaris-shadow-button: 0 -1px 0 1px rgba(0, 0, 0, .8) inset, 0 0 0 1px rgba(48, 48, 48, .85) inset, 0 1px 0 0 rgba(255, 255, 255, .2) inset;
}

html, body { background: var(--cream); }
body {
  color: #303030;
  font-family: Inter, -apple-system, BlinkMacSystemFont, "Segoe UI", "PingFang SC", "Microsoft YaHei", sans-serif;
  font-size: 13px;
  line-height: 1.45;
}
button, input, select, textarea { font: inherit; }
button { transition: background-color .12s ease, box-shadow .12s ease, transform .08s ease; }
button:active { transform: translateY(1px); }

.app-shell {
  min-height: 100vh;
  display: grid;
  grid-template-columns: 240px minmax(0, 1fr);
  grid-template-rows: 56px minmax(0, 1fr);
  background: var(--cream);
}

.global-bar {
  position: sticky;
  top: 0;
  z-index: 60;
  grid-column: 1 / -1;
  grid-row: 1;
  display: grid;
  grid-template-columns: 240px minmax(260px, 620px) 1fr;
  align-items: center;
  gap: 20px;
  min-height: 56px;
  padding: 0 12px;
  color: #f1f1f1;
  background: #1a1a1a;
  box-shadow: 0 1px 0 rgba(255,255,255,.08) inset, 0 1px 2px rgba(0,0,0,.24);
}
.store-switcher {
  height: 40px;
  display: grid;
  grid-template-columns: 28px 1fr auto;
  gap: 9px;
  align-items: center;
  padding: 0 9px;
  border: 0;
  border-radius: 8px;
  color: #f3f3f3;
  background: transparent;
  text-align: left;
}
.store-switcher:hover { background: #303030; }
.store-switcher.static-brand { grid-template-columns: 28px 1fr; cursor: default; }
.store-switcher.static-brand:hover { background: transparent; }
.store-switcher strong { overflow: hidden; text-overflow: ellipsis; font-size: 13px; }
.global-brand-mark {
  width: 28px;
  height: 28px;
  display: grid;
  place-content: center;
  border-radius: 7px;
  color: #0d421d;
  background: #95bf47;
  font-size: 12px;
  font-weight: 800;
}
.switcher-chevron { color: #b5b5b5; }
.global-search {
  width: 100%;
  height: 34px;
  display: grid;
  grid-template-columns: auto 1fr auto;
  gap: 9px;
  align-items: center;
  padding: 0 10px;
  border: 1px solid #616161;
  border-radius: 8px;
  color: #dedede;
  background: #303030;
  text-align: left;
  box-shadow: 0 1px 0 rgba(255,255,255,.07) inset;
}
.global-search:hover { border-color: #8a8a8a; background: #383838; }
.global-search .search-symbol { color: #b5b5b5; font-size: 19px; line-height: 1; }
.global-search kbd, .command-dialog kbd {
  padding: 2px 6px;
  border: 1px solid #616161;
  border-radius: 5px;
  color: #b5b5b5;
  background: #383838;
  font: 10px ui-monospace, SFMono-Regular, Consolas, monospace;
}
.global-actions { justify-self: end; display: flex; align-items: center; gap: 7px; }
.global-user {
  display: flex;
  align-items: center;
  gap: 8px;
  min-height: 38px;
  padding: 3px 8px 3px 4px;
  border-radius: 9px;
  background: #303030;
}
.global-user .avatar { width: 30px; height: 30px; border-radius: 7px; background: #36fba1; color: #0d421d; font-size: 11px; }
.global-user > div { display: grid; }
.global-user strong { color: #f1f1f1; font-size: 11px; }
.global-user small { color: #b5b5b5; font-size: 9px; }

.sidebar {
  position: sticky;
  top: 56px;
  z-index: 30;
  grid-column: 1;
  grid-row: 2;
  width: 240px;
  height: calc(100vh - 56px);
  padding: 12px 8px 10px;
  color: #303030;
  background: #ebebeb;
  border-right: 1px solid #dedede;
  box-shadow: none;
}
.sidebar .brand { display: none; }
.sidebar-context {
  display: grid;
  grid-template-columns: 1fr auto;
  gap: 2px 8px;
  margin: 0 4px 12px;
  padding: 9px 10px;
  border: 1px solid #d4d4d4;
  border-radius: 8px;
  color: #303030;
  background: #f7f7f7;
  box-shadow: 0 1px 0 white inset;
}
.sidebar-context span, .sidebar-context small { color: #616161; font-size: 10px; }
.sidebar-context strong { color: #303030; font-size: 11px; }
.sidebar-context.identity-name-only { display: block; }
.sidebar-context.identity-name-only strong { display: block; }
.nav-groups { display: block !important; overflow-y: auto; padding: 0 2px; }
.nav-group { display: grid; gap: 2px; margin-bottom: 14px; }
.nav-group-label {
  padding: 5px 9px 4px;
  color: #8a8a8a;
  font-size: 10px;
  font-weight: 600;
  letter-spacing: 0;
}
.sidebar nav button {
  min-height: 34px;
  grid-template-columns: 25px 1fr auto;
  gap: 7px;
  padding: 0 8px;
  border-radius: 8px;
  color: #303030;
  font-size: 12px;
  font-weight: 450;
}
.sidebar nav button:hover { color: #202223; background: #dedede; }
.sidebar nav button.active {
  color: #202223;
  background: #d4d4d4;
  box-shadow: none;
  font-weight: 650;
}
.nav-icon {
  width: 22px;
  height: 22px;
  display: grid;
  place-content: center;
  border-radius: 6px;
  color: #616161;
  background: transparent;
  font-size: 10px;
  font-weight: 700;
}
.active .nav-icon { color: #303030; background: #b5b5b5; }
.nav-dot { width: 6px; height: 6px; border-radius: 50%; background: #b98900; }
.sidebar-service {
  display: grid;
  grid-template-columns: 8px 1fr;
  gap: 9px;
  align-items: center;
  margin-top: auto;
  padding: 10px 9px;
  border-top: 1px solid #d4d4d4;
}
.service-light { width: 7px; height: 7px; border-radius: 50%; background: #29845a; box-shadow: 0 0 0 3px #cdfee1; }
.sidebar-service div { display: grid; }
.sidebar-service strong { color: #303030; font-size: 10px; }
.sidebar-service small { color: #8a8a8a; font-size: 9px; }
.sidebar-footer {
  margin-top: 0;
  padding: 8px 7px 0;
  grid-template-columns: 32px 1fr 28px;
  border-top: 1px solid #d4d4d4;
}
.sidebar-footer .avatar { width: 30px; height: 30px; border-radius: 7px; background: #b4f4cf; color: #0d421d; }
.sidebar-footer strong { color: #303030; font-size: 10px; }
.sidebar-footer span { color: #8a8a8a; font-size: 9px; }
.logout-button { color: #616161; }
.logout-button:hover { color: #303030; background: #d4d4d4; }

.main { grid-column: 2; grid-row: 2; min-width: 0; }
.topbar {
  position: relative;
  top: auto;
  z-index: 2;
  min-height: 92px;
  height: auto;
  padding: 22px clamp(20px, 3vw, 40px) 14px;
  border: 0;
  background: transparent;
  backdrop-filter: none;
}
.topbar-copy { display: grid; gap: 4px; }
.breadcrumb { display: none; }
.title-line h1 { margin: 0; color: #202223; font-size: 20px; line-height: 1.3; letter-spacing: -.015em; }
.title-line > span { padding: 3px 7px; color: #5e4200; background: #ffea8a; border-radius: 999px; font-size: 10px; }
.topbar-copy > p { margin: 0; color: #616161; font-size: 12px; }
.topbar-actions { display: flex; align-items: center; gap: 8px; }
.date-block {
  display: grid;
  gap: 0;
  padding: 0 2px;
  border: 0;
  background: transparent;
  text-align: right;
  box-shadow: none;
  cursor: default;
  user-select: none;
}
.date-block span { color: #8a8a8a; font-size: 8px; }
.date-block strong { color: #303030; font-size: 10px; }
.header-action, .primary {
  min-height: 32px;
  padding: 0 12px;
  border: 0;
  border-radius: 7px;
  color: #fff;
  background: #303030;
  box-shadow: var(--polaris-shadow-button);
  font-size: 12px;
  font-weight: 650;
}
.header-action:hover, .primary:hover { color: #fff; background: #1f1f1f; transform: none; }
.primary:disabled { opacity: .45; }
.primary.wide { min-height: 42px; margin-top: 6px; font-size: 13px; }
.primary.small { min-height: 30px; padding: 0 10px; font-size: 11px; }
.secondary {
  min-height: 32px;
  padding: 0 11px;
  border: 0;
  border-radius: 7px;
  color: #303030;
  background: #fff;
  box-shadow: 0 -1px 0 0 #b5b5b5 inset, 0 0 0 1px #8a8a8a inset, 0 1px 0 0 rgba(0,0,0,.05);
  font-size: 12px;
  font-weight: 600;
}
.secondary:hover { background: #f7f7f7; }
.text-button, .mini-link { color: #005bd3; font-size: 12px; font-weight: 600; }
.text-button:hover, .mini-link:hover { color: #004299; text-decoration: underline; }
.content { width: 100%; max-width: 1280px; margin: 0 auto; padding: 0 clamp(20px, 3vw, 40px) 64px; }
.content.content-wide { max-width: 1680px; }

.overview-heading { align-items: flex-start; padding: 0 0 16px; }
.section-kicker { display: none; }
.overview-heading h2 { margin: 0 0 5px; color: #202223; font-size: 20px; letter-spacing: -.015em; }
.overview-heading p { color: #616161; font-size: 12px; }
.overview-action { min-height: 32px; }
.analytics-card {
  margin-bottom: 16px;
  overflow: hidden;
  border: 1px solid #e3e3e3;
  border-radius: 12px;
  background: #fff;
  box-shadow: var(--shadow);
}
.analytics-card > header {
  min-height: 49px;
  display: flex;
  align-items: center;
  justify-content: space-between;
  padding: 10px 14px;
  border-bottom: 1px solid #ebebeb;
}
.analytics-card > header div { display: grid; }
.analytics-card > header strong { font-size: 13px; }
.analytics-card > header span { color: #8a8a8a; font-size: 10px; }
.analytics-card > header button {
  min-height: 28px;
  padding: 0 9px;
  border: 0;
  border-radius: 7px;
  color: #303030;
  background: #f7f7f7;
  box-shadow: 0 0 0 1px #d4d4d4 inset;
  font-size: 11px;
}
.metric-grid { grid-template-columns: repeat(4, 1fr); gap: 0; margin: 0; }
.metric-card {
  min-height: 116px;
  padding: 16px;
  gap: 7px;
  border: 0;
  border-right: 1px solid #ebebeb;
  border-radius: 0;
  background: #fff;
  box-shadow: none;
}
.metric-card:last-child { border-right: 0; }
.metric-card::before { display: none; }
.metric-label > span { color: #616161; font-size: 11px; font-weight: 550; }
.metric-label i { width: 25px; height: 25px; border-radius: 6px; color: #616161 !important; background: #f1f1f1 !important; font-size: 9px; }
.metric-card strong { color: #202223; font-size: 24px; letter-spacing: -.025em; }
.metric-card small { color: #8a8a8a; font-size: 10px; }
.metric-card small b { background: #29845a; }

.dashboard-grid { grid-template-columns: minmax(0, 1.18fr) minmax(320px, .82fr); gap: 16px; }
.panel {
  border: 1px solid #e3e3e3;
  border-radius: 12px;
  background: #fff;
  box-shadow: var(--shadow);
}
.panel-head { min-height: 60px; padding: 14px 16px; border-bottom: 1px solid #ebebeb; }
.panel-head h2 { margin-bottom: 3px; color: #202223; font-size: 14px; letter-spacing: 0; }
.panel-head p { color: #616161; font-size: 11px; }
.panel-body { padding: 16px; }
.panel-actions { gap: 6px; }
.attention-list { gap: 7px; }
.attention-list > button {
  grid-template-columns: 34px 1fr auto;
  padding: 10px;
  border-color: #e3e3e3;
  border-radius: 9px;
  background: #fff;
}
.attention-list > button:hover { border-color: #8a8a8a; background: #f7f7f7; }
.attention-count { width: 32px; height: 32px; border-radius: 8px; color: #5e4200; background: #ffea8a; }
.attention-count.danger { color: #8e1f0b; background: #fee4e2; }
.attention-list strong { font-size: 12px; }
.attention-list small { color: #616161; font-size: 10px; }
.attention-list button > b { color: #005bd3; }
.all-clear { min-height: 132px; }
.all-clear > span { width: 36px; height: 36px; color: #0d421d; background: #cdfee1; }
.all-clear strong { font-size: 12px; }
.all-clear p { color: #8a8a8a; font-size: 10px; }
.store-health-list > div { padding: 9px 0; }
.store-avatar { border-radius: 8px; color: #303030; background: #e3e3e3; }
.system-rules-strip {
  margin-top: 16px;
  padding: 12px 14px;
  border-color: #e3e3e3;
  border-radius: 12px;
  color: #616161;
  background: #fff;
  box-shadow: var(--shadow);
  font-size: 10px;
}
.system-rules-strip > span, .system-rules-strip b { color: #303030; }

.profit-summary { gap: 8px; margin-bottom: 12px; }
.profit-summary > div {
  min-height: 92px;
  padding: 13px 14px;
  border-color: #e3e3e3;
  border-radius: 9px;
  background: #f7f7f7;
}
.profit-summary span, .profit-summary small { color: #616161; font-size: 10px; }
.profit-summary strong { color: #202223; font-size: 19px; }
.profit-summary .positive { border-color: #aee9d1; background: #f3fcf7; }
.profit-summary .positive strong { color: #0d421d; }
.profit-summary .danger { border-color: #fed3d1; background: #fff5f5; }
.profit-summary .danger strong { color: #8e1f0b; }
.filter-bar, .task-summary {
  padding: 10px;
  border: 1px solid #e3e3e3;
  border-radius: 9px;
  background: #f7f7f7;
}
.date-presets { background: #e3e3e3; }
.date-presets button { min-height: 29px; color: #616161; }
.date-presets button.active, .date-presets button:hover { color: #303030; background: #fff; box-shadow: 0 1px 2px rgba(0,0,0,.1); }
.compact-filters label { font-size: 10px; }
.compact-filters input { min-height: 32px; }

.table-scroll { overflow: auto; border-color: #e3e3e3; border-radius: 9px; }
table { color: #303030; background: #fff; font-size: 12px; }
th { padding: 10px 12px; color: #616161; background: #f7f7f7; font-size: 10px; font-weight: 650; }
td { padding: 12px; color: #303030; border-color: #ebebeb; }
tbody tr:hover td { background: #fafafa; }
.grand-total td { color: #202223; background: #f7f7f7; }
.order-row td, .sku-detail-row td, .tree-label small { font-size: 10px; }
.amount, .profit-positive { color: #0d421d; }
.negative { color: #8e1f0b; }

.store-summary-grid { gap: 8px; margin-bottom: 14px; }
.store-summary-grid.limited { grid-template-columns: repeat(3, minmax(0, 1fr)); }
.store-summary-grid > div { min-height: 54px; border-color: #e3e3e3; border-radius: 9px; background: #f7f7f7; }
.store-summary-grid span { color: #616161; font-size: 10px; }
.store-summary-grid strong { font-size: 18px; }
.store-list { gap: 7px; }
.store-list-row {
  min-height: 82px;
  padding: 12px 14px;
  border-color: #e3e3e3;
  border-radius: 9px;
  background: #fff;
}
.store-list-row:hover { border-color: #b5b5b5; box-shadow: none; }
.store-list-row.limited { grid-template-columns: minmax(240px, 1.25fr) 130px minmax(190px, .8fr) auto; }
.store-identity h3 { font-size: 13px; }
.store-identity a { color: #005bd3; font-size: 10px; }
.store-fact > span, .store-state > small, .store-fact.people small { color: #8a8a8a; font-size: 9px; }
.store-fact strong { color: #303030; font-size: 11px; }
.warning-action { color: #5e4200; background: #ffea8a; }

.status {
  gap: 5px;
  padding: 4px 7px;
  color: #0d421d;
  background: #cdfee1;
  font-size: 10px;
}
.status.estimated, .status.attention, .status.syncing { color: #5e4200; background: #ffea8a; }
.status.pending, .status.disconnected { color: #8e1f0b; background: #fee4e2; }
.status.virtual { color: #004299; background: #eaf4ff; }
.pill { color: #0d421d; background: #cdfee1; font-size: 10px; }
.pill.disabled { color: #8e1f0b; background: #fee4e2; }
.setup-banner { border-color: #f3ca52; color: #5e4200; background: #fff8db; border-radius: 9px; }
.setup-banner > span { background: #ffea8a; }
.setup-banner p { color: #6f5800; }
.task-list { gap: 7px; }
.task-list article { min-height: 56px; border-color: #e3e3e3; border-radius: 9px; padding: 11px 12px; }
.task-list article.overdue { border-color: #fed3d1; background: #fff5f5; }
.task-main strong { font-size: 12px; }
.task-main p { color: #616161; font-size: 10px; }
.department-grid article, .settings-grid form { border-color: #e3e3e3; border-radius: 9px; background: #fff; }
.department-index { color: #616161; background: #e3e3e3; }
.department-grid h3 { font-size: 14px; }
.scope-tabs { gap: 2px; border-color: #e3e3e3; }
.scope-tabs button { padding: 8px 12px 10px; color: #616161; font-size: 12px; }
.scope-tabs button.active { color: #303030; border-bottom-color: #303030; }
.scope-picker { border-color: #e3e3e3; background: #f7f7f7; }
.settings-grid form { min-height: 64px; }
.settings-grid span { color: #616161; font-size: 10px; }
.formula-card { color: #303030; background: #f7f7f7; border: 1px solid #e3e3e3; border-radius: 9px; }
.formula-card span, .formula-card small { color: #616161; }
.formula-card strong { color: #202223; }

input, select, textarea {
  min-height: 36px;
  padding: 7px 10px;
  border: 1px solid #8a8a8a;
  border-radius: 8px;
  color: #303030;
  background: #fff;
  box-shadow: 0 1px 0 rgba(0,0,0,.03) inset;
  font-size: 13px;
}
textarea { min-height: 86px; }
input:hover, select:hover, textarea:hover { border-color: #616161; }
input:focus, select:focus, textarea:focus { border-color: #005bd3; box-shadow: 0 0 0 1px #005bd3; outline: none; }
.form-grid label, .filters label, .search-field, .login-card label { color: #303030; font-size: 12px; font-weight: 550; }
.inline-notice { color: #004299; background: #eaf4ff; border: 1px solid #91d0ff; }
.step-list { background: #f7f7f7; }
.step-list span { color: #0d421d; background: #cdfee1; }
.check-card { border-color: #e3e3e3; border-radius: 8px; }
.check-card input { accent-color: #303030; }

.modal-backdrop, .command-backdrop { background: rgba(0,0,0,.38); backdrop-filter: blur(2px); }
.modal { border: 1px solid #d4d4d4; border-radius: 14px; box-shadow: 0 20px 48px rgba(0,0,0,.24); }
.modal > header { padding: 16px 18px; border-color: #e3e3e3; }
.modal > header h3 { font-size: 16px; }
.modal > header p { color: #616161; font-size: 11px; }
.modal > header > button { color: #303030; background: #f1f1f1; border-radius: 7px; }
.modal-body { padding: 18px; }
.toast { color: #fff; background: #303030; border-radius: 8px; box-shadow: 0 8px 24px rgba(0,0,0,.22); }
.empty > span { color: #8a8a8a; }
.empty strong { color: #303030; }
.empty p { color: #616161; }
code { color: #004299; background: #eaf4ff; }

.command-backdrop {
  position: fixed;
  inset: 0;
  z-index: 120;
  display: grid;
  place-items: start center;
  padding: 76px 18px 24px;
}
.command-dialog {
  width: min(620px, 100%);
  overflow: hidden;
  border: 1px solid #b5b5b5;
  border-radius: 14px;
  background: #fff;
  box-shadow: 0 24px 64px rgba(0,0,0,.28);
}
.command-dialog > header { display: grid; grid-template-columns: auto 1fr auto; gap: 10px; align-items: center; padding: 11px 13px; border-bottom: 1px solid #e3e3e3; }
.command-dialog > header > span { color: #616161; font-size: 22px; }
.command-dialog input { min-height: 36px; padding: 0; border: 0; box-shadow: none; font-size: 14px; }
.command-dialog input:focus { border: 0; box-shadow: none; }
.command-dialog kbd { color: #616161; background: #f1f1f1; border-color: #d4d4d4; }
.command-results { max-height: 420px; overflow: auto; padding: 7px; }
.command-results button { width: 100%; display: grid; grid-template-columns: 30px 1fr auto; gap: 10px; align-items: center; padding: 9px; border: 0; border-radius: 8px; color: #303030; background: transparent; text-align: left; }
.command-results button:hover { background: #f1f1f1; }
.command-results button > span:nth-child(2) { display: grid; }
.command-results strong { font-size: 12px; }
.command-results small { color: #8a8a8a; font-size: 10px; }
.command-results b { color: #8a8a8a; }
.command-empty { padding: 28px; color: #8a8a8a; text-align: center; }

.login-page { min-height: 100vh; display: grid; grid-template-columns: 1fr; background: #f1f1f1; }
.login-story { display: none; }
.login-panel { min-height: 100vh; display: grid; place-content: center; padding: 28px; background: #f1f1f1; }
.login-card {
  width: min(420px, calc(100vw - 32px));
  padding: 28px;
  border: 1px solid #e3e3e3;
  border-radius: 14px;
  background: #fff;
  box-shadow: var(--shadow);
}
.mobile-login-brand { display: flex; align-items: center; gap: 10px; margin-bottom: 28px; }
.mobile-login-brand .brand-mark { width: 38px; height: 38px; border-radius: 9px; color: #0d421d; background: #95bf47; }
.mobile-login-brand strong { font-size: 15px; }
.login-card .eyebrow { color: #616161; font-size: 10px; letter-spacing: .08em; }
.login-card h2 { margin: 8px 0 5px; color: #202223; font-size: 24px; letter-spacing: -.02em; }
.login-card > p { margin-bottom: 24px; color: #616161; font-size: 12px; }
.login-card label { margin-bottom: 14px; }
.security-note { color: #8a8a8a; }
.security-note span { color: #29845a; }
.form-error { color: #8e1f0b; background: #fee4e2; border-color: #fed3d1; }
.loading-screen { color: #303030; background: #f1f1f1; }
.loading-screen .brand-mark { color: #0d421d; background: #95bf47; }

@media (max-width: 1180px) {
  .app-shell { grid-template-columns: 220px minmax(0, 1fr); }
  .global-bar { grid-template-columns: 220px minmax(240px, 520px) 1fr; }
  .sidebar { width: 220px; }
  .metric-grid { grid-template-columns: 1fr 1fr; }
  .metric-card:nth-child(2) { border-right: 0; }
  .metric-card:nth-child(-n+2) { border-bottom: 1px solid #ebebeb; }
}

@media (max-width: 860px) {
  .app-shell { grid-template-columns: 1fr; grid-template-rows: 56px minmax(0, 1fr); }
  .global-bar { grid-template-columns: auto minmax(120px, 1fr) auto; gap: 8px; padding: 0 8px; }
  .store-switcher { grid-template-columns: 28px; padding: 0 6px; }
  .store-switcher strong, .switcher-chevron, .global-search kbd, .global-user > div { display: none; }
  .global-search { max-width: none; }
  .global-user { min-height: auto; padding: 0; background: transparent; }
  .sidebar { position: fixed; top: 56px; left: 0; z-index: 50; width: 248px; height: calc(100vh - 56px); transform: translateX(-105%); box-shadow: 16px 0 40px rgba(0,0,0,.2); }
  .sidebar.mobile-open { transform: translateX(0); }
  .sidebar .brand { display: none; }
  .mobile-overlay { display: block; position: fixed; inset: 56px 0 0; z-index: 45; border: 0; background: rgba(0,0,0,.35); }
  .main { grid-column: 1; grid-row: 2; }
  .topbar { min-height: 78px; padding: 16px 18px 10px; }
  .mobile-menu { display: block; width: 32px; height: 32px; margin-right: 10px; border: 0; border-radius: 7px; background: #fff; box-shadow: 0 0 0 1px #d4d4d4 inset; font-size: 16px; }
  .content { padding: 0 18px 44px; }
  .topbar-copy > p, .date-block { display: none; }
  .dashboard-grid { grid-template-columns: 1fr; }
}

@media (max-width: 620px) {
  .global-search span:nth-child(2) { overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
  .topbar { min-height: 70px; padding: 14px 12px 8px; }
  .title-line h1 { font-size: 18px; }
  .header-action { min-height: 32px; padding: 0 9px; font-size: 10px; }
  .content { padding: 0 10px 40px; }
  .overview-heading { display: grid; gap: 12px; }
  .overview-heading h2 { font-size: 18px; }
  .metric-grid, .profit-summary, .store-summary-grid { grid-template-columns: 1fr; }
  .metric-card { min-height: 98px; border-right: 0; border-bottom: 1px solid #ebebeb; }
  .metric-card:last-child { border-bottom: 0; }
  .panel-head, .panel-body { padding-left: 12px; padding-right: 12px; }
  .panel-head { align-items: flex-start; }
  .system-rules-strip { display: none; }
  .modal-body { padding: 15px; }
  .login-panel { padding: 16px; }
  .login-card { padding: 22px; }
}

/* 全平台可读性增强：更大的字号与更清楚的字重 */
body { font-size: 15px; line-height: 1.55; font-weight: 500; }
.store-switcher strong { font-size: 15px; font-weight: 700; }
.global-search { font-size: 13px; font-weight: 550; }
.global-user strong { font-size: 13px; font-weight: 700; }
.global-user small { font-size: 11px; font-weight: 500; }
.sidebar-context span, .sidebar-context small { font-size: 12px; font-weight: 500; }
.sidebar-context strong { font-size: 13px; font-weight: 750; }
.nav-group-label { font-size: 12px; font-weight: 650; }
.sidebar nav button { min-height: 39px; font-size: 14px; font-weight: 600; }
.sidebar nav button.active { font-weight: 750; }
.nav-icon { font-size: 12px; font-weight: 800; }
.sidebar-service strong, .sidebar-footer strong { font-size: 12px; font-weight: 700; }
.sidebar-service small, .sidebar-footer span { font-size: 11px; font-weight: 500; }
.title-line h1 { font-size: 24px; font-weight: 750; }
.topbar-copy > p { font-size: 14px; font-weight: 500; }
.date-block span { font-size: 10px; font-weight: 600; }
.date-block strong { font-size: 12px; font-weight: 700; }
.header-action, .primary, .secondary, .text-button { font-size: 13px; font-weight: 700; }
.overview-heading h2 { font-size: 23px; font-weight: 750; }
.overview-heading p { font-size: 14px; }
.analytics-card > header strong { font-size: 15px; font-weight: 750; }
.analytics-card > header span { font-size: 12px; }
.metric-label > span { font-size: 13px; font-weight: 650; }
.metric-card strong { font-size: 27px; font-weight: 750; }
.metric-card small { font-size: 12px; font-weight: 500; }
.panel-head h2 { font-size: 17px; font-weight: 750; }
.panel-head p { font-size: 13px; font-weight: 500; }
.profit-summary span { font-size: 12px; font-weight: 600; }
.profit-summary strong { font-size: 23px; font-weight: 750; }
.profit-summary small { font-size: 11px; font-weight: 500; }
.profit-summary { grid-template-columns: repeat(7, minmax(0, 1fr)); }
.profit-summary .ad-cost { border-color: #f3ca52; background: #fffaf0; }
.profit-summary .ad-cost strong { color: #6f5800; }
.profit-summary .cpa-cost { border-color: #f3ca52; background: #fffdf5; }
.profit-summary .cpa-cost strong { color: #6f5800; }
.profit-view-controls {
  display: flex;
  align-items: flex-end;
  flex-wrap: wrap;
  gap: 10px;
  margin-bottom: 10px;
  padding: 12px;
  border: 1px solid #e3e3e3;
  border-radius: 10px;
  background: #fff;
}
.profit-view-controls label { display: grid; gap: 4px; min-width: 170px; color: #4a4a4a; font-size: 12px; font-weight: 650; }
.profit-view-controls select { min-height: 38px; padding: 0 34px 0 10px; font-size: 13px; font-weight: 600; }
.profit-view-controls .multi-select-filter { min-width: 220px; }
.profit-filter-count { margin-left: auto; padding: 0 4px 9px; color: #616161; font-size: 12px; font-weight: 600; }
.profit-sort-header {
  width: 100%;
  min-height: 28px;
  display: inline-flex;
  align-items: center;
  justify-content: flex-end;
  gap: 5px;
  padding: 0;
  border: 0;
  color: inherit;
  background: transparent;
  font-size: inherit;
  font-weight: inherit;
  white-space: nowrap;
}
.profit-sort-header:hover { color: #202223; }
.profit-sort-header.active { color: #202223; }
.profit-sort-arrow { width: 14px; color: #8a8a8a; font-size: 13px; font-weight: 800; line-height: 1; text-align: center; }
.profit-sort-header.active .profit-sort-arrow { color: #202223; }
.department-tree { display: grid; gap: 12px; }
.department-node { min-width: 0; }
.department-node-main {
  display: grid;
  grid-template-columns: 42px minmax(0, 1fr) auto;
  gap: 12px;
  align-items: center;
  min-height: 82px;
  padding: 14px;
  border: 1px solid #e3e3e3;
  border-radius: 10px;
  background: #fff;
}
.department-node-main:hover { border-color: #c9c9c9; box-shadow: 0 1px 2px rgba(0,0,0,.06); }
.department-node-main .department-index { width: 34px; height: 34px; display: grid; place-content: center; border-radius: 8px; color: #4a4a4a; background: #f1f1f1; font-size: 11px; font-weight: 750; }
.department-copy { min-width: 0; }
.department-copy > span { color: #777; font-size: 11px; font-weight: 600; }
.department-copy h3 { margin: 2px 0 3px; color: #202223; font-size: 15px; font-weight: 750; }
.department-copy small { color: #616161; font-size: 11px; font-weight: 550; }
.department-children { display: grid; gap: 8px; margin: 8px 0 0 28px; padding-left: 16px; border-left: 2px solid #d8ddd9; }
.department-children .department-node-main { min-height: 70px; background: #fafbfa; }
.department-actions { display: flex; align-items: center; justify-content: flex-end; gap: 7px; flex-wrap: wrap; }
.department-actions .secondary, .department-actions .danger-text { min-height: 32px; padding: 0 10px; font-size: 12px; }
.account-actions { display: flex; align-items: center; gap: 7px; white-space: nowrap; }
.account-actions .secondary { min-height: 32px; padding: 0 10px; font-size: 12px; }
.danger-text { min-height: 32px; padding: 0 10px; border: 1px solid #fed3d1; border-radius: 7px; color: #8e1f0b; background: #fff5f5; font-size: 12px; font-weight: 700; }
.danger-text:hover { background: #fee4e2; }
.date-presets button, .compact-filters label, .filter-note { font-size: 12px; font-weight: 650; }
.ad-day-filter { align-items: flex-end; }
.ad-day-filter .filter-note { align-self: center; margin-left: 4px; color: #616161; }
input, select, textarea { font-size: 14px; font-weight: 500; }
.form-grid label, .filters label, .search-field, .login-card label { font-size: 13px; font-weight: 650; }
table { font-size: 13.5px; font-weight: 500; }
th { padding: 12px 13px; font-size: 12px; font-weight: 750; }
td { padding: 13px; }
.grand-total td, .store-row td, .date-row td { font-weight: 700; }
.sku-detail-row td { color: #454f4a; font-size: 13px; font-weight: 550; }
.tree-label strong { font-weight: 750; }
.tree-label small { color: #6f7974; font-size: 11px; font-weight: 500; }
.mini-link { font-size: 12px !important; font-weight: 700 !important; }
.sku-code { font-size: 13px; font-weight: 800; }
.sku-state, .provisional-tag { font-size: 10px; font-weight: 750; }
.status, .pill { font-size: 11px; font-weight: 700; }
.store-identity h3 { font-size: 15px; font-weight: 750; }
.store-identity a, .store-fact > span, .store-state > small, .store-fact.people small { font-size: 11px; }
.store-fact strong { font-size: 13px; font-weight: 700; }
.task-main strong, .attention-list strong, .all-clear strong { font-size: 14px; font-weight: 750; }
.task-main p, .attention-list small, .all-clear p { font-size: 12px; }
.settings-grid span, .formula-card span, .formula-card small, .audit-value, code { font-size: 11px; }
.settings-grid form { grid-template-columns: minmax(110px, 1fr) minmax(90px, .75fr) minmax(150px, 1.25fr) auto; align-items: end; }
.settings-grid form > div:first-child { grid-column: auto; }
.setting-actions { display: flex !important; align-items: center; justify-content: flex-end; gap: 8px !important; }
.currency-rate-settings { display: grid; gap: 12px; margin-top: 20px; padding-top: 18px; border-top: 1px solid #e3e3e3; }
.currency-rate-settings > header { display: flex; align-items: flex-start; justify-content: space-between; gap: 16px; }
.currency-rate-settings h3, .currency-rate-settings p { margin: 0; }
.currency-rate-settings p, .currency-rate-settings > header > span { color: #616161; font-size: 11px; }
.sku-inline-save-panel { display: grid; min-width: 220px; gap: 7px; }
.sku-effect-editor { display: grid; gap: 5px; }
.sku-effect-editor input, .sku-effect-editor select { min-width: 170px; }
.sku-inline-state-editor { display: grid; min-width: 230px; gap: 7px; }
.sku-inline-state-editor .sku-row-actions { justify-content: flex-start; }
@media (max-width: 860px) {
  .settings-grid form { grid-template-columns: 1fr; }
  .settings-grid form > * { grid-column: 1; }
}
.inline-notice, .step-list p, .assignment-section h4 small, .check-card small, .muted { font-size: 12px; }
.modal > header h3 { font-size: 19px; font-weight: 750; }
.modal > header p { font-size: 13px; }
.empty strong { font-size: 15px; font-weight: 750; }
.empty p { font-size: 13px; }

.daily-detail-row > td { padding: 0; background: #f6f8f7; }
.daily-detail-panel { padding: 14px 16px 17px 42px; }
.shipping-calculation {
  display: flex;
  align-items: center;
  flex-wrap: wrap;
  gap: 6px 14px;
  min-height: 50px;
  padding: 9px 12px;
  border: 1px solid #dbe4de;
  border-radius: 9px;
  background: #fff;
}
.shipping-calculation { flex: 1 1 580px; border-left: 3px solid #6f9f82; }
.shipping-calculation strong { color: #273d32; font-size: 13px; font-weight: 750; }
.shipping-calculation span { color: #303030; font-size: 13px; font-weight: 700; }
.shipping-calculation small { flex-basis: 100%; color: #69756f; font-size: 11px; font-weight: 500; }
.daily-tip-note {
  margin: -2px 0 9px;
  color: #6d756f;
  font-size: 11px;
  font-weight: 550;
}
.daily-sku-scroll { overflow-x: auto; border: 1px solid #dce2de; border-radius: 9px; background: #fff; }
.daily-sku-grid { min-width: 900px; }
.daily-sku-head, .daily-sku-line {
  display: grid;
  grid-template-columns: minmax(160px, 1.2fr) minmax(250px, 2fr) 100px 78px 112px 112px 105px;
  align-items: center;
  column-gap: 14px;
  padding: 10px 13px;
}
.daily-sku-head { border-bottom: 1px solid #dce2de; background: #ecefed; color: #4e5b54; }
.daily-sku-head span { font-size: 12px; font-weight: 750; }
.daily-sku-line { min-height: 47px; border-bottom: 1px solid #edf0ee; color: #38433e; }
.daily-sku-line:last-child { border-bottom: 0; }
.daily-sku-line:hover { background: #f8faf9; }
.daily-sku-line > span, .daily-sku-line > strong { min-width: 0; font-size: 13px; font-weight: 600; }
.daily-sku-line > strong { font-weight: 750; }
.daily-sku-value { display: block; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.daily-sku-value.product-name { font-weight: 700; }
.daily-sku-line a { color: #156f49; font-size: 12px; font-weight: 700; white-space: nowrap; }
.daily-sku-empty { padding: 20px; color: #6d7772; font-size: 13px; font-weight: 550; text-align: center; }

@media (max-width: 620px) {
  body { font-size: 14px; }
  .title-line h1 { font-size: 21px; }
  .profit-summary { grid-template-columns: 1fr; }
  .daily-detail-panel { padding-left: 14px; }
  .profit-view-controls { align-items: stretch; flex-direction: column; }
  .profit-view-controls label { width: 100%; }
  .profit-filter-count { margin-left: 0; padding: 2px 0; }
  .department-node-main { grid-template-columns: 36px minmax(0, 1fr); }
  .department-actions { grid-column: 1 / -1; justify-self: start; }
  .department-children { margin-left: 10px; padding-left: 10px; }
}

@media (max-width: 1180px) and (min-width: 621px) {
  .profit-summary { grid-template-columns: repeat(2, minmax(0, 1fr)); }
}

/* 经营概览：以利润、成本和数据质量为核心 */
.overview-period-select {
  min-height: 34px;
  padding: 0 32px 0 11px;
  border: 1px solid #c9cccf;
  border-radius: 8px;
  color: #303030;
  background: #fff;
  font-size: 12px;
  font-weight: 700;
}
.overview-period-controls { display: flex; align-items: center; gap: 10px; flex-wrap: nowrap; justify-content: flex-end; }
.overview-custom-range { display: flex; align-items: center; gap: 7px; }
.overview-custom-range > span { color: #777; font-size: 12px; }
.overview-custom-range label { display: flex; align-items: center; gap: 6px; color: #616161; font-size: 11px; font-weight: 650; white-space: nowrap; }
.overview-custom-range input { width: 142px; min-height: 34px; padding: 0 9px; border-radius: 8px; font-size: 12px; font-weight: 650; }
.dashboard-home .analytics-card > header { min-height: 62px; }
.dashboard-home .analytics-card > header > div:first-child { display: grid; gap: 2px; }
.dashboard-home .analytics-card > header > div:first-child > span { color: #616161; font-size: 11px; font-weight: 500; }
.business-metrics { grid-template-columns: repeat(4, minmax(0, 1fr)); }
.procurement-metrics { grid-template-columns: repeat(4, minmax(0, 1fr)); }
.business-metrics .metric-card, .procurement-metrics .metric-card { min-height: 126px; }
.business-metrics .metric-card strong, .procurement-metrics .metric-card strong { font-size: 25px; }
.data-quality-banner {
  display: grid;
  grid-template-columns: 34px minmax(0, 1fr) auto;
  gap: 12px;
  align-items: center;
  margin: 14px 0;
  padding: 13px 15px;
  border: 1px solid #f3ca52;
  border-radius: 10px;
  background: #fffaf0;
}
.data-quality-banner > span { width: 30px; height: 30px; display: grid; place-content: center; border-radius: 8px; color: #6f5800; background: #ffea8a; font-weight: 850; }
.data-quality-banner strong { color: #3d3500; font-size: 13px; }
.data-quality-banner p { margin: 2px 0 0; color: #6f5f19; font-size: 12px; }
.data-quality-banner button { min-height: 32px; padding: 0 10px; border: 0; color: #5c4b00; background: transparent; font-size: 12px; font-weight: 750; }
.dashboard-business-grid { grid-template-columns: minmax(0, 1.55fr) minmax(300px, .65fr); margin-bottom: 14px; }
.overview-store-table { min-width: 860px; }
.overview-store-table th:not(:first-child), .overview-store-table td:not(:first-child) { text-align: right; }
.overview-store-name { display: flex; align-items: center; gap: 9px; min-width: 175px; }
.overview-store-name > span:last-child { display: grid; gap: 1px; min-width: 0; }
.overview-store-name strong { overflow: hidden; text-overflow: ellipsis; white-space: nowrap; font-size: 13px; }
.overview-store-name small { color: #777; font-size: 10px; }
.provisional-word { display: block; margin-top: 2px; color: #8a6d00; font-size: 9px; font-weight: 700; }
.cost-breakdown { display: grid; gap: 14px; }
.cost-row { display: grid; grid-template-columns: 1fr 48px; gap: 6px 10px; align-items: center; }
.cost-row > div:first-child { grid-column: 1 / -1; display: flex; align-items: center; justify-content: space-between; gap: 12px; }
.cost-row span { color: #616161; font-size: 12px; font-weight: 600; }
.cost-row strong { color: #303030; font-size: 13px; font-weight: 750; }
.cost-track { height: 7px; overflow: hidden; border-radius: 999px; background: #ececec; }
.cost-track i { display: block; height: 100%; border-radius: inherit; background: #6e8f7d; }
.cost-row small { color: #777; font-size: 11px; text-align: right; }
.cost-footnote { display: grid; grid-template-columns: 1fr auto; gap: 7px 12px; margin-top: 18px; padding-top: 14px; border-top: 1px solid #e3e3e3; }
.cost-footnote span { color: #616161; font-size: 12px; }
.cost-footnote strong { font-size: 14px; text-align: right; }
.attention-list.horizontal { grid-template-columns: repeat(3, minmax(0, 1fr)); }
.quality-summary { min-height: 190px; display: grid; place-content: center; justify-items: center; text-align: center; }
.quality-summary strong { color: #0d421d; font-size: 40px; font-weight: 800; }
.quality-summary span { color: #303030; font-size: 14px; font-weight: 750; }
.quality-summary p { margin: 8px 0 0; color: #616161; font-size: 12px; }
.not-found-card { min-height: 430px; }
.not-found-state { min-height: 430px; display: grid; place-content: center; justify-items: center; text-align: center; padding: 36px; }
.not-found-state > strong { color: #8a8a8a; font-size: 72px; line-height: 1; letter-spacing: -.06em; }
.not-found-state h2 { margin: 16px 0 6px; color: #202223; font-size: 22px; }
.not-found-state p { margin: 0 0 22px; color: #616161; font-size: 13px; }

@media (max-width: 1180px) {
  .dashboard-business-grid { grid-template-columns: 1fr; }
  .attention-list.horizontal { grid-template-columns: 1fr; }
}

@media (max-width: 760px) {
  .overview-period-controls { width: 100%; justify-content: flex-start; flex-wrap: wrap; }
  .overview-custom-range { width: 100%; flex-wrap: wrap; }
  .overview-custom-range label { flex: 1; }
  .overview-custom-range input { width: 100%; min-width: 120px; }
  .business-metrics, .procurement-metrics { grid-template-columns: 1fr 1fr; }
  .data-quality-banner { grid-template-columns: 34px 1fr; }
  .data-quality-banner button { grid-column: 1 / -1; justify-self: start; }
}

@media (max-width: 520px) {
  .business-metrics, .procurement-metrics { grid-template-columns: 1fr; }
}

/* Shopify store administration and binding guide */
.department-fact { align-content: center; grid-template-columns: minmax(0, 1fr) auto; column-gap: 7px; }
.department-fact > span { grid-column: 1 / -1; }
.inline-edit-button { align-self: center; padding: 0; min-height: 0; border: 0; color: #005bd3; background: transparent; font-size: 12px; font-weight: 700; cursor: pointer; }
.inline-edit-button:hover { text-decoration: underline; }
.guide-modal { width: min(900px, calc(100vw - 32px)); }
.guide-modal .modal-body { padding: 0; }
.shopify-guide { color: #303030; }
.guide-callout { margin: 20px; padding: 15px 17px; border: 1px solid #b7d7ff; border-radius: 11px; background: #eef6ff; }
.guide-callout.warning { margin: 14px 0 0; border-color: #f3c873; background: #fff8e8; }
.guide-callout strong { display: block; margin-bottom: 4px; font-size: 14px; font-weight: 750; }
.guide-callout p { margin: 0; color: #4a4a4a; font-size: 13px; line-height: 1.65; }
.guide-step { display: grid; grid-template-columns: 34px minmax(0, 1fr); gap: 14px; padding: 20px; border-top: 1px solid #e5e5e5; }
.guide-step-number { display: grid; place-items: center; width: 32px; height: 32px; border-radius: 9px; color: #fff; background: #303030; font-size: 14px; font-weight: 800; }
.guide-step h4, .guide-troubleshooting > h4 { margin: 4px 0 8px; font-size: 16px; font-weight: 780; }
.guide-step p { margin: 0 0 10px; color: #616161; font-size: 13px; line-height: 1.65; }
.guide-step ol, .guide-step ul { margin: 0; padding-left: 20px; color: #464646; font-size: 13px; line-height: 1.75; }
.guide-step li + li { margin-top: 5px; }
.copyable-setting { display: grid; grid-template-columns: minmax(0, 1fr) auto; gap: 6px 10px; margin: 9px 0; padding: 11px 12px; border: 1px solid #d8d8d8; border-radius: 9px; background: #f7f7f7; }
.copyable-setting > span { grid-column: 1 / -1; color: #616161; font-size: 11px; font-weight: 700; }
.copyable-setting code { align-self: center; overflow: hidden; color: #202223; font-size: 12px; font-weight: 650; text-overflow: ellipsis; white-space: nowrap; }
.copyable-setting button { min-height: 30px; padding: 4px 11px; border: 1px solid #c9c9c9; border-radius: 7px; color: #303030; background: #fff; font-size: 11px; font-weight: 700; }
.guide-troubleshooting { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 10px; padding: 20px; border-top: 1px solid #e5e5e5; background: #f7f7f7; }
.guide-troubleshooting > h4 { grid-column: 1 / -1; }
.guide-troubleshooting > div { padding: 13px 14px; border: 1px solid #dedede; border-radius: 9px; background: #fff; }
.guide-troubleshooting strong { display: block; margin-bottom: 4px; font-size: 13px; }
.guide-troubleshooting p { margin: 0; color: #616161; font-size: 12px; line-height: 1.6; }
.guide-footer { display: flex; align-items: center; gap: 10px; padding: 17px 20px; border-top: 1px solid #dedede; }
.guide-footer > div { margin-right: auto; }
.guide-footer strong { font-size: 13px; }
.guide-footer p { margin: 2px 0 0; color: #777; font-size: 11px; }
.guide-footer a { color: #005bd3; font-size: 12px; font-weight: 700; text-decoration: none; }
.department-move-summary { display: grid; grid-template-columns: minmax(0, 1fr) auto minmax(0, 1fr); align-items: center; gap: 12px; padding: 14px; border: 1px solid #dedede; border-radius: 10px; background: #f7f7f7; }
.department-move-summary > div { display: grid; gap: 3px; }
.department-move-summary span { color: #777; font-size: 11px; }
.department-move-summary strong { font-size: 14px; }
.department-move-summary > b { color: #8a8a8a; }
.inline-notice.warning { border-color: #f3c873; background: #fff8e8; }
.inline-notice.warning strong { display: block; margin-bottom: 4px; }
.inline-notice.warning p { margin: 0; line-height: 1.55; }
.management-scope-banner { display: grid; grid-template-columns: 38px minmax(0, 1fr); gap: 12px; align-items: center; padding: 14px 16px; border: 1px solid #b7d7ff; border-radius: 11px; background: #eef6ff; }
.management-scope-banner > span { display: grid; place-items: center; width: 36px; height: 36px; border-radius: 9px; color: #0a4595; background: #d9ebff; font-size: 15px; font-weight: 850; }
.management-scope-banner strong { display: block; color: #153b68; font-size: 14px; }
.management-scope-banner p { margin: 3px 0 0; color: #3f6082; font-size: 12px; line-height: 1.55; }
.setup-required-state { display: grid; grid-template-columns: 42px minmax(0, 1fr); gap: 13px; align-items: center; padding: 17px; border: 1px solid #f3c873; border-radius: 10px; background: #fff8e8; }
.setup-required-state > span { display: grid; place-items: center; width: 40px; height: 40px; border-radius: 9px; color: #6d4f00; background: #ffdf8a; font-size: 18px; font-weight: 850; }
.setup-required-state strong { font-size: 14px; }
.setup-required-state p { margin: 4px 0 0; color: #66572c; font-size: 12px; line-height: 1.6; }

@media (max-width: 760px) {
  .guide-troubleshooting { grid-template-columns: 1fr; }
  .guide-footer { align-items: stretch; flex-direction: column; }
  .guide-footer > div { margin-right: 0; }
  .guide-footer a, .guide-footer button { display: block; width: 100%; }
}

@media (max-width: 520px) {
  .guide-callout, .guide-step, .guide-troubleshooting, .guide-footer { margin-left: 0; margin-right: 0; padding: 15px; }
  .guide-step { grid-template-columns: 28px minmax(0, 1fr); gap: 10px; }
  .guide-step-number { width: 28px; height: 28px; }
  .copyable-setting { grid-template-columns: 1fr; }
  .copyable-setting code { white-space: normal; word-break: break-all; }
  .copyable-setting button { width: 100%; }
}

/* SKU 采购资料：表格式直接编辑 */
.file-input-hidden { display: none !important; }
.sku-filter-grid {
  display: grid;
  grid-template-columns: minmax(230px, 1.35fr) minmax(145px, .7fr) minmax(145px, .7fr) minmax(180px, .9fr);
  gap: 13px;
  align-items: end;
  margin-bottom: 12px;
}
.sku-filter-grid label {
  display: grid;
  gap: 6px;
  color: #303030;
  font-size: 12px;
  font-weight: 650;
}
.sku-filter-grid input,
.sku-filter-grid select { min-height: 39px; }
.sku-filter-grid > .multi-select-filter { align-self: end; }
.range-filter > span { display: flex; align-items: center; gap: 7px; }
.range-filter > span input { min-width: 0; width: 100%; }
.range-filter i { color: #777; font-size: 11px; font-style: normal; white-space: nowrap; }
.date-range-filter { grid-column: span 2; }
.sku-date-filter-row {
  display: grid;
  grid-template-columns: minmax(145px, .7fr) repeat(2, minmax(300px, 2fr));
  grid-column: 1 / -1;
  gap: 13px;
  align-items: end;
}
.sku-date-filter-row .date-range-filter { grid-column: auto; }
.sku-clear-filters {
  white-space: nowrap;
}
.sku-filter-summary {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
  margin: 0 0 14px;
  padding: 9px 12px;
  border-radius: 8px;
  background: #f4f6f5;
  color: #4b554f;
  font-size: 12px;
}
.sku-filter-summary strong { color: #202223; font-size: 13px; }
.sku-filter-summary small { color: #6d7772; font-size: 11px; }
.sku-filter-summary-main { display: flex; align-items: center; gap: 10px; }
.sku-table-scroll { max-height: none; }
.restricted-sku-search { display: flex; align-items: end; gap: 18px; margin-bottom: 14px; }
.restricted-sku-search .search-field { width: min(560px, 100%); }
.restricted-sku-search small { padding-bottom: 11px; color: #777; font-size: 11px; }
.restricted-sku-table-scroll { max-height: none; }
.restricted-sku-table { min-width: 820px; table-layout: fixed; }
.restricted-sku-table th:first-child { width: 52%; }
.restricted-sku-table th:not(:first-child) { width: 16%; }
.restricted-sku-result-note { margin-top: 12px; color: #6d7772; font-size: 12px; }
.sku-edit-table { min-width: 1740px; table-layout: fixed; }
.sku-edit-table th:nth-child(1) { width: 20%; }
.sku-edit-table th:nth-child(2) { width: 10%; }
.sku-edit-table th:nth-child(3) { width: 8%; }
.sku-edit-table th:nth-child(4) { width: 9%; }
.sku-edit-table th:nth-child(5) { width: 9%; }
.sku-edit-table th:nth-child(6) { width: 8%; }
.sku-edit-table th:nth-child(7) { width: 9%; }
.sku-edit-table th:nth-child(8) { width: 8%; }
.sku-edit-table th:nth-child(9) { width: 9%; }
.sku-edit-table th:nth-child(10) { width: 9%; }
.sku-edit-table th:nth-child(11) { width: 142px; }
.sku-edit-table .profit-sort-header { font-size: 12px; }
.sku-edit-table td { vertical-align: middle; }
.sku-click-edit-cell { cursor: pointer; }
.sku-click-edit-cell:hover { background: #f7f7f7; }
.sku-product-title,
.sku-store-names {
  display: block;
  max-width: 100%;
  overflow: hidden;
  color: #616161;
  font-size: 12px;
  text-overflow: ellipsis;
  white-space: nowrap;
}
.editable-sku-value,
.editable-status-button {
  width: 100%;
  min-height: 48px;
  display: grid;
  align-content: center;
  justify-items: start;
  gap: 2px;
  padding: 7px 9px;
  border: 1px solid transparent;
  border-radius: 8px;
  background: transparent;
  color: inherit;
  text-align: left;
}
.editable-sku-value:not(:disabled):hover,
.editable-status-button:not(:disabled):hover {
  border-color: #c9c9c9;
  background: #f7f7f7;
  box-shadow: 0 1px 2px rgba(0, 0, 0, .06);
}
.editable-sku-value strong { font-size: 13px; }
.editable-sku-value small { color: #8a8a8a; font-size: 10px; font-weight: 550; }
.editable-sku-value:disabled,
.editable-status-button:disabled { cursor: default; opacity: 1; }
.editable-status-button { min-height: 38px; }
.sku-shipping-value {
  display: grid;
  gap: 2px;
  min-height: 48px;
  align-content: center;
  padding: 7px 9px;
}
.sku-shipping-value strong { color: #303030; font-size: 13px; white-space: nowrap; }
.sku-shipping-value small { color: #777; font-size: 10px; font-weight: 550; }
.sku-units-sold { display: grid; gap: 2px; }
.sku-units-sold strong { color: #202223; font-size: 14px; }
.sku-units-sold small { color: #777; font-size: 10px; font-weight: 550; }
.sku-total-revenue { color: #177245; font-size: 13px; white-space: nowrap; }
.sku-inline-input,
.sku-inline-select {
  width: 100%;
  min-height: 38px;
  padding: 7px 9px;
  border: 1px solid #8a8a8a;
  border-radius: 8px;
  background: #fff;
  box-shadow: 0 0 0 2px rgba(0, 91, 211, .08);
}
.sku-inline-input:focus,
.sku-inline-select:focus { border-color: #005bd3; box-shadow: 0 0 0 2px rgba(0, 91, 211, .18); }
.inline-editing-row td { background: #f4f8ff !important; }
.sku-row-actions { display: flex; align-items: center; justify-content: flex-end; gap: 6px; }
.sku-import-report {
  display: grid;
  grid-template-columns: minmax(240px, 1fr) minmax(260px, 1.4fr) auto;
  gap: 16px;
  align-items: start;
  margin-bottom: 16px;
  padding: 14px 16px;
  border: 1px solid #b7dfc5;
  border-radius: 10px;
  background: #f0f9f3;
}
.sku-import-report.has-errors { border-color: #f0c36d; background: #fff8e8; }
.sku-import-report > div { display: grid; gap: 4px; }
.sku-import-report strong { font-size: 13px; }
.sku-import-report span { color: #616161; font-size: 11px; }
.sku-import-report ul { margin: 0; padding-left: 18px; color: #8e1f0b; font-size: 11px; }
.sku-import-report li + li { margin-top: 3px; }
.sku-loading-note { padding: 14px; color: #6d7772; font-size: 12px; text-align: center; }
.sku-pagination {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 14px;
  margin-top: 14px;
  padding-top: 13px;
  border-top: 1px solid #e1e3e2;
  color: #58615d;
  font-size: 12px;
  font-weight: 600;
}
.sku-pagination label,
.sku-pagination > div { display: flex; align-items: center; gap: 8px; }
.sku-pagination select { min-height: 34px; padding: 5px 28px 5px 9px; }
.sku-pagination > div strong { min-width: 92px; color: #303030; text-align: center; }
.task-edit-table { min-width: 1320px; table-layout: fixed; }
.task-edit-table th:nth-child(1) { width: 25%; }
.task-edit-table th:nth-child(2) { width: 14%; }
.task-edit-table th:nth-child(3) { width: 11%; }
.task-edit-table th:nth-child(4) { width: 12%; }
.task-edit-table th:nth-child(5) { width: 12%; }
.task-edit-table th:nth-child(6) { width: 10%; }
.task-edit-table th:nth-child(7) { width: 10%; }
.task-edit-table th:nth-child(8) { width: 142px; }
.task-edit-table td { vertical-align: middle; }
.task-overdue-row td { background: #fff6f3; }
.task-deadline-cell { display: grid; gap: 3px; }
.task-deadline-cell span { color: #b42318; font-size: 10px; font-weight: 700; }
.task-deadline-cell strong { color: #303030; font-size: 12px; }

.audit-table { min-width: 1180px; table-layout: fixed; }
.audit-table th:nth-child(1) { width: 118px; }
.audit-table th:nth-child(2) { width: 120px; }
.audit-table th:nth-child(3) { width: 150px; }
.audit-table th:nth-child(4) { width: 190px; }
.audit-table th:nth-child(6) { width: 122px; }
.audit-table td { vertical-align: top; }
.audit-time, .audit-ip { color: #616b66; white-space: nowrap; }
.audit-action {
  display: inline-flex;
  align-items: center;
  min-height: 26px;
  padding: 4px 9px;
  border-radius: 7px;
  background: #eaf2ff;
  color: #164e87;
  font-size: 12px;
  font-weight: 750;
}
.audit-entity { display: grid; gap: 3px; }
.audit-entity strong { overflow-wrap: anywhere; font-size: 13px; }
.audit-entity small { color: #707a74; font-size: 11px; }
.audit-details { display: grid; gap: 7px; min-width: 330px; }
.audit-details > p { margin: 1px 0; color: #4d5752; font-size: 12px; line-height: 1.55; }

.privacy-toggle {
  min-height: 32px;
  padding: 0 11px;
  border: 1px solid #5c5c5c;
  border-radius: 7px;
  color: #f4f4f4;
  background: #303030;
  font-size: 12px;
  font-weight: 700;
}
.privacy-toggle.active { color: #202223; background: #aee9d1; border-color: #5bbf97; }
.privacy-mode .privacy-sensitive,
.privacy-mode .global-user strong,
.privacy-mode .sidebar-footer strong,
.privacy-mode .identity-name-only strong,
.privacy-mode .profit-table tbody td:first-child,
.privacy-mode .sku-edit-table tbody td:first-child,
.privacy-mode .store-list strong,
.privacy-mode .organization-table tbody td:first-child,
.privacy-mode .overview-store-table tbody td:first-child,
.privacy-mode .daily-sku-line .sku-code,
.privacy-mode .daily-sku-line .sku-product-title,
.privacy-mode .sku-cell,
.privacy-mode .task-main > div:first-child,
.privacy-mode .application-row-main > div:first-child strong,
.privacy-mode .application-row-main > p,
.privacy-mode .application-row-main > small,
.privacy-mode .product-card strong,
.privacy-mode .product-detail-grid strong,
.privacy-mode .person-cell strong,
.privacy-mode .check-card strong,
.privacy-mode .assignment-section strong,
.privacy-mode .overview-hero h2 {
  filter: blur(6px);
  user-select: none;
}

.order-summary-grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 8px;
  margin-bottom: 14px;
}
.order-summary-grid > div {
  display: grid;
  gap: 5px;
  min-height: 98px;
  padding: 14px;
  border: 1px solid #e3e3e3;
  border-radius: 10px;
  background: #fafafa;
}
.order-summary-grid span { color: #616161; font-size: 11px; font-weight: 650; }
.order-summary-grid strong { color: #202223; font-size: 20px; font-weight: 760; }
.order-summary-grid small { color: #777; font-size: 10px; line-height: 1.4; }
.order-summary-grid .positive { border-color: #aee9d1; background: #f3fcf7; }
.order-summary-grid .positive strong { color: #0d6b3f; }
.order-summary-grid .danger { border-color: #fed3d1; background: #fff5f5; }
.order-summary-grid .danger strong { color: #8e1f0b; }

.order-filter-grid {
  display: grid;
  grid-template-columns: repeat(4, minmax(180px, 1fr));
  gap: 11px;
  padding: 14px;
  border: 1px solid #e3e3e3;
  background: #fafafa;
}
.order-filter-grid.order-filter-primary { grid-template-columns: minmax(230px, 2fr) repeat(3, minmax(145px, 1fr)); border-radius: 10px; }
.order-filter-grid.order-filter-primary:hover { color: inherit; background: #fafafa; box-shadow: none; }
.order-filter-grid > label,
.range-filter { display: grid; align-content: start; gap: 5px; color: #4a4a4a; font-size: 11px; font-weight: 700; }
.order-filter-grid input,
.order-filter-grid select { min-width: 0; min-height: 38px; font-size: 12px; }
.order-search { min-width: 230px; }
.order-more-filters { margin: 10px 0 15px; border: 1px solid #e3e3e3; border-radius: 10px; background: #fff; }
.order-more-filters > summary { display: flex; gap: 12px; align-items: center; padding: 12px 14px; cursor: pointer; font-size: 12px; font-weight: 750; }
.order-more-filters > summary span { color: #777; font-size: 11px; font-weight: 500; }
.order-more-filters[open] > summary { border-bottom: 1px solid #e3e3e3; }

.multi-select-filter { position: relative; min-width: 0; }
.multi-select-filter > summary {
  display: grid;
  gap: 4px;
  min-height: 38px;
  padding: 7px 30px 7px 10px;
  border: 1px solid #c9ccca;
  border-radius: 8px;
  background: #fff;
  cursor: pointer;
  list-style: none;
  overflow: hidden;
}
.multi-select-filter > summary::-webkit-details-marker { display: none; }
.multi-select-filter > summary::after { content: "⌄"; position: absolute; top: 12px; right: 10px; color: #616161; }
.multi-select-filter > summary span { color: #616161; font-size: 10px; font-weight: 650; }
.multi-select-filter > summary strong { overflow: hidden; color: #202223; font-size: 12px; text-overflow: ellipsis; white-space: nowrap; }
.multi-select-popover {
  position: absolute;
  z-index: 45;
  top: calc(100% + 5px);
  left: 0;
  width: max(260px, 100%);
  padding: 10px;
  border: 1px solid #c9ccca;
  border-radius: 10px;
  color: #202223;
  background: #fff;
  box-shadow: 0 12px 34px rgba(0, 0, 0, .14);
}
.multi-select-popover header { display: flex; justify-content: space-between; align-items: center; margin-bottom: 8px; }
.multi-select-popover header b { color: #202223; }
.multi-select-popover header span { display: flex; align-items: center; gap: 4px; }
.multi-select-popover header button { padding: 3px 6px; border: 0; color: #1a6d47; background: transparent; font-size: 11px; font-weight: 700; }
.multi-select-popover > input { width: 100%; margin-bottom: 8px; color: #202223; background: #fff; }
.multi-select-popover > input::placeholder { color: #777; opacity: 1; }
.multi-select-list { display: grid; max-height: 260px; overflow: auto; }
.multi-select-list label { display: grid; grid-template-columns: 18px minmax(0, 1fr); align-items: center; gap: 7px; min-height: 33px; padding: 4px 5px; border-radius: 6px; color: #202223; background: #fff; font-size: 12px; font-weight: 550; }
.multi-select-list label:hover { background: #f1f1f1; }
.multi-select-list input { min-height: auto; accent-color: #16876a; }
.multi-select-list span,
.multi-select-list small { overflow: hidden; color: #202223; text-overflow: ellipsis; white-space: nowrap; }
.multi-select-popover footer { padding: 7px 4px 0; color: #777; font-size: 10px; }
.range-filter > div { display: grid; grid-template-columns: 1fr auto 1fr; align-items: center; gap: 5px; }
.range-filter i { color: #777; font-style: normal; font-weight: 500; }

.order-table-wrap { border: 1px solid #e3e3e3; border-radius: 10px; }
.order-table { min-width: 880px; table-layout: fixed; }
.order-table th:first-child { width: 245px; }
.order-table th:nth-child(2) { width: 95px; }
.order-table th:nth-child(3) { width: 150px; }
.order-table th:nth-child(4) { width: 280px; }
.order-table th:nth-child(5) { width: 130px; }
.order-table td:not(:first-child), .order-table th:not(:first-child) { text-align: right; }
.order-table td:nth-child(3), .order-table th:nth-child(3),
.order-table td:nth-child(4), .order-table th:nth-child(4) { text-align: left; }
.order-table td { vertical-align: top; }
.order-table td:first-child { display: flex; gap: 8px; align-items: flex-start; }
.row-expand { flex: 0 0 auto; width: 28px; height: 28px; padding: 0; border: 1px solid #d5d7d6; border-radius: 7px; background: #fff; font-weight: 800; }
.order-identity { display: grid; gap: 3px; min-width: 0; }
.order-identity strong { overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.order-identity small, .table-subline { display: block; color: #777; font-size: 10px; line-height: 1.35; }
.order-detail-row > td { display: table-cell !important; padding: 0 !important; background: #f7faf8; }
.order-detail-grid { display: grid; grid-template-columns: 2fr 1fr 1fr 1fr; gap: 14px; padding: 15px 18px; text-align: left; }
.order-detail-grid h4 { margin: 0 0 8px; font-size: 12px; }
.order-detail-grid p { margin: 3px 0; color: #4b5550; font-size: 11px; line-height: 1.45; word-break: break-word; }
.order-line-item { display: grid; grid-template-columns: minmax(220px, 1fr) 60px 100px; gap: 8px; align-items: center; padding: 7px 0; border-top: 1px solid #e5e7e6; font-size: 11px; }
.order-line-item > span:first-child { display: grid; }
.order-line-item small { color: #777; }
.order-pagination { justify-content: flex-end; margin-top: 14px; }
.order-pagination label { display: flex; align-items: center; gap: 6px; }
.order-pagination select { min-height: 34px; }

@media (max-width: 1450px) {
  .order-summary-grid { grid-template-columns: repeat(3, minmax(0, 1fr)); }
  .order-filter-grid.order-filter-primary { grid-template-columns: repeat(3, minmax(180px, 1fr)); }
  .order-filter-grid { grid-template-columns: repeat(3, minmax(180px, 1fr)); }
}
@media (max-width: 760px) {
  .privacy-toggle { min-width: 34px; padding: 0 7px; font-size: 10px; }
  .order-summary-grid, .order-filter-grid, .order-filter-grid.order-filter-primary { grid-template-columns: 1fr; }
  .order-detail-grid { grid-template-columns: 1fr; }
}
.audit-change { display: grid; grid-template-columns: 122px minmax(210px, 1fr); gap: 10px; align-items: start; }
.audit-change > span { color: #56615b; font-size: 11px; font-weight: 700; }
.audit-change > div { display: flex; flex-wrap: wrap; align-items: center; gap: 7px; min-width: 0; }
.audit-change em, .audit-change strong { overflow-wrap: anywhere; font-size: 12px; font-style: normal; }
.audit-change em { color: #727b76; text-decoration: line-through; text-decoration-color: #b7bdb9; }
.audit-change b { color: #8b938f; font-size: 11px; }
.audit-change strong { color: #1f5638; }

.sku-pilot-stack { display: grid; gap: 16px; }
.pilot-banner {
  display: flex;
  align-items: center;
  gap: 12px;
  padding: 12px 16px;
  border: 1px solid #b8d7c5;
  border-radius: 12px;
  background: #f1faf4;
  color: #254c34;
}
.pilot-banner > span { padding: 5px 9px; border-radius: 7px; background: #166534; color: white; font-size: 11px; font-weight: 800; }
.pilot-banner strong { display: block; font-size: 13px; }
.pilot-banner p { margin: 2px 0 0; color: #56705f; font-size: 11px; }
.button-row { display: flex; flex-wrap: wrap; align-items: center; gap: 8px; }
.sku-application-form { display: grid; gap: 18px; }
.application-product-fields { display: grid; grid-template-columns: 1.1fr 1.5fr 220px; gap: 14px; }
.application-product-fields label, .application-item-grid > label, .application-toolbar label, .generated-link label, .item-image-field { display: grid; gap: 7px; color: #3f4a44; font-size: 12px; font-weight: 700; }
.application-items { display: grid; gap: 12px; }
.application-item-card { overflow: hidden; border: 1px solid #dfe4e1; border-radius: 12px; background: #fff; }
.application-item-card > header { display: flex; align-items: center; justify-content: space-between; gap: 12px; padding: 11px 14px; border-bottom: 1px solid #e8ebe9; background: #f7f8f7; }
.application-item-card > header > div:first-child { display: flex; align-items: center; gap: 9px; }
.application-item-card > header > div:first-child span { display: grid; place-items: center; width: 30px; height: 30px; border-radius: 8px; background: #e4efe8; color: #195b36; font-size: 11px; font-weight: 800; }
.application-item-layout { display: grid; grid-template-columns: 250px minmax(0, 1fr); gap: 16px; align-items: start; padding: 15px; }
.application-item-grid { display: grid; grid-template-columns: repeat(4, minmax(135px, 1fr)); gap: 14px; align-items: start; }
.application-item-grid .pod-checkbox { display: flex; min-height: 42px; align-items: center; gap: 9px; padding: 8px 10px; border: 1px solid #d8dedb; border-radius: 8px; }
.pod-checkbox input { width: 16px; height: 16px; }
.pod-checkbox span { display: grid; gap: 1px; }
.pod-checkbox small { color: #7a837e; font-size: 9px; font-weight: 500; }
.item-image-field { min-width: 0; }
.purchase-url-field { grid-column: span 2; }
.application-form-actions { display: flex; justify-content: space-between; gap: 12px; }
.image-picker { display: grid; gap: 9px; padding: 10px; border: 1px dashed #98aaa0; border-radius: 12px; background: #f8faf9; outline: none; }
.image-picker:focus { border-color: #25865a; box-shadow: 0 0 0 3px rgba(37,134,90,.12); }
.image-picker.has-image { border-style: solid; }
.image-picker-preview { overflow: hidden; width: min(100%, 420px); aspect-ratio: 1; margin: 0 auto; border-radius: 9px; background: #eef1ef; }
.image-picker.compact .image-picker-preview { width: 100%; }
.image-picker img { display: block; width: 100%; height: 100%; object-fit: cover; }
.image-picker-actions { display: flex; align-items: center; justify-content: center; gap: 8px; }
.image-picker-empty { display: grid; width: 100%; height: 100%; place-items: center; align-content: center; gap: 7px; border: 0; background: transparent; color: #2e4137; cursor: pointer; }
.image-picker-empty span { display: grid; width: 42px; height: 42px; place-items: center; border-radius: 11px; background: #def4e7; color: #12653a; font-size: 23px; }
.image-source-control { display: grid; grid-template-columns: minmax(0, 1fr) auto; gap: 7px; }
.image-source-control input { min-width: 0; }
.image-picker-rule { color: #77817b; font-size: 10px; font-weight: 500; line-height: 1.45; }
.image-link-workspace { max-width: 820px; margin: 0 auto; }
.generated-link { display: grid; grid-template-columns: 1fr auto; gap: 10px; align-items: end; margin-top: 16px; }
.import-errors { display: grid; max-height: 320px; overflow: auto; border: 1px solid #efd1cd; border-radius: 10px; }
.import-errors p { display: grid; grid-template-columns: 150px 1fr; gap: 14px; margin: 0; padding: 10px 12px; border-bottom: 1px solid #f0deda; color: #5a322d; font-size: 11px; }
.import-errors p:last-child { border-bottom: 0; }
.success-strip { padding: 12px 14px; border-radius: 9px; background: #edf9f1; color: #23633b; font-weight: 700; }
.application-toolbar { display: grid; grid-template-columns: minmax(260px, 1fr) 220px auto; gap: 12px; align-items: end; margin-bottom: 14px; }
.application-toolbar > span { padding-bottom: 10px; color: #68736d; font-size: 11px; font-weight: 700; }
.application-list { display: grid; gap: 9px; }
.application-row { display: grid; grid-template-columns: 82px minmax(300px, 1fr) auto; gap: 13px; align-items: center; padding: 11px; border: 1px solid #e0e4e2; border-radius: 11px; background: #fff; }
.application-row > img { width: 82px; height: 82px; object-fit: cover; border-radius: 9px; background: #eef1ef; }
.application-row-main { min-width: 0; }
.application-row-main > div:first-child { display: flex; align-items: center; gap: 9px; }
.application-row-main > div:first-child > strong { overflow: hidden; max-width: 560px; text-overflow: ellipsis; white-space: nowrap; font-size: 14px; }
.application-row-main p { overflow: hidden; margin: 7px 0 4px; color: #4a5650; font-family: ui-monospace, Consolas, monospace; font-size: 11px; text-overflow: ellipsis; white-space: nowrap; }
.application-row-main small { color: #737d78; font-size: 10px; }
.application-row-main blockquote { margin: 7px 0 0; padding: 6px 9px; border-left: 3px solid #d2a12c; background: #fff8e7; color: #5c4c27; font-size: 10px; }
.application-row-actions { display: flex; flex-wrap: wrap; justify-content: flex-end; gap: 7px; max-width: 330px; }
.link-button { display: inline-flex; box-sizing: border-box; align-items: center; justify-content: center; text-decoration: none; }
.status.application-review-status.pending { color: #6f4e00; background: #fff1b8; }
.status.application-review-status.approved { color: #0d5f35; background: #d8f5e5; }
.status.application-review-status.rejected { color: #9b1c12; background: #fee9e7; }
.status.application-review-status.rejected.revised { color: #004299; background: #eaf4ff; }
.reviewer-modified-badge { display: inline-flex; width: fit-content; align-items: center; padding: 4px 7px; border-radius: 999px; color: #553c9a; background: #f0ebff; font-size: 10px; font-weight: 750; white-space: nowrap; }
.review-action { min-height: 32px; padding: 0 12px; border: 1px solid transparent; border-radius: 7px; font-size: 12px; font-weight: 700; cursor: pointer; transition: background .15s ease, border-color .15s ease, color .15s ease, box-shadow .15s ease; }
.review-action:disabled { opacity: .45; cursor: not-allowed; }
.review-action-approve { border-color: #0f7b45; color: #fff; background: #0f7b45; box-shadow: 0 1px 0 rgba(13, 95, 53, .18); }
.review-action-approve:hover:not(:disabled) { border-color: #0b6639; background: #0b6639; }
.review-action-reject { border-color: #f1b8b2; color: #9b1c12; background: #fff7f6; box-shadow: none; }
.review-action-reject:hover:not(:disabled) { border-color: #e89b94; background: #fee9e7; }
.review-confirm.review-action-reject { border-color: #b42318; color: #fff; background: #b42318; box-shadow: 0 1px 0 rgba(142, 31, 11, .18); }
.review-confirm.review-action-reject:hover:not(:disabled) { border-color: #941b12; background: #941b12; }
.danger-button { min-height: 34px; padding: 0 13px; border: 1px solid #b42318; border-radius: 7px; color: #fff; background: #b42318; font-size: 12px; font-weight: 750; cursor: pointer; }
.danger-button:hover:not(:disabled) { border-color: #941b12; background: #941b12; }
.danger-button:disabled, .danger-text:disabled { opacity: .45; cursor: not-allowed; }
.delete-confirm-copy { display: grid; gap: 8px; padding: 14px; border: 1px solid #fed3d1; border-radius: 10px; color: #70251e; background: #fff5f5; }
.delete-confirm-copy p { margin: 0; font-size: 12px; line-height: 1.6; }
.trash-toolbar { display: grid; grid-template-columns: minmax(260px, 1fr) auto; gap: 12px; align-items: end; margin-bottom: 14px; }
.trash-toolbar > span { padding-bottom: 10px; color: #68736d; font-size: 11px; font-weight: 700; }
.trash-list { display: grid; gap: 9px; }
.trash-row { display: grid; grid-template-columns: 72px minmax(0, 1fr) auto; gap: 12px; align-items: center; padding: 10px; border: 1px solid #e0e4e2; border-radius: 10px; background: #fff; }
.trash-row > img { width: 72px; height: 72px; object-fit: cover; border-radius: 8px; background: #eef1ef; filter: saturate(.7); }
.trash-row > div:nth-child(2) { min-width: 0; }
.trash-row strong { font-size: 13px; }
.trash-row p { overflow: hidden; margin: 7px 0 4px; color: #4a5650; font-family: ui-monospace, Consolas, monospace; font-size: 10px; text-overflow: ellipsis; white-space: nowrap; }
.trash-row small { color: #737d78; font-size: 10px; }
.trash-row > div:last-child { display: flex; align-items: center; gap: 8px; }
.application-detail-summary { display: grid; grid-template-columns: repeat(4, minmax(150px, 1fr)); gap: 10px; margin-bottom: 14px; }
.application-detail-summary > div { display: grid; gap: 6px; padding: 11px 12px; border: 1px solid #e1e4e2; border-radius: 9px; background: #fafbfa; }
.application-detail-summary span { color: #6b7470; font-size: 10px; font-weight: 650; }
.application-detail-summary strong { display: flex; flex-wrap: wrap; align-items: center; gap: 6px; color: #202223; font-size: 12px; }
.application-detail-feedback { margin: 0 0 14px; padding: 10px 12px; border-left: 3px solid #d2a12c; border-radius: 0 8px 8px 0; color: #5c4c27; background: #fff8e7; font-size: 11px; }
.danger-text { border: 0; background: transparent; color: #b42318; font-size: 11px; font-weight: 700; cursor: pointer; }
.wide-modal { width: min(1180px, calc(100vw - 40px)); }
.wide-modal .modal-body { max-height: calc(100vh - 150px); overflow: auto; }
.product-library-toolbar { display: grid; grid-template-columns: minmax(240px, 1fr) 150px minmax(360px, 1.2fr) auto; gap: 12px; align-items: end; margin-bottom: 16px; }
.product-library-toolbar label { display: grid; gap: 7px; color: #3f4a44; font-size: 12px; font-weight: 700; }
.product-library-toolbar > span { padding-bottom: 10px; color: #68736d; font-size: 11px; font-weight: 700; }
.product-date-range span { display: grid; grid-template-columns: 1fr auto 1fr; align-items: center; gap: 7px; }
.product-date-range i { color: #737d78; font-size: 11px; font-style: normal; }
.product-library-grid { display: grid; grid-template-columns: repeat(6, minmax(0, 1fr)); gap: 14px; }
.product-card { overflow: hidden; padding: 0; border: 1px solid #dde2df; border-radius: 13px; background: #fff; text-align: left; cursor: pointer; transition: transform .15s ease, box-shadow .15s ease; }
.product-card:hover { transform: translateY(-2px); box-shadow: 0 8px 22px rgba(25,43,33,.1); }
.product-card > img { display: block; width: 100%; aspect-ratio: 1; object-fit: cover; background: #eef1ef; }
.product-card > div { display: grid; gap: 5px; padding: 12px; }
.product-card strong { overflow: hidden; text-overflow: ellipsis; white-space: nowrap; color: #202b25; font-size: 13px; }
.product-card span { color: #164f32; font-size: 14px; font-weight: 800; }
.product-card small { color: #76807a; font-size: 10px; }
.product-detail-grid { display: grid; grid-template-columns: repeat(auto-fill, minmax(250px, 1fr)); gap: 12px; }
.product-detail-grid article { overflow: hidden; border: 1px solid #dfe4e1; border-radius: 11px; }
.product-detail-grid img { display: block; width: 100%; aspect-ratio: 1; object-fit: cover; background: #eef1ef; }
.product-detail-grid article > div { padding: 11px; }
.product-detail-grid strong { margin-right: 7px; font-family: ui-monospace, Consolas, monospace; font-size: 12px; }
.product-detail-grid p { margin: 6px 0; color: #56615b; font-size: 11px; }
.product-detail-grid a { color: #087443; font-size: 11px; font-weight: 700; }
.mini-badge { padding: 2px 5px; border-radius: 5px; background: #e2f0ff; color: #155b93; font-size: 9px; font-weight: 800; }
.product-library-pagination { display: flex; align-items: center; justify-content: space-between; gap: 12px; margin-top: 16px; color: #68736d; font-size: 11px; font-weight: 700; }
.product-library-pagination > div { display: flex; gap: 8px; }

.table-scroll-shell { min-width: 0; }
.table-scroll-top { display: none; overflow-x: auto; overflow-y: hidden; height: 14px; margin-bottom: 5px; }
.table-scroll-top.visible { display: block; }
.table-scroll-top > div { height: 1px; }

@media (max-width: 1100px) {
  .application-product-fields, .application-item-grid { grid-template-columns: 1fr 1fr; }
  .application-item-layout { grid-template-columns: 220px minmax(0, 1fr); }
  .purchase-url-field { grid-column: 1 / -1; }
  .product-library-grid { grid-template-columns: repeat(4, minmax(0, 1fr)); }
  .product-library-toolbar { grid-template-columns: 1fr 150px; }
  .product-date-range { grid-column: 1 / -1; }
  .application-row { grid-template-columns: 70px 1fr; }
  .application-row > img { width: 70px; height: 70px; }
  .application-row-actions { grid-column: 1 / -1; justify-content: flex-start; max-width: none; }
}

@media (max-width: 700px) {
  .application-product-fields, .application-item-grid, .application-toolbar, .generated-link, .trash-toolbar { grid-template-columns: 1fr; }
  .application-item-layout { grid-template-columns: 1fr; }
  .image-source-control { grid-template-columns: 1fr; }
  .application-form-actions { flex-direction: column; }
  .product-library-grid { grid-template-columns: 1fr 1fr; }
  .product-library-toolbar { grid-template-columns: 1fr; }
  .product-date-range { grid-column: auto; }
  .application-detail-summary { grid-template-columns: 1fr; }
  .trash-row { grid-template-columns: 58px minmax(0, 1fr); }
  .trash-row > img { width: 58px; height: 58px; }
  .trash-row > div:last-child { grid-column: 1 / -1; }
}
.pending-cost { color: #b54708; font-weight: 750; }
.profit-cost-pending { display: inline-grid; justify-items: end; gap: 2px; }
.profit-cost-pending small { color: #b54708; font-size: 9px; font-weight: 700; white-space: nowrap; }

@media (max-width: 860px) {
  .sku-filter-grid { grid-template-columns: 1fr; }
  .date-range-filter { grid-column: auto; }
  .sku-date-filter-row { grid-template-columns: 1fr; }
  .sku-filter-summary,
  .sku-pagination { align-items: stretch; flex-direction: column; }
  .sku-import-report { grid-template-columns: 1fr; }
  .sku-table-scroll { max-height: none; }
}
.server-status-panel .panel-body {
  display: grid;
  gap: 18px;
}

.server-health-strip {
  display: flex;
  align-items: center;
  gap: 12px;
  padding: 14px 16px;
  border: 1px solid #b8e5cb;
  border-radius: 12px;
  background: #f0fbf5;
}

.server-health-strip.attention {
  border-color: #f1d18a;
  background: #fff9e9;
}

.server-health-dot {
  width: 11px;
  height: 11px;
  flex: 0 0 auto;
  border-radius: 50%;
  background: #109456;
  box-shadow: 0 0 0 5px rgba(16, 148, 86, .1);
}

.server-health-strip.attention .server-health-dot {
  background: #c07a00;
  box-shadow: 0 0 0 5px rgba(192, 122, 0, .1);
}

.server-health-strip > div {
  display: grid;
  gap: 3px;
  min-width: 0;
}

.server-health-strip small,
.server-section-heading p,
.server-project-head small,
.server-metric small,
.server-docker-summary small {
  color: var(--muted);
}

.server-health-strip > b {
  margin-left: auto;
  white-space: nowrap;
  color: #0d7846;
}

.server-health-strip.attention > b {
  color: #9a6200;
}

.server-snapshot-warning,
.server-refresh-warning {
  padding: 11px 14px;
  border: 1px solid #f0cf83;
  border-radius: 9px;
  background: #fff9e8;
  color: #795311;
}

.server-status-metrics {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 12px;
}

.server-metric {
  display: grid;
  gap: 7px;
  min-width: 0;
  padding: 16px;
  border: 1px solid var(--line);
  border-radius: 12px;
  background: #fff;
}

.server-metric > span,
.server-project-stats span,
.server-storage-breakdown {
  color: var(--muted);
  font-size: 12px;
}

.server-metric > strong {
  overflow-wrap: anywhere;
  font-size: 20px;
}

.server-meter {
  height: 6px;
  overflow: hidden;
  border-radius: 999px;
  background: #edf0ee;
}

.server-meter > i {
  display: block;
  height: 100%;
  border-radius: inherit;
  background: #15915a;
}

.server-section {
  display: grid;
  gap: 12px;
}

.server-section-heading {
  display: flex;
  align-items: flex-end;
  justify-content: space-between;
  gap: 16px;
}

.server-section-heading h3,
.server-section-heading p {
  margin: 0;
}

.server-section-heading p {
  margin-top: 4px;
  font-size: 12px;
}

.server-section-heading > span {
  white-space: nowrap;
  color: var(--muted);
}

.server-project-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 12px;
}

.server-project-card {
  min-width: 0;
  overflow: hidden;
  border: 1px solid var(--line);
  border-radius: 12px;
  background: #fff;
}

.server-project-card.status-stopped,
.server-project-card.status-attention {
  border-color: #efc97c;
}

.server-project-head {
  display: flex;
  align-items: center;
  gap: 12px;
  padding: 14px 15px;
  border-bottom: 1px solid var(--line);
}

.server-project-head > div {
  display: grid;
  gap: 3px;
  min-width: 0;
}

.server-project-head > span {
  margin-left: auto;
  padding: 4px 8px;
  border-radius: 999px;
  background: #e8f7ef;
  color: #087344;
  font-size: 12px;
  font-weight: 700;
  white-space: nowrap;
}

.status-stopped .server-project-head > span,
.status-attention .server-project-head > span {
  background: #fff2d7;
  color: #9c6100;
}

.server-project-stats {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 10px;
  padding: 14px 15px 10px;
}

.server-project-stats > div {
  display: grid;
  gap: 4px;
  min-width: 0;
}

.server-project-stats b {
  overflow-wrap: anywhere;
}

.server-project-card > .server-meter {
  margin: 0 15px 11px;
}

.server-storage-breakdown {
  display: flex;
  flex-wrap: wrap;
  gap: 7px 14px;
  padding: 0 15px 13px;
}

.server-container-list {
  border-top: 1px solid var(--line);
}

.server-container-list details + details {
  border-top: 1px solid var(--line);
}

.server-container-list summary {
  display: flex;
  align-items: center;
  gap: 10px;
  padding: 11px 15px;
  cursor: pointer;
  list-style: none;
}

.server-container-list summary::-webkit-details-marker {
  display: none;
}

.server-container-list summary > span {
  display: grid;
  grid-template-columns: auto 1fr;
  align-items: center;
  min-width: 0;
}

.server-container-list summary i {
  width: 8px;
  height: 8px;
  margin-right: 8px;
  border-radius: 50%;
  background: #129255;
}

.server-container-list details.stopped summary i {
  background: #c27b00;
}

.server-container-list summary b,
.server-container-list summary small {
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.server-container-list summary small {
  grid-column: 2;
  color: var(--muted);
}

.server-container-list summary em {
  margin-left: auto;
  color: #16734b;
  font-size: 12px;
  font-style: normal;
  white-space: nowrap;
}

.server-container-list details.stopped summary em {
  color: #9c6100;
}

.server-container-list dl,
.server-status-details dl {
  margin: 0;
}

.server-container-list dl {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 8px 18px;
  padding: 0 15px 14px 31px;
}

.server-container-list dl > div,
.server-status-details dl > div {
  display: flex;
  justify-content: space-between;
  gap: 12px;
  min-width: 0;
}

.server-container-list dt,
.server-status-details dt {
  color: var(--muted);
}

.server-container-list dd,
.server-status-details dd {
  margin: 0;
  overflow-wrap: anywhere;
  text-align: right;
}

.server-docker-summary {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 10px;
}

.server-docker-summary > div {
  display: grid;
  gap: 5px;
  min-width: 0;
  padding: 13px;
  border: 1px solid var(--line);
  border-radius: 10px;
  background: #fafbfa;
}

.server-docker-summary strong {
  font-size: 18px;
}

.server-status-details {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 12px;
}

.server-status-details > section {
  padding: 15px;
  border: 1px solid var(--line);
  border-radius: 12px;
}

.server-status-details h3 {
  margin: 0 0 12px;
}

.server-status-details dl {
  display: grid;
  gap: 9px;
}

@media (max-width: 1100px) {
  .server-status-metrics,
  .server-docker-summary {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .server-project-grid {
    grid-template-columns: 1fr;
  }
}

@media (max-width: 680px) {
  .server-status-metrics,
  .server-docker-summary,
  .server-status-details {
    grid-template-columns: 1fr;
  }

  .server-project-stats {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .server-container-list dl {
    grid-template-columns: 1fr;
  }
}

.management-report-page {
  display: grid;
  gap: 12px;
}

.management-report-toolbar,
.management-overview-card,
.management-config-card,
.management-store-card,
.management-unattributed-card {
  background: #fff;
  border: 1px solid var(--line);
  border-radius: 12px;
}

.management-report-toolbar {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 16px;
  padding: 15px 18px;
}

.management-report-toolbar h2,
.management-config-card h3,
.management-store-card h3 {
  margin: 0;
}

.management-report-toolbar h2 {
  font-size: 18px;
}

.management-report-toolbar p,
.management-config-card p,
.management-store-card header p {
  margin: 3px 0 0;
  color: var(--muted);
  font-size: 12px;
}

.management-report-actions {
  display: flex;
  align-items: end;
  gap: 10px;
}

.management-report-actions label,
.management-config-grid label,
.management-currency-grid label,
.management-bill-row label {
  display: grid;
  gap: 6px;
  color: var(--muted);
  font-size: 12px;
  font-weight: 700;
}

.management-report-actions select,
.management-config-grid select,
.management-config-grid input,
.management-currency-grid input,
.management-bill-row input {
  min-height: 38px;
  border: 1px solid #cfd4d1;
  border-radius: 9px;
  background: #fff;
  padding: 0 11px;
  color: var(--ink);
}

.management-report-actions button,
.management-config-grid > button,
.management-currency-grid > button,
.management-store-tools button {
  min-height: 38px;
  border-radius: 9px;
  padding: 0 14px;
  font-weight: 800;
}

.management-report-actions .danger-outline {
  border: 1px solid #d7b6b1;
  background: #fff;
  color: #8f2f26;
}

.airwallex-summary {
  margin-bottom: 18px;
  grid-template-columns: repeat(4, minmax(0, 1fr));
}

.setting-list {
  display: grid;
  gap: 10px;
}

.setting-row {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 18px;
  padding: 14px 16px;
  border: 1px solid var(--line);
  border-radius: 12px;
}

.setting-row > div:first-child {
  display: grid;
  gap: 3px;
}

.setting-row span,
.setting-row small {
  color: var(--muted);
}

.airwallex-account-actions { flex-wrap: wrap; }
.airwallex-account-actions .primary,
.airwallex-account-actions .secondary,
.airwallex-account-actions .danger-text {
  min-height: 34px;
  padding: 0 12px;
  border-radius: 7px;
  font-size: 12px;
  font-weight: 700;
}
.airwallex-account-actions .danger-text {
  border: 1px solid #fed3d1;
  color: #8e1f0b;
  background: #fff5f5;
}
.airwallex-account-actions .danger-text:hover { background: #fee4e2; }

.modal-form {
  display: grid;
  gap: 14px;
}

.modal-form label {
  display: grid;
  gap: 6px;
  font-weight: 700;
}

@media (max-width: 900px) {
  .airwallex-summary { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .setting-row { align-items: flex-start; flex-direction: column; }
}

.management-overview-card {
  overflow: hidden;
}

.management-summary-grid {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(170px, 1fr));
  gap: 1px;
  background: var(--line);
}

.management-summary-grid article {
  display: grid;
  gap: 5px;
  min-width: 0;
  padding: 15px 14px;
  background: #fff;
}

.management-summary-grid span {
  color: var(--muted);
  font-size: 12px;
}

.management-summary-grid strong {
  overflow: hidden;
  font-size: 18px;
  text-overflow: ellipsis;
}

.management-summary-grid small {
  color: #7b827e;
  font-size: 10px;
}

.management-summary-grid .highlight {
  background: #f4f8f6;
}

.management-summary-grid .highlight strong {
  color: #12623a;
}

.management-summary-grid .informational {
  background: #f7f5fb;
}

.management-summary-grid .informational strong,
.management-informational-value {
  color: #65507e;
}

.management-publication {
  display: flex;
  align-items: center;
  gap: 9px;
  padding: 10px 16px;
  border-top: 1px solid var(--line);
  color: var(--muted);
  font-size: 12px;
}

.management-publication.published {
  color: #38664c;
}

.management-publication strong {
  padding: 3px 8px;
  border-radius: 999px;
  background: #f0f1f0;
  color: #4c514e;
  font-size: 12px;
}

.management-publication.published strong {
  background: #eaf5ee;
  color: #226940;
}

.management-blockers {
  display: flex;
  flex-wrap: wrap;
  gap: 6px;
  padding: 0 16px 12px;
}

.management-blockers span {
  display: inline-flex;
  align-items: center;
  gap: 6px;
  padding: 5px 8px;
  border-radius: 7px;
  background: #f5f6f5;
  color: #5b615e;
  font-size: 11px;
}

.management-blockers b {
  color: #8a4f20;
}

.management-config-card {
  padding: 15px 16px 16px;
}

.management-collapsible { border:1px solid var(--line); border-radius:12px; background:#fff; }
.management-collapsible > summary { display:flex; align-items:center; justify-content:space-between; gap:16px; cursor:pointer; list-style:none; }
.management-collapsible > summary::-webkit-details-marker { display:none; }
.management-collapsible > summary h3 { margin:0 0 4px; }
.management-collapsible > summary p { margin:0; color:var(--muted); font-size:12px; }
.management-collapsible > summary > span { flex:none; border-radius:999px; padding:5px 9px; background:#edf4ef; color:#356a4d; font-size:11px; font-weight:800; }
.management-collapsible[open] > summary { padding-bottom:13px; border-bottom:1px solid var(--line); }
.management-collapsible-body { padding-top:3px; }
.management-config-note { margin:12px 0 0; color:var(--muted); font-size:11px; }

.management-section-heading {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 14px;
}

.management-config-grid {
  display: grid;
  grid-template-columns: 1.1fr repeat(3, minmax(125px, .8fr)) 1.2fr auto;
  align-items: end;
  gap: 10px;
  margin-top: 12px;
}

.management-config-grid .multi-select-filter > summary {
  min-height: 38px;
}

.management-config-grid > button {
  white-space: nowrap;
}

.management-currency-grid {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(190px, 1fr));
  align-items: end;
  gap: 10px;
  margin-top: 12px;
}

.management-currency-grid > button {
  min-height: 38px;
  white-space: nowrap;
}

.management-store-card {
  overflow: hidden;
}

.management-unattributed-card {
  overflow: hidden;
  border-color: #e1d7c7;
  background: #fffcf7;
}

.management-unattributed-card > header {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 16px;
  padding: 13px 16px;
  border-bottom: 1px solid #e9dfd0;
}

.management-unattributed-card h3,
.management-unattributed-card p {
  margin: 0;
}

.management-unattributed-card p {
  margin-top: 3px;
  color: #756958;
  font-size: 12px;
}

.management-unattributed-card > header > span {
  flex: none;
  border-radius: 999px;
  background: #f5ead8;
  padding: 4px 9px;
  color: #76582e;
  font-size: 11px;
  font-weight: 800;
}

.management-unattributed-table-wrap {
  overflow-x: auto;
}

.management-unattributed-table-wrap table {
  width: 100%;
  border-collapse: collapse;
}

.management-unattributed-table-wrap th,
.management-unattributed-table-wrap td {
  padding: 10px 16px;
  border-bottom: 1px solid #eee5d8;
  text-align: right;
  vertical-align: top;
}

.management-unattributed-table-wrap th:first-child,
.management-unattributed-table-wrap td:first-child {
  text-align: left;
}

.management-unattributed-table-wrap th {
  color: #756958;
  font-size: 11px;
}

.management-unattributed-table-wrap td small {
  display: block;
  margin-top: 3px;
  color: #8a7e6c;
  font-size: 10px;
}

.management-store-card > header {
  min-height: 62px;
  padding: 13px 16px;
  border-bottom: 1px solid var(--line);
}

.management-store-tools {
  display: flex;
  align-items: center;
  gap: 8px;
}

.management-store-tools input {
  width: 190px;
  min-height: 38px;
  border: 1px solid #cfd4d1;
  border-radius: 9px;
  padding: 0 11px;
}

.management-store-table-wrap {
  overflow-x: auto;
}

.management-store-table {
  width: 100%;
  min-width: 1880px;
  border-collapse: collapse;
}

.management-store-table th,
.management-store-table td {
  padding: 10px 12px;
  border-bottom: 1px solid var(--line);
  text-align: right;
  vertical-align: top;
  white-space: nowrap;
}

.management-store-table th {
  background: #fafbfa;
  color: var(--muted);
  font-size: 11px;
  font-weight: 700;
}

.management-store-table th:nth-child(2),
.management-store-table td:nth-child(2) {
  text-align: left;
}

.management-store-table tbody > tr:not(.management-store-detail):hover,
.management-store-table tbody > tr.expanded {
  background: #fafcfb;
}

.management-store-table td > small {
  display: block;
  margin-top: 3px;
  color: var(--muted);
  font-size: 10px;
}

.management-store-table td input {
  width: 145px;
  min-height: 34px;
  border: 1px solid #cfd4d1;
  border-radius: 8px;
  padding: 0 9px;
  text-align: right;
}

.management-expand {
  display: grid;
  place-items: center;
  width: 28px;
  height: 28px;
  border: 1px solid #d9ddda;
  border-radius: 7px;
  background: #fff;
  color: #4f5652;
  font-weight: 800;
}

.management-final-value {
  color: #17663c;
  font-weight: 800;
}

.management-missing,
.management-ready {
  display: inline-flex;
  padding: 3px 7px;
  border-radius: 999px;
  background: #f5f1ed;
  color: #7b5638;
  font-size: 10px;
  font-weight: 700;
}

.management-ready {
  background: #eef5f0;
  color: #3b694e;
}

.management-store-detail > td {
  padding: 0;
  background: #fbfcfb;
}

.management-empty-row {
  height: 90px;
  color: var(--muted);
  text-align: center !important;
}

.management-method-table-wrap {
  overflow-x: auto;
}

.management-method-table {
  width: 100%;
  min-width: 1540px;
  border-collapse: collapse;
}

.management-method-table th,
.management-method-table td {
  padding: 10px 14px;
  border-top: 1px solid var(--line);
  text-align: right;
  vertical-align: top;
  white-space: nowrap;
}

.management-method-table th:first-child,
.management-method-table td:first-child {
  text-align: left;
}

.management-method-table th {
  background: #f6f8f7;
  color: var(--muted);
  font-size: 12px;
}

.management-method-table td small {
  display: block;
  margin-top: 3px;
  color: var(--muted);
  font-size: 11px;
}

.management-method-table td:first-child small {
  display: inline-block;
  margin: 0 0 0 7px;
  border-radius: 999px;
  background: #f5f1ed;
  padding: 2px 6px;
  color: #7b5638;
}

.management-fee-breakdown {
  min-width: 145px;
  margin-top: 5px;
  white-space: normal;
  text-align: left;
}

.management-fee-breakdown > summary {
  cursor: pointer;
  color: #557061;
  font-size: 10px;
  font-weight: 700;
}

.management-fee-breakdown > div {
  display: grid;
  gap: 4px;
  min-width: 245px;
  margin-top: 6px;
}

.management-fee-breakdown span {
  display: flex;
  justify-content: space-between;
  gap: 12px;
  border-top: 1px dashed var(--line);
  padding-top: 4px;
  color: var(--muted);
  font-size: 11px;
}

.management-fee-breakdown b {
  color: var(--ink);
  font-weight: 600;
}

.management-fee-breakdown em {
  font-style: normal;
}

@media (max-width: 1350px) {
  .management-summary-grid {
    grid-template-columns: repeat(auto-fit, minmax(155px, 1fr));
  }

  .management-config-grid {
    grid-template-columns: repeat(3, minmax(180px, 1fr));
  }
}

@media (max-width: 720px) {
  .management-report-toolbar,
  .management-report-actions,
  .management-section-heading,
  .management-store-tools {
    align-items: stretch;
    flex-direction: column;
  }

  .management-summary-grid,
  .management-config-grid {
    grid-template-columns: 1fr;
  }

  .management-summary-grid article {
    min-height: 74px;
  }

  .management-store-tools input {
    width: 100%;
  }
}

.payment-center { gap: 16px; }
.payment-tabs { display:flex; align-items:center; gap:5px; padding:6px; border:1px solid var(--line); border-radius:13px; background:#fff; box-shadow:0 3px 16px rgba(20,39,30,.04); }
.payment-tabs > button:not(.payment-sync-all) { min-height:38px; padding:0 16px; border:0; border-radius:9px; background:transparent; color:var(--muted); font-weight:700; }
.payment-tabs > button.active { background:#edf5f0; color:#1f613e; }
.payment-tabs .payment-sync-all { margin-left:auto; }
.payment-hero { display:flex; align-items:center; justify-content:space-between; gap:28px; padding:28px 30px; border-radius:17px; background:linear-gradient(125deg,#173d2b,#245f42 65%,#34734f); color:#fff; box-shadow:0 12px 35px rgba(25,78,50,.18); }
.payment-hero > div:first-child { max-width:780px; }
.payment-hero span { color:#b9dbc8; font-size:12px; font-weight:800; letter-spacing:.08em; }
.payment-hero h2 { margin:7px 0 8px; font-size:24px; }
.payment-hero p { margin:0; color:#d6e7dc; line-height:1.7; }
.payment-hero-state { display:grid; grid-template-columns:auto 1fr; align-items:center; min-width:220px; gap:2px 9px; padding:14px 17px; border:1px solid rgba(255,255,255,.18); border-radius:12px; background:rgba(255,255,255,.08); }
.payment-hero-state i { grid-row:1/3; width:10px; height:10px; border-radius:50%; background:#75e29f; box-shadow:0 0 0 5px rgba(117,226,159,.13); }
.payment-hero-state small { color:#bdd5c6; }
.payment-provider-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:14px; }
.payment-provider-grid > article { display:grid; gap:18px; padding:20px; border:1px solid var(--line); border-radius:14px; background:#fff; box-shadow:0 4px 20px rgba(26,45,36,.04); }
.payment-provider-grid header { display:flex; align-items:center; gap:12px; }
.payment-provider-grid h3 { margin:0 0 3px; }
.payment-provider-grid small { color:var(--muted); }
.provider-mark { display:grid; place-items:center; width:42px; height:42px; border-radius:11px; background:#ebf5ef; color:#226443; font-weight:900; }
.provider-mark.payoneer { background:#eef2fa; color:#36598c; }
.provider-mark.paypal { background:#eaf1fb; color:#174f8b; }
.payment-provider-grid dl { display:grid; grid-template-columns:repeat(3,1fr); margin:0; }
.payment-provider-grid dl > div { display:grid; gap:4px; padding-right:10px; border-right:1px solid var(--line); }
.payment-provider-grid dl > div:not(:first-child) { padding-left:12px; }
.payment-provider-grid dl > div:last-child { border:0; }
.payment-provider-grid dt { color:var(--muted); font-size:11px; }
.payment-provider-grid dd { margin:0; font-size:19px; font-weight:800; }
.payment-provider-grid dd.attention { color:#9b581f; }
.payment-provider-grid .text-button { justify-self:start; }
.payment-capability-grid { display:grid; grid-template-columns:repeat(3,1fr); }
.payment-capability-grid article { display:grid; gap:7px; padding:6px 24px 8px; border-right:1px solid var(--line); }
.payment-capability-grid article:last-child { border:0; }
.payment-capability-grid b { color:#4c8565; font-size:12px; }
.payment-capability-grid span { color:var(--muted); font-size:12px; line-height:1.55; }
.payment-account-groups { display:grid; grid-template-columns:1fr 1fr; gap:20px; }
.payment-account-groups > section { overflow:hidden; border:1px solid var(--line); border-radius:12px; }
.payment-account-groups > section > header { display:flex; align-items:center; justify-content:space-between; padding:14px 16px; border-bottom:1px solid var(--line); background:#fafbfa; }
.payment-account-groups h3 { margin:0; }
.payment-account-groups header > span { border-radius:999px; padding:4px 8px; background:#edf4ef; color:#356a4d; font-size:10px; font-weight:800; }
.payment-account-groups article { display:flex; align-items:center; justify-content:space-between; gap:14px; padding:16px; border-bottom:1px solid var(--line); }
.payment-account-groups article:last-child { border:0; }
.payment-account-groups article > div:first-child { display:grid; min-width:0; gap:4px; }
.payment-account-groups article span,.payment-account-groups article small { overflow:hidden; color:var(--muted); font-size:11px; text-overflow:ellipsis; }
.store-order-field { display:grid; gap:7px; margin:0; border:1px solid var(--line); border-radius:10px; padding:12px; }
.store-order-field legend { padding:0 5px; color:var(--muted); font-size:12px; font-weight:700; }
.store-order-field > div { display:flex; align-items:center; justify-content:space-between; min-height:38px; padding:0 10px; border-radius:8px; background:#f7f9f8; }
.store-order-field > div span { display:flex; align-items:center; gap:8px; }
.store-order-field > div b { display:grid; place-items:center; width:21px; height:21px; border-radius:50%; background:#dfece4; color:#2d6747; font-size:11px; }
.store-order-field em { border-radius:999px; padding:2px 6px; background:#e4f2e9; color:#286143; font-size:10px; font-style:normal; }
.store-order-field select { min-height:40px; }
.dispute-summary { display:flex; gap:10px; overflow:auto; padding-bottom:14px; }
.dispute-summary article { display:grid; min-width:175px; gap:3px; padding:13px 15px; border:1px solid var(--line); border-radius:10px; background:#fafbfa; }
.dispute-summary span,.dispute-summary small { color:var(--muted); font-size:11px; }
.dispute-summary strong { font-size:20px; color:#75502d; }
.dispute-fee-coverage { display:flex; align-items:center; flex-wrap:wrap; gap:8px 16px; margin:-4px 0 14px; padding:11px 13px; border:1px solid var(--line); border-radius:9px; background:#f7faf8; }
.dispute-fee-coverage > strong { color:var(--text); font-size:12px; }
.dispute-fee-coverage > span { color:var(--muted); font-size:12px; }
.dispute-fee-coverage > span b { color:var(--text); }
.dispute-fee-coverage > small { flex-basis:100%; color:var(--muted); font-size:11px; }
.dispute-filters { display:grid; grid-template-columns:minmax(250px,1.6fr) repeat(3,minmax(145px,.7fr)) auto; gap:8px; margin-bottom:14px; }
.dispute-filters input,.dispute-filters select { min-height:39px; border:1px solid #cfd4d1; border-radius:9px; padding:0 10px; background:#fff; }
.dispute-advanced { margin:-4px 0 14px; border:1px solid var(--line); border-radius:9px; background:#fafbfa; }
.dispute-advanced > summary { padding:10px 12px; color:var(--muted); cursor:pointer; font-size:12px; font-weight:700; }
.dispute-advanced-filters { display:grid; grid-template-columns:repeat(4,minmax(145px,1fr)); gap:9px; padding:0 12px 12px; }
.dispute-advanced-filters label { display:grid; gap:4px; color:var(--muted); font-size:10px; }
.dispute-advanced-filters input,.dispute-advanced-filters select { min-height:38px; border:1px solid #cfd4d1; border-radius:8px; padding:0 9px; background:#fff; }
.clickable-row { cursor:pointer; }
.clickable-row:hover { background:#f7faf8; }
.dispute-fee-cell em { display:block; margin-top:3px; color:#477058; font-size:10px; font-style:normal; }
.dispute-fee-cell.pending strong { color:#8a602b; }
.dispute-fee-cell.not_reported strong { color:var(--muted); }
.dispute-detail-grid { display:grid; grid-template-columns:repeat(4,1fr); gap:10px; margin-bottom:15px; }
.dispute-detail-grid > div { display:grid; gap:5px; padding:12px; border-radius:9px; background:#f6f8f7; }
.dispute-detail-grid span { color:var(--muted); font-size:11px; }

@media (max-width: 1050px) {
  .payment-provider-grid,.payment-account-groups { grid-template-columns:1fr; }
  .payment-capability-grid { grid-template-columns:1fr; }
  .payment-capability-grid article { border-right:0; border-bottom:1px solid var(--line); padding:14px 4px; }
  .dispute-filters { grid-template-columns:1fr 1fr; }
}
@media (max-width: 720px) {
  .payment-tabs { overflow-x:auto; }
  .payment-tabs .payment-sync-all { margin-left:10px; }
  .payment-hero { align-items:flex-start; flex-direction:column; padding:22px; }
  .payment-hero-state { width:100%; }
  .dispute-filters,.dispute-detail-grid,.dispute-advanced-filters { grid-template-columns:1fr; }
  .payment-account-groups article { align-items:flex-start; flex-direction:column; }
}
