:root {
  color-scheme: light;
  --bg: #f2f5f7;
  --panel: #ffffff;
  --ink: #16212e;
  --muted: #64748b;
  --line: #e2e8ee;
  --nav: #101d2c;
  --blue: #2569b3;
  --blue-deep: #174e89;
  --blue-soft: #edf4fb;
  --teal: #0e8a72;
  --teal-deep: #085c4c;
  --teal-bright: #17b392;
  --teal-soft: #e7f4ef;
  --violet: #6d4fc4;
  --violet-deep: #4f3596;
  --violet-soft: #f1edfa;
  --amber: #c07e12;
  --amber-deep: #8f5d06;
  --amber-soft: #faf3e3;
  --red: #c74228;
  --red-deep: #9c3018;
  --red-soft: #faece8;
  --green: #16a34a;
  --steel: #334155;
  --surface: #f8fafc;
  --radius-lg: 16px;
  --radius-md: 12px;
  --radius-sm: 10px;
  --shadow-card: 0 1px 2px rgba(22, 31, 39, .04), 0 10px 26px rgba(22, 31, 39, .05);
  --shadow-float: 0 6px 16px rgba(22, 31, 39, .08), 0 24px 48px rgba(22, 31, 39, .1);
}

.finance-ledger-filter-grid {
  display: grid;
  grid-template-columns: minmax(180px, 1.4fr) repeat(6, minmax(128px, 1fr)) auto;
  gap: 12px;
  align-items: end;
}
.finance-integrity {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 18px;
  margin: 0 0 16px;
  padding: 16px 18px;
  border: 1px solid #bbf7d0;
  border-radius: 10px;
  background: #f0fdf4;
  color: #166534;
}
.finance-integrity.warning { border-color: #fecaca; background: #fef2f2; color: #b42318; }
.finance-integrity div { display: grid; gap: 4px; }
.finance-integrity span { font-size: 12px; font-weight: 750; opacity: .82; }
.finance-integrity strong { white-space: nowrap; font-size: 15px; }
.ledger-amount { white-space: nowrap; font-size: 14px; }
.ledger-amount.in { color: #15803d; }
.ledger-amount.out { color: #dc2626; }
.finance-export-panel { margin-top: 16px; }
.finance-report-filter-grid { display: grid; grid-template-columns: repeat(4, minmax(150px, 1fr)) auto; gap: 12px; align-items: end; }
.finance-report-kpis .kpi { min-height: 112px; }
.finance-kpi-change { display: block; margin-top: 8px; color: #64748b; font-size: 11px; font-weight: 800; }
.finance-kpi-change.up { color: #15803d; }
.finance-kpi-change.down { color: #dc2626; }
.finance-anomaly-summary { display: flex; align-items: center; justify-content: space-between; gap: 18px; margin: 0 0 16px; padding: 16px 18px; border: 1px solid #bbf7d0; border-radius: 10px; background: #f0fdf4; color: #166534; }
.finance-anomaly-summary.warning { border-color: #fed7aa; background: #fff7ed; color: #c2410c; }
.finance-anomaly-summary div { display: grid; gap: 4px; }
.finance-anomaly-summary span { font-size: 12px; font-weight: 750; opacity: .82; }
.finance-anomaly-summary strong { white-space: nowrap; }
.finance-report-grid { display: grid; grid-template-columns: minmax(0, 1.6fr) minmax(280px, .8fr); gap: 16px; margin-bottom: 16px; }
.finance-trend-chart { display: grid; gap: 9px; }
.finance-trend-row { display: grid; grid-template-columns: 48px minmax(120px, 1fr) 100px; gap: 10px; align-items: center; min-height: 24px; }
.finance-trend-row time { color: var(--muted); font-size: 11px; font-weight: 800; }
.finance-trend-row > div { display: grid; gap: 3px; }
.finance-trend-row span { display: block; min-height: 6px; border-radius: 99px; }
.finance-trend-row span.in { background: #22c55e; }
.finance-trend-row span.out { background: #f87171; }
.finance-trend-row b { text-align: right; font-size: 12px; }
.finance-method-list { display: grid; gap: 10px; }
.finance-method-list article { display: flex; justify-content: space-between; gap: 12px; padding: 12px; border: 1px solid var(--line); border-radius: 8px; background: var(--surface); }
.finance-method-list span { color: var(--muted); font-size: 12px; font-weight: 800; }
.finance-store-report-panel { margin-bottom: 16px; }
.ledger-positive { color: #15803d; font-weight: 800; }
.ledger-negative { color: #dc2626; font-weight: 800; }
.finance-all-clear { display: grid; justify-items: center; gap: 5px; padding: 28px; color: #15803d; }
.finance-all-clear span { color: var(--muted); font-size: 12px; }
.finance-case-panel { margin-bottom: 16px; }
.finance-threshold-panel { margin-bottom: 16px; }
.finance-threshold-list { display: grid; gap: 10px; }
.finance-threshold-row { display: grid; grid-template-columns: minmax(170px,1.2fr) repeat(4,minmax(125px,1fr)) auto; gap: 10px; align-items: end; padding: 14px; border: 1px solid var(--line); border-radius: 9px; background: #f8fafc; }
.finance-threshold-store { display: grid; gap: 5px; align-self: center; }
.finance-threshold-store b { color: #0f172a; }
.finance-threshold-store span { color: var(--muted); font-size: 11px; font-weight: 700; }
.finance-threshold-row .field { margin: 0; font-size: 11px; }
.finance-threshold-row input:disabled { color: #475569; background: #f1f5f9; opacity: 1; }
.finance-case-summary { display: flex; flex-wrap: wrap; gap: 6px; }
.finance-case-list { display: grid; gap: 10px; }
.finance-case-card { display: grid; grid-template-columns: minmax(0,1fr) auto; gap: 18px; align-items: center; padding: 15px; border: 1px solid var(--line); border-left: 4px solid #94a3b8; border-radius: 9px; background: #fff; }
.finance-case-card.high { border-left-color: #f59e0b; background: #fffdf8; }
.finance-case-card.critical { border-left-color: #ef4444; background: #fff8f8; }
.finance-case-main { min-width: 0; }
.finance-case-title { display: flex; align-items: center; flex-wrap: wrap; gap: 8px; }
.finance-case-main p { margin: 8px 0 5px; color: #475569; font-size: 13px; line-height: 1.55; }
.finance-case-main small,.finance-case-side span { color: var(--muted); font-size: 11px; font-weight: 750; }
.finance-case-main blockquote { margin: 9px 0 0; padding: 9px 11px; border-left: 3px solid #22c55e; background: #f0fdf4; color: #166534; font-size: 12px; }
.finance-case-side { display: grid; justify-items: end; gap: 6px; min-width: 210px; }
.finance-case-side > b { color: #b91c1c; font-size: 18px; }
.finance-case-description { padding: 14px; border: 1px solid #fed7aa; border-radius: 8px; background: #fff7ed; color: #9a3412; line-height: 1.6; }
.finance-anomaly-resolve-form { display: grid; gap: 15px; margin-top: 18px; }
.finance-anomaly-resolve-form textarea { resize: vertical; }

@media (max-width: 1180px) {
  .finance-ledger-filter-grid { grid-template-columns: repeat(3, minmax(0, 1fr)); }
  .finance-report-filter-grid { grid-template-columns: repeat(3, minmax(0, 1fr)); }
  .finance-threshold-row { grid-template-columns: repeat(2,minmax(0,1fr)); }
  .finance-threshold-store { grid-column: 1 / -1; }
}
@media (max-width: 720px) {
  .finance-ledger-filter-grid { grid-template-columns: 1fr; }
  .finance-integrity { align-items: flex-start; flex-direction: column; }
  .finance-report-filter-grid { grid-template-columns: 1fr; }
  .finance-report-grid { grid-template-columns: 1fr; }
  .finance-anomaly-summary { align-items: flex-start; flex-direction: column; }
  .finance-case-card { grid-template-columns: 1fr; }
  .finance-case-side { justify-items: start; min-width: 0; }
  .finance-threshold-row { grid-template-columns: 1fr; }
  .finance-threshold-store { grid-column: auto; }
}

/* Mobile guide sales cockpit */
.m-portfolio-card { overflow: hidden; }
.m-intention-board { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 7px; }
.m-intention-board > div,.m-intention-board > button { display: grid; gap: 3px; min-width: 0; padding: 10px 7px; border: 1px solid #dfe6ef; border-top: 3px solid #9ba8bc; border-radius: 7px; background: #fff; text-align: left; }
.m-intention-board .level-a { border-top-color: #d94a4a; }.m-intention-board .level-b { border-top-color: #e59a17; }.m-intention-board .level-c { border-top-color: #2f68e9; }.m-intention-board .level-d { border-top-color: #8290a6; }
.m-intention-board b { font-size: 12px; }.m-intention-board strong { color: #172033; font-size: 22px; }.m-intention-board span { overflow: hidden; color: #748198; font-size: 10px; white-space: nowrap; text-overflow: ellipsis; }
.m-intention-board > button.active { border-color: #2f68e9; background: #edf3ff; box-shadow: inset 0 0 0 1px #2f68e9; }
.m-stage-board { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 6px; margin-top: 10px; }
.m-stage-board > div { display: flex; justify-content: space-between; gap: 6px; padding: 8px; background: #f5f7fa; border-radius: 6px; }.m-stage-board span { color: #66748b; font-size: 11px; }.m-stage-board b { color: #172033; }
.m-daily-review-grid { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 7px; }.m-daily-review-grid > div { display: grid; gap: 4px; padding: 9px; background: #f5f7fa; border-radius: 7px; }.m-daily-review-grid span { color: #748198; font-size: 11px; }.m-daily-review-grid b { font-size: 20px; }.m-daily-review p { margin: 10px 0 0; padding: 10px; color: #536179; background: #eef4ff; border-left: 3px solid #2f68e9; }
.m-customer-stage-filter { display: flex; gap: 7px; overflow-x: auto; padding: 2px 1px 8px; scrollbar-width: none; }.m-customer-stage-filter button { flex: 0 0 auto; min-height: 36px; padding: 7px 10px; border: 1px solid #dce3ed; border-radius: 18px; background: #fff; color: #5f6d83; }.m-customer-stage-filter button.active { border-color: #2f68e9; background: #2f68e9; color: #fff; }
.m-customer-intention-filter { margin-bottom: 8px; }
.m-customer-progress { display: flex; flex-wrap: wrap; gap: 6px; align-items: center; }.m-customer-progress > span:not(.tag) { color: #6e7b91; font-size: 11px; }
.m-level.level-a { color: #b72f37; background: #fff0f1; }.m-level.level-b { color: #9c6508; background: #fff6e4; }.m-level.level-c { color: #235fc8; background: #edf3ff; }.m-level.level-d { color: #66748b; background: #f0f3f7; }
.m-follow-customer-summary { display: grid; grid-template-columns: repeat(4,minmax(0,1fr)); gap: 6px; }.m-follow-customer-summary > div { display: grid; gap: 3px; padding: 8px 6px; background: #f5f7fa; border-radius: 6px; }.m-follow-customer-summary span { color: #748198; font-size: 10px; }.m-follow-customer-summary b { color: #172033; font-size: 14px; }
.m-reception-customer-judgement { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: 9px; }
.m-reception-deal-money { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: 9px; }
.m-reception-deal-money .field { min-width: 0; }
.m-reception-purchase-upload {
  padding: 12px;
  border: 1px dashed #9dbcfb;
  border-radius: 13px;
  background: #f5f8ff;
}
.m-reception-purchase-upload > span { color: #263b5b; font-size: 12px; font-weight: 900; }
.m-reception-purchase-upload input[type="file"] {
  min-height: 44px;
  padding: 8px;
  border: 1px solid #d7e2f2;
  border-radius: 10px;
  color: #526178;
  background: #fff;
  font-size: 10px;
}
.m-reception-purchase-upload small { color: #718096; font-size: 9px; line-height: 1.45; }

* { box-sizing: border-box; }
body {
  margin: 0;
  font-family: Inter, "PingFang SC", "Microsoft YaHei", system-ui, sans-serif;
  background:
    linear-gradient(180deg, #f7f9fc 0, #eef3f8 420px, #f5f6f8 100%),
    var(--bg);
  color: var(--ink);
}
button, input, select, textarea { font: inherit; }
button { cursor: pointer; }
button:disabled {
  cursor: not-allowed;
  opacity: .48;
}

.login {
  min-height: 100vh;
  display: grid;
  place-items: center;
  padding: 24px;
  overflow: hidden;
  position: relative;
  background:
    linear-gradient(90deg, rgba(15,23,42,.035) 1px, transparent 1px),
    linear-gradient(180deg, rgba(15,23,42,.035) 1px, transparent 1px),
    linear-gradient(135deg, #f7f9fc 0, #eef4fb 48%, #eef8f7 100%);
  background-size: 56px 56px, 56px 56px, auto;
  animation: login-field-breathe 14s ease-in-out infinite alternate;
}
.login-particles {
  position: absolute;
  inset: 0;
  overflow: hidden;
  pointer-events: none;
}
.login-particles span {
  --size: 3px;
  --x: 50%;
  --y: 50%;
  --move-x: 28px;
  --move-y: -34px;
  --speed: 11s;
  --delay: 0s;
  position: absolute;
  left: var(--x);
  top: var(--y);
  width: var(--size);
  height: var(--size);
  border-radius: 2px;
  color: rgba(37,99,235,.42);
  background: currentColor;
  box-shadow: 0 0 12px currentColor;
  opacity: 0;
  transform: translate3d(0, 0, 0);
  animation: login-particle-drift var(--speed) ease-in-out var(--delay) infinite;
}
.login-particles span:nth-child(3n) {
  width: 18px;
  height: 1px;
  border-radius: 999px;
  color: rgba(15,159,143,.32);
  box-shadow: 0 0 10px currentColor;
}
.login-particles span:nth-child(4n) {
  color: rgba(96,165,250,.34);
}
.login-particles span:nth-child(5n) {
  --size: 2px;
  color: rgba(34,197,94,.28);
}
.login-particles span:nth-child(1) { --x: 8%; --y: 18%; --move-x: 36px; --move-y: -22px; --speed: 12s; --delay: -.4s; }
.login-particles span:nth-child(2) { --x: 17%; --y: 78%; --move-x: 24px; --move-y: -46px; --speed: 14s; --delay: -5s; }
.login-particles span:nth-child(3) { --x: 24%; --y: 28%; --move-x: 42px; --move-y: 18px; --speed: 13s; --delay: -2s; }
.login-particles span:nth-child(4) { --x: 31%; --y: 86%; --move-x: -22px; --move-y: -38px; --speed: 15s; --delay: -7s; }
.login-particles span:nth-child(5) { --x: 39%; --y: 12%; --move-x: -30px; --move-y: 34px; --speed: 12s; --delay: -3s; }
.login-particles span:nth-child(6) { --x: 46%; --y: 66%; --move-x: 26px; --move-y: -30px; --speed: 16s; --delay: -8s; }
.login-particles span:nth-child(7) { --x: 54%; --y: 24%; --move-x: -34px; --move-y: 24px; --speed: 14s; --delay: -1s; }
.login-particles span:nth-child(8) { --x: 61%; --y: 88%; --move-x: 30px; --move-y: -36px; --speed: 13s; --delay: -6s; }
.login-particles span:nth-child(9) { --x: 68%; --y: 16%; --move-x: -24px; --move-y: 40px; --speed: 15s; --delay: -9s; }
.login-particles span:nth-child(10) { --x: 76%; --y: 74%; --move-x: 38px; --move-y: -28px; --speed: 12s; --delay: -4s; }
.login-particles span:nth-child(11) { --x: 84%; --y: 30%; --move-x: -42px; --move-y: 18px; --speed: 16s; --delay: -10s; }
.login-particles span:nth-child(12) { --x: 93%; --y: 58%; --move-x: -34px; --move-y: -32px; --speed: 14s; --delay: -3s; }
.login-particles span:nth-child(13) { --x: 11%; --y: 48%; --move-x: 28px; --move-y: 28px; --speed: 15s; --delay: -8s; }
.login-particles span:nth-child(14) { --x: 21%; --y: 9%; --move-x: -18px; --move-y: 42px; --speed: 13s; --delay: -6s; }
.login-particles span:nth-child(15) { --x: 33%; --y: 55%; --move-x: 44px; --move-y: -18px; --speed: 12s; --delay: -2s; }
.login-particles span:nth-child(16) { --x: 48%; --y: 39%; --move-x: -40px; --move-y: 20px; --speed: 17s; --delay: -11s; }
.login-particles span:nth-child(17) { --x: 58%; --y: 8%; --move-x: 30px; --move-y: 38px; --speed: 14s; --delay: -5s; }
.login-particles span:nth-child(18) { --x: 71%; --y: 51%; --move-x: -26px; --move-y: -30px; --speed: 15s; --delay: -1s; }
.login-particles span:nth-child(19) { --x: 81%; --y: 9%; --move-x: 20px; --move-y: 44px; --speed: 13s; --delay: -7s; }
.login-particles span:nth-child(20) { --x: 90%; --y: 84%; --move-x: -42px; --move-y: -18px; --speed: 16s; --delay: -12s; }
.login-particles span:nth-child(21) { --x: 5%; --y: 64%; --move-x: 46px; --move-y: -26px; --speed: 13s; --delay: -9s; }
.login-particles span:nth-child(22) { --x: 43%; --y: 91%; --move-x: -20px; --move-y: -44px; --speed: 15s; --delay: -4s; }
.login-particles span:nth-child(23) { --x: 65%; --y: 35%; --move-x: 38px; --move-y: 20px; --speed: 12s; --delay: -6s; }
.login-particles span:nth-child(24) { --x: 96%; --y: 22%; --move-x: -36px; --move-y: 30px; --speed: 17s; --delay: -10s; }
.login-card {
  width: min(1180px, calc(100vw - 48px));
  max-width: 100%;
  min-width: 0;
  min-height: 610px;
  display: grid;
  grid-template-columns: minmax(0, 1fr) minmax(420px, .62fr);
  border: 1px solid rgba(148, 163, 184, .32);
  border-radius: 8px;
  overflow: hidden;
  background: #fff;
  box-shadow: 0 28px 72px rgba(15, 23, 42, .10);
  position: relative;
  z-index: 1;
  transform-origin: 50% 56%;
  animation: login-card-in .68s cubic-bezier(.22, 1, .36, 1) both;
}
.login-brand {
  min-width: 0;
  display: grid;
  align-content: space-between;
  gap: 30px;
  padding: 56px 64px 48px;
  color: #0f172a;
  background:
    linear-gradient(180deg, rgba(37,99,235,.045), transparent 42%),
    #fff;
}
.login-logo {
  display: grid;
  gap: 4px;
  width: fit-content;
  animation: login-soft-rise .56s cubic-bezier(.22, 1, .36, 1) .12s both;
}
.login-logo b {
  color: #0f172a;
  font-size: 18px;
  font-weight: 900;
}
.login-logo span {
  color: #64748b;
  font-size: 12px;
  font-weight: 800;
}
.login-message {
  max-width: 670px;
  animation: login-soft-rise .62s cubic-bezier(.22, 1, .36, 1) .2s both;
}
.login-message span,
.login-form-head span {
  display: block;
  color: var(--blue);
  font-size: 13px;
  font-weight: 900;
}
.login-message h1 {
  margin: 12px 0 14px;
  color: #111827;
  font-size: 50px;
  line-height: 1.1;
  text-wrap: balance;
}
.login-message p {
  margin: 0;
  max-width: 560px;
  color: #64748b;
  font-size: 15px;
  font-weight: 650;
  line-height: 1.8;
}
.login-visual {
  display: grid;
  gap: 18px;
  padding: 18px;
  border: 1px solid #1e293b;
  border-radius: 8px;
  background:
    linear-gradient(90deg, rgba(255,255,255,.06) 1px, transparent 1px),
    linear-gradient(180deg, rgba(255,255,255,.06) 1px, transparent 1px),
    #0f172a;
  background-size: 28px 28px, 28px 28px, auto;
  box-shadow: inset 0 1px 0 rgba(255,255,255,.04);
  animation: login-soft-rise .66s cubic-bezier(.22, 1, .36, 1) .32s both;
}
.login-visual-head {
  display: flex;
  justify-content: space-between;
  gap: 12px;
  align-items: center;
}
.login-visual-head b {
  color: #f8fafc;
  font-size: 14px;
}
.login-visual-head span {
  min-height: 24px;
  display: inline-flex;
  align-items: center;
  padding: 0 9px;
  border-radius: 999px;
  background: rgba(20,184,166,.16);
  color: #67e8f9;
  font-size: 11px;
  font-weight: 900;
  box-shadow: 0 0 0 0 rgba(34,211,238,.24);
  animation: login-live-pulse 2.6s ease-in-out 1s infinite;
}
.login-loop-map {
  display: grid;
  grid-template-columns: minmax(0, 1fr) 22px minmax(0, 1fr) 22px minmax(0, 1fr) 22px minmax(0, 1fr);
  gap: 8px;
  align-items: center;
}
.login-loop-map > i {
  height: 1px;
  background: linear-gradient(90deg, rgba(147,197,253,.3), rgba(45,212,191,.88));
  transform: scaleX(0);
  transform-origin: left center;
  animation: login-line-draw .58s cubic-bezier(.22, 1, .36, 1) both;
}
.login-loop-node {
  min-height: 120px;
  display: grid;
  align-content: space-between;
  gap: 8px;
  padding: 13px;
  border: 1px solid rgba(148,163,184,.22);
  border-radius: 8px;
  background: rgba(15,23,42,.72);
  animation: login-node-in .52s cubic-bezier(.22, 1, .36, 1) both;
  transition: transform .18s ease, border-color .18s ease, background .18s ease;
}
.login-loop-node:hover {
  transform: translateY(-2px);
  border-color: rgba(226,232,240,.42);
  background: rgba(30,41,59,.84);
}
.login-loop-node small,
.login-loop-node span {
  color: #94a3b8;
  font-size: 12px;
  font-weight: 900;
}
.login-loop-node b {
  color: #f8fafc;
  font-size: 30px;
  line-height: 1;
  font-variant-numeric: tabular-nums;
  animation: login-number-pop .48s cubic-bezier(.22, 1, .36, 1) both;
}
.login-loop-node:nth-child(1) { animation-delay: .42s; }
.login-loop-node:nth-child(1) b { animation-delay: .54s; }
.login-loop-map > i:nth-child(2) { animation-delay: .55s; }
.login-loop-node:nth-child(3) { animation-delay: .62s; }
.login-loop-node:nth-child(3) b { animation-delay: .74s; }
.login-loop-map > i:nth-child(4) { animation-delay: .75s; }
.login-loop-node:nth-child(5) { animation-delay: .82s; }
.login-loop-node:nth-child(5) b { animation-delay: .94s; }
.login-loop-map > i:nth-child(6) { animation-delay: .95s; }
.login-loop-node:nth-child(7) { animation-delay: 1.02s; }
.login-loop-node:nth-child(7) b { animation-delay: 1.14s; }
.login-loop-node.green { border-top-color: #22c55e; }
.login-loop-node.blue { border-top-color: #60a5fa; }
.login-loop-node.amber { border-top-color: #f59e0b; }
.login-loop-node.cyan { border-top-color: #22d3ee; }
.login-visual-foot {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
}
.login-visual-foot span {
  min-height: 28px;
  display: inline-flex;
  align-items: center;
  padding: 0 10px;
  border: 1px solid rgba(148,163,184,.22);
  border-radius: 999px;
  color: #cbd5e1;
  font-size: 12px;
  font-weight: 900;
  animation: login-soft-rise .5s cubic-bezier(.22, 1, .36, 1) both;
}
.login-visual-foot span:nth-child(1) { animation-delay: 1.08s; }
.login-visual-foot span:nth-child(2) { animation-delay: 1.16s; }
.login-visual-foot span:nth-child(3) { animation-delay: 1.24s; }
.login-form {
  min-width: 0;
  display: grid;
  align-content: center;
  gap: 18px;
  padding: 60px 56px;
  border-left: 1px solid #e2e8f0;
  background: #f8fafc;
}
.login-form-head {
  display: grid;
  gap: 8px;
  margin-bottom: 6px;
  animation: login-soft-rise .56s cubic-bezier(.22, 1, .36, 1) .24s both;
}
.login-form-head span {
  color: #2563eb;
}
.login-form-head h2 {
  margin: 0;
  color: var(--ink);
  font-size: 32px;
}
.login-form-head p {
  margin: 0;
  color: var(--muted);
  font-size: 13px;
  font-weight: 800;
  line-height: 1.65;
}
.login-field {
  margin-bottom: 0;
  animation: login-soft-rise .54s cubic-bezier(.22, 1, .36, 1) both;
}
.login-field:nth-of-type(1) { animation-delay: .34s; }
.login-field:nth-of-type(2) { animation-delay: .42s; }
.login-field input {
  min-height: 52px;
  border-color: #d7e0ea;
  border-radius: 8px;
  font-size: 16px;
  font-weight: 800;
  background: #fff;
  transition: border-color .18s ease, box-shadow .18s ease, transform .18s ease, background-color .18s ease;
}
.login-field input:focus {
  border-color: #93c5fd;
  box-shadow: 0 0 0 4px rgba(37,99,235,.11);
  transform: translateY(-1px);
}
.login-password-control {
  position: relative;
  display: block;
}
.login-password-control input {
  width: 100%;
  padding-right: 56px;
}
.login-password-toggle {
  position: absolute;
  top: 50%;
  right: 8px;
  width: 40px;
  min-width: 40px;
  height: 36px;
  min-height: 36px;
  display: grid;
  place-items: center;
  padding: 0;
  border: 0;
  border-radius: 8px;
  color: #2563eb;
  background: #eff6ff;
  transform: translateY(-50%);
}
.login-password-toggle svg {
  width: 21px;
  height: 21px;
  fill: none;
  stroke: currentColor;
  stroke-width: 1.9;
  stroke-linecap: round;
  stroke-linejoin: round;
}
.login-password-toggle:focus-visible {
  outline: 3px solid rgba(37,99,235,.2);
  outline-offset: 1px;
}
.login-options {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
  color: #64748b;
  font-size: 12px;
  font-weight: 750;
}
.login-options > span {
  margin-left: auto;
}
.login-options label {
  display: inline-flex;
  align-items: center;
  gap: 7px;
  color: #334155;
  cursor: pointer;
  white-space: nowrap;
}
.login-options input {
  width: 17px;
  height: 17px;
  margin: 0;
  accent-color: #2563eb;
}
.login-notice {
  padding: 10px 12px;
  border: 1px solid #bfdbfe;
  border-radius: 10px;
  color: #1d4ed8;
  background: #eff6ff;
  font-size: 12px;
  font-weight: 850;
  line-height: 1.5;
}
.login-error {
  min-height: 18px;
  margin: 0;
  font-size: 12px;
  font-weight: 850;
  line-height: 1.5;
}
.login-submit:disabled,
.m-login-submit:disabled {
  cursor: wait;
  opacity: .72;
  transform: none;
  box-shadow: none;
}
.login-submit {
  width: 100%;
  min-height: 52px;
  border-radius: 8px;
  font-size: 16px;
  box-shadow: 0 12px 24px rgba(37,99,235,.14);
  animation: login-soft-rise .54s cubic-bezier(.22, 1, .36, 1) .5s both;
  transition: transform .18s ease, box-shadow .18s ease, filter .18s ease;
}
.login-submit:hover {
  transform: translateY(-2px);
  box-shadow: 0 16px 30px rgba(37,99,235,.22);
  filter: saturate(1.04);
}
.login-submit:active {
  transform: translateY(0);
  box-shadow: 0 8px 18px rgba(37,99,235,.18);
}
.login-footnote {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
  animation: login-soft-rise .54s cubic-bezier(.22, 1, .36, 1) .58s both;
}
.login-footnote span {
  height: 28px;
  display: inline-flex;
  align-items: center;
  padding: 0 10px;
  border: 1px solid #dbeafe;
  border-radius: 8px;
  background: #eff6ff;
  color: #1d4ed8;
  font-size: 12px;
  font-weight: 900;
}
@keyframes login-card-in {
  from {
    opacity: 0;
    transform: translateY(14px) scale(.985);
  }
  to {
    opacity: 1;
    transform: translateY(0) scale(1);
  }
}
@keyframes login-soft-rise {
  from {
    opacity: 0;
    transform: translateY(12px);
  }
  to {
    opacity: 1;
    transform: translateY(0);
  }
}
@keyframes login-node-in {
  from {
    opacity: 0;
    transform: translateY(10px) scale(.97);
  }
  to {
    opacity: 1;
    transform: translateY(0) scale(1);
  }
}
@keyframes login-line-draw {
  from {
    opacity: 0;
    transform: scaleX(0);
  }
  to {
    opacity: 1;
    transform: scaleX(1);
  }
}
@keyframes login-number-pop {
  from {
    opacity: 0;
    transform: translateY(6px) scale(.92);
  }
  to {
    opacity: 1;
    transform: translateY(0) scale(1);
  }
}
@keyframes login-live-pulse {
  0%, 100% {
    box-shadow: 0 0 0 0 rgba(34,211,238,.22);
    transform: translateZ(0);
  }
  50% {
    box-shadow: 0 0 0 5px rgba(34,211,238,0);
    transform: translateY(-1px);
  }
}
@keyframes login-field-breathe {
  from {
    background-position: 0 0, 0 0, 0 0;
  }
  to {
    background-position: 18px 0, 0 18px, 0 0;
  }
}
@keyframes login-particle-drift {
  0%, 100% {
    opacity: 0;
    transform: translate3d(0, 0, 0) scale(.82);
  }
  15%, 80% {
    opacity: .78;
  }
  50% {
    opacity: .46;
    transform: translate3d(var(--move-x), var(--move-y), 0) scale(1);
  }
}
@media (prefers-reduced-motion: reduce) {
  .login,
  .login-particles span,
  .login-card,
  .login-logo,
  .login-message,
  .login-visual,
  .login-visual-head span,
  .login-loop-map > i,
  .login-loop-node,
  .login-loop-node b,
  .login-visual-foot span,
  .login-form-head,
  .login-field,
  .login-submit,
  .login-footnote {
    animation: none !important;
  }
  .login-loop-node,
  .login-submit,
  .login-field input {
    transition: none !important;
  }
  .login-particles span {
    opacity: .18 !important;
  }
}
.field { display: grid; gap: 7px; margin-bottom: 16px; color: #334155; font-weight: 700; font-size: 13px; }
.field input, .field select, .field textarea {
  width: 100%;
  border: 1px solid var(--line);
  border-radius: 6px;
  padding: 10px 12px;
  background: #fff;
  outline: none;
}
.readonly-field {
  min-height: 43px;
  display: flex;
  align-items: center;
  padding: 10px 12px;
  border: 1px solid #dbeafe;
  border-radius: 6px;
  background: #eff6ff;
  color: #1e3a8a;
  font-size: 13px;
  font-weight: 900;
}
.field textarea { min-height: 78px; resize: vertical; }
.lead-textarea { min-height: 190px !important; font-family: ui-monospace, SFMono-Regular, Menlo, Consolas, monospace; }
.primary, .ghost, .danger {
  min-height: 36px;
  border: 0;
  border-radius: 6px;
  padding: 0 14px;
  font-weight: 800;
}
.primary { color: #fff; background: var(--blue); }
.ghost { color: #1f2937; background: #eef2f7; }
.danger { color: #fff; background: var(--red); }
.danger-action { color: var(--red); background: #fee4e5; }
.error { color: var(--red); font-size: 13px; margin-top: 12px; min-height: 18px; }

.shell { display: grid; grid-template-columns: 232px 1fr; min-height: 100vh; }
.sidebar {
  background: var(--nav);
  color: #d7dee9;
  padding: 18px 12px;
}
.brand { display: grid; gap: 4px; font-size: 18px; font-weight: 900; color: #fff; padding: 10px 12px 18px; }
.brand span { color: #718199; font-size: 10px; font-weight: 800; }
.nav-section { margin-top: 10px; }
.nav-section + .nav-section { margin-top: 16px; padding-top: 12px; border-top: 1px solid rgba(148,163,184,.13); }
.nav-title { padding: 0 12px 7px; color: #7e8ba0; font-size: 12px; font-weight: 800; }
.nav-btn {
  width: 100%;
  height: 38px;
  display: flex;
  align-items: center;
  gap: 10px;
  border: 0;
  border-radius: 6px;
  padding: 0 12px;
  color: #cbd5e1;
  background: transparent;
  text-align: left;
  font-weight: 800;
}
.nav-btn.active, .nav-btn:hover { color: #fff; background: #2563eb; }
.nav-count-badge {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-width: 20px;
  height: 20px;
  margin-left: auto;
  padding: 0 6px;
  border-radius: 10px;
  background: #ef4444;
  color: #fff;
  font-size: 11px;
  font-style: normal;
  font-weight: 900;
}
.main { min-width: 0; }
.topbar {
  height: 58px;
  display: flex;
  align-items: center;
  justify-content: space-between;
  padding: 0 24px;
  background: #fff;
  border-bottom: 1px solid var(--line);
}
.topbar span { color: var(--muted); margin-left: 8px; font-size: 13px; }
.top-reminder {
  min-height: 32px;
  border: 1px solid var(--line);
  border-radius: 6px;
  padding: 0 11px;
  color: #334155;
  background: #f8fafc;
  font-weight: 900;
}
.top-reminder.attention {
  border-color: #fde68a;
  color: #9a6700;
  background: #fffbeb;
}
.top-reminder.danger {
  border-color: #fecaca;
  color: #b4232b;
  background: #fff7f7;
}
.top-reminder.calm {
  color: #067647;
  background: #f0fdf4;
  border-color: #bbf7d0;
}
.top-notification { position: relative; min-height: 32px; border: 1px solid var(--line); border-radius: 6px; padding: 0 11px; color: #334155; background: #f8fafc; font-weight: 900; }
.top-notification.attention { border-color: #bfdbfe; color: #1d4ed8; background: #eff6ff; }
.top-notification.urgent { border-color: #fecaca; color: #b4232b; background: #fff1f2; }
.top-notification b { position: absolute; top: -7px; right: -7px; min-width: 18px; height: 18px; display: grid; place-items: center; padding: 0 5px; border-radius: 10px; color: #fff; background: #e11d48; font-size: 10px; }
.top-notification.compact, .top-reminder.compact {
  position: relative; width: 34px; min-width: 34px; height: 34px; min-height: 34px;
  padding: 0; display: grid; place-items: center; border: 0; border-radius: 11px;
  color: #6A737C; background: rgba(20,24,29,.045);
  box-shadow: inset 0 0 0 1px rgba(20,24,29,.03); font-weight: 500;
  transition: transform .12s;
}
.top-notification.compact:active, .top-reminder.compact:active { transform: scale(.92); }
.top-notification.compact svg, .top-reminder.compact svg { width: 17px; height: 17px; }
.top-notification.compact.attention, .top-reminder.compact.attention { color: #2E63D8; background: rgba(46,99,216,.1); }
.top-notification.compact.urgent, .top-reminder.compact.danger { color: #C74228; background: rgba(199,66,40,.1); }
.top-notification.compact b, .top-reminder.compact b {
  position: absolute; top: -4px; right: -4px; min-width: 16px; height: 16px; padding: 0 4px;
  display: grid; place-content: center; border-radius: 8px; color: #fff; background: #C74228;
  font-family: "Space Grotesk","PingFang SC",sans-serif; font-size: 10px; font-weight: 700;
  box-shadow: 0 0 0 2px #F5F6F8, 0 2px 5px rgba(199,66,40,.4);
}
.notification-backdrop { position: fixed; inset: 0; z-index: 140; background: rgba(15,23,42,.34); backdrop-filter: blur(2px); }
.notification-drawer { position: fixed; top: 0; right: 0; z-index: 141; width: min(430px,100vw); height: 100dvh; display: flex; flex-direction: column; padding: 20px; background: #fff; box-shadow: -20px 0 50px rgba(15,23,42,.2); }
.notification-drawer > header { display: flex; justify-content: space-between; gap: 14px; padding-bottom: 16px; border-bottom: 1px solid var(--line); }
.notification-drawer > header span { color: #2563eb; font-size: 10px; font-weight: 950; letter-spacing: .12em; }
.notification-drawer > header h3 { margin: 4px 0; }
.notification-drawer > header p { margin: 0; color: var(--muted); font-size: 12px; }
.notification-tools { display: flex; justify-content: flex-end; gap: 8px; padding: 12px 0; }
.notification-tools > span { margin-right: auto; align-self: center; font-size: 11px; font-weight: 800; }
.notification-filters { display: grid; grid-template-columns: minmax(130px,1.5fr) repeat(2,minmax(90px,1fr)) repeat(2,125px) auto; gap: 7px; padding: 12px 0 0; }
.notification-filters input,.notification-filters select { min-width: 0; height: 34px; border: 1px solid var(--line); border-radius: 6px; padding: 0 8px; background: #fff; color: #334155; font-size: 11px; }
.notification-list { display: grid; gap: 10px; overflow-y: auto; padding: 2px 2px 30px; }
.notification-card { display: grid; gap: 8px; padding: 14px; border: 1px solid var(--line); border-left: 4px solid #94a3b8; border-radius: 9px; background: #fff; }
.notification-card.unread { background: #f8fbff; box-shadow: 0 7px 18px rgba(37,99,235,.08); }
.notification-card.high,.notification-card.critical { border-left-color: #ef4444; }
.notification-card.warning { border-left-color: #f59e0b; }
.notification-card-head,.notification-card-actions { display: flex; align-items: center; justify-content: space-between; gap: 8px; }
.notification-card-head time { color: var(--muted); font-size: 11px; }
.notification-card > p { margin: 0; color: #64748b; font-size: 12px; line-height: 1.55; }
.notification-card-actions { justify-content: flex-start; }
.content { padding: 22px 24px 40px; }
.command-hero {
  position: relative;
  min-height: 216px;
  display: grid;
  grid-template-columns: minmax(0, 1fr) minmax(320px, .44fr);
  gap: 18px;
  align-items: stretch;
  margin-bottom: 16px;
  padding: 22px;
  border: 1px solid #d7e0ea;
  border-radius: 8px;
  overflow: hidden;
  background:
    linear-gradient(135deg, rgba(17,24,39,.97), rgba(30,64,86,.96) 54%, rgba(16,88,78,.96)),
    repeating-linear-gradient(90deg, rgba(255,255,255,.08) 0, rgba(255,255,255,.08) 1px, transparent 1px, transparent 36px);
  color: #fff;
  box-shadow: 0 18px 50px rgba(31, 41, 55, .16);
}
.command-hero::after {
  content: "";
  position: absolute;
  left: 22px;
  right: 22px;
  bottom: 0;
  height: 4px;
  background: linear-gradient(90deg, #38bdf8, #22c55e, #f59e0b, #ef4444);
}
.command-hero-main,
.command-hero-side {
  position: relative;
  z-index: 1;
}
.command-hero-main {
  min-width: 0;
  display: grid;
  align-content: space-between;
  gap: 18px;
}
.command-eyebrow {
  display: flex;
  flex-wrap: wrap;
  gap: 10px;
  align-items: center;
  color: rgba(255,255,255,.68);
  font-size: 12px;
  font-weight: 900;
}
.command-eyebrow b {
  color: #bfdbfe;
}
.command-hero h2 {
  margin: 0;
  color: #fff;
  font-size: 38px;
  line-height: 1.12;
}
.command-hero p {
  max-width: 760px;
  margin: 10px 0 0;
  color: rgba(255,255,255,.78);
  font-size: 15px;
  font-weight: 800;
  line-height: 1.75;
}
.command-actions {
  display: flex;
  flex-wrap: wrap;
  gap: 10px;
}
.command-actions .primary {
  background: #3b82f6;
}
.command-actions .ghost {
  color: #e2e8f0;
  background: rgba(255,255,255,.12);
  border: 1px solid rgba(255,255,255,.18);
}
.command-hero-side {
  min-width: 0;
  display: grid;
  grid-template-columns: 150px minmax(0, 1fr);
  gap: 14px;
  align-items: center;
  padding: 14px;
  border: 1px solid rgba(255,255,255,.16);
  border-radius: 8px;
  background: rgba(15,23,42,.28);
}
.command-score {
  width: 136px;
  aspect-ratio: 1;
  display: grid;
  place-items: center;
  border-radius: 50%;
  background: conic-gradient(#22c55e calc(var(--score) * 1%), rgba(255,255,255,.18) 0);
}
.command-score > div {
  width: 104px;
  aspect-ratio: 1;
  display: grid;
  place-items: center;
  align-content: center;
  border-radius: 50%;
  background: #101827;
}
.command-score b {
  color: #fff;
  font-size: 34px;
  line-height: 1;
}
.command-score span {
  color: rgba(255,255,255,.68);
  font-size: 12px;
  font-weight: 900;
}
.command-side-list {
  min-width: 0;
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 8px;
}
.command-signal {
  min-height: 62px;
  display: grid;
  align-content: center;
  gap: 3px;
  padding: 10px;
  border: 1px solid rgba(255,255,255,.14);
  border-radius: 8px;
  background: rgba(255,255,255,.08);
}
.command-signal span {
  color: rgba(255,255,255,.66);
  font-size: 12px;
  font-weight: 900;
}
.command-signal b {
  color: #fff;
  font-size: 24px;
  line-height: 1;
}
.command-signal.green b { color: #86efac; }
.command-signal.amber b { color: #fde68a; }
.command-signal.red b { color: #fca5a5; }
.command-control-grid {
  display: grid;
  grid-template-columns: minmax(0, 1.2fr) minmax(320px, .8fr);
  gap: 14px;
  margin-bottom: 14px;
}
.command-focus-card,
.command-action-card {
  min-width: 0;
  display: grid;
  gap: 12px;
  padding: 14px;
  border: 1px solid #d8e1ea;
  border-radius: 8px;
  background: rgba(255,255,255,.94);
  box-shadow: 0 10px 28px rgba(15, 23, 42, .05);
}
.command-focus-card.live {
  border-color: #bbf7d0;
  background: #f5fff8;
}
.command-focus-card.attention {
  border-color: #fde68a;
  background: #fffdf4;
}
.command-card-title {
  display: flex;
  gap: 12px;
  align-items: start;
  justify-content: space-between;
}
.command-card-title span,
.command-card-title em {
  display: block;
  color: var(--muted);
  font-size: 12px;
  font-weight: 900;
  font-style: normal;
}
.command-card-title b {
  display: block;
  margin-top: 3px;
  color: var(--ink);
  font-size: 18px;
}
.command-action-grid {
  align-self: end;
}
.command-kpi-ribbon {
  display: grid;
  grid-template-columns: repeat(6, minmax(0, 1fr));
  gap: 10px;
  margin-bottom: 16px;
}
.command-kpi {
  min-height: 92px;
  display: grid;
  align-content: center;
  gap: 4px;
  padding: 13px;
  border: 1px solid #dce4ee;
  border-top: 4px solid #94a3b8;
  border-radius: 8px;
  background: #fff;
}
.command-kpi.green { border-top-color: var(--green); }
.command-kpi.blue { border-top-color: var(--blue); }
.command-kpi.amber { border-top-color: #f59e0b; }
.command-kpi span,
.command-kpi small {
  color: var(--muted);
  font-size: 12px;
  font-weight: 900;
}
.command-kpi b {
  color: var(--ink);
  font-size: 24px;
  line-height: 1.08;
}
.page-head { display: flex; justify-content: space-between; gap: 16px; align-items: center; margin-bottom: 18px; }
.page-head h2 { margin: 0; font-size: 22px; }
.page-head p,
.panel-head p {
  margin: 5px 0 0;
  color: var(--muted);
  font-size: 12px;
  font-weight: 800;
  line-height: 1.55;
}
.actions { display: flex; align-items: center; gap: 10px; flex-wrap: wrap; }
.page-tabs {
  position: sticky;
  top: 0;
  z-index: 18;
  display: flex;
  gap: 6px;
  margin: 0 0 16px;
  padding: 6px;
  border: 1px solid #dbe3ec;
  border-radius: 8px;
  background: rgba(255,255,255,.96);
  box-shadow: 0 8px 20px rgba(15,23,42,.05);
}
.page-tab {
  min-height: 36px;
  border: 0;
  border-radius: 6px;
  padding: 0 18px;
  color: #667085;
  background: transparent;
  font-size: 13px;
  font-weight: 900;
}
.page-tab:hover { color: #1746a2; background: #f1f6ff; }
.page-tab.active { color: #fff; background: #2563eb; box-shadow: 0 5px 12px rgba(37,99,235,.18); }
.page-disclosure {
  margin-bottom: 16px;
  border: 1px solid #dbe3ec;
  border-radius: 8px;
  background: #fff;
  overflow: hidden;
}
.page-disclosure > summary,
.collapsible-form-panel > summary {
  min-height: 58px;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 16px;
  padding: 11px 16px;
  list-style: none;
  cursor: pointer;
}
.page-disclosure > summary::-webkit-details-marker,
.collapsible-form-panel > summary::-webkit-details-marker { display: none; }
.page-disclosure > summary div,
.collapsible-form-panel > summary div { display: grid; gap: 4px; }
.page-disclosure > summary b,
.collapsible-form-panel > summary b { color: #1f2a3d; font-size: 15px; }
.page-disclosure > summary span,
.collapsible-form-panel > summary span { color: #7b8798; font-size: 12px; }
.page-disclosure > summary em,
.collapsible-form-panel > summary em {
  color: #2563eb;
  font-size: 12px;
  font-style: normal;
  font-weight: 900;
}
.page-disclosure[open] > summary,
.collapsible-form-panel[open] > summary { border-bottom: 1px solid #e5eaf0; }
.page-disclosure[open] > summary em::after,
.collapsible-form-panel[open] > summary em::after { content: ' · 收起'; color: #98a2b3; }
.page-disclosure-body { padding: 16px; background: #f8fafc; }
.page-disclosure-body > .panel { margin: 0; }
.page-disclosure-body.org-grid,
.page-disclosure-body.assignment-grid { margin-bottom: 0; }
.collapsible-form-panel { margin-bottom: 16px; }
.collapsible-form-panel > .panel-body { border-top: 0; }
.inline-edit-actions { display: flex; justify-content: flex-end; margin-bottom: 12px; }
.workbench-review { margin-top: 16px; }
.workbench-review .page-disclosure-body { display: grid; gap: 16px; }
.workbench-review .page-disclosure-body > .panel { margin: 0; }

.performance-view-overview .performance-action-panel,
.performance-view-overview .performance-task-panel,
.performance-view-overview .performance-accountability-panel,
.performance-view-overview .performance-detail-panel,
.performance-view-overview .performance-target-planner,
.performance-view-overview .performance-panel,
.performance-view-execution .performance-pacing-panel,
.performance-view-execution .performance-health-panel,
.performance-view-execution .performance-target-planner,
.performance-view-execution .performance-panel,
.performance-view-targets .performance-pacing-panel,
.performance-view-targets .performance-health-panel,
.performance-view-targets .performance-action-panel,
.performance-view-targets .performance-task-panel,
.performance-view-targets .performance-accountability-panel,
.performance-view-targets .performance-detail-panel { display: none; }

.dashboard-view-overview .dashboard-reminder-panel,
.dashboard-view-overview .dashboard-quality-panel,
.dashboard-view-overview .dashboard-objection-panel,
.dashboard-view-overview .dashboard-accountability-panel,
.dashboard-view-overview .dashboard-guide-panel,
.dashboard-view-process .dashboard-command,
.dashboard-view-process .dashboard-customer-view,
.dashboard-view-process .dashboard-trend-view,
.dashboard-view-process .dashboard-accountability-panel,
.dashboard-view-process .dashboard-guide-panel,
.dashboard-view-process .dashboard-order-panel,
.dashboard-view-process .dashboard-insight-panel,
.dashboard-view-team .dashboard-command,
.dashboard-view-team .dashboard-reminder-panel,
.dashboard-view-team .dashboard-quality-panel,
.dashboard-view-team .dashboard-objection-panel,
.dashboard-view-team .dashboard-customer-view,
.dashboard-view-team .dashboard-trend-view,
.dashboard-view-team .dashboard-order-panel,
.dashboard-view-team .dashboard-insight-panel { display: none; }
.dashboard-view-overview .dashboard-review-panel,
.dashboard-view-process .dashboard-forecast-panel,
.dashboard-view-process .dashboard-review-panel,
.dashboard-view-team .dashboard-forecast-panel { display: none; }

.customer-decision-assets {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 8px;
}
.customer-decision-assets > div {
  display: grid;
  gap: 6px;
  min-height: 74px;
  padding: 12px;
  border: 1px solid #dfe6ef;
  border-radius: 8px;
  background: #f7f9fc;
}
.customer-decision-assets span { color: #748198; font-size: 12px; }
.customer-decision-assets b { color: #172033; line-height: 1.45; }
.customer-quote-workbench,
.customer-attachments {
  display: grid;
  gap: 12px;
  padding: 15px;
  border: 1px solid #dfe6ef;
  border-radius: 8px;
  background: #fff;
}
.quote-form {
  display: grid;
  gap: 10px;
  padding: 12px;
  background: #f6f8fb;
  border-radius: 8px;
}
.quote-form-grid { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 9px; }
.quote-item-list { display: grid; gap: 7px; }
.quote-item-editor {
  display: grid;
  grid-template-columns: 1.4fr 1.2fr 80px 70px 110px auto;
  gap: 7px;
  align-items: center;
}
.quote-item-editor input,
.quote-card-actions input,
.quote-card-actions select {
  min-width: 0;
  min-height: 38px;
  padding: 8px 9px;
  border: 1px solid #d8e0eb;
  border-radius: 6px;
  background: #fff;
}
.quote-form-actions { display: flex; justify-content: flex-end; gap: 8px; }
.quote-card-list { display: grid; gap: 9px; }
.quote-card { display: grid; gap: 9px; padding: 12px; border: 1px solid #dfe6ef; border-radius: 8px; }
.quote-card-head { display: flex; justify-content: space-between; gap: 12px; }
.quote-card-head > div { display: grid; gap: 4px; }
.quote-card-head span,.quote-card p { color: #748198; }
.quote-card-head strong { color: #159455; font-size: 20px; }
.quote-card-items { display: flex; flex-wrap: wrap; gap: 6px; }
.quote-card-items span { padding: 5px 8px; background: #f3f6fa; border-radius: 5px; font-size: 12px; }
.quote-card-actions { display: flex; flex-wrap: wrap; gap: 7px; align-items: center; }
.customer-attachments form { display: flex; gap: 8px; align-items: center; }
.customer-attachments input[type="file"] { flex: 1; min-width: 0; }
.attachment-list { display: grid; gap: 7px; }
.attachment-list article { display: flex; justify-content: space-between; gap: 8px; align-items: center; padding: 9px 10px; background: #f6f8fb; border-radius: 7px; }
.attachment-list a { display: grid; gap: 3px; color: #172033; text-decoration: none; }
.attachment-list a span { color: #748198; font-size: 12px; }

.forecast-summary-grid { display: grid; grid-template-columns: repeat(6, minmax(0, 1fr)); gap: 9px; }
.forecast-metric { display: grid; gap: 5px; min-height: 88px; padding: 12px; border-top: 3px solid #aab5c5; background: #f6f8fb; }
.forecast-metric.green { border-top-color: #17a462; }.forecast-metric.amber { border-top-color: #e59a17; }.forecast-metric.red { border-top-color: #d94a4a; }
.forecast-metric span,.forecast-metric small { color: #748198; }.forecast-metric b { color: #172033; font-size: 20px; }
.forecast-layout { display: grid; grid-template-columns: 1.35fr .65fr; gap: 12px; margin-top: 14px; }
.forecast-customer-list,.forecast-guide-list { display: grid; gap: 8px; align-content: start; }
.forecast-customer-card { display: grid; grid-template-columns: 1fr auto auto; gap: 8px 12px; align-items: center; padding: 11px; border-left: 3px solid #aab5c5; background: #f7f9fc; }
.forecast-customer-card.green { border-left-color: #17a462; }.forecast-customer-card.amber { border-left-color: #e59a17; }.forecast-customer-card.red { border-left-color: #d94a4a; }
.forecast-customer-card > div { display: grid; gap: 3px; }.forecast-customer-card span,.forecast-customer-card p { color: #748198; font-size: 12px; }.forecast-customer-card p { grid-column: 1 / 3; margin: 0; }
.forecast-guide-list article { display: flex; justify-content: space-between; gap: 10px; padding: 10px; border-bottom: 1px solid #e5eaf1; }.forecast-guide-list article div { display: grid; gap: 3px; }.forecast-guide-list span { color: #748198; font-size: 12px; }
.review-management-focus { display: flex; flex-wrap: wrap; gap: 8px; margin-bottom: 12px; }.review-management-focus span { padding: 7px 9px; color: #a45e08; background: #fff6e6; border-radius: 6px; }.review-management-focus span.green { color: #117a49; background: #eaf8f1; }
.review-guide-list { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 9px; }
.review-guide-card { display: grid; gap: 8px; padding: 12px; border-left: 3px solid #aab5c5; background: #f7f9fc; }.review-guide-card.green { border-left-color: #17a462; }.review-guide-card.amber { border-left-color: #e59a17; }.review-guide-card.red { border-left-color: #d94a4a; }.review-guide-card > div { display: flex; justify-content: space-between; }.review-guide-card span,.review-guide-card p { color: #748198; }.review-guide-card p { margin: 0; }

@media (max-width: 1100px) {
  .customer-decision-assets,.quote-form-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .quote-item-editor { grid-template-columns: 1fr 1fr 70px 70px; }
  .quote-item-editor input[name="unit_price"] { grid-column: 1 / 3; }
  .forecast-summary-grid { grid-template-columns: repeat(3, minmax(0, 1fr)); }
  .forecast-layout { grid-template-columns: 1fr; }
  .review-guide-list { grid-template-columns: repeat(2, minmax(0, 1fr)); }
}

.training-view-issues .training-grid,
.training-view-issues .training-supervision-panel,
.training-view-issues .training-assignment-panel,
.training-view-issues .training-ranking-panel,
.training-view-issues .training-exams-panel,
.training-view-courses .training-objection-panel,
.training-view-courses .training-quality-panel,
.training-view-courses .training-roleplay-panel,
.training-view-courses .training-supervision-panel,
.training-view-courses .training-assignment-panel,
.training-view-courses .training-ranking-panel,
.training-view-courses .training-exams-panel,
.training-view-people .training-objection-panel,
.training-view-people .training-quality-panel,
.training-view-people .training-roleplay-panel,
.training-view-people .training-grid,
.training-view-people .training-assignment-panel,
.training-view-tasks .training-objection-panel,
.training-view-tasks .training-quality-panel,
.training-view-tasks .training-roleplay-panel,
.training-view-tasks .training-grid,
.training-view-tasks .training-supervision-panel,
.training-view-tasks .training-ranking-panel,
.training-view-tasks .training-exams-panel { display: none; }

.kpis { display: grid; grid-template-columns: repeat(6, minmax(0, 1fr)); gap: 12px; margin-bottom: 16px; }
.kpi, .panel {
  background: var(--panel);
  border: 1px solid var(--line);
  border-radius: 8px;
}
.kpi { padding: 15px; }
.kpi.red { border-color: #fecdd3; background: #fff7f8; }
.kpi.amber { border-color: #fde68a; background: #fffbeb; }
.kpi.green { border-color: #bbf7d0; background: #f0fdf4; }
.kpi p { margin: 0 0 8px; color: var(--muted); font-size: 12px; font-weight: 800; }
.kpi strong { font-size: 25px; }
.grid { display: grid; grid-template-columns: 1.25fr .75fr; gap: 16px; align-items: start; }
.panel-head {
  padding: 14px 16px;
  display: flex;
  align-items: center;
  justify-content: space-between;
  border-bottom: 1px solid var(--line);
}
.panel-head h3 { margin: 0; font-size: 16px; }
.panel-body { padding: 16px; }
.table-wrap {
  width: 100%;
  max-width: 100%;
  min-width: 0;
  overflow-x: auto;
}
table { width: 100%; min-width: 760px; border-collapse: collapse; }
th, td { padding: 11px 10px; border-bottom: 1px solid #edf0f4; text-align: left; font-size: 13px; vertical-align: middle; }
th { color: #667085; background: #f8fafc; font-weight: 900; }
.tag {
  display: inline-flex;
  align-items: center;
  height: 24px;
  border-radius: 6px;
  padding: 0 8px;
  font-size: 12px;
  font-weight: 800;
  background: #eef2f7;
  color: #475569;
}
.tag.red { color: #b4232b; background: #fee4e5; }
.tag.amber { color: #9a6700; background: #fff1c2; }
.tag.green { color: #067647; background: #dcfae6; }
.muted { color: var(--muted); }
.danger-text { color: var(--red); font-weight: 900; }
.order-kpis { grid-template-columns: repeat(4, minmax(0, 1fr)); }
.order-reconciliation-panel { margin-bottom: 16px; }
.order-reconciliation-kpis { grid-template-columns: repeat(4, minmax(0, 1fr)); margin-bottom: 0; }
.finance-kpis { grid-template-columns: repeat(5, minmax(0, 1fr)); }
.finance-filter-panel, .finance-list-panel { margin-bottom: 16px; }
.finance-filter-grid { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 12px; align-items: end; }
.finance-filter-actions { align-self: end; }
.finance-table { min-width: 1120px; }
.finance-request-type { display: inline-flex; padding: 5px 9px; border-radius: 6px; background: #eff6ff; color: #1d4ed8; font-size: 12px; font-weight: 900; }
.finance-request-type.void { background: #fff1f2; color: #be123c; }
.finance-row-reason { display: block; max-width: 240px; white-space: normal; line-height: 1.5; }
.table-subline { display: block; margin-top: 4px; color: var(--muted); font-size: 11px; }
.finance-detail-reason { margin-bottom: 18px; padding: 13px 14px; border: 1px solid var(--line); border-radius: 8px; background: #f8fafc; }
.finance-detail-reason b,.finance-detail-reason p { display: block; margin: 0; }
.finance-detail-reason p { margin-top: 7px; color: #475569; line-height: 1.6; }
.refund-evidence-section,.refund-timeline-section { margin-top: 20px; }
.refund-evidence-form { display: grid; grid-template-columns: minmax(0,1fr) auto; gap: 8px; align-items: center; padding: 12px; border: 1px dashed #93c5fd; border-radius: 8px; background: #f8fbff; }
.refund-evidence-form input { min-width: 0; }
.refund-evidence-form small { grid-column: 1 / -1; color: var(--muted); }
.refund-evidence-list { display: grid; gap: 8px; margin-top: 10px; }
.refund-evidence-list article { display: flex; align-items: center; justify-content: space-between; gap: 10px; padding: 11px 12px; border: 1px solid var(--line); border-radius: 8px; background: #fff; }
.refund-evidence-list article b,.refund-evidence-list article span { display: block; }
.refund-evidence-list article span { margin-top: 4px; color: var(--muted); font-size: 11px; }
.refund-evidence-list a.ghost { display: inline-flex; align-items: center; text-decoration: none; }
.refund-timeline { position: relative; display: grid; gap: 0; padding-left: 8px; }
.refund-timeline::before { content: ''; position: absolute; top: 12px; bottom: 12px; left: 15px; width: 2px; background: #dbe4ef; }
.refund-timeline article { position: relative; display: grid; grid-template-columns: 18px minmax(0,1fr); gap: 10px; padding: 8px 0; }
.refund-timeline article > i { position: relative; z-index: 1; width: 12px; height: 12px; margin-top: 3px; border: 3px solid #fff; border-radius: 50%; background: #3b82f6; box-shadow: 0 0 0 2px #bfdbfe; }
.refund-timeline article.green > i { background: #16a34a; box-shadow: 0 0 0 2px #bbf7d0; }
.refund-timeline article.red > i { background: #dc2626; box-shadow: 0 0 0 2px #fecaca; }
.refund-timeline article.amber > i { background: #d97706; box-shadow: 0 0 0 2px #fde68a; }
.refund-timeline article b,.refund-timeline article span { display: block; }
.refund-timeline article span { margin-top: 3px; color: var(--muted); font-size: 11px; }
.refund-timeline article p { margin: 5px 0 0; color: #475569; font-size: 12px; line-height: 1.5; }
.link-button { border: 0; padding: 0; background: transparent; color: #1d4ed8; font: inherit; font-weight: 900; text-align: left; }
.link-button:hover { text-decoration: underline; }

@media (max-width: 1100px) {
  .finance-kpis { grid-template-columns: repeat(3, minmax(0, 1fr)); }
  .finance-filter-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
}

@media (max-width: 720px) {
  .finance-kpis, .finance-filter-grid { grid-template-columns: 1fr 1fr; }
  .finance-filter-actions { grid-column: 1 / -1; }
}
.order-signal-panel {
  margin-bottom: 16px;
  border-color: #bbf7d0;
}
.order-signal-list {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(240px, 1fr));
  gap: 10px;
}
.order-signal-card {
  display: grid;
  gap: 9px;
  padding: 12px;
  border: 1px solid #bbf7d0;
  border-left: 4px solid #16a34a;
  border-radius: 8px;
  background: #f8fffb;
}
.order-signal-card b {
  display: block;
  color: var(--ink);
}
.order-signal-card span {
  color: var(--muted);
  font-size: 12px;
  font-weight: 800;
  line-height: 1.45;
}
.order-signal-card p {
  margin: 0;
  color: #166534;
  font-size: 13px;
  font-weight: 800;
  line-height: 1.55;
}
.order-signal-meta {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
  align-items: center;
}
.order-collection-panel {
  margin-bottom: 16px;
  border-color: #fed7aa;
}
.order-collection-body {
  display: grid;
  grid-template-columns: minmax(220px, .7fr) minmax(0, 1.4fr) minmax(260px, .9fr);
  gap: 12px;
  align-items: stretch;
}
.order-collection-summary {
  display: grid;
  gap: 12px;
  align-content: space-between;
  padding: 14px;
  border: 1px solid #fed7aa;
  border-radius: 8px;
  background: #fff7ed;
}
.order-collection-summary span,
.order-collection-summary small {
  display: block;
  color: #9a3412;
  font-size: 12px;
  font-weight: 900;
  line-height: 1.45;
}
.order-collection-summary b {
  display: block;
  margin: 8px 0;
  color: #7c2d12;
  font-size: 30px;
  line-height: 1.1;
}
.order-collection-list,
.order-collection-guide-list {
  display: grid;
  gap: 10px;
  align-content: start;
}
.order-collection-card {
  display: grid;
  grid-template-columns: minmax(160px, 1.2fr) minmax(150px, .9fr) minmax(116px, .6fr) auto;
  gap: 12px;
  align-items: center;
  padding: 12px;
  border: 1px solid #fed7aa;
  border-left: 4px solid #f97316;
  border-radius: 8px;
  background: #fffaf5;
}
.order-collection-card b {
  display: block;
  color: var(--ink);
}
.order-collection-card span {
  color: var(--muted);
  font-size: 12px;
  font-weight: 800;
  line-height: 1.45;
}
.order-collection-amount {
  display: grid;
  gap: 3px;
}
.order-collection-amount b {
  color: #b42318;
  font-size: 15px;
}
.order-collection-meta {
  display: grid;
  gap: 6px;
}
.order-collection-guide {
  width: 100%;
  min-height: 58px;
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto auto;
  gap: 10px;
  align-items: center;
  padding: 10px 11px;
  border: 1px solid var(--line);
  border-radius: 8px;
  background: #fff;
  color: var(--ink);
  text-align: left;
}
.order-collection-guide:hover {
  border-color: #f97316;
  background: #fff7ed;
}
.order-collection-guide b,
.order-collection-guide small {
  display: block;
}
.order-collection-guide small {
  margin-top: 3px;
  color: var(--muted);
  font-size: 12px;
  font-weight: 800;
  line-height: 1.35;
}
.order-collection-guide strong {
  color: #b42318;
  font-size: 16px;
  white-space: nowrap;
}
.order-collection-guide em {
  min-width: 44px;
  height: 24px;
  display: inline-grid;
  place-items: center;
  border-radius: 6px;
  background: #fff1c2;
  color: #9a6700;
  font-style: normal;
  font-size: 12px;
  font-weight: 900;
  white-space: nowrap;
}
.payment-inline {
  display: grid;
  grid-template-columns: minmax(96px, .85fr) minmax(108px, 1fr) auto;
  gap: 8px;
  align-items: center;
  min-width: 330px;
}
.payment-inline input,
.payment-inline select {
  width: 100%;
  min-height: 32px;
  border: 1px solid var(--line);
  border-radius: 6px;
  padding: 6px 8px;
  background: #fff;
}
.order-filter-panel { margin-bottom: 16px; }
.order-filter-grid {
  display: grid;
  grid-template-columns: minmax(220px, 1.4fr) repeat(5, minmax(128px, 1fr)) auto;
  gap: 12px;
  align-items: end;
}
.order-filter-grid .field { margin-bottom: 0; }
.order-filter-actions {
  min-height: 39px;
  align-items: center;
  justify-content: flex-end;
  white-space: nowrap;
}
.selected-row { background: #f8fbff; }
.drawer-backdrop {
  position: fixed;
  inset: 0;
  z-index: 38;
  background: rgba(15, 23, 42, .18);
}
.order-drawer {
  position: fixed;
  top: 0;
  right: 0;
  bottom: 0;
  z-index: 39;
  width: min(520px, calc(100vw - 24px));
  display: flex;
  flex-direction: column;
  background: #fff;
  border-left: 1px solid var(--line);
  box-shadow: -16px 0 42px rgba(15, 23, 42, .16);
}
.drawer-head {
  min-height: 74px;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 14px;
  padding: 18px 20px;
  border-bottom: 1px solid var(--line);
}
.drawer-head h3 {
  margin: 4px 0 0;
  font-size: 20px;
}
.drawer-body {
  flex: 1;
  overflow: auto;
  padding: 18px 20px 24px;
}
.detail-profile {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 10px;
  margin-bottom: 16px;
}
.detail-profile div {
  padding: 14px;
  border: 1px solid var(--line);
  border-radius: 8px;
  background: #f8fafc;
}
.detail-profile div.amber { border-color: #fde68a; background: #fffbeb; }
.detail-profile div.green { border-color: #bbf7d0; background: #f0fdf4; }
.detail-profile div.red { border-color: #fecdd3; background: #fff7f8; }
.detail-profile span,
.detail-lines b,
.payment-history-row span,
.payment-history-row small {
  color: var(--muted);
  font-size: 12px;
  font-weight: 800;
}
.detail-profile b {
  display: block;
  margin-top: 7px;
  font-size: 19px;
}
.detail-lines {
  display: grid;
  gap: 10px;
  margin-bottom: 18px;
}
.detail-lines div {
  display: flex;
  justify-content: space-between;
  gap: 16px;
  padding-bottom: 10px;
  border-bottom: 1px solid #edf0f4;
}
.detail-lines span { text-align: right; }
.detail-section-title {
  margin: 18px 0 10px;
  color: #334155;
  font-weight: 900;
}
.detail-payment-form {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 12px;
  padding: 14px;
  border: 1px solid #bfdbfe;
  border-radius: 8px;
  background: #eff6ff;
}
.detail-collection-plan-form {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 12px;
  margin-top: 14px;
  padding: 14px;
  border: 1px solid #fed7aa;
  border-radius: 8px;
  background: #fff7ed;
}
.detail-delivery-form {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 12px;
  margin-top: 14px;
  padding: 14px;
  border: 1px solid #bbf7d0;
  border-radius: 8px;
  background: #f0fdf4;
}
.detail-payment-form .detail-section-title,
.detail-payment-form .full,
.detail-payment-form button,
.detail-collection-plan-form .detail-section-title,
.detail-collection-plan-form .full,
.detail-collection-plan-form button,
.detail-delivery-form .detail-section-title,
.detail-delivery-form .full,
.detail-delivery-form button {
  grid-column: 1 / -1;
}
.detail-payment-form .field,
.detail-collection-plan-form .field,
.detail-delivery-form .field { margin-bottom: 0; }
.settled-box {
  padding: 14px;
  border: 1px solid #bbf7d0;
  border-radius: 8px;
  background: #f0fdf4;
  color: #166534;
  font-weight: 800;
  line-height: 1.6;
}
.danger-box {
  border-color: #fecdd3;
  background: #fff7f8;
  color: var(--red);
}
.detail-cancel-button {
  width: 100%;
  margin: 0 0 12px;
}
.payment-history {
  display: grid;
  gap: 10px;
}
.payment-history-row {
  display: flex;
  justify-content: space-between;
  gap: 14px;
  padding: 12px;
  border: 1px solid var(--line);
  border-radius: 8px;
  background: #fff;
}
.payment-history-row b,
.payment-history-row span,
.payment-history-row small {
  display: block;
}
.payment-history-row b { margin-bottom: 4px; }
.payment-history-row div:last-child { text-align: right; }
.performance-month-form input {
  min-height: 36px;
  border: 1px solid var(--line);
  border-radius: 6px;
  padding: 0 10px;
  background: #fff;
}
.performance-kpis { grid-template-columns: repeat(8, minmax(0, 1fr)); }
.performance-pacing-panel,
.performance-health-panel,
.performance-action-panel,
.performance-task-panel,
.performance-accountability-panel,
.performance-detail-panel,
.performance-target-planner { margin-bottom: 16px; }
.performance-pacing-body {
  display: grid;
  grid-template-columns: minmax(0, 1.4fr) minmax(320px, .8fr);
  gap: 14px;
  align-items: stretch;
}
.performance-pacing-cards {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 10px;
}
.performance-pacing-card {
  min-height: 86px;
  display: grid;
  align-content: center;
  gap: 5px;
  padding: 12px;
  border: 1px solid var(--line);
  border-radius: 8px;
  background: #fff;
}
.performance-pacing-card.green { border-color: #bbf7d0; background: #f0fdf4; }
.performance-pacing-card.amber { border-color: #fde68a; background: #fffbeb; }
.performance-pacing-card span,
.performance-pacing-card small,
.performance-watch-item span,
.performance-watch-item small {
  color: var(--muted);
  font-size: 12px;
  font-weight: 900;
  line-height: 1.55;
}
.performance-pacing-card b {
  color: var(--ink);
  font-size: 22px;
  line-height: 1.2;
}
.performance-advice {
  display: grid;
  align-content: start;
  gap: 10px;
  padding: 12px;
  border: 1px solid var(--line);
  border-radius: 8px;
  background: #f8fafc;
}
.performance-advice p {
  margin: 0;
  color: #334155;
  font-size: 13px;
  line-height: 1.65;
}
.performance-watch-list {
  display: grid;
  gap: 8px;
}
.performance-watch-item {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  gap: 3px 10px;
  padding: 10px;
  border: 1px solid var(--line);
  border-radius: 8px;
  background: #fff;
}
.performance-watch-item b,
.performance-watch-item span {
  display: block;
}
.performance-watch-item em {
  grid-row: 1 / span 2;
  grid-column: 2;
  align-self: center;
  padding: 4px 8px;
  border-radius: 999px;
  background: #eef2f7;
  color: #475569;
  font-size: 12px;
  font-style: normal;
  font-weight: 900;
  white-space: nowrap;
}
.performance-watch-item em.green { background: #dcfce7; color: #166534; }
.performance-watch-item em.amber { background: #fef3c7; color: #92400e; }
.performance-watch-item em.red { background: #fee2e2; color: #991b1b; }
.performance-watch-item small {
  grid-column: 1;
}
.performance-health-body {
  display: grid;
  grid-template-columns: minmax(280px, .55fr) minmax(0, 1.45fr);
  gap: 14px;
  align-items: start;
}
.performance-health-kpis {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 10px;
}
.performance-health-metric {
  min-height: 72px;
  display: grid;
  align-content: center;
  gap: 5px;
  padding: 11px 12px;
  border: 1px solid var(--line);
  border-radius: 8px;
  background: #fff;
}
.performance-health-metric.green { border-color: #bbf7d0; background: #f0fdf4; }
.performance-health-metric.amber { border-color: #fde68a; background: #fffbeb; }
.performance-health-metric.red { border-color: #fecaca; background: #fff7f7; }
.performance-health-metric span {
  color: var(--muted);
  font-size: 12px;
  font-weight: 900;
}
.performance-health-metric b {
  color: var(--ink);
  font-size: 22px;
}
.performance-risk-list {
  display: grid;
  gap: 10px;
}
.performance-risk-item {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  gap: 9px 12px;
  align-items: start;
  padding: 12px;
  border: 1px solid var(--line);
  border-left-width: 4px;
  border-radius: 8px;
  background: #fff;
}
.performance-risk-item.green { border-left-color: #16a34a; }
.performance-risk-item.amber { border-left-color: #f59e0b; }
.performance-risk-item.red { border-left-color: var(--red); }
.performance-risk-item b,
.performance-risk-item span {
  display: block;
}
.performance-risk-item p {
  grid-column: 1 / -1;
  margin: 0;
  color: #334155;
  font-size: 13px;
  font-weight: 800;
  line-height: 1.55;
}
.performance-risk-tags,
.performance-row-actions {
  display: flex;
  flex-wrap: wrap;
  gap: 6px;
  align-items: center;
}
.performance-risk-item .performance-risk-tags,
.performance-risk-item .performance-row-actions {
  grid-column: 1 / -1;
}
.performance-action-body {
  display: grid;
  grid-template-columns: minmax(260px, .45fr) minmax(0, 1.55fr);
  gap: 14px;
  align-items: start;
}
.performance-action-kpis,
.workbench-performance-summary {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 10px;
}
.performance-action-metric {
  min-height: 72px;
  display: grid;
  align-content: center;
  gap: 5px;
  padding: 11px 12px;
  border: 1px solid var(--line);
  border-radius: 8px;
  background: #fff;
}
.performance-action-metric.green { border-color: #bbf7d0; background: #f0fdf4; }
.performance-action-metric.amber { border-color: #fde68a; background: #fffbeb; }
.performance-action-metric.red { border-color: #fecaca; background: #fff7f7; }
.performance-action-metric span {
  color: var(--muted);
  font-size: 12px;
  font-weight: 900;
}
.performance-action-metric b {
  color: var(--ink);
  font-size: 21px;
}
.performance-action-list,
.workbench-performance-list {
  display: grid;
  gap: 10px;
}
.performance-action-item {
  display: grid;
  gap: 10px;
  padding: 12px;
  border: 1px solid var(--line);
  border-left: 4px solid #94a3b8;
  border-radius: 8px;
  background: #fff;
}
.performance-action-item.green { border-left-color: #16a34a; }
.performance-action-item.amber { border-left-color: #f59e0b; }
.performance-action-item.red { border-left-color: var(--red); }
.performance-action-title {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  gap: 10px;
  align-items: start;
}
.performance-action-title b,
.performance-action-title span {
  display: block;
}
.performance-action-title span:not(.tag),
.performance-action-meta {
  color: var(--muted);
  font-size: 12px;
  font-weight: 800;
  line-height: 1.5;
}
.performance-action-meta {
  display: flex;
  flex-wrap: wrap;
  gap: 6px;
}
.performance-action-meta span {
  padding: 4px 8px;
  border-radius: 999px;
  background: #f1f5f9;
  color: #475569;
}
.performance-action-steps {
  display: grid;
  gap: 6px;
  margin: 0;
  padding-left: 20px;
  color: #334155;
  font-size: 13px;
  font-weight: 800;
  line-height: 1.55;
}
.performance-action-item.compact {
  gap: 8px;
}
.performance-action-item.compact .performance-action-steps {
  font-size: 12px;
}
.performance-task-body {
  display: grid;
  grid-template-columns: minmax(260px, .45fr) minmax(0, 1.55fr);
  gap: 14px;
  align-items: start;
}
.performance-task-summary {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 10px;
}
.performance-task-list {
  display: grid;
  gap: 10px;
}
.performance-task-item {
  display: grid;
  gap: 10px;
  padding: 12px;
  border: 1px solid var(--line);
  border-left: 4px solid #94a3b8;
  border-radius: 8px;
  background: #fff;
}
.performance-task-item.green { border-left-color: #16a34a; background: #f8fffb; }
.performance-task-item.amber { border-left-color: #f59e0b; }
.performance-task-item.red { border-left-color: var(--red); }
.performance-task-title {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  gap: 10px;
  align-items: start;
}
.performance-task-title b,
.performance-task-title span {
  display: block;
}
.performance-task-title span:not(.tag) {
  color: var(--muted);
  font-size: 12px;
  font-weight: 800;
  line-height: 1.5;
}
.performance-accountability-body {
  display: grid;
  gap: 14px;
}
.performance-accountability-kpis {
  display: grid;
  grid-template-columns: repeat(6, minmax(0, 1fr));
  gap: 10px;
}
.accountability-table {
  width: 100%;
  min-width: 1180px;
  border-collapse: separate;
  border-spacing: 0;
}
.accountability-table th,
.accountability-table td {
  padding: 12px;
  border-bottom: 1px solid var(--line);
  text-align: left;
  vertical-align: top;
}
.accountability-table th {
  color: var(--muted);
  font-size: 12px;
  font-weight: 900;
  background: #f8fafc;
  white-space: nowrap;
}
.accountability-table tr.red td { background: #fff7f7; }
.accountability-table tr.amber td { background: #fffbeb; }
.accountability-table tr.green td { background: #f8fffb; }
.performance-accountability-person {
  min-width: 170px;
  display: grid;
  grid-template-columns: auto minmax(0, 1fr);
  gap: 10px;
  align-items: center;
}
.performance-accountability-person b,
.performance-accountability-person small {
  display: block;
}
.performance-accountability-person small,
.accountability-stack span,
.accountability-stack em,
.accountability-table small {
  color: var(--muted);
  font-size: 12px;
  font-weight: 800;
  line-height: 1.5;
}
.accountability-stack {
  display: grid;
  gap: 4px;
  min-width: 145px;
}
.accountability-stack b {
  color: var(--ink);
  font-size: 13px;
  line-height: 1.45;
}
.accountability-stack em {
  justify-self: start;
  padding: 3px 7px;
  border-radius: 999px;
  background: #f1f5f9;
  font-style: normal;
}
.accountability-stack em.green { background: #dcfce7; color: #166534; }
.accountability-stack em.amber { background: #fef3c7; color: #92400e; }
.accountability-stack em.red { background: #fee2e2; color: #991b1b; }
.accountability-tags {
  margin-bottom: 6px;
  max-width: 230px;
}
.accountability-advice {
  min-width: 210px;
  margin: 0 0 8px;
  color: #334155;
  font-size: 13px;
  font-weight: 900;
  line-height: 1.55;
}
.performance-detail-body {
  display: grid;
  gap: 14px;
}
.performance-detail-kpis {
  display: grid;
  grid-template-columns: repeat(6, minmax(0, 1fr));
  gap: 10px;
}
.performance-detail-advice {
  display: grid;
  gap: 8px;
  padding: 12px;
  border: 1px solid #bfdbfe;
  border-radius: 8px;
  background: #eff6ff;
}
.performance-detail-advice p {
  margin: 0;
  color: #1e3a8a;
  font-size: 13px;
  font-weight: 900;
  line-height: 1.6;
}
.performance-detail-grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 12px;
  align-items: start;
}
.performance-detail-column {
  display: grid;
  gap: 10px;
  min-width: 0;
}
.performance-detail-item {
  display: grid;
  gap: 8px;
  padding: 12px;
  border: 1px solid var(--line);
  border-left: 4px solid #94a3b8;
  border-radius: 8px;
  background: #fff;
}
.performance-detail-item.green { border-left-color: #16a34a; }
.performance-detail-item.amber { border-left-color: #f59e0b; }
.performance-detail-item.red { border-left-color: var(--red); }
.performance-detail-item b,
.performance-detail-item span {
  display: block;
}
.performance-detail-item span {
  color: var(--muted);
  font-size: 12px;
  font-weight: 800;
  line-height: 1.5;
}
.performance-detail-item p {
  margin: 0;
  color: #334155;
  font-size: 13px;
  font-weight: 800;
  line-height: 1.55;
}
.performance-detail-amounts {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 6px;
}
.performance-detail-amounts span,
.performance-detail-amounts b {
  padding: 6px 8px;
  border-radius: 6px;
  background: #f8fafc;
  font-size: 12px;
  line-height: 1.4;
}
.performance-activity-strip {
  display: grid;
  gap: 10px;
}
.performance-activity-item {
  display: grid;
  grid-template-columns: 110px repeat(3, minmax(0, 1fr));
  gap: 8px;
  align-items: center;
  padding: 10px 12px;
  border: 1px solid var(--line);
  border-radius: 8px;
  background: #fff;
}
.performance-activity-item span {
  color: var(--muted);
  font-size: 12px;
  font-weight: 900;
}
.performance-target-form {
  display: grid;
  grid-template-columns: minmax(180px, .8fr) minmax(160px, 1fr) auto minmax(160px, 1fr) auto;
  gap: 10px;
  align-items: end;
}
.performance-target-form .field {
  margin-bottom: 0;
}
.performance-target-summary {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 10px;
}
.performance-table { min-width: 1540px; }
.performance-table th:last-child,
.performance-table td:last-child {
  position: sticky;
  right: 0;
  z-index: 2;
  min-width: 190px;
  background: #fff;
  box-shadow: -10px 0 18px rgba(15,23,42,.06);
}
.performance-table th:last-child {
  z-index: 3;
  background: #f8fafc;
}
.performance-table tr.is-highlighted td {
  background: #eff6ff;
  transition: background .2s ease;
}
.rank-badge {
  width: 30px;
  height: 30px;
  display: inline-grid;
  place-items: center;
  border-radius: 50%;
  background: #eef2f7;
  color: #475569;
  font-weight: 900;
}
.rank-badge.top {
  color: #92400e;
  background: #fef3c7;
}
.progress-cell {
  display: grid;
  gap: 7px;
  min-width: 120px;
  font-weight: 900;
}
.progress-track {
  height: 8px;
  overflow: hidden;
  border-radius: 999px;
  background: #e5e7eb;
}
.progress-track i {
  display: block;
  height: 100%;
  border-radius: inherit;
  background: linear-gradient(90deg, var(--blue), var(--teal));
}
.target-inline {
  display: grid;
  grid-template-columns: minmax(110px, 1fr) auto;
  gap: 8px;
  min-width: 190px;
}
.target-inline input {
  width: 100%;
  min-height: 32px;
  border: 1px solid var(--line);
  border-radius: 6px;
  padding: 6px 8px;
}
.training-kpis { grid-template-columns: repeat(8, minmax(0, 1fr)); }
.training-objection-panel { margin-bottom: 16px; }
.training-objection-body {
  display: grid;
  gap: 14px;
}
.training-objection-summary {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr)) auto;
  gap: 12px;
  align-items: stretch;
}
.training-objection-summary button {
  align-self: stretch;
  min-width: 150px;
}
.training-objection-metric {
  min-height: 72px;
  display: grid;
  align-content: center;
  gap: 5px;
  padding: 12px;
  border: 1px solid var(--line);
  border-radius: 8px;
  background: #f8fafc;
}
.training-objection-metric span {
  color: var(--muted);
  font-size: 12px;
  font-weight: 900;
}
.training-objection-metric b {
  color: var(--ink);
  font-size: 20px;
  line-height: 1.25;
}
.training-objection-metric.green { border-color: #bbf7d0; background: #f0fdf4; }
.training-objection-metric.amber { border-color: #fde68a; background: #fffbeb; }
.training-objection-metric.red { border-color: #fecaca; background: #fff7f7; }
.training-objection-list {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 12px;
}
.training-objection-card {
  display: grid;
  gap: 10px;
  padding: 13px;
  border: 1px solid var(--line);
  border-left: 4px solid var(--blue);
  border-radius: 8px;
  background: #fff;
}
.training-objection-card.amber { border-left-color: #f59e0b; }
.training-objection-card.red { border-left-color: var(--red); }
.training-objection-card.green { border-left-color: #16a34a; }
.training-objection-title {
  display: flex;
  justify-content: space-between;
  gap: 10px;
  align-items: flex-start;
}
.training-objection-title b {
  display: block;
  margin-bottom: 4px;
  color: var(--ink);
}
.training-objection-title span:not(.tag) {
  color: var(--muted);
  font-size: 12px;
  font-weight: 900;
}
.training-objection-card p {
  margin: 0;
  color: #334155;
  line-height: 1.6;
  font-size: 13px;
}
.training-objection-card blockquote {
  margin: 0;
  padding: 10px 12px;
  border-left: 3px solid #93c5fd;
  background: #f8fafc;
  color: #475569;
  line-height: 1.65;
  font-weight: 800;
}
.training-objection-examples {
  display: grid;
  gap: 6px;
}
.training-objection-examples span {
  color: var(--muted);
  font-size: 12px;
  line-height: 1.55;
}
.training-objection-dispatch {
  display: grid;
  gap: 10px;
}
.training-objection-guide-table {
  width: 100%;
  min-width: 920px;
  border-collapse: collapse;
}
.training-objection-guide-table th,
.training-objection-guide-table td {
  padding: 12px;
  border-bottom: 1px solid var(--line);
  text-align: left;
  vertical-align: top;
}
.training-objection-guide-table th {
  color: var(--muted);
  font-size: 12px;
  font-weight: 900;
  background: #f8fafc;
  white-space: nowrap;
}
.training-quality-panel { margin-bottom: 16px; }
.training-quality-body {
  display: grid;
  gap: 14px;
}
.training-quality-summary {
  display: grid;
  grid-template-columns: repeat(5, minmax(0, 1fr));
  gap: 12px;
}
.training-quality-metric {
  min-height: 72px;
  display: grid;
  align-content: center;
  gap: 5px;
  padding: 12px;
  border: 1px solid var(--line);
  border-radius: 8px;
  background: #f8fafc;
}
.training-quality-metric span {
  color: var(--muted);
  font-size: 12px;
  font-weight: 900;
}
.training-quality-metric b {
  color: var(--ink);
  font-size: 20px;
  line-height: 1.25;
}
.training-quality-metric.green { border-color: #bbf7d0; background: #f0fdf4; }
.training-quality-metric.amber { border-color: #fde68a; background: #fffbeb; }
.training-quality-metric.red { border-color: #fecaca; background: #fff7f7; }
.training-quality-layout {
  display: grid;
  grid-template-columns: minmax(0, 1.2fr) minmax(320px, .8fr);
  gap: 12px;
  align-items: start;
}
.training-quality-list,
.training-quality-guide-list {
  display: grid;
  gap: 10px;
}
.training-quality-sample,
.training-quality-guide {
  display: grid;
  gap: 10px;
  padding: 13px;
  border: 1px solid var(--line);
  border-left: 4px solid var(--blue);
  border-radius: 8px;
  background: #fff;
}
.training-quality-sample.green,
.training-quality-guide.green { border-left-color: #16a34a; }
.training-quality-sample.amber,
.training-quality-guide.amber { border-left-color: #f59e0b; }
.training-quality-sample.red,
.training-quality-guide.red { border-left-color: var(--red); }
.training-quality-title {
  display: flex;
  justify-content: space-between;
  gap: 10px;
  align-items: flex-start;
}
.training-quality-title b {
  display: block;
  margin-bottom: 4px;
  color: var(--ink);
}
.training-quality-title span:not(.tag) {
  color: var(--muted);
  font-size: 12px;
  font-weight: 900;
}
.training-quality-sample p,
.training-quality-guide p {
  margin: 0;
  color: #334155;
  font-size: 13px;
  line-height: 1.6;
}
.training-quality-actions {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
}
.training-quality-missing {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
  margin-top: 10px;
}
.training-quality-missing span {
  padding: 6px 10px;
  border-radius: 999px;
  background: #eef2ff;
  color: #3730a3;
  font-size: 12px;
  font-weight: 900;
}
.training-roleplay-panel { margin-bottom: 16px; }
.training-roleplay-body {
  display: grid;
  gap: 14px;
}
.training-roleplay-summary {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 12px;
}
.training-roleplay-layout {
  display: grid;
  grid-template-columns: minmax(0, .9fr) minmax(420px, 1.1fr);
  gap: 14px;
  align-items: start;
}
.training-roleplay-scenarios,
.training-roleplay-workbench,
.training-roleplay-sessions {
  display: grid;
  gap: 10px;
  min-width: 0;
}
.training-roleplay-scenario,
.training-roleplay-session {
  display: grid;
  gap: 8px;
  padding: 12px;
  border: 1px solid var(--line);
  border-left: 4px solid #94a3b8;
  border-radius: 8px;
  background: #fff;
}
.training-roleplay-scenario.active {
  border-color: #93c5fd;
  border-left-color: var(--blue);
  background: #eff6ff;
}
.training-roleplay-scenario.amber,
.training-roleplay-session.amber { border-left-color: #f59e0b; }
.training-roleplay-scenario.red,
.training-roleplay-session.red { border-left-color: var(--red); }
.training-roleplay-scenario.green,
.training-roleplay-session.green { border-left-color: #16a34a; }
.training-roleplay-scenario b,
.training-roleplay-scenario span,
.training-roleplay-session b,
.training-roleplay-session span {
  display: block;
}
.training-roleplay-scenario span,
.training-roleplay-session span {
  color: var(--muted);
  font-size: 12px;
  font-weight: 900;
  line-height: 1.5;
}
.training-roleplay-scenario p,
.training-roleplay-session p {
  margin: 0;
  color: #334155;
  font-size: 13px;
  line-height: 1.6;
}
.training-roleplay-form {
  display: grid;
  gap: 12px;
  padding: 14px;
  border: 1px solid #bfdbfe;
  border-radius: 8px;
  background: #eff6ff;
}
.training-roleplay-prompt {
  display: grid;
  gap: 6px;
  padding: 12px;
  border-radius: 8px;
  background: #fff;
}
.training-roleplay-prompt span,
.training-roleplay-prompt small {
  color: var(--muted);
  font-size: 12px;
  font-weight: 900;
  line-height: 1.5;
}
.training-roleplay-prompt b {
  color: var(--ink);
  line-height: 1.55;
}
.training-roleplay-points {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 8px;
}
.training-roleplay-points span {
  padding: 8px 10px;
  border-radius: 8px;
  background: #dbeafe;
  color: #1e3a8a;
  font-size: 12px;
  font-weight: 900;
  line-height: 1.45;
}
.training-roleplay-form textarea {
  min-height: 120px;
}
.training-roleplay-result {
  display: grid;
  grid-template-columns: minmax(160px, .4fr) minmax(150px, .35fr) minmax(0, 1fr);
  gap: 12px;
  align-items: start;
  padding: 14px;
  border: 1px solid var(--line);
  border-radius: 8px;
  background: #fff;
}
.training-roleplay-score {
  display: grid;
  gap: 5px;
}
.training-roleplay-score span,
.training-roleplay-score small {
  color: var(--muted);
  font-size: 12px;
  font-weight: 900;
  line-height: 1.5;
}
.training-roleplay-score b {
  color: var(--ink);
  font-size: 30px;
}
.training-roleplay-score button {
  justify-self: start;
  margin-top: 4px;
}
.training-roleplay-feedback {
  display: grid;
  gap: 8px;
}
.training-roleplay-feedback div {
  display: grid;
  gap: 4px;
  padding: 9px 10px;
  border-radius: 8px;
  background: #f8fafc;
}
.training-roleplay-feedback div.green { background: #f0fdf4; }
.training-roleplay-feedback div.amber { background: #fffbeb; }
.training-roleplay-feedback b {
  font-size: 13px;
}
.training-roleplay-feedback span {
  color: var(--muted);
  font-size: 12px;
  font-weight: 800;
  line-height: 1.5;
}
.training-roleplay-session {
  grid-template-columns: minmax(0, 1fr) auto;
}
.training-roleplay-session p,
.training-roleplay-session-actions {
  grid-column: 1 / -1;
}
.training-roleplay-session-actions {
  display: flex;
  justify-content: flex-start;
}
.training-grid {
  display: grid;
  grid-template-columns: minmax(0, 1.05fr) minmax(380px, .95fr);
  gap: 16px;
  align-items: start;
  margin-bottom: 16px;
}
.training-course-form {
  display: grid;
  grid-template-columns: minmax(0, 1.1fr) minmax(140px, .6fr);
  gap: 12px;
  padding: 14px;
  margin-bottom: 14px;
  border: 1px solid #bfdbfe;
  border-radius: 8px;
  background: #eff6ff;
}
.training-course-form textarea { min-height: 150px; }
.training-course-form .field { margin-bottom: 0; }
.training-assignment-form {
  display: grid;
  grid-template-columns: minmax(0, 1.1fr) minmax(210px, .9fr) minmax(150px, .55fr) auto;
  gap: 12px;
  align-items: end;
  padding: 13px;
  margin-bottom: 14px;
  border: 1px solid #bfdbfe;
  border-radius: 8px;
  background: #eff6ff;
}
.training-assignment-form .field { margin-bottom: 0; }
.training-assignment-form .form-actions {
  min-height: 39px;
  align-items: center;
  justify-content: flex-end;
}
.training-course-list {
  display: grid;
  gap: 10px;
}
.training-course-card {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto auto;
  gap: 12px;
  align-items: center;
  padding: 13px;
  border: 1px solid var(--line);
  border-radius: 8px;
  background: #fff;
}
.training-course-card b {
  display: block;
  margin-bottom: 5px;
}
.training-course-card span {
  color: var(--muted);
  font-size: 12px;
  font-weight: 800;
}
.training-course-actions {
  display: flex;
  gap: 8px;
  justify-content: flex-end;
  flex-wrap: wrap;
}
.training-start-form {
  padding: 13px;
  margin-bottom: 14px;
  border: 1px solid var(--line);
  border-radius: 8px;
  background: #f8fafc;
}
.training-start-form .field { margin-bottom: 0; }
.training-practice {
  display: grid;
  gap: 12px;
  margin-top: 14px;
}
.training-practice-head {
  display: flex;
  justify-content: space-between;
  gap: 12px;
  align-items: center;
  padding: 12px;
  border: 1px solid #bfdbfe;
  border-radius: 8px;
  background: #eff6ff;
}
.training-practice-head b,
.training-practice-head span {
  display: block;
}
.training-practice-head span {
  margin-top: 4px;
  color: var(--muted);
  font-size: 12px;
  font-weight: 900;
}
.training-practice-question {
  display: grid;
  gap: 9px;
  padding: 13px;
  border: 1px solid var(--line);
  border-radius: 8px;
  background: #fff;
}
.training-practice-question.correct {
  border-color: #bbf7d0;
  background: #f7fef9;
}
.training-practice-question.wrong {
  border-color: #fecdd3;
  background: #fff7f8;
}
.practice-options {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 8px;
}
.practice-options button {
  min-height: 38px;
  padding: 8px 10px;
  border: 1px solid #edf0f4;
  border-radius: 8px;
  background: #fff;
  color: #334155;
  text-align: left;
  font-weight: 800;
}
.practice-options button.correct {
  color: #067647;
  border-color: #86efac;
  background: #dcfae6;
}
.practice-options button.wrong {
  color: #b4232b;
  border-color: #fecdd3;
  background: #fee4e5;
}
.practice-explain {
  padding: 10px;
  border-radius: 8px;
  border: 1px solid var(--line);
  background: #f8fafc;
}
.practice-explain.correct {
  border-color: #bbf7d0;
  background: #f0fdf4;
}
.practice-explain.wrong {
  border-color: #fecdd3;
  background: #fff7f8;
}
.practice-explain b {
  display: block;
  margin-bottom: 5px;
}
.practice-explain p {
  margin: 0;
  color: #475569;
  line-height: 1.7;
}
.training-exam-form {
  display: grid;
  gap: 12px;
  margin-top: 14px;
}
.training-exam-head,
.question-title {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
}
.training-exam-head {
  padding: 12px;
  border: 1px solid #bbf7d0;
  border-radius: 8px;
  background: #f0fdf4;
}
.training-exam-head span,
.question-dimension {
  color: var(--muted);
  font-size: 12px;
  font-weight: 900;
}
.training-question {
  display: grid;
  gap: 9px;
  padding: 13px;
  border: 1px solid var(--line);
  border-radius: 8px;
  background: #fff;
}
.question-title {
  justify-content: flex-start;
  align-items: flex-start;
}
.question-title span {
  width: 28px;
  height: 28px;
  flex: 0 0 auto;
  display: inline-grid;
  place-items: center;
  border-radius: 50%;
  color: #fff;
  background: var(--blue);
  font-weight: 900;
}
.answer-option {
  display: flex;
  gap: 10px;
  align-items: flex-start;
  padding: 9px 10px;
  border: 1px solid #edf0f4;
  border-radius: 8px;
  color: #334155;
  font-weight: 700;
}
.answer-option input { margin-top: 3px; }
.training-result {
  display: grid;
  grid-template-columns: 150px 170px minmax(0, 1fr);
  gap: 14px;
  align-items: center;
  padding: 14px;
  margin-top: 14px;
  border: 1px solid #bbf7d0;
  border-radius: 8px;
  background: #f0fdf4;
}
.training-result span,
.training-result small {
  display: block;
  color: #166534;
  font-weight: 900;
}
.training-result b {
  display: block;
  margin: 6px 0;
  color: #14532d;
  font-size: 34px;
}
.training-result-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 10px;
}
.training-result-grid div {
  padding: 10px;
  border: 1px solid #bbf7d0;
  border-radius: 8px;
  background: #fff;
}
.training-result-grid b {
  font-size: 18px;
  color: #172033;
}
.training-supervision-panel,
.training-assignment-panel,
.training-ranking-panel { margin-bottom: 16px; }
.training-alert-grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 12px;
  margin-bottom: 14px;
}
.training-alert {
  min-height: 96px;
  display: grid;
  align-content: center;
  gap: 6px;
  padding: 13px;
  border: 1px solid var(--line);
  border-radius: 8px;
  background: #f8fafc;
}
.training-alert.red {
  border-color: #fecdd3;
  background: #fff7f8;
}
.training-alert.amber {
  border-color: #fde68a;
  background: #fffbeb;
}
.training-alert.green {
  border-color: #bbf7d0;
  background: #f0fdf4;
}
.training-alert span,
.training-alert small {
  color: var(--muted);
  font-size: 12px;
  font-weight: 900;
}
.training-alert b {
  font-size: 26px;
  color: #172033;
}
.training-closure {
  display: grid;
  grid-template-columns: minmax(240px, .42fr) minmax(0, 1fr);
  gap: 14px;
  margin-bottom: 14px;
}
.training-closure-kpis,
.training-closure-list {
  display: grid;
  gap: 10px;
}
.training-closure-metric {
  display: grid;
  gap: 5px;
  padding: 12px;
  border: 1px solid var(--line);
  border-radius: 8px;
  background: #fff;
}
.training-closure-metric.green {
  border-color: #bbf7d0;
  background: #f0fdf4;
}
.training-closure-metric.amber {
  border-color: #fde68a;
  background: #fffbeb;
}
.training-closure-metric.red {
  border-color: #fecaca;
  background: #fff7f7;
}
.training-closure-metric span {
  color: var(--muted);
  font-size: 12px;
  font-weight: 900;
}
.training-closure-metric b {
  color: var(--ink);
  font-size: 22px;
}
.training-focus-item {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto 88px minmax(120px, .45fr) auto;
  gap: 10px;
  align-items: center;
  padding: 11px 12px;
  border: 1px solid var(--line);
  border-radius: 8px;
  background: #fff;
}
.training-focus-item.overdue,
.training-focus-item.due-soon {
  border-color: #fecaca;
  background: #fff7f7;
}
.training-focus-item.no-due {
  border-color: #fde68a;
  background: #fffbeb;
}
.training-focus-item b {
  display: block;
  margin-bottom: 4px;
  color: var(--ink);
}
.training-focus-item span {
  font-size: 12px;
  font-weight: 900;
}
.training-assignment-table tr.is-highlighted td {
  background: #eff6ff;
  transition: background .2s ease;
}
.training-exam-table,
.training-assignment-table,
.training-learner-table,
.training-rank-table { min-width: 920px; }
.training-answer-review {
  display: grid;
  gap: 10px;
  margin-top: 14px;
}
.answer-review-row {
  display: grid;
  gap: 8px;
  padding: 12px;
  border: 1px solid var(--line);
  border-radius: 8px;
  background: #fff;
}
.answer-review-row.wrong {
  border-color: #fecdd3;
  background: #fff7f8;
}
.answer-review-row.correct {
  border-color: #bbf7d0;
  background: #f0fdf4;
}
.answer-review-row b,
.answer-review-row span {
  display: block;
}
.answer-review-row span {
  margin-top: 5px;
  color: var(--muted);
  font-size: 12px;
  font-weight: 900;
}
.answer-review-row p {
  margin: 0;
  color: #475569;
  line-height: 1.7;
}
.radar-chart {
  width: 160px;
  height: 160px;
}
.radar-chart.mini {
  width: 112px;
  height: 112px;
}
.radar-chart line {
  stroke: #cbd5e1;
  stroke-width: 1;
}
.radar-chart text {
  fill: #64748b;
  font-size: 10px;
  font-weight: 900;
  text-anchor: middle;
  dominant-baseline: middle;
}
.radar-grid {
  fill: rgba(37, 99, 235, .04);
  stroke: #dbeafe;
  stroke-width: 1;
}
.radar-grid.inner {
  fill: rgba(15, 159, 143, .04);
}
.radar-area {
  fill: rgba(37, 99, 235, .28);
  stroke: var(--blue);
  stroke-width: 2;
}
.customer-kpis { grid-template-columns: repeat(6, minmax(0, 1fr)); }
.customer-quality-panel {
  margin-bottom: 16px;
  border-color: #bfdbfe;
}
.customer-quality-body {
  display: grid;
  gap: 12px;
}
.customer-quality-kpis {
  display: grid;
  grid-template-columns: repeat(5, minmax(0, 1fr));
  gap: 10px;
}
.customer-quality-kpis div {
  padding: 11px 12px;
  border: 1px solid var(--line);
  border-radius: 8px;
  background: #f8fafc;
}
.customer-quality-kpis div.amber {
  border-color: #fde68a;
  background: #fffbeb;
}
.customer-quality-kpis div.red {
  border-color: #fecaca;
  background: #fff7f7;
}
.customer-quality-kpis span {
  display: block;
  color: var(--muted);
  font-size: 12px;
  font-weight: 900;
}
.customer-quality-kpis b {
  display: block;
  margin-top: 5px;
  color: var(--ink);
  font-size: 24px;
}
.customer-quality-grid {
  display: grid;
  grid-template-columns: minmax(0, 1fr) minmax(320px, .75fr);
  gap: 12px;
  align-items: start;
}
.quality-list {
  display: grid;
  gap: 10px;
}
.quality-subhead {
  display: flex;
  justify-content: space-between;
  gap: 10px;
  align-items: center;
  color: var(--muted);
  font-size: 12px;
  font-weight: 900;
}
.quality-subhead b {
  color: var(--ink);
  font-size: 14px;
}
.customer-quality-item {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  gap: 10px;
  padding: 12px;
  border: 1px solid var(--line);
  border-radius: 8px;
  background: #fff;
}
.quality-title {
  display: flex;
  justify-content: space-between;
  gap: 8px;
  align-items: center;
  margin-bottom: 4px;
}
.quality-title b {
  color: var(--ink);
}
.customer-quality-item span:not(.tag) {
  color: var(--muted);
  font-size: 12px;
  line-height: 1.45;
}
.quality-issues {
  display: flex;
  gap: 6px;
  flex-wrap: wrap;
  margin-top: 8px;
}
.quality-issues em {
  padding: 5px 8px;
  border-radius: 999px;
  background: #f1f5f9;
  color: #475569;
  font-style: normal;
  font-size: 12px;
  font-weight: 900;
}
.quality-actions {
  display: grid;
  gap: 8px;
  align-content: start;
}
.duplicate-group {
  display: grid;
  gap: 8px;
  padding: 12px;
  border: 1px solid #fde68a;
  border-radius: 8px;
  background: #fffbeb;
}
.duplicate-phone {
  display: flex;
  justify-content: space-between;
  gap: 8px;
  color: #92400e;
  font-weight: 900;
}
.duplicate-phone span {
  font-size: 12px;
}
.duplicate-customer {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  gap: 8px;
  align-items: center;
  padding-top: 8px;
  border-top: 1px solid #fde68a;
}
.duplicate-customer span {
  min-width: 0;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
  color: #475569;
  font-size: 12px;
  font-weight: 800;
}
.duplicate-merge {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  gap: 8px;
  align-items: center;
  padding-top: 8px;
  border-top: 1px solid #fde68a;
}
.duplicate-merge select {
  min-width: 0;
  width: 100%;
  border: 1px solid #fcd34d;
  border-radius: 6px;
  padding: 8px 10px;
  background: #fff;
  font-weight: 800;
}

.customer-stage-control { display:grid; grid-template-columns:minmax(220px,1fr) 150px minmax(220px,1fr) auto; gap:10px; align-items:end; padding:14px; border:1px solid #dbe5f3; border-radius:14px; background:#f8fbff; }
.customer-stage-control div { display:grid; gap:4px; }
.customer-stage-control span { color:var(--muted); font-size:12px; }
.customer-stage-control select,.customer-stage-control input { min-height:38px; border:1px solid #d7e0ec; border-radius:9px; background:#fff; padding:8px 10px; }
.customer-lifecycle-tasks { display:grid; gap:8px; padding:14px; border:1px solid #dce9df; border-radius:14px; background:#f7fcf8; }
.customer-lifecycle-tasks article { display:flex; align-items:center; justify-content:space-between; gap:12px; padding:9px 0; border-top:1px solid #e3eee6; }
.customer-lifecycle-tasks article span { display:block; margin-top:3px; color:var(--muted); font-size:12px; }
.lead-extension-list { display:grid; gap:8px; margin-top:14px; }
.lead-extension-list article { display:flex; align-items:center; justify-content:space-between; gap:12px; padding:10px 12px; border:1px solid #e2e8f0; border-radius:10px; }
.lead-extension-list article span,.lead-extension-list article small { display:block; }
.lead-extension-list article small { margin-top:3px; color:var(--muted); }
.customer-merge-dialog { width:min(820px,calc(100vw - 24px)); max-height:88vh; padding:0; border:0; border-radius:18px; box-shadow:0 24px 80px rgba(15,23,42,.25); }
.customer-merge-dialog::backdrop { background:rgba(15,23,42,.55); }
.merge-preview-form { display:grid; gap:14px; padding:20px; }
.merge-preview-head,.merge-preview-foot { display:flex; align-items:center; justify-content:space-between; gap:12px; }
.merge-preview-head b,.merge-preview-head span { display:block; }
.merge-preview-head span,.merge-preview-foot span { margin-top:4px; color:var(--muted); font-size:12px; }
.merge-field-list { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:10px; max-height:56vh; overflow:auto; }
.merge-field-list label { display:grid; gap:5px; padding:9px; border:1px solid #e2e8f0; border-radius:10px; }
.merge-field-list label span { color:#475569; font-size:12px; font-weight:800; }
.merge-field-list select,.timeline>select { min-width:0; min-height:36px; border:1px solid #d7e0ec; border-radius:8px; background:#fff; padding:7px 9px; }
.similar-customer-list { margin-top:14px; }
.stage-analytics-grid { display:grid; grid-template-columns:repeat(auto-fit,minmax(170px,1fr)); gap:10px; }
.stage-analytics-grid article { display:grid; gap:5px; padding:12px; border:1px solid #e2e8f0; border-radius:10px; background:#fff; }
.stage-analytics-grid article span { color:var(--muted); font-size:12px; }
.stage-analytics-grid article em { color:#15803d; font-style:normal; font-weight:800; }
.stage-analytics-grid article.risk { border-color:#fecaca; background:#fff7f7; }.stage-analytics-grid article.risk em{color:#dc2626}
.policy-rule-form { display:grid; grid-template-columns:repeat(7,minmax(90px,1fr)) auto; gap:9px; align-items:end; }
.policy-rule-list,.handover-batch-list,.stalled-customer-list { display:grid; gap:9px; margin-top:14px; }
.policy-rule-list article,.stalled-customer-list article,.handover-item { display:flex; align-items:center; justify-content:space-between; gap:12px; padding:10px 12px; border:1px solid #e2e8f0; border-radius:10px; }
.policy-rule-list span,.policy-rule-list small,.stalled-customer-list span,.stalled-customer-list small,.handover-batch-head span,.handover-batch-head small { display:block; }.policy-rule-list small,.stalled-customer-list small,.handover-batch-head small{margin-top:3px;color:var(--muted)}
.handover-batch-list>article { padding:12px; border:1px solid #dbe5f3; border-radius:12px; }.handover-batch-head{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:9px}.handover-item{margin-top:6px}.handover-item>em{font-style:normal;color:var(--muted)}
.m-handover-batch{display:grid;gap:8px}.m-handover-batch>span{color:var(--muted);font-size:12px}.m-handover-batch article{display:flex;align-items:center;justify-content:space-between;gap:8px;padding:10px;border:1px solid #e2e8f0;border-radius:10px}.m-handover-batch article span{display:block;color:var(--muted);font-size:11px}
.policy-simulation { display:grid; gap:4px; margin-top:12px; padding:12px; border:1px solid #bfdbfe; border-radius:10px; background:#eff6ff; }.policy-simulation span,.policy-simulation small{color:#475569}
.handover-batch-list>article.is-overdue{border-color:#fecaca;background:#fff7f7}
.retention-metrics{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}.retention-metrics article{display:grid;gap:5px;padding:14px;border:1px solid #dce9df;border-radius:12px;background:#f7fcf8}.retention-metrics article.risk{border-color:#fecaca;background:#fff7f7}.retention-metrics strong{font-size:24px;color:#15803d}.retention-metrics article.risk strong{color:#dc2626}.retention-metrics span{color:var(--muted);font-size:12px}.retention-attention{display:grid;gap:7px;margin-top:12px}.retention-attention article{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:9px 11px;border:1px solid #e2e8f0;border-radius:9px}.retention-attention span,.retention-attention small{display:block}.retention-attention small{margin-top:3px;color:var(--muted)}
.retention-settings-list{display:grid;gap:12px}.retention-setting-form{padding:14px;border:1px solid #dce9df;border-radius:12px;background:#fbfefc}.retention-setting-form header,.retention-setting-form footer{display:flex;align-items:center;justify-content:space-between;gap:12px}.retention-setting-form header span{display:block;margin-top:3px;color:var(--muted);font-size:12px}.retention-setting-form footer{margin-top:12px}.retention-setting-form footer label{font-size:13px;color:var(--muted)}.retention-setting-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;margin-top:12px}.retention-rule-field{display:grid;gap:8px;padding:10px;border-radius:9px;background:#f1f7f2}.retention-rule-field>span{display:flex;align-items:center;gap:7px;font-size:13px}.retention-rule-field input[type=number]{width:70px;padding:6px 8px}.customer-value-kpis{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px}.customer-value-kpis article{padding:13px;border:1px solid #dbe7ef;border-radius:11px;background:#f8fbfd}.customer-value-kpis span,.customer-value-kpis b{display:block}.customer-value-kpis span{color:var(--muted);font-size:12px}.customer-value-kpis b{margin-top:5px;font-size:21px;color:#0f766e}.customer-value-list{margin-top:14px;overflow:auto}.customer-value-list>div{display:grid;grid-template-columns:1.3fr 1fr .7fr 1fr 1fr;gap:10px;align-items:center;min-width:650px;padding:9px 10px;border-bottom:1px solid #edf2f7}.customer-value-list .customer-value-head{background:#f8fafc}.customer-value-list strong{color:#15803d}.m-customer-value-metrics{display:grid;grid-template-columns:repeat(3,1fr);gap:7px}.m-customer-value-metrics span{display:grid;gap:3px;padding:9px 6px;border-radius:9px;background:#f2f8f5;text-align:center;font-size:11px;color:var(--muted)}.m-customer-value-metrics b{font-size:17px;color:#0f766e}
.source-quality-table{display:grid;min-width:720px}.source-quality-table>div{display:grid;grid-template-columns:1.5fr repeat(6,1fr);gap:8px;align-items:center;padding:9px 10px;border-bottom:1px solid #e2e8f0}.source-quality-head{background:#f8fafc}.green-text{color:#15803d;font-weight:800}
@media (max-width:900px){.customer-stage-control{grid-template-columns:1fr}.lead-extension-list article{align-items:flex-start;flex-direction:column}}
@media (max-width:1100px){.policy-rule-form{grid-template-columns:repeat(4,minmax(100px,1fr))}}
@media (max-width:700px){.retention-metrics{grid-template-columns:1fr}.source-quality-table{overflow:auto}.policy-rule-form{grid-template-columns:1fr 1fr}.retention-setting-grid,.customer-value-kpis{grid-template-columns:1fr 1fr}.retention-setting-form footer{align-items:flex-start;flex-direction:column}}
@media (max-width:600px){.merge-field-list{grid-template-columns:1fr}.merge-preview-head,.merge-preview-foot{align-items:stretch;flex-direction:column}.customer-merge-dialog{max-height:94vh}.merge-preview-form{padding:14px}}
.customer-filter-panel { margin-bottom: 16px; }
.customer-filter-grid {
  display: grid;
  grid-template-columns: minmax(180px, 1.4fr) repeat(6, minmax(92px, 1fr)) auto;
  gap: 10px;
  align-items: end;
}
.customer-filter-grid .field { margin-bottom: 0; }
.customer-filter-actions {
  min-height: 39px;
  align-items: center;
  justify-content: flex-end;
  white-space: nowrap;
}
.workbench-strip {
  display: grid;
  grid-template-columns: minmax(0, 1.15fr) minmax(280px, .85fr);
  gap: 16px;
  margin-bottom: 16px;
  align-items: stretch;
}
.workbench-focus .panel-body { height: calc(100% - 53px); }
.workbench-start,
.workbench-active {
  min-height: 132px;
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  align-items: center;
  gap: 16px;
}
.workbench-start b {
  display: block;
  margin-bottom: 8px;
  font-size: 18px;
}
.workbench-start span {
  color: var(--muted);
  font-weight: 800;
}
.compact-clock { margin-bottom: 0; }
.compact-clock strong { font-size: 34px; }
.workbench-actions {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 10px;
}
.workbench-actions button { width: 100%; min-height: 44px; }
.workbench-kpis { grid-template-columns: repeat(4, minmax(0, 1fr)); }
.manager-team-pulse {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 10px;
}
.manager-team-pulse > div {
  min-height: 78px;
  display: grid;
  align-content: center;
  gap: 5px;
  padding: 12px;
  border: 1px solid #dce4ee;
  border-left: 4px solid #94a3b8;
  border-radius: 8px;
  background: #f8fafc;
}
.manager-team-pulse > div.green { border-left-color: #16a34a; background: #f5fff8; }
.manager-team-pulse > div.amber { border-left-color: #f59e0b; background: #fffdf4; }
.manager-team-pulse > div.red { border-left-color: #ef4444; background: #fff7f7; }
.manager-team-pulse span { color: var(--muted); font-size: 12px; font-weight: 900; }
.manager-team-pulse b { color: var(--ink); font-size: 25px; line-height: 1; }
.workbench-sales-board {
  margin-bottom: 16px;
  border-color: #bfdbfe;
}
.command-sales-board {
  border-color: #cbdff8;
  box-shadow: 0 14px 34px rgba(37, 99, 235, .08);
}
.command-sales-board > .panel-head {
  background: linear-gradient(90deg, #ffffff, #f6fbff);
}
.workbench-sales-body {
  display: grid;
  gap: 14px;
}
.sales-stage-strip {
  position: relative;
  display: grid;
  grid-template-columns: repeat(6, minmax(0, 1fr));
  gap: 10px;
}
.sales-stage-strip::before {
  content: "";
  position: absolute;
  left: 24px;
  right: 24px;
  top: 28px;
  height: 2px;
  background: linear-gradient(90deg, #60a5fa, #22c55e, #f59e0b, #ef4444);
  opacity: .28;
}
.sales-stage {
  position: relative;
  z-index: 1;
  min-height: 98px;
  display: grid;
  align-content: start;
  gap: 5px;
  padding: 12px;
  border: 1px solid var(--line);
  border-top: 4px solid var(--blue);
  border-radius: 8px;
  background: #fff;
  text-align: left;
  box-shadow: 0 8px 20px rgba(15, 23, 42, .04);
}
.sales-stage.green { border-top-color: #16a34a; background: #f8fffb; }
.sales-stage.amber { border-top-color: #f59e0b; background: #fffbeb; }
.sales-stage.red { border-top-color: var(--red); background: #fff7f7; }
.sales-stage i {
  width: 30px;
  height: 30px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  margin-bottom: 2px;
  border: 1px solid #dbeafe;
  border-radius: 50%;
  background: #eff6ff;
  color: var(--blue);
  font-style: normal;
  font-size: 11px;
  font-weight: 900;
}
.sales-stage.green i {
  border-color: #bbf7d0;
  background: #f0fdf4;
  color: #166534;
}
.sales-stage.amber i {
  border-color: #fde68a;
  background: #fffbeb;
  color: #92400e;
}
.sales-stage.red i {
  border-color: #fecaca;
  background: #fff7f7;
  color: #991b1b;
}
.sales-stage span,
.sales-stage em,
.sales-stage small {
  color: var(--muted);
  font-size: 12px;
  font-weight: 900;
  font-style: normal;
  line-height: 1.35;
}
.sales-stage b {
  color: var(--ink);
  font-size: 30px;
  line-height: 1;
}
.sales-result-strip {
  display: flex;
  align-items: center;
  gap: 8px;
  flex-wrap: wrap;
  padding: 10px;
  border: 1px solid #dbeafe;
  border-radius: 8px;
  background: linear-gradient(90deg, #f8fafc, #f4fbff);
}
.sales-result-strip > span {
  color: #475569;
  font-size: 12px;
  font-weight: 900;
}
.sales-result-pill {
  display: inline-flex;
  align-items: center;
  gap: 5px;
  min-height: 32px;
  padding: 6px 9px;
  border: 1px solid #cbd5e1;
  border-radius: 8px;
  background: #fff;
  color: #334155;
}
.sales-result-pill b { font-size: 17px; color: #0f172a; }
.sales-result-pill em { font-style: normal; font-size: 12px; font-weight: 900; }
.sales-result-pill.green { border-color: #bbf7d0; background: #f0fdf4; color: #166534; }
.sales-result-pill.amber { border-color: #fde68a; background: #fffbeb; color: #92400e; }
.sales-result-pill.red { border-color: #fecaca; background: #fef2f2; color: #991b1b; }
.sales-flow-grid {
  display: grid;
  grid-template-columns: minmax(0, 1.32fr) minmax(320px, .68fr);
  gap: 14px;
  align-items: start;
}
.sales-leak-board {
  display: grid;
  gap: 10px;
  margin: 14px 0;
  padding: 12px;
  border: 1px solid #d6e4f2;
  border-radius: 8px;
  background:
    linear-gradient(135deg, #ffffff, #f6fbff 72%),
    repeating-linear-gradient(0deg, rgba(37,99,235,.05) 0, rgba(37,99,235,.05) 1px, transparent 1px, transparent 22px);
}
.sales-leak-list {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 10px;
}
.sales-leak-card {
  display: grid;
  gap: 10px;
  min-width: 0;
  padding: 12px;
  border: 1px solid var(--line);
  border-left: 4px solid #16a34a;
  border-radius: 8px;
  background: #fff;
  box-shadow: 0 8px 18px rgba(15, 23, 42, .04);
}
.sales-leak-card.amber { border-left-color: #f59e0b; }
.sales-leak-card.red { border-left-color: var(--red); }
.sales-leak-head {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  gap: 10px;
  align-items: start;
}
.sales-leak-head b {
  display: block;
  color: var(--ink);
}
.sales-leak-head span {
  display: block;
  margin-top: 3px;
  color: var(--muted);
  font-size: 12px;
  font-weight: 800;
  line-height: 1.45;
}
.sales-leak-head strong {
  min-width: 32px;
  height: 32px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  border-radius: 8px;
  background: #eff6ff;
  color: var(--blue);
  font-size: 16px;
}
.sales-leak-metrics {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 8px;
}
.sales-leak-metric {
  min-height: 58px;
  display: grid;
  align-content: center;
  gap: 2px;
  padding: 8px;
  border: 1px solid #e2e8f0;
  border-radius: 8px;
  background: #f8fafc;
}
.sales-leak-metric span,
.sales-leak-metric small {
  color: var(--muted);
  font-size: 11px;
  font-weight: 900;
  line-height: 1.3;
}
.sales-leak-metric b {
  color: var(--ink);
  font-size: 17px;
}
.sales-leak-metric.red {
  border-color: #fecaca;
  background: #fff7f7;
}
.sales-leak-metric.red b { color: #991b1b; }
.sales-leak-metric.amber {
  border-color: #fde68a;
  background: #fffbeb;
}
.sales-leak-metric.amber b { color: #92400e; }
.sales-leak-metric.green {
  border-color: #bbf7d0;
  background: #f0fdf4;
}
.sales-leak-metric.green b { color: #166534; }
.sales-leak-actions {
  display: flex;
  flex-wrap: wrap;
  gap: 7px;
  align-items: center;
}
.sales-flow-main,
.sales-flow-side {
  min-width: 0;
}
.sales-flow-list,
.sales-guide-list {
  display: grid;
  gap: 10px;
}
.sales-flow-list.compact-list {
  grid-template-columns: repeat(2, minmax(0, 1fr));
}
.closing-subhead,
.guide-subhead {
  margin-top: 14px;
}
.sales-flow-card,
.sales-order-card,
.sales-deal-signal-card,
.sales-guide-card {
  display: grid;
  gap: 9px;
  padding: 12px;
  border: 1px solid var(--line);
  border-left: 4px solid var(--blue);
  border-radius: 8px;
  background: #fff;
}
.sales-flow-card.green,
.sales-deal-signal-card.green,
.sales-guide-card.green { border-left-color: #16a34a; }
.sales-flow-card.amber,
.sales-guide-card.amber { border-left-color: #f59e0b; }
.sales-flow-card.red,
.sales-guide-card.red { border-left-color: var(--red); }
.sales-flow-card b,
.sales-order-card b,
.sales-deal-signal-card b,
.sales-guide-card b {
  display: block;
  color: var(--ink);
}
.sales-flow-card span,
.sales-order-card span,
.sales-deal-signal-card span,
.sales-guide-card span {
  color: var(--muted);
  font-size: 12px;
  font-weight: 800;
  line-height: 1.45;
}
.sales-flow-card p,
.sales-deal-signal-card p,
.sales-guide-card p {
  margin: 0;
  color: #334155;
  font-size: 13px;
  line-height: 1.55;
}
.sales-flow-meta {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
  align-items: center;
}
.sales-flow-actions {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
}
.sales-order-card {
  border-left-color: #16a34a;
}
.sales-deal-signal-card {
  border-left-color: #16a34a;
  background: #f0fdf4;
}
.sales-deal-signal-card p {
  color: #166534;
  font-weight: 800;
}
.sales-order-amount {
  display: grid;
  gap: 4px;
}
.sales-order-amount b {
  font-size: 20px;
}
.sales-order-amount span.green { color: #15803d; }
.sales-order-amount span.amber { color: #b45309; }
.sales-guide-card button {
  width: fit-content;
}
.guide-task-actions {
  display: flex;
  flex-wrap: wrap;
  gap: 7px;
  align-items: center;
}
.guide-task-actions.table-actions {
  margin-top: 8px;
}
.guide-task-btn {
  min-height: 30px;
  display: inline-flex;
  gap: 6px;
  align-items: center;
  justify-content: center;
  padding: 5px 8px;
  border: 1px solid #cbd5e1;
  border-radius: 8px;
  background: #fff;
  color: #334155;
  font-size: 12px;
  font-weight: 900;
}
.guide-task-btn b {
  color: inherit;
  font-size: 12px;
}
.guide-task-btn.red {
  border-color: #fecaca;
  background: #fff7f7;
  color: #991b1b;
}
.guide-task-btn.amber {
  border-color: #fde68a;
  background: #fffbeb;
  color: #92400e;
}
.guide-task-btn.green {
  border-color: #bbf7d0;
  background: #f0fdf4;
  color: #166534;
}
.workbench-reminder-board {
  margin-bottom: 16px;
  border-color: #bfdbfe;
}
.workbench-reminder-summary {
  display: grid;
  grid-template-columns: repeat(8, minmax(0, 1fr));
  gap: 10px;
}
.reminder-mini {
  min-height: 70px;
  border: 1px solid var(--line);
  border-radius: 8px;
  padding: 10px 12px;
  background: #fff;
  text-align: left;
  display: grid;
  gap: 5px;
}
.reminder-mini span {
  color: var(--muted);
  font-size: 12px;
  font-weight: 900;
}
.reminder-mini b {
  color: var(--ink);
  font-size: 24px;
}
.reminder-mini.red {
  border-color: #fecaca;
  background: #fff7f7;
}
.reminder-mini.amber {
  border-color: #fde68a;
  background: #fffbeb;
}
.workbench-progress-board {
  margin-bottom: 16px;
}
.workbench-progress-kpis {
  display: grid;
  grid-template-columns: repeat(6, minmax(0, 1fr));
  gap: 10px;
  margin-bottom: 14px;
}
.progress-metric {
  min-height: 68px;
  display: grid;
  gap: 5px;
  padding: 11px 12px;
  border: 1px solid var(--line);
  border-radius: 8px;
  background: #fff;
}
.progress-metric span {
  color: var(--muted);
  font-size: 12px;
  font-weight: 900;
}
.progress-metric b {
  color: var(--ink);
  font-size: 23px;
}
.progress-metric.green {
  border-color: #bbf7d0;
  background: #f0fdf4;
}
.progress-metric.amber {
  border-color: #fde68a;
  background: #fffbeb;
}
.workbench-progress-grid {
  display: grid;
  grid-template-columns: minmax(0, 1.5fr) minmax(320px, .7fr);
  gap: 14px;
  align-items: start;
}
.workbench-progress-grid > *,
.progress-rank,
.progress-recent {
  min-width: 0;
}
.subhead {
  min-height: 34px;
  display: flex;
  justify-content: space-between;
  gap: 10px;
  align-items: center;
  margin-bottom: 8px;
}
.subhead b {
  color: var(--ink);
}
.subhead span {
  color: var(--muted);
  font-size: 12px;
  font-weight: 900;
}
.progress-rank table {
  min-width: 720px;
}
.progress-rank .compact {
  white-space: nowrap;
}
.progress-recent-list {
  display: grid;
  gap: 10px;
}
.progress-recent-item {
  display: grid;
  gap: 8px;
  padding: 12px;
  border: 1px solid var(--line);
  border-radius: 8px;
  background: #fff;
}
.progress-recent-item b {
  display: block;
  color: var(--ink);
}
.progress-recent-item span {
  color: var(--muted);
  font-size: 12px;
  font-weight: 800;
}
.progress-recent-item p {
  margin: 0;
  color: #334155;
  line-height: 1.55;
  font-size: 13px;
}
.workbench-performance-plan {
  margin-bottom: 16px;
  border-color: #c7d2fe;
}
.workbench-performance-tasks {
  margin-bottom: 16px;
  border-color: #bbf7d0;
}
.workbench-performance-body {
  display: grid;
  grid-template-columns: minmax(260px, .45fr) minmax(0, 1.55fr);
  gap: 14px;
  align-items: start;
}
.workbench-performance-list {
  grid-template-columns: repeat(3, minmax(0, 1fr));
}
.workbench-performance-task-list {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 10px;
}
.workbench-performance-task {
  display: grid;
  gap: 9px;
  padding: 12px;
  border: 1px solid var(--line);
  border-left: 4px solid #94a3b8;
  border-radius: 8px;
  background: #fff;
}
.workbench-performance-task.green { border-left-color: #16a34a; background: #f8fffb; }
.workbench-performance-task.amber { border-left-color: #f59e0b; }
.workbench-performance-task.red { border-left-color: var(--red); }
.workbench-performance-task p {
  margin: 0;
  color: #334155;
  font-size: 13px;
  font-weight: 800;
  line-height: 1.55;
}
.workbench-supervision-board {
  margin-bottom: 16px;
  border-color: #bfdbfe;
}
.workbench-supervision-body {
  display: grid;
  gap: 12px;
}
.workbench-supervision-summary {
  display: flex;
  gap: 8px;
  flex-wrap: wrap;
}
.workbench-supervision-summary span {
  padding: 6px 10px;
  border-radius: 999px;
  background: #f1f5f9;
  color: #475569;
  font-size: 12px;
  font-weight: 900;
}
.workbench-supervision-list {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 10px;
}
.workbench-supervision-item {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  gap: 10px;
  align-items: start;
  padding: 12px;
  border: 1px solid var(--line);
  border-left: 4px solid var(--blue);
  border-radius: 8px;
  background: #fff;
}
.workbench-supervision-item.urgent { border-left-color: var(--red); }
.workbench-supervision-item.attention { border-left-color: #f59e0b; }
.workbench-supervision-title {
  display: flex;
  justify-content: space-between;
  gap: 8px;
  align-items: center;
  margin-bottom: 5px;
}
.workbench-supervision-title b {
  color: var(--ink);
}
.workbench-supervision-item span:not(.tag) {
  color: var(--muted);
  font-size: 12px;
  line-height: 1.45;
}
.workbench-supervision-item p {
  margin: 7px 0 0;
  color: #334155;
  line-height: 1.55;
  font-size: 13px;
}
.workbench-quality-board {
  margin-bottom: 16px;
  border-color: #c7d2fe;
}
.workbench-quality-body {
  display: grid;
  gap: 12px;
}
.workbench-quality-summary {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 10px;
}
.workbench-quality-metric {
  min-height: 70px;
  padding: 12px;
  border: 1px solid var(--line);
  border-radius: 8px;
  background: #f8fafc;
}
.workbench-quality-metric span {
  display: block;
  color: var(--muted);
  font-size: 12px;
  font-weight: 800;
}
.workbench-quality-metric b {
  display: block;
  margin-top: 7px;
  color: var(--ink);
  font-size: 24px;
  line-height: 1;
}
.workbench-quality-metric.red { background: #fff5f5; border-color: #fecaca; }
.workbench-quality-metric.amber { background: #fffbeb; border-color: #fde68a; }
.workbench-quality-grid {
  display: grid;
  grid-template-columns: minmax(0, 1.25fr) minmax(320px, .75fr);
  gap: 12px;
  align-items: start;
}
.workbench-quality-list,
.workbench-quality-guide-list {
  display: grid;
  gap: 10px;
}
.workbench-quality-sample,
.workbench-quality-guide {
  padding: 12px;
  border: 1px solid var(--line);
  border-left: 4px solid var(--blue);
  border-radius: 8px;
  background: #fff;
}
.workbench-quality-sample {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  gap: 12px;
  align-items: start;
}
.workbench-quality-sample.green,
.workbench-quality-guide.green { border-left-color: #16a34a; }
.workbench-quality-sample.amber,
.workbench-quality-guide.amber { border-left-color: #f59e0b; }
.workbench-quality-sample.red,
.workbench-quality-guide.red { border-left-color: var(--red); }
.workbench-quality-sample span:not(.tag),
.workbench-quality-guide span:not(.tag) {
  color: var(--muted);
  font-size: 12px;
  line-height: 1.45;
}
.workbench-quality-sample p,
.workbench-quality-guide p {
  margin: 7px 0 0;
  color: #334155;
  font-size: 13px;
  line-height: 1.55;
}
.workbench-quality-actions {
  display: grid;
  gap: 8px;
  min-width: 84px;
}
.workbench-quality-missing {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
  margin-top: 10px;
}
.workbench-quality-missing span {
  padding: 6px 10px;
  border-radius: 999px;
  background: #eef2ff;
  color: #3730a3;
  font-size: 12px;
  font-weight: 900;
}
.workbench-tasks {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 16px;
  align-items: start;
}
.workbench-task-panel .panel-body { padding: 12px; }
.workbench-list {
  display: grid;
  gap: 10px;
}
.workbench-customer {
  display: grid;
  gap: 10px;
  padding: 12px;
  border: 1px solid var(--line);
  border-radius: 8px;
  background: #fff;
}
.workbench-customer b { display: block; margin-bottom: 4px; }
.workbench-customer span { color: var(--muted); font-size: 12px; line-height: 1.5; }
.workbench-customer .tag { color: #475569; }
.workbench-customer .tag.red { color: #b4232b; }
.workbench-customer .tag.amber { color: #9a6700; }
.workbench-reminder-guide-board,
.workbench-guide-board { margin-top: 16px; }
.mobile-guide-board { display: none; }
.dashboard-kpis { grid-template-columns: repeat(6, minmax(0, 1fr)); }
.dashboard-reference-shell{display:grid;gap:18px;margin:-8px -2px 18px;padding:20px;border-radius:18px;background:#f3f6fb}.dashboard-reference-head{display:flex;align-items:flex-end;justify-content:space-between;gap:20px}.dashboard-reference-head>div:first-child{display:grid;gap:3px}.dashboard-reference-head>div:first-child>span{color:#64748b;font-size:10px;font-weight:900;letter-spacing:.12em}.dashboard-reference-head h2{margin:0;color:#172033;font-size:25px}.dashboard-reference-head p{margin:0;color:#8390a4;font-size:12px}.dashboard-reference-filters{display:flex;align-items:center;gap:10px}.dashboard-reference-filters .segmented{display:flex;padding:3px;border:1px solid #dbe3ee;border-radius:9px;background:#fff}.dashboard-reference-filters .segmented button{min-height:34px;padding:0 15px;border:0;border-radius:7px;color:#64748b;background:transparent;font-weight:800}.dashboard-reference-filters .segmented button.active{color:#fff;background:#3189f5;box-shadow:0 4px 12px #3189f533}.dashboard-reference-filters select{min-width:150px;height:42px;border-color:#dbe3ee;background:#fff}.dashboard-refresh{width:42px;height:42px;border:1px solid #dbe3ee;border-radius:10px;color:#64748b;background:#fff;font-size:21px}.dashboard-custom-range{display:flex;align-items:flex-end;justify-content:flex-end;gap:9px;padding:10px 12px;border:1px solid #dbe5f2;border-radius:11px;background:#fff}.dashboard-custom-range label{display:grid;gap:4px;color:#64748b;font-size:11px;font-weight:800}.dashboard-custom-range input{height:34px;padding:5px 9px}.dashboard-custom-range>span,.dashboard-custom-range small{padding-bottom:9px;color:#94a3b8;font-size:11px}.dashboard-color-kpis{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:16px}.dashboard-color-kpi{position:relative;isolation:isolate;min-height:136px;padding:20px 22px;overflow:hidden;border-radius:15px;color:#fff;box-shadow:0 10px 24px #23375f18}.dashboard-color-kpi::before{content:"";position:absolute;z-index:-1;top:-45px;right:-30px;width:130px;height:130px;border-radius:50%;background:#fff1}.dashboard-color-kpi>i{position:absolute;top:22px;right:22px;color:#fff9;font-size:30px;font-style:normal}.dashboard-color-kpi>span,.dashboard-color-kpi>b,.dashboard-color-kpi>small{display:block}.dashboard-color-kpi>span{color:#ffffffe6;font-size:13px;font-weight:800}.dashboard-color-kpi>b{margin-top:8px;font-size:29px;line-height:1}.dashboard-color-kpi>small{margin-top:20px;color:#ffffffd9;font-weight:800}.dashboard-color-kpi small em{margin-left:5px;color:#ffffffb8;font-style:normal}.dashboard-color-kpi.visitors{background:linear-gradient(135deg,#596eea,#7950bd)}.dashboard-color-kpi.orders{background:linear-gradient(135deg,#e26ee9,#f04469)}.dashboard-color-kpi.amount{background:linear-gradient(135deg,#3a9bf4,#13cce0)}.dashboard-color-kpi.rate{background:linear-gradient(135deg,#2ed878,#27dfc9)}.dashboard-color-kpi.customers{background:linear-gradient(135deg,#ff7428,#ffb221)}.dashboard-reference-main,.dashboard-reference-bottom{display:grid;grid-template-columns:minmax(0,2.05fr) minmax(320px,1fr);gap:18px}.dashboard-reference-bottom{grid-template-columns:minmax(0,1.35fr) minmax(360px,.85fr)}.dashboard-reference-card{min-width:0;padding:20px;border:1px solid #e5eaf2;border-radius:16px;background:#fff;box-shadow:0 5px 18px #3341550b}.dashboard-reference-card>header{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;margin-bottom:16px}.dashboard-reference-card header h3{margin:0;color:#172033;font-size:17px}.dashboard-reference-card header span{display:block;margin-top:4px;color:#8a96a9;font-size:11px}.dashboard-reference-card header>em{color:#94a3b8;font-size:11px;font-style:normal}.dashboard-chart-legend{display:flex!important;align-items:center;gap:6px;margin-top:0!important}.dashboard-chart-legend i{width:9px;height:9px;margin-left:7px;border-radius:3px}.dashboard-chart-legend i.visitor{background:#6da8f7}.dashboard-chart-legend i.order{background:#4fd6a1}.dashboard-chart-legend i.rate{height:3px;background:#ff7b24}.dashboard-chart-wrap{width:100%;overflow:hidden}.dashboard-visual-chart{display:block;width:100%;height:auto;min-height:250px}.dashboard-visual-chart .chart-grid line{stroke:#e6ebf2;stroke-width:1}.dashboard-visual-chart text{fill:#8b96a7;font-size:10px}.dashboard-visual-chart .chart-bars .visitor{fill:#70a8f5}.dashboard-visual-chart .chart-bars .order{fill:#56d6a1}.dashboard-visual-chart .chart-rate-line{fill:none;stroke:#ff7622;stroke-width:3;stroke-linecap:round;stroke-linejoin:round}.dashboard-visual-chart .chart-rate-points circle{fill:#fff;stroke:#ff7622;stroke-width:2}.dashboard-today-grid{display:grid;grid-template-columns:1fr 1fr;gap:12px}.dashboard-today-grid article{display:grid;place-items:center;min-height:106px;border-radius:12px}.dashboard-today-grid article b{font-size:24px}.dashboard-today-grid article span{margin-top:3px;color:#64748b;font-size:12px}.dashboard-today-grid .blue{color:#2475e9;background:#eef5ff}.dashboard-today-grid .green{color:#13a657;background:#effbf3}.dashboard-today-grid .orange{color:#f06b16;background:#fff6eb}.dashboard-today-grid .purple{color:#9348e5;background:#f8f0ff}.dashboard-rate-progress{display:grid;gap:8px;margin-top:14px;padding:13px;border-radius:10px;background:#f8fafc}.dashboard-rate-progress>span{display:flex;align-items:center;justify-content:space-between;color:#64748b;font-size:11px}.dashboard-rate-progress strong{color:#2f68e9;font-size:16px}.dashboard-rate-progress>i{height:8px;overflow:hidden;border-radius:99px;background:#e8edf4}.dashboard-rate-progress>i em{display:block;height:100%;border-radius:inherit;background:linear-gradient(90deg,#357df2,#6a5bea)}.dashboard-overview-actions{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin-top:12px}.dashboard-ranking-list{display:grid;gap:5px}.dashboard-ranking-list article{display:grid;grid-template-columns:34px minmax(120px,1fr) minmax(170px,.8fr) 60px;align-items:center;gap:12px;padding:10px 6px;border-bottom:1px solid #eef2f6}.dashboard-ranking-list article>i{width:30px;height:30px;display:grid;place-items:center;border-radius:50%;color:#64748b;background:#eef2f7;font-style:normal;font-weight:900}.dashboard-ranking-list article>i.rank-1{color:#fff;background:#f59e0b}.dashboard-ranking-list article>i.rank-2{color:#fff;background:#94a3b8}.dashboard-ranking-list article>i.rank-3{color:#fff;background:#d97738}.dashboard-ranking-list article>div:nth-child(2){display:grid;gap:3px}.dashboard-ranking-list article>div:nth-child(2) span{color:#8a96a9;font-size:11px}.dashboard-rank-amount{display:grid;grid-template-columns:1fr auto;align-items:center;gap:8px}.dashboard-rank-amount>i{height:7px;overflow:hidden;border-radius:99px;background:#f0f3f7}.dashboard-rank-amount>i em{display:block;height:100%;border-radius:inherit;background:linear-gradient(90deg,#3b82f6,#8b5cf6)}.dashboard-rank-amount span{color:#64748b;font-size:11px}.dashboard-ranking-list article>strong{color:#ef4444;text-align:right;font-size:14px}.dashboard-ranking-list article>strong small{display:block;color:#94a3b8;font-size:9px}.dashboard-visual-funnel{display:grid;justify-items:center;gap:4px;padding:8px 20px}.dashboard-visual-funnel>div{display:flex;align-items:center;justify-content:center;gap:7px;min-height:46px;clip-path:polygon(4% 0,96% 0,100% 100%,0 100%);color:#fff;background:#2362dc;transition:width .25s ease}.dashboard-visual-funnel .step-1{background:#2f73e8}.dashboard-visual-funnel .step-2{background:#4388ed}.dashboard-visual-funnel .step-3{background:#55a0ee}.dashboard-visual-funnel .step-4{background:#31c995}.dashboard-visual-funnel b{font-size:12px}.dashboard-visual-funnel span{font-size:15px;font-weight:900}
.dashboard-command,
.dashboard-grid {
  display: grid;
  grid-template-columns: minmax(0, 1.25fr) minmax(340px, .75fr);
  gap: 16px;
  margin-bottom: 16px;
  align-items: stretch;
}
.dashboard-grid.wide {
  grid-template-columns: minmax(0, .95fr) minmax(420px, 1.05fr);
}
.dashboard-summary {
  height: calc(100% - 53px);
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 12px;
}
.dashboard-summary > div {
  display: grid;
  align-content: center;
  min-height: 92px;
  padding: 14px;
  border: 1px solid var(--line);
  border-radius: 8px;
  background: #f8fafc;
}
.dashboard-summary b {
  display: block;
  margin-bottom: 6px;
  font-size: 22px;
}
.dashboard-summary span {
  color: var(--muted);
  font-size: 12px;
  font-weight: 800;
  line-height: 1.55;
}
.dashboard-actions {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 10px;
}
.dashboard-actions button { width: 100%; min-height: 44px; }
.dashboard-reminder-panel {
  margin-bottom: 16px;
  border-color: #bfdbfe;
}
.dashboard-reminder-kpis {
  display: grid;
  grid-template-columns: repeat(6, minmax(0, 1fr));
  gap: 10px;
  margin-bottom: 14px;
}
.dashboard-reminder-metric {
  min-height: 72px;
  display: grid;
  align-content: center;
  gap: 5px;
  padding: 11px 12px;
  border: 1px solid var(--line);
  border-radius: 8px;
  background: #fff;
}
.dashboard-reminder-metric span {
  color: var(--muted);
  font-size: 12px;
  font-weight: 900;
}
.dashboard-reminder-metric b {
  color: var(--ink);
  font-size: 21px;
  line-height: 1.2;
}
.dashboard-reminder-metric.green {
  border-color: #bbf7d0;
  background: #f0fdf4;
}
.dashboard-reminder-metric.amber {
  border-color: #fde68a;
  background: #fffbeb;
}
.dashboard-reminder-metric.red {
  border-color: #fecaca;
  background: #fff7f7;
}
.dashboard-quality-panel {
  margin-bottom: 16px;
  border-color: #d7dce4;
}
.dashboard-quality-body {
  display: grid;
  gap: 14px;
}
.dashboard-quality-kpis {
  display: grid;
  grid-template-columns: repeat(5, minmax(0, 1fr));
  gap: 10px;
}
.dashboard-quality-metric {
  min-height: 72px;
  display: grid;
  align-content: center;
  gap: 5px;
  padding: 11px 12px;
  border: 1px solid var(--line);
  border-radius: 8px;
  background: #fff;
}
.dashboard-quality-metric span {
  color: var(--muted);
  font-size: 12px;
  font-weight: 900;
}
.dashboard-quality-metric b {
  color: var(--ink);
  font-size: 20px;
  line-height: 1.25;
}
.dashboard-quality-metric.green {
  border-color: #bbf7d0;
  background: #f0fdf4;
}
.dashboard-quality-metric.amber {
  border-color: #fde68a;
  background: #fffbeb;
}
.dashboard-quality-metric.red {
  border-color: #fecaca;
  background: #fff7f7;
}
.dashboard-quality-layout {
  display: grid;
  grid-template-columns: minmax(0, 1.35fr) minmax(320px, .85fr);
  gap: 14px;
  align-items: start;
}
.dashboard-quality-table {
  min-width: 840px;
}
.dashboard-quality-sample-list {
  display: grid;
  gap: 10px;
}
.dashboard-quality-sample {
  display: grid;
  gap: 9px;
  padding: 12px;
  border: 1px solid var(--line);
  border-left: 4px solid #cbd5e1;
  border-radius: 8px;
  background: #fff;
}
.dashboard-quality-sample.green { border-left-color: #16a34a; }
.dashboard-quality-sample.amber { border-left-color: #f59e0b; }
.dashboard-quality-sample.red { border-left-color: var(--red); }
.dashboard-quality-sample-head {
  display: flex;
  justify-content: space-between;
  gap: 10px;
  align-items: flex-start;
}
.dashboard-quality-sample-head b,
.dashboard-quality-sample-head span {
  display: block;
}
.dashboard-quality-sample-head span:not(.tag),
.dashboard-quality-sample p {
  color: var(--muted);
  font-size: 12px;
  line-height: 1.55;
}
.dashboard-quality-sample p {
  margin: 0;
}
.dashboard-quality-missing {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
}
.dashboard-quality-missing span {
  padding: 7px 10px;
  border-radius: 999px;
  background: #f1f5f9;
  color: #475569;
  font-size: 12px;
  font-weight: 900;
}
.dashboard-objection-panel {
  margin-bottom: 16px;
  border-color: #d7dce4;
}
.objection-conversion-summary {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 10px;
  margin-bottom: 14px;
}
.objection-conversion-metric {
  min-height: 72px;
  display: grid;
  align-content: center;
  gap: 5px;
  padding: 11px 12px;
  border: 1px solid var(--line);
  border-radius: 8px;
  background: #fff;
}
.objection-conversion-metric span {
  color: var(--muted);
  font-size: 12px;
  font-weight: 900;
}
.objection-conversion-metric b {
  color: var(--ink);
  font-size: 20px;
  line-height: 1.25;
}
.objection-conversion-metric.green {
  border-color: #bbf7d0;
  background: #f0fdf4;
}
.objection-conversion-metric.amber {
  border-color: #fde68a;
  background: #fffbeb;
}
.objection-conversion-layout {
  display: grid;
  grid-template-columns: minmax(280px, .6fr) minmax(0, 1.4fr);
  gap: 14px;
  align-items: start;
}
.objection-type-list {
  display: grid;
  gap: 10px;
}
.objection-type-card {
  display: grid;
  gap: 9px;
  padding: 12px;
  border: 1px solid var(--line);
  border-left: 4px solid var(--blue);
  border-radius: 8px;
  background: #fff;
}
.objection-type-card.amber { border-left-color: #f59e0b; }
.objection-type-card.red { border-left-color: var(--red); }
.objection-type-card.green { border-left-color: #16a34a; }
.objection-type-head {
  display: flex;
  justify-content: space-between;
  gap: 10px;
  align-items: flex-start;
}
.objection-type-head b {
  display: block;
  margin-bottom: 4px;
  color: var(--ink);
}
.objection-type-head span,
.objection-type-card small {
  color: var(--muted);
  font-size: 12px;
  font-weight: 900;
  line-height: 1.5;
}
.objection-type-head i {
  font-style: normal;
}
.objection-type-card p {
  margin: 0;
  color: #334155;
  font-size: 13px;
  line-height: 1.6;
}
.objection-guide-table {
  min-width: 660px;
}
.objection-tags {
  display: flex;
  flex-wrap: wrap;
  gap: 5px;
}
.objection-action-cell {
  display: grid;
  gap: 8px;
  align-items: start;
}
.objection-action-cell .compact {
  width: fit-content;
}
.dashboard-reminder-grid {
  display: grid;
  grid-template-columns: minmax(0, 1.55fr) minmax(320px, .75fr);
  gap: 14px;
  align-items: start;
}
.dashboard-progress-table {
  min-width: 760px;
}
.dashboard-progress-recent-list {
  display: grid;
  gap: 10px;
}
.dashboard-progress-recent-item {
  display: grid;
  gap: 8px;
  padding: 12px;
  border: 1px solid var(--line);
  border-radius: 8px;
  background: #fff;
}
.dashboard-progress-recent-item b {
  display: block;
  color: var(--ink);
}
.dashboard-progress-recent-item span,
.dashboard-progress-recent-item small {
  color: var(--muted);
  font-size: 12px;
  font-weight: 800;
  line-height: 1.55;
}
.dashboard-progress-recent-item p {
  margin: 0;
  color: #334155;
  line-height: 1.55;
  font-size: 13px;
}
.dashboard-funnel {
  display: grid;
  gap: 12px;
}
.dashboard-funnel div {
  display: grid;
  grid-template-columns: 42px 58px minmax(0, 1fr);
  gap: 10px;
  align-items: center;
}
.dashboard-funnel span,
.dashboard-funnel b {
  font-weight: 900;
}
.dashboard-funnel span { color: #475569; }
.dashboard-funnel i,
.trend-track {
  height: 10px;
  overflow: hidden;
  border-radius: 999px;
  background: #e5e7eb;
}
.dashboard-funnel i::before {
  content: '';
  display: block;
  width: 100%;
  height: 100%;
  border-radius: inherit;
  background: linear-gradient(90deg, var(--blue), var(--teal));
}
.dashboard-source-strip {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 10px;
  margin-top: 16px;
}
.dashboard-source-strip div {
  padding: 12px;
  border: 1px solid var(--line);
  border-radius: 8px;
  background: #fff;
}
.dashboard-source-strip b,
.dashboard-source-strip span {
  display: block;
}
.dashboard-source-strip span {
  margin-top: 4px;
  color: var(--muted);
  font-size: 12px;
  font-weight: 800;
}
.dashboard-risk-list { display: grid; gap: 4px; }
.dashboard-trend {
  display: grid;
  gap: 12px;
}
.trend-row {
  display: grid;
  grid-template-columns: 46px minmax(0, 1fr) minmax(220px, auto);
  gap: 10px;
  align-items: center;
}
.trend-row span,
.trend-row b {
  font-size: 12px;
  font-weight: 900;
  white-space: nowrap;
}
.trend-row span { color: var(--muted); }
.trend-track i {
  display: block;
  height: 100%;
  border-radius: inherit;
  background: linear-gradient(90deg, #0f9f8f, #2563eb);
}
.dashboard-risk-samples {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 12px;
}
.risk-sample {
  display: grid;
  gap: 10px;
  align-content: start;
  min-width: 0;
}
.risk-sample-head {
  display: flex;
  justify-content: space-between;
  gap: 8px;
  align-items: center;
}
.risk-sample-list {
  display: grid;
  gap: 8px;
}
.risk-customer {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  gap: 3px 8px;
  padding: 10px;
  border: 1px solid var(--line);
  border-radius: 8px;
  background: #fff;
  color: inherit;
  text-align: left;
}
.risk-customer span,
.risk-customer small {
  min-width: 0;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}
.risk-customer span { font-weight: 900; }
.risk-customer small {
  grid-column: 1;
  color: var(--muted);
  font-size: 12px;
  font-weight: 800;
}
.risk-customer i {
  grid-row: 1 / span 2;
  grid-column: 2;
  align-self: center;
  font-style: normal;
}
.dashboard-guide-panel { margin-bottom: 16px; }
.dashboard-guide-table { min-width: 940px; }
.dashboard-accountability-panel { margin-bottom: 16px; }
.accountability-summary {
  display: grid;
  grid-template-columns: repeat(5, minmax(0, 1fr));
  gap: 10px;
  margin-bottom: 12px;
}
.accountability-metric {
  min-height: 72px;
  display: grid;
  align-content: center;
  gap: 5px;
  padding: 11px 12px;
  border: 1px solid var(--line);
  border-radius: 8px;
  background: #fff;
}
.accountability-metric span {
  color: var(--muted);
  font-size: 12px;
  font-weight: 900;
}
.accountability-metric b {
  color: var(--ink);
  font-size: 22px;
}
.accountability-metric.green {
  border-color: #bbf7d0;
  background: #f0fdf4;
}
.accountability-metric.amber {
  border-color: #fde68a;
  background: #fffbeb;
}
.accountability-metric.red {
  border-color: #fecaca;
  background: #fff7f7;
}
.accountability-list {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 10px;
}
.accountability-person {
  display: grid;
  gap: 10px;
  padding: 12px;
  border: 1px solid var(--line);
  border-left-width: 4px;
  border-radius: 8px;
  background: #fff;
}
.accountability-person.green { border-left-color: #16a34a; }
.accountability-person.amber { border-left-color: #f59e0b; }
.accountability-person.red { border-left-color: var(--red); }
.accountability-person-head {
  display: flex;
  justify-content: space-between;
  gap: 12px;
  align-items: flex-start;
}
.accountability-person-head b {
  display: block;
  margin-bottom: 4px;
}
.accountability-person-head span {
  color: var(--muted);
  font-size: 12px;
  font-weight: 800;
}
.accountability-person p,
.guide-action-tip {
  margin: 0;
  color: #334155;
  font-size: 13px;
  font-weight: 800;
  line-height: 1.55;
}
.accountability-score {
  min-width: 72px;
  display: grid;
  justify-items: center;
  gap: 2px;
  padding: 6px 8px;
  border-radius: 8px;
  background: #eef2f7;
}
.accountability-score b {
  color: var(--ink);
  font-size: 18px;
  line-height: 1.1;
}
.accountability-score span {
  color: #475569;
  font-size: 11px;
  font-weight: 900;
  white-space: nowrap;
}
.accountability-score.green { background: #dcfae6; }
.accountability-score.green span,
.accountability-score.green b { color: #067647; }
.accountability-score.amber { background: #fef3c7; }
.accountability-score.amber span,
.accountability-score.amber b { color: #92400e; }
.accountability-score.red { background: #fee4e5; }
.accountability-score.red span,
.accountability-score.red b { color: var(--red); }
.guide-action-card {
  display: grid;
  gap: 12px;
  padding: 14px;
  border: 1px solid var(--line);
  border-radius: 8px;
  background: #fff;
}
.guide-card-head {
  display: flex;
  justify-content: space-between;
  gap: 12px;
  align-items: flex-start;
}
.guide-card-head b {
  display: block;
  margin-bottom: 4px;
  font-size: 16px;
}
.guide-card-head span { color: var(--muted); font-size: 12px; font-weight: 800; }
.guide-card-head .accountability-score b {
  margin-bottom: 0;
  font-size: 18px;
}
.guide-card-head .accountability-score span {
  color: inherit;
  font-size: 11px;
  font-weight: 900;
}
.guide-card-metrics {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 8px;
}
.guide-risk-tags {
  display: flex;
  flex-wrap: wrap;
  gap: 5px;
}
.guide-management-action {
  display: grid;
  gap: 7px;
  align-items: start;
}
.guide-management-action button,
.accountability-person > button {
  width: fit-content;
}
.guide-card-metrics div {
  padding: 10px 8px;
  border: 1px solid var(--line);
  border-radius: 8px;
  background: #f8fafc;
}
.guide-card-metrics span {
  display: block;
  margin-bottom: 5px;
  color: var(--muted);
  font-size: 11px;
  font-weight: 900;
}
.guide-card-metrics b {
  display: block;
  font-size: 14px;
}
.metric-row { display: grid; gap: 10px; }
.task-row { display: flex; justify-content: space-between; gap: 12px; padding: 12px 0; border-bottom: 1px solid #edf0f4; }
.task-button {
  width: 100%;
  border: 0;
  background: transparent;
  color: inherit;
  text-align: left;
}
.task-button:hover { background: #f8fafc; }
.task-row b { display: block; }
.task-row small { color: var(--muted); }
.form-grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 14px; }
.form-grid.single { grid-template-columns: 1fr; }
.full { grid-column: 1 / -1; }
.hidden { display: none !important; }
.form-panel { margin-bottom: 16px; }
.form-actions { display: flex; justify-content: flex-end; gap: 10px; }
.compact { min-height: 30px; padding: 0 10px; font-size: 12px; }
.row-actions, .card-actions { display: flex; gap: 8px; flex-wrap: wrap; }
.card-actions { display: grid; grid-template-columns: 1fr 1fr; }
.big-action { width: 100%; min-height: 48px; font-size: 16px; }
.loading, .empty, .error-block {
  min-height: 120px;
  display: grid;
  place-items: center;
  color: var(--muted);
  font-weight: 800;
}
.error-block { color: var(--red); }
.workflow-empty {
  min-width: 280px;
  display: grid;
  justify-items: center;
  gap: 8px;
  padding: 30px 18px;
  color: #667085;
  text-align: center;
}
.workflow-empty b { color: #263247; font-size: 15px; }
.workflow-empty p { max-width: 520px; margin: 0; font-size: 12px; line-height: 1.7; }
.workflow-empty > div { display: flex; justify-content: center; gap: 8px; margin-top: 4px; }

.reception-layout {
  display: grid;
  grid-template-columns: minmax(0, 1fr) 320px;
  gap: 16px;
  align-items: start;
  margin-bottom: 16px;
}
.reception-management-grid {
  display: grid;
  grid-template-columns: 340px minmax(0, 1fr);
  gap: 16px;
  align-items: start;
  margin-bottom: 16px;
}
.reception-management-grid > .panel { margin: 0; }
.reception-guide-overview table { min-width: 1420px; }
.reception-guide-overview th:last-child,
.reception-guide-overview td:last-child { position: sticky; right: 0; background: #fff; }
.reception-summary-board { margin-bottom: 16px; }
.reception-summary-grid {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(128px, 1fr));
  gap: 10px;
}
.reception-summary-metric {
  min-height: 92px;
  display: grid;
  align-content: center;
  gap: 5px;
  padding: 13px;
  border: 1px solid #dce4ee;
  border-top: 4px solid #94a3b8;
  border-radius: 8px;
  background: #fff;
}
.reception-summary-metric.green { border-top-color: #16a34a; background: #f8fffb; }
.reception-summary-metric span,
.reception-summary-metric small { color: var(--muted); font-size: 12px; font-weight: 850; }
.reception-summary-metric b { color: var(--ink); font-size: 22px; line-height: 1.1; }
.reception-command {
  display: grid;
  grid-template-columns: minmax(0, 1fr) minmax(360px, .72fr) auto;
  gap: 16px;
  align-items: center;
  margin-bottom: 16px;
  padding: 18px;
  border: 1px solid #dbe3ee;
  border-left: 5px solid var(--blue);
  border-radius: 8px;
  background:
    linear-gradient(90deg, rgba(37,99,235,.055), transparent 42%),
    #fff;
  box-shadow: 0 18px 44px rgba(15,23,42,.06);
}
.reception-command.live { border-left-color: #16a34a; }
.reception-command.risk { border-left-color: #f59e0b; background: linear-gradient(90deg, rgba(245,158,11,.09), transparent 44%), #fff; }
.reception-command.empty { border-left-color: #94a3b8; }
.reception-command-copy {
  min-width: 0;
  display: grid;
  gap: 6px;
}
.reception-command-copy span {
  width: fit-content;
  min-height: 24px;
  display: inline-flex;
  align-items: center;
  padding: 0 9px;
  border-radius: 999px;
  background: #eff6ff;
  color: #1d4ed8;
  font-size: 12px;
  font-weight: 900;
}
.reception-command.risk .reception-command-copy span {
  background: #fffbeb;
  color: #b45309;
}
.reception-command.live .reception-command-copy span,
.reception-command.steady .reception-command-copy span {
  background: #f0fdf4;
  color: #15803d;
}
.reception-command-copy h3 {
  margin: 0;
  color: var(--ink);
  font-size: 24px;
  line-height: 1.18;
}
.reception-command-copy p {
  margin: 0;
  max-width: 720px;
  color: #64748b;
  font-size: 13px;
  font-weight: 800;
  line-height: 1.65;
}
.reception-command-metrics {
  display: grid;
  grid-template-columns: repeat(5, minmax(68px, 1fr));
  gap: 8px;
}
.reception-live-status > span:not(.tag) {
  display: inline-flex;
  align-items: center;
  gap: 6px;
  color: #64748b;
  font-size: 12px;
  font-weight: 800;
}
.reception-live-status > span:not(.tag) i {
  width: 8px;
  height: 8px;
  border-radius: 999px;
  background: #16a34a;
  box-shadow: 0 0 0 4px rgba(22, 163, 74, .12);
}
.reception-command-metrics div {
  min-height: 74px;
  display: grid;
  align-content: center;
  gap: 5px;
  padding: 10px;
  border: 1px solid #e2e8f0;
  border-radius: 8px;
  background: rgba(248,250,252,.78);
}
.reception-command-metrics span {
  color: #64748b;
  font-size: 12px;
  font-weight: 900;
}
.reception-command-metrics b {
  color: #0f172a;
  font-size: 22px;
  line-height: 1;
}
.reception-command-actions {
  display: grid;
  grid-template-columns: 1fr;
  gap: 8px;
  min-width: 118px;
}
.reception-command-actions button {
  justify-content: center;
  white-space: nowrap;
}
.reception-card .panel-body { padding: 18px; }
.reception-start-presets {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
  padding: 10px;
  border: 1px dashed #cbd5e1;
  border-radius: 8px;
  background: #f8fafc;
}
.reception-start-presets button {
  min-height: 32px;
  background: #fff;
}
.live-clock {
  display: grid;
  gap: 4px;
  padding: 18px;
  margin-bottom: 16px;
  border: 1px solid #dbeafe;
  border-radius: 8px;
  background: #eff6ff;
}
.live-clock span, .live-clock small { color: #475569; font-weight: 800; }
.live-clock strong { font-size: 40px; line-height: 1; color: #1d4ed8; }
.reception-deposit-check {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 10px;
  padding: 12px 14px;
  border: 1px solid #fde68a;
  border-radius: 8px;
  background: #fffbeb;
}
.reception-deposit-check b {
  color: #92400e;
  font-size: 14px;
}
.reception-deposit-check span {
  color: #92400e;
  font-size: 13px;
  font-weight: 800;
  line-height: 1.45;
  text-align: right;
}
.reception-deposit-check.green {
  border-color: #bbf7d0;
  background: #f0fdf4;
}
.reception-deposit-check.green b,
.reception-deposit-check.green span { color: #166534; }
.reception-deposit-check.muted {
  border-color: #e2e8f0;
  background: #f8fafc;
}
.reception-deposit-check.muted b,
.reception-deposit-check.muted span { color: #64748b; }
.reception-quick-actions {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
  margin-top: 8px;
}
.reception-quick-actions button {
  min-height: 30px;
  padding: 6px 10px;
}
.reception-quick-actions.summary-templates {
  align-items: center;
}
.mini-metrics {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 10px;
}
.mini-metrics div {
  padding: 14px;
  border: 1px solid var(--line);
  border-radius: 8px;
  background: #f8fafc;
}
.mini-metrics b { display: block; font-size: 24px; }
.mini-metrics span { color: var(--muted); font-size: 12px; font-weight: 800; }
.reception-mini-metrics { grid-template-columns: repeat(2, minmax(0, 1fr)); }
.reception-funnel {
  display: grid;
  gap: 10px;
  margin-top: 14px;
  padding-top: 14px;
  border-top: 1px solid var(--line);
}
.reception-funnel-row {
  display: grid;
  gap: 7px;
}
.reception-funnel-row > div {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 10px;
}
.reception-funnel-row b {
  color: #334155;
  font-size: 13px;
}
.reception-funnel-row span {
  color: #64748b;
  font-size: 12px;
  font-weight: 900;
}
.reception-funnel-row i {
  height: 8px;
  overflow: hidden;
  border-radius: 999px;
  background: #edf2f7;
}
.reception-funnel-row em {
  height: 100%;
  display: block;
  border-radius: inherit;
  background: var(--blue);
}
.reception-funnel-row.green em { background: #16a34a; }
.reception-funnel-row.amber em { background: #f59e0b; }
.reception-funnel-row.teal em { background: #0f9f8f; }
.reception-funnel-row.red em { background: #ef4444; }
.reception-deposit-board {
  margin-bottom: 16px;
  border-color: #bfdbfe;
}
.reception-deposit-body {
  display: grid;
  grid-template-columns: minmax(0, 1fr) minmax(320px, .78fr);
  gap: 14px;
  align-items: start;
}
.reception-deposit-summary {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 10px;
}
.reception-deposit-metric {
  min-height: 104px;
  display: grid;
  align-content: start;
  gap: 6px;
  padding: 12px;
  border: 1px solid var(--line);
  border-left: 4px solid #94a3b8;
  border-radius: 8px;
  background: #fff;
  text-align: left;
}
.reception-deposit-metric span,
.reception-deposit-metric small {
  color: var(--muted);
  font-size: 12px;
  font-weight: 900;
  line-height: 1.35;
}
.reception-deposit-metric b {
  color: var(--ink);
  font-size: 28px;
  line-height: 1;
}
.reception-deposit-metric.green { border-left-color: #16a34a; background: #f8fffb; }
.reception-deposit-metric.amber { border-left-color: #f59e0b; background: #fffbeb; }
.reception-deposit-metric.red { border-left-color: var(--red); background: #fff7f7; }
.reception-guide-deposit-list {
  min-width: 0;
  display: grid;
  gap: 10px;
}
.reception-guide-deposit-row {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  gap: 10px;
  align-items: start;
  padding: 12px;
  border: 1px solid var(--line);
  border-left: 4px solid #94a3b8;
  border-radius: 8px;
  background: #fff;
}
.reception-guide-deposit-row.green { border-left-color: #16a34a; background: #f8fffb; }
.reception-guide-deposit-row.amber { border-left-color: #f59e0b; background: #fffbeb; }
.reception-guide-deposit-row b {
  display: block;
  color: var(--ink);
}
.reception-guide-deposit-row span:not(.tag) {
  color: var(--muted);
  font-size: 12px;
  font-weight: 800;
  line-height: 1.45;
}
.reception-guide-deposit-row .quality-mini-tags {
  grid-column: 1 / -1;
}
.reception-filter-panel,
.reception-record-panel { margin-bottom: 16px; }
.reception-record-panel table { min-width: 1840px; }
.reception-record-panel th:last-child,
.reception-record-panel td:last-child { position: sticky; right: 0; background: #fff; }
.reception-summary-cell {
  max-width: 280px;
  display: -webkit-box;
  overflow: hidden;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 2;
  line-height: 1.45;
}
.reception-filter-grid {
  display: grid;
  grid-template-columns: minmax(220px, 1.3fr) repeat(6, minmax(118px, 1fr)) auto;
  gap: 12px;
  align-items: end;
}
.reception-filter-grid .field { margin-bottom: 0; }
.reception-filter-actions {
  min-height: 39px;
  align-items: center;
  justify-content: flex-end;
  white-space: nowrap;
}

.reminder-kpis { grid-template-columns: repeat(8, minmax(0, 1fr)); }
.reminder-task-panel,
.reminder-filter-panel,
.reminder-bulk-panel,
.reminder-list-panel { margin-bottom: 16px; }
.reminder-segmented button {
  min-width: 126px;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 10px;
}
.reminder-segmented button b {
  min-width: 28px;
  text-align: right;
  font-size: 13px;
}
.reminder-filter-grid {
  display: grid;
  grid-template-columns: minmax(220px, 1.4fr) repeat(4, minmax(126px, 1fr)) auto;
  gap: 12px;
  align-items: end;
}
.reminder-filter-grid .field { margin-bottom: 0; }
.reminder-filter-actions {
  min-height: 39px;
  align-items: center;
  justify-content: flex-end;
  white-space: nowrap;
}
.reminder-bulk-form {
  display: grid;
  grid-template-columns: minmax(190px, .72fr) minmax(280px, 1fr) auto;
  gap: 12px;
  align-items: end;
}
.reminder-bulk-form .field { margin-bottom: 0; }
.reminder-bulk-actions {
  display: flex;
  gap: 8px;
  align-items: center;
  justify-content: flex-end;
  white-space: nowrap;
}
.reminder-list {
  display: grid;
  gap: 12px;
}
.reminder-card {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  gap: 14px;
  padding: 14px;
  border: 1px solid var(--line);
  border-left-width: 4px;
  border-radius: 8px;
  background: #fff;
}
.reminder-card.urgent { border-left-color: var(--red); }
.reminder-card.attention { border-left-color: #f59e0b; }
.reminder-card.watch { border-left-color: var(--blue); }
.reminder-card.collection {
  border-left-color: #f97316;
  background: #fffaf5;
}
.reminder-main {
  min-width: 0;
  display: grid;
  gap: 9px;
}
.reminder-title {
  display: flex;
  justify-content: space-between;
  gap: 12px;
  align-items: flex-start;
}
.reminder-title b {
  display: block;
  color: var(--ink);
  font-size: 16px;
}
.reminder-title span {
  display: block;
  margin-top: 3px;
  color: var(--muted);
  font-size: 12px;
  line-height: 1.5;
}
.reminder-meta,
.reminder-reasons {
  display: flex;
  flex-wrap: wrap;
  gap: 6px;
}
.reminder-reasons span {
  padding: 5px 8px;
  border-radius: 999px;
  background: #f1f5f9;
  color: #475569;
  font-size: 12px;
  font-weight: 900;
}
.reminder-main p {
  margin: 0;
  color: #334155;
  line-height: 1.65;
}
.reminder-main blockquote {
  margin: 0;
  padding: 10px 12px;
  border-left: 3px solid #93c5fd;
  background: #f8fafc;
  color: #475569;
  line-height: 1.65;
}
.reminder-actions {
  min-width: 112px;
  display: grid;
  gap: 8px;
  align-content: start;
}
.reminder-select {
  min-height: 36px;
  display: flex;
  align-items: center;
  gap: 8px;
  padding: 0 10px;
  border: 1px solid var(--line);
  border-radius: 6px;
  background: #f8fafc;
  color: #334155;
  font-size: 13px;
  font-weight: 900;
}
.reminder-select input {
  width: 16px;
  height: 16px;
  margin: 0;
  accent-color: var(--blue);
}
.reminder-page-head p {
  margin: 4px 0 0;
  color: var(--muted);
  font-size: 13px;
  font-weight: 800;
}
.reminder-command-board {
  display: grid;
  grid-template-columns: minmax(0, 1fr) minmax(420px, .78fr);
  gap: 14px;
  align-items: stretch;
  margin-bottom: 16px;
  padding: 18px;
  border: 1px solid #dbeafe;
  border-radius: 8px;
  background: linear-gradient(135deg, #ffffff 0%, #f8fbff 55%, #eef8f6 100%);
}
.reminder-command-board.danger {
  border-color: #fecaca;
  background: linear-gradient(135deg, #ffffff 0%, #fff7f7 50%, #f8fbff 100%);
}
.reminder-command-board.calm {
  border-color: #bbf7d0;
  background: linear-gradient(135deg, #ffffff 0%, #f0fdf4 100%);
}
.reminder-command-copy {
  display: grid;
  align-content: center;
  gap: 10px;
  min-width: 0;
}
.reminder-command-copy > span {
  color: var(--blue);
  font-size: 12px;
  font-weight: 900;
}
.reminder-command-copy h3 {
  margin: 0;
  color: #0f172a;
  font-size: 28px;
  line-height: 1.22;
}
.reminder-command-copy p {
  margin: 0;
  color: #475569;
  font-size: 14px;
  font-weight: 800;
  line-height: 1.65;
}
.reminder-command-actions {
  display: flex;
  flex-wrap: wrap;
  gap: 10px;
  margin-top: 4px;
}
.reminder-command-actions button {
  min-height: 40px;
}
.reminder-command-metrics {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 10px;
}
.reminder-command-metric {
  min-height: 112px;
  display: grid;
  align-content: space-between;
  justify-items: start;
  padding: 13px;
  border: 1px solid var(--line);
  border-radius: 8px;
  background: #fff;
  color: var(--ink);
  text-align: left;
}
.reminder-command-metric:hover {
  border-color: #bfdbfe;
  background: #f8fbff;
}
.reminder-command-metric.red {
  border-color: #fecaca;
  background: #fff7f7;
}
.reminder-command-metric.amber {
  border-color: #fde68a;
  background: #fffbeb;
}
.reminder-command-metric span,
.reminder-progress-mini span,
.reminder-team-row span,
.reminder-queue-head span {
  color: var(--muted);
  font-size: 12px;
  font-weight: 900;
  line-height: 1.5;
}
.reminder-command-metric b {
  color: #0f172a;
  font-size: 30px;
  line-height: 1;
}
.reminder-layout {
  display: grid;
  grid-template-columns: minmax(0, 1fr) minmax(340px, 380px);
  gap: 16px;
  align-items: start;
}
.reminder-main-column,
.reminder-side-column {
  min-width: 0;
  display: grid;
  gap: 16px;
}
.reminder-side-column {
  position: sticky;
  top: 16px;
}
.reminder-queue-panel,
.reminder-progress-panel,
.reminder-filter-panel,
.reminder-bulk-panel {
  margin-bottom: 0;
}
.reminder-queue-head {
  align-items: center;
}
.reminder-queue-head h3 {
  margin-bottom: 2px;
}
.reminder-queue-body {
  display: grid;
  gap: 12px;
}
.reminder-priority-tabs {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 8px;
}
.reminder-priority-tabs button {
  min-width: 0;
  min-height: 48px;
  border-radius: 8px;
}
.reminder-emergency-list {
  display: grid;
  gap: 10px;
}
.reminder-queue-card {
  display: grid;
  grid-template-columns: 46px minmax(0, 1fr) minmax(116px, auto);
  gap: 12px;
  align-items: start;
  padding: 13px;
  border: 1px solid var(--line);
  border-left-width: 4px;
  border-radius: 8px;
  background: #fff;
}
.reminder-queue-card.urgent {
  border-left-color: var(--red);
  background: #fffafa;
}
.reminder-queue-card.attention {
  border-left-color: #f59e0b;
}
.reminder-queue-card.watch {
  border-left-color: var(--blue);
}
.reminder-queue-card.collection {
  border-left-color: #f97316;
  background: #fffaf5;
}
.reminder-queue-rank {
  width: 38px;
  height: 38px;
  display: grid;
  place-items: center;
  border-radius: 8px;
  background: #f1f5f9;
  color: #334155;
  font-size: 13px;
  font-weight: 900;
  font-variant-numeric: tabular-nums;
}
.reminder-queue-card.urgent .reminder-queue-rank {
  background: #fee2e2;
  color: #991b1b;
}
.reminder-queue-card.collection .reminder-queue-rank {
  background: #ffedd5;
  color: #9a3412;
}
.reminder-queue-content {
  min-width: 0;
  display: grid;
  gap: 9px;
}
.reminder-queue-title {
  display: flex;
  justify-content: space-between;
  gap: 12px;
  align-items: flex-start;
}
.reminder-queue-title b {
  display: block;
  color: #0f172a;
  font-size: 16px;
}
.reminder-queue-title span {
  display: block;
  margin-top: 3px;
}
.reminder-queue-meta,
.reminder-queue-reasons {
  display: flex;
  flex-wrap: wrap;
  gap: 6px;
}
.reminder-queue-reasons span {
  min-height: 26px;
  display: inline-flex;
  align-items: center;
  padding: 0 8px;
  border-radius: 999px;
  background: #f1f5f9;
  color: #475569;
  font-size: 12px;
  font-weight: 900;
}
.reminder-queue-reasons span.red {
  background: #fee2e2;
  color: #991b1b;
}
.reminder-queue-reasons span.amber {
  background: #fef3c7;
  color: #92400e;
}
.reminder-queue-content p {
  margin: 0;
  color: #334155;
  font-size: 13px;
  font-weight: 800;
  line-height: 1.6;
}
.reminder-script {
  display: grid;
  gap: 5px;
  padding: 10px 12px;
  border: 1px solid #dbeafe;
  border-radius: 8px;
  background: #f8fbff;
}
.reminder-script b {
  color: #1d4ed8;
  font-size: 12px;
}
.reminder-script span {
  color: #475569;
  font-size: 13px;
  line-height: 1.65;
}
.reminder-queue-actions {
  min-width: 112px;
  display: grid;
  gap: 8px;
  align-content: start;
}
.reminder-progress-score {
  display: grid;
  gap: 10px;
  padding: 12px;
  border: 1px solid #fde68a;
  border-radius: 8px;
  background: #fffbeb;
}
.reminder-progress-score.green {
  border-color: #bbf7d0;
  background: #f0fdf4;
}
.reminder-progress-score div {
  display: flex;
  justify-content: space-between;
  align-items: end;
  gap: 8px;
}
.reminder-progress-score b {
  color: #0f172a;
  font-size: 28px;
  line-height: 1;
}
.reminder-progress-score span {
  color: var(--muted);
  font-size: 12px;
  font-weight: 900;
}
.reminder-progress-score i {
  height: 7px;
  overflow: hidden;
  border-radius: 999px;
  background: rgba(148, 163, 184, .28);
}
.reminder-progress-score em {
  display: block;
  height: 100%;
  border-radius: inherit;
  background: #16a34a;
}
.reminder-progress-mini-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 8px;
  margin-top: 10px;
}
.reminder-progress-mini {
  min-height: 70px;
  display: grid;
  align-content: center;
  gap: 5px;
  padding: 10px;
  border: 1px solid var(--line);
  border-radius: 8px;
  background: #fff;
}
.reminder-progress-mini.red {
  border-color: #fecaca;
  background: #fff7f7;
}
.reminder-progress-mini.amber {
  border-color: #fde68a;
  background: #fffbeb;
}
.reminder-progress-mini.green {
  border-color: #bbf7d0;
  background: #f0fdf4;
}
.reminder-progress-mini b {
  color: #0f172a;
  font-size: 19px;
}
.reminder-team-list,
.reminder-recent-list {
  display: grid;
  gap: 9px;
  margin-top: 12px;
}
.reminder-team-row {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto auto;
  gap: 9px;
  align-items: center;
  padding: 10px;
  border: 1px solid var(--line);
  border-radius: 8px;
  background: #fff;
}
.reminder-team-row b {
  display: block;
  color: #0f172a;
}
.reminder-team-stats {
  display: flex;
  flex-wrap: wrap;
  gap: 5px;
  justify-content: flex-end;
}
.reminder-filter-panel .panel-body,
.reminder-bulk-panel .panel-body {
  display: grid;
  gap: 10px;
}
.reminder-filter-grid,
.reminder-bulk-form {
  grid-template-columns: 1fr;
}
.reminder-filter-actions,
.reminder-bulk-actions {
  display: grid;
  grid-template-columns: 1fr 1fr;
  white-space: normal;
}
.reminder-bulk-actions button:last-child {
  grid-column: 1 / -1;
}

.follow-kpis { grid-template-columns: repeat(6, minmax(0, 1fr)); }
.follow-panel,
.follow-filter-panel,
.follow-table-panel,
.follow-supervision-panel { margin-bottom: 16px; }
.follow-segmented button {
  min-width: 132px;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
}
.follow-segmented button b {
  min-width: 28px;
  text-align: right;
  font-size: 13px;
}
.follow-filter-grid {
  display: grid;
  grid-template-columns: minmax(220px, 1.4fr) repeat(4, minmax(126px, 1fr)) auto;
  gap: 12px;
  align-items: end;
}
.follow-filter-grid .field { margin-bottom: 0; }
.follow-filter-actions {
  min-height: 39px;
  align-items: center;
  justify-content: flex-end;
  white-space: nowrap;
}
.progress-check {
  min-width: 168px;
  display: grid;
  gap: 5px;
}
.progress-check small {
  color: var(--muted);
  font-size: 12px;
  line-height: 1.45;
}
.progress-badge {
  width: fit-content;
  max-width: 100%;
  padding: 4px 8px;
  border-radius: 999px;
  background: #eef2f7;
  color: #475569;
  font-size: 12px;
  font-weight: 900;
}
.progress-badge.green {
  color: #067647;
  background: #dcfae6;
}
.progress-badge.amber {
  color: #92400e;
  background: #fef3c7;
}
.progress-badge.red {
  color: var(--red);
  background: #fee4e5;
}
.follow-supervision-body {
  display: grid;
  gap: 12px;
}
.follow-supervision-summary {
  display: grid;
  grid-template-columns: repeat(5, minmax(0, 1fr));
  gap: 10px;
}
.supervision-summary {
  min-height: 70px;
  border: 1px solid var(--line);
  border-radius: 8px;
  background: #fff;
  padding: 10px 12px;
  display: grid;
  gap: 4px;
  text-align: left;
}
.supervision-summary span {
  color: var(--muted);
  font-size: 12px;
  font-weight: 900;
}
.supervision-summary b {
  color: var(--ink);
  font-size: 24px;
}
.supervision-summary:disabled {
  opacity: .58;
  cursor: default;
}
.supervision-summary.urgent:not(:disabled),
.supervision-summary.overdue:not(:disabled) {
  border-color: #fecaca;
  background: #fff7f7;
}
.supervision-summary.high_intent:not(:disabled),
.supervision-summary.no_plan:not(:disabled) {
  border-color: #fde68a;
  background: #fffbeb;
}
.supervision-summary.new:not(:disabled) {
  border-color: #bfdbfe;
  background: #eff6ff;
}
.follow-supervision-list {
  display: grid;
  gap: 10px;
}
.follow-supervision-item {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  gap: 12px;
  padding: 13px;
  border: 1px solid var(--line);
  border-left-width: 4px;
  border-radius: 8px;
  background: #fff;
}
.follow-supervision-item.urgent { border-left-color: var(--red); }
.follow-supervision-item.attention { border-left-color: #f59e0b; }
.follow-supervision-item.watch { border-left-color: var(--blue); }
.supervision-main {
  display: grid;
  gap: 8px;
  min-width: 0;
}
.supervision-title {
  display: flex;
  justify-content: space-between;
  gap: 12px;
  align-items: baseline;
}
.supervision-title b {
  color: var(--ink);
  font-size: 15px;
}
.supervision-title span {
  color: var(--muted);
  font-size: 12px;
  line-height: 1.5;
}
.supervision-tags,
.supervision-reasons {
  display: flex;
  gap: 6px;
  flex-wrap: wrap;
}
.supervision-reasons span {
  padding: 5px 8px;
  border-radius: 999px;
  background: #f1f5f9;
  color: #475569;
  font-size: 12px;
  font-weight: 900;
}
.supervision-quality {
  display: flex;
  gap: 8px;
  flex-wrap: wrap;
  align-items: center;
  padding: 8px 10px;
  border: 1px solid #e2e8f0;
  border-radius: 8px;
  background: #f8fafc;
}
.supervision-quality b {
  color: var(--ink);
  font-size: 12px;
}
.supervision-quality span {
  color: var(--muted);
  font-size: 12px;
  font-weight: 900;
}
.supervision-main p {
  margin: 0;
  color: #334155;
  line-height: 1.65;
}
.supervision-main blockquote {
  margin: 0;
  padding: 10px 12px;
  border-left: 3px solid #93c5fd;
  background: #f8fafc;
  color: #475569;
  line-height: 1.65;
}
.supervision-actions {
  display: grid;
  gap: 8px;
  align-content: start;
  min-width: 112px;
}
.follow-desk { margin-bottom: 16px; border-color: #bfdbfe; }
.follow-desk-grid {
  display: grid;
  grid-template-columns: minmax(0, 1fr) 360px;
  gap: 16px;
  align-items: start;
}
.follow-write,
.follow-ai {
  display: grid;
  gap: 12px;
}
.follow-task-coach {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  gap: 12px;
  align-items: center;
  padding: 13px;
  border: 1px solid #bfdbfe;
  border-left: 4px solid var(--blue);
  border-radius: 8px;
  background: #eff6ff;
}
.follow-task-coach.amber {
  border-color: #fde68a;
  border-left-color: #f59e0b;
  background: #fffbeb;
}
.follow-task-coach.red {
  border-color: #fecaca;
  border-left-color: var(--red);
  background: #fff7f7;
}
.follow-task-coach.green {
  border-color: #bbf7d0;
  border-left-color: #16a34a;
  background: #f0fdf4;
}
.follow-task-coach b {
  display: block;
  margin-top: 8px;
  color: var(--ink);
}
.follow-task-coach p {
  margin: 5px 0 0;
  color: #475569;
  font-size: 13px;
  line-height: 1.55;
}
.follow-task-presets {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
  justify-content: flex-end;
  min-width: 220px;
}
.follow-profile { grid-template-columns: repeat(4, minmax(0, 1fr)); }
.follow-outcome-grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 10px;
  padding: 10px;
  border: 1px solid #dbeafe;
  border-radius: 8px;
  background: #f8fbff;
}
.follow-outcome-grid.compact {
  grid-column: 1 / -1;
}
.follow-outcome-grid .field { margin-bottom: 0; }
.follow-deposit-check {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 10px;
  padding: 11px 13px;
  border: 1px solid #fde68a;
  border-radius: 8px;
  background: #fffbeb;
}
.follow-deposit-check b {
  color: #92400e;
  font-size: 14px;
}
.follow-deposit-check span {
  color: #92400e;
  font-size: 13px;
  font-weight: 800;
  line-height: 1.45;
  text-align: right;
}
.follow-deposit-check.green {
  border-color: #bbf7d0;
  background: #f0fdf4;
}
.follow-deposit-check.green b,
.follow-deposit-check.green span { color: #166534; }
.follow-write textarea { min-height: 150px; }
.follow-submit { justify-content: stretch; }
.follow-submit button { width: 100%; min-height: 44px; }
.quick-order-form {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 10px;
  padding: 13px;
  border: 1px solid #bbf7d0;
  border-radius: 8px;
  background: #f0fdf4;
}
.quick-order-form.urgent {
  border-color: #16a34a;
  box-shadow: 0 0 0 3px rgba(22, 163, 74, .12);
}
.quick-order-head {
  grid-column: 1 / -1;
  display: flex;
  justify-content: space-between;
  gap: 10px;
  align-items: center;
}
.quick-order-head b { color: #166534; }
.quick-order-head span {
  color: #4b7f5d;
  font-size: 12px;
  font-weight: 800;
}
.quick-order-form .field { margin-bottom: 0; }
.quick-order-form button {
  grid-column: 1 / -1;
  min-height: 42px;
}
.ai-card {
  display: grid;
  gap: 9px;
  padding: 13px;
  border: 1px solid var(--line);
  border-radius: 8px;
  background: #fff;
}
.ai-card.blue {
  border-color: #bfdbfe;
  background: #eff6ff;
}
.ai-card b { color: #172033; }
.ai-card p {
  margin: 0;
  color: #475569;
  line-height: 1.7;
}
.ai-card ul {
  margin: 0;
  padding-left: 18px;
  color: #475569;
  line-height: 1.65;
}
.ai-card .timeline-item {
  padding: 8px 0;
}
.follow-list-compact {
  grid-template-columns: repeat(3, minmax(0, 1fr));
}
.mobile-follow-list { display: none; }
.segmented {
  display: flex;
  gap: 8px;
  flex-wrap: wrap;
}
.segmented button {
  min-height: 34px;
  border: 1px solid var(--line);
  border-radius: 6px;
  padding: 0 12px;
  background: #fff;
  color: #475569;
  font-weight: 900;
}
.segmented button.active {
  border-color: var(--blue);
  background: #eff6ff;
  color: var(--blue);
}
.follow-form { margin-bottom: 16px; }
.customer-cards {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 12px;
}
.mobile-customer-list { display: none; }
.customer-card {
  display: grid;
  gap: 12px;
  padding: 16px;
  border: 1px solid var(--line);
  border-radius: 8px;
  background: #fff;
}
.customer-card h3 { margin: 0 0 6px; font-size: 17px; }
.customer-card p { margin: 0; color: var(--muted); font-size: 13px; }
.mobile-customer-card {
  display: grid;
  gap: 12px;
  padding: 14px;
  border: 1px solid var(--line);
  border-radius: 8px;
  background: #fff;
}
.mobile-customer-main {
  display: flex;
  justify-content: space-between;
  gap: 12px;
  align-items: flex-start;
}
.mobile-customer-main b {
  display: block;
  margin-bottom: 5px;
  font-size: 16px;
}
.mobile-customer-main span {
  color: var(--muted);
  font-size: 12px;
  line-height: 1.5;
}
.card-tags { display: flex; gap: 8px; flex-wrap: wrap; }
.card-tags .progress-check {
  flex: 1 0 100%;
  min-width: 0;
}

.insight-panel { margin-bottom: 16px; border-color: #bfdbfe; }
.portrait-hero {
  display: flex;
  justify-content: space-between;
  gap: 14px;
  padding: 16px;
  border-bottom: 1px solid var(--line);
  background: #f8fafc;
}
.portrait-hero b {
  display: block;
  margin-bottom: 5px;
  font-size: 20px;
}
.portrait-hero span {
  color: var(--muted);
  font-size: 13px;
  font-weight: 800;
}
.portrait-tags,
.portrait-actions {
  display: flex;
  gap: 8px;
  flex-wrap: wrap;
  align-items: center;
}
.portrait-actions {
  padding: 12px 16px;
  border-bottom: 1px solid var(--line);
  background: #fff;
}
.portrait-actions button {
  min-width: 92px;
  min-height: 38px;
}
.insight-grid {
  display: grid;
  grid-template-columns: minmax(0, 1fr) 340px;
  gap: 18px;
  align-items: start;
}
.insight-main { display: grid; gap: 14px; }
.customer-profile {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 10px;
}
.customer-profile div {
  padding: 12px;
  border: 1px solid var(--line);
  border-radius: 8px;
  background: #f8fafc;
}
.customer-profile span { display: block; color: var(--muted); font-size: 12px; font-weight: 900; margin-bottom: 5px; }
.customer-profile b { font-size: 14px; }
.analysis-block, .script-box {
  padding: 14px;
  border: 1px solid var(--line);
  border-radius: 8px;
  background: #fff;
}
.portrait-diagnosis {
  display: grid;
  grid-template-columns: 180px minmax(0, 1fr) minmax(260px, .85fr);
  gap: 12px;
  align-items: stretch;
}
.diagnosis-score,
.diagnosis-radar,
.diagnosis-plan {
  min-width: 0;
  padding: 14px;
  border: 1px solid var(--line);
  border-radius: 8px;
  background: #fff;
}
.diagnosis-score {
  display: grid;
  align-content: center;
  gap: 6px;
  border-color: #dbeafe;
  background: #eff6ff;
}
.diagnosis-score.green { border-color: #bbf7d0; background: #f0fdf4; }
.diagnosis-score.amber { border-color: #fde68a; background: #fffbeb; }
.diagnosis-score.red { border-color: #fecaca; background: #fff7f7; }
.diagnosis-score span,
.diagnosis-score small,
.diagnosis-title span,
.diagnosis-plan small {
  color: var(--muted);
  font-size: 12px;
  font-weight: 900;
  line-height: 1.55;
}
.diagnosis-score b {
  color: var(--ink);
  font-size: 30px;
  line-height: 1.1;
}
.diagnosis-title {
  display: flex;
  justify-content: space-between;
  gap: 10px;
  align-items: center;
  margin-bottom: 10px;
}
.diagnosis-title b {
  color: var(--ink);
}
.diagnosis-radar {
  display: grid;
  align-content: start;
  gap: 8px;
}
.diagnosis-radar-row {
  display: grid;
  grid-template-columns: 68px minmax(0, 1fr) 34px;
  gap: 8px;
  align-items: center;
}
.diagnosis-radar-row span,
.diagnosis-radar-row b {
  color: #475569;
  font-size: 12px;
  font-weight: 900;
  white-space: nowrap;
}
.diagnosis-radar-row div {
  height: 8px;
  overflow: hidden;
  border-radius: 999px;
  background: #e5e7eb;
}
.diagnosis-radar-row i {
  display: block;
  height: 100%;
  border-radius: inherit;
  background: linear-gradient(90deg, var(--blue), var(--teal));
}
.diagnosis-plan {
  display: grid;
  align-content: start;
  gap: 9px;
  background: #f8fafc;
}
.diagnosis-plan p {
  margin: 0;
  color: #334155;
  font-size: 13px;
  line-height: 1.6;
}
.follow-quality-panel {
  display: grid;
  gap: 12px;
  padding: 14px;
  border: 1px solid var(--line);
  border-left: 4px solid #94a3b8;
  border-radius: 8px;
  background: #fff;
}
.follow-quality-panel.green,
.follow-quality-compact.green { border-left-color: #16a34a; }
.follow-quality-panel.amber,
.follow-quality-compact.amber { border-left-color: #f59e0b; }
.follow-quality-panel.red,
.follow-quality-compact.red { border-left-color: var(--red); }
.follow-quality-head {
  display: flex;
  justify-content: space-between;
  gap: 12px;
  align-items: start;
}
.follow-quality-head span:not(.tag) {
  display: block;
  color: var(--muted);
  font-size: 12px;
  font-weight: 900;
  margin-bottom: 4px;
}
.follow-quality-head b {
  color: var(--ink);
  font-size: 17px;
}
.follow-quality-panel p,
.quality-script p {
  margin: 0;
  color: #334155;
  font-size: 13px;
  line-height: 1.65;
}
.quality-check-grid {
  display: grid;
  grid-template-columns: repeat(7, minmax(0, 1fr));
  gap: 8px;
}
.quality-check-item {
  min-height: 58px;
  display: grid;
  align-content: center;
  gap: 4px;
  padding: 9px;
  border: 1px solid var(--line);
  border-radius: 8px;
  background: #f8fafc;
}
.quality-check-item.green {
  border-color: #bbf7d0;
  background: #f0fdf4;
}
.quality-check-item.amber {
  border-color: #fde68a;
  background: #fffbeb;
}
.quality-check-item span,
.quality-check-item b {
  display: block;
  font-size: 12px;
  line-height: 1.35;
}
.quality-check-item span {
  color: var(--muted);
  font-weight: 900;
}
.quality-check-item b {
  color: var(--ink);
}
.quality-missing,
.quality-script {
  padding: 12px;
  border: 1px solid var(--line);
  border-radius: 8px;
  background: #f8fafc;
}
.quality-missing b,
.quality-script b {
  display: block;
  margin-bottom: 8px;
  color: var(--ink);
}
.quality-missing ul {
  margin: 0;
  padding-left: 18px;
  color: #334155;
  font-size: 13px;
  line-height: 1.65;
}
.quality-actions {
  display: flex;
  gap: 8px;
  flex-wrap: wrap;
}
.follow-quality-compact {
  border-left: 4px solid #94a3b8;
}
.quality-mini-tags {
  display: flex;
  gap: 6px;
  flex-wrap: wrap;
}
.quality-mini-tags span {
  padding: 4px 8px;
  border-radius: 999px;
  background: #f1f5f9;
  color: #475569;
  font-size: 12px;
  font-weight: 900;
}
.quality-mini-tags span.green {
  background: #dcfce7;
  color: #166534;
}
.quality-mini-tags span.amber {
  background: #fef3c7;
  color: #92400e;
}
.quality-mini-tags span.red {
  background: #fee2e2;
  color: #991b1b;
}
.analysis-block h4, .timeline h4 { margin: 0 0 10px; font-size: 15px; }
.analysis-block ul { margin: 0; padding-left: 18px; }
.analysis-block li { margin: 6px 0; line-height: 1.6; }
.script-box { border-color: #dbeafe; background: #eff6ff; }
.script-box b { display: block; margin-bottom: 8px; color: #1d4ed8; }
.script-box p { margin: 0; line-height: 1.8; }
.portrait-follow-form {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 12px;
  padding: 14px;
  border: 1px solid #bbf7d0;
  border-radius: 8px;
  background: #f0fdf4;
}
.portrait-follow-head {
  grid-column: 1 / -1;
  display: flex;
  justify-content: space-between;
  gap: 12px;
  align-items: center;
}
.portrait-follow-head b { color: #166534; }
.portrait-follow-head span {
  color: #4b7f5d;
  font-size: 12px;
  font-weight: 900;
}
.portrait-follow-form .field { margin-bottom: 0; }
.portrait-follow-form textarea { min-height: 120px; }
.portrait-follow-form .full {
  grid-column: 1 / -1;
}
.timeline {
  padding: 14px;
  border: 1px solid var(--line);
  border-radius: 8px;
  background: #f8fafc;
}
.timeline-item {
  padding: 12px 0;
  border-bottom: 1px solid #e5e7eb;
}
.timeline-item:last-child { border-bottom: 0; }
.timeline-item p { margin: 6px 0; color: #475569; line-height: 1.6; }
.timeline-item small { color: var(--muted); }
.timeline-head { display: flex; align-items: center; gap: 8px; flex-wrap: wrap; }
.timeline-item { --tl: #64748b; }
.timeline-item[data-timeline-type="followup"] { --tl: #2E55D4; }
.timeline-item[data-timeline-type="reception"] { --tl: #27866E; }
.timeline-item[data-timeline-type="order"] { --tl: #1f9d63; }
.timeline-item[data-timeline-type="payment"] { --tl: #1f9d63; }
.timeline-item[data-timeline-type="quote"] { --tl: #c47d16; }
.timeline-item[data-timeline-type="delivery"] { --tl: #5b6ad0; }
.timeline-item[data-timeline-type="stage"] { --tl: #8155c8; }
.timeline-item[data-timeline-type="task"] { --tl: #27866E; }
.timeline-chip { flex: none; padding: 1px 8px; border-radius: 6px; font-size: 10px; font-weight: 800; color: #475569; background: #eef2f7; }
.timeline-chip { color: var(--tl); background: color-mix(in srgb, var(--tl) 13%, #fff); }

.mobile-nav { display: none; }
.mobile-nav-btn {
  min-width: 72px;
  min-height: 42px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  border: 0;
  border-radius: 8px;
  background: transparent;
  color: #64748b;
  font-size: 11px;
  font-weight: 900;
  line-height: 1.2;
  white-space: nowrap;
}
.mobile-nav-btn.active {
  color: var(--blue);
  background: #eff6ff;
}
.toast {
  position: fixed;
  left: 50%;
  bottom: 22px;
  transform: translate(-50%, 20px);
  z-index: 500;
  max-width: min(420px, calc(100vw - 32px));
  padding: 11px 14px;
  border-radius: 8px;
  color: #fff;
  background: #0f172a;
  opacity: 0;
  pointer-events: none;
  transition: .18s ease;
  font-weight: 800;
}
.toast.show { opacity: 1; transform: translate(-50%, 0); }
.toast.error { background: var(--red); }
body.mobile-app-mode {
  min-height: 100dvh;
  overflow: hidden;
  background:
    linear-gradient(120deg, rgba(15,23,42,.96), rgba(17,65,91,.94) 48%, rgba(8,92,86,.96)),
    #0f172a;
}
body.mobile-app-mode::before {
  content: "";
  position: fixed;
  inset: 0;
  pointer-events: none;
  background:
    linear-gradient(90deg, rgba(255,255,255,.045) 1px, transparent 1px),
    linear-gradient(180deg, rgba(255,255,255,.035) 1px, transparent 1px);
  background-size: 34px 34px;
  opacity: .45;
}
body.mobile-app-mode #app {
  position: relative;
  z-index: 1;
  width: min(100vw, 430px);
  height: 100dvh;
  margin: 0 auto;
  overflow: hidden;
  border-left: 1px solid rgba(255,255,255,.16);
  border-right: 1px solid rgba(255,255,255,.16);
  background: #f4f8fb;
  box-shadow: 0 28px 90px rgba(0,0,0,.4);
}
.m-login,
.m-shell {
  min-height: 100dvh;
  background:
    radial-gradient(64% 240px at 10% -40px, rgba(46,85,212,.12), transparent),
    radial-gradient(56% 220px at 94% -30px, rgba(39,134,110,.12), transparent),
    #f5f6f8;
}
.m-login {
  height: 100dvh;
  overflow-y: auto;
  padding: calc(24px + env(safe-area-inset-top)) 16px calc(24px + env(safe-area-inset-bottom));
}
.m-login-card {
  width: 100%;
  max-width: 398px;
  margin: 0 auto;
  display: grid;
  gap: 20px;
  padding: 16px;
  border: 1px solid rgba(148,163,184,.28);
  border-radius: 24px;
  background: rgba(255,255,255,.96);
  box-shadow: 0 18px 48px rgba(15,23,42,.13);
}
.m-login-brand {
  min-height: 118px;
  display: grid;
  align-content: center;
  gap: 14px;
  padding: 18px;
  border-radius: 18px;
  color: #fff;
  background:
    radial-gradient(circle at 90% 10%, rgba(45,212,191,.2), transparent 35%),
    linear-gradient(135deg, #172554, #1d4ed8 64%, #0f766e);
}
.m-login-brand-row {
  display: flex;
  align-items: center;
  gap: 12px;
}
.m-login-mark {
  width: 44px;
  height: 44px;
  flex: 0 0 auto;
  display: grid !important;
  place-items: center;
  border-radius: 14px;
  color: #1d4ed8 !important;
  background: #fff;
  font-size: 18px !important;
  box-shadow: 0 10px 22px rgba(15,23,42,.18);
}
.m-login-brand-row div {
  min-width: 0;
  display: grid;
  gap: 3px;
}
.m-login-brand-row small {
  color: #bfdbfe;
  font-size: 10px;
  font-weight: 900;
  letter-spacing: .06em;
}
.m-login-brand-row b {
  font-size: 20px;
  line-height: 1.2;
}
.m-login-brand span,
.m-page-head span,
.m-hero-kicker {
  color: #2E63D8;
  font-size: 11px;
  font-weight: 600;
  letter-spacing: .12em;
}
.m-login-brand p {
  margin: 0;
  color: rgba(255,255,255,.8);
  font-size: 13px;
  font-weight: 750;
  line-height: 1.5;
}
.m-login-form {
  display: grid;
  gap: 14px;
  padding: 0 4px;
}
.m-login-form-head {
  display: grid;
  gap: 4px;
}
.m-login-form-head h1 {
  margin: 0;
  color: #0f172a;
  font-size: 25px;
  line-height: 1.2;
}
.m-login-form-head p {
  margin: 0;
  color: #64748b;
  font-size: 12px;
  font-weight: 750;
}
.m-login-field {
  margin: 0;
  color: #334155;
  font-size: 13px;
  font-weight: 850;
}
.m-login-field > input,
.m-login-field .login-password-control input {
  min-height: 50px;
  margin-top: 7px;
  border-color: #d7e0ea;
  border-radius: 14px;
  background: #fff;
  font-size: 16px;
  font-weight: 750;
}
.m-login-field > input:focus,
.m-login-field .login-password-control input:focus {
  border-color: #60a5fa;
  box-shadow: 0 0 0 4px rgba(37,99,235,.12);
}
.m-login-field .login-password-toggle {
  top: calc(50% + 3px);
}
.m-login-submit,
.m-full-action {
  width: 100%;
  min-height: 52px;
  font-size: 15px;
}
.m-login-submit {
  margin-top: 2px;
  border-radius: 14px;
}
.m-login-footer {
  display: flex;
  justify-content: center;
  align-items: center;
  gap: 8px;
  color: #94a3b8;
  font-size: 12px;
  font-weight: 750;
}
.m-login-footer i {
  width: 3px;
  height: 3px;
  border-radius: 50%;
  background: #cbd5e1;
}
.m-shell {
  position: relative;
  height: 100dvh;
  display: flex;
  flex-direction: column;
  overflow: hidden;
  color: var(--ink);
}
.m-topbar {
  position: relative;
  z-index: 25;
  flex: 0 0 auto;
  min-height: 60px;
  display: flex;
  justify-content: space-between;
  gap: 9px;
  align-items: center;
  padding: calc(9px + env(safe-area-inset-top)) 18px 9px;
  border-bottom: 1px solid rgba(20,24,29,.07);
  background: rgba(247,248,250,.82);
  backdrop-filter: blur(18px) saturate(170%);
}
.m-app-title {
  min-width: 0;
  display: flex;
  align-items: center;
  gap: 10px;
}
.m-app-mark {
  width: 42px;
  height: 42px;
  display: grid;
  place-items: center;
  border-radius: 14px;
  color: #fff;
  background: linear-gradient(135deg, #172033, #2563eb);
  box-shadow: 0 12px 24px rgba(37,99,235,.22);
  font-size: 11px;
  font-weight: 950;
}
.m-topbar b {
  display: block;
  font-size: 16px;
  line-height: 1.1;
}
.m-topbar small {
  display: block;
  max-width: 240px;
  margin-top: 4px;
  color: #64748b;
  font-size: 11px;
  font-weight: 850;
}
.m-topbar small span {
  display: block;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}
.m-top-actions {
  flex: 0 0 auto;
  display: flex;
  align-items: center;
  gap: 6px;
}
.m-top-actions .top-reminder {
  min-width: 44px;
  min-height: 44px;
  padding: 0 10px;
  font-size: 12px;
}
.m-top-actions .top-notification { min-width: 44px; min-height: 44px; padding: 0 9px; border: 0; border-radius: 12px; font-size: 12px; }
.m-finance-button { position: relative; min-width: 44px; min-height: 44px; border: 0; border-radius: 12px; padding: 0 9px; color: #475569; background: #eef2f7; font-size: 12px; font-weight: 900; }
.m-finance-button.attention { color: #9f1239; background: #ffe4e6; }
.m-finance-button b { position: absolute; top: -5px; right: -5px; min-width: 19px; height: 19px; display: grid; place-items: center; padding: 0 5px; border-radius: 10px; color: #fff; background: #e11d48; box-shadow: 0 3px 8px rgba(225,29,72,.28); font-size: 10px; }
@media (max-width: 720px) {
  .notification-drawer { top: auto; bottom: 0; width: 100%; height: min(82dvh,720px); padding: 16px 14px calc(18px + env(safe-area-inset-bottom)); border-radius: 22px 22px 0 0; }
  .notification-drawer > header { padding-bottom: 12px; }
  .notification-card { border-radius: 14px; }
  .notification-filters { grid-template-columns: 1fr 1fr; }
  .notification-filters input:first-child { grid-column: 1 / -1; }
}
.m-profile-button { width: 44px; height: 44px; display: grid; place-items: center; border: 0; border-radius: 50%; color: #fff; background: linear-gradient(135deg,#2563eb,#0f9f8f); font-weight: 900; }
.m-profile-identity { display: flex; align-items: center; gap: 12px; padding: 14px; border: 1px solid #dfe7f1; border-radius: 16px; background: #f8fbff; }
.m-profile-identity i { width: 48px; height: 48px; display: grid; place-items: center; border-radius: 50%; color: #fff; background: linear-gradient(135deg,#2563eb,#0f9f8f); font-style: normal; font-weight: 900; }
.m-profile-identity b,.m-profile-identity span { display: block; }.m-profile-identity span { margin-top: 5px; color: #64748b; font-size: 12px; }
.m-finance-mode { margin: 0; }
.m-finance-subfilter { display: flex; gap: 7px; margin: -2px 0 0; }
.m-finance-subfilter button { min-height: 34px; padding: 0 13px; border: 1px solid #dbe5f5; border-radius: 18px; background: #fff; color: #64748b; font-size: 12px; font-weight: 850; }
.m-finance-subfilter button.active { border-color: #2563eb; background: #eff6ff; color: #1d4ed8; }
.m-finance-list-card { padding-bottom: 2px; }
.m-finance-list { display: grid; gap: 10px; margin-top: 12px; }
.m-finance-card { display: grid; gap: 9px; padding: 14px; border: 1px solid #bfdbfe; border-radius: 16px; background: linear-gradient(145deg,#fff,#f7fbff); box-shadow: 0 8px 20px rgba(37,99,235,.06); }
.m-finance-card.void { border-color: #fecdd3; background: linear-gradient(145deg,#fff,#fff7f8); }
.m-anomaly-card { border-left: 5px solid #94a3b8; }
.m-anomaly-card.high { border-color: #fed7aa; border-left-color: #f59e0b; background: linear-gradient(145deg,#fff,#fffaf0); }
.m-anomaly-card.critical { border-color: #fecaca; border-left-color: #ef4444; background: linear-gradient(145deg,#fff,#fff5f5); }
.m-anomaly-card > b { color: #172033; font-size: 15px; line-height: 1.4; }
.m-anomaly-card .m-finance-actions { grid-template-columns: repeat(2,minmax(0,1fr)); }
.m-finance-card-head,.m-finance-meta { display: flex; align-items: center; justify-content: space-between; gap: 8px; }
.m-finance-card-head > span { color: #1d4ed8; font-size: 12px; font-weight: 950; }
.m-finance-card.void .m-finance-card-head > span { color: #be123c; }
.m-finance-card-head em { font-style: normal; }
.m-finance-order-link { width: fit-content; border: 0; padding: 0; color: #172033; background: transparent; font-size: 15px; font-weight: 950; text-align: left; }
.m-finance-card > strong { color: #0f172a; font-size: 26px; }
.m-finance-card > p { margin: 0; color: #475569; font-size: 13px; line-height: 1.55; }
.m-finance-meta { color: #64748b; font-size: 11px; font-weight: 800; }
.m-finance-review-note,.m-finance-waiting { padding: 9px 10px; border-radius: 10px; color: #475569; background: #eef2f7; font-size: 12px; line-height: 1.45; }
.m-finance-waiting { color: #92400e; background: #fffbeb; text-align: center; font-weight: 850; }
.m-finance-actions { display: grid; grid-template-columns: 1fr 1fr; gap: 9px; }
.m-finance-actions button { min-height: 46px; }
.m-finance-detail-button { width: 100%; min-height: 42px; }
.m-finance-detail-sheet .m-modal-body { padding-bottom: calc(22px + env(safe-area-inset-bottom)); }
.m-finance-detail-summary { display: grid; gap: 6px; padding: 12px; border-radius: 12px; background: #eff6ff; }
.m-finance-detail-summary span { color: #475569; font-size: 12px; line-height: 1.5; }
.refund-evidence-list.mobile article { align-items: flex-start; flex-direction: column; }
.refund-evidence-list.mobile .row-actions { width: 100%; display: grid; grid-template-columns: repeat(3,minmax(0,1fr)); }
.refund-evidence-list.mobile .row-actions > * { justify-content: center; }
.m-card-head button,.m-page-head button { min-height: 44px; }
.m-task-progress-bar.empty { background: #eef2f7; }
.m-content {
  flex: 1 1 auto;
  min-height: 0;
  display: flex;
  flex-direction: column;
  gap: 12px;
  overflow-y: auto;
  overscroll-behavior: contain;
  -webkit-overflow-scrolling: touch;
  padding: 12px 12px 18px;
  scroll-padding-bottom: 94px;
}
.m-content > * {
  flex: 0 0 auto;
}
.m-tabbar {
  position: relative;
  z-index: 30;
  flex: 0 0 auto;
  display: grid;
  grid-template-columns: repeat(5, minmax(0, 1fr));
  gap: 0;
  margin: 0;
  padding: 7px 4px calc(9px + env(safe-area-inset-bottom));
  border: 0;
  border-top: 1px solid rgba(20,24,29,.07);
  border-radius: 0;
  background: rgba(255,255,255,.88);
  box-shadow: none;
  backdrop-filter: blur(18px) saturate(170%);
}
.m-tabbar-btn {
  min-width: 0;
  min-height: 52px;
  border: 0;
  border-radius: 14px;
  color: #9AA3AB;
  background: transparent;
  font-size: 10px;
  letter-spacing: .04em;
  font-weight: 700;
  display: grid;
  place-items: center;
  align-content: center;
  gap: 3px;
  transition: transform .15s, color .2s;
}
.m-tabbar-btn:active { transform: translateY(1px) scale(.94); }
.m-tabbar-btn i {
  width: 22px;
  height: 20px;
  display: grid;
  place-items: center;
  border-radius: 9px;
  font-style: normal;
  color: #64748b;
  background: rgba(226,232,240,.64);
  font-size: 12px;
  line-height: 1;
}
.m-tabbar-btn.active {
  color: #1E3FA8;
  background: transparent;
  box-shadow: none;
  font-weight: 700;
}
.m-loading {
  min-height: 180px;
  display: grid;
  place-items: center;
  color: var(--muted);
  font-weight: 900;
}
.m-hero,
.m-card {
  border: 1px solid rgba(223,231,240,.92);
  border-radius: 20px;
  background: rgba(255,255,255,.94);
  box-shadow: 0 12px 28px rgba(15,23,42,.07);
}
.m-hero {
  min-height: 184px;
  display: grid;
  gap: 10px;
  padding: 18px 18px 16px;
  overflow: hidden;
  background:
    radial-gradient(120% 100% at 88% -10%, rgba(255,255,255,.2), transparent 52%),
    linear-gradient(150deg, #2E55D4 0%, #2C6BBE 46%, #27866E 100%);
  color: #fff;
  box-shadow: inset 0 1px 0 rgba(255,255,255,.22), inset 0 0 0 1px rgba(255,255,255,.08);
}
.m-hero.live {
  background:
    radial-gradient(120% 100% at 88% -10%, rgba(255,255,255,.2), transparent 52%),
    linear-gradient(150deg, #17B392 0%, #12897A 52%, #0A6B58 120%);
}
.m-hero.risk {
  background: linear-gradient(135deg, #0f172a, #7c2d12 62%, #0f766e);
}
.m-hero h1 {
  margin: 0;
  font-size: 26px;
  line-height: 1.12;
}
.m-hero p {
  margin: 0;
  color: rgba(255,255,255,.76);
  font-size: 13px;
  font-weight: 750;
  line-height: 1.7;
}
.m-hero-actions,
.m-card-actions {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 8px;
}
.m-hero-actions button,
.m-card-actions button {
  min-height: 46px;
  border-radius: 14px;
}
.m-home-command {
  display: grid;
  grid-template-columns: minmax(0, 1.22fr) minmax(0, .78fr);
  gap: 9px;
  align-items: stretch;
}
.m-next-action-primary {
  display: grid;
  gap: 7px;
  margin-top: 4px;
  padding: 15px;
  border: 1px solid rgba(255,255,255,.22);
  border-radius: 18px;
  background: rgba(255,255,255,.12);
  backdrop-filter: blur(12px);
}
.m-next-action-primary > span { color: #bfdbfe; font-size: 12px; font-weight: 900; }
.m-next-action-primary > strong { font-size: 29px; line-height: 1; }
.m-next-action-primary > p { margin: 0; color: rgba(255,255,255,.82); font-size: 12px; line-height: 1.45; }
.m-next-action-primary > div { display: grid; grid-template-columns: 1.25fr 1fr 1fr; gap: 8px; margin-top: 4px; }
.m-next-action-primary button { min-height: 48px; border-radius: 14px; }
.m-next-action-primary.done > div { grid-template-columns: 1fr; }
.m-action-progress {
  display: grid;
  grid-template-columns: repeat(5, minmax(0,1fr));
  gap: 1px;
  overflow: hidden;
  border: 1px solid #e2e8f0;
  border-radius: 18px;
  background: #e2e8f0;
  box-shadow: 0 10px 24px rgba(15,23,42,.06);
}
.m-action-progress > div { min-width: 0; display: grid; gap: 4px; padding: 12px 8px; background: #fff; text-align: center; }
.m-action-progress span { color: #64748b; font-size: 10px; font-weight: 850; }
.m-action-progress b { color: #0f172a; font-size: 20px; }
.m-action-progress .remaining b { color: #dc2626; }
.m-call-nextfollow { display: grid; gap: 6px; margin-bottom: 12px; }
.m-call-nextfollow > span { color: #64748b; font-size: 11px; font-weight: 700; }
.m-call-preset-row { display: flex; flex-wrap: wrap; gap: 6px; }
.m-call-preset-row button { flex: 0 0 auto; padding: 7px 12px; border: 1px solid #dbe4ef; border-radius: 9px; background: #f8fafc; color: #475569; font-size: 12px; font-weight: 700; }
.m-call-preset-row button.active { border-color: #2563eb; background: #eff4ff; color: #2563eb; }
.m-call-outcomes { display: grid; grid-template-columns: 1fr 1fr; gap: 10px; }
.m-call-outcomes button { min-height: 82px; display: grid; align-content: center; gap: 4px; border: 1px solid #dbe4ef; border-radius: 17px; color: #172033; background: #f8fafc; text-align: left; padding: 14px; }
.m-call-outcomes button b { font-size: 18px; }
.m-call-outcomes button span { color: #64748b; font-size: 11px; font-weight: 800; }
.m-stage-question { grid-column: 1 / -1; display: grid; gap: 5px; padding: 13px; border: 1px solid rgba(255,255,255,.2); border-radius: 15px; background: rgba(255,255,255,.1); }
.m-stage-question span { color: #bfdbfe; font-size: 10px; font-weight: 900; }
.m-stage-question b { color: #fff; font-size: 15px; }
.m-stage-question small { color: rgba(255,255,255,.7); }
.m-stage-question button { justify-self: start; }
.m-voice-assistant { display: grid; grid-template-columns: auto 1fr; gap: 9px; align-items: center; padding: 11px; border-radius: 15px; background: #eff6ff; }
.m-voice-assistant span { color: #475569; font-size: 11px; font-weight: 800; }
.m-voice-assistant button { min-width: 132px; white-space: nowrap; }
.m-voice-assistant button.recording {
  border-color: #dc2626;
  background: #dc2626;
  box-shadow: 0 0 0 5px rgba(220,38,38,.12);
  animation: m-voice-recording-pulse 1.2s ease-in-out infinite;
}
@keyframes m-voice-recording-pulse {
  50% { box-shadow: 0 0 0 9px rgba(220,38,38,.04); }
}
.m-follow-modal-sheet { max-height: 92vh; display: flex; flex-direction: column; }
.m-follow-modal-sheet > .m-modal-body { overflow-y: auto; -webkit-overflow-scrolling: touch; }
.m-follow-modal-sheet .m-follow-desk { box-shadow: none; border: none; padding: 0; margin: 0; }
.m-follow-modal-sheet .m-follow-desk > .m-card-head { display: none; }
.m-follow-more { grid-column: 1 / -1; display: grid; gap: 12px; }
.m-follow-more > summary { list-style: none; cursor: pointer; display: flex; align-items: center; justify-content: space-between; padding: 12px 14px; border: 1px solid #dbe4ef; border-radius: 14px; background: #f8fafc; color: #475569; font-size: 13px; font-weight: 600; }
.m-follow-more > summary::-webkit-details-marker { display: none; }
.m-follow-more > summary::after { content: '展开 ›'; color: #94a3b8; font-weight: 500; }
.m-follow-more[open] > summary::after { content: '收起 ⌄'; }
.m-commitment-box,.m-solution-basket { grid-column: 1 / -1; display: grid; gap: 9px; padding: 13px; border: 1px solid #dbe4ef; border-radius: 16px; background: #f8fafc; }
.m-commitment-box > b,.m-solution-basket > div b { color: #172033; }
.m-solution-basket > div { display: grid; gap: 2px; }
.m-solution-basket > div span { color: #64748b; font-size: 11px; }
.m-review-commitment { display: grid; grid-template-columns: 1fr auto; gap: 3px 10px; align-items: center; padding: 11px 13px; border-radius: 14px; background: #fff7ed; }
.m-review-commitment span,.m-review-commitment small { color: #9a3412; font-size: 11px; font-weight: 850; }
.m-review-commitment b { grid-row: 1 / 3; grid-column: 2; color: #c2410c; font-size: 25px; }
.m-review-tomorrow { display: grid; gap: 5px; padding: 11px 13px; border-radius: 14px; background: #f1f5f9; }
.m-review-tomorrow span { color: #475569; font-size: 11px; font-weight: 800; }
.deleted-customer-list { display: grid; gap: 8px; }
.deleted-customer-list article { display: grid; grid-template-columns: 1fr 1fr; gap: 12px; padding: 12px 14px; border: 1px solid #e2e8f0; border-radius: 14px; background: #f8fafc; }
.deleted-customer-list article > div { display: grid; gap: 3px; }
.deleted-customer-list span { color: #64748b; font-size: 12px; }
@media (max-width: 430px) {
  .m-action-progress { grid-template-columns: repeat(3, minmax(0,1fr)); }
  .m-action-progress > div:nth-child(n+4) { border-top: 1px solid #e2e8f0; }
  .m-next-action-primary > div { grid-template-columns: 1.3fr 1fr; }
  .m-next-action-primary > div .ghost { grid-column: 1 / -1; }
}
.m-reception-cta,
.m-follow-cta,
.m-end-reception-btn {
  min-width: 0;
  border: 0;
  border-radius: 16px;
  font-weight: 950;
}
.m-reception-cta {
  min-height: 62px;
  display: grid;
  align-content: center;
  justify-items: start;
  gap: 3px;
  padding: 0 18px;
  color: #fff;
  background: linear-gradient(135deg, #2E55D4 0%, #2C6BBE 48%, #27866E 100%);
  box-shadow: inset 0 1px 0 rgba(255,255,255,.24), 0 16px 30px -12px rgba(44,96,180,.5);
}
.m-reception-cta span {
  font-size: 20px;
}
.m-reception-cta b {
  color: rgba(255,255,255,.74);
  font-size: 11px;
}
.m-follow-cta {
  color: #172033;
  background: rgba(255,255,255,.9);
  font-size: 15px;
}
.m-live-command {
  display: grid;
  grid-template-columns: minmax(0, 1fr) 112px;
  gap: 9px;
  align-items: stretch;
}
.m-reception-stage-track {
  grid-column: 1 / -1;
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 7px;
}
.m-reception-stage-track > div,
.m-reception-stage-track > button {
  min-width: 0;
  min-height: 46px;
  display: grid;
  grid-template-columns: 22px minmax(0, 1fr);
  align-items: center;
  gap: 5px;
  border: 1px solid rgba(255,255,255,.18);
  border-radius: 13px;
  padding: 0 8px;
  color: rgba(255,255,255,.75);
  background: rgba(255,255,255,.1);
  font-size: 12px;
  font-weight: 900;
}
.m-reception-stage-track i {
  width: 22px;
  height: 22px;
  display: grid;
  place-items: center;
  border-radius: 50%;
  background: rgba(255,255,255,.14);
  font-style: normal;
}
.m-reception-stage-track .done {
  border-color: rgba(134,239,172,.55);
  color: #dcfce7;
  background: rgba(22,163,74,.24);
}
.m-reception-stage-track .done i {
  color: #fff;
  background: #22c55e;
}
.m-reception-stage-track button.done:disabled { opacity: 1; }
.m-reception-stage-track button:not(.done) { cursor: pointer; }
.m-reception-focus .m-reception-stage-track { margin-bottom: 12px; }
.m-reception-focus .m-reception-stage-track > div,
.m-reception-focus .m-reception-stage-track > button {
  border-color: #dbe4ef;
  color: #475569;
  background: #f8fafc;
}
.m-reception-focus .m-reception-stage-track .done {
  border-color: #bbf7d0;
  color: #166534;
  background: #f0fdf4;
}
.m-stage-snapshot {
  display: grid;
  gap: 4px;
  padding: 10px 12px;
  border: 1px solid #dbeafe;
  border-radius: 14px;
  background: #f8fbff;
}
.m-stage-snapshot b { color: #1d4ed8; font-size: 12px; }
.m-stage-snapshot span { color: #475569; font-size: 12px; font-weight: 850; }
.m-live-timer {
  min-width: 0;
  display: grid;
  gap: 3px;
  padding: 12px 13px;
  border: 1px solid rgba(187,247,208,.28);
  border-radius: 16px;
  background: rgba(255,255,255,.12);
}
.m-live-timer span,
.m-live-timer small {
  color: rgba(255,255,255,.72);
  font-size: 11px;
  font-weight: 900;
}
.m-live-timer strong {
  color: #fff;
  font-size: 30px;
  line-height: 1;
}
.m-live-timer small {
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}
.m-end-reception-btn {
  min-height: 72px;
  color: #fff;
  background: linear-gradient(135deg, #dc3d43, #f59e0b);
  font-size: 15px;
  box-shadow: 0 18px 34px rgba(220,61,67,.25);
}
.m-page-head,
.m-card-head,
.m-customer-main {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 10px;
}
.m-page-head h2 {
  margin: 2px 0 0;
  font-size: 22px;
}
.m-stat-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 8px;
}
.m-stat {
  min-height: 92px;
  display: grid;
  align-content: center;
  gap: 6px;
  padding: 13px;
  border: 1px solid rgba(223,231,240,.94);
  border-radius: 18px;
  background: rgba(255,255,255,.92);
  box-shadow: 0 10px 22px rgba(15,23,42,.045);
}
.m-stat span,
.m-card-head span,
.m-list-item span,
.m-customer-card span {
  color: #64748b;
  font-size: 12px;
  font-weight: 850;
}
.m-stat b {
  font-size: 24px;
  line-height: 1;
}
.m-stat.green b { color: var(--green); }
.m-stat.amber b { color: #b7791f; }
.m-stat.red b { color: var(--red); }
.m-card {
  display: grid;
  gap: 12px;
  padding: 14px;
}
.m-card-head b {
  display: block;
  font-size: 15px;
}
.m-list {
  display: grid;
  gap: 8px;
}
.m-pagination {
  display: grid;
  grid-template-columns: 1fr auto 1fr;
  align-items: center;
  gap: 8px;
}
.m-pagination span { color: #64748b; font-size: 12px; font-weight: 850; text-align: center; }
.m-pagination button:last-child { justify-self: stretch; }
.m-call-btn {
  color: #fff;
  border-color: #16a34a;
  background: linear-gradient(135deg, #16a34a, #0f9f84);
}
.lead-ops-kpis { display:grid; grid-template-columns:repeat(5,minmax(0,1fr)); gap:12px; }
.lead-funnel-grid { display:grid; grid-template-columns:repeat(auto-fit,minmax(180px,1fr)); gap:12px; margin-top:16px; }
.lead-funnel-grid article { display:grid; gap:6px; padding:14px; border:1px solid var(--line); border-radius:14px; background:#f8fbff; }
.lead-transfer-form { display:grid; grid-template-columns:1fr 1fr auto; gap:12px; align-items:end; margin-top:16px; }
.lead-public-list { display:grid; gap:8px; margin-top:16px; }
.lead-public-list>div { display:flex; justify-content:space-between; gap:12px; padding:10px 12px; border-radius:10px; background:#f8fafc; }
.lead-public-list span { display:grid; gap:3px; }
.lead-public-list em { color:#b45309; font-style:normal; font-weight:800; }
.m-customer-card .m-card-actions { grid-template-columns: repeat(3, minmax(0, 1fr)); }
.m-customer-duplicate-panel {
  border-color: #fcd34d;
  background: linear-gradient(145deg, #fffdf5, #fffbeb);
}
.m-customer-duplicate-panel .m-card-head span { margin-top: 4px; line-height: 1.5; }
.m-customer-insights-loading {
  display: grid;
  gap: 8px;
  padding: 4px 2px;
}
.m-customer-insights-loading span {
  display: block;
  height: 12px;
  border-radius: 999px;
  background: linear-gradient(90deg, #edf1f6 25%, #f7f9fb 50%, #edf1f6 75%);
  background-size: 200% 100%;
  animation: m-skeleton-shimmer 1.2s ease-in-out infinite;
}
.m-customer-insights-loading span:last-child { width: 62%; }
.m-customer-duplicate-list { display: grid; gap: 8px; }
.m-customer-duplicate-row {
  display: grid;
  grid-template-columns: minmax(0, 1fr) minmax(116px, .7fr) auto;
  gap: 8px;
  align-items: center;
  padding: 10px;
  border: 1px solid #fde68a;
  border-radius: 12px;
  background: rgba(255,255,255,.9);
}
.m-customer-duplicate-row b,
.m-customer-duplicate-row span { display: block; }
.m-customer-duplicate-row span { margin-top: 3px; color: #92400e; font-size: 11px; font-weight: 850; }
.m-customer-duplicate-row select {
  min-width: 0;
  width: 100%;
  min-height: 38px;
  border: 1px solid #fcd34d;
  border-radius: 10px;
  padding: 0 8px;
  background: #fff;
  color: #172033;
  font-size: 11px;
  font-weight: 850;
}
.m-list-item,
.m-customer-card {
  min-width: 0;
  display: grid;
  gap: 10px;
  padding: 13px;
  border: 1px solid #e4eaf2;
  border-radius: 16px;
  background: rgba(251,253,255,.96);
}
@media (max-width: 390px) {
  .m-customer-duplicate-row { grid-template-columns: minmax(0, 1fr) auto; }
  .m-customer-duplicate-row > div { grid-column: 1 / -1; }
}
.m-list-item {
  grid-template-columns: minmax(0, 1fr) auto;
  align-items: center;
}
.m-list-item b,
.m-customer-card b {
  display: block;
  color: #172033;
  font-size: 14px;
}
.m-list-item.red,
.m-list-item.urgent {
  border-color: #fecaca;
  background: #fff7f7;
}
.m-list-item.amber,
.m-list-item.attention {
  border-color: #fde68a;
  background: #fffdf4;
}
.m-mini-flow {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 6px;
}
.m-flow-step {
  min-height: 72px;
  display: grid;
  align-content: center;
  gap: 4px;
  padding: 10px;
  border: 1px solid #e2e8f0;
  border-top: 3px solid #94a3b8;
  border-radius: 15px;
  background: #fff;
}
.m-flow-step span {
  color: #64748b;
  font-size: 11px;
  font-weight: 900;
}
.m-flow-step b {
  font-size: 20px;
}
.m-flow-step.blue { border-top-color: var(--blue); }
.m-flow-step.green { border-top-color: var(--green); }
.m-flow-step.amber { border-top-color: #f59e0b; }
.m-flow-step.red { border-top-color: var(--red); }
.m-reception-funnel {
  display: grid;
  grid-template-columns: repeat(5, minmax(0, 1fr));
  gap: 4px;
}
.m-reception-funnel > div {
  min-width: 0;
  min-height: 74px;
  position: relative;
  display: grid;
  justify-items: center;
  align-content: center;
  gap: 2px;
  border: 1px solid #e2e8f0;
  border-radius: 14px;
  background: #f8fafc;
}
.m-reception-funnel > div:not(:last-child)::after {
  content: '';
  width: 8px;
  height: 2px;
  position: absolute;
  right: -7px;
  top: 24px;
  z-index: 2;
  background: #cbd5e1;
}
.m-reception-funnel i {
  width: 20px;
  height: 20px;
  display: grid;
  place-items: center;
  border-radius: 50%;
  color: #64748b;
  background: #e2e8f0;
  font-size: 10px;
  font-style: normal;
  font-weight: 950;
}
.m-reception-funnel b { color: #172033; font-size: 17px; line-height: 1; }
.m-reception-funnel span { color: #475569; font-size: 10px; font-weight: 950; white-space: nowrap; }
.m-reception-funnel small { color: #94a3b8; font-size: 9px; font-weight: 900; }
.m-reception-funnel > div.has-data { border-color: #bfdbfe; background: #f5f9ff; }
.m-reception-funnel > div.has-data i { color: #fff; background: #2563eb; }
.m-reception-quality-strip {
  display: grid;
  grid-template-columns: repeat(5, minmax(0, 1fr));
  gap: 5px;
}
.m-reception-quality-strip span {
  min-width: 0;
  display: grid;
  justify-items: center;
  gap: 2px;
  padding: 7px 2px;
  border-radius: 12px;
  color: #64748b;
  background: #f1f5f9;
  font-size: 9px;
  font-weight: 900;
  white-space: nowrap;
}
.m-reception-quality-strip b { color: #172033; font-size: 15px; }
.m-reception-quality-strip span.risk { color: #b91c1c; background: #fef2f2; }
.m-reception-quality-strip span.risk b { color: #dc2626; }
.m-reception-focus .panel {
  margin: 0;
  overflow: hidden;
  border-radius: 20px;
  border-color: rgba(191,219,254,.9);
  box-shadow: 0 14px 34px rgba(37,99,235,.1);
}
.m-reception-focus .panel-head,
.m-reception-focus .panel-body {
  padding: 14px;
}
.m-reception-focus .form-grid {
  grid-template-columns: 1fr;
  gap: 8px;
}
.m-shell .field {
  margin-bottom: 10px;
  font-size: 12px;
  font-weight: 900;
}
.m-shell .field input,
.m-shell .field select,
.m-shell .field textarea,
.m-shell .readonly-field {
  min-height: 48px;
  border-radius: 14px;
  background: rgba(255,255,255,.96);
}
.m-reception-focus .reception-start-presets,
.m-reception-focus .reception-quick-actions {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 7px;
}
.m-reception-focus .reception-start-presets {
  grid-template-columns: repeat(3, minmax(0, 1fr));
  padding: 8px;
  border: 1px dashed rgba(148,163,184,.5);
  border-radius: 16px;
  background: rgba(248,250,252,.82);
}
.m-reception-focus .reception-start-presets button,
.m-reception-focus .reception-quick-actions button {
  min-width: 0;
  min-height: 42px;
  border-radius: 13px;
  padding: 0 8px;
}
.m-reception-focus .big-action {
  min-height: 54px;
  border-radius: 16px;
  font-size: 17px;
}
.m-reception-start-panel {
  display: grid;
  gap: 12px;
  padding: 15px;
  border: 1px solid #bfdbfe;
  border-radius: 20px;
  background: linear-gradient(135deg, #f8fbff 0%, #f3f8ff 65%, #eefbf8 100%);
  box-shadow: 0 14px 34px rgba(37,99,235,.1);
}
.m-reception-start-panel span,
.m-reception-live-head span {
  color: #2563eb;
  font-size: 10px;
  font-weight: 950;
}
.m-reception-start-panel h3 { margin: 0 0 5px; font-size: 19px; line-height: 1.3; }
.m-reception-start-panel p { margin: 0; color: #64748b; font-size: 12px; font-weight: 800; line-height: 1.6; }
.m-reception-start-panel .m-reception-cta {
  min-height: 54px;
  grid-template-columns: 1fr auto;
  align-items: center;
  justify-items: stretch;
  padding: 0 16px;
  box-shadow: 0 12px 24px rgba(37,99,235,.24);
}
.m-reception-start-panel .m-reception-cta span { color: #fff; font-size: 17px; }
.m-reception-start-panel .m-reception-cta b { justify-self: end; color: rgba(255,255,255,.9); font-size: 11px; }
.m-reception-ready-state {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 10px;
}
.m-reception-ready-state > span {
  display: inline-flex;
  align-items: center;
  gap: 6px;
  color: #047857;
  font-size: 11px;
}
.m-reception-ready-state i {
  width: 8px;
  height: 8px;
  border-radius: 50%;
  background: #22c55e;
  box-shadow: 0 0 0 4px rgba(34,197,94,.12);
}
.m-reception-ready-state small { color: #64748b; font-size: 10px; font-weight: 850; }
.m-reception-live-panel {
  display: grid;
  gap: 12px;
  padding: 16px;
  border-radius: 20px;
  color: #fff;
  background: #123d31;
  box-shadow: 0 16px 34px rgba(15,81,50,.2);
}
.m-reception-live-head { display: flex; align-items: center; justify-content: space-between; gap: 10px; }
.m-reception-live-head span { color: #86efac; }
.m-reception-live-head b { overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.m-reception-process-card { gap: 10px; }
.m-reception-page-head { align-items: flex-start; }
.m-reception-page-head h2 { font-size: 21px; }
.m-reception-page-head p { margin: 4px 0 0; color: #64748b; font-size: 11px; font-weight: 800; }
.m-reception-kpi-bar {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  border: 1px solid rgba(219,228,239,.95);
  border-radius: 18px;
  background: rgba(255,255,255,.94);
  box-shadow: 0 10px 24px rgba(15,23,42,.05);
}
.m-reception-kpi-bar > div {
  min-width: 0;
  min-height: 66px;
  display: grid;
  align-content: center;
  justify-items: center;
  gap: 4px;
  position: relative;
}
.m-reception-kpi-bar > div:not(:last-child)::after {
  content: '';
  width: 1px;
  height: 34px;
  position: absolute;
  right: 0;
  top: 16px;
  background: #e2e8f0;
}
.m-reception-kpi-bar span { color: #64748b; font-size: 10px; font-weight: 900; }
.m-reception-kpi-bar p { margin: 0; display: flex; align-items: baseline; gap: 2px; }
.m-reception-kpi-bar b { color: #172033; font-size: 22px; line-height: 1; }
.m-reception-kpi-bar small { color: #94a3b8; font-size: 9px; font-weight: 850; }
.m-reception-deposit-alert {
  width: 100%;
  min-height: 62px;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 10px;
  padding: 10px 12px;
  border: 1px solid #fed7aa;
  border-radius: 16px;
  color: #9a3412;
  background: #fff7ed;
  text-align: left;
}
.m-reception-deposit-alert > span {
  min-width: 0;
  display: grid;
  grid-template-columns: 28px 1fr;
  gap: 2px 8px;
  align-items: center;
}
.m-reception-deposit-alert i {
  width: 28px;
  height: 28px;
  grid-row: 1 / 3;
  display: grid;
  place-items: center;
  border-radius: 10px;
  color: #fff;
  background: #f97316;
  font-style: normal;
  font-weight: 950;
}
.m-reception-deposit-alert b { font-size: 12px; }
.m-reception-deposit-alert small { overflow: hidden; color: #c2410c; font-size: 9px; font-weight: 800; text-overflow: ellipsis; white-space: nowrap; }
.m-reception-deposit-alert strong { flex: 0 0 auto; color: #c2410c; font-size: 11px; }
.m-reception-empty {
  min-height: 112px;
  display: grid;
  place-items: center;
  align-content: center;
  gap: 5px;
  padding: 16px;
  border-radius: 16px;
  color: #64748b;
  background: #f8fafc;
  text-align: center;
}
.m-reception-empty i {
  width: 28px;
  height: 28px;
  display: grid;
  place-items: center;
  border-radius: 50%;
  color: #047857;
  background: #d1fae5;
  font-style: normal;
  font-weight: 950;
}
.m-reception-empty b { color: #334155; font-size: 13px; }
.m-reception-empty span { color: #94a3b8; font-size: 10px; font-weight: 800; }
.m-reception-history-list { display: grid; gap: 10px; }
.m-reception-history-item {
  min-width: 0;
  display: grid;
  gap: 10px;
  padding: 13px;
  border: 1px solid #e2e8f0;
  border-radius: 16px;
  background: #fbfdff;
}
.m-reception-history-item header,
.m-reception-history-item footer {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 10px;
}
.m-reception-history-item header b { display: block; font-size: 15px; }
.m-reception-history-item header span:not(.tag),
.m-reception-history-item footer small { color: #64748b; font-size: 11px; font-weight: 850; }
.m-reception-history-meta { display: flex; gap: 5px; overflow-x: auto; scrollbar-width: none; }
.m-reception-history-meta::-webkit-scrollbar { display: none; }
.m-reception-history-meta span {
  flex: 0 0 auto;
  padding: 5px 7px;
  border-radius: 8px;
  color: #475569;
  background: #f1f5f9;
  font-size: 10px;
  font-weight: 900;
}
.m-reception-history-stages { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 5px; }
.m-reception-history-stages span {
  min-width: 0;
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 4px;
  padding: 6px 2px;
  border-radius: 9px;
  color: #94a3b8;
  background: #f1f5f9;
  font-size: 10px;
  font-weight: 900;
}
.m-reception-history-stages i {
  width: 17px;
  height: 17px;
  display: grid;
  place-items: center;
  border-radius: 50%;
  background: #e2e8f0;
  font-size: 9px;
  font-style: normal;
}
.m-reception-history-stages span.done { color: #166534; background: #f0fdf4; }
.m-reception-history-stages span.done i { color: #fff; background: #22c55e; }
.m-reception-history-item p { margin: 0; color: #475569; font-size: 12px; font-weight: 800; line-height: 1.55; }
.m-choice-field,
.m-result-field { display: grid; gap: 8px; }
.m-choice-field > span,
.m-result-field > span { color: #334155; font-size: 12px; font-weight: 900; }
.m-choice-grid {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 7px;
}
.m-choice-grid button {
  min-height: 58px;
  display: grid;
  align-content: center;
  gap: 2px;
  border: 1px solid #dbe4ef;
  border-radius: 14px;
  color: #475569;
  background: #f8fafc;
}
.m-choice-grid button b { font-size: 13px; }
.m-choice-grid button small { color: #94a3b8; font-size: 10px; font-weight: 850; }
.m-choice-grid button.active { border-color: #60a5fa; color: #1d4ed8; background: #eff6ff; box-shadow: inset 0 0 0 1px #93c5fd; }
.m-expanded-choice { min-inline-size: 0; display: grid; gap: 8px; margin: 0; padding: 0; border: 0; }
.m-expanded-choice legend { padding: 0; color: #334155; font-size: 12px; font-weight: 900; }
.m-required-mark { margin-left: 5px; color: #d93843; font-size: 9px; font-style: normal; font-weight: 900; vertical-align: middle; }
.m-expanded-choice-grid { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: 8px; }
.m-expanded-choice-grid label { position: relative; min-width: 0; }
.m-expanded-choice-grid input { position: absolute; width: 1px; height: 1px; margin: 0; opacity: 0; }
.m-expanded-choice-grid span { min-height: 44px; display: flex; align-items: center; justify-content: center; padding: 8px 10px; border: 1px solid #d8e1ed; border-radius: 11px; color: #526176; background: #fff; font-size: 12px; font-weight: 850; text-align: center; transition: border-color .16s ease, color .16s ease, background .16s ease, box-shadow .16s ease; }
.m-expanded-choice-grid input:checked + span { border-color: #6b99ff; color: #1749ad; background: #edf4ff; box-shadow: inset 0 0 0 1px #6b99ff; }
.m-expanded-choice-grid input:focus-visible + span { outline: 3px solid rgba(37,99,235,.18); outline-offset: 2px; }
.m-expanded-choice-grid input:disabled + span { color: #a8b2c2; background: #f5f7fa; }
.m-result-picker {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 6px;
}
.m-result-picker button {
  min-width: 0;
  min-height: 78px;
  display: grid;
  justify-items: center;
  align-content: center;
  gap: 3px;
  padding: 7px 3px;
  border: 1px solid #dbe4ef;
  border-radius: 14px;
  color: #475569;
  background: #f8fafc;
}
.m-result-picker i { width: 24px; height: 24px; display: grid; place-items: center; border-radius: 50%; color: #64748b; background: #e2e8f0; font-size: 11px; font-style: normal; font-weight: 950; }
.m-result-picker b { font-size: 12px; white-space: nowrap; }
.m-result-picker small { color: #94a3b8; font-size: 9px; font-weight: 850; }
.m-result-picker button.active { border-color: #60a5fa; color: #1d4ed8; background: #eff6ff; }
.m-result-picker button.active i { color: #fff; background: #2563eb; }
.m-native-result { position: absolute !important; width: 1px !important; height: 1px !important; overflow: hidden; opacity: 0; pointer-events: none; }
.m-modal-actions {
  flex: 0 0 auto;
  padding: 10px 16px calc(12px + env(safe-area-inset-bottom));
  border-top: 1px solid #e2e8f0;
  background: rgba(255,255,255,.98);
}
.m-modal-actions .m-full-action { width: 100%; min-height: 52px; border-radius: 14px; font-size: 16px; }
.m-segment {
  display: flex;
  gap: 6px;
  overflow-x: auto;
  padding-bottom: 2px;
  scrollbar-width: none;
}
.m-segment::-webkit-scrollbar { display: none; }
.m-segment button {
  min-height: 36px;
  flex: 0 0 auto;
  border: 1px solid #dbe4ef;
  border-radius: 10px;
  padding: 0 10px;
  color: #475569;
  background: #fff;
  font-size: 12px;
  font-weight: 900;
}
.m-segment button.active {
  border-color: #bfdbfe;
  color: #1d4ed8;
  background: #eff6ff;
}
.m-level {
  width: 34px;
  height: 34px;
  display: grid;
  place-items: center;
  border-radius: 50%;
  color: #1d4ed8 !important;
  background: #eff6ff;
  font-size: 14px !important;
  font-weight: 950 !important;
}
.m-customer-card p,
.m-ai-note {
  margin: 0;
  color: #475569;
  font-size: 13px;
  font-weight: 750;
  line-height: 1.65;
}
.m-ai-note {
  padding: 10px;
  border: 1px solid #dbeafe;
  border-radius: 10px;
  background: #eff6ff;
  color: #1e3a8a;
}
.m-form {
  display: grid;
  gap: 8px;
}
.m-modal {
  position: absolute;
  inset: 0;
  z-index: 80;
  display: grid;
  align-items: end;
}
.m-modal-backdrop {
  position: absolute;
  inset: 0;
  border: 0;
  background: rgba(15,23,42,.34);
  backdrop-filter: blur(8px);
}
.m-modal-sheet {
  position: relative;
  z-index: 1;
  max-height: calc(100dvh - 78px);
  display: flex;
  flex-direction: column;
  margin: 0 10px calc(10px + env(safe-area-inset-bottom));
  overflow: hidden;
  border: 1px solid rgba(226,232,240,.92);
  border-radius: 24px;
  background: rgba(255,255,255,.98);
  box-shadow: 0 -24px 62px rgba(15,23,42,.24);
  transform: translateY(18px);
  opacity: 0;
  transition: .18s ease;
}
.m-modal-sheet.show {
  transform: translateY(0);
  opacity: 1;
}
.m-modal-head {
  flex: 0 0 auto;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 10px;
  padding: 16px 16px 12px;
  border-bottom: 1px solid #edf2f7;
}
.m-modal-head span {
  color: #2563eb;
  font-size: 11px;
  font-weight: 950;
}
.m-modal-head h3 {
  margin: 3px 0 0;
  font-size: 20px;
}
.m-modal-body {
  flex: 1 1 auto;
  overflow-y: auto;
  padding: 14px 16px 16px;
}
.m-count-stepper {
  display: grid;
  grid-template-columns: 52px minmax(0, 1fr) 52px;
  gap: 8px;
  align-items: stretch;
}
.m-count-stepper button {
  min-width: 52px;
  min-height: 52px;
  border: 1px solid #bfd3ff;
  border-radius: 14px;
  background: #edf4ff;
  color: #235fc8;
  font-size: 25px;
  font-weight: 800;
  line-height: 1;
}
.m-count-stepper button:active { background: #dce9ff; transform: scale(.97); }
.m-count-stepper button:disabled { border-color: #e2e8f0; color: #a8b3c3; background: #f3f6fa; box-shadow: none; cursor: not-allowed; transform: none; }
.m-count-stepper input {
  min-width: 0;
  min-height: 52px;
  text-align: center;
  font-size: 20px;
  font-weight: 900;
  -moz-appearance: textfield;
}
.m-count-stepper input::-webkit-inner-spin-button,
.m-count-stepper input::-webkit-outer-spin-button { margin: 0; appearance: none; }
.m-modal-summary {
  display: grid;
  gap: 4px;
  padding: 12px;
  border: 1px solid #bbf7d0;
  border-radius: 16px;
  background: #f0fdf4;
}
.m-modal-summary b {
  font-size: 16px;
}
.m-modal-summary span {
  color: #166534;
  font-size: 12px;
  font-weight: 850;
}
.m-modal-presets {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 7px;
  padding: 8px;
  border: 1px dashed rgba(148,163,184,.54);
  border-radius: 16px;
  background: #f8fafc;
}
.m-modal-presets button {
  min-width: 0;
  min-height: 40px;
  border-radius: 13px;
  padding: 0 8px;
}
.m-modal .reception-quick-actions {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 7px;
  margin-top: 8px;
}
.m-modal .reception-quick-actions button {
  min-width: 0;
  min-height: 40px;
  border-radius: 13px;
  padding: 0 8px;
}
@media (max-width: 480px) {
  body.mobile-app-mode {
    background: #f4f8fb;
  }
  body.mobile-app-mode::before {
    display: none;
  }
  body.mobile-app-mode #app {
    width: 100vw;
    border: 0;
    box-shadow: none;
  }
}
.notice {
  margin-bottom: 16px;
  padding: 12px 14px;
  border: 1px solid #bbf7d0;
  border-radius: 8px;
  background: #f0fdf4;
  color: #166534;
  font-weight: 800;
  line-height: 1.6;
  word-break: break-all;
}
.org-grid {
  display: grid;
  grid-template-columns: .8fr 1.2fr;
  gap: 16px;
  margin-bottom: 16px;
  align-items: start;
}
.org-kpis { grid-template-columns: repeat(4, minmax(0, 1fr)); }
.platform-kpis { grid-template-columns: repeat(4, minmax(0, 1fr)); }
.platform-console {
  min-height: 100vh;
  display: grid;
  grid-template-columns: 218px minmax(0, 1fr);
  background: #f3f6f9;
}
.platform-rail {
  min-height: 100vh;
  display: flex;
  flex-direction: column;
  padding: 24px 14px 18px;
  color: #dbe5f1;
  background: #152033;
  border-right: 1px solid #24334a;
}
.platform-brand {
  display: flex;
  align-items: center;
  gap: 10px;
  padding: 0 10px 28px;
}
.platform-brand span {
  display: grid;
  place-items: center;
  width: 38px;
  height: 38px;
  border-radius: 6px;
  color: #fff;
  background: #2563eb;
  font-size: 12px;
  font-weight: 900;
}
.platform-brand b { color: #fff; font-size: 17px; }
.platform-rail-label {
  padding: 0 12px 8px;
  color: #718199;
  font-size: 11px;
  font-weight: 900;
}
.platform-rail-item {
  width: 100%;
  min-height: 44px;
  display: flex;
  align-items: center;
  gap: 10px;
  padding: 0 12px;
  border: 1px solid transparent;
  border-radius: 6px;
  color: #d7e0eb;
  background: transparent;
  font-weight: 900;
  text-align: left;
}
.platform-rail-item span {
  display: grid;
  place-items: center;
  width: 24px;
  height: 24px;
  border-radius: 5px;
  color: #9fc2ff;
  background: #253653;
  font-size: 12px;
}
.platform-rail-item.active { color: #fff; background: #22314a; border-color: #334866; }
.platform-rail-foot {
  display: grid;
  gap: 4px;
  margin-top: auto;
  padding: 14px 12px 4px;
  border-top: 1px solid #2a394e;
}
.platform-rail-foot span { color: #7f8da2; font-size: 11px; }
.platform-rail-foot b { color: #e6edf5; font-size: 13px; }
.platform-main { min-width: 0; }
.platform-topbar {
  min-height: 66px;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 16px;
  padding: 0 28px;
  border-bottom: 1px solid #dce3eb;
  background: rgba(255,255,255,.96);
}
.platform-topbar > div:first-child { display: grid; gap: 3px; }
.platform-topbar b { color: #162235; }
.platform-topbar span { color: #77849a; font-size: 12px; }
.platform-admin-badge {
  display: inline-flex;
  min-height: 30px;
  align-items: center;
  padding: 0 10px;
  border: 1px solid #bfdbfe;
  border-radius: 6px;
  color: #1d4ed8 !important;
  background: #eff6ff;
  font-weight: 900;
}
.platform-content { padding: 28px 30px 46px; }
.platform-page-head {
  display: flex;
  align-items: flex-end;
  justify-content: space-between;
  gap: 24px;
  margin-bottom: 20px;
}
.platform-page-head > div > span {
  display: block;
  margin-bottom: 6px;
  color: #2563eb;
  font-size: 11px;
  font-weight: 900;
}
.platform-page-head h1 { margin: 0; color: #152033; font-size: 28px; letter-spacing: 0; }
.platform-page-head p { margin: 7px 0 0; color: #667085; font-size: 13px; }
.platform-create-btn { min-height: 42px; padding: 0 18px; }
.platform-summary {
  display: grid;
  grid-template-columns: repeat(5, minmax(0, 1fr));
  margin-bottom: 18px;
  border: 1px solid #dce3eb;
  border-radius: 8px;
  background: #fff;
  overflow: hidden;
}
.platform-summary > div {
  min-height: 112px;
  display: grid;
  align-content: center;
  gap: 5px;
  padding: 18px 20px;
  border-right: 1px solid #e5eaf0;
  box-shadow: inset 0 3px 0 #cbd5e1;
}
.platform-summary > div:last-child { border-right: 0; }
.platform-summary > div.healthy { box-shadow: inset 0 3px 0 #16a34a; }
.platform-summary > div.warning { box-shadow: inset 0 3px 0 #d9901a; background: #fffdf7; }
.platform-summary span { color: #667085; font-size: 12px; font-weight: 800; }
.platform-summary b { color: #172033; font-size: 28px; line-height: 1; }
.platform-summary small { color: #98a2b3; font-size: 11px; }
.platform-list-panel { margin-top: 0; }
.platform-list-head {
  min-height: 68px;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 18px;
  padding: 12px 16px;
  border-bottom: 1px solid #e5eaf0;
}
.platform-list-head h2 { margin: 0; font-size: 17px; }
.platform-list-head > div > span { display: block; margin-top: 4px; color: #7b8798; font-size: 12px; }
.platform-filter { display: flex; align-items: center; gap: 8px; }
.platform-filter input,
.platform-filter select {
  height: 36px;
  border: 1px solid #d7dee8;
  border-radius: 6px;
  padding: 0 10px;
  color: #243047;
  background: #fff;
}
.platform-filter input { width: 220px; }
.platform-table { min-width: 900px; }
.platform-table tbody tr { transition: background .16s ease; }
.platform-table tbody tr:hover { background: #f8fbff; }
.platform-table th:last-child,
.platform-table td:last-child {
  position: sticky;
  right: 0;
  min-width: 142px;
  background: #fff;
  box-shadow: -8px 0 14px rgba(15, 23, 42, .04);
  z-index: 2;
}
.platform-table thead th:last-child { background: #f8fafc; z-index: 3; }
.platform-table tbody tr:hover td:last-child { background: #f8fbff; }
.platform-table .row-actions { flex-wrap: nowrap; }
.tenant-name-link {
  min-width: 150px;
  display: grid;
  gap: 4px;
  padding: 0;
  border: 0;
  color: #172033;
  background: transparent;
  text-align: left;
}
.tenant-name-link b { color: #1746a2; font-size: 14px; }
.tenant-name-link span { color: #98a2b3; font-size: 11px; }
.tenant-status {
  display: inline-flex;
  align-items: center;
  gap: 6px;
  white-space: nowrap;
  color: #475467;
  font-size: 12px;
  font-weight: 900;
}
.tenant-status i {
  width: 7px;
  height: 7px;
  border-radius: 50%;
  background: #98a2b3;
}
.tenant-status.active i { background: #16a34a; box-shadow: 0 0 0 3px #dcfce7; }
.tenant-status.disabled i { background: #dc3d43; box-shadow: 0 0 0 3px #fee2e2; }
.platform-audit-disclosure {
  margin-top: 16px;
  border: 1px solid #dce3eb;
  border-radius: 8px;
  background: #fff;
}
.platform-audit-disclosure summary {
  min-height: 50px;
  display: flex;
  align-items: center;
  gap: 8px;
  padding: 0 16px;
  color: #475467;
  font-size: 13px;
  font-weight: 900;
  cursor: pointer;
}
.platform-audit-disclosure summary span { color: #98a2b3; font-size: 11px; }
.platform-audit-disclosure[open] summary { border-bottom: 1px solid #e5eaf0; }
.platform-audit-table { min-width: 920px; }
.platform-session-pill {
  display: inline-flex;
  min-height: 30px;
  align-items: center;
  padding: 0 10px;
  border: 1px solid #fed7aa;
  border-radius: 6px;
  color: #9a3412 !important;
  background: #fff7ed;
  font-size: 12px !important;
  font-weight: 900;
}
.platform-drawer-layer {
  position: fixed;
  inset: 0;
  z-index: 120;
  display: flex;
  justify-content: flex-end;
}
.platform-drawer-backdrop {
  position: absolute;
  inset: 0;
  border: 0;
  background: rgba(15, 23, 42, .38);
  backdrop-filter: blur(2px);
}
.platform-tenant-drawer {
  position: relative;
  width: min(760px, 100vw);
  height: 100vh;
  overflow-y: auto;
  color: #172033;
  background: #f7f9fc;
  box-shadow: -24px 0 70px rgba(15, 23, 42, .18);
  transform: translateX(22px);
  opacity: 0;
  transition: transform .2s ease, opacity .2s ease;
}
.platform-tenant-drawer.show { transform: translateX(0); opacity: 1; }
.platform-drawer-head {
  min-height: 122px;
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: 18px;
  padding: 25px 28px 22px;
  color: #fff;
  background: #172235;
  border-bottom: 3px solid #2563eb;
}
.platform-drawer-head > div > span { color: #7fb0ff; font-size: 11px; font-weight: 900; }
.platform-drawer-head h2 { margin: 6px 0 5px; color: #fff; font-size: 24px; }
.platform-drawer-head p { margin: 0; color: #aebdd0; font-size: 12px; }
.platform-drawer-head .ghost { color: #dbe5f1; background: #26364e; }
.platform-drawer-form { display: grid; }
.platform-drawer-section {
  margin: 0;
  padding: 24px 28px;
  border: 0;
  border-bottom: 1px solid #dfe5ec;
  background: #fff;
}
.section-kicker { margin-bottom: 16px; color: #526173; font-size: 12px; font-weight: 900; }
.platform-drawer-actions {
  position: sticky;
  bottom: 0;
  display: flex;
  justify-content: flex-end;
  gap: 10px;
  padding: 16px 28px;
  border-top: 1px solid #dfe5ec;
  background: rgba(255,255,255,.97);
}
.platform-drawer-loading { min-height: 100vh; display: grid; place-items: center; color: #667085; font-weight: 900; }
.tenant-detail-command {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr)) auto;
  align-items: center;
  gap: 0;
  padding: 16px 28px;
  border-bottom: 1px solid #dfe5ec;
  background: #fff;
}
.tenant-detail-command > div { display: grid; gap: 4px; padding: 0 18px; border-right: 1px solid #e5eaf0; }
.tenant-detail-command > div:first-child { padding-left: 0; }
.tenant-detail-command span { color: #7b8798; font-size: 11px; }
.tenant-detail-command b { font-size: 18px; }
.tenant-detail-command button { margin-left: 18px; }
.platform-drawer-notice { margin: 14px 20px 0; }
.platform-section-head {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 16px;
  margin-bottom: 18px;
}
.platform-section-head span { color: #2563eb; font-size: 11px; font-weight: 900; }
.platform-section-head h3 { margin: 4px 0 0; font-size: 17px; }
.platform-section-head small { color: #7b8798; font-weight: 800; }
.tenant-user-create {
  display: grid;
  grid-template-columns: 1fr 1.2fr .8fr 1fr 1fr auto;
  gap: 8px;
  align-items: end;
  margin-bottom: 18px;
  padding: 14px;
  border: 1px solid #dce3eb;
  border-radius: 8px;
  background: #f8fafc;
}
.tenant-user-create .field { gap: 5px; font-size: 11px; }
.tenant-user-create input,
.tenant-user-create select { min-width: 0; height: 38px; }
.tenant-user-create button { min-height: 38px; white-space: nowrap; }
.tenant-user-list { display: grid; }
.tenant-user-row {
  display: grid;
  grid-template-columns: 36px minmax(145px, 1fr) 66px 64px auto;
  align-items: center;
  gap: 10px;
  min-height: 64px;
  padding: 10px 0;
  border-top: 1px solid #edf0f4;
}
.tenant-user-avatar {
  width: 34px;
  height: 34px;
  display: grid;
  place-items: center;
  border-radius: 6px;
  color: #1746a2;
  background: #eaf2ff;
  font-weight: 900;
}
.tenant-user-identity { min-width: 0; display: grid; gap: 4px; }
.tenant-user-identity b { overflow: hidden; text-overflow: ellipsis; white-space: nowrap; font-size: 13px; }
.tenant-user-identity span { overflow: hidden; text-overflow: ellipsis; white-space: nowrap; color: #7b8798; font-size: 11px; }
.tenant-role {
  width: fit-content;
  padding: 4px 7px;
  border-radius: 5px;
  color: #475467;
  background: #eef2f6;
  font-size: 11px;
  font-weight: 900;
}
.tenant-role.role-owner { color: #92400e; background: #fff7dc; }
.tenant-role.role-admin { color: #1746a2; background: #eaf2ff; }
.platform-grid {
  display: grid;
  grid-template-columns: minmax(0, 1.15fr) minmax(320px, .85fr);
  gap: 16px;
  margin-bottom: 16px;
  align-items: start;
}
.platform-list-panel,
.platform-audit-panel { margin-top: 16px; }
.platform-table { min-width: 1280px; }
.platform-audit-table { min-width: 920px; }
.tenant-action-metrics {
  min-width: 178px;
  display: flex;
  flex-wrap: wrap;
  gap: 6px;
}
.tenant-activity-cell {
  min-width: 128px;
  white-space: nowrap;
}
.store-list {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 12px;
}
.store-card {
  display: grid;
  gap: 12px;
  padding: 14px;
  border: 1px solid var(--line);
  border-radius: 8px;
  background: #fff;
}
.store-card b { display: block; margin-bottom: 4px; }
.store-card small { color: var(--muted); font-weight: 800; }
.org-users { margin-top: 16px; }
.assignment-grid {
  display: grid;
  grid-template-columns: minmax(0, 1.2fr) minmax(280px, .8fr);
  gap: 16px;
  margin-bottom: 16px;
  align-items: start;
}
.assignment-kpis { grid-template-columns: repeat(5, minmax(0, 1fr)); }
.assignment-advisor-panel { margin-bottom: 16px; }
.assignment-advisor-list {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 12px;
}
.assignment-advisor-row {
  display: grid;
  gap: 10px;
  padding: 13px;
  border: 1px solid var(--line);
  border-left: 4px solid #cbd5e1;
  border-radius: 8px;
  background: #fff;
}
.assignment-advisor-row.recommended {
  border-left-color: #16a34a;
  background: #f8fffb;
}
.assignment-advisor-person b,
.assignment-advisor-person span {
  display: block;
}
.assignment-advisor-person span,
.assignment-advisor-row p {
  color: var(--muted);
  font-size: 12px;
  line-height: 1.55;
}
.assignment-advisor-load {
  display: flex;
  flex-wrap: wrap;
  gap: 6px;
}
.assignment-advisor-load span {
  padding: 4px 7px;
  border-radius: 999px;
  background: #f1f5f9;
  color: #475569;
  font-size: 12px;
  font-weight: 900;
}
.assignment-advisor-actions {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
  align-items: center;
}
.delivery-kpis { grid-template-columns: repeat(5, minmax(0, 1fr)); }
.delivery-filter-panel,
.delivery-list-panel { margin-bottom: 16px; }
.delivery-filter-grid {
  display: grid;
  grid-template-columns: minmax(220px, 1.4fr) repeat(5, minmax(128px, 1fr)) auto;
  gap: 12px;
  align-items: end;
}
.delivery-filter-grid .field { margin-bottom: 0; }
.delivery-filter-actions {
  min-height: 39px;
  align-items: center;
  justify-content: flex-end;
  white-space: nowrap;
}
.delivery-table { min-width: 1080px; }
.delivery-table th:last-child,
.delivery-table td:last-child {
  position: sticky;
  right: 0;
  min-width: 76px;
  background: #fff;
  box-shadow: -8px 0 14px rgba(15, 23, 42, .05);
  z-index: 2;
}
.delivery-table thead th:last-child { background: #f8fafc; z-index: 3; }
.delivery-table td:nth-child(2) { min-width: 126px; }
.delivery-table td:nth-child(3) { min-width: 145px; }
.delivery-table td:nth-child(4) { min-width: 175px; }
.delivery-status-select {
  display: block;
  min-width: 120px;
  margin-top: 8px;
}
.delivery-time-input,
.delivery-note-input,
.delivery-info-grid input {
  width: 100%;
  min-height: 34px;
  border: 1px solid var(--line);
  border-radius: 6px;
  padding: 7px 9px;
  background: #fff;
}
.delivery-info-grid {
  display: grid;
  grid-template-columns: minmax(180px, 1.2fr) minmax(90px, .8fr) minmax(120px, .9fr);
  gap: 8px;
  min-width: 430px;
}
.delivery-info-grid .delivery-note-input { grid-column: 1 / -1; }
.assignment-filter-panel,
.assignment-list-panel { margin-bottom: 16px; }
.assignment-filter-grid {
  display: grid;
  grid-template-columns: minmax(220px, 1.4fr) repeat(6, minmax(118px, 1fr)) auto;
  gap: 12px;
  align-items: end;
}
.assignment-filter-grid .field { margin-bottom: 0; }
.assignment-filter-actions {
  min-height: 39px;
  align-items: center;
  justify-content: flex-end;
  white-space: nowrap;
}
.import-actions {
  display: grid;
  grid-template-columns: 1fr auto;
  gap: 10px;
}
.import-preview {
  display: grid;
  gap: 12px;
}
.import-preview-kpis {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 8px;
}
.import-preview-kpis div {
  padding: 10px;
  border: 1px solid var(--line);
  border-radius: 8px;
  background: #f8fafc;
}
.import-preview-kpis div.green {
  border-color: #bbf7d0;
  background: #f0fdf4;
}
.import-preview-kpis div.amber {
  border-color: #fde68a;
  background: #fffbeb;
}
.import-preview-kpis div.red {
  border-color: #fecaca;
  background: #fff7f7;
}
.import-preview-kpis span {
  display: block;
  color: var(--muted);
  font-size: 12px;
  font-weight: 900;
}
.import-preview-kpis b {
  display: block;
  margin-top: 4px;
  color: var(--ink);
  font-size: 22px;
}
.import-preview-actions {
  display: grid;
}
.import-preview-actions button {
  min-height: 42px;
}
.import-preview-list {
  display: grid;
  gap: 10px;
  max-height: 520px;
  overflow: auto;
  padding-right: 2px;
}
.import-preview-row {
  display: grid;
  grid-template-columns: auto minmax(0, 1fr);
  gap: 10px;
  align-items: start;
  padding: 10px;
  border: 1px solid var(--line);
  border-radius: 8px;
  background: #fff;
}
.import-preview-row b,
.import-preview-row small {
  display: block;
  min-width: 0;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}
.import-preview-row small {
  margin-top: 3px;
  color: var(--muted);
  font-size: 12px;
  font-weight: 800;
}
.import-preview-row p {
  margin: 6px 0 0;
  color: #475569;
  font-size: 12px;
  line-height: 1.55;
}
.import-result-list {
  display: grid;
  gap: 10px;
}
.import-result-row {
  display: grid;
  grid-template-columns: auto minmax(0, 1fr);
  gap: 10px;
  align-items: center;
  padding: 10px;
  border: 1px solid var(--line);
  border-radius: 8px;
  background: #f8fafc;
}
.import-result-row b,
.import-result-row small {
  display: block;
  min-width: 0;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}
.import-result-row small {
  margin-top: 3px;
  color: var(--muted);
  font-size: 12px;
  font-weight: 800;
}
.rule-list { display: grid; gap: 12px; }
.rule-list div {
  padding: 12px;
  border: 1px solid var(--line);
  border-radius: 8px;
  background: #f8fafc;
}
.rule-list b { display: block; margin-bottom: 5px; }
.rule-list span { color: var(--muted); font-size: 13px; line-height: 1.6; }
.inline-select {
  min-width: 190px;
  border: 1px solid var(--line);
  border-radius: 6px;
  padding: 8px 10px;
  background: #fff;
}

@media (max-width: 1100px) {
  .platform-console { grid-template-columns: 76px minmax(0, 1fr); }
  .platform-brand { justify-content: center; padding-left: 0; padding-right: 0; }
  .platform-brand b,
  .platform-rail-label,
  .platform-rail-item:not(.active),
  .platform-rail-foot { display: none; }
  .platform-rail-item.active { justify-content: center; padding: 0; font-size: 0; }
  .platform-rail-item.active span { font-size: 12px; }
  .platform-summary { grid-template-columns: repeat(3, minmax(0, 1fr)); }
  .platform-summary > div:nth-child(3) { border-right: 0; }
  .platform-summary > div:nth-child(n+4) { border-top: 1px solid #e5eaf0; }
  .platform-list-head { align-items: flex-start; flex-direction: column; }
  .tenant-user-create { grid-template-columns: repeat(3, minmax(0, 1fr)); }
  .tenant-user-create button { min-height: 38px; }
  .shell { grid-template-columns: 1fr; }
  .sidebar { position: static; display: none; }
  .kpis { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .login { place-items: start center; }
  .grid, .login-card, .command-hero, .command-control-grid, .reception-layout, .reception-management-grid, .reception-deposit-body, .customer-cards, .customer-quality-grid, .insight-grid, .portrait-diagnosis, .org-grid, .platform-grid, .store-list, .assignment-grid, .assignment-advisor-list, .workbench-strip, .workbench-tasks, .workbench-supervision-list, .workbench-progress-grid, .workbench-performance-body, .workbench-performance-list, .workbench-performance-task-list, .workbench-quality-grid, .sales-flow-grid, .sales-flow-list.compact-list, .order-collection-body, .performance-pacing-body, .performance-health-body, .performance-action-body, .performance-task-body, .performance-detail-grid, .dashboard-command, .dashboard-grid, .dashboard-grid.wide, .dashboard-reminder-grid, .dashboard-quality-layout, .objection-conversion-layout, .reminder-card, .follow-desk-grid, .follow-task-coach, .follow-outcome-grid, .follow-list-compact, .follow-supervision-item, .training-grid, .training-objection-list, .training-quality-layout, .training-closure, .training-roleplay-layout, .training-roleplay-result { grid-template-columns: 1fr; }
  .reception-command { grid-template-columns: 1fr; }
  .reception-command-actions {
    grid-template-columns: repeat(auto-fit, minmax(118px, 1fr));
  }
  .login-card { min-height: 0; }
  .login-brand { padding: 42px; }
  .login-message h1 { font-size: 40px; }
  .login-loop-map {
    grid-template-columns: repeat(4, minmax(0, 1fr));
  }
  .login-loop-map > i {
    display: none;
  }
  .login-form {
    border-left: 0;
    border-top: 1px solid #e2e8f0;
    padding: 42px;
  }
  .command-kpi-ribbon { grid-template-columns: repeat(3, minmax(0, 1fr)); }
  .command-hero-side { grid-template-columns: minmax(120px, .36fr) minmax(0, 1fr); }
  .order-filter-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .delivery-filter-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .customer-filter-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .reception-filter-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .workbench-reminder-summary { grid-template-columns: repeat(4, minmax(0, 1fr)); }
  .sales-stage-strip { grid-template-columns: repeat(3, minmax(0, 1fr)); }
  .sales-stage-strip::before { display: none; }
  .sales-leak-list { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .sales-leak-metrics { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .workbench-progress-kpis { grid-template-columns: repeat(3, minmax(0, 1fr)); }
  .workbench-performance-summary { grid-template-columns: repeat(4, minmax(0, 1fr)); }
  .workbench-quality-summary { grid-template-columns: repeat(4, minmax(0, 1fr)); }
  .reception-deposit-summary { grid-template-columns: repeat(3, minmax(0, 1fr)); }
  .dashboard-reminder-kpis { grid-template-columns: repeat(3, minmax(0, 1fr)); }
  .dashboard-quality-kpis { grid-template-columns: repeat(3, minmax(0, 1fr)); }
  .objection-conversion-summary { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .performance-pacing-cards { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .performance-action-kpis { grid-template-columns: repeat(3, minmax(0, 1fr)); }
  .performance-task-summary { grid-template-columns: repeat(4, minmax(0, 1fr)); }
  .performance-accountability-kpis { grid-template-columns: repeat(3, minmax(0, 1fr)); }
  .performance-detail-kpis { grid-template-columns: repeat(3, minmax(0, 1fr)); }
  .performance-target-form { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .performance-target-summary { grid-column: 1 / -1; }
  .quality-check-grid { grid-template-columns: repeat(4, minmax(0, 1fr)); }
  .accountability-summary { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .accountability-list { grid-template-columns: 1fr; }
  .training-objection-summary { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .training-objection-summary button { grid-column: 1 / -1; }
  .training-quality-summary { grid-template-columns: repeat(3, minmax(0, 1fr)); }
  .training-roleplay-summary,
  .training-roleplay-points { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .reminder-filter-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .reminder-bulk-form { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .follow-filter-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .assignment-filter-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .order-filter-actions,
  .delivery-filter-actions,
  .customer-filter-actions,
  .reception-filter-actions,
  .reminder-filter-actions,
  .reminder-bulk-actions,
  .follow-filter-actions,
  .assignment-filter-actions { grid-column: 1 / -1; }
  .mobile-nav {
    min-height: 54px;
    position: sticky;
    top: 0;
    display: flex;
    gap: 6px;
    align-items: center;
    overflow-x: auto;
    overscroll-behavior-x: contain;
    padding: 7px 10px;
    background: rgba(255,255,255,.96);
    border-bottom: 1px solid var(--line);
    box-shadow: 0 8px 20px rgba(15, 23, 42, .06);
    z-index: 20;
    -webkit-overflow-scrolling: touch;
    scrollbar-width: none;
  }
  .mobile-nav::-webkit-scrollbar { display: none; }
  .content { padding-bottom: 44px; }
}

@media (max-width: 720px) {
  .page-tabs { overflow-x: auto; padding: 5px; scrollbar-width: none; }
  .page-tabs::-webkit-scrollbar { display: none; }
  .page-tab { min-width: max-content; padding: 0 14px; }
  .page-disclosure > summary,
  .collapsible-form-panel > summary { align-items: flex-start; padding: 12px 14px; }
  .page-disclosure > summary span,
  .collapsible-form-panel > summary span { display: none; }
  .page-disclosure-body { padding: 12px; }
  .platform-console { display: block; }
  .platform-rail { display: none; }
  .platform-topbar { min-height: 60px; padding: 10px 14px; }
  .platform-topbar > div:first-child span { display: none; }
  .platform-content { padding: 18px 14px 36px; }
  .platform-page-head { align-items: flex-start; }
  .platform-page-head h1 { font-size: 24px; }
  .platform-page-head p { display: none; }
  .platform-create-btn { min-width: 116px; }
  .platform-summary { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .platform-summary > div { min-height: 94px; padding: 14px; border-top: 1px solid #e5eaf0; }
  .platform-summary > div:nth-child(-n+2) { border-top: 0; }
  .platform-summary > div:nth-child(2n) { border-right: 0; }
  .platform-summary > div:nth-child(3) { border-right: 1px solid #e5eaf0; }
  .platform-summary > div:last-child { grid-column: 1 / -1; border-right: 0; }
  .platform-filter { width: 100%; flex-wrap: wrap; }
  .platform-filter input { width: 100%; }
  .platform-filter select { flex: 1; }
  .platform-tenant-drawer { width: 100vw; }
  .platform-drawer-head { min-height: 106px; padding: 20px 16px; }
  .platform-drawer-head h2 { font-size: 20px; }
  .platform-drawer-section { padding: 20px 16px; }
  .platform-drawer-actions { padding: 13px 16px; }
  .tenant-detail-command { grid-template-columns: repeat(3, minmax(0, 1fr)); padding: 14px 16px; }
  .tenant-detail-command > div { padding: 0 10px; }
  .tenant-detail-command button { grid-column: 1 / -1; margin: 14px 0 0; }
  .tenant-user-create { grid-template-columns: 1fr 1fr; }
  .tenant-user-create button { grid-column: 1 / -1; }
  .tenant-user-row { grid-template-columns: 36px minmax(0, 1fr) auto; }
  .tenant-user-row .tenant-role { grid-column: 2; }
  .tenant-user-row .tenant-status { grid-column: 3; grid-row: 1; }
  .tenant-user-row .row-actions { grid-column: 2 / -1; justify-content: flex-start; }
  .login { padding: 14px; overflow-x: hidden; }
  .login-particles span:nth-child(n+15) { display: none; }
  .login-particles span:nth-child(3n) { width: 12px; }
  .login-card { width: calc(100vw - 28px); }
  .login-brand { padding: 28px; gap: 28px; }
  .login-message h1 {
    font-size: 29px;
    line-height: 1.18;
  }
  .login-message p {
    font-size: 13px;
    line-height: 1.75;
  }
  .login-visual {
    padding: 14px;
    gap: 12px;
  }
  .login-loop-map {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
  .login-loop-node {
    min-height: 92px;
    padding: 11px;
  }
  .login-loop-node b {
    font-size: 24px;
  }
  .login-visual-foot {
    display: grid;
    grid-template-columns: 1fr;
  }
  .login-form {
    padding: 26px;
    border-left: 0;
    border-top: 1px solid #e2e8f0;
  }
  .login-form-head h2 { font-size: 25px; }
  .topbar {
    height: auto;
    min-height: 58px;
    align-items: flex-start;
    padding: 12px 14px;
    gap: 10px;
  }
  .topbar .actions { justify-content: flex-end; }
  .topbar span { display: block; margin-left: 0; margin-top: 3px; }
  .content { padding: 16px 14px 44px; }
  .toast { bottom: 22px; }
  .command-hero {
    min-height: 0;
    padding: 16px;
  }
  .command-hero h2 { font-size: 27px; }
  .command-hero p { font-size: 13px; }
  .command-hero-side {
    grid-template-columns: 1fr;
  }
  .command-score {
    width: 118px;
    justify-self: center;
  }
  .command-score > div {
    width: 90px;
  }
  .command-side-list,
  .command-kpi-ribbon {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
  .command-actions,
  .reception-start-presets,
  .sales-leak-actions {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
  .command-actions button,
  .reception-start-presets button,
  .sales-leak-actions button {
    width: 100%;
  }
  .page-head { align-items: flex-start; }
  .page-head h2 { font-size: 20px; }
  .kpis { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 10px; }
  .kpi strong { font-size: 21px; }
  .panel-head { padding: 12px 14px; }
  .panel-body { padding: 14px; }
  .reception-command {
    padding: 14px;
  }
  .reception-command-copy h3 {
    font-size: 20px;
  }
  .reception-command-metrics {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
  .reception-command-actions {
    grid-template-columns: 1fr 1fr;
  }
  .form-grid { grid-template-columns: 1fr; gap: 10px; }
  .order-form-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .field { margin-bottom: 8px; }
  .field input, .field select, .field textarea { min-height: 42px; }
  .order-filter-grid,
  .order-collection-card,
  .order-collection-guide,
  .delivery-filter-grid,
  .customer-filter-grid,
  .customer-quality-kpis,
  .reception-filter-grid,
  .reception-deposit-summary,
  .reception-guide-deposit-row,
  .reminder-filter-grid,
  .reminder-bulk-form,
  .follow-filter-grid,
  .follow-supervision-summary,
  .import-preview-kpis,
  .assignment-filter-grid,
	  .training-course-form,
	  .training-assignment-form,
	  .training-quality-summary,
	  .training-roleplay-summary,
  .training-roleplay-points,
  .training-result,
	  .training-result-grid,
	  .performance-detail-kpis,
	  .performance-task-summary,
	  .sales-stage-strip,
	  .sales-leak-list,
	  .sales-leak-metrics,
	  .workbench-quality-summary,
	  .workbench-quality-sample,
	  .performance-detail-amounts,
  .performance-activity-item,
  .portrait-follow-form,
  .detail-payment-form,
  .detail-collection-plan-form,
  .detail-delivery-form,
	  .detail-profile {
	    grid-template-columns: 1fr;
	  }
  .training-course-card {
    grid-template-columns: 1fr;
  }
  .training-focus-item {
    grid-template-columns: 1fr;
    align-items: start;
  }
  .training-focus-item button {
    width: fit-content;
  }
  .training-course-actions {
    justify-content: flex-start;
  }
  .training-course-card .card-tags {
    justify-content: flex-start;
  }
  .training-practice-head,
  .practice-options {
    grid-template-columns: 1fr;
  }
  .training-practice-head {
    display: grid;
  }
  .order-filter-actions,
  .delivery-filter-actions,
  .customer-filter-actions,
  .reception-filter-actions,
  .reminder-filter-actions,
  .reminder-bulk-actions,
  .follow-filter-actions,
  .import-actions,
  .assignment-filter-actions {
    display: grid;
    grid-template-columns: 1fr 1fr;
  }
  .order-drawer {
    width: 100vw;
    max-width: 100vw;
  }
  .drawer-head { padding: 15px 14px; }
  .drawer-body { padding: 14px; }
  .payment-history-row {
    display: grid;
  }
  .payment-history-row div:last-child { text-align: left; }
  .payment-inline {
    grid-template-columns: 1fr;
    min-width: 160px;
  }
  .delivery-info-grid {
    grid-template-columns: 1fr;
    min-width: 220px;
  }
  .payment-inline input,
  .payment-inline select,
  .payment-inline button {
    width: 100%;
  }
  .workbench-start,
  .workbench-active {
    min-height: auto;
    grid-template-columns: 1fr;
    gap: 12px;
  }
  .workbench-supervision-item {
    grid-template-columns: 1fr;
  }
  .customer-quality-item {
    grid-template-columns: 1fr;
  }
  .duplicate-merge {
    grid-template-columns: 1fr;
  }
  .import-preview-row {
    grid-template-columns: 1fr;
  }
  .import-preview-list {
    max-height: none;
  }
  .workbench-start button,
  .workbench-active button {
    width: 100%;
    min-height: 44px;
  }
  .workbench-actions { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .manager-team-pulse { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .workbench-kpis { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .workbench-reminder-summary { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .workbench-progress-kpis { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .workbench-performance-summary { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .dashboard-reminder-kpis { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .objection-conversion-summary { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .accountability-summary { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .performance-pacing-cards { grid-template-columns: 1fr; }
  .performance-health-kpis { grid-template-columns: 1fr; }
  .performance-action-kpis { grid-template-columns: 1fr; }
  .performance-task-summary { grid-template-columns: 1fr; }
  .performance-accountability-kpis { grid-template-columns: 1fr; }
  .performance-target-form,
  .performance-target-summary { grid-template-columns: 1fr; }
  .dashboard-quality-kpis {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
  .quality-check-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .follow-quality-head {
    display: grid;
  }
  .performance-action-title,
  .performance-task-title {
    grid-template-columns: 1fr;
  }
  .performance-risk-item {
    grid-template-columns: 1fr;
  }
  .dashboard-summary,
  .objection-conversion-summary,
  .training-objection-summary,
  .training-alert-grid,
  .dashboard-risk-samples {
    grid-template-columns: 1fr;
  }
  .dashboard-source-strip {
    grid-template-columns: 1fr;
  }
  .trend-row {
    grid-template-columns: 42px minmax(0, 1fr);
  }
  .trend-row b {
    grid-column: 1 / -1;
    white-space: normal;
  }
  .workbench-tasks { margin-top: 144px; }
  .workbench-task-panel { scroll-margin-bottom: 90px; }
  .order-list-panel { margin-top: 72px; }
  .live-clock strong { font-size: 36px; }
  .segmented {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
  .follow-task-presets {
    min-width: 0;
    justify-content: flex-start;
  }
  .customer-profile, .follow-profile { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .supervision-title {
    display: grid;
    gap: 3px;
  }
  .supervision-actions {
    grid-template-columns: 1fr 1fr;
  }
  .reminder-title {
    display: grid;
    gap: 6px;
  }
  .reminder-actions {
    grid-template-columns: 1fr 1fr;
  }
  .reminder-select {
    justify-content: center;
  }
  .desktop-customers { display: none; }
  .desktop-follow-list { display: none; }
  .desktop-guide-board { display: none; }
  .mobile-guide-board {
    display: grid;
    gap: 12px;
  }
  .mobile-customer-list {
    display: grid;
    gap: 12px;
  }
  .mobile-follow-list {
    display: grid;
    gap: 12px;
  }
  .portrait-hero {
    display: grid;
    gap: 10px;
  }
  .portrait-actions {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    padding: 10px 14px;
  }
  .portrait-actions button {
    min-width: 0;
    padding: 0 8px;
  }
  .customer-portrait .insight-grid { margin-top: 74px; }
  .portrait-profile { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .diagnosis-radar-row {
    grid-template-columns: 64px minmax(0, 1fr) 32px;
  }
  .customer-portrait { scroll-margin-top: 12px; scroll-margin-bottom: 90px; }
  .follow-desk { scroll-margin-top: 12px; scroll-margin-bottom: 90px; }
  .follow-write textarea { min-height: 132px; }
  .quick-order-form { grid-template-columns: 1fr; }
  .customer-card { padding: 14px; }
  .card-actions { grid-template-columns: 1fr; }
}

/* Mobile home: action-first sales workbench */
.m-topbar {
  min-height: 52px;
  padding: calc(7px + env(safe-area-inset-top)) 12px 7px;
}
.m-app-mark {
  width: 32px;
  height: 32px;
  border-radius: 10px;
  background: #173b79;
  box-shadow: 0 8px 18px rgba(23,59,121,.2);
  font-size: 14px;
}
.m-topbar b { font-size: 14px; }
.m-topbar small { margin-top: 3px; font-size: 10px; }
.m-top-actions .top-reminder,
.m-finance-button,
.m-profile-button { min-height: 34px; height: 34px; }
.m-profile-button { width: 34px; }
.m-profile-button { overflow: hidden; padding: 0; }
.m-profile-button .m-top-avatar { width: 100%; height: 100%; display: grid; place-items: center; object-fit: cover; }
.m-content {
  gap: 8px;
  padding: 9px 12px 20px;
}

/* Mobile personal workspace */
.m-me-hero {
  display: flex;
  align-items: center;
  gap: 14px;
  padding: 18px;
  border-radius: 22px;
  color: #fff;
  background:
    radial-gradient(circle at 92% 15%, rgba(255,255,255,.2), transparent 26%),
    linear-gradient(135deg,#172554 0%,#2563eb 58%,#0f9f8f 100%);
  box-shadow: 0 16px 34px rgba(37,99,235,.22);
}
.m-me-avatar { position: relative; flex: 0 0 auto; width: 70px; height: 70px; overflow: visible; border: 3px solid rgba(255,255,255,.8); border-radius: 50%; padding: 0; color: #1d4ed8; background: #dbeafe; box-shadow: 0 8px 20px rgba(15,23,42,.2); }
.m-me-avatar-media { width: 100%; height: 100%; display: grid; place-items: center; overflow: hidden; border-radius: 50%; object-fit: cover; font-size: 26px; font-weight: 950; }
.m-me-avatar i { position: absolute; right: -2px; bottom: -2px; width: 23px; height: 23px; display: grid; place-items: center; border: 2px solid #fff; border-radius: 50%; color: #fff; background: #0f9f8f; font-size: 11px; font-style: normal; }
.m-me-identity { min-width: 0; }
.m-me-identity > span,.m-me-page-head span { color: #bfdbfe; font-size: 10px; font-weight: 950; letter-spacing: .08em; }
.m-me-identity h1 { margin: 4px 0 4px; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; font-size: 23px; }
.m-me-identity p { margin: 0; color: rgba(255,255,255,.76); font-size: 12px; font-weight: 800; }
.m-me-login-account { display: inline-flex; align-items: center; gap: 5px; max-width: 100%; margin-top: 9px; padding: 5px 8px; border: 1px solid rgba(255,255,255,.2); border-radius: 999px; background: rgba(12,35,88,.18); color: rgba(255,255,255,.88); font-size: 11px; font-weight: 750; line-height: 1; }
.m-me-login-account i { padding: 3px 5px; border-radius: 999px; background: rgba(255,255,255,.16); color: #fff; font-size: 9px; font-style: normal; letter-spacing: .05em; }
.m-me-login-account b { overflow: hidden; color: #fff; font-size: 12px; font-variant-numeric: tabular-nums; text-overflow: ellipsis; white-space: nowrap; }
.m-me-kpis { display: grid; grid-template-columns: repeat(4,minmax(0,1fr)); gap: 1px; overflow: hidden; border: 1px solid #dfe7f1; border-radius: 18px; background: #dfe7f1; box-shadow: 0 10px 25px rgba(15,23,42,.06); }
.m-me-kpis > div { min-width: 0; display: grid; gap: 5px; padding: 13px 5px; background: rgba(255,255,255,.96); text-align: center; }
.m-me-kpis span { color: #64748b; font-size: 10px; font-weight: 850; }
.m-me-kpis b { overflow: hidden; color: #172033; font-size: 15px; text-overflow: ellipsis; white-space: nowrap; }
.m-contribution-hero { display:flex; align-items:flex-start; justify-content:space-between; gap:12px; padding:18px; border-radius:20px; background:#132238; color:#fff; box-shadow:0 16px 35px rgba(15,23,42,.18); }.m-contribution-hero>div { display:grid; gap:5px; }.m-contribution-hero span { font-size:11px; opacity:.75; }.m-contribution-hero strong { font-size:29px; line-height:1.05; }.m-contribution-hero small { color:#cbd5e1; font-size:10px; }.m-contribution-hero>.tag { background:rgba(255,255,255,.12); color:#fff; opacity:1; }
.m-contribution-kpis { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:1px; overflow:hidden; border:1px solid #dfe7f1; border-radius:16px; background:#dfe7f1; }.m-contribution-kpis>div { display:grid; gap:5px; padding:12px 4px; background:#fff; text-align:center; }.m-contribution-kpis span { color:#64748b; font-size:9px; }.m-contribution-kpis b { color:#172033; font-size:16px; }
.m-contribution-pending,.m-contribution-orders,.m-contribution-note { padding:14px; }.m-contribution-pending article,.m-contribution-orders article { display:flex; align-items:center; justify-content:space-between; gap:10px; padding:11px 0; border-top:1px solid #edf1f5; }.m-contribution-pending article>div,.m-contribution-orders article>div { display:grid; gap:3px; min-width:0; }.m-contribution-pending b,.m-contribution-orders b { color:#172033; font-size:12px; }.m-contribution-pending small,.m-contribution-orders small { color:#7b8798; font-size:9px; }.m-contribution-orders strong { color:#16845b; font-size:14px; }.m-contribution-note p { margin:6px 0 0; color:#64748b; font-size:11px; line-height:1.6; }
.m-me-actions { gap: 0; padding: 3px 14px; }
.m-me-actions > button { min-width: 0; display: grid; grid-template-columns: 38px minmax(0,1fr) auto; align-items: center; gap: 11px; min-height: 72px; border: 0; border-bottom: 1px solid #edf1f6; padding: 8px 0; color: #172033; background: transparent; text-align: left; }
.m-me-actions > button:last-child { border-bottom: 0; }
.m-me-actions > button > i { width: 38px; height: 38px; display: grid; place-items: center; border-radius: 13px; font-style: normal; font-weight: 950; }
.m-me-actions i.blue { color: #1d4ed8; background: #dbeafe; }.m-me-actions i.green { color: #047857; background: #d1fae5; }.m-me-actions i.amber { color: #a16207; background: #fef3c7; }
.m-me-actions span { min-width: 0; display: grid; gap: 4px; }.m-me-actions b { font-size: 14px; }.m-me-actions small { overflow: hidden; color: #64748b; font-size: 11px; font-weight: 750; text-overflow: ellipsis; white-space: nowrap; }
.m-me-actions em { color: #94a3b8; font-size: 24px; font-style: normal; }
.m-me-process { display: grid; grid-template-columns: repeat(4,minmax(0,1fr)); gap: 6px; }
.m-me-process div { min-width: 0; display: grid; gap: 4px; padding: 11px 4px; border-radius: 12px; background: #f5f8fc; text-align: center; }.m-me-process b { font-size: 18px; }.m-me-process span { color: #64748b; font-size: 10px; font-weight: 850; }
.m-me-logout { min-height: 46px; color: #be123c; border-color: #fecdd3; background: #fff1f2; }
.m-me-page-head { min-height: 58px; display: grid; grid-template-columns: 42px minmax(0,1fr); align-items: center; gap: 10px; padding: 3px 1px; }
.m-me-back { width: 42px; height: 42px; border: 1px solid #d9e2ef; border-radius: 14px; color: #1e40af; background: #fff; font-size: 30px; line-height: 1; }
.m-me-page-head span { color: #2563eb; }.m-me-page-head h2 { margin: 2px 0 0; font-size: 21px; }.m-me-page-head p { margin: 3px 0 0; color: #64748b; font-size: 10px; font-weight: 750; }
.m-me-performance-hero { display: grid; grid-template-columns: minmax(0,1fr) 84px; gap: 12px; padding: 18px; border-radius: 22px; color: #fff; background: linear-gradient(135deg,#172554,#1d4ed8 62%,#0891b2); box-shadow: 0 14px 30px rgba(37,99,235,.2); }
.m-me-performance-hero > div:first-child { display: grid; align-content: center; gap: 5px; }.m-me-performance-hero span,.m-me-performance-hero small { color: rgba(255,255,255,.72); font-size: 11px; font-weight: 800; }.m-me-performance-hero strong { font-size: 28px; }.m-me-performance-hero p { grid-column: 1/-1; margin: 0; color: rgba(255,255,255,.82); font-size: 11px; font-weight: 800; }
.m-me-rank-orb { width: 84px; height: 84px; display: grid; place-items: center; align-content: center; gap: 1px; border: 1px solid rgba(255,255,255,.28); border-radius: 50%; background: rgba(255,255,255,.12); }.m-me-rank-orb b { font-size: 28px; }
.m-me-rank-orb.unranked b { font-size: 15px; }
.m-me-progress { grid-column: 1/-1; height: 7px; overflow: hidden; border-radius: 5px; background: rgba(255,255,255,.18); }.m-me-progress span { display: block; height: 100%; border-radius: inherit; background: linear-gradient(90deg,#fbbf24,#5eead4); }
.m-me-ranking-list { display: grid; gap: 7px; }.m-me-ranking-list article { min-width: 0; display: grid; grid-template-columns: 28px 34px minmax(0,1fr) auto; align-items: center; gap: 8px; padding: 10px; border: 1px solid #e5ebf3; border-radius: 14px; }.m-me-ranking-list article.mine { border-color: #93c5fd; background: #eff6ff; }
.m-me-ranking-list article > i { width: 27px; height: 27px; display: grid; place-items: center; border-radius: 9px; color: #64748b; background: #eef2f7; font-style: normal; font-weight: 950; }.m-me-ranking-list .rank-1 { color: #92400e; background: #fef3c7; }.m-me-ranking-list .rank-2 { color: #475569; background: #e2e8f0; }.m-me-ranking-list .rank-3 { color: #9a3412; background: #ffedd5; }
.m-rank-avatar { width: 34px; height: 34px; display: grid; place-items: center; border-radius: 50%; color: #fff; background: linear-gradient(135deg,#2563eb,#0f9f8f); font-size: 12px; font-weight: 950; }.m-me-ranking-list article div { min-width: 0; display: grid; gap: 3px; }.m-me-ranking-list article b { overflow: hidden; font-size: 12px; text-overflow: ellipsis; white-space: nowrap; }.m-me-ranking-list article small { color: #64748b; font-size: 9px; font-weight: 750; }.m-me-ranking-list article > strong { color: #1d4ed8; font-size: 13px; }
.m-me-learning-summary { display: grid; grid-template-columns: repeat(3,minmax(0,1fr)); gap: 7px; }.m-me-learning-summary > div { display: grid; gap: 6px; padding: 13px 7px; border: 1px solid #dfe7f1; border-radius: 16px; background: #fff; text-align: center; }.m-me-learning-summary span { color: #64748b; font-size: 10px; font-weight: 850; }.m-me-learning-summary b { color: #1d4ed8; font-size: 21px; }
.m-learning-task-list { display: grid; gap: 8px; }.m-learning-task-list article { display: flex; align-items: center; justify-content: space-between; gap: 9px; padding: 11px; border: 1px solid #dbeafe; border-radius: 14px; background: #f8fbff; }.m-learning-task-list article.overdue { border-color: #fecaca; background: #fff7f7; }.m-learning-task-list article > div { min-width: 0; display: grid; gap: 3px; }.m-learning-task-list em { width: fit-content; color: #1d4ed8; font-size: 9px; font-style: normal; font-weight: 950; }.m-learning-task-list .overdue em { color: #dc2626; }.m-learning-task-list b { overflow: hidden; font-size: 12px; text-overflow: ellipsis; white-space: nowrap; }.m-learning-task-list small { color: #64748b; font-size: 9px; }.m-learning-task-list button { flex: 0 0 auto; min-height: 36px; }
.m-course-grid { display: grid; gap: 7px; }.m-course-grid > button { min-width: 0; min-height: 58px; display: grid; grid-template-columns: 34px minmax(0,1fr) auto; align-items: center; gap: 9px; border: 1px solid #e5ebf3; border-radius: 14px; padding: 9px 10px; color: #172033; background: #fff; text-align: left; }.m-course-grid > button > i { width: 34px; height: 34px; display: grid; place-items: center; border-radius: 11px; color: #047857; background: #d1fae5; font-style: normal; font-weight: 950; }.m-course-grid span { min-width: 0; display: grid; gap: 3px; }.m-course-grid b { overflow: hidden; font-size: 12px; text-overflow: ellipsis; white-space: nowrap; }.m-course-grid small { color: #64748b; font-size: 9px; }.m-course-grid em { color: #94a3b8; font-size: 20px; font-style: normal; }
.m-me-empty { padding: 24px 10px; color: #64748b; font-size: 12px; font-weight: 800; text-align: center; }
.m-me-avatar-card { grid-template-columns: 64px minmax(0,1fr); align-items: center; }.m-me-avatar-preview { width: 64px; height: 64px; overflow: hidden; border: 3px solid #dbeafe; border-radius: 50%; color: #1d4ed8; background: #eff6ff; }.m-me-avatar-card > div:nth-child(2) { min-width: 0; display: grid; gap: 4px; }.m-me-avatar-card > div:nth-child(2) span { color: #64748b; font-size: 10px; }.m-avatar-upload { position: relative; overflow: hidden; text-align: center; }.m-avatar-upload input { position: absolute; width: 1px; height: 1px; opacity: 0; }.m-me-avatar-card > button { min-height: 38px; }
.m-password-form { display: grid; gap: 11px; }.m-password-form .field { gap: 6px; }.m-password-form input { min-height: 46px; }.m-password-form small { color: #64748b; font-size: 9px; }
.m-course-meta { display: flex; gap: 7px; }.m-course-meta span { padding: 6px 8px; border-radius: 9px; color: #1d4ed8; background: #eff6ff; font-size: 10px; font-weight: 900; }.m-course-content { max-height: 48vh; overflow-y: auto; padding: 14px; border-radius: 14px; color: #334155; background: #f8fafc; font-size: 13px; line-height: 1.75; }.m-course-actions { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: 8px; }.m-course-actions button:only-child { grid-column: 1/-1; }
.m-practice-list { display: grid; gap: 12px; }.m-practice-list article { display: grid; gap: 7px; padding: 13px; border: 1px solid #dfe7f1; border-radius: 15px; }.m-practice-list article > b { font-size: 13px; line-height: 1.55; }.m-practice-list article > button { display: flex; align-items: center; gap: 8px; min-height: 42px; border: 1px solid #dfe7f1; border-radius: 11px; padding: 7px 9px; color: #334155; background: #fff; font-size: 11px; text-align: left; }.m-practice-list article > button i { flex: 0 0 auto; width: 24px; height: 24px; display: grid; place-items: center; border-radius: 8px; color: #1d4ed8; background: #eff6ff; font-style: normal; font-weight: 950; }.m-practice-list button.correct { border-color: #6ee7b7; background: #ecfdf5; }.m-practice-list button.wrong { border-color: #fca5a5; background: #fff1f2; }.m-practice-list p { margin: 2px 0 0; padding: 9px; border-radius: 10px; color: #166534; background: #f0fdf4; font-size: 10px; line-height: 1.55; }
.m-tabbar {
  gap: 3px;
  margin: 0 8px calc(8px + env(safe-area-inset-bottom));
  padding: 6px;
  border-radius: 20px;
}
.m-tabbar-btn { min-height: 52px; border-radius: 15px; }
.m-home-welcome {
  display: block;
  padding: 0 2px 2px;
}
.m-home-welcome > div { min-width: 0; }
.m-home-welcome > div > span {
  color: #718096;
  font-size: 11px;
  font-weight: 800;
}
.m-home-welcome h1 {
  margin: 3px 0 2px;
  color: #111c2e;
  font-size: 20px;
  line-height: 1.15;
  letter-spacing: -.4px;
}
.m-home-welcome p {
  margin: 0;
  overflow: hidden;
  color: #66758c;
  font-size: 11px;
  font-weight: 750;
  text-overflow: ellipsis;
  white-space: nowrap;
}
.m-quick-intake {
  min-width: 72px;
  min-height: 58px;
  display: grid;
  place-items: center;
  align-content: center;
  gap: 2px;
  border: 1px solid #c9dafd;
  border-radius: 16px;
  color: #1e5bc6;
  background: #f5f8ff;
  font-size: 10px;
  font-weight: 900;
}
.m-quick-intake i {
  display: block;
  font-size: 20px;
  font-style: normal;
  line-height: 1;
}
.m-manager-nudge { display:grid; gap:6px; padding:14px 15px; border:1px solid #fcd9b6; border-left:5px solid #f97316; border-radius:16px; background:linear-gradient(135deg,#fff,#fff7ed); box-shadow:0 6px 18px -10px rgba(249,115,22,.45); }
.m-manager-nudge-head { display:flex; align-items:center; justify-content:space-between; }
.m-manager-nudge-head span { color:#c2410c; font-size:10px; font-weight:950; letter-spacing:.1em; }
.m-manager-nudge-dismiss { border:0; background:transparent; color:#9a7b63; font-size:12px; font-weight:700; padding:2px 4px; }
.m-manager-nudge b { color:#172033; font-size:15px; }
.m-manager-nudge p { margin:0; color:#5b6472; font-size:12px; line-height:1.5; }
.m-manager-nudge-actions { margin-top:4px; }
.m-manager-nudge-go { padding:9px 16px; border:0; border-radius:11px; background:#f97316; color:#fff; font-size:13px; font-weight:850; }
.m-focus-card {
  position: relative;
  overflow: hidden;
  display: grid;
  gap: 6px;
  padding: 17px;
  border: 0;
  border-radius: 22px;
  color: #fff;
  background:
    radial-gradient(120% 100% at 88% -24%, rgba(255,255,255,.2), transparent 52%),
    linear-gradient(150deg, #2E55D4 0%, #2C6BBE 44%, #27866E 100%);
  box-shadow:
    inset 0 1px 0 rgba(255,255,255,.22),
    inset 0 0 0 1px rgba(255,255,255,.09),
    0 22px 40px -18px rgba(38,84,160,.6);
}
.m-focus-card::before {
  content: ''; position: absolute; inset: 0; pointer-events: none; opacity: .05; mix-blend-mode: overlay; z-index: 0;
  background-image: url("data:image/svg+xml;utf8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='160' height='160'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.9' numOctaves='2' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='160' height='160' filter='url(%23n)'/%3E%3C/svg%3E");
}

.m-focus-card.risk {
  background:
    radial-gradient(120% 100% at 88% -24%, rgba(255,255,255,.18), transparent 52%),
    linear-gradient(150deg, #C74228 0%, #B23A33 46%, #8F5D06 120%);
  box-shadow: inset 0 1px 0 rgba(255,255,255,.2), inset 0 0 0 1px rgba(255,255,255,.08), 0 22px 40px -18px rgba(160,60,40,.55);
}
.m-focus-card.live {
  background:
    radial-gradient(120% 100% at 88% -24%, rgba(255,255,255,.2), transparent 52%),
    linear-gradient(150deg, #17B392 0%, #12897A 52%, #0A6B58 120%);
  box-shadow: inset 0 1px 0 rgba(255,255,255,.22), inset 0 0 0 1px rgba(255,255,255,.09), 0 22px 40px -18px rgba(10,107,88,.55);
}
.m-focus-card > * { position: relative; z-index: 1; }
.m-focus-head {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 10px;
}
.m-focus-head > span {
  color: rgba(255,255,255,.72);
  font-size: 11px;
  font-weight: 600;
  letter-spacing: .18em;
}
.m-focus-head > b {
  max-width: 64%;
  overflow: hidden;
  padding: 4px 10px;
  border: 0;
  border-radius: 999px;
  color: rgba(255,255,255,.85);
  background: rgba(255,255,255,.07);
  box-shadow: inset 0 0 0 1px rgba(255,255,255,.12);
  font-family: "Space Grotesk","PingFang SC",sans-serif;
  font-size: 11px; font-weight: 600; letter-spacing: .06em;
  text-overflow: ellipsis;
  white-space: nowrap;
}
.m-focus-card h2 {
  margin: 3px 0 0;
  color: #fff;
  font-size: 22px;
  line-height: 1.2;
  letter-spacing: -.01em;
}
.m-focus-card .m-next-action-primary {
  gap: 8px;
  margin: 0;
  padding: 0;
  border: 0;
  background: transparent;
  backdrop-filter: none;
}
.m-focus-card .m-next-action-primary > p {
  margin: 0;
  color: rgba(255,255,255,.72);
  font-size: 10px;
  line-height: 1.45;
}
.m-focus-customer {
  min-width: 0;
  display: flex;
  align-items: center;
  gap: 7px;
}
.m-focus-customer strong { min-width: 0; overflow: hidden; font-size: 18px; text-overflow: ellipsis; white-space: nowrap; }
.m-focus-customer em {
  margin-left: auto;
  color: #c5d8fb;
  font-size: 10px;
  font-style: normal;
  font-weight: 850;
}
.m-focus-card .m-level {
  width: auto;
  min-width: 0;
  height: auto;
  flex: 0 0 auto;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  padding: 4px 7px;
  border-radius: 999px;
  font-size: 10px !important;
  font-weight: 950 !important;
  line-height: 1.2;
  white-space: nowrap;
}
.m-focus-card .m-next-action-primary > div:last-child {
  display: grid;
  grid-template-columns: 1.15fr 1fr;
  gap: 7px;
  margin: 1px 0 0;
}
.m-focus-card .m-next-action-primary.done > div:last-child { grid-template-columns: 1fr; }
.m-focus-card .m-next-action-primary button {
  min-height: 40px;
  border-radius: 12px;
  font-size: 12px;
  font-weight: 950;
}
.m-focus-primary {
  border: 0;
  color: #1E3FA8;
  background: linear-gradient(180deg, #FFFFFF, #F2F6FF);
  box-shadow: inset 0 1px 0 rgba(255,255,255,.9), 0 6px 18px -4px rgba(16,42,100,.45);
}
.m-focus-secondary,
.m-focus-icon {
  border: 0;
  color: #fff;
  background: rgba(255,255,255,.12);
  box-shadow: inset 0 0 0 1px rgba(255,255,255,.32), inset 0 1px 0 rgba(255,255,255,.14);
}
.m-focus-card .m-live-command { margin-top: 2px; }
.m-focus-card .m-stage-question { padding: 10px; }
.m-focus-card .m-reception-stage-track > div,
.m-focus-card .m-reception-stage-track > button { min-height: 40px; }
.m-home-section {
  display: grid;
  gap: 12px;
  padding: 16px;
  border: 0;
  border-radius: 20px;
  background: #fff;
  box-shadow: 0 1px 2px rgba(20,24,29,.04), 0 10px 28px -18px rgba(20,24,29,.18), inset 0 0 0 1px rgba(20,24,29,.03);
}
.m-section-head {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
}
.m-section-head > div { min-width: 0; }
.m-section-head h2,
.m-review-details summary h2 {
  margin: 0;
  color: #172033;
  font-size: 16px;
  line-height: 1.25;
}
.m-section-head p,
.m-review-details summary p {
  margin: 4px 0 0;
  overflow: hidden;
  color: #75839a;
  font-size: 10px;
  font-weight: 750;
  text-overflow: ellipsis;
  white-space: nowrap;
}
.m-section-head > strong {
  color: #1e5bc6;
  font-size: 21px;
}
.m-text-link {
  flex: 0 0 auto;
  min-height: 36px;
  padding: 0 3px;
  border: 0;
  color: #2563eb;
  background: transparent;
  font-size: 11px;
  font-weight: 900;
}
.m-pace-track {
  overflow: hidden;
  height: 8px;
  border-radius: 999px;
  background: rgba(20,24,29,.07);
}
.m-pace-track i {
  display: block;
  height: 100%;
  border-radius: inherit;
  background: linear-gradient(90deg, #2E55D4, #27866E);
  transition: width .28s ease;
}
.m-pace-metrics {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 6px;
}
.m-pace-metrics button {
  min-width: 0;
  display: grid;
  gap: 2px;
  padding: 11px 8px;
  border: 0;
  border-radius: 13px;
  color: #14181D;
  background: #F5F6F8;
  box-shadow: inset 0 0 0 1px rgba(20,24,29,.035);
  text-align: left;
  transition: transform .12s;
}
.m-pace-metrics button:active { transform: scale(.95); }
.m-pace-metrics span { color: #6A737C; font-size: 10.5px; font-weight: 600; }
.m-pace-metrics b { font-family: "Space Grotesk","PingFang SC",sans-serif; font-size: 20px; font-weight: 700; line-height: 1.05; font-variant-numeric: tabular-nums; }
.m-pace-metrics b.red { color: #C74228; }
.m-pace-metrics button:has(b.red) { background: #FBE4DC; box-shadow: inset 0 0 0 1px rgba(199,66,40,.12); }
.m-pace-metrics button:has(b.red) span { color: #C74228; }
.m-pace-metrics small { overflow: hidden; color: #9AA3AB; font-size: 10px; text-overflow: ellipsis; white-space: nowrap; }
.m-home-task-list { display: grid; gap: 7px; }
.m-home-task {
  display: grid;
  grid-template-columns: 36px minmax(0, 1fr) auto;
  align-items: center;
  gap: 11px;
  padding: 11px 12px;
  border: 0;
  border-radius: 15px;
  background: #F5F6F8;
  box-shadow: inset 0 0 0 1px rgba(20,24,29,.035);
}
.m-home-task.urgent { background: #FBE4DC; box-shadow: inset 0 0 0 1px rgba(199,66,40,.12); }
.m-home-task.attention { background: #FAECD2; box-shadow: inset 0 0 0 1px rgba(192,126,18,.14); }
.m-task-level {
  width: 36px;
  height: 36px;
  display: grid;
  place-items: center;
  border-radius: 12px;
  color: #fff;
  background: linear-gradient(150deg, #3E68DE, #27866E);
  box-shadow: inset 0 1px 0 rgba(255,255,255,.22);
  font-size: 10px;
  font-weight: 700;
}
.m-home-task.urgent .m-task-level { color: #fff; background: linear-gradient(150deg, #D65B41, #9C3018); }
.m-home-task.attention .m-task-level { color: #fff; background: linear-gradient(150deg, #E0A43A, #8F5D06); }
.m-task-copy { min-width: 0; display: grid; gap: 3px; }
.m-task-copy > div { display: flex; align-items: center; gap: 6px; }
.m-task-copy b { overflow: hidden; font-size: 13px; text-overflow: ellipsis; white-space: nowrap; }
.m-task-copy > div span { color: #2563eb; font-size: 9px; font-weight: 950; }
.m-task-copy p { margin: 0; overflow: hidden; color: #59687d; font-size: 10px; text-overflow: ellipsis; white-space: nowrap; }
.m-task-copy small { overflow: hidden; color: #8a96a8; font-size: 9px; text-overflow: ellipsis; white-space: nowrap; }
.m-task-action {
  min-width: 50px;
  min-height: 36px;
  border: 1px solid #cbd9f2;
  border-radius: 11px;
  color: #1f5fc9;
  background: #f3f7ff;
  font-size: 11px;
  font-weight: 900;
}
.m-home-empty {
  display: flex;
  align-items: center;
  gap: 10px;
  padding: 11px;
  border-radius: 14px;
  background: #f4faf7;
}
.m-home-empty i {
  width: 34px;
  height: 34px;
  display: grid;
  place-items: center;
  border-radius: 50%;
  color: #16836f;
  background: #dff4ec;
  font-style: normal;
  font-weight: 950;
}
.m-home-empty b { font-size: 12px; }
.m-home-empty p { margin: 3px 0 0; color: #738195; font-size: 10px; }
.m-opportunity-list { display: grid; gap: 2px; }
.m-opportunity-list > button {
  min-width: 0;
  min-height: 50px;
  display: grid;
  grid-template-columns: 28px minmax(0, 1fr) auto 10px;
  align-items: center;
  gap: 9px;
  padding: 7px 2px;
  border: 0;
  border-bottom: 1px solid #edf0f4;
  color: #172033;
  background: transparent;
  text-align: left;
}
.m-opportunity-list > button:last-child { border-bottom: 0; }
.m-opportunity-list .m-level {
  width: 28px;
  height: 28px;
  display: grid;
  place-items: center;
  border-radius: 9px;
  font-size: 10px;
  font-weight: 950;
}
.m-opportunity-list div { min-width: 0; display: grid; gap: 3px; }
.m-opportunity-list b,
.m-opportunity-list small { overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.m-opportunity-list b { font-size: 12px; }
.m-opportunity-list small { color: #7b8799; font-size: 9px; }
.m-opportunity-list strong { color: #1d5dc4; font-size: 11px; }
.m-opportunity-list i { color: #a3adbb; font-style: normal; }
.m-opportunity-empty { padding: 10px; border-radius: 12px; color: #75839a; background: #f6f8fb; font-size: 10px; line-height: 1.5; }
.m-review-details { padding: 0; }
.m-review-details summary {
  min-height: 68px;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
  padding: 14px;
  cursor: pointer;
  list-style: none;
}
.m-review-details summary::-webkit-details-marker { display: none; }
.m-review-details summary > span { color: #2563eb; font-size: 11px; font-weight: 900; }
.m-review-details[open] summary > span { font-size: 0; }
.m-review-details[open] summary > span::after { content: "收起"; font-size: 11px; }
.m-review-body { display: grid; gap: 10px; padding: 0 14px 14px; }
.m-review-body > p { margin: 0; padding: 10px; border-left: 3px solid #2f68e9; color: #536179; background: #eef4ff; font-size: 11px; line-height: 1.5; }

@media (max-width: 370px) {
  .m-focus-card .m-next-action-primary > div:last-child { grid-template-columns: 1fr 1fr; }
  .m-pace-metrics { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .m-home-task { grid-template-columns: 34px minmax(0, 1fr); }
  .m-task-action { grid-column: 2; justify-self: start; }
}

.m-next-customer {
  border: 1px solid #bfd2ff;
  background: linear-gradient(180deg, #f7faff, #fff);
  box-shadow: 0 14px 30px rgba(47,104,233,.09);
}
.m-next-customer.empty { border-color: #dfe6ef; box-shadow: none; }
.m-next-customer.empty p { margin: 0; color: #64748b; font-size: 13px; line-height: 1.65; }
.m-next-customer-main {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  gap: 12px;
  align-items: center;
  padding: 12px;
  border-left: 4px solid #2f68e9;
  background: #fff;
}
.m-next-customer-main > div { display: grid; gap: 4px; min-width: 0; }
.m-next-customer-main > div:last-child { text-align: right; }
.m-next-customer-main strong { overflow: hidden; font-size: 20px; text-overflow: ellipsis; white-space: nowrap; }
.m-next-customer-main span { color: #64748b; font-size: 12px; }
.m-next-customer-main b { color: #235fc8; font-size: 16px; }
.m-customer-search {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  gap: 8px;
}
.m-customer-page-head { align-items: flex-start; }
.m-customer-page-head > div { display: grid; gap: 2px; min-width: 0; }
.m-customer-page-head h2 { margin: 0; font-size: 21px; }
.m-customer-page-head p { margin: 0; color: #64748b; font-size: 11px; font-weight: 800; }
.m-customer-page-head .m-customer-add {
  min-width: 88px;
  min-height: 44px;
  padding-inline: 12px;
  border-radius: 14px;
  white-space: nowrap;
}
.m-customer-page-head .m-customer-add b { margin-right: 2px; font-size: 17px; }
.m-customer-search input { min-width: 0; min-height: 42px; border-radius: 13px; }
.m-customer-search button { min-height: 42px; padding-inline: 17px; border-radius: 13px; }
.m-customer-scope-filter {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 7px;
}
.m-customer-scope-filter button {
  min-width: 0;
  min-height: 40px;
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 5px;
  padding: 6px 5px;
  border: 1px solid #dce3ed;
  border-radius: 12px;
  background: #fff;
  color: #58667c;
  font-size: 11px;
  font-weight: 800;
}
.m-customer-scope-filter button b { color: #172033; font-size: 15px; }
.m-customer-scope-filter button.active b { color: #235fc8; }
.m-customer-scope-filter button.active { border-color: #2f68e9; background: #edf3ff; color: #235fc8; }
.m-customer-intention-filter { gap: 6px; margin-bottom: 2px; }
.m-customer-intention-filter > button {
  min-height: 57px;
  grid-template-columns: auto 1fr;
  grid-template-rows: auto auto;
  align-items: center;
  gap: 0 5px;
  padding: 7px 8px;
  border-radius: 12px;
}
.m-customer-intention-filter b { font-size: 12px; }
.m-customer-intention-filter strong { justify-self: end; font-size: 18px; line-height: 1; }
.m-customer-intention-filter span { grid-column: 1 / -1; font-size: 10px; }
.m-customer-stage-filter { margin-top: -2px; padding-bottom: 3px; }
.m-customer-stage-filter button { min-height: 34px; padding: 6px 10px; font-size: 11px; font-weight: 850; }
.m-customer-kpi-bar {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  overflow: hidden;
  border: 1px solid #dfe6ef;
  border-radius: 16px;
  background: rgba(255,255,255,.94);
  box-shadow: 0 8px 20px rgba(15,23,42,.04);
}
.m-customer-kpi-bar > div {
  min-width: 0;
  min-height: 62px;
  display: grid;
  place-content: center;
  gap: 4px;
  padding: 8px 4px;
  border-left: 1px solid #e6ebf2;
  text-align: center;
}
.m-customer-kpi-bar > div:first-child { border-left: 0; }
.m-customer-kpi-bar span { overflow: hidden; color: #718096; font-size: 10px; font-weight: 850; text-overflow: ellipsis; white-space: nowrap; }
.m-customer-kpi-bar b { color: #172033; font-size: 19px; line-height: 1; }
.m-customer-kpi-bar .danger b { color: #dc3d43; }
.m-customer-kpi-bar .warning b { color: #b7791f; }
.m-customer-kpi-bar .success b { color: #15803d; }
.m-customer-list-card { gap: 10px; }
.m-customer-empty {
  min-height: 178px;
  display: grid;
  place-items: center;
  align-content: center;
  gap: 7px;
  padding: 22px 14px;
  border: 1px dashed #cbd8e8;
  border-radius: 15px;
  background: linear-gradient(180deg, #fbfdff, #f6f9fc);
  text-align: center;
}
.m-customer-empty-icon {
  width: 38px;
  height: 38px;
  display: grid;
  place-items: center;
  border-radius: 50%;
  color: #235fc8 !important;
  background: #eaf1ff;
  font-size: 15px !important;
  font-weight: 950 !important;
}
.m-customer-empty > b { color: #172033; font-size: 16px; }
.m-customer-empty p { margin: 0; color: #718096; font-size: 11px; line-height: 1.55; }
.m-customer-empty > div { display: flex; gap: 8px; margin-top: 4px; }
.m-customer-empty button { min-height: 38px; padding-inline: 16px; border-radius: 12px; font-size: 12px; }
.m-customer-contact-grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 8px; }
.m-customer-contact-grid .field { min-width: 0; }
.m-customer-contact-grid input { min-width: 0; width: 100%; }
.m-customer-contact-fieldset { min-width: 0; margin: 0; padding: 0; border: 0; }
.m-customer-contact-fieldset legend { margin-bottom: 7px; padding: 0; color: #334155; font-size: 12px; font-weight: 850; }
.m-customer-contact-fieldset .m-customer-contact-grid .field { margin-bottom: 0; }
.m-customer-contact-fieldset > .m-customer-field-error { display: block; margin-top: 4px; }
.m-customer-name-gender-grid { display: grid; grid-template-columns: minmax(0, 1fr) 160px; gap: 10px; align-items: start; }
.m-customer-name-gender-grid .field { min-width: 0; }
.m-field-title { display: flex; align-items: center; min-height: 18px; }
.m-customer-gender-field { min-width: 0; margin: 0; padding: 0; border: 0; }
.m-customer-gender-field legend { min-height: 18px; margin-bottom: 7px; padding: 0; color: #334155; font-size: 12px; font-weight: 850; }
.m-customer-gender-picker { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 7px; }
.m-customer-gender-picker label { position: relative; min-width: 0; cursor: pointer; }
.m-customer-gender-picker input { position: absolute; width: 1px; height: 1px; opacity: 0; }
.m-customer-gender-picker span { min-height: 44px; display: grid; place-items: center; border: 1px solid #d8e1ed; border-radius: 11px; color: #526176; background: #fff; font-size: 13px; font-weight: 900; }
.m-customer-gender-picker input:checked + span { border-color: #6b99ff; color: #1749ad; background: #edf4ff; box-shadow: inset 0 0 0 1px #6b99ff; }
.m-customer-gender-picker input:focus-visible + span { outline: 3px solid rgba(37,99,235,.18); outline-offset: 2px; }
.m-customer-field-error { min-height: 13px; color: #c92f36; font-size: 9px; font-weight: 850; }
.m-customer-field-error:empty { visibility: hidden; }
.m-customer-level-field { min-width: 0; margin: 0; padding: 0; border: 0; }
.m-customer-level-field legend { margin-bottom: 7px; padding: 0; color: #334155; font-size: 12px; font-weight: 850; }
.m-customer-level-picker { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 7px; }
.m-customer-level-picker label { position: relative; min-width: 0; cursor: pointer; }
.m-customer-level-picker input { position: absolute; width: 1px; height: 1px; opacity: 0; pointer-events: none; }
.m-customer-level-picker span { position: relative; min-height: 58px; display: grid; place-items: center; align-content: center; gap: 3px; padding: 7px 3px; border: 1px solid #dce3ed; border-top: 3px solid #9ba8bc; border-radius: 12px; background: #fff; text-align: center; transition: border-color .16s ease, background .16s ease, box-shadow .16s ease; }
.m-customer-level-picker b { color: #172033; font-size: 18px; line-height: 1; }
.m-customer-level-picker small { overflow: hidden; width: 100%; color: #718096; font-size: 9px; font-weight: 800; text-overflow: ellipsis; white-space: nowrap; }
.m-customer-level-picker .level-a span { border-top-color: #d94a4a; }
.m-customer-level-picker .level-b span { border-top-color: #e59a17; }
.m-customer-level-picker .level-c span { border-top-color: #2f68e9; }
.m-customer-level-picker .level-d span { border-top-color: #8290a6; }
.m-customer-level-picker input:checked + span { border-color: #2f68e9; background: #edf3ff; box-shadow: inset 0 0 0 1px #2f68e9, 0 5px 12px rgba(47,104,233,.1); }
.m-customer-level-picker input:checked + span b { color: #235fc8; }
.m-customer-level-picker input:checked + span::after { content: "✓"; position: absolute; top: 3px; right: 5px; color: #235fc8; font-size: 9px; font-weight: 950; }
.m-customer-level-picker input:focus-visible + span { outline: 3px solid rgba(47,104,233,.24); outline-offset: 2px; }
.m-order-page-head { align-items: flex-start; }
.m-order-page-head > div { display: grid; gap: 2px; min-width: 0; }
.m-order-page-head h2 { margin: 0; font-size: 21px; }
.m-order-page-head p { margin: 0; color: #64748b; font-size: 11px; font-weight: 800; }
.m-order-page-head .m-order-create { min-width: 84px; min-height: 44px; padding-inline: 12px; border-radius: 14px; white-space: nowrap; }
.m-order-page-head .m-order-create b { margin-right: 2px; font-size: 17px; }
.m-order-focus {
  display: grid;
  gap: 8px;
  padding: 14px 15px;
  overflow: hidden;
  border: 1px solid #bcd1ff;
  border-radius: 18px;
  background: linear-gradient(140deg, #163264 0%, #2858b5 68%, #187e92 100%);
  box-shadow: 0 14px 30px rgba(37,88,181,.16);
  color: #fff;
}
.m-order-focus.empty { grid-template-columns: minmax(0, 1fr) auto; grid-template-rows: auto auto; gap: 4px 10px; padding: 11px 12px; background: linear-gradient(140deg, #193568, #285fcb 68%, #178b99); }
.m-order-focus.empty .m-order-focus-head { grid-column: 1; grid-row: 1; }
.m-order-focus.empty .m-order-focus-head > b { display: none; }
.m-order-focus.empty > p { grid-column: 1; grid-row: 2; align-self: start; font-size: 10px; }
.m-order-focus.empty .m-order-focus-actions { grid-column: 2; grid-row: 1 / 3; flex-direction: column; justify-content: center; gap: 0; }
.m-order-focus.empty .m-order-focus-actions .primary { min-height: 38px; }
.m-order-focus.empty .m-order-focus-link { min-height: 26px !important; font-size: 9px; }
.m-order-focus-head { display: flex; justify-content: space-between; gap: 12px; align-items: flex-start; }
.m-order-focus-head > div { display: grid; gap: 3px; min-width: 0; }
.m-order-focus-head span { color: rgba(255,255,255,.74); font-size: 10px; font-weight: 900; letter-spacing: .04em; }
.m-order-focus-head h3 { margin: 0; overflow: hidden; color: #fff; font-size: 18px; text-overflow: ellipsis; white-space: nowrap; }
.m-order-focus-head > b { flex: 0 0 auto; color: rgba(255,255,255,.84); font-size: 18px; }
.m-order-focus > p { margin: 0; color: rgba(255,255,255,.82); font-size: 11px; font-weight: 750; line-height: 1.55; }
.m-order-focus-actions { display: flex; gap: 10px; align-items: center; }
.m-order-focus-actions button { min-width: 0; min-height: 40px; padding: 7px 14px; border-radius: 12px; font-size: 11px; font-weight: 900; }
.m-order-focus-actions .primary { border-color: #fff; background: #fff; color: #173e79; }
.m-order-focus-link { min-height: 36px !important; padding-inline: 2px !important; border: 0; background: transparent; color: rgba(255,255,255,.88); text-decoration: underline; text-underline-offset: 3px; }
.m-order-risk-card {
  display: grid;
  gap: 10px;
  padding: 13px;
  border: 1px solid #f3d59a;
  border-left: 4px solid #e59a17;
  border-radius: 16px;
  background: linear-gradient(135deg, #fffaf0, #fffdf8);
}
.m-order-risk-card.has-overdue { border-color: #f4c4c6; border-left-color: #dc3d43; background: linear-gradient(135deg, #fff8f8, #fffdfb); }
.m-order-risk-head { display: flex; justify-content: space-between; gap: 10px; align-items: center; }
.m-order-risk-head > div { min-width: 0; display: grid; gap: 2px; }
.m-order-risk-head b { color: #172033; font-size: 14px; }
.m-order-risk-head span { color: #718096; font-size: 10px; font-weight: 750; }
.m-order-risk-head button { min-height: 38px; padding-inline: 13px; border-radius: 11px; font-size: 11px; white-space: nowrap; }
.m-order-risk-grid { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 6px; }
.m-order-risk-grid button { min-width: 0; min-height: 55px; display: grid; place-content: center; gap: 2px; padding: 6px 2px; border: 1px solid #eadfcb; border-radius: 11px; background: rgba(255,255,255,.82); color: #64748b; text-align: center; }
.m-order-risk-grid button:disabled { opacity: .48; }
.m-order-risk-grid button.active { border-color: #2f68e9; background: #edf3ff; box-shadow: 0 0 0 2px rgba(47,104,233,.12); }
.m-order-risk-grid button.overdue:not(:disabled) b { color: #c92f36; }
.m-order-risk-grid button.today:not(:disabled) b,
.m-order-risk-grid button.unplanned:not(:disabled) b { color: #b7791f; }
.m-order-risk-grid span { overflow: hidden; font-size: 9px; font-weight: 850; text-overflow: ellipsis; white-space: nowrap; }
.m-order-risk-grid b { color: #172033; font-size: 12px; font-variant-numeric: tabular-nums; }
.m-order-risk-grid small { overflow: hidden; color: #718096; font-size: 9px; font-weight: 750; text-overflow: ellipsis; white-space: nowrap; font-variant-numeric: tabular-nums; }
.m-order-kpi-bar {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  overflow: hidden;
  border: 1px solid #dfe6ef;
  border-radius: 16px;
  background: rgba(255,255,255,.94);
}
.m-order-kpi-bar > button { min-width: 0; min-height: 62px; display: grid; place-content: center; gap: 5px; padding: 8px 3px; border: 0; border-left: 1px solid #e6ebf2; border-radius: 0; background: transparent; text-align: center; }
.m-order-kpi-bar > button:first-child { border-left: 0; }
.m-order-kpi-bar > button.active { background: #edf3ff; box-shadow: inset 0 -3px #2f68e9; }
.m-order-kpi-bar.is-empty > button { min-height: 52px; }
.m-order-kpi-bar span { overflow: hidden; color: #718096; font-size: 10px; font-weight: 850; text-overflow: ellipsis; white-space: nowrap; }
.m-order-kpi-bar b { overflow: hidden; color: #172033; font-size: 16px; line-height: 1; text-overflow: ellipsis; white-space: nowrap; font-variant-numeric: tabular-nums; }
.m-order-kpi-bar .success b { color: #15803d; }
.m-order-kpi-bar .warning b { color: #b7791f; }
.m-order-status-filter { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 6px; }
.m-order-status-filter button { min-width: 0; min-height: 44px; display: flex; align-items: center; justify-content: center; gap: 4px; padding: 6px 3px; border: 1px solid #dce3ed; border-radius: 12px; background: #fff; color: #64748b; font-size: 10px; font-weight: 850; }
.m-order-status-filter button b { color: #172033; font-size: 14px; }
.m-order-status-filter button.warning:not(.active) b { color: #b7791f; }
.m-order-status-filter button.danger:not(.active) b { color: #c92f36; }
.m-order-status-filter button.active { border-color: #bcd1ff; background: #edf3ff; color: #235fc8; box-shadow: inset 0 -2px #2f68e9; }
.m-order-status-filter button.active b { color: #235fc8; }
.m-order-customer-context { min-height: 42px; display: flex; align-items: center; gap: 7px; padding: 8px 10px; border: 1px solid #cfe0ff; border-radius: 12px; background: #f3f7ff; color: #66758c; font-size: 11px; }
.m-order-customer-context b { min-width: 0; flex: 1; overflow: hidden; color: #184b9f; font-size: 12px; text-overflow: ellipsis; white-space: nowrap; }
.m-order-customer-context button { min-height: 30px; padding: 4px 8px; border: 0; border-radius: 9px; background: #e5eeff; color: #235fc8; font-size: 10px; font-weight: 850; }
.m-order-search { display: grid; grid-template-columns: minmax(0, 1fr) auto; gap: 7px; }
.m-order-search > label { position: relative; min-width: 0; display: flex; align-items: center; }
.m-order-search input { width: 100%; min-width: 0; min-height: 44px; padding: 9px 39px 9px 35px; border: 1px solid #d5deea; border-radius: 13px; outline: 0; background: #fff; }
.m-order-search input:focus { border-color: #78a4ff; box-shadow: 0 0 0 3px rgba(47,104,233,.14); }
.m-order-search-icon { position: absolute; left: 12px; z-index: 1; color: #718096; font-size: 21px; line-height: 1; transform: rotate(-15deg); pointer-events: none; }
.m-order-search > button { min-height: 44px; padding-inline: 15px; border-radius: 12px; }
.m-order-search-clear { position: absolute; right: 7px; width: 30px; min-height: 30px; display: grid; place-items: center; padding: 0; border: 0; border-radius: 999px; background: #eef2f7; color: #526178; font-size: 18px; }
.m-order-search-spin { position: absolute; right: 13px; width: 14px; height: 14px; display: none; border: 2px solid #c9d8f6; border-top-color: #2f68e9; border-radius: 50%; animation: m-order-spin .75s linear infinite; }
.m-order-search.is-searching .m-order-search-clear { display: none; }
.m-order-search.is-searching .m-order-search-spin { display: block; }
@keyframes m-order-spin { to { transform: rotate(360deg); } }
.m-order-list-card { gap: 10px; }
.m-order-sort select { min-height: 36px; padding: 6px 26px 6px 9px; border: 1px solid #dce3ed; border-radius: 10px; background-color: #f8fafc; color: #526178; font-size: 10px; font-weight: 800; }
.m-order-card { min-width: 0; display: grid; gap: 10px; padding: 13px; border: 1px solid #e1e8f1; border-left: 4px solid #8da2bc; border-radius: 16px; background: rgba(251,253,255,.97); }
.m-order-card.amber { border-left-color: #d9961e; }
.m-order-card.blue { border-left-color: #2f68e9; }
.m-order-card.green { border-left-color: #17926a; }
.m-order-card.red { border-left-color: #dc3d43; }
.m-order-card header { display: flex; justify-content: space-between; gap: 10px; align-items: flex-start; }
.m-order-card header > div { min-width: 0; display: grid; gap: 3px; }
.m-order-card header b { overflow: hidden; color: #172033; font-size: 15px; text-overflow: ellipsis; white-space: nowrap; }
.m-order-card header span { color: #718096; font-size: 10px; font-weight: 800; }
.m-order-money { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 6px; }
.m-order-money > div { min-width: 0; display: grid; gap: 3px; padding: 8px; border-radius: 10px; background: #f1f5f9; }
.m-order-money span { color: #718096; font-size: 9px; font-weight: 850; }
.m-order-money b { overflow: hidden; color: #172033; font-size: 14px; text-overflow: ellipsis; white-space: nowrap; font-variant-numeric: tabular-nums; }
.m-order-progress { height: 5px; overflow: hidden; border-radius: 999px; background: rgba(203,213,225,.62); }
.m-order-progress span { display: block; height: 100%; border-radius: inherit; background: linear-gradient(90deg, #2f68e9, #13a69a); }
.m-order-progress-row { display: grid; grid-template-columns: minmax(0, 1fr) auto; gap: 8px; align-items: center; }
.m-order-progress-row > b { color: #526178; font-size: 10px; font-variant-numeric: tabular-nums; }
.m-order-plan-line { display: flex; justify-content: space-between; gap: 8px; align-items: center; color: #64748b; font-size: 10px; font-weight: 800; }
.m-order-plan-line > span { min-width: 0; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.m-order-plan-line.red > span { color: #c92f36; }
.m-order-plan-line.amber > span { color: #9a650e; }
.m-order-plan-line i { flex: 0 0 auto; font-style: normal; }
.m-order-card-actions { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 7px; }
.m-order-card-actions:has(> button:nth-child(2):last-child) { grid-template-columns: repeat(2, minmax(0, 1fr)); }
.m-order-card-actions:has(> button:only-child) { grid-template-columns: minmax(0, 1fr); }
.m-order-card-actions button { min-width: 0; min-height: 44px; padding: 6px 4px; border-radius: 11px; font-size: 11px; }
.m-order-empty { min-height: 142px; display: grid; place-items: center; align-content: center; gap: 7px; padding: 20px 14px; border: 1px dashed #cbd8e8; border-radius: 15px; background: #f8fbff; text-align: center; }
.m-order-empty > b { color: #172033; font-size: 15px; }
.m-order-empty p { margin: 0; color: #718096; font-size: 11px; line-height: 1.55; }
.m-order-empty button { min-height: 38px; margin-top: 3px; padding-inline: 16px; border-radius: 12px; font-size: 11px; }
.m-order-empty.compact { min-height: 96px; }
.m-order-sheet { max-height: 92%; }
.m-order-sheet .m-modal-body { padding-bottom: 16px; }
.m-order-form-grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 8px; }
.m-order-sheet .field small { color: #8a6470; font-size: 9px; font-weight: 750; line-height: 1.45; }
.m-order-checkout-sheet { max-height: calc(100dvh - 16px); margin-bottom: calc(4px + env(safe-area-inset-bottom)); border-radius: 22px 22px 18px 18px; }
.m-order-checkout-sheet .m-modal-head { padding: 11px 14px 9px; }
.m-order-checkout-sheet .m-modal-head h3 { margin-top: 1px; font-size: 18px; }
.m-order-modal-close { width: 42px; min-width: 42px; min-height: 42px; padding: 0; border-radius: 13px; font-size: 22px; line-height: 1; }
.m-order-checkout-form { gap: 0; padding: 0 14px 18px !important; }
.m-order-checkout-section { display: grid; gap: 10px; padding: 14px 0; border-bottom: 1px solid #edf1f6; }
.m-order-checkout-section:last-of-type { border-bottom: 0; }
.m-order-checkout-title { display: flex; justify-content: space-between; gap: 10px; align-items: baseline; }
.m-order-checkout-title b { color: #172033; font-size: 13px; }
.m-order-checkout-title span { color: #8490a3; font-size: 9px; font-weight: 750; text-align: right; }
.m-order-checkout-form .field { gap: 6px; margin: 0; color: #42516a; font-size: 11px; }
.m-order-checkout-form .field input,
.m-order-checkout-form .field select,
.m-order-checkout-form .field textarea { min-height: 46px; border-color: #d8e0eb; border-radius: 12px; padding: 10px 11px; font-size: 13px; }
.m-order-checkout-form .field textarea { min-height: 62px; line-height: 1.5; resize: none; }
.m-order-checkout-form .field input:focus,
.m-order-checkout-form .field select:focus,
.m-order-checkout-form .field textarea:focus { border-color: #78a4ff; box-shadow: 0 0 0 3px rgba(47,104,233,.12); }
.m-order-checkout-form .field > small:not(.m-order-field-error) { color: #8490a3; }
.m-order-field-error { min-height: 0; color: #c92f36 !important; font-size: 9px !important; font-weight: 800 !important; }
.m-order-field-error:empty { display: none; }
.m-order-customer-search { position: relative; display: flex; align-items: center; }
.m-order-customer-search > span { position: absolute; left: 12px; z-index: 1; color: #718096; font-size: 21px; transform: rotate(-15deg); pointer-events: none; }
.m-order-customer-search input { width: 100%; min-height: 46px; padding: 10px 12px 10px 37px; border: 1px solid #d8e0eb; border-radius: 13px; outline: 0; background: #fff; font-size: 13px; }
.m-order-customer-search input:focus { border-color: #78a4ff; box-shadow: 0 0 0 3px rgba(47,104,233,.12); }
.m-order-customer-results { max-height: 218px; display: grid; gap: 5px; overflow-y: auto; }
.m-order-customer-results.hidden { display: none; }
.m-order-customer-results > button { min-height: 54px; display: flex; justify-content: space-between; gap: 10px; align-items: center; padding: 8px 10px; border: 1px solid #e0e7ef; border-radius: 12px; background: #fff; text-align: left; }
.m-order-customer-results > button > span { min-width: 0; display: grid; gap: 3px; }
.m-order-customer-results b { overflow: hidden; color: #172033; font-size: 12px; text-overflow: ellipsis; white-space: nowrap; }
.m-order-customer-results small { overflow: hidden; color: #718096; font-size: 9px; font-weight: 750; text-overflow: ellipsis; white-space: nowrap; }
.m-order-customer-results i { flex: 0 0 auto; color: #235fc8; font-size: 9px; font-style: normal; font-weight: 850; }
.m-order-customer-results i.warning { color: #a9670a; }
.m-order-customer-empty { display: flex; justify-content: space-between; gap: 10px; align-items: center; padding: 10px 12px; border-radius: 11px; color: #718096; background: #f8fafc; font-size: 10px; text-align: left; }
.m-order-customer-empty button { min-height: 34px; padding: 0 10px; border: 0; border-radius: 9px; color: #235fc8; background: #e5eeff; font-size: 9px; font-weight: 850; }
.m-order-selected-customer { display: grid; gap: 7px; padding: 10px; border: 1px solid #bfd3ff; border-radius: 13px; background: #f5f8ff; }
.m-order-selected-customer > div:first-child { display: flex; gap: 9px; align-items: center; }
.m-order-selected-customer .m-level { flex: 0 0 auto; }
.m-order-selected-customer p { min-width: 0; flex: 1 1 auto; display: grid; gap: 2px; margin: 0; }
.m-order-selected-customer p b { overflow: hidden; color: #172033; font-size: 12px; text-overflow: ellipsis; white-space: nowrap; }
.m-order-selected-customer p small { overflow: hidden; color: #64748b; font-size: 9px; text-overflow: ellipsis; white-space: nowrap; }
.m-order-selected-customer [data-order-change-customer] { flex: 0 0 auto; min-height: 34px; padding: 0 9px; border: 0; border-radius: 9px; color: #235fc8; background: #e5eeff; font-size: 9px; font-weight: 850; }
.m-order-customer-signal { display: flex !important; grid-auto-flow: column; justify-content: start; align-items: center; gap: 6px !important; color: #526178; font-size: 9px; }
.m-order-customer-signal button { min-height: 28px; padding: 0 8px; border: 0; border-radius: 8px; color: #235fc8; background: #e5eeff; font-size: 9px; font-weight: 850; }
.m-order-duplicate-warning { display: grid !important; gap: 2px !important; padding: 8px 9px; border-left: 3px solid #e59a17; border-radius: 8px; background: #fff8e8; }
.m-order-duplicate-warning b { color: #8a5609; font-size: 10px; }
.m-order-duplicate-warning span { color: #9a6d2d; font-size: 9px; }
.m-money-input { position: relative; display: flex; align-items: center; }
.m-money-input i { position: absolute; left: 11px; z-index: 1; color: #526178; font-size: 13px; font-style: normal; font-weight: 900; }
.m-money-input input { padding-left: 27px !important; font-variant-numeric: tabular-nums; }
.m-order-live-summary { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); overflow: hidden; border: 1px solid #e0e7ef; border-radius: 13px; background: #f8fafc; }
.m-order-live-summary > div { min-width: 0; min-height: 49px; display: grid; place-content: center; gap: 3px; padding: 6px 2px; border-left: 1px solid #e5eaf1; text-align: center; }
.m-order-live-summary > div:first-child { border-left: 0; }
.m-order-live-summary span { color: #8490a3; font-size: 8px; font-weight: 850; }
.m-order-live-summary b { overflow: hidden; color: #172033; font-size: 11px; text-overflow: ellipsis; white-space: nowrap; font-variant-numeric: tabular-nums; }
.m-order-live-summary .success b { color: #15803d; }
.m-order-live-summary .warning b { color: #b7791f; }
.m-order-payment-fields { display: grid; grid-template-columns: .8fr 1.2fr; gap: 8px; }
.m-order-evidence-field input[type="file"] { padding: 8px; font-size: 9px; }
.m-order-settled-hint { padding: 10px; border: 1px solid #bbf7d0; border-radius: 11px; color: #166534; background: #f0fdf4; font-size: 10px; font-weight: 800; }
.m-order-plan-presets { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 6px; }
.m-order-plan-presets button { min-height: 36px; padding: 0 4px; border: 1px solid #d7e1ee; border-radius: 10px; color: #526178; background: #f8fafc; font-size: 10px; font-weight: 850; }
.m-order-plan-presets button:active { border-color: #78a4ff; color: #235fc8; background: #edf3ff; }
.m-order-checkout-footer { flex: 0 0 auto; display: grid; grid-template-columns: minmax(0, 1fr) minmax(132px, .72fr); gap: 10px; align-items: center; padding: 9px 14px calc(9px + env(safe-area-inset-bottom)); border-top: 1px solid #e1e8f1; background: rgba(255,255,255,.98); box-shadow: 0 -8px 20px rgba(15,23,42,.06); }
.m-order-checkout-footer > div { min-width: 0; display: grid; grid-template-columns: auto 1fr; gap: 1px 7px; align-items: baseline; }
.m-order-checkout-footer span { color: #718096; font-size: 9px; font-weight: 850; }
.m-order-checkout-footer b { color: #b7791f; font-size: 17px; font-variant-numeric: tabular-nums; }
.m-order-checkout-footer small { grid-column: 1 / 3; overflow: hidden; color: #8490a3; font-size: 8px; text-overflow: ellipsis; white-space: nowrap; }
.m-order-checkout-footer > button { min-height: 46px; border-radius: 13px; font-size: 14px; }
.m-order-success-sheet .m-modal-body { display: grid; place-items: center; gap: 13px; padding-top: 20px; text-align: center; }
.m-order-success-icon { width: 54px; height: 54px; display: grid; place-items: center; border-radius: 50%; color: #fff; background: linear-gradient(145deg,#22a65a,#13a69a); box-shadow: 0 10px 22px rgba(19,166,154,.22); font-size: 26px; font-weight: 950; }
.m-order-success-summary { width: 100%; display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); overflow: hidden; border: 1px solid #e0e7ef; border-radius: 14px; background: #f8fafc; }
.m-order-success-summary > div { min-height: 58px; display: grid; place-content: center; gap: 4px; border-bottom: 1px solid #e5eaf1; border-left: 1px solid #e5eaf1; }
.m-order-success-summary > div:nth-child(odd) { border-left: 0; }
.m-order-success-summary > div.full { grid-column: 1 / 3; border-left: 0; }
.m-order-success-summary span { color: #718096; font-size: 9px; font-weight: 850; }
.m-order-success-summary b { color: #172033; font-size: 14px; font-variant-numeric: tabular-nums; }
.m-order-success-summary .success-text { color: #15803d; }
.m-order-success-summary .warning-text { color: #b7791f; }
.m-order-success-sheet .m-modal-body > p { margin: 0; color: #64748b; font-size: 10px; }
.m-order-success-actions { width: 100%; display: grid; gap: 7px; }
.m-order-success-actions button { min-height: 44px; border-radius: 12px; }
.m-order-deal-content p b { color: #334155; }
.m-order-evidence-list a { display: grid; grid-template-columns: minmax(0, 1fr) auto; gap: 2px 10px; padding: 9px 0; border-top: 1px solid #edf1f6; color: inherit; text-align: left; text-decoration: none; }
.m-order-evidence-list a:first-of-type { border-top: 0; }
.m-order-evidence-list a span { overflow: hidden; color: #172033; font-size: 10px; font-weight: 850; text-overflow: ellipsis; white-space: nowrap; }
.m-order-evidence-list a small { color: #8490a3; font-size: 8px; }
.m-order-evidence-list a i { grid-column: 2; grid-row: 1 / 3; align-self: center; color: #235fc8; font-size: 9px; font-style: normal; font-weight: 850; }
.m-order-purchase-upload-action { position: relative; min-height: 38px; display: grid; place-items: center; margin-top: 7px; overflow: hidden; border: 1px solid #bfd3ff; border-radius: 10px; color: #235fc8; background: #edf4ff; font-size: 10px; font-weight: 900; cursor: pointer; }
.m-order-purchase-upload-action input { position: absolute; width: 1px; height: 1px; opacity: 0; }
@media (max-width: 360px) {
  .m-customer-name-gender-grid { grid-template-columns: minmax(0, 1fr) 124px; gap: 7px; }
  .m-order-checkout-form .m-order-form-grid,
  .m-order-payment-fields { grid-template-columns: minmax(0, 1fr); }
  .m-order-checkout-footer { grid-template-columns: minmax(0, 1fr) 118px; }
}
.m-order-no-customer { min-height: 230px; place-items: center; align-content: center; text-align: center; }
.m-order-no-customer p { margin: 0; color: #64748b; font-size: 12px; }
.m-order-detail-body { gap: 12px; }
.m-order-detail-metrics { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 7px; }
.m-order-detail-metrics > div { min-width: 0; display: grid; gap: 5px; padding: 10px 7px; border: 1px solid #e0e7ef; border-radius: 12px; background: #f8fafc; }
.m-order-detail-metrics span { color: #718096; font-size: 9px; font-weight: 850; }
.m-order-detail-metrics b { overflow: hidden; color: #172033; font-size: 15px; text-overflow: ellipsis; white-space: nowrap; }
.m-order-detail-metrics .warning b { color: #b7791f; }
.m-order-detail-metrics .success b { color: #15803d; }
.m-order-detail-lines { display: grid; gap: 1px; overflow: hidden; border: 1px solid #e1e8f1; border-radius: 12px; background: #e1e8f1; }
.m-order-detail-lines > div { display: flex; justify-content: space-between; gap: 12px; padding: 9px 10px; background: #fff; }
.m-order-detail-lines span { color: #718096; font-size: 10px; font-weight: 800; }
.m-order-detail-lines b { color: #172033; font-size: 11px; text-align: right; }
.m-order-payment-form { padding: 12px; border: 1px solid #bfd3ff; border-radius: 14px; background: #f3f7ff; }
.m-order-payment-form h4 { margin: 0; color: #173e79; font-size: 14px; }
.m-order-payment-form .m-full-action + .m-full-action { margin-top: -3px; }
.m-order-settled { padding: 12px; border: 1px solid #bbf7d0; border-radius: 12px; color: #166534; background: #f0fdf4; font-size: 11px; font-weight: 800; line-height: 1.55; }
.m-order-settled.exception { border-color: #fecaca; color: #991b1b; background: #fff7f7; }
.m-order-detail-section { display: grid; gap: 8px; padding: 12px; border: 1px solid #e1e8f1; border-radius: 13px; background: #fff; }
.m-order-detail-section > div:first-child { display: flex; justify-content: space-between; gap: 10px; align-items: center; }
.m-order-detail-section > div:first-child > span { color: #718096; font-size: 10px; font-weight: 800; }
.m-order-detail-section p { margin: 0; color: #64748b; font-size: 10px; line-height: 1.6; }
.m-order-exception-actions { border-color: #f0d7d8; background: #fffafa; }
.m-order-exception-actions form { padding: 0; }
.m-order-exception-actions button { min-height: 42px; border-radius: 11px; }
.m-order-request-row { display: grid; gap: 7px; padding-top: 8px; border-top: 1px solid #edf1f6; }
.m-order-request-row:first-of-type { padding-top: 0; border-top: 0; }
.m-order-request-row > div { display: flex; gap: 7px; }
.m-order-request-row button { min-height: 36px; }
.m-order-payment-history .payment-history-row { padding: 8px 0; border-top: 1px solid #edf1f6; }
.m-order-payment-history .payment-history-row:first-of-type { border-top: 0; }
.m-follow-context {
  display: grid;
  gap: 9px;
  padding: 11px;
  border: 1px solid #dfe6ef;
  background: #f8fafc;
}
.m-follow-timeline { display: grid; gap: 8px; }
.m-follow-timeline .timeline-item {
  position: relative;
  display: grid;
  gap: 3px;
  padding: 9px 9px 9px 14px;
  border-left: 3px solid #8aa9ef;
  background: #fff;
}
.m-follow-timeline .timeline-item b { font-size: 13px; }
.m-follow-timeline .timeline-item p { margin: 0; color: #536179; font-size: 12px; line-height: 1.55; }
.m-follow-timeline .timeline-item small { color: #8490a3; font-size: 10px; }
.m-follow-timeline > p { margin: 0; color: #64748b; font-size: 12px; }
.m-ai-on-demand {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  gap: 12px;
  align-items: center;
  padding: 13px;
  border: 1px solid #bfd3ff;
  background: #f3f7ff;
}
.m-ai-on-demand > div { display: grid; gap: 4px; }
.m-ai-on-demand span { color: #5e6d85; font-size: 12px; line-height: 1.55; }
.m-ai-overview { display: grid; gap: 5px; padding: 12px; border-left: 4px solid #2f68e9; background: #eef4ff; }
.m-ai-overview span { color: #42526a; font-size: 12px; line-height: 1.6; }
.m-ai-columns { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 8px; }
.m-ai-columns > div { padding: 10px; border: 1px solid #dfe6ef; background: #fff; }
.m-ai-columns b { font-size: 12px; }
.m-ai-columns ul { margin: 7px 0 0; padding-left: 16px; color: #536179; font-size: 11px; line-height: 1.55; }
.m-ai-columns p { margin: 7px 0 0; color: #536179; font-size: 11px; line-height: 1.55; }
.ai-on-demand-card { align-content: start; }
.m-archive-head { display: grid; grid-template-columns: auto minmax(0, 1fr) auto; }
.m-archive-head > div { min-width: 0; }
.m-archive-hero { border-top: 4px solid #2f68e9; }
.m-archive-actions,
.m-archive-stage-actions { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 8px; }
.m-archive-actions button,
.m-archive-stage-actions button { min-height: 44px; }
.m-archive-stage-track { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 7px; }
.m-archive-stage-track > div { display: grid; justify-items: center; gap: 5px; padding: 9px 3px; border: 1px solid #dfe6ef; background: #f8fafc; color: #748198; text-align: center; }
.m-archive-stage-track i { display: grid; width: 24px; height: 24px; place-items: center; border-radius: 50%; background: #e8edf4; font-size: 11px; font-style: normal; font-weight: 900; }
.m-archive-stage-track span { font-size: 10px; font-weight: 800; }
.m-archive-stage-track .done { border-color: #bfd3ff; background: #f2f6ff; color: #235fc8; }
.m-archive-stage-track .done i { background: #2f68e9; color: #fff; }
.m-archive-stage-track .current { box-shadow: inset 0 0 0 1px #2f68e9; }
.m-archive-profile { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 8px; }
.m-archive-profile > div { display: grid; align-content: start; gap: 5px; min-height: 68px; padding: 10px; border: 1px solid #e0e7ef; background: #f8fafc; }
.m-archive-profile span { color: #748198; font-size: 10px; font-weight: 800; }
.m-archive-profile b { overflow-wrap: anywhere; color: #172033; font-size: 13px; line-height: 1.45; }
.m-archive-timeline { display: grid; gap: 9px; }
.m-archive-timeline .timeline-item { display: grid; gap: 4px; padding: 11px; border-left: 3px solid #8aa9ef; background: #f8fafc; }
.m-archive-timeline .timeline-item p { margin: 0; color: #536179; font-size: 12px; line-height: 1.55; }
.m-archive-timeline .timeline-item small { color: #8490a3; font-size: 10px; }
/* 导购客户时间线 · 竖轨节点 */
.m-shell:not(.m-owner-shell) .m-archive-timeline { gap: 0; padding: 2px 0 0 3px; }
.m-shell:not(.m-owner-shell) .m-archive-timeline .timeline-item { position: relative; display: grid; gap: 3px; border-left: 0; border-bottom: 0; background: transparent; padding: 3px 2px 15px 20px; }
.m-shell:not(.m-owner-shell) .m-archive-timeline .timeline-item::before { content: ''; position: absolute; left: 5px; top: 7px; bottom: -3px; width: 2px; background: #e4e9f1; }
.m-shell:not(.m-owner-shell) .m-archive-timeline .timeline-item:last-child { padding-bottom: 2px; }
.m-shell:not(.m-owner-shell) .m-archive-timeline .timeline-item:last-child::before { display: none; }
.m-shell:not(.m-owner-shell) .m-archive-timeline .timeline-item::after { content: ''; position: absolute; left: 0; top: 4px; width: 12px; height: 12px; border-radius: 50%; background: #fff; box-shadow: 0 0 0 2px var(--tl), 0 0 0 4px color-mix(in srgb, var(--tl) 16%, #fff); }
.m-shell:not(.m-owner-shell) .m-archive-timeline .timeline-head b { font-size: 13px; color: #17202e; font-weight: 800; }
.m-shell:not(.m-owner-shell) .m-archive-timeline .timeline-item p { color: #556074; }
.m-shell:not(.m-owner-shell) .m-archive-timeline .timeline-item small { color: #9098a6; }
.m-archive-ai { border-color: #bfd3ff; }

/* Mobile customer detail: action first, history second, administration on demand. */
.m-archive-head { position: relative; align-items: center; }
.m-archive-head > div > span { color: #2f68e9; font-size: 10px; font-weight: 900; }
.m-archive-more { position: relative; }
.m-archive-more > button { min-width: 44px; min-height: 44px; font-size: 17px; letter-spacing: 2px; }
.m-archive-more > div { position: absolute; z-index: 12; top: calc(100% + 6px); right: 0; width: 130px; padding: 6px; border: 1px solid #dbe4f0; border-radius: 13px; background: #fff; box-shadow: 0 14px 34px rgba(28,47,78,.18); }
.m-archive-more > div[hidden] { display: none; }
.m-archive-more > div button { width: 100%; min-height: 42px; padding: 8px 10px; border: 0; border-radius: 9px; background: transparent; color: #334155; text-align: left; font-size: 12px; font-weight: 800; }
.m-archive-more > div button:active { background: #eef4ff; }
.m-archive-more > div button.danger { color: #c93745; }
.m-archive-hero { display: grid; gap: 11px; border-top: 0; }
.m-archive-next-action { display: grid; gap: 3px; padding: 11px 12px; border-left: 3px solid #2f68e9; border-radius: 10px; background: #f2f6ff; }
.m-archive-next-action.is-overdue { border-left-color: #dc3545; background: #fff4f5; }
.m-archive-next-action span { color: #6d7d94; font-size: 9px; font-weight: 900; }
.m-archive-next-action b { color: #172033; font-size: 14px; }
.m-archive-next-action p { margin: 0; color: #65758c; font-size: 11px; line-height: 1.45; }
.m-archive-actions { grid-template-columns: repeat(3,minmax(0,1fr)); }
.m-archive-actions.is-collaborator { grid-template-columns: repeat(2,minmax(0,1fr)); }
.m-archive-actions button { padding: 8px 4px; }
.m-collaboration-tag { border-color: #b8d5ff; background: #edf5ff; color: #225fc8; }
.m-collaborator-strip { display: flex; align-items: center; gap: 8px; padding: 9px 11px; border: 1px solid #dce8f9; border-radius: 11px; background: #f7faff; }
.m-collaborator-strip > span { flex: 0 0 auto; color: #748198; font-size: 10px; font-weight: 800; }
.m-collaborator-strip > div { display: flex; flex-wrap: wrap; gap: 5px; }
.m-collaborator-strip b { padding: 4px 7px; border-radius: 999px; background: #e7f0ff; color: #225fc8; font-size: 10px; }
.m-collaborator-picker { display: grid; gap: 8px; margin: 0; padding: 0; border: 0; }
.m-collaborator-picker legend { margin-bottom: 8px; color: #334155; font-size: 12px; font-weight: 900; }
.m-collaborator-picker label { display: block; cursor: pointer; }
.m-collaborator-picker input[type="checkbox"] { position: absolute; opacity: 0; pointer-events: none; }
.m-collaborator-picker label > span { display: flex; align-items: center; justify-content: space-between; min-height: 50px; padding: 10px 12px; border: 1px solid #dce4ef; border-radius: 12px; background: #fff; }
.m-collaborator-picker label > span::after { content: '选择'; color: #748198; font-size: 10px; font-weight: 800; }
.m-collaborator-picker input[type="checkbox"]:checked + span { border-color: #6d9cff; box-shadow: inset 0 0 0 1px #6d9cff; background: #eef4ff; }
.m-collaborator-picker input[type="checkbox"]:checked + span::after { content: '已选'; color: #235fc8; }
.m-collaborator-picker span > b { color: #172033; font-size: 13px; }
.m-collaborator-picker span > small { margin-left: auto; margin-right: 10px; color: #8490a3; font-size: 10px; }
.m-collaborator-empty { margin: 0; padding: 24px 12px; border: 1px dashed #ccd7e6; border-radius: 12px; color: #748198; text-align: center; font-size: 12px; }
.m-customer-participation-filter { display: grid; grid-template-columns: repeat(3,minmax(0,1fr)); gap: 7px; padding: 6px; border: 1px solid #dce5f2; border-radius: 16px; background: linear-gradient(135deg,#f8fbff,#f5f1ff); }
.m-customer-participation-filter button { min-width: 0; min-height: 50px; display: grid; grid-template-columns: 1fr auto; align-items: center; gap: 5px; padding: 7px 9px; border: 1px solid transparent; border-radius: 12px; color: #66758c; background: transparent; font-size: 10px; font-weight: 900; }
.m-customer-participation-filter button b { color: #334155; font-size: 16px; font-variant-numeric: tabular-nums; }
.m-customer-participation-filter button.active { border-color: #c8d9fb; color: #235fc8; background: #fff; box-shadow: 0 5px 14px rgba(42,83,155,.1); }
.m-customer-participation-filter button.active b { color: #235fc8; }
.m-shell:not(.m-owner-shell) .m-customer-workmode-filter { display: grid; grid-template-columns: repeat(3,minmax(0,1fr)); gap: 7px; padding: 6px; border: 1px solid #dce5f2; border-radius: 16px; background: rgba(255,255,255,.82); }
.m-shell:not(.m-owner-shell) .m-customer-workmode-filter button { min-width: 0; min-height: 48px; display: grid; grid-template-columns: minmax(0,1fr) auto; align-items: center; gap: 6px; padding: 8px 10px; border: 1px solid transparent; border-radius: 12px; color: #66758c; background: transparent; font-size: 10px; font-weight: 900; }
.m-shell:not(.m-owner-shell) .m-customer-workmode-filter button span { min-width: 0; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.m-shell:not(.m-owner-shell) .m-customer-workmode-filter button b { color: #334155; font-size: 15px; font-variant-numeric: tabular-nums; }
.m-shell:not(.m-owner-shell) .m-customer-workmode-filter button.active { border-color: #c8d9fb; color: #1E3FA8; background: #fff; box-shadow: 0 5px 14px rgba(42,83,155,.1); }
.m-shell:not(.m-owner-shell) .m-customer-workmode-filter button.active b { color: #1E3FA8; }
.m-owner-customer-tag { border-color: #bce8d5; color: #08775f; background: #edfcf7; }
.m-collaboration-count { border-color: #ded6fa; color: #7051b5; background: #f6f2ff; }
.m-collaborator-board { display: grid; gap: 7px; padding: 10px; border: 1px solid #dce8f9; border-radius: 12px; background: #f7faff; }
.m-collaborator-board-head { display: flex; align-items: center; justify-content: space-between; color: #6b7890; font-size: 10px; font-weight: 900; }
.m-collaborator-member { display: grid; grid-template-columns: minmax(0,1fr) auto; align-items: center; gap: 6px 8px; padding: 9px; border: 1px solid #e1e8f2; border-radius: 10px; background: #fff; }
.m-collaborator-member.is-me { border-color: #c9daf9; }
.m-collaborator-member.is-overdue { border-color: #f1c4ca; background: #fff8f8; }
.m-collaborator-member > div { display: grid; gap: 2px; min-width: 0; }
.m-collaborator-member > div b { color: #172033; font-size: 12px; }
.m-collaborator-member > div b em { margin-left: 5px; padding: 2px 5px; border-radius: 999px; color: #235fc8; background: #eaf2ff; font-size: 8px; font-style: normal; }
.m-collaborator-member > div span { overflow: hidden; color: #526178; font-size: 10px; text-overflow: ellipsis; white-space: nowrap; }
.m-collaborator-member > div small { color: #8793a6; font-size: 9px; }
.m-collaborator-member > button { grid-column: 1 / -1; min-height: 34px; }
.m-collaborator-picker > article { display: grid; gap: 7px; padding: 8px; border: 1px solid #e0e7f0; border-radius: 13px; background: #f9fbfd; }
.m-collaborator-choice { display: block; }
.m-collaborator-task-fields { display: grid; grid-template-columns: 1.35fr 1fr; gap: 6px; }
.m-collaborator-task-fields input { position: static; min-width: 0; min-height: 39px; padding: 7px 8px; border: 1px solid #dce4ef; border-radius: 9px; opacity: 1; pointer-events: auto; font-size: 10px; }
.m-archive-latest > div:last-child { display: grid; gap: 4px; padding: 11px 12px; border-radius: 11px; background: #f8fafc; }
.m-archive-latest > div:last-child b { color: #27364c; font-size: 13px; }
.m-archive-latest > div:last-child p { margin: 0; color: #536179; font-size: 12px; line-height: 1.55; }
.m-archive-latest > div:last-child span { color: #2f68e9; font-size: 10px; font-weight: 800; }
.m-archive-no-contact span { color: #748198 !important; }
.m-archive-business-metrics { display: grid; grid-template-columns: repeat(4,minmax(0,1fr)); overflow: hidden; border: 1px solid #e0e7ef; border-radius: 12px; }
.m-archive-business-metrics > div { display: grid; gap: 4px; padding: 10px 4px; border-right: 1px solid #e0e7ef; text-align: center; }
.m-archive-business-metrics > div:last-child { border-right: 0; }
.m-archive-business-metrics span { color: #748198; font-size: 9px; font-weight: 800; }
.m-archive-business-metrics b { color: #172033; font-size: 12px; font-variant-numeric: tabular-nums; }
.m-archive-business-metrics .success-text { color: #168447; }
.m-archive-business-metrics .warning-text { color: #b46d08; }
.m-archive-aftercare .m-customer-main + .m-customer-main { border-top: 1px solid #e8edf4; }
.m-archive-timeline-card { order: 0; }
.m-archive-timeline-card .m-card-head select { width: auto; min-width: 72px; min-height: 38px; padding: 6px 24px 6px 9px; font-size: 11px; }
.m-archive-disclosure { padding: 0; }
.m-archive-disclosure > summary { display: flex; align-items: center; justify-content: space-between; min-height: 62px; padding: 12px 14px; cursor: pointer; list-style: none; }
.m-archive-disclosure > summary::-webkit-details-marker { display: none; }
.m-archive-disclosure > summary span { display: grid; gap: 3px; }
.m-archive-disclosure > summary b { color: #172033; font-size: 14px; }
.m-archive-disclosure > summary small { color: #748198; font-size: 10px; }
.m-archive-disclosure > summary i { color: #6c7c93; font-size: 16px; font-style: normal; transition: transform .18s ease; }
.m-archive-disclosure[open] > summary i { transform: rotate(180deg); }
.m-archive-disclosure > summary + * { margin: 0 14px 14px; }
.m-protection-disclosure { overflow: hidden; border-color: #dbe5f2; box-shadow: none; }
.m-protection-disclosure > summary { min-height: 58px; transition: background .18s ease; }
.m-protection-disclosure > summary:active { background: #f8fafc; }
.m-protection-disclosure > summary i { color: #245fd0; font-size: 11px; font-weight: 900; }
.m-protection-disclosure[open] > summary i { transform: none; }
.m-protection-disclosure.is-expiring { border-color: #f5c66d; background: #fffbf2; }
.m-protection-disclosure.is-expiring > summary small { color: #a66308; }
.m-protection-disclosure.is-expired { border-color: #f4b6b3; background: #fff8f7; }
.m-protection-disclosure.is-expired > summary small { color: #c43d35; }
.m-protection-form { padding-top: 12px; border-top: 1px solid #e7edf5; }
.m-protection-form > p { margin: 0 0 12px; color: #718096; font-size: 10px; font-weight: 800; line-height: 1.55; }
.m-archive-stage-form { margin-top: 12px; padding-top: 12px; border-top: 1px solid #e6ebf2; }
.m-mode-switch { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 6px; padding: 4px; border: 1px solid #dce5f0; border-radius: 8px; background: #eef2f7; }
.m-mode-switch button { min-height: 40px; border: 0; border-radius: 6px; background: transparent; color: #637188; font-size: 13px; font-weight: 850; }
.m-mode-switch button.active { background: #fff; color: #235fc8; box-shadow: 0 2px 8px rgba(15,23,42,.08); }
.m-follow-page-head { align-items: flex-start; }
.m-follow-page-head h2 { font-size: 21px; }
.m-follow-page-head p { margin: 4px 0 0; color: #64748b; font-size: 11px; font-weight: 800; }
.m-follow-refresh {
  width: 44px;
  min-width: 44px;
  height: 44px;
  display: grid;
  place-items: center;
  gap: 0;
  padding: 4px;
  border: 1px solid #dbe4ef;
  border-radius: 14px;
  color: #475569;
  background: rgba(255,255,255,.72);
}
.m-follow-refresh i { font-size: 17px; font-style: normal; line-height: 1; }
.m-follow-refresh span { font-size: 9px; font-weight: 900; }
.m-follow-action-summary {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  overflow: hidden;
  border: 1px solid #dbe4ef;
  border-radius: 18px;
  background: rgba(255,255,255,.94);
  box-shadow: 0 10px 24px rgba(15,23,42,.05);
}
.m-follow-action-summary > button,
.m-follow-action-summary > div {
  min-width: 0;
  min-height: 64px;
  position: relative;
  display: grid;
  place-items: center;
  align-content: center;
  gap: 5px;
  border: 0;
  padding: 7px 2px;
  color: #172033;
  background: transparent;
}
.m-follow-action-summary > :not(:last-child)::after {
  content: '';
  width: 1px;
  height: 32px;
  position: absolute;
  right: 0;
  top: 16px;
  background: #e2e8f0;
}
.m-follow-action-summary span { color: #64748b; font-size: 10px; font-weight: 900; }
.m-follow-action-summary b { font-size: 21px; line-height: 1; }
.m-follow-mode-switch { border-radius: 14px; padding: 3px; }
.m-follow-mode-switch button { min-height: 36px; border-radius: 11px; font-size: 12px; }
.m-follow-queue-strip {
  display: flex;
  gap: 7px;
  overflow-x: auto;
  padding: 1px 1px 4px;
  scroll-snap-type: x proximity;
  scrollbar-width: none;
}
.m-follow-queue-strip::-webkit-scrollbar { display: none; }
.m-follow-queue-strip button {
  min-width: 0;
  min-height: 40px;
  flex: 0 0 auto;
  display: flex;
  align-items: center;
  gap: 7px;
  scroll-snap-align: start;
  border: 1px solid #dbe4ef;
  border-radius: 13px;
  padding: 0 11px;
  color: #475569;
  background: #fff;
  font-size: 11px;
  font-weight: 900;
}
.m-follow-queue-strip button b {
  min-width: 20px;
  height: 20px;
  display: grid;
  place-items: center;
  border-radius: 10px;
  color: #64748b;
  background: #eef2f7;
  font-size: 10px;
}
.m-follow-queue-strip button.active { border-color: #93c5fd; color: #1d4ed8; background: #eff6ff; }
.m-follow-queue-strip button.active b { color: #fff; background: #2563eb; }
.m-follow-recommended {
  display: grid;
  gap: 11px;
  padding: 15px;
  border: 1px solid #bfdbfe;
  border-radius: 20px;
  background: linear-gradient(145deg,#f8fbff,#f1f7ff 68%,#edfbf8);
  box-shadow: 0 14px 32px rgba(37,99,235,.1);
}
.m-follow-recommended-head,
.m-follow-recommended-person {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 10px;
}
.m-follow-recommended-head > div,
.m-follow-recommended-person > div { min-width: 0; display: grid; gap: 3px; }
.m-follow-recommended-head span { color: #2563eb; font-size: 9px; font-weight: 950; }
.m-follow-recommended-head b { font-size: 15px; }
.m-follow-recommended-head em { color: #64748b; font-size: 11px; font-style: normal; font-weight: 900; }
.m-follow-recommended-person strong { overflow: hidden; color: #172033; font-size: 21px; text-overflow: ellipsis; white-space: nowrap; }
.m-follow-recommended-person span { color: #64748b; font-size: 11px; font-weight: 800; }
.m-follow-recommended-person i {
  width: 36px;
  height: 36px;
  display: grid;
  place-items: center;
  border-radius: 50%;
  color: #1d4ed8;
  background: #dbeafe;
  font-size: 15px;
  font-style: normal;
  font-weight: 950;
}
.m-follow-recommended > p,
.m-follow-customer-card > p { margin: 0; display: grid; gap: 3px; }
.m-follow-recommended > p { padding: 9px 11px; border-radius: 12px; background: rgba(255,255,255,.78); }
.m-follow-recommended > p b,
.m-follow-customer-card > p b { color: #334155; font-size: 12px; }
.m-follow-recommended > p span,
.m-follow-customer-card > p span { color: #64748b; font-size: 10px; font-weight: 800; }
.m-follow-recommended-actions { display: grid; grid-template-columns: repeat(3,minmax(0,1fr)); gap: 8px; }
.m-follow-recommended-actions button { min-height: 46px; border-radius: 13px; }
.m-follow-queue-card { gap: 10px; }
.m-follow-customer-list { gap: 9px; }
.m-follow-customer-card { padding: 12px; }
.m-follow-customer-card .m-card-actions { grid-template-columns: repeat(3,minmax(0,1fr)); }
.m-follow-desk-head-actions { display: flex; align-items: center; gap: 6px; }
.m-follow-queue-done { padding: 12px; border-radius: 12px; color: #64748b; background: #f8fafc; font-size: 11px; font-weight: 800; text-align: center; }
.m-follow-empty {
  min-height: 180px;
  display: grid;
  place-items: center;
  align-content: center;
  gap: 6px;
  padding: 18px 14px;
  border-radius: 16px;
  background: linear-gradient(145deg,#f8fafc,#f4f8fb);
  text-align: center;
}
.m-follow-empty > i {
  width: 38px;
  height: 38px;
  display: grid;
  place-items: center;
  border-radius: 50%;
  color: #1d4ed8;
  background: #dbeafe;
  font-size: 18px;
  font-style: normal;
  font-weight: 950;
}
.m-follow-empty.complete > i { color: #047857; background: #d1fae5; }
.m-follow-empty > b { color: #334155; font-size: 14px; }
.m-follow-empty > span { max-width: 280px; color: #64748b; font-size: 11px; font-weight: 800; line-height: 1.55; }
.m-follow-empty > div { width: min(100%,280px); display: grid; grid-template-columns: 1fr 1fr; gap: 8px; margin-top: 5px; }
.m-follow-empty button { min-height: 42px; border-radius: 12px; }
.m-task-progress-card { border-top: 4px solid #2f68e9; }
.m-task-progress-card .m-card-head strong { color: #235fc8; font-size: 22px; }
.m-task-progress-bar { overflow: hidden; height: 8px; border-radius: 4px; background: #e5eaf1; }
.m-task-progress-bar i { display: block; height: 100%; border-radius: inherit; background: linear-gradient(90deg, #2f68e9, #10a7a3); transition: width .3s ease; }
.m-task-progress-grid { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 6px; }
.m-task-progress-grid > div { display: grid; gap: 4px; padding: 9px 5px; border: 1px solid #e0e7ef; background: #f8fafc; text-align: center; }
.m-task-progress-grid span { color: #748198; font-size: 10px; font-weight: 800; }
.m-task-progress-grid b { font-size: 18px; }
.m-notification-button { width: 100%; min-height: 42px; }
.m-reminder-groups { display: flex; gap: 7px; overflow-x: auto; padding: 1px 1px 5px; scrollbar-width: none; }
.m-reminder-groups::-webkit-scrollbar { display: none; }
.m-reminder-groups button { flex: 0 0 auto; display: grid; grid-template-columns: auto auto; gap: 6px; align-items: center; min-height: 38px; padding: 7px 11px; border: 1px solid #dce3ed; border-radius: 19px; background: #fff; color: #5f6d83; font-size: 12px; }
.m-reminder-groups button.active { border-color: #2f68e9; background: #2f68e9; color: #fff; }
.m-reminder-groups b { font-size: 12px; }
.m-reminder-list { display: grid; gap: 9px; }
.m-reminder-task { display: grid; gap: 9px; padding: 12px; border: 1px solid #dfe6ef; border-left: 4px solid #8ba0be; background: #fff; }
.m-reminder-task.attention { border-left-color: #e59a17; background: #fffdf7; }
.m-reminder-task.urgent { border-left-color: #dc3d43; background: #fff8f8; }
.m-reminder-task header { display: flex; justify-content: space-between; gap: 8px; align-items: flex-start; }
.m-reminder-task header > div { display: grid; gap: 3px; min-width: 0; }
.m-reminder-task header span,
.m-reminder-task small { color: #6d7a90; font-size: 11px; }
.m-reminder-task p { margin: 0; color: #42526a; font-size: 12px; line-height: 1.55; }
.m-reminder-actions { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 7px; }
.m-reminder-actions button { min-height: 40px; }

.m-result-success-sheet {
  overflow: hidden;
}
.m-result-success-sheet .m-modal-body {
  align-items: center;
  text-align: center;
}
.m-result-success-mark {
  display: grid;
  place-items: center;
  width: 58px;
  height: 58px;
  margin: 4px auto 0;
  border-radius: 50%;
  background: #e8f8ef;
  color: #159455;
  font-size: 30px;
  font-weight: 800;
  box-shadow: 0 0 0 8px #f3fbf7;
}
.m-result-success-copy {
  display: grid;
  gap: 5px;
}
.m-result-success-copy b {
  font-size: 22px;
  color: #172033;
}
.m-result-success-copy span,
.m-result-success-tip {
  color: #65728a;
}
.m-result-success-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 10px;
  width: 100%;
  text-align: left;
}
.m-result-success-grid > div {
  display: grid;
  gap: 5px;
  min-height: 76px;
  padding: 13px;
  border: 1px solid #dce4ef;
  border-radius: 8px;
  background: #f7f9fc;
}
.m-result-success-grid span {
  color: #748198;
  font-size: 12px;
}
.m-result-success-grid b {
  color: #1d2940;
  font-size: 14px;
  line-height: 1.45;
}
.m-result-success-tip {
  width: 100%;
  padding: 11px 12px;
  border-left: 3px solid #2f68e9;
  background: #f2f6ff;
  text-align: left;
  font-size: 13px;
  line-height: 1.55;
}
.m-result-success-actions {
  grid-template-columns: minmax(0, .8fr) minmax(0, 1.2fr);
}

.m-follow-ai-stack {
  display: grid;
  gap: 10px;
}
.m-ai-brief {
  display: grid;
  gap: 10px;
  padding: 14px;
  border: 1px solid #cbdcfb;
  border-radius: 16px;
  background: #f4f8ff;
}
.m-ai-brief > b { color: #172033; font-size: 15px; line-height: 1.55; }
.m-ai-brief-meta { display: flex; align-items: center; justify-content: space-between; gap: 8px; color: #64748b; font-size: 9px; font-weight: 850; }
.m-ai-score-row { display: grid; grid-template-columns: repeat(3,minmax(0,1fr)); overflow: hidden; border-top: 1px solid #d9e4f5; }
.m-ai-score-row.is-rules { grid-template-columns: repeat(2,minmax(0,1fr)); }
.m-ai-score-row > span { display: grid; gap: 3px; padding: 10px 7px 0; border-left: 1px solid #d9e4f5; text-align: center; }
.m-ai-score-row > span:first-child { border-left: 0; }
.m-ai-score-row small { color: #718096; font-size: 9px; font-weight: 800; }
.m-ai-score-row strong { color: #1e4fb8; font-size: 16px; font-variant-numeric: tabular-nums; }
.m-ai-primary-action {
  display: grid;
  grid-template-columns: minmax(0,1fr) auto;
  gap: 5px 10px;
  align-items: center;
  padding: 14px;
  border-radius: 16px;
  color: #fff;
  background: #173d8f;
}
.m-ai-primary-action > span { grid-column: 1 / -1; color: #bed2ff; font-size: 9px; font-weight: 900; }
.m-ai-primary-action > b { font-size: 13px; line-height: 1.55; }
.m-ai-primary-action > button { min-height: 40px; padding-inline: 12px; border-color: #fff; color: #173d8f; background: #fff; font-size: 10px; white-space: nowrap; }
.m-ai-evidence { display: flex; flex-wrap: wrap; gap: 6px; padding: 0 2px; }
.m-ai-evidence > b { width: 100%; color: #526176; font-size: 10px; }
.m-ai-evidence > span { padding: 6px 8px; border-radius: 8px; color: #526176; background: #f1f5f9; font-size: 9px; font-weight: 800; line-height: 1.4; }
.m-ai-detail { overflow: hidden; border: 1px solid #dfe6ef; border-radius: 14px; background: #fff; }
.m-ai-detail > summary { min-height: 56px; display: flex; align-items: center; justify-content: space-between; gap: 10px; padding: 11px 13px; cursor: pointer; list-style: none; }
.m-ai-detail > summary::-webkit-details-marker { display: none; }
.m-ai-detail > summary span { display: grid; gap: 2px; }
.m-ai-detail > summary b { color: #172033; font-size: 12px; }
.m-ai-detail > summary small { color: #7b8799; font-size: 9px; }
.m-ai-detail > summary i { color: #245fc8; font-size: 9px; font-style: normal; font-weight: 900; }
.m-ai-detail[open] > summary i { transform: rotate(90deg); }
.m-ai-detail-body { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: 8px; padding: 0 11px 11px; border-top: 1px solid #edf1f6; }
.m-ai-detail-body > section { min-width: 0; padding-top: 10px; }
.m-ai-detail-body > section.wide { grid-column: 1 / -1; }
.m-ai-detail-body section > b { color: #334155; font-size: 10px; }
.m-ai-detail-body ul,.m-ai-detail-body ol { margin: 6px 0 0; padding-left: 16px; color: #5b687d; font-size: 10px; line-height: 1.55; }
.m-ai-detail-body p { margin: 6px 0 0; color: #5b687d; font-size: 10px; line-height: 1.55; }
.m-ai-scripts .m-ai-detail-body { grid-template-columns: 1fr; padding-top: 10px; }
.m-ai-scripts .m-ai-note { padding: 11px; }
.m-ai-disclaimer { margin: 0; padding: 0 2px; color: #8995a7; font-size: 8px; font-weight: 750; line-height: 1.5; }
@media (max-width: 430px) {
  .m-ai-primary-action { grid-template-columns: 1fr; }
  .m-ai-primary-action > button { width: 100%; }
}
.m-ai-note {
  display: grid;
  gap: 7px;
}
.m-ai-note b { color: #172033; }
.m-ai-note span { line-height: 1.55; }
.m-ai-note.wechat {
  border-left-color: #16a266;
  background: #f0faf5;
}
.m-mobile-deal-fields {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 10px;
}
.m-mobile-deal-fields .field:last-child { grid-column: 1 / -1; }

.dashboard-team-funnel-list {
  display: grid;
  gap: 10px;
}
.dashboard-guide-funnel-row {
  display: grid;
  grid-template-columns: 150px minmax(420px, 1fr) minmax(220px, .8fr) auto;
  gap: 14px;
  align-items: center;
  padding: 12px;
  border: 1px solid #dfe6ef;
  border-radius: 8px;
  background: #fff;
}
.dashboard-guide-funnel-name,
.dashboard-guide-funnel-diagnosis {
  display: grid;
  gap: 4px;
}
.dashboard-guide-funnel-name span,
.dashboard-guide-funnel-diagnosis span { color: #738097; font-size: 12px; }
.dashboard-guide-funnel-stages {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 7px;
}
.dashboard-guide-funnel-stages > div {
  display: grid;
  gap: 3px;
  min-height: 58px;
  padding: 9px 10px;
  border-left: 3px solid #a8b3c4;
  background: #f6f8fb;
}
.dashboard-guide-funnel-stages > div.blue { border-left-color: #2f68e9; }
.dashboard-guide-funnel-stages > div.green { border-left-color: #18a663; }
.dashboard-guide-funnel-stages > div.amber { border-left-color: #e59a17; }
.dashboard-guide-funnel-stages span { color: #77849a; font-size: 12px; }
.dashboard-guide-funnel-stages b { color: #172033; font-size: 20px; }
.dashboard-guide-detail { margin-bottom: 16px; scroll-margin-top: 20px; border-top: 3px solid #2563eb; }
.dashboard-guide-detail .segmented { display: flex; padding: 3px; border: 1px solid #dbe3ec; border-radius: 7px; background: #f4f7fb; }
.dashboard-guide-detail .segmented button { min-height: 30px; padding: 0 12px; border: 0; border-radius: 5px; color: #68758b; background: transparent; font-size: 12px; font-weight: 800; }
.dashboard-guide-detail .segmented button.active { color: #fff; background: #2563eb; }
.guide-detail-kpis { display: grid; grid-template-columns: repeat(6,minmax(0,1fr)); gap: 9px; margin-bottom: 16px; }
.guide-detail-metric { display: grid; gap: 4px; min-height: 88px; padding: 13px; border: 1px solid #dfe6ef; border-top: 3px solid #9aa8bc; background: #f8fafc; }
.guide-detail-metric.green { border-top-color: #18a663; background: #f4fbf7; }
.guide-detail-metric.red { border-top-color: #df3f4f; background: #fff7f7; }
.guide-detail-metric span,.guide-detail-metric small { color: #758198; font-size: 12px; }
.guide-detail-metric b { color: #172033; font-size: 22px; }
.guide-detail-layout { display: grid; grid-template-columns: minmax(0,1.15fr) minmax(360px,.85fr); gap: 16px; }
.guide-detail-column { min-width: 0; display: grid; align-content: start; gap: 10px; }
.guide-customer-levels { display: grid; grid-template-columns: repeat(4,minmax(0,1fr)); gap: 8px; }
.guide-customer-levels > div { display: grid; gap: 3px; padding: 12px; border-left: 3px solid #9aa8bc; background: #f6f8fb; }
.guide-customer-levels .level-a { border-left-color: #df3f4f; }.guide-customer-levels .level-b { border-left-color: #e59a17; }.guide-customer-levels .level-c { border-left-color: #2563eb; }.guide-customer-levels .level-d { border-left-color: #7d899b; }
.guide-customer-levels span,.guide-status-strip { color: #718097; font-size: 12px; }.guide-customer-levels b { font-size: 22px; }
.guide-status-strip { display: flex; flex-wrap: wrap; gap: 8px 18px; padding: 10px 12px; border: 1px solid #e2e8f0; background: #fff; }
.guide-detail-funnel { display: grid; grid-template-columns: repeat(7,minmax(0,1fr)); gap: 5px; }
.guide-detail-funnel > div { position: relative; display: grid; gap: 4px; padding: 11px 8px; background: #eef4ff; text-align: center; }
.guide-detail-funnel span { color: #65748b; font-size: 11px; }.guide-detail-funnel b { color: #1746a2; font-size: 18px; }
.guide-risk-customer-list { display: grid; gap: 7px; }
.guide-risk-customer { width: 100%; min-height: 58px; display: grid; grid-template-columns: 1fr auto; align-items: center; gap: 8px; padding: 7px; border: 1px solid #e1e6ee; border-radius: 6px; background: #fff; }
.guide-risk-customer:hover { border-color: #8eb2ff; background: #f7faff; }.guide-risk-customer > button:first-child { min-width: 0; display: flex; align-items: center; justify-content: space-between; gap: 10px; padding: 3px 5px; border: 0; background: transparent; text-align: left; }.guide-risk-customer > button:first-child > span { display: grid; gap: 3px; }.guide-risk-customer small { color: #758198; }
.guide-activity-section { margin-top: 16px; padding-top: 14px; border-top: 1px solid #e4e9f0; }
.guide-activity-grid { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: 14px; }
.guide-activity-grid > div { display: grid; align-content: start; gap: 6px; }.guide-activity-grid h4 { margin: 0 0 3px; color: #4b5870; font-size: 13px; }
.guide-activity-row { min-height: 54px; display: flex; align-items: center; justify-content: space-between; gap: 10px; padding: 8px 10px; border: 1px solid #e2e7ee; background: #fff; }
.guide-activity-row > span { min-width: 0; display: grid; gap: 3px; }.guide-activity-row small { overflow: hidden; color: #768398; text-overflow: ellipsis; white-space: nowrap; }.guide-activity-row.action { width: 100%; text-align: left; }.guide-activity-row.action:hover { border-color: #8eb2ff; }.guide-activity-row.action > i { color: #2563eb; font-size: 12px; font-style: normal; font-weight: 800; }
.guide-supervision-section { display: grid; gap: 10px; margin-top: 16px; padding-top: 14px; border-top: 1px solid #e4e9f0; }
.guide-supervision-form { display: grid; grid-template-columns: 160px minmax(280px,1fr) 130px 190px auto; gap: 10px; align-items: end; padding: 12px; border: 1px solid #9ab9f5; background: #f5f8ff; }
.guide-supervision-form > div:first-child { align-self: center; display: grid; gap: 4px; }.guide-supervision-form > div:first-child span { color: #708097; font-size: 12px; }.guide-supervision-form textarea { min-height: 66px; }
.guide-supervision-list { display: grid; gap: 7px; }.guide-supervision-task { display: grid; grid-template-columns: minmax(0,1fr) auto auto; gap: 12px; align-items: center; padding: 10px 12px; border-left: 3px solid #e59a17; background: #f8fafc; }.guide-supervision-task.green { border-left-color: #18a663; }.guide-supervision-task.red { border-left-color: #df3f4f; }.guide-supervision-task > div:first-child { display: grid; gap: 4px; }.guide-supervision-task small,.guide-supervision-task span { color: #758198; }
.m-supervision-card { border-top: 3px solid #2f68e9; }.m-supervision-list { display: grid; gap: 9px; }.m-supervision-task { display: grid; gap: 9px; padding: 12px; border: 1px solid #dbe5f5; border-left: 4px solid #2f68e9; background: #f8fbff; }.m-supervision-task.amber { border-left-color: #e59a17; background: #fffbf3; }.m-supervision-task.red { border-left-color: #df3f4f; background: #fff7f7; }.m-supervision-task header { display: flex; align-items: flex-start; justify-content: space-between; gap: 8px; }.m-supervision-task header > div { display: grid; gap: 3px; }.m-supervision-task header span,.m-supervision-task small { color: #708097; font-size: 12px; }.m-supervision-task p { margin: 0; line-height: 1.55; }
.m-visit-type-switch { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: 8px; }
.m-visit-type-switch button { min-height: 46px; border: 1px solid #d9e2ef; border-radius: 7px; color: #526176; background: #f5f7fa; font-weight: 900; }
.m-visit-type-switch button.active { border-color: #4d86f7; color: #1749ad; background: #edf4ff; box-shadow: inset 0 0 0 1px #4d86f7; }
.m-returning-customer { display: grid; gap: 8px; padding: 10px; border: 1px solid #cbd9ee; border-radius: 8px; background: #f7faff; }
.m-returning-results { display: grid; gap: 6px; max-height: 230px; overflow-y: auto; }
.m-returning-results > button { min-height: 58px; display: flex; align-items: center; justify-content: space-between; gap: 10px; padding: 9px 11px; border: 1px solid #dce4ef; border-radius: 7px; background: #fff; text-align: left; }
.m-returning-results > button > span { min-width: 0; display: grid; gap: 3px; }.m-returning-results small { color: #78869a; }.m-returning-results i { color: #2563eb; font-size: 12px; font-style: normal; font-weight: 900; }
.m-returning-results > button.selected { border-color: #2f68e9; background: #edf4ff; }
.m-reception-start-sheet { max-height: calc(100dvh - 16px); margin-bottom: calc(4px + env(safe-area-inset-bottom)); border-radius: 22px 22px 18px 18px; }
.m-reception-start-sheet .m-modal-head { padding: 12px 16px 10px; }
.m-reception-start-sheet .m-modal-head h3 { margin-top: 1px; font-size: 19px; }
.m-reception-start-sheet .m-modal-body { display: grid; gap: 14px; padding-top: 12px; }
.m-modal-icon-close { width: 42px; min-width: 42px; height: 42px; padding: 0; border-radius: 12px; font-size: 22px; line-height: 1; }
.m-reception-start-sheet .m-visit-type-switch button { min-height: 48px; border-radius: 12px; }
.m-reception-start-sheet .m-returning-customer { gap: 10px; padding: 12px; border-color: #d8e4f5; border-radius: 14px; background: #f8fbff; }
.m-returning-search { min-height: 46px; display: flex; align-items: center; gap: 8px; padding: 0 12px; border: 1px solid #d8e1ed; border-radius: 12px; background: #fff; }
.m-returning-search:focus-within { border-color: #6b99ff; box-shadow: 0 0 0 3px rgba(37,99,235,.11); }
.m-returning-search > span { color: #7a8ba5; font-size: 22px; }
.m-returning-search input { min-width: 0; min-height: 42px; padding: 0; border: 0; background: transparent; box-shadow: none; }
.m-returning-search input:focus { box-shadow: none; }
.m-returning-list-head { display: flex; align-items: center; justify-content: space-between; gap: 8px; }
.m-returning-list-head b { color: #334155; font-size: 12px; }
.m-returning-list-head span { color: #94a3b8; font-size: 10px; font-weight: 750; }
.m-reception-start-sheet .m-returning-results > button { min-height: 66px; border-radius: 12px; }
.m-reception-start-sheet .m-returning-results small,.m-reception-start-sheet .m-returning-results em { display: block; color: #718096; font-size: 10px; font-style: normal; font-weight: 750; line-height: 1.4; }
.m-reception-start-sheet .m-returning-results em { color: #94a3b8; }
.m-returning-selected { display: flex; align-items: center; justify-content: space-between; gap: 10px; padding: 11px 12px; border: 1px solid #9fc0ff; border-radius: 12px; background: #edf4ff; }
.m-returning-selected > div { min-width: 0; display: grid; gap: 2px; }
.m-returning-selected span,.m-returning-selected small { color: #5f7391; font-size: 10px; font-weight: 800; }
.m-returning-selected b { color: #1749ad; font-size: 16px; }
.m-returning-selected button { min-height: 38px; padding: 0 12px; border: 0; border-radius: 10px; color: #1d4ed8; background: #fff; font-weight: 900; }
.m-reception-source-grid,.m-reception-choice-grid { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: 8px; }
.m-reception-source-grid button,.m-reception-choice-grid button { min-height: 44px; padding: 8px 10px; border: 1px solid #d8e1ed; border-radius: 11px; color: #526176; background: #fff; font-weight: 850; }
.m-reception-source-grid button.active,.m-reception-choice-grid button.active { border-color: #6b99ff; color: #1749ad; background: #edf4ff; box-shadow: inset 0 0 0 1px #6b99ff; }
.m-outcome-detail-field { padding: 10px; border: 1px solid #dce6f5; border-radius: 12px; background: #f8fbff; }
.m-linked-customer { display: grid; gap: 4px; padding: 11px 12px; border-left: 4px solid #2f68e9; background: #eef5ff; }.m-linked-customer span,.m-linked-customer small { color: #61748f; font-size: 12px; }.m-linked-customer b { color: #1749ad; font-size: 17px; }
@media (max-width: 1280px) { .guide-detail-kpis { grid-template-columns: repeat(3,minmax(0,1fr)); }.guide-detail-layout { grid-template-columns: 1fr; } }
@media (max-width: 1280px) { .guide-supervision-form { grid-template-columns: repeat(2,minmax(0,1fr)); }.guide-supervision-form .actions { grid-column: 1 / -1; justify-content: end; } }
@media (max-width: 900px) { .guide-activity-grid { grid-template-columns: 1fr; }.guide-detail-funnel { grid-template-columns: repeat(4,minmax(0,1fr)); } }
@media (max-width: 1200px) {
  .dashboard-guide-funnel-row { grid-template-columns: 130px 1fr auto; }
  .dashboard-guide-funnel-diagnosis { grid-column: 2; }
}

@media (max-width: 1100px) {
  .reminder-command-board,
  .reminder-layout {
    grid-template-columns: 1fr;
  }
  .reminder-side-column {
    position: static;
  }
  .reminder-filter-grid,
  .reminder-bulk-form {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
  .reminder-filter-actions,
  .reminder-bulk-actions {
    grid-column: 1 / -1;
  }
}

@media (max-width: 720px) {
  .reminder-page-head {
    display: grid;
    gap: 10px;
  }
  .reminder-command-board {
    padding: 14px;
  }
  .reminder-command-copy h3 {
    font-size: 22px;
  }
  .reminder-command-metrics,
  .reminder-progress-mini-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
  .reminder-command-metric {
    min-height: 82px;
  }
  .reminder-priority-tabs,
  .reminder-filter-grid,
  .reminder-bulk-form {
    grid-template-columns: 1fr;
  }
  .reminder-queue-card {
    grid-template-columns: 1fr;
  }
  .reminder-queue-rank {
    width: auto;
    height: 30px;
    justify-content: start;
    padding: 0 10px;
  }
  .reminder-queue-title,
  .reminder-team-row {
    display: grid;
  }
  .reminder-queue-actions {
    grid-template-columns: 1fr 1fr;
  }
  .reminder-select {
    min-height: 40px;
  }
  .reminder-filter-actions,
  .reminder-bulk-actions {
    grid-template-columns: 1fr 1fr;
  }
}

/* Mobile workspace: performance history and learning exam closure */
.m-me-month-switch { display: grid; grid-template-columns: 82px minmax(0,1fr) 82px; align-items: center; gap: 8px; }
.m-me-month-switch button { min-height: 38px; border: 1px solid #dbe4ef; border-radius: 12px; color: #1d4ed8; background: #fff; font-size: 11px; font-weight: 900; }
.m-me-month-switch button:disabled { color: #a8b3c3; background: #f1f5f9; }
.m-me-month-switch b { text-align: center; font-size: 13px; }
.m-me-order-history > div:last-child { display: grid; gap: 7px; }
.m-me-order-history > div:last-child > button { min-width: 0; display: grid; grid-template-columns: minmax(0,1fr) auto; gap: 4px 9px; align-items: center; border: 1px solid #e2e8f0; border-radius: 14px; padding: 10px 11px; color: #172033; background: #fff; text-align: left; }
.m-me-order-history button span { min-width: 0; display: grid; gap: 3px; }
.m-me-order-history button b { overflow: hidden; font-size: 12px; text-overflow: ellipsis; white-space: nowrap; }
.m-me-order-history button small { color: #64748b; font-size: 9px; }
.m-me-order-history button strong { color: #1d4ed8; font-size: 14px; }
.m-me-order-history button em { grid-column: 1/-1; color: #64748b; font-size: 9px; font-style: normal; text-align: right; }
.m-me-service-row { min-width: 0; display: flex; align-items: center; justify-content: space-between; gap: 10px; border: 1px solid #e2e8f0; border-radius: 14px; padding: 11px 12px; color: #172033; background: #fff; }
.m-me-service-row + .m-me-service-row { margin-top: 7px; }
.m-me-service-row > span { min-width: 0; display: grid; gap: 4px; }
.m-me-service-row b { overflow: hidden; font-size: 12px; text-overflow: ellipsis; white-space: nowrap; }
.m-me-service-row small { overflow: hidden; color: #64748b; font-size: 10px; text-overflow: ellipsis; white-space: nowrap; }
.m-me-service-row em { flex: none; color: #64748b; font-size: 10px; font-style: normal; font-weight: 800; }
.m-me-service-row em.blue { color: #2563eb; }
.m-me-service-row em.amber { color: #b45309; }
.m-me-service-row em.green { color: #15803d; }
.m-me-service-row em.red { color: #dc2626; }
.m-install-command { display:flex; align-items:center; justify-content:space-between; gap:12px; margin:0 0 10px; padding:14px 16px; border:1px solid #d6e3f8; border-radius:20px; color:#17366d; background:linear-gradient(135deg,#edf5ff,#f7fbff); box-shadow:0 8px 22px rgba(45,91,168,.08); }
.m-install-command > div { min-width:0; display:grid; gap:3px; }.m-install-command span { color:#5f78a2; font-size:10px; font-weight:800; letter-spacing:.03em; }.m-install-command b { overflow:hidden; color:#17366d; font-size:18px; letter-spacing:-.03em; text-overflow:ellipsis; white-space:nowrap; }.m-install-command small { overflow:hidden; color:#7386a3; font-size:10px; text-overflow:ellipsis; white-space:nowrap; }.m-install-command i { width:42px; height:42px; display:grid; place-items:center; border-radius:14px; color:#fff; background:#2f63d5; font-style:normal; font-weight:950; box-shadow:0 6px 12px rgba(47,99,213,.22); }
.m-install-kpis { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:8px; margin-bottom:10px; }.m-install-kpis > div { display:grid; gap:4px; padding:11px 12px; border:1px solid #e1e8f2; border-radius:15px; background:rgba(255,255,255,.72); }.m-install-kpis span { color:#7c8da6; font-size:10px; font-weight:750; }.m-install-kpis b { color:#172033; font-size:18px; font-variant-numeric:tabular-nums; }
.m-install-board { padding:12px; }.m-install-filter { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:5px; margin-bottom:10px; padding:4px; border-radius:13px; background:#f1f4f8; }.m-install-filter button { min-width:0; display:grid; gap:2px; justify-items:center; padding:8px 3px; border:0; border-radius:10px; color:#77869b; background:transparent; font-size:10px; font-weight:800; }.m-install-filter button b { color:inherit; font-size:11px; font-variant-numeric:tabular-nums; }.m-install-filter button.active { color:#1d4ed8; background:#fff; box-shadow:0 2px 7px rgba(36,56,89,.1); }.m-install-list { display:grid; gap:8px; }.m-install-task { overflow:hidden; border:1px solid #e1e8f2; border-radius:16px; background:#fff; transition:transform .2s ease,box-shadow .2s ease,border-color .2s ease; }.m-install-task:has(.m-install-task-main:active) { transform:scale(.99); }.m-install-task.overdue { border-color:#f0c9bd; background:#fffaf8; }.m-install-task-main { width:100%; display:grid; gap:5px; padding:12px 13px 9px; border:0; color:#172033; background:transparent; text-align:left; }.m-install-task-top { display:flex; align-items:center; justify-content:space-between; gap:8px; }.m-install-task-top b { min-width:0; overflow:hidden; font-size:13px; text-overflow:ellipsis; white-space:nowrap; }.m-install-task-top em { flex:none; padding:3px 7px; border-radius:7px; font-size:9px; font-style:normal; font-weight:850; }.m-install-task-top em.blue { color:#1d4ed8; background:#eaf1ff; }.m-install-task-top em.amber { color:#a16207; background:#fff3d5; }.m-install-task-top em.green { color:#15803d; background:#e7f7ec; }.m-install-task-top em.red { color:#b42318; background:#ffebe7; }.m-install-task-main > small { overflow:hidden; color:#526783; font-size:11px; text-overflow:ellipsis; white-space:nowrap; }.m-install-task-meta { color:#93a1b5; font-size:9px; }.m-install-task-actions { display:flex; justify-content:flex-end; gap:7px; padding:8px 12px; border-top:1px solid #edf1f5; background:#fbfcfe; }.m-install-task-actions a,.m-install-task-actions button { min-height:30px; padding:0 9px; border:0; border-radius:8px; color:#315bc8; background:#eef4ff; font-size:10px; font-weight:850; text-decoration:none; }.m-install-task-actions button { color:#fff; background:#2f63d5; }.m-install-empty { display:grid; gap:5px; place-items:center; padding:34px 14px; color:#7b8ca5; text-align:center; }.m-install-empty b { color:#33435d; font-size:14px; }.m-install-empty span { font-size:10px; }
@media (prefers-reduced-motion: reduce) { .m-install-task { transition:none; } .m-install-task:has(.m-install-task-main:active) { transform:none; } }
.m-me-exam-history > div:last-child { display: grid; gap: 7px; }
.m-me-exam-history > div:last-child > button { min-width: 0; display: grid; grid-template-columns: 42px minmax(0,1fr) auto; align-items: center; gap: 9px; border: 1px solid #e2e8f0; border-radius: 14px; padding: 9px; color: #172033; background: #fff; text-align: left; }
.m-me-exam-history button > i { width: 42px; height: 42px; display: grid; place-items: center; border-radius: 13px; color: #b91c1c; background: #fee2e2; font-style: normal; font-weight: 950; }
.m-me-exam-history button > i.pass { color: #a16207; background: #fef3c7; }
.m-me-exam-history button > i.good { color: #047857; background: #d1fae5; }
.m-me-exam-history button span { min-width: 0; display: grid; gap: 3px; }
.m-me-exam-history button b { overflow: hidden; font-size: 11px; text-overflow: ellipsis; white-space: nowrap; }
.m-me-exam-history button small { color: #64748b; font-size: 9px; }
.m-me-exam-history button em { color: #1d4ed8; font-size: 9px; font-style: normal; font-weight: 850; }
.m-mobile-exam-form { display: grid; gap: 12px; }
.m-exam-notice { display: grid; gap: 4px; padding: 11px; border-radius: 13px; color: #1e40af; background: #eff6ff; }
.m-exam-notice b { font-size: 13px; }
.m-exam-notice span { font-size: 10px; line-height: 1.5; }
.m-mobile-exam-form > article { display: grid; gap: 8px; padding: 12px; border: 1px solid #dfe7f1; border-radius: 15px; background: #fff; }
.m-mobile-exam-form article > div { display: grid; grid-template-columns: 25px minmax(0,1fr); align-items: start; gap: 7px; }
.m-mobile-exam-form article > div i { width: 25px; height: 25px; display: grid; place-items: center; border-radius: 8px; color: #1d4ed8; background: #dbeafe; font-size: 10px; font-style: normal; font-weight: 950; }
.m-mobile-exam-form article > div b { font-size: 12px; line-height: 1.55; }
.m-mobile-exam-form label { cursor: pointer; }
.m-mobile-exam-form label input { position: absolute; opacity: 0; pointer-events: none; }
.m-mobile-exam-form label span { min-height: 40px; display: flex; align-items: center; gap: 7px; border: 1px solid #e2e8f0; border-radius: 11px; padding: 7px 9px; color: #475569; font-size: 10px; line-height: 1.4; }
.m-mobile-exam-form label span em { flex: 0 0 auto; width: 23px; height: 23px; display: grid; place-items: center; border-radius: 7px; color: #1d4ed8; background: #eff6ff; font-style: normal; font-weight: 950; }
.m-mobile-exam-form label input:checked + span { border-color: #60a5fa; color: #1e3a8a; background: #eff6ff; box-shadow: 0 0 0 2px rgba(37,99,235,.08); }
.m-mobile-exam-form label input:checked + span em { color: #fff; background: #2563eb; }
.m-exam-result-hero { display: grid; grid-template-columns: 110px minmax(0,1fr); gap: 13px; align-items: center; padding: 16px; border-radius: 18px; color: #fff; background: linear-gradient(135deg,#991b1b,#dc2626); }
.m-exam-result-hero.pass { background: linear-gradient(135deg,#92400e,#d97706); }
.m-exam-result-hero.good { background: linear-gradient(135deg,#065f46,#0f9f8f); }
.m-exam-result-hero > div { display: grid; gap: 2px; text-align: center; }
.m-exam-result-hero span,.m-exam-result-hero small { color: rgba(255,255,255,.78); font-size: 9px; font-weight: 800; }
.m-exam-result-hero b { font-size: 38px; line-height: 1; }
.m-exam-result-hero p { margin: 0; font-size: 11px; font-weight: 800; line-height: 1.6; }
.m-exam-dimensions { display: grid; grid-template-columns: repeat(4,minmax(0,1fr)); gap: 6px; }
.m-exam-dimensions div { min-width: 0; display: grid; gap: 4px; padding: 10px 3px; border-radius: 12px; background: #f1f5f9; text-align: center; }
.m-exam-dimensions span { color: #64748b; font-size: 8px; font-weight: 850; }
.m-exam-dimensions b { font-size: 15px; }
.m-mobile-wrongbook { display: grid; gap: 8px; }
.m-mobile-wrongbook > article { display: grid; gap: 5px; padding: 11px; border-left: 4px solid #ef4444; border-radius: 12px; background: #fff1f2; }
.m-mobile-wrongbook > article.correct { border-color: #10b981; background: #ecfdf5; }
.m-mobile-wrongbook article b { font-size: 11px; line-height: 1.5; }
.m-mobile-wrongbook article span { color: #475569; font-size: 9px; }
.m-mobile-wrongbook article p { margin: 0; color: #7f1d1d; font-size: 9px; line-height: 1.55; }
.m-mobile-wrongbook article.correct p { color: #065f46; }
.m-course-create-sheet textarea { min-height: 150px; resize: vertical; }
.m-course-create-sheet .field small { color: #64748b; font-size: 9px; line-height: 1.5; }

/* Mobile business navigation: unified line icons, live work signals and quiet active state. */
.m-tabbar {
  gap: 2px;
  margin: 0 8px calc(8px + env(safe-area-inset-bottom));
  padding: 5px 6px 6px;
  border-color: rgba(203,213,225,.88);
  border-radius: 21px;
  background: rgba(255,255,255,.96);
  box-shadow: 0 14px 34px rgba(15,23,42,.14);
}
.m-tabbar-btn {
  position: relative;
  min-width: 0;
  min-height: 58px;
  border-radius: 15px;
  color: #64748b;
  background: transparent;
  font-size: 11px;
  font-weight: 900;
  transition: color .18s ease, background-color .18s ease;
}
.m-tabbar-btn::after {
  content: '';
  position: absolute;
  left: 50%;
  bottom: 3px;
  width: 18px;
  height: 3px;
  border-radius: 999px;
  background: #2563eb;
  opacity: 0;
  transform: translateX(-50%) scaleX(.55);
  transition: opacity .18s ease, transform .18s ease;
}
.m-tabbar-btn.active {
  color: #173d7a;
  background: #eaf3ff;
  box-shadow: none;
}
.m-tabbar-btn.active::after { opacity: 1; transform: translateX(-50%) scaleX(1); }
.m-tabbar-btn:focus-visible {
  outline: 3px solid rgba(37,99,235,.3);
  outline-offset: -2px;
}
.m-nav-label { line-height: 1.1; }
.m-nav-icon {
  position: relative;
  width: 24px;
  height: 24px;
  display: block;
  color: currentColor;
}
.m-tabbar-btn.active .m-nav-icon { color: #2563eb; }
.m-nav-icon::before,.m-nav-icon::after,.m-nav-icon i,.m-nav-icon i::before,.m-nav-icon i::after {
  box-sizing: border-box;
}
.m-nav-icon i { position: absolute; display: block; font-style: normal; }
.m-nav-icon-home::before {
  content: '';
  position: absolute;
  left: 5px;
  top: 4px;
  width: 14px;
  height: 14px;
  border-top: 2px solid currentColor;
  border-left: 2px solid currentColor;
  border-radius: 2px;
  transform: rotate(45deg);
}
.m-nav-icon-home i { left: 6px; top: 10px; width: 12px; height: 11px; border: 2px solid currentColor; border-top: 0; border-radius: 0 0 3px 3px; }
.m-nav-icon-home i::after { content: ''; position: absolute; left: 3px; bottom: 0; width: 3px; height: 6px; border-left: 2px solid currentColor; }
.m-nav-icon-store::before { content: ''; position: absolute; left: 3px; top: 4px; width: 18px; height: 7px; border: 2px solid currentColor; border-radius: 4px 4px 3px 3px; background: linear-gradient(90deg,transparent 29%,currentColor 30% 38%,transparent 39% 62%,currentColor 63% 71%,transparent 72%); }
.m-nav-icon-store i { left: 5px; top: 10px; width: 14px; height: 11px; border: 2px solid currentColor; border-top: 0; border-radius: 0 0 3px 3px; }
.m-nav-icon-store i::after { content: ''; position: absolute; right: 2px; bottom: 0; width: 4px; height: 7px; border-left: 2px solid currentColor; }
.m-nav-icon-clock::before { content: ''; position: absolute; inset: 2px; border: 2px solid currentColor; border-radius: 50%; }
.m-nav-icon-clock i { left: 11px; top: 6px; width: 2px; height: 7px; border-radius: 2px; background: currentColor; transform-origin: 1px 6px; transform: rotate(-1deg); }
.m-nav-icon-clock i::after { content: ''; position: absolute; left: 0; bottom: 0; width: 6px; height: 2px; border-radius: 2px; background: currentColor; transform-origin: 1px 1px; transform: rotate(38deg); }
.m-nav-icon-users::before { content: ''; position: absolute; left: 3px; top: 3px; width: 8px; height: 8px; border: 2px solid currentColor; border-radius: 50%; box-shadow: 9px 1px 0 -2px #fff, 9px 1px 0 0 currentColor; }
.m-tabbar-btn.active .m-nav-icon-users::before { box-shadow: 9px 1px 0 -2px #eaf3ff, 9px 1px 0 0 currentColor; }
.m-nav-icon-users i { left: 1px; bottom: 2px; width: 13px; height: 8px; border: 2px solid currentColor; border-bottom: 0; border-radius: 9px 9px 0 0; }
.m-nav-icon-users i::after { content: ''; position: absolute; left: 10px; top: 1px; width: 9px; height: 6px; border-top: 2px solid currentColor; border-right: 2px solid currentColor; border-radius: 0 8px 0 0; }
.m-nav-icon-receipt::before { content: ''; position: absolute; left: 5px; top: 2px; width: 14px; height: 20px; border: 2px solid currentColor; border-radius: 3px; }
.m-nav-icon-receipt i { left: 9px; top: 8px; width: 7px; height: 2px; border-radius: 2px; background: currentColor; box-shadow: 0 5px 0 currentColor; }
.m-nav-status { position: absolute; z-index: 2; pointer-events: none; }
.m-nav-status[hidden] { display: none; }
.m-nav-status.dot { top: 7px; left: calc(50% + 8px); width: 8px; height: 8px; border: 2px solid #fff; border-radius: 50%; }
.m-nav-status.dot.live { background: #10b981; box-shadow: 0 0 0 2px rgba(16,185,129,.14); }
.m-nav-status.dot.attention { background: #64748b; }
.m-nav-status.badge { top: 3px; left: calc(50% + 5px); min-width: 17px; width: auto; height: 17px; min-height: 17px; display: grid; place-items: center; border: 2px solid #fff; border-radius: 9px; padding: 0 3px; color: #fff; font-size: 8px; font-weight: 950; line-height: 1; }
.m-nav-status.badge.danger { background: #dc2626; }
.m-nav-status.badge.info { background: #2563eb; }
.m-nav-status.badge.warning { background: #f59e0b; }
.m-nav-status.just-raised { animation: m-nav-status-pop .55s cubic-bezier(.2,.9,.25,1.25); }
@keyframes m-nav-status-pop { 0% { transform: scale(.55); } 60% { transform: scale(1.2); } 100% { transform: scale(1); } }

.m-page-skeleton { display: grid; gap: 12px; padding: 5px 1px; }
.m-skeleton-line,.m-skeleton-kpis i,.m-skeleton-card,.m-skeleton-card i {
  display: block;
  border-radius: 10px;
  background: linear-gradient(100deg,#e7edf5 20%,#f7f9fc 40%,#e7edf5 60%);
  background-size: 220% 100%;
  animation: m-skeleton-shimmer 1.3s ease-in-out infinite;
}
.m-skeleton-line.title { width: 46%; height: 28px; }
.m-skeleton-line.subtitle { width: 68%; height: 13px; }
.m-skeleton-kpis { display: grid; grid-template-columns: repeat(3,minmax(0,1fr)); gap: 8px; }
.m-skeleton-kpis i { height: 76px; }
.m-skeleton-card { min-height: 250px; display: grid; align-content: start; gap: 12px; margin-top: 2px; padding: 18px; border-radius: 20px; }
.m-skeleton-card i { height: 14px; background-color: rgba(255,255,255,.5); }
.m-skeleton-card i:nth-child(1) { width: 42%; }.m-skeleton-card i:nth-child(2) { width: 86%; }.m-skeleton-card i:nth-child(3) { width: 70%; }
@keyframes m-skeleton-shimmer { from { background-position: 100% 0; } to { background-position: -100% 0; } }

@media (prefers-reduced-motion: reduce) {
  .m-tabbar-btn,.m-tabbar-btn::after { transition: none; }
  .m-nav-status.just-raised,.m-skeleton-line,.m-skeleton-kpis i,.m-skeleton-card,.m-skeleton-card i { animation: none; }
}

/* Mobile customers: one clear path from search to segment to customer list. */
.sr-only {
  position: absolute !important;
  width: 1px !important;
  height: 1px !important;
  overflow: hidden !important;
  clip: rect(0, 0, 0, 0) !important;
  white-space: nowrap !important;
  clip-path: inset(50%) !important;
}
.m-customer-page-head {
  align-items: center;
  padding-top: 2px;
}
.m-customer-page-head > div { gap: 1px; }
.m-customer-page-head > div > span {
  color: #2563eb;
  font-size: 10px;
  font-weight: 950;
  letter-spacing: .08em;
}
.m-customer-page-head h2 {
  font-size: 24px;
  line-height: 1.15;
}
.m-customer-page-head p { margin-top: 3px; font-size: 10px; }
.m-customer-page-head p em { color: #c2414d; font-style: normal; }
.m-customer-page-head .m-customer-add {
  min-width: 76px;
  min-height: 40px;
  border-radius: 13px;
  box-shadow: 0 8px 18px rgba(37,99,235,.16);
}
.m-customer-page-head .m-customer-add b { font-size: 16px; }
.m-customer-page-head .m-customer-add span { color: inherit; font-size: 11px; font-weight: 950; }
.m-customer-search {
  position: relative;
  display: block;
}
.m-customer-search label { display: block; }
.m-customer-search input {
  width: 100%;
  min-height: 44px;
  padding: 0 70px 0 38px;
  border: 1px solid #d8e1ed;
  border-radius: 14px;
  color: #172033;
  background: #fff;
  font-size: 12px;
  outline: 0;
  box-shadow: 0 5px 16px rgba(15,23,42,.035);
}
.m-customer-search::before {
  content: '';
  position: absolute;
  z-index: 1;
  left: 14px;
  top: 14px;
  width: 12px;
  height: 12px;
  border: 2px solid #7b8aa1;
  border-radius: 50%;
  pointer-events: none;
}
.m-customer-search::after {
  content: '';
  position: absolute;
  z-index: 1;
  left: 26px;
  top: 27px;
  width: 6px;
  height: 2px;
  border-radius: 2px;
  background: #7b8aa1;
  transform: rotate(45deg);
  pointer-events: none;
}
.m-customer-search input:focus {
  border-color: #6d9df7;
  box-shadow: 0 0 0 3px rgba(37,99,235,.11);
}
.m-customer-search button {
  position: absolute;
  z-index: 2;
  right: 5px;
  top: 5px;
  min-height: 34px;
  padding: 0 13px;
  border: 0;
  border-radius: 10px;
  color: #1e5bc6;
  background: #edf4ff;
  font-size: 11px;
  font-weight: 950;
}
.m-customer-scope-filter {
  gap: 3px;
  padding: 3px;
  border: 1px solid #dfe6ef;
  border-radius: 14px;
  background: rgba(255,255,255,.7);
}
.m-customer-scope-filter button {
  min-height: 38px;
  gap: 4px;
  border: 0;
  border-radius: 10px;
  background: transparent;
  font-size: 10px;
}
.m-customer-scope-filter button b { font-size: 12px; }
.m-customer-scope-filter button.active {
  border: 0;
  color: #1e5bc6;
  background: #fff;
  box-shadow: 0 3px 10px rgba(30,64,175,.09);
}
.m-customer-filter-card {
  display: grid;
  gap: 9px;
  padding: 11px;
  border: 1px solid #e0e7f0;
  border-radius: 16px;
  background: rgba(255,255,255,.88);
}
.m-customer-filter-head {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 10px;
}
.m-customer-filter-head > b { color: #526178; font-size: 10px; }
.m-customer-filter-toggle {
  min-height: 30px;
  display: inline-flex;
  align-items: center;
  gap: 4px;
  padding: 0 7px;
  border: 0;
  border-radius: 9px;
  color: #64748b;
  background: #f3f6fa;
  font-size: 10px;
  font-weight: 900;
}
.m-customer-filter-toggle.active { color: #1d4ed8; background: #eaf2ff; }
.m-customer-filter-toggle i {
  min-width: 15px;
  height: 15px;
  display: grid;
  place-items: center;
  border-radius: 8px;
  color: #fff;
  background: #2563eb;
  font-size: 8px;
  font-style: normal;
}
.m-customer-filter-toggle[aria-expanded="true"] > span { transform: rotate(180deg); }
.m-customer-filter-toggle > span { transition: transform .16s ease; }
.m-customer-level-chips {
  display: grid;
  grid-template-columns: 1.18fr repeat(4, minmax(0, 1fr));
  gap: 5px;
}
.m-customer-level-chips button {
  min-width: 0;
  min-height: 36px;
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 4px;
  padding: 0 5px;
  border: 1px solid #e0e6ee;
  border-radius: 10px;
  color: #64748b;
  background: #fff;
  font-size: 10px;
  font-weight: 900;
}
.m-customer-level-chips button b { color: #334155; font-size: 12px; }
.m-customer-level-chips button span { color: #8794a8; font-size: 9px; }
.m-customer-level-chips button.active {
  border-color: #7ba7fa;
  color: #1e5bc6;
  background: #edf4ff;
  box-shadow: inset 0 0 0 1px rgba(37,99,235,.18);
}
.m-customer-level-chips button.active b,
.m-customer-level-chips button.active span { color: #1e5bc6; }
.m-customer-level-chips .level-a b { color: #bd3944; }
.m-customer-level-chips .level-b b { color: #b8740c; }
.m-customer-level-chips .level-c b { color: #2563eb; }
.m-customer-advanced-filter[hidden] { display: none; }
.m-customer-advanced-filter {
  display: grid;
  gap: 6px;
  padding-top: 9px;
  border-top: 1px solid #edf0f4;
}
.m-customer-advanced-filter > span { color: #718096; font-size: 9px; font-weight: 900; }
.m-customer-advanced-filter .m-customer-stage-filter { margin: 0; padding: 0 0 2px; }
.m-customer-advanced-filter .m-customer-stage-filter button { min-height: 32px; font-size: 10px; }
.m-customer-attention {
  min-height: 48px;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 10px;
  padding: 8px 10px 8px 12px;
  border-left: 3px solid #f59e0b;
  border-radius: 11px;
  background: #fff8e8;
}
.m-customer-attention > div { min-width: 0; display: grid; gap: 2px; }
.m-customer-attention b { color: #7c4a05; font-size: 10px; }
.m-customer-attention span { overflow: hidden; color: #9a640d; font-size: 9px; text-overflow: ellipsis; white-space: nowrap; }
.m-customer-attention button {
  flex: 0 0 auto;
  min-height: 30px;
  padding: 0 9px;
  border: 0;
  border-radius: 9px;
  color: #8a5507;
  background: #ffedbd;
  font-size: 10px;
  font-weight: 950;
}
.m-customer-list-card {
  gap: 10px;
  padding: 12px;
}
.m-customer-list-card > .m-card-head { align-items: center; }
.m-customer-list-card > .m-card-head b { font-size: 14px; }
.m-customer-list-card > .m-card-head span { margin-top: 2px; font-size: 9px; }
.m-customer-list-card > .m-card-head .m-text-link { min-height: 32px; font-size: 10px; }

/* Customer workspace detail pass: clearer state, risk and next action. */
.m-customer-page-head .m-customer-add { min-height: 44px; }
.m-customer-search input {
  min-height: 48px;
  padding-right: 112px;
  font-size: 13px;
}
.m-customer-search input::-webkit-search-cancel-button { display: none; }
.m-customer-search::before { top: 15px; width: 13px; height: 13px; }
.m-customer-search::after { top: 29px; }
.m-customer-search .m-customer-search-submit {
  top: 4px;
  right: 4px;
  min-height: 40px;
  padding-inline: 15px;
}
.m-customer-search.is-searching .m-customer-search-submit {
  color: transparent;
  pointer-events: none;
}
.m-customer-search.is-searching .m-customer-search-submit::after {
  content: '';
  position: absolute;
  left: 50%;
  top: 50%;
  width: 14px;
  height: 14px;
  margin: -8px 0 0 -8px;
  border: 2px solid rgba(37,99,235,.22);
  border-top-color: #2563eb;
  border-radius: 50%;
  animation: m-customer-search-spin .7s linear infinite;
}
@keyframes m-customer-search-spin { to { transform: rotate(360deg); } }
.m-customer-search .m-customer-search-clear {
  top: 6px;
  right: 65px;
  width: 36px;
  min-height: 36px;
  padding: 0;
  border-radius: 50%;
  color: #718096;
  background: transparent;
  font-size: 19px;
  font-weight: 500;
}
.m-customer-search .m-customer-search-clear:focus-visible,
.m-customer-search .m-customer-search-submit:focus-visible,
.m-customer-scope-filter button:focus-visible,
.m-customer-level-chips button:focus-visible,
.m-customer-filter-toggle:focus-visible,
.m-customer-attention button:focus-visible,
.m-customer-card button:focus-visible {
  outline: 3px solid rgba(37,99,235,.24);
  outline-offset: 2px;
}
.m-customer-scope-filter button { min-height: 44px; }
.m-customer-scope-filter button[aria-pressed="true"] { cursor: default; }
.m-customer-filter-toggle { min-height: 40px; padding-inline: 10px; }
.m-customer-level-chips button { min-height: 44px; }
.m-customer-level-chips button::before {
  content: '';
  width: 5px;
  height: 5px;
  flex: 0 0 auto;
  border-radius: 50%;
  background: #94a3b8;
}
.m-customer-level-chips button:first-child::before { display: none; }
.m-customer-level-chips .level-a::before { background: #dc4653; }
.m-customer-level-chips .level-b::before { background: #e29210; }
.m-customer-level-chips .level-c::before { background: #2563eb; }
.m-customer-level-chips .level-d::before { background: #64748b; }
.m-customer-filter-summary {
  min-width: 0;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 8px;
  padding-top: 9px;
  border-top: 1px solid #edf0f4;
}
.m-customer-filter-summary span {
  min-width: 0;
  overflow: hidden;
  color: #64748b;
  font-size: 9px;
  font-weight: 800;
  text-overflow: ellipsis;
  white-space: nowrap;
}
.m-customer-filter-summary button {
  flex: 0 0 auto;
  min-height: 32px;
  padding: 0 8px;
  border: 0;
  border-radius: 9px;
  color: #1d4ed8;
  background: #edf4ff;
  font-size: 9px;
  font-weight: 900;
}
.m-customer-attention {
  min-height: 0;
  display: grid;
  gap: 8px;
  padding: 10px 11px 11px 13px;
  border-left-width: 4px;
  border-radius: 14px;
  box-shadow: 0 8px 18px rgba(180,111,9,.06);
}
.m-customer-attention-head {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 10px;
}
.m-customer-attention-head > span { min-width: 0; display: grid; gap: 1px; }
.m-customer-attention-head b { font-size: 11px; }
.m-customer-attention-head small { color: #9a640d; font-size: 9px; font-weight: 750; }
.m-customer-attention-head strong {
  flex: 0 0 auto;
  color: #8a5507;
  font-size: 12px;
}
.m-customer-attention-actions { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: 7px; }
.m-customer-attention-actions button {
  min-width: 0;
  min-height: 40px;
  display: grid;
  grid-template-columns: minmax(0,1fr) auto auto;
  align-items: center;
  gap: 5px;
  padding: 0 9px;
  border: 1px solid rgba(234,179,8,.22);
  border-radius: 10px;
  color: #7c4a05;
  background: rgba(255,255,255,.72);
  text-align: left;
}
.m-customer-attention-actions button span {
  overflow: hidden;
  color: #8a5507;
  font-size: 9px;
  font-weight: 850;
  text-overflow: ellipsis;
  white-space: nowrap;
}
.m-customer-attention-actions button b { font-size: 13px; }
.m-customer-attention-actions button i { color: #bd7b10; font-size: 16px; font-style: normal; }
.m-customer-list-card { padding: 13px 12px 15px; }
.m-customer-list-card.is-loading { opacity: .58; pointer-events: none; }
.m-customer-sort-note {
  flex: 0 0 auto;
  color: #718096 !important;
  font-size: 9px !important;
  font-weight: 850;
}
.m-customer-list-card .m-list { gap: 9px; }
.m-customer-card {
  position: relative;
  overflow: hidden;
  gap: 11px;
  padding: 13px 12px 12px 14px;
  border-color: #dfe7f1;
  border-radius: 17px;
  background: #fff;
  box-shadow: 0 5px 14px rgba(15,23,42,.035);
}
.m-customer-card::before {
  content: '';
  position: absolute;
  inset: 0 auto 0 0;
  width: 3px;
  background: #94a3b8;
}
.m-customer-card.level-a::before { background: #dc4653; }
.m-customer-card.level-b::before { background: #e29210; }
.m-customer-card.level-c::before { background: #2563eb; }
.m-customer-card.level-d::before { background: #64748b; }
.m-customer-card.is-overdue { border-color: #f4c5c8; background: linear-gradient(120deg,#fff 0%,#fffafb 100%); }
.m-customer-main > div { min-width: 0; }
.m-customer-main > div > b { font-size: 15px; line-height: 1.2; }
.m-customer-main > div > span {
  min-width: 0;
  display: flex;
  align-items: center;
  gap: 5px;
  margin-top: 5px;
  overflow: hidden;
  color: #64748b;
  font-size: 10px;
  text-overflow: ellipsis;
  white-space: nowrap;
}
.m-customer-main > div > span i { color: #c0c9d6; font-style: normal; }
.m-customer-main > .m-level {
  width: 39px;
  height: 39px;
  display: flex;
  align-items: baseline;
  justify-content: center;
  gap: 1px;
  border: 1px solid transparent;
  border-radius: 50%;
  color: #334155;
  background: #f1f5f9;
  font-size: 15px;
  font-weight: 950;
}
.m-customer-main > .m-level small { font-size: 8px; font-weight: 900; }
.m-customer-main > .m-level.level-a { color: #be3341; border-color: #fecdd3; background: #fff1f2; }
.m-customer-main > .m-level.level-b { color: #a86408; border-color: #fde3a7; background: #fffbeb; }
.m-customer-main > .m-level.level-c { color: #1d4ed8; border-color: #dbeafe; background: #eff6ff; }
.m-customer-main > .m-level.level-d { color: #526178; border-color: #e2e8f0; background: #f8fafc; }
.m-customer-card .m-customer-progress { gap: 6px; }
.m-customer-card .m-customer-progress > span {
  min-height: 23px;
  display: inline-flex;
  align-items: center;
  padding: 0 7px;
  border-radius: 7px;
  font-size: 9px;
  font-weight: 850;
}
.m-customer-card .m-customer-progress .tag { padding-inline: 8px; }
.m-customer-card .m-customer-signal { color: #526178; background: #f1f5f9; }
.m-customer-card .m-customer-next { margin-left: auto; }
.m-customer-card .m-customer-next.planned { color: #2563eb; background: #eff6ff; }
.m-customer-card .m-customer-next.missing { color: #a16207; background: #fffbeb; }
.m-customer-card .m-customer-next.overdue { color: #be3341; background: #fff1f2; }
.m-customer-recommendation {
  display: grid;
  grid-template-columns: auto minmax(0,1fr);
  gap: 3px 7px;
  padding: 9px 10px;
  border-radius: 11px;
  background: #f7f9fc;
}
.m-customer-recommendation > span {
  grid-row: 1 / span 2;
  align-self: start;
  padding: 3px 6px;
  border-radius: 6px;
  color: #526178;
  background: #e8edf4;
  font-size: 8px;
  font-weight: 900;
  white-space: nowrap;
}
.m-customer-recommendation b { font-size: 11px; line-height: 1.35; }
.m-customer-recommendation p { margin: 0; color: #64748b; font-size: 9px; font-weight: 750; line-height: 1.45; }
.m-customer-card .m-card-actions {
  grid-template-columns: 1fr 1fr .78fr;
  gap: 7px;
}
.m-customer-card .m-card-actions button {
  min-width: 0;
  min-height: 44px;
  border: 1px solid #dfe6ef;
  border-radius: 12px;
  padding: 0 7px;
  font-size: 11px;
  font-weight: 950;
  box-shadow: none;
}
.m-customer-card .m-call-btn {
  color: #08775f;
  border-color: #b7eadc;
  background: #edfcf7;
}
.m-customer-card .m-call-btn.is-primary {
  color: #fff;
  border-color: #0f9f84;
  background: linear-gradient(135deg,#16a34a,#0f9f84);
}
.m-customer-follow-btn { color: #1d4ed8; border-color: #cfe0ff !important; background: #edf4ff; }
.m-customer-follow-btn.is-primary { color: #fff; border-color: #2563eb !important; background: #2f68e9; }
.m-customer-detail-btn { color: #334155; background: #f3f6fa; }
.m-customer-detail-btn span { margin-left: 3px; color: #718096; font-size: 15px; }
.m-customer-list-card .m-pagination button { min-height: 42px; }

/* Mobile customer workspace: keep the next customer action inside the first screen. */
.m-customer-page-head { min-height: 60px; padding-block: 2px; }
.m-customer-page-head h2 { margin-top: 2px; font-size: 23px; line-height: 1.08; }
.m-customer-page-head p { margin-top: 3px; font-size: 10px; }
.m-customer-page-head .m-customer-add { min-width: 76px; min-height: 44px; border-radius: 14px; }
.m-customer-search input { min-height: 44px; }
.m-customer-search::before { top: 13px; }
.m-customer-search::after { top: 27px; }
.m-customer-search .m-customer-search-submit { min-height: 36px; padding-inline: 13px; }
.m-customer-scope-filter button { min-height: 39px; }
.m-customer-filter-card { gap: 6px; padding: 6px; border-radius: 14px; }
.m-customer-filter-toolbar { display: grid; grid-template-columns: minmax(0,1fr) auto; align-items: center; gap: 6px; }
.m-customer-filter-toolbar .m-customer-level-chips { grid-template-columns: 1.16fr repeat(4,minmax(0,1fr)); gap: 4px; }
.m-customer-filter-toolbar .m-customer-level-chips button { min-height: 34px; padding-inline: 3px; border-radius: 9px; }
.m-customer-filter-toolbar .m-customer-filter-toggle { min-width: 59px; min-height: 34px; justify-content: center; padding-inline: 7px; }
.m-customer-filter-toolbar .m-customer-filter-toggle > b { color: inherit; font-size: 12px; transition: transform .16s ease; }
.m-customer-filter-toolbar .m-customer-filter-toggle[aria-expanded="true"] > b { transform: rotate(180deg); }
.m-customer-attention {
  min-height: 46px;
  display: grid;
  grid-template-columns: auto minmax(0,1fr);
  align-items: center;
  gap: 7px;
  padding: 6px 7px 6px 10px;
  border-left-width: 3px;
  border-radius: 11px;
}
.m-customer-attention-head { display: inline-flex; align-items: center; justify-content: flex-start; gap: 5px; }
.m-customer-attention-head b { color: #7c4a05; font-size: 10px; white-space: nowrap; }
.m-customer-attention-head strong { color: #9a5e08; font-size: 12px; }
.m-customer-attention-actions { min-width: 0; display: flex; justify-content: flex-end; gap: 5px; }
.m-customer-attention-actions button {
  width: auto;
  min-width: 0;
  min-height: 32px;
  display: inline-flex;
  grid-template-columns: none;
  gap: 4px;
  padding: 0 7px;
  border: 0;
  border-radius: 8px;
  background: rgba(255,255,255,.76);
}
.m-customer-attention-actions button span { color: #8a5507; font-size: 9px; }
.m-customer-attention-actions button b { font-size: 11px; }
.m-customer-attention-actions button i { font-size: 13px; }
.m-customer-plan-presets { margin: 0; padding: 0; border: 0; }
.m-customer-plan-presets legend { margin-bottom: 8px; color: #334155; font-size: 13px; font-weight: 800; }
.m-customer-plan-presets > div { display: grid; grid-template-columns: repeat(3,minmax(0,1fr)); gap: 8px; }
.m-customer-plan-presets button { min-height: 44px; padding: 8px; border: 1px solid #d6e0ee; border-radius: 12px; background: #fff; color: #52657f; font-size: 12px; font-weight: 800; }
.m-customer-plan-presets button.active { border-color: #75a4ff; background: #edf4ff; color: #1f5ed6; box-shadow: inset 0 0 0 1px #75a4ff; }
.m-customer-list-card { gap: 8px; padding: 10px; border-radius: 16px; }
.m-customer-list-card > .m-card-head b { font-size: 13px; }
.m-customer-list-card > .m-card-head b em { margin-left: 3px; color: #2563eb; font-size: 12px; font-style: normal; }
.m-customer-sort-note { font-size: 8px !important; }
.m-customer-list-card .m-list { gap: 7px; }
.m-customer-card { gap: 8px; padding: 11px 10px 10px 13px; border-radius: 15px; }
.m-customer-card.is-overdue { border-color: #dfe7f1; background: #fff; }
.m-customer-card.is-overdue::before { background: #dc4653; }
.m-customer-main > div > b { font-size: 14px; }
.m-customer-main > div > span { margin-top: 4px; font-size: 9px; }
.m-customer-main > .m-level { width: 34px; height: 34px; font-size: 14px; }
.m-customer-card .m-customer-progress { display: flex; align-items: center; gap: 5px; }
.m-customer-card .m-customer-progress > span { min-height: 22px; padding-inline: 7px; }
.m-customer-card .m-customer-next { margin-left: 0; }
.m-customer-recommendation { display: grid; grid-template-columns: 1fr; gap: 2px; padding: 7px 9px; border-radius: 10px; }
.m-customer-recommendation b { font-size: 10px; }
.m-customer-recommendation p { font-size: 8px; }
.m-customer-card .m-card-actions { gap: 6px; }
.m-customer-card .m-card-actions button { min-height: 44px; border-radius: 11px; }

@media (max-width: 360px) {
  .m-customer-filter-toolbar { grid-template-columns: 1fr; }
  .m-customer-filter-toolbar .m-customer-filter-toggle { width: 100%; }
  .m-customer-attention { grid-template-columns: 1fr; }
  .m-customer-attention-actions { justify-content: flex-start; }
}

.dashboard-ranking-row {
  display: grid;
  width: 100%;
  grid-template-columns: 34px minmax(120px,1fr) minmax(170px,.8fr) 60px;
  align-items: center;
  gap: 12px;
  padding: 10px 6px;
  border: 0;
  border-bottom: 1px solid #eef2f6;
  border-radius: 8px;
  color: inherit;
  background: transparent;
  text-align: left;
  font: inherit;
}
.dashboard-ranking-list button.dashboard-ranking-row { cursor: pointer; }
.dashboard-ranking-list button.dashboard-ranking-row:hover,
.dashboard-ranking-list button.dashboard-ranking-row:focus-visible { background: #f6f9ff; outline: 2px solid #dbeafe; outline-offset: 1px; }
.dashboard-ranking-row > i { width: 30px; height: 30px; display: grid; place-items: center; border-radius: 50%; color: #64748b; background: #eef2f7; font-style: normal; font-weight: 900; }
.dashboard-ranking-row > i.rank-1 { color: #fff; background: #f59e0b; }
.dashboard-ranking-row > i.rank-2 { color: #fff; background: #94a3b8; }
.dashboard-ranking-row > i.rank-3 { color: #fff; background: #d97738; }
.dashboard-ranking-row > div:nth-child(2) { display: grid; gap: 3px; }
.dashboard-ranking-row > div:nth-child(2) span { color: #8a96a9; font-size: 11px; }
.dashboard-ranking-row > strong { color: #ef4444; text-align: right; font-size: 14px; }
.dashboard-ranking-row > strong small { display: block; color: #94a3b8; font-size: 9px; }
.dashboard-compares button { padding-inline: 10px !important; }
.dashboard-export-button { height: 42px; padding: 0 14px; border: 1px solid #bcd4f5; border-radius: 10px; color: #2563eb; background: #eef6ff; font-weight: 900; white-space: nowrap; }
.dashboard-export-button:hover { border-color: #7cb2f2; background: #e0efff; }
.dashboard-export-button:disabled { cursor: wait; opacity: .65; }
.dashboard-chart-hint { margin: 5px 0 0; color: #94a3b8; text-align: center; font-size: 10px; }
.dashboard-visual-chart .chart-hover-point line { stroke: #4b86df; stroke-width: 1; stroke-dasharray: 4 3; opacity: 0; pointer-events: none; }
.dashboard-visual-chart .chart-hover-point rect { pointer-events: all; cursor: crosshair; }
.dashboard-visual-chart .chart-hover-point:hover line,
.dashboard-visual-chart .chart-hover-point:focus line { opacity: 1; }
.dashboard-visual-chart .chart-hover-point:focus { outline: none; }

/* 趋势图即时 tooltip */
.dashboard-chart-wrap { position: relative; }
.dashboard-chart-tooltip {
  position: absolute; z-index: 100;
  max-width: 280px; padding: 8px 12px;
  border-radius: 10px; background: #172033e6; color: #fff;
  font-size: 11px; line-height: 1.6;
  pointer-events: none; white-space: nowrap;
  box-shadow: 0 4px 16px #00000024; backdrop-filter: blur(8px);
}
.dashboard-chart-tooltip:not([hidden]) { animation: tooltip-fade-in .15s ease; }
@keyframes tooltip-fade-in { from { opacity: 0; transform: translateY(4px); } to { opacity: 1; transform: translateY(0); } }

/* 自定义日期快捷预设 */
.dashboard-date-presets { display: flex; gap: 4px; }
.dashboard-date-presets button {
  padding: 3px 9px; border: 1px solid #dbe3ee; border-radius: 6px;
  color: #64748b; background: #fff; font-size: 11px; font-weight: 600; cursor: pointer;
}
.dashboard-date-presets button:hover { border-color: #3189f5; color: #3189f5; }

/* 导出按钮加载状态 */
.dashboard-export-button.is-exporting {
  pointer-events: none; opacity: .7;
  background-image: repeating-linear-gradient(45deg, transparent, transparent 4px, #fff1 4px, #fff1 8px);
  animation: export-stripes .6s linear infinite;
}
@keyframes export-stripes { to { background-position: -16px 0; } }

/* 智能洞察卡片 */
.dashboard-insight-panel {
  margin-bottom: 16px; padding: 16px 18px;
  border: 1px solid #d6e4fa; border-radius: 14px;
  background: linear-gradient(135deg, #f0f5ff, #fafcff);
}
.dashboard-insight-panel header { display: flex; align-items: center; gap: 8px; margin-bottom: 10px; }
.dashboard-insight-panel header h3 { margin: 0; color: #1e40af; font-size: 15px; }
.dashboard-insight-panel header .insight-tag {
  padding: 2px 8px; border-radius: 99px; background: #dbeafe; color: #1d4ed8;
  font-size: 10px; font-weight: 800;
}
.dashboard-insight-list { display: grid; gap: 8px; }
.dashboard-insight-item {
  display: flex; align-items: flex-start; gap: 10px; padding: 10px 12px;
  border-radius: 10px; background: #fff;
  border: 1px solid #eef3fc; font-size: 13px; color: #334155; line-height: 1.5;
}
.dashboard-insight-item i { flex-shrink: 0; margin-top: 1px; font-style: normal; font-size: 16px; }
.dashboard-insight-item .insight-highlight { color: #2563eb; font-weight: 700; }
.dashboard-insight-item .insight-warning { color: #dc2626; font-weight: 700; }
.dashboard-insight-item .insight-success { color: #16a34a; font-weight: 700; }
.dashboard-insight-item.insight-risk { border-color: #fecaca; background: #fef2f2; }
.dashboard-insight-item.insight-opportunity { border-color: #bbf7d0; background: #f0fdf4; }
.dashboard-insight-item.insight-tip { border-color: #bfdbfe; background: #eff6ff; }

/* 导出进度 */
.dashboard-export-progress {
  display: flex; align-items: center; gap: 10px; margin-top: 10px;
  padding: 10px 14px; border-radius: 10px; background: #f0f5ff; color: #2563eb; font-size: 13px;
}
.dashboard-export-progress .spinner {
  width: 16px; height: 16px; border: 2px solid #bfdbfe; border-top-color: #2563eb;
  border-radius: 50%; animation: export-spin .6s linear infinite;
}
@keyframes export-spin { to { transform: rotate(360deg); } }

@media (max-width: 1280px) {
  .dashboard-color-kpis { grid-template-columns: repeat(3,minmax(0,1fr)); }
  .dashboard-reference-main,.dashboard-reference-bottom { grid-template-columns: 1fr; }
}

@media (max-width: 900px) {
  .dashboard-reference-shell { margin-inline: 0; padding: 14px; }
  .dashboard-reference-head { align-items: stretch; flex-direction: column; }
  .dashboard-reference-filters { align-items: stretch; flex-wrap: wrap; }
  .dashboard-reference-filters .segmented { flex: 1 1 100%; }
  .dashboard-reference-filters .segmented button { flex: 1; padding-inline: 5px; }
  .dashboard-color-kpis { grid-template-columns: 1fr 1fr; }
  .dashboard-ranking-row { grid-template-columns: 30px 1fr auto; }
  .dashboard-rank-amount { grid-column: 2 / -1; }
}

@media (max-width: 520px) {
  .dashboard-color-kpis { grid-template-columns: 1fr; }
  .dashboard-reference-filters select,
  .dashboard-export-button { flex: 1 1 calc(100% - 52px); min-width: 0; }
  .dashboard-custom-range { align-items: stretch; flex-direction: column; }
  .dashboard-custom-range > span,
  .dashboard-custom-range small { padding-bottom: 0; }
  .dashboard-date-presets { flex-wrap: wrap; }
}

@media (max-width: 360px) {
  .m-customer-page-head h2 { font-size: 22px; }
  .m-customer-level-chips { gap: 4px; }
  .m-customer-level-chips button { padding-inline: 3px; }
  .m-customer-attention-actions { grid-template-columns: 1fr; }
  .m-customer-card .m-card-actions { grid-template-columns: 1fr 1fr .7fr; gap: 5px; }
  .m-customer-card .m-card-actions button { padding-inline: 4px; font-size: 10px; }
}

@media (prefers-reduced-motion: reduce) {
  .m-customer-filter-toggle > span { transition: none; }
  .m-customer-list-card { transition: none; }
  .m-customer-search.is-searching .m-customer-search-submit::after { animation: none; }
}

/* Manager workbench: result, priority, people and trend without duplicated dashboards. */
.manager-command-head {
  display:flex; align-items:flex-end; justify-content:space-between; gap:24px;
  margin-bottom:14px; padding:22px 24px; border:1px solid #d8e3ef; border-radius:18px;
  color:#fff; background:radial-gradient(circle at 93% 18%,rgba(50,203,174,.22),transparent 30%),linear-gradient(120deg,#17243a,#1f4253 68%,#1b655f);
  box-shadow:0 12px 28px rgba(27,48,72,.12);
}
.manager-command-head>div:first-child { min-width:0; display:grid; gap:7px; }
.manager-command-head h2 { margin:0; font-size:28px; letter-spacing:-.6px; }
.manager-command-head p { margin:0; color:rgba(255,255,255,.76); font-size:13px; font-weight:750; }
.manager-command-meta { display:flex; align-items:center; gap:8px; color:rgba(255,255,255,.66); font-size:10px; font-weight:850; }
.manager-command-meta i { width:3px; height:3px; border-radius:50%; background:rgba(255,255,255,.42); }
.manager-command-actions { flex:0 0 auto; display:flex; flex-wrap:wrap; justify-content:flex-end; gap:8px; }
.manager-command-actions button { min-height:40px; border-color:rgba(255,255,255,.2); }
.manager-command-actions .ghost { color:#fff; background:rgba(255,255,255,.09); }
.manager-result-grid { display:grid; grid-template-columns:repeat(5,minmax(0,1fr)); gap:10px; margin-bottom:14px; }
.manager-live-reception{display:grid;grid-template-columns:36px minmax(0,1fr) auto auto;align-items:center;gap:12px;margin-bottom:14px;padding:12px 14px;border:1px solid #e5eaf1;border-left:4px solid #94a3b8;border-radius:14px;background:#fff;box-shadow:0 4px 14px rgba(32,52,84,.06)}
.manager-live-reception.live{border-left-color:#16a085;background:linear-gradient(90deg,#f0fbf7,#fff 55%)}
.manager-live-reception.warning{border-left-color:#f59e0b;background:linear-gradient(90deg,#fff9ed,#fff 55%)}
.manager-live-reception-icon{width:32px;height:32px;display:grid;place-items:center;border-radius:10px;color:#64748b;background:#eef2f6}.manager-live-reception.live .manager-live-reception-icon{color:#087f68;background:#d9f3ea}.manager-live-reception.warning .manager-live-reception-icon{color:#a16207;background:#fcebc7}.manager-live-reception-icon i{width:9px;height:9px;border-radius:50%;background:currentColor;box-shadow:0 0 0 5px currentColor;opacity:.22}.manager-live-reception-icon i:after{content:"";display:block;width:9px;height:9px;border-radius:50%;background:currentColor;opacity:1}
.manager-live-reception>div:nth-child(2){display:grid;gap:2px;min-width:0}.manager-live-reception>div:nth-child(2) span{color:#738095;font-size:10px;font-weight:900;letter-spacing:.08em}.manager-live-reception>div:nth-child(2) b{overflow:hidden;color:#172033;font-size:14px;text-overflow:ellipsis;white-space:nowrap}.manager-live-reception>div:nth-child(2) small{overflow:hidden;color:#8a96a9;font-size:11px;text-overflow:ellipsis;white-space:nowrap}.manager-live-reception-stats{display:flex;align-items:baseline;gap:14px}.manager-live-reception-stats strong{color:#1f6fdd;font-size:20px;font-variant-numeric:tabular-nums}.manager-live-reception-stats strong:first-child{color:#087f68}.manager-live-reception-stats strong.warning{color:#c2410c}.manager-live-reception-stats em{margin-left:2px;color:#8491a4;font-size:10px;font-style:normal;font-weight:800}
.manager-result-card {
  position:relative; overflow:hidden; min-width:0; min-height:112px; display:grid; align-content:center; gap:7px;
  padding:16px; border:1px solid #dce4ee; border-top:4px solid #7b8ba1; border-radius:14px;
  color:#172033; background:#fff; text-align:left; box-shadow:0 7px 18px rgba(31,45,68,.045);
  transition:transform .16s ease,box-shadow .16s ease;
}
.manager-result-card:hover { transform:translateY(-2px); box-shadow:0 11px 24px rgba(31,45,68,.09); }
.manager-result-card::after { content:""; position:absolute; width:74px; height:74px; right:-28px; top:-32px; border-radius:50%; background:currentColor; opacity:.055; }
.manager-result-card>span { color:#66758c; font-size:11px; font-weight:900; }
.manager-result-card>b { overflow:hidden; font-size:25px; line-height:1; text-overflow:ellipsis; white-space:nowrap; }
.manager-result-card>small { overflow:hidden; color:#7a8798; font-size:9px; font-weight:750; text-overflow:ellipsis; white-space:nowrap; }
.manager-result-card>i { position:absolute; right:12px; bottom:10px; color:#8794a7; font-size:9px; font-style:normal; font-weight:850; }
.manager-result-card.blue { border-top-color:#3b82f6; color:#2563eb; }.manager-result-card.purple { border-top-color:#7c65dc; color:#6d55d0; }
.manager-result-card.green { border-top-color:#25ad70; color:#168558; }.manager-result-card.amber { border-top-color:#f0a21a; color:#bd7410; }
.manager-result-card.red { border-top-color:#e64b58; color:#c93543; background:#fffafb; }
.manager-result-card>span,.manager-result-card>small { color:#66758c; }
.manager-action-layout { display:grid; grid-template-columns:minmax(0,1.45fr) minmax(330px,.75fr); gap:14px; margin-bottom:14px; }
.manager-priority-panel,.manager-closure-panel,.manager-guide-board,.manager-trend-panel { border-radius:16px; box-shadow:0 8px 20px rgba(31,45,68,.045); }
.manager-priority-panel .panel-head p,.manager-closure-panel .panel-head p,.manager-guide-head p,.manager-trend-panel .panel-head p { margin:4px 0 0; color:#7b8798; font-size:10px; }
.manager-priority-list { display:grid; gap:7px; }
.manager-priority-item { min-width:0; display:grid; grid-template-columns:28px minmax(0,1fr) auto auto; align-items:center; gap:10px; padding:10px 11px; border:1px solid #e6ebf2; border-radius:12px; background:#fbfcfe; }
.manager-priority-item.red { border-color:#f2c9cd; background:#fff8f8; }.manager-priority-item.amber { border-color:#f3ddae; background:#fffcf4; }
.manager-priority-rank { width:27px; height:27px; display:grid; place-items:center; border-radius:9px; color:#41516a; background:#eaf0f7; font-size:11px; font-weight:950; }
.manager-priority-item.red .manager-priority-rank { color:#c93543; background:#ffe4e6; }.manager-priority-item.amber .manager-priority-rank { color:#a96709; background:#fff0cb; }
.manager-priority-item>div { min-width:0; display:grid; gap:3px; }.manager-priority-item b { overflow:hidden; font-size:12px; text-overflow:ellipsis; white-space:nowrap; }
.manager-priority-item p { margin:0; overflow:hidden; color:#7b8798; font-size:9px; text-overflow:ellipsis; white-space:nowrap; }
.manager-priority-item>em { min-width:30px; color:#28364b; font-size:21px; font-style:normal; font-weight:950; text-align:center; }
.manager-priority-item button { min-width:58px; }
.manager-priority-empty { min-height:172px; display:grid; place-content:center; gap:7px; padding:20px; border-radius:13px; color:#08795b; background:#effbf6; text-align:center; }
.manager-priority-empty b { font-size:14px; }.manager-priority-empty span { color:#5f7e74; font-size:10px; }
.manager-closure-list { display:grid; gap:16px; }
.manager-progress-row { display:grid; grid-template-columns:minmax(0,1fr) auto; gap:8px; }
.manager-progress-row>div:first-child { min-width:0; display:grid; gap:3px; }.manager-progress-row b { font-size:11px; }
.manager-progress-row span { overflow:hidden; color:#7a8798; font-size:9px; text-overflow:ellipsis; white-space:nowrap; }
.manager-progress-row>em { align-self:center; color:#33435a; font-size:15px; font-style:normal; font-weight:950; }
.manager-progress-track { grid-column:1/-1; height:7px; overflow:hidden; border-radius:999px; background:#e8edf3; }
.manager-progress-track i { display:block; height:100%; border-radius:inherit; background:#4d7ee7; }
.manager-progress-row.green .manager-progress-track i { background:#25ad70; }.manager-progress-row.amber .manager-progress-track i { background:#f0a21a; }.manager-progress-row.red .manager-progress-track i { background:#e64b58; }
.manager-guide-head { align-items:center; }
.manager-guide-filters { display:flex; flex-wrap:wrap; justify-content:flex-end; gap:6px; }
.manager-guide-filters button { min-height:32px; padding:0 10px; border:1px solid #dce3ed; border-radius:9px; color:#657287; background:#f7f9fc; font-size:9px; font-weight:900; }
.manager-guide-filters button.active { border-color:#7ca7f5; color:#1f5ec4; background:#edf4ff; }
.manager-guide-table { table-layout:fixed; }
.manager-guide-table th:nth-child(1) { width:12%; }.manager-guide-table th:nth-child(2) { width:27%; }.manager-guide-table th:nth-child(3) { width:18%; }.manager-guide-table th:nth-child(4) { width:18%; }.manager-guide-table th:nth-child(5) { width:25%; }
.manager-guide-table td { vertical-align:top; }
.manager-guide-subline { display:block; margin-top:4px; color:#8490a2; font-size:9px; }
.manager-guide-funnel { display:flex; flex-wrap:wrap; align-items:center; gap:5px; }
.manager-guide-funnel span { padding:5px 6px; border-radius:8px; color:#637086; background:#f2f5f9; font-size:9px; font-weight:800; }
.manager-guide-funnel span b { margin-left:2px; color:#223047; font-size:11px; }.manager-guide-funnel i { color:#a3adba; font-size:9px; font-style:normal; }
.manager-main-issue { display:inline-flex; padding:5px 7px; border-radius:8px; color:#64748b; background:#f0f3f7; font-size:9px; font-weight:900; }
.manager-main-issue.attention,.manager-main-issue.no_action { color:#ad5d08; background:#fff0cf; }
.manager-risk-details { margin-top:6px; }.manager-risk-details summary { cursor:pointer; color:#748196; font-size:9px; font-weight:800; }
.manager-risk-details>div { display:flex; flex-wrap:wrap; gap:4px; margin-top:6px; }
.manager-guide-action-text { display:block; color:#536178; font-size:9px; font-weight:800; line-height:1.5; }
.manager-guide-primary-action { margin-top:7px; }.manager-guide-primary-action button { min-height:32px; }
.manager-guide-mobile { display:none; }
.manager-guide-card { display:grid; gap:10px; padding:12px; border:1px solid #e0e7f0; border-radius:14px; background:#fff; }
.manager-guide-card header { display:flex; align-items:center; justify-content:space-between; gap:10px; }
.manager-guide-card header>div { display:grid; gap:2px; }.manager-guide-card header span { color:#7a8798; font-size:9px; }
.manager-guide-card header em { padding:5px 7px; border-radius:8px; color:#5f6d81; background:#eef2f7; font-size:9px; font-style:normal; font-weight:900; }
.manager-guide-card header em.attention,.manager-guide-card header em.no_action { color:#a85f0b; background:#fff0d0; }
.manager-guide-card-flow { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:5px; }
.manager-guide-card-flow span { display:grid; gap:4px; padding:8px 4px; border-radius:9px; color:#778397; background:#f4f7fa; font-size:8px; text-align:center; }
.manager-guide-card-flow b { color:#243248; font-size:14px; }.manager-guide-card p { margin:0; color:#59677d; font-size:10px; line-height:1.5; }
.manager-trend-panel { margin-top:14px; }
.manager-trend-chart { height:190px; display:grid; grid-template-columns:repeat(7,minmax(0,1fr)); gap:10px; align-items:end; padding:15px 10px 0; border-bottom:1px solid #dde4ed; background:repeating-linear-gradient(to bottom,transparent 0,transparent 44px,#edf1f5 45px); }
.manager-trend-chart>div { min-width:0; height:100%; display:grid; grid-template-rows:minmax(0,1fr) auto auto; gap:5px; text-align:center; }
.manager-trend-chart section { height:100%; display:flex; align-items:end; justify-content:center; gap:4px; }
.manager-trend-chart section i { width:14%; min-width:5px; max-width:13px; border-radius:5px 5px 1px 1px; }
.manager-trend-chart .reception,.manager-trend-legend .reception { background:#5a96e8; }.manager-trend-chart .follow,.manager-trend-legend .follow { background:#35bf85; }.manager-trend-chart .order,.manager-trend-legend .order { background:#f08e31; }
.manager-trend-chart b { color:#637086; font-size:9px; }.manager-trend-chart span { color:#97a1af; font-size:8px; }
.manager-trend-legend { display:flex; justify-content:center; gap:18px; margin-top:10px; color:#677488; font-size:9px; font-weight:800; }
.manager-trend-legend span { display:flex; align-items:center; gap:5px; }.manager-trend-legend i { width:8px; height:8px; border-radius:2px; }

@media (max-width:1350px) {
  .manager-result-grid { grid-template-columns:repeat(3,minmax(0,1fr)); }
  .manager-action-layout { grid-template-columns:1fr; }
}
@media (max-width:1050px) {
  .manager-command-head { align-items:stretch; flex-direction:column; }
  .manager-command-actions { justify-content:flex-start; }
  .manager-guide-desktop { display:none; }
  .manager-guide-mobile { display:grid; gap:8px; }
}
@media (max-width:720px) {
  .manager-command-head { padding:17px; border-radius:16px; }.manager-command-head h2 { font-size:23px; }
  .manager-command-actions { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); }.manager-command-actions button { min-width:0; padding-inline:8px; }
  .manager-result-grid { grid-template-columns:repeat(2,minmax(0,1fr)); }.manager-result-card { min-height:103px; padding:13px; }.manager-result-card:last-child { grid-column:1/-1; }
  .manager-priority-item { grid-template-columns:26px minmax(0,1fr) auto; }.manager-priority-item>em { font-size:18px; }.manager-priority-item button { grid-column:2/-1; width:100%; }
  .manager-guide-head { align-items:flex-start; flex-direction:column; }.manager-guide-filters { justify-content:flex-start; }
  .manager-trend-chart { gap:4px; padding-inline:3px; }.manager-trend-chart section { gap:2px; }
  .manager-live-reception { grid-template-columns:30px minmax(0,1fr) auto; gap:9px; padding:10px; }
  .manager-live-reception-stats { grid-column:2/-1; justify-content:flex-start; gap:18px; }
  .manager-live-reception>button { grid-column:3; grid-row:1; }
}

/* Compact manager cockpit: keep daily decisions inside one working screen. */
.manager-command-head-compact {
  align-items:center;
  margin-bottom:8px;
  padding:12px 16px;
  border-radius:14px;
}
.manager-command-head-compact>div:first-child { gap:4px; }
.manager-command-head-compact h2 { font-size:21px; letter-spacing:-.25px; }
.manager-command-head-compact p { font-size:11px; }
.manager-command-head-compact .manager-command-actions button { min-height:34px; padding:0 11px; }
.manager-result-grid { gap:8px; margin-bottom:8px; }
.manager-result-card { min-height:78px; gap:5px; padding:10px 13px; border-radius:12px; }
.manager-result-card>b { font-size:21px; }
.manager-result-card>i { bottom:7px; }
.manager-action-layout { gap:8px; margin-bottom:8px; }
.manager-priority-panel .panel-head,
.manager-closure-panel .panel-head,
.manager-guide-board .panel-head { min-height:46px; padding:9px 13px; }
.manager-priority-panel .panel-body,
.manager-closure-panel .panel-body { padding:9px 12px 11px; }
.manager-priority-list { gap:5px; }
.manager-priority-item {
  grid-template-columns:24px minmax(0,1fr) auto auto;
  gap:8px;
  min-height:36px;
  padding:5px 8px;
  border-radius:9px;
}
.manager-priority-rank { width:23px; height:23px; border-radius:7px; font-size:9px; }
.manager-priority-item b { font-size:11px; }
.manager-priority-item>em { font-size:17px; }
.manager-priority-item button { min-height:28px; }
.manager-closure-list { grid-template-columns:1fr 1fr; gap:10px 12px; }
.manager-progress-row { gap:5px; padding:2px 0; }
.manager-progress-row b { font-size:10px; }
.manager-progress-row span { font-size:8px; }
.manager-progress-row>em { font-size:13px; }
.manager-progress-track { height:5px; }
.manager-guide-board { overflow:hidden; }
.manager-guide-scroll { max-height:250px; overflow:auto; overscroll-behavior:contain; }
.manager-guide-board .panel-body { padding:0 10px 9px; }
.manager-guide-table th:nth-child(1) { width:14%; }
.manager-guide-table th:nth-child(2) { width:39%; }
.manager-guide-table th:nth-child(3) { width:24%; }
.manager-guide-table th:nth-child(4) { width:23%; }
.manager-guide-table th:nth-child(5) { width:auto; }
.manager-guide-table th,
.manager-guide-table td { padding-top:8px; padding-bottom:8px; }
.manager-guide-primary-action { margin-top:0; }
.manager-guide-primary-action button { min-height:29px; }

@media (max-width:1050px) {
  .manager-command-head-compact { align-items:stretch; }
  .manager-guide-scroll { max-height:350px; }
}

@media (max-width:720px) {
  .manager-command-head-compact { padding:12px; }
  .manager-command-head-compact h2 { font-size:19px; }
  .manager-closure-list { grid-template-columns:1fr; gap:9px; }
}

/* Customer workspace: one-screen task handling, with analysis and rules loaded separately. */
.customer-workspace { display:grid; gap:10px; }
.customer-workspace-head { display:flex; align-items:center; justify-content:space-between; gap:18px; }
.customer-workspace-head h2 { margin:0; color:var(--ink); font-size:24px; letter-spacing:-.4px; }
.customer-workspace-head p { margin:5px 0 0; color:var(--muted); font-size:12px; font-weight:700; }
.customer-head-actions { display:flex; align-items:center; gap:9px; }
.customer-live-search { display:flex; align-items:center; gap:8px; width:min(340px,28vw); min-height:38px; padding:0 12px; border:1px solid #d7e0ec; border-radius:9px; background:#fff; }
.customer-live-search span { color:#64748b; font-size:11px; font-weight:900; }
.customer-live-search input { width:100%; min-width:0; border:0; outline:0; background:transparent; font:inherit; }
.customer-workspace-tabs { display:flex; gap:4px; padding:4px; border:1px solid #dde5ef; border-radius:10px; background:#edf2f7; }
.customer-workspace-tabs button { display:flex; align-items:center; gap:8px; min-height:38px; padding:7px 14px; border:0; border-radius:7px; background:transparent; color:#64748b; cursor:pointer; }
.customer-workspace-tabs button b { color:inherit; font-size:13px; }
.customer-workspace-tabs button span { font-size:10px; font-weight:700; opacity:.78; }
.customer-workspace-tabs button.active { background:#fff; color:#1d4ed8; box-shadow:0 1px 4px rgba(15,23,42,.09); }
.customer-workspace-loading,.customer-workspace-empty { display:flex; align-items:center; justify-content:center; gap:10px; min-height:360px; border:1px dashed #cbd5e1; border-radius:12px; background:#fff; color:#64748b; font-weight:800; }
.customer-workspace-loading span { width:18px; height:18px; border:2px solid #bfdbfe; border-top-color:var(--blue); border-radius:50%; animation:spin .8s linear infinite; }
.customer-command-strip { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:8px; }
.customer-command-strip article { display:flex; align-items:center; justify-content:space-between; min-height:55px; padding:10px 14px; border:1px solid #e2e8f0; border-left:3px solid #94a3b8; border-radius:9px; background:#fff; }
.customer-command-strip article span { color:#64748b; font-size:11px; font-weight:900; }
.customer-command-strip article b { color:#0f172a; font-size:23px; }
.customer-command-strip article.blue { border-left-color:#3b82f6; background:#f8fbff; }
.customer-command-strip article.red { border-left-color:#ef4444; background:#fff9f9; }
.customer-command-strip article.amber { border-left-color:#f59e0b; background:#fffdf7; }
.customer-task-panel { margin:0; padding:10px 12px; }
.customer-task-chips { display:flex; align-items:center; gap:7px; overflow:auto; scrollbar-width:none; }
.customer-task-chips::-webkit-scrollbar { display:none; }
.customer-task-chips button { flex:0 0 auto; min-height:32px; padding:6px 10px; border:1px solid #dbe3ed; border-radius:8px; background:#fff; color:#475569; font-size:11px; font-weight:800; cursor:pointer; }
.customer-task-chips button b { margin-left:3px; color:#0f172a; }
.customer-task-chips button.active { border-color:#2563eb; background:#2563eb; color:#fff; }
.customer-task-chips button.active b { color:#fff; }
.customer-task-chips button.red:not(.active) b { color:#dc2626; }
.customer-task-chips button.amber:not(.active) b { color:#c2410c; }
.customer-advanced-filters { margin-top:8px; border-top:1px solid #edf1f5; }
.customer-advanced-filters>summary { width:max-content; padding-top:8px; color:#64748b; cursor:pointer; font-size:11px; font-weight:850; }
.customer-advanced-filters>summary span { margin-left:4px; color:#2563eb; }
.customer-advanced-grid { display:grid; grid-template-columns:repeat(5,minmax(120px,1fr)) auto; gap:8px; align-items:end; padding-top:9px; }
.customer-advanced-grid label { display:grid; gap:4px; color:#64748b; font-size:10px; font-weight:850; }
.customer-advanced-grid select { min-height:34px; padding:6px 9px; border:1px solid #d7e0ec; border-radius:7px; background:#fff; }
.customer-list-panel { margin:0; overflow:hidden; }
.customer-list-head { min-height:47px; padding:9px 13px; }
.customer-list-head>div { display:flex; align-items:baseline; gap:10px; }
.customer-list-head h3 { font-size:15px; }
.customer-list-head span { color:#64748b; font-size:10px; font-weight:700; }
.customer-list-head em { color:#64748b; font-style:normal; font-size:11px; font-weight:800; }
.customer-bulk-bar { display:flex; align-items:center; justify-content:space-between; gap:12px; min-height:44px; padding:7px 13px; border-top:1px solid #edf1f5; background:#fbfdff; }
.customer-bulk-bar.has-selection { background:#f0f6ff; }
.customer-bulk-bar>label,.customer-bulk-bar>div { display:flex; align-items:center; gap:9px; color:#64748b; font-size:10px; font-weight:800; }
.customer-bulk-bar input,.customer-select-column input { width:16px; height:16px; accent-color:#2563eb; }
.customer-bulk-bar b { color:#1e3a5f; font-size:11px; }
.customer-table-scroll { max-height:calc(100vh - 430px); min-height:280px; overflow:auto; overscroll-behavior:contain; border-top:1px solid #edf1f5; border-bottom:1px solid #edf1f5; }
.customer-action-table { width:100%; border-collapse:separate; border-spacing:0; table-layout:fixed; }
.customer-action-table th { position:sticky; top:0; z-index:2; padding:8px 12px; background:#f8fafc; color:#64748b; text-align:left; font-size:10px; }
.customer-action-table th:nth-child(1) { width:4%; }.customer-action-table th:nth-child(2) { width:24%; }.customer-action-table th:nth-child(3) { width:13%; }.customer-action-table th:nth-child(4) { width:18%; }.customer-action-table th:nth-child(5) { width:22%; }.customer-action-table th:nth-child(6) { width:19%; }
.customer-action-table td { padding:9px 12px; border-bottom:1px solid #edf1f5; vertical-align:middle; color:#1e293b; font-size:11px; }
.customer-action-table .customer-select-column { padding-right:4px; text-align:center; }
.customer-action-table tbody tr:hover td { background:#fbfdff; }
.customer-name-button { max-width:100%; padding:0; border:0; background:transparent; color:#0f172a; cursor:pointer; overflow:hidden; text-overflow:ellipsis; white-space:nowrap; font-size:13px; font-weight:900; }
.customer-name-button:hover { color:#2563eb; }
.customer-cell-meta { display:flex; align-items:center; gap:6px; margin-top:4px; color:#64748b; overflow:hidden; white-space:nowrap; }
.customer-cell-meta>span { overflow:hidden; text-overflow:ellipsis; }
.customer-cell-meta .customer-level { flex:0 0 auto; padding:2px 5px; border-radius:5px; background:#eef2ff; color:#4338ca; font-size:9px; font-weight:900; }
.customer-cell-meta .level-a { background:#fff1f2; color:#be123c; }
.customer-cell-sub { display:block; margin-top:4px; color:#64748b; overflow:hidden; text-overflow:ellipsis; white-space:nowrap; font-size:10px; }
.customer-priority { display:inline-flex; padding:3px 7px; border-radius:6px; background:#f1f5f9; color:#475569; font-size:10px; font-weight:900; }
.customer-priority.deal { background:#fff7ed; color:#c2410c; }.customer-priority.overdue { background:#fef2f2; color:#dc2626; }.customer-priority.new { background:#eff6ff; color:#1d4ed8; }.customer-priority.no-plan { background:#fffbea; color:#a16207; }.customer-priority.done { background:#f0fdf4; color:#15803d; }.customer-priority.lost { color:#64748b; }
.customer-row-action { display:flex; align-items:center; gap:7px; }
.customer-row-action>button { min-width:82px; }
.customer-row-action details { position:relative; }
.customer-row-action summary { padding:6px 7px; color:#64748b; cursor:pointer; list-style:none; font-size:10px; font-weight:850; }
.customer-row-action summary::-webkit-details-marker { display:none; }
.customer-row-action details>div { position:absolute; right:0; z-index:5; display:grid; width:104px; padding:5px; border:1px solid #dbe3ed; border-radius:8px; background:#fff; box-shadow:0 10px 30px rgba(15,23,42,.14); }
.customer-row-action details button { padding:7px 8px; border:0; border-radius:5px; background:transparent; text-align:left; color:#334155; cursor:pointer; font-size:11px; font-weight:800; }
.customer-row-action details button:hover { background:#f1f5f9; }
.customer-list-empty { display:grid; justify-items:center; gap:7px; padding:48px 20px; color:#64748b; }
.customer-list-empty b { color:#334155; font-size:14px; }.customer-list-empty span { font-size:11px; }.customer-list-empty button { margin-top:5px; }
.customer-pagination { display:flex; align-items:center; justify-content:space-between; min-height:45px; padding:7px 12px; color:#64748b; font-size:11px; font-weight:800; }
.customer-pagination>div { display:flex; gap:7px; }
.customer-secondary-view { display:grid; gap:10px; }
.customer-secondary-intro { padding:13px 15px; border:1px solid #dbe5ef; border-radius:10px; background:#fff; }
.customer-secondary-intro h3 { margin:0; font-size:16px; }.customer-secondary-intro p { margin:5px 0 0; color:#64748b; font-size:11px; }
.customer-secondary-view>.page-disclosure,.customer-secondary-view>.panel { margin:0; }
.customer-collaboration-workspace { display:grid; gap:10px; }
.collaboration-filter-panel { margin:0; padding:12px 14px; }
.collaboration-filter-panel form { display:grid; grid-template-columns:1fr 1fr 1fr 1fr 1fr auto auto; align-items:end; gap:8px; }
.collaboration-filter-panel label { display:grid; gap:4px; color:#64748b; font-size:10px; font-weight:850; }
.collaboration-filter-panel input,.collaboration-filter-panel select { width:100%; min-height:35px; padding:6px 8px; border:1px solid #d7e0ec; border-radius:7px; background:#fff; }
.collaboration-filter-panel p { margin:8px 0 0; color:#7b8798; font-size:10px; }
.collaboration-summary-grid { display:grid; grid-template-columns:repeat(5,minmax(0,1fr)); gap:9px; }
.collaboration-summary-grid article { display:grid; gap:4px; min-height:92px; padding:13px 14px; border:1px solid #e1e8f0; border-radius:11px; background:#fff; }
.collaboration-summary-grid article span { color:#64748b; font-size:10px; font-weight:850; }.collaboration-summary-grid article b { color:#172033; font-size:23px; line-height:1; }.collaboration-summary-grid article small { color:#8793a3; font-size:9px; }
.collaboration-summary-grid article.blue { border-color:#d8e7ff; background:#f5f9ff; }.collaboration-summary-grid article.red { border-color:#f3d4d7; background:#fff8f8; }.collaboration-summary-grid article.green { border-color:#d3ebdf; background:#f6fcf8; }.collaboration-summary-grid article.amber { border-color:#f0e2c4; background:#fffbf3; }
.collaboration-summary-grid article.blue b { color:#2563eb; }.collaboration-summary-grid article.red b { color:#dc2626; }.collaboration-summary-grid article.green b { color:#16845b; }.collaboration-summary-grid article.amber b { color:#a16207; }
.collaboration-people-panel,.collaboration-task-panel { margin:0; overflow:hidden; }
.collaboration-people-panel .panel-head,.collaboration-task-panel .panel-head { padding:11px 14px; }.collaboration-people-panel .panel-head>div,.collaboration-task-panel .panel-head>div { display:grid; gap:3px; }.collaboration-people-panel .panel-head span,.collaboration-task-panel .panel-head span { color:#64748b; font-size:10px; }.collaboration-people-panel .panel-head em,.collaboration-task-panel .panel-head em { color:#64748b; font-style:normal; font-size:10px; font-weight:800; }
.collaboration-people-scroll { max-height:320px; overflow:auto; border-top:1px solid #edf1f5; }.collaboration-people-scroll table { width:100%; border-collapse:collapse; }.collaboration-people-scroll th { position:sticky; top:0; z-index:1; padding:8px 11px; background:#f8fafc; color:#64748b; text-align:left; font-size:10px; }.collaboration-people-scroll td { padding:9px 11px; border-top:1px solid #edf1f5; color:#334155; font-size:11px; }.collaboration-people-scroll tr.risk td { background:#fffafa; }.collaboration-people-scroll td:first-child b,.collaboration-people-scroll td:first-child small { display:block; }.collaboration-people-scroll td:first-child small { margin-top:3px; color:#8390a2; font-size:9px; }
.collaboration-task-list { display:grid; max-height:430px; overflow:auto; border-top:1px solid #edf1f5; }.collaboration-task-list>article { display:grid; grid-template-columns:1.15fr 1.15fr .78fr auto; align-items:center; gap:12px; min-height:72px; padding:10px 14px; border-bottom:1px solid #edf1f5; }.collaboration-task-list>article.is-overdue { background:#fff9f9; }.collaboration-task-list>article.is-completed { background:#fbfdfc; opacity:.82; }
.collaboration-task-customer { display:flex; align-items:center; gap:8px; min-width:0; }.collaboration-task-customer>div,.collaboration-task-assignee,.collaboration-task-due { display:grid; gap:3px; min-width:0; }.collaboration-task-customer b,.collaboration-task-assignee b { overflow:hidden; color:#172033; text-overflow:ellipsis; white-space:nowrap; font-size:11px; }.collaboration-task-customer small,.collaboration-task-assignee span,.collaboration-task-due small { overflow:hidden; color:#748198; text-overflow:ellipsis; white-space:nowrap; font-size:9px; }.collaboration-task-actions { display:flex; gap:6px; }
.contact-conflict-panel { margin:0; overflow:hidden; }.contact-conflict-panel .panel-head { padding:11px 14px; }.contact-conflict-panel .panel-head>div { display:grid; gap:3px; }.contact-conflict-panel .panel-head span { color:#64748b; font-size:10px; }.contact-conflict-panel .panel-head em { color:#64748b; font-style:normal; font-size:10px; font-weight:800; }
.contact-conflict-list { display:grid; max-height:350px; overflow:auto; border-top:1px solid #edf1f5; }.contact-conflict-list>article { display:grid; grid-template-columns:1fr 1.4fr auto auto; align-items:center; gap:12px; min-height:62px; padding:9px 14px; border-bottom:1px solid #edf1f5; }.contact-conflict-list>article>div { display:grid; gap:3px; min-width:0; }.contact-conflict-list b,.contact-conflict-list span { overflow:hidden; text-overflow:ellipsis; white-space:nowrap; }.contact-conflict-list small { color:#7b8798; font-size:9px; }
.collaboration-contribution-panel { margin:0; overflow:hidden; }.collaboration-contribution-panel .panel-head { padding:11px 14px; }.collaboration-contribution-panel .panel-head>div { display:grid; gap:3px; }.collaboration-contribution-panel .panel-head span { color:#64748b; font-size:10px; }.collaboration-contribution-panel .panel-head em { color:#16845b; font-style:normal; font-size:14px; font-weight:900; }.collaboration-contribution-kpis { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:1px; border-top:1px solid #edf1f5; border-bottom:1px solid #edf1f5; background:#edf1f5; }.collaboration-contribution-kpis>div { display:grid; gap:4px; padding:11px 14px; background:#fbfcfe; }.collaboration-contribution-kpis span { color:#718096; font-size:9px; }.collaboration-contribution-kpis b { color:#172033; font-size:16px; }.collaboration-contribution-grid { display:grid; grid-template-columns:.9fr 1.35fr; gap:0; }.collaboration-contribution-grid>div { min-width:0; padding:13px 14px; }.collaboration-contribution-grid>div+div { border-left:1px solid #edf1f5; }.collaboration-contribution-grid h4 { margin:0 0 9px; color:#334155; font-size:11px; }
.collaboration-contribution-list,.collaboration-split-request-list { display:grid; gap:7px; max-height:390px; overflow:auto; }.collaboration-contribution-list>article { display:grid; grid-template-columns:34px 1fr auto; align-items:center; gap:9px; padding:9px; border:1px solid #e5ebf2; border-radius:9px; }.collaboration-contribution-rank { display:grid; place-items:center; width:30px; height:30px; border-radius:9px; background:#eaf2ff; color:#2563eb; font-weight:900; }.collaboration-contribution-list article>div { display:grid; gap:3px; min-width:0; }.collaboration-contribution-list b { font-size:11px; }.collaboration-contribution-list small,.collaboration-contribution-list article>span:last-child { color:#7b8798; font-size:9px; }.collaboration-contribution-list strong { color:#16845b; font-size:12px; }.collaboration-contribution-list article>span:last-child { grid-column:2/4; }
.collaboration-split-request-list>article { display:grid; gap:6px; padding:10px; border:1px solid #e4eaf1; border-radius:9px; background:#fff; }.collaboration-split-request-list>article.is-pending { border-color:#efd9a7; background:#fffcf5; }.collaboration-split-request-list article>div { display:flex; justify-content:space-between; gap:10px; }.collaboration-split-request-list small { color:#7b8798; font-size:9px; }.collaboration-split-request-list p { margin:0; color:#526178; font-size:9px; line-height:1.5; }.collaboration-split-request-list footer { display:flex; align-items:center; justify-content:flex-end; gap:6px; }.collaboration-split-request-list footer>.tag { margin-right:auto; }
.pc-order-split-editor>small { color:#64748b; font-size:10px; }.pc-order-split-editor label>span { display:grid; gap:2px; }.pc-order-split-editor label small { color:#7b8798; font-size:9px; }.pc-order-split-editor .pc-split-reason { grid-column:1/-1; display:grid; grid-template-columns:auto 1fr; align-items:center; gap:8px; }.m-order-split-row>span { display:grid; gap:2px; }.m-order-split-row>span small { color:#7b8798; font-size:9px; font-weight:600; }.m-order-split-pending { display:flex; align-items:center; gap:8px; padding:10px 12px; border:1px solid #efd9a7; border-radius:12px; background:#fffcf5; }.m-order-split-pending p { margin:0; color:#7c5b17; font-size:10px; }
.m-contact-conflict-sheet .m-modal-body { display:grid; gap:12px; }.m-contact-conflict-sheet .m-modal-body>p { margin:0; color:#526178; font-size:12px; line-height:1.65; }.m-contact-conflict-person { display:grid; gap:3px; padding:12px; border:1px solid #f0d4d8; border-radius:12px; background:#fff8f8; }.m-contact-conflict-person b { color:#991b1b; font-size:14px; }.m-contact-conflict-person span { color:#7f1d1d; font-size:10px; }
.customer-editor-backdrop { position:fixed; inset:0; z-index:80; background:rgba(15,23,42,.34); }
.customer-editor-drawer { position:fixed; top:0; right:0; z-index:81; width:min(560px,calc(100vw - 24px)); height:100vh; overflow:auto; padding:20px; background:#fff; box-shadow:-18px 0 60px rgba(15,23,42,.2); }
.customer-editor-drawer>header { display:flex; align-items:flex-start; justify-content:space-between; gap:14px; padding-bottom:15px; border-bottom:1px solid #e2e8f0; }
.customer-editor-drawer h3 { margin:0; font-size:20px; }.customer-editor-drawer p { margin:5px 0 0; color:#64748b; font-size:11px; }
.customer-editor-form { display:grid; grid-template-columns:1fr 1fr; gap:12px; padding-top:16px; }
.customer-editor-form>label,.customer-editor-extra label { display:grid; gap:5px; color:#475569; font-size:11px; font-weight:850; }
.customer-editor-form input,.customer-editor-form select,.customer-editor-form textarea { width:100%; min-height:38px; padding:8px 10px; border:1px solid #d7e0ec; border-radius:8px; background:#fff; }
.customer-editor-form .full { grid-column:1/-1; }.customer-editor-form>details { padding:10px 12px; border:1px solid #e2e8f0; border-radius:9px; }.customer-editor-form>details summary { cursor:pointer; font-size:12px; font-weight:900; }
.customer-editor-extra { display:grid; grid-template-columns:1fr 1fr; gap:10px; padding-top:12px; }.customer-editor-extra .full { grid-column:1/-1; }
.customer-editor-form footer { display:flex; justify-content:flex-end; gap:9px; padding-top:4px; }
.customer-bulk-collaboration-drawer { width:min(500px,calc(100vw - 24px)); }
.customer-bulk-note { padding:11px 12px; border:1px solid #dbe8f8; border-radius:8px; background:#f4f8fd; color:#52657b; font-size:11px; line-height:1.65; }
.customer-portrait { position:fixed; top:0; right:0; z-index:79; width:min(820px,calc(100vw - 24px)); height:100vh; margin:0; overflow:auto; border-radius:0; box-shadow:-18px 0 60px rgba(15,23,42,.2); }

@media (max-width:1100px) {
  .customer-workspace-head { align-items:flex-start; }.customer-head-actions { flex-wrap:wrap; justify-content:flex-end; }.customer-live-search { width:260px; }
  .customer-advanced-grid { grid-template-columns:repeat(3,minmax(120px,1fr)); }
  .customer-action-table th:nth-child(3),.customer-action-table td:nth-child(3) { display:none; }
  .customer-action-table th:nth-child(1) { width:5%; }.customer-action-table th:nth-child(2) { width:28%; }.customer-action-table th:nth-child(4) { width:22%; }.customer-action-table th:nth-child(5) { width:25%; }.customer-action-table th:nth-child(6) { width:20%; }
  .collaboration-filter-panel form { grid-template-columns:repeat(3,minmax(130px,1fr)); }
  .collaboration-summary-grid { grid-template-columns:repeat(3,minmax(0,1fr)); }
  .collaboration-task-list>article { grid-template-columns:1fr 1fr auto; }.collaboration-task-due { display:none; }
  .collaboration-contribution-grid { grid-template-columns:1fr; }.collaboration-contribution-grid>div+div { border-left:0; border-top:1px solid #edf1f5; }
}

/* Owner mobile command center: role-specific whole-store visibility. */
.m-owner-shell { background:radial-gradient(72% 260px at 12% -70px,rgba(23,179,146,.16),transparent),radial-gradient(64% 240px at 92% -60px,rgba(109,79,196,.12),transparent),#f3f4f6; }
.m-owner-shell .m-topbar { border-bottom:1px solid rgba(231,234,236,.8); background:rgba(250,251,250,.85); backdrop-filter:blur(16px) saturate(160%); padding-bottom:8px; }
.m-owner-shell .m-app-title b#ownerShellTitle { display:block; overflow:hidden; color:#161f27; font-size:24px; font-weight:700; letter-spacing:-.3px; text-overflow:ellipsis; white-space:nowrap; }
.m-owner-shell .m-content { gap:10px; padding:10px 12px 22px; }
.m-owner-shell .m-tabbar { grid-template-columns:repeat(6,minmax(0,1fr)); grid-template-rows:minmax(58px,1fr); grid-auto-flow:column; gap:0; margin:0; padding:6px 4px calc(6px + env(safe-area-inset-bottom)); border:0; border-top:1px solid #e7eaec; border-radius:0; background:rgba(255,255,255,.92); box-shadow:none; backdrop-filter:blur(16px) saturate(160%); }
.m-owner-shell .m-tabbar-btn { width:100%; min-width:0; min-height:58px; padding-inline:1px; overflow:hidden; font-size:10px; }
.m-owner-shell .m-tabbar-btn .m-nav-label { overflow:hidden; text-overflow:clip; white-space:nowrap; }
.m-owner-shell .m-tabbar-btn.active { color:#085c4c; background:transparent; font-weight:700; }
.m-owner-shell .m-tabbar-btn.active::after { display:none; }
.m-owner-shell .m-tabbar-btn.active .m-nav-icon { color:#085c4c; }
.m-nav-svg { display:grid; place-items:center; width:24px; height:24px; }
.m-nav-svg svg { width:22px; height:22px; display:block; }
.m-nav-icon-overview::before { content:''; position:absolute; left:3px; top:4px; width:7px; height:16px; border:2px solid currentColor; border-radius:3px; box-shadow:11px 0 0 -2px #fff,11px 0 0 0 currentColor; }
.m-owner-shell .m-tabbar-btn.active .m-nav-icon-overview::before { box-shadow:11px 0 0 -2px #edf1f6,11px 0 0 0 currentColor; }
.m-nav-icon-overview i { left:7px; top:11px; width:10px; height:2px; border-radius:2px; background:currentColor; transform:rotate(-38deg); }
.m-nav-icon-chart::before { content:''; position:absolute; left:2px; bottom:3px; width:20px; height:17px; border-left:2px solid currentColor; border-bottom:2px solid currentColor; border-radius:0 0 0 3px; }
.m-nav-icon-chart i { left:6px; top:12px; width:5px; height:7px; border-radius:2px 2px 0 0; background:currentColor; box-shadow:7px -5px 0 currentColor,14px -10px 0 currentColor; }
.m-nav-icon-delivery::before { content:''; position:absolute; left:2px; top:7px; width:13px; height:10px; border:2px solid currentColor; border-radius:2px; }
.m-nav-icon-delivery::after { content:''; position:absolute; left:15px; top:10px; width:7px; height:7px; border:2px solid currentColor; border-left:0; border-radius:0 3px 2px 0; clip-path:polygon(0 0,65% 0,100% 45%,100% 100%,0 100%); }
.m-nav-icon-delivery i::before,.m-nav-icon-delivery i::after { content:''; position:absolute; top:17px; width:5px; height:5px; border:2px solid currentColor; border-radius:50%; background:#fff; }
.m-nav-icon-delivery i::before { left:5px; }.m-nav-icon-delivery i::after { left:16px; }
.m-owner-shell .m-tabbar-btn.active .m-nav-icon-delivery i::before,.m-owner-shell .m-tabbar-btn.active .m-nav-icon-delivery i::after { background:#edf1f6; }
.m-nav-icon-team::before { content:''; position:absolute; left:7px; top:2px; width:10px; height:10px; border:2px solid currentColor; border-radius:50%; }
.m-nav-icon-team::after { content:''; position:absolute; left:3px; bottom:1px; width:18px; height:9px; border:2px solid currentColor; border-bottom:0; border-radius:12px 12px 0 0; }
.m-nav-icon-team i::before,.m-nav-icon-team i::after { content:''; position:absolute; top:6px; width:6px; height:6px; border:2px solid currentColor; border-radius:50%; }
.m-nav-icon-team i::before { left:0; }.m-nav-icon-team i::after { left:18px; }
.m-nav-icon-shield::before { content:''; position:absolute; left:4px; top:2px; width:16px; height:20px; border:2px solid currentColor; border-radius:9px 9px 11px 11px; clip-path:polygon(0 0,100% 0,100% 72%,50% 100%,0 72%); }
.m-nav-icon-shield i { left:11px; top:6px; width:2px; height:8px; border-radius:2px; background:currentColor; box-shadow:0 10px 0 -0.2px currentColor; }
.om-scope-head { display:grid; grid-template-columns:minmax(0,1fr) 34px; gap:6px 10px; align-items:center; padding:0 2px 2px; }
.om-scope-head>p { margin:0; overflow:hidden; color:#64707a; font-size:12.5px; font-weight:500; text-overflow:ellipsis; white-space:nowrap; }
.om-refresh { width:34px; height:30px; border:0; border-radius:10px; color:#64707a; background:transparent; font-size:17px; }
.om-periods { position:relative; grid-column:1/-1; display:grid; grid-template-columns:repeat(3,1fr); padding:4px; border:0; border-radius:14px; background:rgba(22,31,39,.06); }
.om-periods-thumb { position:absolute; top:4px; bottom:4px; left:4px; width:calc((100% - 8px) / 3); border-radius:11px; background:#fff; box-shadow:0 3px 10px rgba(22,31,39,.16),0 1px 2px rgba(22,31,39,.1); transition:transform .35s cubic-bezier(.3,1.2,.4,1); }
.om-periods button { position:relative; min-height:34px; border:0; border-radius:10px; color:#64707a; background:transparent; font-size:12.5px; font-weight:600; transition:color .25s; }
.om-periods button.active { color:#161f27; font-weight:700; }
.om-periods button:active:not(.active) { opacity:.5; }
@media (prefers-reduced-motion:reduce) { .om-periods-thumb { transition:none; } }
.om-store-select { grid-column:1/-1; min-width:0; height:41px; border:1px solid #e2e7ea; border-radius:12px; padding:0 8px; color:#334155; background:#fff; font-size:12px; font-weight:600; }
.om-bento { display:grid; grid-template-columns:repeat(6,1fr); gap:9px; }
.om-cell { min-width:0; border-radius:18px; }
.om-money { grid-column:span 4; grid-row:span 2; position:relative; overflow:hidden; display:grid; align-content:space-between; gap:12px; padding:15px 15px 13px; color:#fff; background:linear-gradient(160deg,#17b392 0%,#0e8a72 55%,#0a6b58 100%); box-shadow:0 18px 34px -16px rgba(10,107,88,.65); }
.om-money::after { content:''; position:absolute; top:-76px; right:-44px; width:200px; height:200px; border-radius:50%; background:radial-gradient(circle,rgba(255,255,255,.22),rgba(255,255,255,0) 68%); }
.om-money::before { content:''; position:absolute; left:0; right:0; top:0; height:1px; background:linear-gradient(90deg,transparent,rgba(255,255,255,.5),transparent); }
.om-money-main { position:relative; }
.om-money-main span { font-size:11px; font-weight:600; color:rgba(255,255,255,.78); }
.om-money-main strong { display:block; margin-top:5px; font-size:34px; font-weight:800; line-height:1.05; letter-spacing:-.5px; font-variant-numeric:tabular-nums; }
.om-money-main strong em { font-style:normal; }
.om-money-main small { display:block; margin-top:5px; font-size:10.5px; font-weight:700; color:rgba(255,255,255,.72); }
.om-money-main small.up { color:#a7f3d0; }.om-money-main small.down { color:#fecaca; }
.om-money-flow { position:relative; display:grid; grid-template-columns:1fr 1fr 1fr; gap:8px; padding-top:10px; border-top:1px solid rgba(255,255,255,.18); }
.om-money-flow>div { min-width:0; }
.om-money-flow i { display:block; font-style:normal; font-size:10px; font-weight:600; color:rgba(255,255,255,.65); }
.om-money-flow b { font-size:15px; font-weight:700; font-variant-numeric:tabular-nums; white-space:nowrap; }
.om-money-flow b em { font-style:normal; }
.om-rate { grid-column:span 2; display:grid; justify-items:center; align-content:center; gap:5px; padding:10px 8px; background:#fff; box-shadow:0 1px 2px rgba(23,34,43,.05); }
.om-ring { position:relative; width:60px; height:60px; }
.om-ring svg { display:block; width:100%; height:100%; transform:rotate(-90deg); }
.om-ring-track { stroke:rgba(14,138,114,.14); }
.om-ring-arc { stroke:#17b392; stroke-linecap:round; }
.om-ring b { position:absolute; inset:0; display:grid; place-content:center; color:#085c4c; font-size:14px; font-weight:800; font-variant-numeric:tabular-nums; }
.om-rate>span { color:#66737d; font-size:11px; font-weight:600; }
.om-live-cell { grid-column:span 2; display:grid; justify-items:center; align-content:center; gap:3px; padding:10px 8px; border:0; border-radius:18px; color:#17222b; background:#fff; box-shadow:0 1px 2px rgba(23,34,43,.05); text-align:center; }
.om-live-cell i { position:relative; width:9px; height:9px; margin-bottom:2px; border-radius:50%; background:#97a2aa; }
.om-live-cell.on i { background:#14b8a0; }
.om-live-cell.on i::after { content:''; position:absolute; inset:0; border-radius:50%; border:1px solid #14b8a0; animation:omPing 2.6s ease-out infinite; }
@keyframes omPing { from { transform:scale(1); opacity:.9; } to { transform:scale(3); opacity:0; } }
.om-live-cell b { font-size:16px; font-weight:800; font-variant-numeric:tabular-nums; }
.om-live-cell span { color:#66737d; font-size:11px; font-weight:600; }
.om-tile { padding:13px 14px; display:grid; gap:2px; align-content:start; background:#fff; box-shadow:0 2px 8px rgba(22,31,39,.06); }
.om-tile-top { display:flex; align-items:center; gap:7px; margin-bottom:6px; }
.om-tile-ic { flex:none; width:26px; height:26px; display:grid; place-items:center; border-radius:8px; color:#fff; background:#8e98a0; }
.om-tile-ic svg { width:14px; height:14px; }
.om-tile-top>span:not(.om-tile-ic) { color:#64707a; font-size:12px; font-weight:600; }
.om-tile>b { overflow:hidden; color:#161f27; font-size:26px; font-weight:800; letter-spacing:-.01em; text-overflow:ellipsis; white-space:nowrap; font-variant-numeric:tabular-nums; }
.om-tile>b em { font-style:normal; }
.om-tile>b>i { margin-left:2px; color:#64707a; font-size:11.5px; font-style:normal; font-weight:500; }
.om-tile>small { font-size:10.5px; font-weight:700; }
.om-tile small.up { color:#0e8a72; }.om-tile small.down { color:#c74228; }.om-tile small.flat { color:#97a1a9; }
.om-tile.blue { grid-column:span 3; background:#ddeaf8; }.om-tile.blue .om-tile-ic { background:#2569b3; box-shadow:0 3px 8px rgba(37,105,179,.3); }.om-tile.blue .om-tile-top>span:not(.om-tile-ic) { color:#2569b3; }.om-tile.blue>b { color:#174e89; }
.om-tile.teal { grid-column:span 3; background:#dcf0e9; }.om-tile.teal .om-tile-ic { background:#0e8a72; box-shadow:0 3px 8px rgba(14,138,114,.3); }.om-tile.teal .om-tile-top>span:not(.om-tile-ic) { color:#0e8a72; }.om-tile.teal>b { color:#085c4c; }
.om-tile.violet { grid-column:span 4; background:#e8e2f9; }.om-tile.violet .om-tile-ic { background:#6d4fc4; box-shadow:0 3px 8px rgba(109,79,196,.3); }.om-tile.violet .om-tile-top>span:not(.om-tile-ic) { color:#6d4fc4; }.om-tile.violet>b { color:#4f3596; }
.om-tile.amber { grid-column:span 3; background:#faecd2; }.om-tile.amber .om-tile-ic { background:#d98f13; box-shadow:0 3px 8px rgba(192,126,18,.3); }.om-tile.amber .om-tile-top>span:not(.om-tile-ic) { color:#c07e12; }.om-tile.amber>b { color:#8f5d06; }
.om-tile.red { grid-column:span 3; background:#fbe4dc; }.om-tile.red .om-tile-ic { background:#c74228; box-shadow:0 3px 8px rgba(199,66,40,.3); }.om-tile.red .om-tile-top>span:not(.om-tile-ic) { color:#c74228; }.om-tile.red>b { color:#9c3018; }
.om-tile.plain { grid-column:span 3; }
.om-crew { grid-column:span 2; display:grid; gap:7px; align-content:center; padding:13px 12px; background:#faecd2; }
.om-crew>span { color:#c07e12; font-size:11px; font-weight:700; }
.om-crew-dots { display:grid; grid-template-columns:repeat(4,1fr); gap:4px; }
.om-crew-dots i { height:12px; border-radius:5px; background:rgba(192,126,18,.18); }
.om-crew-dots i.on { background:linear-gradient(180deg,#e9a21b,#c07e12); box-shadow:0 2px 5px rgba(192,126,18,.35); }
.om-crew>em { color:#17222b; font-size:12px; font-style:normal; font-weight:800; font-variant-numeric:tabular-nums; }
@media (prefers-reduced-motion:no-preference) {
  .om-bento>*,.om-insight,.om-quick-grid,.om-daily-summary { animation:omRise .45s cubic-bezier(.2,.9,.3,1) backwards; }
  .om-bento>*:nth-child(2) { animation-delay:.04s; }.om-bento>*:nth-child(3) { animation-delay:.08s; }.om-bento>*:nth-child(4) { animation-delay:.12s; }.om-bento>*:nth-child(5) { animation-delay:.16s; }.om-bento>*:nth-child(6) { animation-delay:.2s; }.om-bento>*:nth-child(7) { animation-delay:.24s; }.om-bento>*:nth-child(8) { animation-delay:.28s; }.om-bento>*:nth-child(9) { animation-delay:.32s; }
  .om-daily-summary { animation-delay:.36s; }.om-insight { animation-delay:.4s; }.om-quick-grid { animation-delay:.44s; }
  .om-crew-dots i.on { animation:omPop .35s cubic-bezier(.3,1.6,.5,1) backwards; }
  .om-crew-dots i.on:nth-child(1) { animation-delay:.45s; }.om-crew-dots i.on:nth-child(2) { animation-delay:.53s; }.om-crew-dots i.on:nth-child(3) { animation-delay:.61s; }.om-crew-dots i.on:nth-child(4) { animation-delay:.69s; }.om-crew-dots i.on:nth-child(n+5) { animation-delay:.77s; }
}
@keyframes omRise { from { opacity:0; transform:translateY(10px) scale(.985); } }
@keyframes omPop { from { transform:scale(0); } }
.om-metric-grid,.om-sales-summary,.om-customer-hero,.om-delivery-kpis,.om-team-pulse { display:grid; grid-template-columns:repeat(6,1fr); gap:9px; }
.om-tile.wide { grid-column:span 6; }
.om-tile.wide>b { font-size:30px; }
.om-customer-hero .om-tile.violet,.om-customer-hero .om-tile.red { grid-column:span 3; }
.om-team-pulse .om-tile { grid-column:span 3; }
.om-metric { position:relative; display:grid; gap:5px; min-width:0; padding:13px; overflow:hidden; border:1px solid #e0e6ee; border-left:4px solid #94a3b8; border-radius:15px; background:#fff; box-shadow:0 6px 18px rgba(15,23,42,.045); }.om-metric.blue { border-left-color:#3b82f6; }.om-metric.green { border-left-color:#10b981; }.om-metric.orange { border-left-color:#f59e0b; }.om-metric.red { border-left-color:#ef4444; }
.om-metric.live { border-left-color:#0f9f8f; background:linear-gradient(135deg,#fff,#effcf9); }
.om-metric span { color:#64748b; font-size:10px; font-weight:850; }.om-metric b { overflow:hidden; color:#172033; font-size:21px; text-overflow:ellipsis; white-space:nowrap; }.om-metric small { font-size:9px; font-weight:850; }.om-metric small.up { color:#059669; }.om-metric small.down { color:#dc2626; }.om-metric small.flat { color:#94a3b8; }

.om-insight { display:grid; grid-template-columns:minmax(0,1fr) auto; gap:4px 12px; border:0; border-radius:16px; padding:13px 15px; color:#17222b; background:linear-gradient(100deg,#f8eeda,#fbf4e4); text-align:left; }.om-insight.danger { background:linear-gradient(100deg,#fae9e3,#fbf0e8); }.om-insight.good { background:linear-gradient(100deg,#e1f0ec,#eaf5f0); }.om-insight>span { color:#b27a1e; font-size:11px; font-weight:700; }.om-insight.danger>span { color:#c24a2e; }.om-insight.good>span { color:#0f7a68; }.om-insight>b { grid-column:1/-1; font-size:15px; line-height:1.4; }.om-insight p { margin:0; color:#66737d; font-size:12px; line-height:1.5; }.om-insight i { align-self:end; color:#17222b; font-size:11px; font-style:normal; font-weight:700; white-space:nowrap; }
.om-quick-grid { display:grid; grid-template-columns:1fr 1fr; gap:9px; }.om-quick-grid button { min-width:0; min-height:88px; display:grid; grid-template-columns:32px minmax(0,1fr) auto; grid-template-rows:auto auto; align-items:center; gap:4px 9px; border:0; border-radius:18px; padding:12px; color:#161f27; background:#fff; box-shadow:0 2px 8px rgba(22,31,39,.06); text-align:left; transition:transform .15s; }.om-quick-grid button:active { transform:scale(.97); }.om-quick-grid i { grid-row:1/3; width:32px; height:32px; display:grid; place-items:center; border-radius:11px; color:#fff; background:#8e98a0; font-style:normal; }.om-quick-grid i svg { width:16px; height:16px; }.om-quick-grid .reception { background:#ddeaf8; }.om-quick-grid .reception i { background:#2569b3; }.om-quick-grid .sales { background:#dcf0e9; }.om-quick-grid .sales i { background:#0e8a72; }.om-quick-grid .customer { background:#e8e2f9; }.om-quick-grid .customer i { background:#6d4fc4; }.om-quick-grid .team { background:#faecd2; }.om-quick-grid .team i { background:#d98f13; }.om-quick-grid .risk { background:#fbe4dc; }.om-quick-grid .risk i { background:#c74228; }.om-quick-grid span { align-self:end; color:#64707a; font-size:11.5px; font-weight:700; }.om-quick-grid .reception span { color:#174e89; }.om-quick-grid .sales span { color:#085c4c; }.om-quick-grid .customer span { color:#4f3596; }.om-quick-grid .team span { color:#8f5d06; }.om-quick-grid .risk span { color:#9c3018; }.om-quick-grid b { align-self:start; overflow:hidden; color:#161f27; font-size:12px; text-overflow:ellipsis; white-space:nowrap; font-variant-numeric:tabular-nums; }.om-quick-grid em { grid-column:3; grid-row:1/3; color:rgba(22,31,39,.35); font-size:20px; font-style:normal; }
.om-section { scroll-margin-top:8px; padding:15px; border:0; border-radius:20px; background:#fff; box-shadow:0 2px 8px rgba(22,31,39,.06); }.om-section>header { display:flex; align-items:flex-start; justify-content:space-between; gap:10px; margin-bottom:12px; }.om-section header>div { min-width:0; }.om-section header span { color:#8a959d; font-size:11px; font-weight:600; }.om-section header h2 { margin:2px 0 0; color:#161f27; font-size:15.5px; }.om-section header p { margin:2px 0 0; color:#64707a; font-size:11px; }.om-section header>button { flex:0 0 auto; border:0; padding:3px; color:#0e8a72; background:transparent; font-size:11.5px; font-weight:700; }.om-section header>b { color:#c74228; font-size:12px; }
.om-order-list { display:grid; }.om-order-list article { display:grid; grid-template-columns:minmax(0,1fr) auto; gap:4px 10px; align-items:center; padding:12px 0; border-top:1px solid #edf0f2; }.om-order-list article:first-child { border-top:0; }.om-order-list article div { min-width:0; }.om-order-list article b,.om-order-list article span { display:block; overflow:hidden; text-overflow:ellipsis; white-space:nowrap; }.om-order-list article b { font-size:12.5px; }.om-order-list article span { margin-top:3px; color:#64707a; font-size:11px; }.om-order-list article strong { color:#161f27; font-size:13.5px; font-weight:700; font-variant-numeric:tabular-nums; }.om-order-list article small { grid-column:2; color:#0e8a72; text-align:right; font-size:11px; font-weight:700; }.om-order-list article small.risk { color:#c74228; }
.om-today-sales { overflow:hidden; }.om-today-guide-list { display:grid; gap:0; }.om-today-guide-list article { display:grid; grid-template-columns:24px minmax(0,1fr) auto; gap:8px; align-items:center; padding:10px 0; border-top:1px solid #edf0f2; }.om-today-guide-list article:first-child { border-top:0; }.om-today-guide-rank { width:22px; height:22px; display:grid; place-items:center; border-radius:7px; color:#315bc8; background:#edf3ff; font-size:11px; font-weight:800; }.om-today-guide-copy { min-width:0; }.om-today-guide-copy b,.om-today-guide-copy small { display:block; overflow:hidden; text-overflow:ellipsis; white-space:nowrap; }.om-today-guide-copy b { font-size:13px; }.om-today-guide-copy small { margin-top:3px; color:#7f8c9b; font-size:10.5px; }.om-today-guide-list article>strong { color:#182230; font-size:14px; font-variant-numeric:tabular-nums; }.om-today-guide-list article>em { grid-column:2 / -1; justify-self:end; color:#0c8c72; font-size:10.5px; font-style:normal; }.om-today-guide-list article>em.risk { color:#c74b31; }.om-today-orders { margin-top:10px; padding-top:10px; border-top:1px solid #edf0f2; }.om-today-orders-head { display:flex; justify-content:space-between; align-items:center; margin-bottom:2px; }.om-today-orders-head b { font-size:12px; }.om-today-orders-head span { color:#8a959d; font-size:10.5px; }.om-today-orders button { width:100%; display:grid; grid-template-columns:minmax(0,1fr) auto; gap:3px 8px; padding:10px 0; border:0; border-top:1px solid #f0f2f4; background:transparent; text-align:left; }.om-today-orders button span { min-width:0; }.om-today-orders button b,.om-today-orders button small { display:block; overflow:hidden; text-overflow:ellipsis; white-space:nowrap; }.om-today-orders button b { color:#182230; font-size:12px; }.om-today-orders button small { margin-top:3px; color:#7f8c9b; font-size:10.5px; }.om-today-orders button strong { color:#182230; font-size:13px; }.om-today-orders button em { grid-column:2; color:#0c8c72; font-size:10.5px; font-style:normal; text-align:right; }.om-today-orders button em.risk { color:#c74b31; }
.om-live-section { padding:15px; border:0; border-radius:20px; background:#fff; box-shadow:0 2px 8px rgba(22,31,39,.06); }.om-live-section.active { background:linear-gradient(150deg,#fff 40%,#eefaf6); box-shadow:0 4px 14px rgba(18,185,156,.14); }.om-live-section.has-overtime { background:linear-gradient(150deg,#fff 40%,#fdf0eb); box-shadow:0 4px 14px rgba(199,66,40,.12); }.om-live-section>header { display:flex; align-items:flex-start; justify-content:space-between; gap:10px; margin-bottom:11px; }.om-live-section header>div>span { display:flex; align-items:center; gap:6px; color:#0e8a72; font-size:11px; font-weight:700; }.om-live-section header>div>span i { width:8px; height:8px; border-radius:50%; background:#12b99c; box-shadow:0 0 0 4px rgba(18,185,156,.14); animation:om-live-pulse 1.8s ease-in-out infinite; }.om-live-section h2 { margin:3px 0 2px; color:#161f27; font-size:15.5px; }.om-live-section header p { margin:0; color:#64707a; font-size:11px; }.om-live-section header>button { border:0; padding:4px; color:#0e8a72; background:transparent; font-size:11.5px; font-weight:700; }.om-live-section>footer { margin-top:10px; color:#97a1a9; font-size:10.5px; text-align:center; }.om-live-list { display:grid; gap:9px; }.om-live-card { display:grid; gap:10px; padding:12px; border:0; border-left:4px solid #12b99c; border-radius:15px; background:#f6faf9; }.om-live-card.long { border-left-color:#d98f13; background:#fbf6ec; }.om-live-card.overtime { border-left-color:#c74228; background:#fbf0ec; }.om-live-person { display:grid; grid-template-columns:35px minmax(0,1fr) auto; align-items:center; gap:9px; }.om-live-avatar { width:35px; height:35px; display:grid; place-items:center; border-radius:12px; color:#fff; background:linear-gradient(145deg,#17b392,#0a6b58); font-size:13px; font-weight:700; }.om-live-person>div { min-width:0; }.om-live-person b,.om-live-person small { display:block; overflow:hidden; text-overflow:ellipsis; white-space:nowrap; }.om-live-person b { font-size:12.5px; }.om-live-person small { margin-top:3px; color:#64707a; font-size:10.5px; }.om-live-time { display:grid; justify-items:end; gap:3px; }.om-live-time em { color:#0e8a72; font-size:11px; font-style:normal; font-weight:700; white-space:nowrap; font-variant-numeric:tabular-nums; }.om-live-time strong:empty { display:none; }.om-live-time strong { padding:3px 7px; border-radius:7px; color:#8f5d06; background:#faecd2; font-size:10px; font-weight:700; }.om-live-card.overtime .om-live-time em { color:#c74228; }.om-live-card.overtime .om-live-time strong { color:#fff; background:#c74228; }.om-live-customer { display:flex; align-items:center; justify-content:space-between; gap:10px; padding:10px 11px; border-radius:12px; background:#fff; }.om-live-customer>div { min-width:0; }.om-live-customer span,.om-live-customer b,.om-live-customer small { display:block; }.om-live-customer span { color:#8a959d; font-size:10.5px; }.om-live-customer b { margin-top:3px; overflow:hidden; font-size:12.5px; text-overflow:ellipsis; white-space:nowrap; }.om-live-customer small { margin-top:3px; color:#64707a; font-size:10.5px; }.om-live-customer button { flex:0 0 auto; border:0; padding:5px; color:#0e8a72; background:transparent; font-size:11px; font-weight:700; }.om-live-unlinked { flex:0 0 auto; padding:5px 8px; border-radius:8px; color:#8f5d06!important; background:#faecd2; font-size:10.5px!important; font-weight:700; }.om-live-progress { display:grid; grid-template-columns:auto 1fr auto 1fr auto 1fr auto; align-items:center; gap:5px; }.om-live-progress span { color:#97a1a9; font-size:10.5px; font-weight:600; }.om-live-progress span:first-child,.om-live-progress span.done { color:#0e8a72; font-weight:700; }.om-live-progress i { height:2px; border-radius:2px; background:#dde5e2; }.om-live-card>p { margin:0; color:#64707a; font-size:10.5px; line-height:1.5; }.om-live-actions { display:flex; justify-content:flex-end; }.om-live-nudge { padding:8px 14px; border:0; border-radius:11px; background:#d98f13; color:#fff; font-size:11.5px; font-weight:700; box-shadow:0 3px 8px rgba(192,126,18,.3); }.om-live-card.overtime .om-live-nudge { background:#c74228; box-shadow:0 3px 8px rgba(199,66,40,.3); }.om-live-nudge:disabled { background:#97a1a9; box-shadow:none; }.om-live-empty { display:flex; align-items:center; gap:10px; padding:14px; border-radius:14px; background:#f6f8f8; }.om-live-empty>i { width:30px; height:30px; display:grid; place-items:center; border-radius:50%; color:#0e8a72; background:#dcf0e9; font-style:normal; font-weight:700; }.om-live-empty span b,.om-live-empty span small { display:block; }.om-live-empty span b { font-size:12px; }.om-live-empty span small { margin-top:3px; color:#64707a; font-size:11px; }
@keyframes om-live-pulse { 0%,100% { opacity:1; transform:scale(1); } 50% { opacity:.55; transform:scale(.82); } }
.om-store-comparison { padding:15px; border:0; border-radius:20px; background:#fff; box-shadow:0 2px 8px rgba(22,31,39,.06); }.om-store-comparison>header { display:flex; align-items:flex-start; justify-content:space-between; gap:10px; margin-bottom:12px; }.om-store-comparison header span { color:#8a959d; font-size:11px; font-weight:600; }.om-store-comparison h2 { margin:2px 0 2px; color:#161f27; font-size:15.5px; }.om-store-comparison header p { margin:0; color:#64707a; font-size:11px; }.om-store-comparison header button { flex:0 0 auto; border:0; padding:4px; color:#0e8a72; background:transparent; font-size:11.5px; font-weight:700; }.om-store-list { display:grid; gap:9px; }.om-store-list>button { min-width:0; display:grid; gap:8px; border:0; border-radius:15px; padding:12px; color:#161f27; background:#f6f8f8; text-align:left; }.om-store-list>button:first-child { background:#ddeaf8; }.om-store-rank { display:grid; grid-template-columns:28px minmax(0,1fr) auto; align-items:center; gap:9px; }.om-store-rank>i { width:27px; height:27px; display:grid; place-items:center; border-radius:9px; color:#64707a; background:#fff; font-size:11px; font-style:normal; font-weight:700; }.om-store-list>button:first-child .om-store-rank>i { color:#fff; background:#2569b3; box-shadow:0 3px 8px rgba(37,105,179,.3); }.om-store-rank span { min-width:0; }.om-store-rank b,.om-store-rank small { display:block; overflow:hidden; text-overflow:ellipsis; white-space:nowrap; }.om-store-rank b { font-size:12.5px; }.om-store-rank small { margin-top:3px; color:#64707a; font-size:10.5px; }.om-store-rank strong { color:#161f27; font-size:13.5px; font-weight:700; font-variant-numeric:tabular-nums; }.om-store-bar { display:grid; grid-template-columns:minmax(50px,1fr) 42px; align-items:center; gap:8px; }.om-store-bar>i { height:7px; overflow:hidden; border-radius:7px; background:rgba(22,31,39,.07); }.om-store-bar>i em { display:block; height:100%; border-radius:inherit; background:linear-gradient(90deg,#2569b3,#5b9bd9); }.om-store-bar>span { color:#085c4c; text-align:right; font-size:11px; font-weight:700; font-variant-numeric:tabular-nums; }.om-store-foot { display:flex; align-items:center; gap:9px; color:#64707a; font-size:10.5px; }.om-store-foot em { margin-left:auto; color:#0e8a72; font-size:10.5px; font-style:normal; font-weight:700; }.om-store-comparison.compact .om-store-list>button:nth-child(n+4) { display:none; }
.om-business-alerts { scroll-margin-top:8px; padding:15px; border:0; border-radius:20px; background:#fff; box-shadow:0 2px 8px rgba(22,31,39,.06); }.om-business-alerts>header { display:flex; align-items:flex-start; justify-content:space-between; gap:10px; margin-bottom:12px; }.om-business-alerts header span { color:#c74228; font-size:11px; font-weight:600; }.om-business-alerts h2 { margin:2px 0 2px; color:#161f27; font-size:15.5px; }.om-business-alerts header p { margin:0; color:#64707a; font-size:11px; }.om-business-alerts header button { flex:0 0 auto; border:0; padding:4px; color:#c74228; background:transparent; font-size:11.5px; font-weight:700; }.om-alert-list { display:grid; gap:9px; }.om-alert-list>button { min-width:0; display:grid; grid-template-columns:28px minmax(0,1fr) auto; align-items:center; gap:4px 10px; border:0; border-radius:14px; padding:11px 12px; color:#161f27; background:#faecd2; text-align:left; }.om-alert-list>button.critical { background:#fbe4dc; }.om-alert-list>button.info { background:#ddeaf8; }.om-alert-list>button>i { grid-row:1/3; width:27px; height:27px; display:grid; place-items:center; border-radius:9px; color:#fff; background:#d98f13; font-size:12px; font-style:normal; font-weight:700; }.om-alert-list>button.critical>i { background:#c74228; }.om-alert-list>button.info>i { background:#2569b3; }.om-alert-list button>span { min-width:0; }.om-alert-list button b,.om-alert-list button small { display:block; overflow:hidden; text-overflow:ellipsis; white-space:nowrap; }.om-alert-list button b { font-size:12.5px; }.om-alert-list button small { margin-top:3px; color:#64707a; font-size:11px; }.om-alert-list button strong { font-size:12px; font-weight:700; white-space:nowrap; font-variant-numeric:tabular-nums; }.om-alert-list button em { grid-column:3; color:#9c3018; text-align:right; font-size:11px; font-style:normal; font-weight:700; }.om-alert-empty { display:flex; align-items:center; gap:10px; padding:13px; border-radius:14px; background:#dcf0e9; }.om-alert-empty>i { width:30px; height:30px; display:grid; place-items:center; border-radius:50%; color:#085c4c; background:#fff; font-style:normal; font-weight:700; }.om-alert-empty span b,.om-alert-empty span small { display:block; }.om-alert-empty span b { font-size:12px; }.om-alert-empty span small { margin-top:3px; color:#64707a; font-size:11px; }
.om-target-progress { scroll-margin-top:8px; padding:15px; border:0; border-radius:20px; background:#fff; box-shadow:0 2px 8px rgba(22,31,39,.06); }.om-target-progress>header { display:flex; align-items:flex-start; justify-content:space-between; gap:10px; margin-bottom:12px; }.om-target-progress header span { color:#8a959d; font-size:11px; font-weight:600; }.om-target-progress h2 { margin:2px 0 2px; color:#161f27; font-size:15.5px; }.om-target-progress header p { margin:0; color:#64707a; font-size:11px; }.om-target-progress header button { flex:0 0 auto; border:0; padding:4px; color:#0e8a72; background:transparent; font-size:11.5px; font-weight:700; }.om-target-total { display:grid; grid-template-columns:repeat(3,1fr); gap:7px; }.om-target-total>div { min-width:0; display:grid; gap:4px; padding:10px; border-radius:12px; background:#dcf0e9; }.om-target-total span { color:#0e8a72; font-size:10.5px; font-weight:600; }.om-target-total b { overflow:hidden; color:#085c4c; font-size:13px; font-weight:700; text-overflow:ellipsis; white-space:nowrap; font-variant-numeric:tabular-nums; }.om-target-track { display:grid; gap:6px; margin:12px 0; }.om-target-track>i { position:relative; height:9px; border-radius:9px; background:#eceff1; }.om-target-track>i em { display:block; height:100%; border-radius:inherit; background:linear-gradient(90deg,#17b392,#0e8a72); }.om-target-track>i strong { position:absolute; top:-3px; width:2px; height:15px; border-radius:2px; background:#c74228; }.om-target-track>div { display:flex; justify-content:space-between; color:#64707a; font-size:10.5px; }.om-target-stores { display:grid; gap:8px; }.om-target-stores>button { min-width:0; display:grid; gap:8px; border:0; border-radius:14px; padding:12px; color:#161f27; background:#faecd2; text-align:left; }.om-target-stores>button.good { background:#dcf0e9; }.om-target-stores>button.danger { background:#fbe4dc; }.om-target-stores button>div { display:flex; align-items:flex-start; justify-content:space-between; gap:8px; }.om-target-stores button>div span { min-width:0; }.om-target-stores button b,.om-target-stores button small { display:block; overflow:hidden; text-overflow:ellipsis; white-space:nowrap; }.om-target-stores button b { font-size:12.5px; }.om-target-stores button small { margin-top:3px; color:#64707a; font-size:11px; }.om-target-stores button>div em { flex:0 0 auto; padding:3px 8px; border-radius:8px; color:#8f5d06; background:#fff; font-size:10.5px; font-style:normal; font-weight:700; }.om-target-stores button.good>div em { color:#085c4c; }.om-target-stores button.danger>div em { color:#fff; background:#c74228; }.om-target-stores button>i { height:7px; overflow:hidden; border-radius:7px; background:rgba(255,255,255,.75); }.om-target-stores button>i strong { display:block; height:100%; border-radius:inherit; background:linear-gradient(90deg,#17b392,#0e8a72); }.om-target-stores footer { display:flex; justify-content:space-between; gap:6px; color:#64707a; font-size:10.5px; }.om-target-progress.risk-only header span { color:#c74228; }
.om-target-manager .m-modal-head p { margin:3px 0 0; color:#64748b; font-size:9px; }.om-target-manager-total { display:grid; grid-template-columns:minmax(0,1fr) auto; gap:4px 10px; align-items:center; padding:13px; border-radius:13px; color:#fff; background:linear-gradient(135deg,#312e81,#4f46e5); }.om-target-manager-total span { color:#c7d2fe; font-size:9px; }.om-target-manager-total b { font-size:20px; }.om-target-manager-total small { grid-column:2; color:#c7d2fe; text-align:right; font-size:8px; }.om-target-manager-group { display:grid; gap:8px; padding:12px; border:1px solid #e0e7ff; border-radius:14px; background:#fafaff; }.om-target-manager-group>header { display:grid; gap:8px; }.om-target-manager-group header>div { display:flex; align-items:center; justify-content:space-between; gap:8px; }.om-target-manager-group header b { font-size:11px; }.om-target-manager-group header small { color:#64748b; font-size:8px; }.om-target-manager-group header>span { display:grid; grid-template-columns:minmax(0,1fr) auto; gap:6px; }.om-target-manager-group header input { min-width:0; height:35px; border:1px solid #c7d2fe; border-radius:9px; padding:0 9px; background:#fff; font-size:10px; }.om-target-manager-group header button { border:0; border-radius:9px; padding:0 11px; color:#4338ca; background:#e0e7ff; font-size:9px; font-weight:900; }.om-target-manager-group>div { display:grid; }.om-target-manager-group label { display:grid; grid-template-columns:minmax(0,1fr) 105px; align-items:center; gap:10px; padding:9px 0; border-top:1px solid #eef0f7; }.om-target-manager-group label>span { min-width:0; }.om-target-manager-group label b,.om-target-manager-group label small { display:block; overflow:hidden; text-overflow:ellipsis; white-space:nowrap; }.om-target-manager-group label b { font-size:10px; }.om-target-manager-group label small { margin-top:3px; color:#64748b; font-size:8px; }.om-target-manager-group label input { min-width:0; height:37px; border:1px solid #d6dbea; border-radius:9px; padding:0 8px; text-align:right; font-size:10px; font-weight:850; }
.om-briefing-card { overflow:hidden; border:1px solid #c7d2fe; border-radius:18px; background:linear-gradient(145deg,#eef2ff,#fff); box-shadow:0 8px 22px rgba(67,56,202,.08); }.om-briefing-card>header { display:flex; align-items:flex-start; justify-content:space-between; gap:10px; padding:14px 14px 10px; }.om-briefing-card header span { color:#4f46e5; font-size:8px; font-weight:950; letter-spacing:.1em; }.om-briefing-card h2 { margin:3px 0 2px; font-size:15px; }.om-briefing-card header p { margin:0; color:#64748b; font-size:8px; }.om-briefing-card header button { flex:0 0 auto; min-height:38px; border:0; border-radius:11px; padding:0 12px; color:#fff; background:#4338ca; font-size:9px; font-weight:900; }.om-briefing-card>div { display:grid; grid-template-columns:repeat(4,1fr); border-top:1px solid #dfe3ff; border-bottom:1px solid #dfe3ff; background:rgba(255,255,255,.62); }.om-briefing-card>div span { display:grid; gap:3px; padding:10px 3px; text-align:center; }.om-briefing-card>div b { font-size:14px; }.om-briefing-card>div small { color:#64748b; font-size:7px; }.om-briefing-card>p { margin:0; padding:9px 14px; color:#475569; font-size:9px; font-weight:850; }.om-briefing-card>p.danger { color:#dc2626; }.om-briefing-card>p.warning { color:#b45309; }.om-briefing-card>p.good { color:#047857; }
.om-briefing-sheet .m-modal-head p { margin:3px 0 0; color:#64748b; font-size:9px; }.om-briefing-kpis { display:grid; grid-template-columns:1fr 1fr; gap:7px; }.om-briefing-kpis>div { display:grid; gap:5px; padding:12px; border:1px solid #e0e7ff; border-radius:12px; background:#f7f7ff; }.om-briefing-kpis span { color:#64748b; font-size:8px; }.om-briefing-kpis b { font-size:15px; }.om-briefing-peaks { display:grid; grid-template-columns:1fr 1fr; gap:7px; }.om-briefing-peaks>span { display:grid; gap:4px; padding:11px; border-left:4px solid #0ea5e9; border-radius:11px; background:#f0f9ff; }.om-briefing-peaks>span:last-child { border-left-color:#f59e0b; background:#fffbeb; }.om-briefing-peaks b { font-size:9px; }.om-briefing-peaks small { color:#475569; font-size:10px; }.om-briefing-sheet pre { margin:0; overflow:auto; white-space:pre-wrap; word-break:break-word; padding:14px; border:1px solid #e2e8f0; border-radius:13px; color:#334155; background:#f8fafc; font:9px/1.75 -apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif; }.om-briefing-actions { display:grid; grid-template-columns:1fr 1fr; gap:8px; }.om-briefing-actions button { min-height:45px; }
.om-priority-actions { overflow:hidden; border:0; border-radius:20px; background:#fff; box-shadow:0 2px 8px rgba(22,31,39,.06); }.om-priority-actions>header { display:flex; align-items:flex-start; justify-content:space-between; gap:10px; padding:15px 15px 12px; border-bottom:1px solid #edf0f2; }.om-priority-actions header span { color:#c74228; font-size:11px; font-weight:600; }.om-priority-actions h2 { margin:2px 0 2px; color:#161f27; font-size:15.5px; }.om-priority-actions header p { margin:0; color:#64707a; font-size:11px; }.om-priority-actions header button { flex:0 0 auto; border:0; padding:4px; color:#0e8a72; background:transparent; font-size:11.5px; font-weight:700; }.om-priority-actions>div { display:grid; }.om-priority-actions>div>button { min-width:0; display:grid; grid-template-columns:26px minmax(0,1fr) auto; grid-template-rows:auto auto; align-items:center; gap:3px 10px; border:0; border-bottom:1px solid #edf0f2; padding:12px 14px; color:#161f27; background:#fff; text-align:left; }.om-priority-actions>div>button:last-child { border-bottom:0; }.om-priority-actions>div>button.critical { background:linear-gradient(90deg,#fbf0ec,#fff 55%); }.om-priority-actions>div>button.warning { background:linear-gradient(90deg,#fbf6ec,#fff 55%); }.om-priority-actions>div>button.info { background:linear-gradient(90deg,#eef4fa,#fff 55%); }.om-priority-actions button>i { grid-row:1/3; width:25px; height:25px; display:grid; place-items:center; border-radius:8px; color:#fff; background:#8e98a0; font-size:11px; font-style:normal; font-weight:700; }.om-priority-actions button.critical>i { background:#c74228; }.om-priority-actions button.warning>i { background:#d98f13; }.om-priority-actions button.info>i { background:#2569b3; }.om-priority-actions button>span { min-width:0; }.om-priority-actions button small,.om-priority-actions button b,.om-priority-actions button em { display:block; overflow:hidden; text-overflow:ellipsis; white-space:nowrap; }.om-priority-actions button small { color:#8a959d; font-size:10.5px; font-weight:600; }.om-priority-actions button b { margin-top:2px; font-size:13px; }.om-priority-actions button em { grid-column:2; color:#64707a; font-size:11.5px; font-style:normal; }.om-priority-actions button>strong { grid-column:3; grid-row:1; color:#c74228; font-size:12.5px; font-weight:700; text-align:right; font-variant-numeric:tabular-nums; }.om-priority-actions button>u { grid-column:3; grid-row:2; color:#0e8a72; font-size:11.5px; font-weight:700; text-align:right; text-decoration:none; }.om-priority-empty { display:flex; align-items:center; gap:10px; padding:15px; }.om-priority-empty>i { width:30px; height:30px; display:grid; place-items:center; border-radius:10px; color:#0e8a72; background:#dcf0e9; font-style:normal; font-weight:700; }.om-priority-empty b,.om-priority-empty small { display:block; }.om-priority-empty b { font-size:12.5px; }.om-priority-empty small { margin-top:3px; color:#64707a; font-size:11px; }
.om-analysis-highlights,.om-analysis-board { padding:15px; border:0; border-radius:20px; background:#fff; box-shadow:0 2px 8px rgba(22,31,39,.06); }.om-analysis-highlights>header,.om-analysis-board>header { display:flex; align-items:flex-start; justify-content:space-between; gap:10px; margin-bottom:12px; }.om-analysis-highlights header span,.om-analysis-board header span { color:#8a959d; font-size:11px; font-weight:600; }.om-analysis-highlights h2,.om-analysis-board h2 { margin:2px 0 2px; color:#161f27; font-size:15.5px; }.om-analysis-highlights header p,.om-analysis-board header p { margin:0; color:#64707a; font-size:11px; }.om-analysis-highlights header button { flex:0 0 auto; border:0; padding:4px; color:#0e8a72; background:transparent; font-size:11.5px; font-weight:700; }.om-analysis-highlights>div { display:grid; grid-template-columns:1fr 1fr; gap:8px; }.om-analysis-highlights article { min-width:0; display:grid; gap:4px; padding:11px 12px; border:0; border-radius:14px; background:#f2f5f4; }.om-analysis-highlights article.visitor { background:#ddeaf8; }.om-analysis-highlights article.weekday { background:#dcf0e9; }.om-analysis-highlights article.time { background:#dcf0e9; }.om-analysis-highlights article.deal { background:#faecd2; }.om-analysis-highlights article.revenue { background:#fbe4dc; }.om-analysis-highlights article.amount { background:#e8e2f9; }.om-analysis-highlights article span { color:#64707a; font-size:10.5px; font-weight:600; }.om-analysis-highlights article.visitor span { color:#2569b3; }.om-analysis-highlights article.weekday span,.om-analysis-highlights article.time span { color:#0e8a72; }.om-analysis-highlights article.deal span { color:#c07e12; }.om-analysis-highlights article.revenue span { color:#c74228; }.om-analysis-highlights article.amount span { color:#6d4fc4; }.om-analysis-highlights article b,.om-analysis-highlights article small { overflow:hidden; text-overflow:ellipsis; white-space:nowrap; }.om-analysis-highlights article b { color:#161f27; font-size:12.5px; }.om-analysis-highlights article small { color:#64707a; font-size:10.5px; }
.om-analysis-tabs { display:grid; grid-template-columns:repeat(3,1fr); gap:4px; padding:4px; border-radius:13px; background:rgba(22,31,39,.06); }.om-analysis-tabs button { min-height:34px; border:0; border-radius:10px; color:#64707a; background:transparent; font-size:12px; font-weight:600; transition:color .2s,background .2s,box-shadow .2s; }.om-analysis-tabs button.active { color:#161f27; background:#fff; font-weight:700; box-shadow:0 2px 8px rgba(22,31,39,.12); }.om-analysis-legend { display:flex; align-items:center; gap:10px; margin:10px 0 8px; color:#64707a; font-size:10.5px; }.om-analysis-legend span:last-child { margin-left:auto; }.om-analysis-legend i { display:inline-block; width:9px; height:9px; margin-right:4px; border-radius:3px; background:#2569b3; }.om-analysis-legend i.deal { background:#d98f13; }.om-analysis-rows { display:grid; gap:8px; }.om-analysis-rows>article { display:grid; gap:7px; padding:11px 12px; border:0; border-radius:14px; background:#f6f8f8; }.om-analysis-rows>article.best-visitor { background:#ddeaf8; }.om-analysis-rows>article.best-order { box-shadow:inset 0 0 0 1.5px #ecc78a; }.om-analysis-rows>article.best-amount { box-shadow:inset 0 0 0 1.5px #e9b3a3; }.om-analysis-rows>article.best-order.best-visitor,.om-analysis-rows>article.best-amount.best-visitor { background:#ddeaf8; }.om-analysis-row-head { display:flex; align-items:center; justify-content:space-between; gap:8px; }.om-analysis-row-head b { color:#161f27; font-size:12px; }.om-analysis-row-head span { color:#c07e12; font-size:10px; font-weight:700; text-align:right; }.om-analysis-traffic { display:grid; grid-template-columns:82px minmax(60px,1fr); align-items:center; gap:8px; }.om-analysis-traffic>span { color:#64707a; font-size:10.5px; }.om-analysis-traffic b { color:#161f27; font-size:11.5px; font-variant-numeric:tabular-nums; }.om-analysis-traffic>i { height:8px; overflow:hidden; border-radius:8px; background:#e8ecee; }.om-analysis-traffic>i em { display:block; height:100%; border-radius:inherit; background:linear-gradient(90deg,#2569b3,#5b9bd9); }.om-analysis-result { display:grid; grid-template-columns:minmax(88px,1fr) auto auto; align-items:center; gap:9px; color:#64707a; font-size:10.5px; }.om-analysis-result b { color:#8f5d06; font-variant-numeric:tabular-nums; }.om-analysis-result strong { padding:3px 6px; border-radius:7px; color:#085c4c; background:#dcf0e9; font-size:10.5px; font-variant-numeric:tabular-nums; }
.om-trend { display:grid; gap:10px; }.om-trend>div { display:grid; grid-template-columns:40px minmax(60px,1fr) 88px 40px; align-items:center; gap:8px; }.om-trend span { color:#64707a; font-size:11px; }.om-trend i,.om-source-bars i,.om-funnel i { height:8px; overflow:hidden; border-radius:8px; background:#eceff1; }.om-trend i em { display:block; height:100%; border-radius:inherit; background:linear-gradient(90deg,#2569b3,#5b9bd9); }.om-trend b { color:#64707a; font-size:11px; font-variant-numeric:tabular-nums; }.om-trend strong { color:#085c4c; text-align:right; font-size:11.5px; font-weight:700; font-variant-numeric:tabular-nums; }
.om-funnel { display:grid; gap:11px; }.om-funnel>div { display:grid; grid-template-columns:72px minmax(70px,1fr) 34px 40px; align-items:center; gap:8px; }.om-funnel span { color:#64707a; font-size:11.5px; font-weight:600; }.om-funnel i em { display:block; height:100%; border-radius:inherit; background:linear-gradient(90deg,#2569b3,#5b9bd9); }.om-funnel>div:nth-child(n+4) i em { background:linear-gradient(90deg,#17b392,#0e8a72); }.om-funnel b { color:#161f27; font-size:12px; font-weight:700; font-variant-numeric:tabular-nums; }.om-funnel small { color:#97a1a9; text-align:right; font-size:10.5px; font-variant-numeric:tabular-nums; }
.om-level-grid { display:grid; grid-template-columns:1fr 1fr; gap:8px; }.om-level-grid>div { display:grid; grid-template-columns:auto 1fr; gap:4px 8px; padding:12px 13px; border:0; border-radius:14px; background:#f2f5f4; }.om-level-grid .level-a { background:#fbe4dc; }.om-level-grid .level-b { background:#faecd2; }.om-level-grid .level-c { background:#ddeaf8; }.om-level-grid .level-d { background:#eef1f0; }.om-level-grid span { color:#64707a; font-size:11.5px; font-weight:700; }.om-level-grid .level-a span { color:#c74228; }.om-level-grid .level-b span { color:#c07e12; }.om-level-grid .level-c span { color:#2569b3; }.om-level-grid b { text-align:right; font-size:20px; font-weight:800; font-variant-numeric:tabular-nums; }.om-level-grid .level-a b { color:#9c3018; }.om-level-grid .level-b b { color:#8f5d06; }.om-level-grid .level-c b { color:#174e89; }.om-level-grid small { grid-column:1/-1; color:#64707a; font-size:10.5px; }
.om-status-grid { display:grid; grid-template-columns:repeat(4,1fr); gap:7px; }.om-status-grid div { display:grid; gap:4px; padding:11px 3px; border-radius:12px; background:#f2f5f4; text-align:center; }.om-status-grid span { color:#64707a; font-size:10.5px; font-weight:600; }.om-status-grid b { color:#161f27; font-size:17px; font-weight:800; font-variant-numeric:tabular-nums; }.om-source-bars { display:grid; gap:9px; margin-top:14px; padding-top:13px; border-top:1px solid #edf0f2; }.om-source-bars>div { display:grid; grid-template-columns:78px minmax(50px,1fr) 30px; align-items:center; gap:8px; }.om-source-bars span { color:#64707a; font-size:11px; }.om-source-bars i em { display:block; height:100%; border-radius:inherit; background:linear-gradient(90deg,#8b7fd6,#6d4fc4); }.om-source-bars b { text-align:right; font-size:11px; font-weight:700; font-variant-numeric:tabular-nums; }
.om-risk-customers { display:grid; gap:10px; }.om-risk-customers>header { margin-bottom:1px; }.om-risk-group { display:grid; gap:7px; padding-top:10px; border-top:1px solid #edf0f2; }.om-risk-group>.om-risk-head { display:flex; justify-content:space-between; align-items:center; }.om-risk-group>.om-risk-head b { font-size:12.5px; }.om-risk-group>.om-risk-head span { color:#8a959d; font-size:11px; }.om-risk-row { display:flex; gap:7px; align-items:stretch; }.om-risk-row .om-risk-open { flex:1 1 auto; min-width:0; }.om-risk-nudge { flex:0 0 auto; border:0; border-radius:12px; padding:0 13px; background:#d98f13; color:#fff; font-size:11.5px; font-weight:700; white-space:nowrap; box-shadow:0 3px 8px rgba(192,126,18,.3); }.om-risk-nudge:disabled { background:#97a1a9; box-shadow:none; }.om-risk-group .om-risk-open { display:flex; align-items:center; justify-content:space-between; gap:10px; min-height:54px; border:0; border-radius:13px; padding:9px 12px; color:#161f27; background:#f2f5f4; text-align:left; }.om-risk-group .om-risk-open.red { background:#fbe4dc; }.om-risk-group .om-risk-open.amber { background:#faecd2; }.om-risk-group .om-risk-open.blue { background:#ddeaf8; }.om-risk-group button span { min-width:0; }.om-risk-group button b,.om-risk-group button small { display:block; overflow:hidden; text-overflow:ellipsis; white-space:nowrap; }.om-risk-group button b { font-size:12.5px; }.om-risk-group button small { margin-top:3px; color:#64707a; font-size:11px; }.om-risk-group button em { flex:0 0 auto; color:#0e8a72; font-size:11.5px; font-style:normal; font-weight:700; }.om-risk-group .om-risk-open.red em { color:#c74228; }
.om-risk-summary { display:grid; grid-template-columns:1fr 1fr; gap:8px; }.om-risk-summary>button { display:grid; gap:4px; min-height:78px; border:0; border-radius:16px; padding:13px 14px; color:#161f27; background:#f2f5f4; text-align:left; transition:transform .15s; }.om-risk-summary>button:active { transform:scale(.97); }.om-risk-summary>button:nth-child(-n+2) { background:#fbe4dc; }.om-risk-summary>button:nth-child(n+3):nth-child(-n+4) { background:#faecd2; }.om-risk-summary>button:nth-child(n+5) { background:#ddeaf8; }.om-risk-summary span { color:#64707a; font-size:11.5px; font-weight:700; }.om-risk-summary>button:nth-child(-n+2) span { color:#c74228; }.om-risk-summary>button:nth-child(n+3):nth-child(-n+4) span { color:#c07e12; }.om-risk-summary>button:nth-child(n+5) span { color:#2569b3; }.om-risk-summary b { font-size:23px; font-weight:800; font-variant-numeric:tabular-nums; }.om-risk-summary>button:nth-child(-n+2) b { color:#9c3018; }.om-risk-summary>button:nth-child(n+3):nth-child(-n+4) b { color:#8f5d06; }.om-risk-summary>button:nth-child(n+5) b { color:#174e89; }.om-risk-summary small { color:#64707a; font-size:10.5px; }
.om-team-list { display:grid; gap:7px; }.om-guide-row { width:100%; min-width:0; display:grid; grid-template-columns:28px minmax(0,1fr) auto; gap:4px 8px; align-items:center; border:1px solid #e4e9ef; border-left:4px solid #10b981; border-radius:13px; padding:10px; color:#172033; background:#fff; text-align:left; }.om-guide-row.has-risk { border-left-color:#ef4444; }.om-guide-row.no-action { border-left-color:#f59e0b; }.om-guide-row>i { grid-row:1/3; width:26px; height:26px; display:grid; place-items:center; border-radius:9px; color:#64748b; background:#edf1f5; font-size:10px; font-style:normal; font-weight:950; }.om-guide-row>i.rank-1 { color:#92400e; background:#fef3c7; }.om-guide-row>i.rank-2 { color:#475569; background:#e2e8f0; }.om-guide-row>i.rank-3 { color:#9a3412; background:#ffedd5; }.om-guide-row>span { min-width:0; }.om-guide-row span b,.om-guide-row span small { display:block; overflow:hidden; text-overflow:ellipsis; white-space:nowrap; }.om-guide-row span b { font-size:11px; }.om-guide-row span small { margin-top:3px; color:#64748b; font-size:8px; }.om-guide-row>strong { font-size:12px; }.om-guide-row>em { grid-column:3; font-size:8px; font-style:normal; font-weight:900; text-align:right; }.om-guide-row>em.good { color:#059669; }.om-guide-row>em.warn { color:#b45309; }.om-guide-row>em.risk { color:#dc2626; }
.om-finance-preview,.om-anomaly-preview { display:grid; gap:8px; }.om-finance-preview button,.om-anomaly-preview button { min-width:0; display:grid; grid-template-columns:minmax(0,1fr) auto; gap:4px 10px; align-items:center; border:0; border-radius:13px; padding:11px 12px; color:#161f27; background:#fbe4dc; text-align:left; }.om-finance-preview button span,.om-anomaly-preview button span { min-width:0; }.om-finance-preview b,.om-finance-preview small,.om-anomaly-preview b,.om-anomaly-preview small { display:block; overflow:hidden; text-overflow:ellipsis; white-space:nowrap; }.om-finance-preview b,.om-anomaly-preview b { font-size:12.5px; }.om-finance-preview small,.om-anomaly-preview small { margin-top:3px; color:#64707a; font-size:11px; }.om-finance-preview strong,.om-anomaly-preview strong { font-size:12.5px; font-weight:700; font-variant-numeric:tabular-nums; }.om-finance-preview em { grid-column:2; color:#c74228; text-align:right; font-size:11px; font-style:normal; font-weight:700; }.om-anomaly-preview { margin-top:8px; }.om-anomaly-preview button { grid-template-columns:7px minmax(0,1fr) auto; background:#faecd2; }.om-anomaly-preview i { width:7px; height:30px; border-radius:4px; background:#d98f13; }.om-anomaly-preview i.critical { background:#c74228; }
.om-empty { margin:0; padding:14px; color:#97a1a9; font-size:11.5px; text-align:center; }
.om-finance-head { grid-template-columns:40px minmax(0,1fr) auto; }.om-finance-back { width:38px; height:38px; border:1px solid #d8e0ea; border-radius:12px; color:#172033; background:#fff; font-size:27px; line-height:1; }
.om-guide-sheet .m-modal-head p { margin:3px 0 0; color:#64748b; font-size:10px; }.om-guide-detail-kpis { display:grid; grid-template-columns:1fr 1fr; gap:7px; }.om-guide-detail-kpis div { display:grid; gap:5px; padding:12px; border-radius:12px; background:#f3f6fa; }.om-guide-detail-kpis span { color:#64748b; font-size:9px; }.om-guide-detail-kpis b { font-size:16px; }.om-guide-assets { display:grid; gap:5px; padding:12px; border:1px solid #dbeafe; border-radius:12px; background:#f4f8ff; }.om-guide-assets b { font-size:12px; }.om-guide-assets span { color:#64748b; font-size:9px; }.om-guide-risks { display:grid; gap:7px; }.om-guide-risks>div { display:flex; justify-content:space-between; }.om-guide-risks>div span { color:#dc2626; font-size:10px; font-weight:900; }.om-guide-risks>button { display:flex; justify-content:space-between; align-items:center; gap:9px; border:1px solid #fee2e2; border-radius:11px; padding:10px; color:#172033; background:#fff7f7; text-align:left; }.om-guide-risks button b,.om-guide-risks button small { display:block; }.om-guide-risks button b { font-size:11px; }.om-guide-risks button small { margin-top:3px; color:#64748b; font-size:8px; }.om-guide-risks em { color:#2563eb; font-size:9px; font-style:normal; font-weight:900; }
.om-customer-sheet .m-modal-head p { margin:3px 0 0; color:#64748b; font-size:10px; }.om-customer-detail-head { display:flex; align-items:center; gap:11px; padding:13px; border-radius:14px; background:#f4f7fb; }.om-customer-detail-head>.m-level { flex:0 0 auto; width:42px; height:42px; display:grid; place-items:center; border-radius:13px; font-size:13px; font-weight:950; }.om-customer-detail-head div { min-width:0; }.om-customer-detail-head b,.om-customer-detail-head small { display:block; }.om-customer-detail-head b { font-size:13px; }.om-customer-detail-head small { margin-top:4px; color:#64748b; font-size:9px; }.om-customer-detail-grid { display:grid; grid-template-columns:1fr 1fr; gap:7px; }.om-customer-detail-grid>div { min-width:0; display:grid; gap:5px; padding:11px; border:1px solid #e3e8ef; border-radius:12px; }.om-customer-detail-grid span { color:#64748b; font-size:8px; }.om-customer-detail-grid b { overflow:hidden; font-size:10px; text-overflow:ellipsis; white-space:nowrap; }.om-customer-detail-grid b.risk { color:#dc2626; }.om-customer-note,.om-customer-latest { display:grid; gap:6px; padding:12px; border-radius:12px; background:#f8fafc; }.om-customer-note b,.om-customer-latest b { font-size:10px; }.om-customer-note p,.om-customer-latest p { margin:0; color:#475569; font-size:10px; line-height:1.55; }.om-customer-latest { border-left:4px solid #3b82f6; }.om-customer-latest>div { display:flex; justify-content:space-between; gap:8px; }.om-customer-latest span,.om-customer-latest small { color:#64748b; font-size:8px; }.om-customer-timeline { display:grid; gap:9px; }.om-customer-timeline>div { display:grid; grid-template-columns:9px minmax(0,1fr); gap:8px; }.om-customer-timeline>div>i { width:8px; height:8px; margin-top:3px; border:2px solid #fff; border-radius:50%; background:#3b82f6; box-shadow:0 0 0 2px #bfdbfe; }.om-customer-timeline span b,.om-customer-timeline span small { display:block; }.om-customer-timeline span b { font-size:9px; }.om-customer-timeline span small { margin-top:3px; color:#64748b; font-size:8px; line-height:1.5; }
.om-profile-hero { position:relative; display:grid; grid-template-columns:62px minmax(0,1fr); align-items:center; gap:14px; padding:22px 18px; border-radius:21px; color:#fff; background:linear-gradient(135deg,#111827,#334155 65%,#0f766e); box-shadow:0 14px 30px rgba(15,23,42,.2); }.om-profile-back { position:absolute; top:10px; right:10px; width:34px; height:34px; border:1px solid rgba(255,255,255,.2); border-radius:11px; color:#fff; background:rgba(255,255,255,.1); font-size:26px; }.om-profile-avatar { width:62px; height:62px; display:grid; place-items:center; overflow:hidden; border:3px solid rgba(255,255,255,.72); border-radius:50%; color:#172033; background:#fff; object-fit:cover; font-size:21px; font-weight:950; }.om-profile-hero div { min-width:0; }.om-profile-hero div>span { color:#94a3b8; font-size:9px; font-weight:950; letter-spacing:.1em; }.om-profile-hero h1 { margin:4px 0 3px; overflow:hidden; font-size:21px; text-overflow:ellipsis; white-space:nowrap; }.om-profile-hero p { margin:0; color:#cbd5e1; font-size:10px; }.om-profile-actions { padding:3px 14px; }.om-profile-actions>button { width:100%; min-width:0; min-height:68px; display:grid; grid-template-columns:38px minmax(0,1fr) auto; align-items:center; gap:10px; border:0; border-bottom:1px solid #edf1f5; padding:7px 0; color:#172033; background:transparent; text-align:left; }.om-profile-actions>button:last-child { border-bottom:0; }.om-profile-actions i { width:38px; height:38px; display:grid; place-items:center; border-radius:12px; color:#1e40af; background:#dbeafe; font-size:11px; font-style:normal; font-weight:950; }.om-profile-actions span { min-width:0; }.om-profile-actions b,.om-profile-actions small { display:block; overflow:hidden; text-overflow:ellipsis; white-space:nowrap; }.om-profile-actions b { font-size:12px; }.om-profile-actions small { margin-top:4px; color:#64748b; font-size:9px; }.om-profile-actions em { color:#94a3b8; font-size:20px; font-style:normal; }.om-profile-scope { display:grid; gap:0; padding:4px 14px; }.om-profile-scope>div { display:flex; justify-content:space-between; gap:15px; padding:12px 0; border-bottom:1px solid #edf1f5; }.om-profile-scope>div:last-child { border-bottom:0; }.om-profile-scope span { color:#64748b; font-size:10px; }.om-profile-scope b { overflow:hidden; font-size:10px; text-overflow:ellipsis; white-space:nowrap; }

.om-store-sheet .m-modal-head p { margin:3px 0 0; color:#64748b; font-size:10px; }
.om-store-detail-hero { display:grid; grid-template-columns:1.35fr 1fr; gap:1px; overflow:hidden; border-radius:15px; color:#fff; }.om-store-detail-hero>div { min-width:0; display:grid; gap:5px; padding:15px; background:linear-gradient(145deg,#172033,#334155); }.om-store-detail-hero>div:last-child { background:linear-gradient(145deg,#064e3b,#0f766e); }.om-store-detail-hero span { color:#cbd5e1; font-size:8px; font-weight:850; }.om-store-detail-hero b { font-size:21px; }.om-store-detail-hero small { color:#dbeafe; font-size:8px; }.om-store-detail-hero small.down { color:#fecaca; }
.om-store-detail-kpis { display:grid; grid-template-columns:1fr 1fr; gap:7px; }.om-store-detail-kpis>div { min-width:0; display:grid; gap:5px; padding:11px; border:1px solid #e2e8f0; border-left:4px solid #3b82f6; border-radius:12px; background:#f8fafc; }.om-store-detail-kpis>div:nth-child(2) { border-left-color:#10b981; }.om-store-detail-kpis>div:nth-child(3) { border-left-color:#f59e0b; }.om-store-detail-kpis>div:nth-child(4) { border-left-color:#ef4444; }.om-store-detail-kpis span,.om-store-detail-kpis small { overflow:hidden; color:#64748b; font-size:8px; text-overflow:ellipsis; white-space:nowrap; }.om-store-detail-kpis b { font-size:14px; }
.om-store-detail-target { display:grid; gap:9px; padding:13px; border:1px solid #dbeafe; border-radius:14px; background:#f5f9ff; }.om-store-detail-target.risk { border-color:#fecaca; background:#fff7f7; }.om-store-detail-target.warning { border-color:#fde68a; background:#fffbeb; }.om-store-detail-target header,.om-store-detail-target>div,.om-store-detail-target footer,.om-store-detail-block>header { display:flex; align-items:center; justify-content:space-between; gap:9px; }.om-store-detail-target header span,.om-store-detail-block header span { display:block; color:#2563eb; font-size:8px; font-weight:950; letter-spacing:.08em; }.om-store-detail-target header b,.om-store-detail-block header b { display:block; margin-top:3px; font-size:11px; }.om-store-detail-target header em { padding:4px 7px; border-radius:7px; color:#1d4ed8; background:#dbeafe; font-size:8px; font-style:normal; font-weight:900; }.om-store-detail-target>div strong { font-size:22px; }.om-store-detail-target>div span,.om-store-detail-target footer { color:#64748b; font-size:8px; }.om-store-detail-target>i { height:7px; overflow:hidden; border-radius:7px; background:#dbe4ef; }.om-store-detail-target>i b { display:block; height:100%; border-radius:inherit; background:linear-gradient(90deg,#2563eb,#38bdf8); }
.om-store-detail-block { overflow:hidden; border:1px solid #e2e8f0; border-radius:14px; background:#fff; }.om-store-detail-block>header { padding:11px 12px; border-bottom:1px solid #edf2f7; }.om-store-detail-block header em { color:#64748b; font-size:9px; font-style:normal; font-weight:900; }.om-store-detail-block header em.risk { color:#dc2626; }.om-store-detail-live,.om-store-detail-alerts,.om-store-detail-team { display:grid; }
.om-store-detail-live>button,.om-store-detail-team>button { min-width:0; display:grid; grid-template-columns:8px minmax(0,1fr) auto; align-items:center; gap:8px; border:0; border-bottom:1px solid #edf2f7; padding:10px 12px; color:#172033; background:#fff; text-align:left; }.om-store-detail-live>button:last-child,.om-store-detail-team>button:last-child { border-bottom:0; }.om-store-detail-live>button>i { width:7px; height:28px; border-radius:5px; background:#10b981; }.om-store-detail-live>button>i.long { background:#f59e0b; }.om-store-detail-live>button>i.overtime { background:#ef4444; }.om-store-detail-live span,.om-store-detail-team span { min-width:0; }.om-store-detail-live b,.om-store-detail-live small,.om-store-detail-team b,.om-store-detail-team small { display:block; overflow:hidden; text-overflow:ellipsis; white-space:nowrap; }.om-store-detail-live b,.om-store-detail-team b { font-size:10px; }.om-store-detail-live small,.om-store-detail-team small { margin-top:3px; color:#64748b; font-size:8px; }.om-store-detail-live em { color:#2563eb; font-size:8px; font-style:normal; font-weight:900; }.om-store-detail-live button:disabled em { color:#94a3b8; }
.om-store-detail-alerts>div { min-width:0; display:grid; grid-template-columns:24px minmax(0,1fr) auto; align-items:center; gap:8px; border-bottom:1px solid #edf2f7; padding:10px 12px; }.om-store-detail-alerts>div:last-child { border-bottom:0; }.om-store-detail-alerts>div>i { width:23px; height:23px; display:grid; place-items:center; border-radius:8px; color:#fff; background:#3b82f6; font-size:9px; font-style:normal; font-weight:950; }.om-store-detail-alerts>div.warning>i { background:#f59e0b; }.om-store-detail-alerts>div.critical>i { background:#ef4444; }.om-store-detail-alerts span { min-width:0; }.om-store-detail-alerts b,.om-store-detail-alerts small { display:block; }.om-store-detail-alerts b { font-size:9px; }.om-store-detail-alerts small { margin-top:3px; color:#64748b; font-size:8px; line-height:1.4; }.om-store-detail-alerts strong { color:#dc2626; font-size:8px; text-align:right; }.om-store-detail-good { margin:0; padding:14px; color:#047857; background:#f0fdf4; font-size:9px; text-align:center; }
.om-store-detail-team>button { grid-template-columns:25px minmax(0,1fr) auto; }.om-store-detail-team>button>i { width:24px; height:24px; display:grid; place-items:center; border-radius:8px; color:#475569; background:#e2e8f0; font-size:8px; font-style:normal; font-weight:950; }.om-store-detail-team>button:first-child>i { color:#92400e; background:#fef3c7; }.om-store-detail-team>button>strong { font-size:10px; }.om-store-detail-actions { display:grid; grid-template-columns:1fr 1fr; gap:7px; }.om-store-detail-actions button { min-height:44px; border-radius:12px; font-size:10px; font-weight:900; }

.om-reception-kpis { display:grid; grid-template-columns:repeat(6,1fr); gap:9px; }
.om-tile.mint { grid-column:span 3; background:#fff; }.om-tile.mint .om-tile-ic { background:#12b99c; box-shadow:0 3px 8px rgba(18,185,156,.3); }.om-tile.mint .om-tile-top>span:not(.om-tile-ic) { color:#0e8a72; }.om-tile.mint>b { color:#085c4c; }
.om-reception-process>div { display:grid; gap:11px; }.om-reception-process article { display:grid; grid-template-columns:56px minmax(0,1fr) 26px 40px; align-items:center; gap:8px; }.om-reception-process article span { color:#64707a; font-size:11px; font-weight:600; }.om-reception-process article small { color:#97a1a9; font-size:10.5px; text-align:right; font-variant-numeric:tabular-nums; }.om-reception-process article i { height:8px; overflow:hidden; border-radius:8px; background:#eceff1; }.om-reception-process article i em { display:block; height:100%; border-radius:inherit; background:linear-gradient(90deg,#17b392,#0e8a72); }.om-reception-process article b { color:#161f27; font-size:12px; font-weight:700; text-align:right; font-variant-numeric:tabular-nums; }
.om-reception-team { display:grid; }.om-reception-team>button { min-width:0; display:grid; grid-template-columns:minmax(0,1fr) auto; gap:5px 10px; border:0; border-bottom:1px solid #edf0f2; padding:12px 0; color:#161f27; background:#fff; text-align:left; }.om-reception-team>button:last-child { border-bottom:0; }.om-reception-team span { min-width:0; }.om-reception-team b,.om-reception-team small { display:block; overflow:hidden; text-overflow:ellipsis; white-space:nowrap; }.om-reception-team b { font-size:12.5px; }.om-reception-team small,.om-reception-team em { margin-top:3px; color:#64707a; font-size:11px; font-style:normal; }.om-reception-team strong { font-size:13px; font-weight:700; text-align:right; font-variant-numeric:tabular-nums; }.om-reception-team em { grid-column:2; text-align:right; }
.om-team-action-summary { display:grid; grid-template-columns:repeat(3,1fr); overflow:hidden; border:0; border-radius:18px; background:#fff; box-shadow:0 2px 8px rgba(22,31,39,.06); }.om-team-action-summary>div { display:grid; gap:4px; padding:13px 7px; border-right:1px solid #edf0f2; border-bottom:1px solid #edf0f2; text-align:center; }.om-team-action-summary>div:nth-child(3n) { border-right:0; }.om-team-action-summary span { color:#64707a; font-size:10.5px; font-weight:600; }.om-team-action-summary b { color:#161f27; font-size:18px; font-weight:800; font-variant-numeric:tabular-nums; }.om-team-action-summary>div:first-child span { color:#c07e12; }.om-team-action-summary>div:first-child b { color:#8f5d06; }.om-team-action-list { display:grid; gap:9px; }.om-team-action-list>button { min-width:0; display:grid; gap:10px; border:0; border-radius:16px; padding:13px; color:#161f27; background:#f6f8f8; text-align:left; }.om-team-action-list>button.no-action { background:#f2f5f4; opacity:.85; }.om-team-action-list>button.has-risk { background:#fbf6ec; }.om-team-action-list>button>div b,.om-team-action-list>button>div small { display:block; }.om-team-action-list>button>div b { font-size:13px; }.om-team-action-list>button>div small { margin-top:3px; color:#64707a; font-size:11px; }.om-team-action-list section { display:grid; grid-template-columns:repeat(6,1fr); gap:4px; }.om-team-action-list section span { display:grid; gap:3px; padding:8px 3px; border-radius:9px; color:#64707a; background:#fff; font-size:10px; text-align:center; }.om-team-action-list section b { color:#161f27; font-size:12px; font-weight:700; font-variant-numeric:tabular-nums; }.om-team-action-list footer { display:flex; align-items:center; gap:8px; color:#64707a; font-size:10.5px; }.om-team-action-list footer span.risk { color:#c74228; font-weight:700; }.om-team-action-list footer strong { margin-left:auto; color:#0e8a72; font-weight:700; }.om-customer-owner-list { display:grid; }.om-customer-owner-list>button { min-width:0; display:grid; grid-template-columns:minmax(0,1fr) auto auto; align-items:center; gap:10px; border:0; border-bottom:1px solid #edf0f2; padding:12px 0; color:#161f27; background:#fff; text-align:left; }.om-customer-owner-list>button:last-child { border-bottom:0; }.om-customer-owner-list span { min-width:0; }.om-customer-owner-list span b,.om-customer-owner-list span small,.om-customer-owner-list strong small { display:block; }.om-customer-owner-list span b { font-size:12.5px; }.om-customer-owner-list span small,.om-customer-owner-list strong small { margin-top:3px; color:#64707a; font-size:11px; }.om-customer-owner-list strong { font-size:16px; font-weight:700; text-align:right; font-variant-numeric:tabular-nums; }.om-customer-owner-list em { padding:5px 8px; border-radius:9px; color:#085c4c; background:#dcf0e9; font-size:10.5px; font-style:normal; font-weight:700; }.om-customer-owner-list em.risk { color:#8f5d06; background:#faecd2; }
.om-exec-list { display:grid; gap:8px; }
.om-exec-row { display:grid; grid-template-columns:minmax(0,1fr) auto auto; align-items:center; gap:10px; border:0; border-radius:14px; padding:11px 13px; background:#f6f8f8; }
.om-exec-row.good { background:#dcf0e9; }
.om-exec-row.warn { background:#faecd2; }
.om-exec-row.risk { background:#fbe4dc; }
.om-exec-who { min-width:0; display:flex; align-items:center; gap:8px; }
.om-exec-who b { font-size:13px; color:#161f27; white-space:nowrap; overflow:hidden; text-overflow:ellipsis; }
.om-exec-flag { flex:none; padding:3px 8px; border-radius:8px; font-size:10.5px; font-style:normal; font-weight:700; }
.om-exec-flag.good { color:#085c4c; background:#fff; }
.om-exec-flag.warn { color:#8f5d06; background:#fff; }
.om-exec-flag.risk { color:#9c3018; background:#fff; }
.om-exec-metrics { display:flex; gap:10px; }
.om-exec-metrics span { display:grid; gap:2px; color:#64707a; font-size:10.5px; text-align:center; }
.om-exec-metrics b { color:#161f27; font-size:13.5px; font-weight:700; font-variant-numeric:tabular-nums; }
.om-exec-metrics b.risk { color:#c74228; }
.om-exec-nudge { flex:none; padding:8px 13px; border:0; border-radius:11px; background:#d98f13; color:#fff; font-size:11.5px; font-weight:700; box-shadow:0 3px 8px rgba(192,126,18,.3); }
.om-exec-row.risk .om-exec-nudge { background:#c74228; box-shadow:0 3px 8px rgba(199,66,40,.3); }
.om-exec-nudge:disabled { background:#97a1a9; box-shadow:none; }
.om-exec-done { color:#0e8a72; font-size:14px; font-weight:700; }

.m-generated-summary,.om-daily-summary{display:grid;gap:12px;border:1px solid #bfdbfe;background:linear-gradient(145deg,#eff6ff,#f0fdfa);box-shadow:0 10px 24px rgba(37,99,235,.08)}.m-generated-summary.pending,.om-daily-summary.pending{border-color:#dbe4ef;background:#fff}.m-generated-summary header,.om-daily-summary header{display:flex;justify-content:space-between;gap:12px;align-items:flex-start}.m-generated-summary header span,.om-daily-summary header span,.m-generated-summary.pending span,.om-daily-summary.pending span{color:#2563eb;font-size:10px;font-weight:800}.m-generated-summary h2,.om-daily-summary h2{margin:3px 0 0;font-size:18px}.m-generated-summary header>b,.om-daily-summary header>b{padding:5px 8px;border-radius:999px;color:#047857;background:#d1fae5;font-size:9px}.m-generated-summary>p,.om-daily-summary>p,.m-generated-summary.pending p,.om-daily-summary.pending p{margin:0;color:#475569;line-height:1.65}.m-generated-summary>div:not(:first-child),.om-daily-summary>div:not(:first-child){display:grid;grid-template-columns:repeat(3,1fr);gap:8px}.m-generated-summary>div>span,.om-daily-summary>div>span{padding:8px;border-radius:10px;color:#64748b;background:rgba(255,255,255,.75);font-size:9px;text-align:center}.m-generated-summary>div b,.om-daily-summary>div b{display:block;margin-top:2px;color:#172033;font-size:15px}.m-generated-summary footer,.om-daily-summary footer{padding:10px 12px;border-radius:12px;background:#fff}.m-generated-summary footer p,.om-daily-summary footer p{margin:5px 0 0;color:#334155;line-height:1.55}.om-daily-summary{margin:0 12px 12px;padding:14px;border-radius:16px}.om-daily-summary.pending b{display:block;margin:4px 0;font-size:16px}
.om-delivery-progress { padding:14px; border:0; border-radius:18px; background:#fff; box-shadow:0 2px 8px rgba(22,31,39,.06); }.om-delivery-progress>header { display:flex; justify-content:space-between; margin-bottom:10px; color:#64707a; font-size:11px; }.om-delivery-progress>header b { color:#161f27; font-weight:700; }.om-delivery-progress>div { display:grid; grid-template-columns:repeat(4,1fr); gap:6px; }.om-delivery-progress article { display:grid; gap:3px; padding:10px 4px; border:0; border-radius:11px; background:#faecd2; text-align:center; }.om-delivery-progress article.scheduled { background:#ddeaf8; }.om-delivery-progress article.delivered { background:#dcf0e9; }.om-delivery-progress article.issue { background:#fbe4dc; }.om-delivery-progress span { color:#64707a; font-size:10px; font-weight:600; }.om-delivery-progress b { color:#161f27; font-size:15px; font-weight:800; font-variant-numeric:tabular-nums; }
.om-delivery-list>div { display:grid; gap:8px; }.om-delivery-list>div>button { min-width:0; display:grid; grid-template-columns:5px minmax(0,1fr) auto; gap:4px 10px; align-items:center; border:0; border-radius:14px; padding:12px; color:#161f27; background:#f6f8f8; text-align:left; }.om-delivery-list>div>button>i { grid-row:1/3; width:5px; height:40px; border-radius:5px; background:#f59e0b; }.om-delivery-list>div>button.scheduled>i { background:#3b82f6; }.om-delivery-list>div>button.delivered>i { background:#10b981; }.om-delivery-list>div>button.issue>i,.om-delivery-list>div>button.overdue>i { background:#ef4444; }.om-delivery-list button>span { min-width:0; }.om-delivery-list button span>b,.om-delivery-list button span>small,.om-delivery-list button span>strong { display:block; overflow:hidden; text-overflow:ellipsis; white-space:nowrap; }.om-delivery-list button span>b { font-size:12.5px; }.om-delivery-list button span>b em { color:#97a1a9; font-size:10.5px; font-style:normal; }.om-delivery-list button span>small,.om-delivery-list button span>strong { margin-top:3px; color:#64707a; font-size:11px; font-weight:500; }.om-delivery-list button>u { align-self:start; padding:4px 8px; border-radius:8px; color:#174e89; background:#ddeaf8; font-size:10.5px; font-weight:700; text-decoration:none; }.om-delivery-list button.issue>u,.om-delivery-list button.overdue>u { color:#9c3018; background:#fbe4dc; }.om-delivery-list button.pending>u { color:#8f5d06; background:#faecd2; }.om-delivery-list button.delivered>u { color:#085c4c; background:#dcf0e9; }.om-delivery-list button>em { grid-column:3; align-self:end; color:#0e8a72; font-size:11px; font-style:normal; font-weight:700; }
.om-delivery-team>div { display:grid; }.om-delivery-team>div>button { min-width:0; display:grid; grid-template-columns:minmax(0,1fr) auto; gap:4px 10px; border:0; border-bottom:1px solid #edf1f5; padding:11px 0; color:#172033; background:#fff; text-align:left; }.om-delivery-team>div>button:last-child { border-bottom:0; }.om-delivery-team button span { min-width:0; }.om-delivery-team button span b,.om-delivery-team button span small { display:block; overflow:hidden; text-overflow:ellipsis; white-space:nowrap; }.om-delivery-team button span b { font-size:12.5px; }.om-delivery-team button span small,.om-delivery-team button>em { margin-top:3px; color:#64707a; font-size:11px; font-style:normal; }.om-delivery-team button>strong { font-size:13px; font-weight:700; text-align:right; font-variant-numeric:tabular-nums; }.om-delivery-team button>em { grid-column:1; }.om-delivery-team button>u { grid-column:2; color:#c74228; font-size:11px; font-weight:700; text-align:right; text-decoration:none; }.om-delivery-team button>u.good { color:#0e8a72; }

@media (max-width:365px) {
  .om-money { grid-column:span 6; grid-row:auto; }.om-money-main strong { font-size:29px; }.om-rate,.om-live-cell,.om-crew { grid-column:span 3; }.om-tile.violet { grid-column:span 3; }.om-quick-grid { grid-template-columns:1fr; }.om-trend>div { grid-template-columns:31px minmax(45px,1fr) 68px 31px; gap:5px; }
}

/* ============================================================
   PC 桌面端 C-v2 重设计 · 批次1 视觉系统统一
   （与手机端 C-v2 同源设计语言：域色板 v2 / bento / 玻璃顶栏）
   本区块内所有选择器均为桌面专属类，手机端(m-/om-)不受影响。
   ============================================================ */

/* ---- 壳层：侧边栏 ---- */
.sidebar {
  position: sticky;
  top: 0;
  height: 100vh;
  overflow-y: auto;
  padding: 20px 14px 24px;
  background:
    radial-gradient(120% 60% at 100% 0%, rgba(23, 179, 146, .12), transparent 55%),
    linear-gradient(178deg, #101d2c 0%, #0f2530 58%, #0c2a2b 100%);
  color: #cdd8e4;
  scrollbar-width: thin;
  scrollbar-color: rgba(148, 163, 184, .3) transparent;
}
.brand {
  gap: 5px;
  padding: 8px 12px 20px;
  font-size: 19px;
  letter-spacing: .01em;
}
.brand::before {
  content: "M";
  width: 34px;
  height: 34px;
  display: grid;
  place-items: center;
  margin-bottom: 4px;
  border-radius: 11px;
  color: #fff;
  background: linear-gradient(135deg, #0e8a72, #17b392);
  box-shadow: 0 6px 14px rgba(14, 138, 114, .35);
  font-size: 17px;
  font-weight: 950;
}
.brand span { color: #6f8296; letter-spacing: .18em; }
.nav-title { color: #64778c; font-size: 10.5px; letter-spacing: .14em; }
.nav-section + .nav-section { border-top: 1px solid rgba(148, 163, 184, .12); }
.nav-btn {
  height: 40px;
  gap: 11px;
  border-radius: 11px;
  padding: 0 12px;
  color: #a9b8c7;
  font-weight: 750;
  transition: background .18s ease, color .18s ease;
}
.nav-btn-icon {
  width: 20px;
  height: 20px;
  flex: none;
  display: grid;
  place-items: center;
  opacity: .85;
}
.nav-btn-icon svg { width: 19px; height: 19px; }
.nav-btn-label {
  min-width: 0;
  flex: 1;
  display: flex;
  align-items: center;
  gap: 8px;
  overflow: hidden;
  white-space: nowrap;
}
.nav-btn:hover { color: #fff; background: rgba(255, 255, 255, .07); }
.nav-btn.active {
  color: #fff;
  background: linear-gradient(135deg, #0e8a72, #128f7b 55%, #17b392);
  box-shadow: 0 8px 18px rgba(14, 138, 114, .34);
}
.nav-btn.active .nav-btn-icon { opacity: 1; }
.nav-count-badge { margin-left: auto; background: #c74228; }

/* ---- 壳层：玻璃顶栏 ---- */
.topbar {
  position: sticky;
  top: 0;
  z-index: 60;
  height: 60px;
  border-bottom: 1px solid rgba(22, 31, 39, .07);
  background: rgba(255, 255, 255, .82);
  backdrop-filter: blur(16px) saturate(1.5);
  -webkit-backdrop-filter: blur(16px) saturate(1.5);
}
.topbar > div:first-child strong { font-size: 15px; }
.top-reminder, .top-notification {
  border-radius: 999px;
  transition: transform .15s ease;
}
.top-reminder:hover, .top-notification:hover { transform: translateY(-1px); }
.login-identity { font-size: 12px; color: var(--muted); }

/* ---- 主内容区 ---- */
body { background: 
  radial-gradient(90% 40% at 85% 0%, rgba(14, 138, 114, .05), transparent 60%),
  var(--bg); }
.content { padding: 24px 28px 56px; }

/* ---- 基础组件：按钮 / 输入 ---- */
.primary, .ghost, .danger {
  border-radius: var(--radius-sm);
  transition: filter .15s ease, transform .12s ease, box-shadow .15s ease;
}
.primary {
  background: linear-gradient(135deg, var(--teal-deep), var(--teal) 60%, #109580);
  box-shadow: 0 6px 14px rgba(14, 138, 114, .22);
}
.primary:hover { filter: brightness(1.07); transform: translateY(-1px); }
.primary:active { transform: translateY(0); }
.ghost { background: #edf1f6; }
.ghost:hover { background: #e3e9f0; }
.danger { background: linear-gradient(135deg, var(--red-deep), var(--red)); }
.field input, .field select, .field textarea {
  border-radius: var(--radius-sm);
  transition: border-color .15s ease, box-shadow .15s ease;
}
.field input:focus, .field select:focus, .field textarea:focus {
  border-color: var(--teal);
  box-shadow: 0 0 0 3px rgba(14, 138, 114, .14);
}
.readonly-field { border-radius: var(--radius-sm); }

/* ---- 卡片 / KPI ---- */
.kpi, .panel {
  border: 1px solid rgba(22, 31, 39, .06);
  border-radius: var(--radius-lg);
  box-shadow: var(--shadow-card);
}
.kpi { padding: 16px 17px; transition: transform .16s ease, box-shadow .16s ease; }
.kpi:hover { transform: translateY(-2px); box-shadow: var(--shadow-float); }
.kpi strong { font-size: 26px; font-variant-numeric: tabular-nums; letter-spacing: -.01em; }
.kpi.red { border-color: rgba(199, 66, 40, .18); background: var(--red-soft); }
.kpi.red strong { color: var(--red-deep); }
.kpi.amber { border-color: rgba(192, 126, 18, .2); background: var(--amber-soft); }
.kpi.amber strong { color: var(--amber-deep); }
.kpi.green { border-color: rgba(14, 138, 114, .18); background: var(--teal-soft); }
.kpi.green strong { color: var(--teal-deep); }
.panel-head { border-bottom: 1px solid rgba(22, 31, 39, .05); }
.panel-head h3 { font-size: 15.5px; }

/* ---- 表格现代化 ---- */
table { border-collapse: separate; border-spacing: 0; }
th {
  background: #f6f8fa;
  color: #66788c;
  font-size: 11.5px;
  font-weight: 850;
  letter-spacing: .04em;
  text-transform: none;
}
th, td { padding: 12px 12px; border-bottom: 1px solid #eef1f5; }
tbody tr { transition: background .12s ease; }
tbody tr:hover { background: #f8fafc; }
tbody tr:last-child td { border-bottom: 0; }
.tag { border-radius: 999px; padding: 0 10px; }
.tag.red { color: var(--red-deep); background: var(--red-soft); }
.tag.amber { color: var(--amber-deep); background: var(--amber-soft); }
.tag.green { color: var(--teal-deep); background: var(--teal-soft); }

/* ---- 页签：白滑块风格 ---- */
.page-tabs {
  gap: 4px;
  padding: 5px;
  border: 0;
  border-radius: 13px;
  background: #e8edf2;
  box-shadow: inset 0 1px 2px rgba(22, 31, 39, .05);
}
.page-tab { border-radius: 9px; transition: color .15s ease, background .15s ease, box-shadow .15s ease; }
.page-tab:hover { color: var(--ink); background: rgba(255, 255, 255, .55); }
.page-tab.active {
  color: var(--ink);
  background: #fff;
  box-shadow: 0 2px 6px rgba(22, 31, 39, .1), 0 8px 18px rgba(22, 31, 39, .06);
}
.segmented button { border-radius: 9px; font-weight: 800; }
.segmented button.active {
  border-color: rgba(14, 138, 114, .35);
  background: var(--teal-soft);
  color: var(--teal-deep);
}
.page-disclosure { border-radius: var(--radius-md); border-color: rgba(22, 31, 39, .07); }

/* ---- 导购工作台：作战台英雄区 C-v2 化 ---- */
.command-hero {
  border: 0;
  border-radius: 20px;
  background:
    radial-gradient(120% 130% at 8% 0%, rgba(23, 179, 146, .32), transparent 52%),
    radial-gradient(90% 100% at 100% 100%, rgba(37, 105, 179, .25), transparent 55%),
    linear-gradient(135deg, #0a2e33 0%, #085c4c 55%, #0e8a72 100%);
  box-shadow: 0 24px 54px rgba(8, 92, 76, .28);
}
.command-hero::before {
  content: "";
  position: absolute;
  inset: 0 0 auto;
  height: 1px;
  background: linear-gradient(90deg, transparent, rgba(255, 255, 255, .5), transparent);
}
.command-hero::after {
  background: linear-gradient(90deg, rgba(23, 179, 146, .0), rgba(23, 179, 146, .8), rgba(23, 179, 146, 0));
  height: 3px;
}
.command-eyebrow b { color: #8be3cd; }
.command-actions .primary { background: rgba(255, 255, 255, .95); color: var(--teal-deep); box-shadow: none; }
.command-actions .primary:hover { background: #fff; }
.command-hero-side { border-radius: 14px; border-color: rgba(255, 255, 255, .14); background: rgba(6, 40, 36, .38); }
.command-score { background: conic-gradient(#17b392 calc(var(--score) * 1%), rgba(255, 255, 255, .16) 0); }
.command-score > div { background: #0b2b28; }
.command-signal { border-radius: 11px; }
.command-signal.green b { color: #7fe7c8; }
.command-focus-card, .command-action-card { border-radius: var(--radius-lg); border-color: rgba(22, 31, 39, .06); box-shadow: var(--shadow-card); }
.command-kpi {
  border: 1px solid rgba(22, 31, 39, .06);
  border-top: 0;
  border-radius: 14px;
  background: #fff;
  box-shadow: var(--shadow-card);
  position: relative;
  overflow: hidden;
}
.command-kpi::before {
  content: "";
  position: absolute;
  inset: 0 auto 0 0;
  width: 4px;
  border-radius: 0 4px 4px 0;
  background: #94a3b8;
}
.command-kpi.green::before { background: var(--teal); }
.command-kpi.blue::before { background: var(--blue); }
.command-kpi.amber::before { background: var(--amber); }
.command-kpi b { font-variant-numeric: tabular-nums; }

/* ---- 数据看板：糖果渐变卡 → 域色 bento 磁贴 ---- */
.dashboard-color-kpi {
  color: var(--ink);
  border: 1px solid rgba(22, 31, 39, .05);
  border-radius: var(--radius-lg);
  box-shadow: var(--shadow-card);
  transition: transform .16s ease, box-shadow .16s ease;
}
.dashboard-color-kpi:hover { transform: translateY(-2px); box-shadow: var(--shadow-float); }
.dashboard-color-kpi::before { display: none; }
.dashboard-color-kpi > i {
  width: 38px;
  height: 38px;
  display: grid;
  place-items: center;
  top: 18px;
  right: 18px;
  border-radius: 12px;
  font-size: 19px;
}
.dashboard-color-kpi > span { color: rgba(22, 31, 39, .55); }
.dashboard-color-kpi > b { font-size: 30px; font-variant-numeric: tabular-nums; letter-spacing: -.01em; }
.dashboard-color-kpi > small { color: rgba(22, 31, 39, .5); }
.dashboard-color-kpi small em { color: rgba(22, 31, 39, .38); }
.dashboard-color-kpi.visitors { background: #e9f1f9; }
.dashboard-color-kpi.visitors > b { color: var(--blue-deep); }
.dashboard-color-kpi.visitors > i { color: var(--blue); background: rgba(37, 105, 179, .12); }
.dashboard-color-kpi.orders { background: #e5f3ee; }
.dashboard-color-kpi.orders > b { color: var(--teal-deep); }
.dashboard-color-kpi.orders > i { color: var(--teal); background: rgba(14, 138, 114, .12); }
.dashboard-color-kpi.amount {
  color: #fff;
  background:
    radial-gradient(120% 140% at 10% 0%, rgba(23, 179, 146, .4), transparent 55%),
    linear-gradient(135deg, #085c4c, #0e8a72 70%, #109580);
}
.dashboard-color-kpi.amount > span, .dashboard-color-kpi.amount > small { color: rgba(255, 255, 255, .82); }
.dashboard-color-kpi.amount > b { color: #fff; }
.dashboard-color-kpi.amount small em { color: rgba(255, 255, 255, .6); }
.dashboard-color-kpi.amount > i { color: #fff; background: rgba(255, 255, 255, .16); }
.dashboard-color-kpi.rate { background: #efecf8; }
.dashboard-color-kpi.rate > b { color: var(--violet-deep); }
.dashboard-color-kpi.rate > i { color: var(--violet); background: rgba(109, 79, 196, .12); }
.dashboard-color-kpi.customers { background: #f8f1e3; }
.dashboard-color-kpi.customers > b { color: var(--amber-deep); }
.dashboard-color-kpi.customers > i { color: var(--amber); background: rgba(192, 126, 18, .14); }

/* 看板周期切换：白滑块 */
.dashboard-reference-filters .segmented { border: 0; background: #e8edf2; box-shadow: inset 0 1px 2px rgba(22, 31, 39, .05); }
.dashboard-reference-filters .segmented button.active {
  color: var(--ink);
  background: #fff;
  box-shadow: 0 2px 6px rgba(22, 31, 39, .12), 0 8px 18px rgba(22, 31, 39, .06);
}
.dashboard-reference-shell { background: transparent; padding: 0; }
.dashboard-reference-card { border-color: rgba(22, 31, 39, .05); border-radius: var(--radius-lg); box-shadow: var(--shadow-card); }
.dashboard-rate-progress strong { color: var(--teal-deep); }
.dashboard-rate-progress > i em { background: linear-gradient(90deg, var(--teal), var(--teal-bright)); }
.dashboard-rank-amount > i em { background: linear-gradient(90deg, var(--teal), var(--blue)); }
.dashboard-visual-funnel .step-1 { background: #2569b3; }
.dashboard-visual-funnel .step-2 { background: #2f7bc4; }
.dashboard-visual-funnel .step-3 { background: #12a086; }
.dashboard-visual-funnel .step-4 { background: #0e8a72; }
.dashboard-today-grid .blue { color: var(--blue-deep); background: #e9f1f9; }
.dashboard-today-grid .green { color: var(--teal-deep); background: #e5f3ee; }
.dashboard-today-grid .orange { color: var(--amber-deep); background: #f8f1e3; }
.dashboard-today-grid .purple { color: var(--violet-deep); background: #efecf8; }

/* ---- 抽屉 / 弹层 / 消息 ---- */
.notification-drawer { border-radius: 18px 0 0 18px; }
.notification-card { border-radius: var(--radius-md); }
.notification-drawer > header span { color: var(--teal); }
.drawer-backdrop { backdrop-filter: blur(3px); }

/* ---- 加载 / 空态 ---- */
.loading { color: var(--muted); }

/* ---- 数字滚动辅助（批次2启用） ---- */
.pc-count { font-variant-numeric: tabular-nums; }

@media (prefers-reduced-motion: reduce) {
  .kpi, .dashboard-color-kpi, .primary, .top-reminder, .top-notification, .nav-btn, .page-tab { transition: none !important; }
  .kpi:hover, .dashboard-color-kpi:hover, .primary:hover { transform: none !important; }
}

/* ---- 批次1 补丁：看板头部间距 / 客户任务 chips ---- */
.dashboard-reference-shell { margin: 0 0 18px; }
.customer-task-chips button { border-radius: 999px; transition: background .14s ease, color .14s ease; }
.customer-task-chips button.active {
  border-color: transparent;
  background: linear-gradient(135deg, var(--teal-deep), var(--teal));
  color: #fff;
  box-shadow: 0 5px 12px rgba(14, 138, 114, .25);
}

/* ============================================================
   PC 桌面端 C-v2 重设计 · 批次2 驾驶舱磁贴 + 催办
   ============================================================ */
.manager-command-head {
  border-radius: 20px;
  background:
    radial-gradient(120% 130% at 8% 0%, rgba(23, 179, 146, .3), transparent 52%),
    radial-gradient(90% 100% at 100% 100%, rgba(37, 105, 179, .22), transparent 55%),
    linear-gradient(135deg, #0a2e33 0%, #085c4c 55%, #0e8a72 100%) !important;
  box-shadow: 0 20px 46px rgba(8, 92, 76, .26);
}
.manager-command-head .primary { background: rgba(255, 255, 255, .95); color: var(--teal-deep); box-shadow: none; }
.manager-command-head .primary:hover { background: #fff; }
.manager-command-head .ghost { color: #e6f2ee; background: rgba(255, 255, 255, .13); }
.manager-command-head .ghost:hover { background: rgba(255, 255, 255, .2); }
.manager-result-card {
  border: 1px solid rgba(22, 31, 39, .05);
  border-top-width: 1px;
  box-shadow: var(--shadow-card);
}
.manager-result-card::after { display: none; }
.manager-result-card > .mrc-ic {
  position: absolute;
  top: 14px;
  right: 14px;
  width: 34px;
  height: 34px;
  display: grid;
  place-items: center;
  border-radius: 11px;
  background: rgba(22, 31, 39, .05);
}
.manager-result-card > .mrc-ic svg { width: 18px; height: 18px; }
.manager-result-card > b { font-size: 27px; font-variant-numeric: tabular-nums; letter-spacing: -.01em; }
.manager-result-card > span, .manager-result-card > small { color: rgba(22, 31, 39, .52) !important; font-size: 11px; }
.manager-result-card > small { font-size: 10px; }
.manager-result-card > .mrc-more { position: absolute; right: 13px; bottom: 11px; color: rgba(22, 31, 39, .34); font-size: 9.5px; font-style: normal; font-weight: 850; }
.manager-result-card.blue { border-top-color: transparent; color: var(--blue-deep); background: #e9f1f9; }
.manager-result-card.blue > .mrc-ic { color: var(--blue); background: rgba(37, 105, 179, .12); }
.manager-result-card.purple { border-top-color: transparent; color: var(--violet-deep); background: #efecf8; }
.manager-result-card.purple > .mrc-ic { color: var(--violet); background: rgba(109, 79, 196, .12); }
.manager-result-card.green { border-top-color: transparent; color: var(--teal-deep); background: #e5f3ee; }
.manager-result-card.green > .mrc-ic { color: var(--teal); background: rgba(14, 138, 114, .12); }
.manager-result-card.amber { border-top-color: transparent; color: var(--amber-deep); background: #f8f1e3; }
.manager-result-card.amber > .mrc-ic { color: var(--amber); background: rgba(192, 126, 18, .14); }
.manager-result-card.red { border-top-color: transparent; color: var(--red-deep); background: #faece8; }
.manager-result-card.red > .mrc-ic { color: var(--red); background: rgba(199, 66, 40, .12); }
.manager-priority-item { border-radius: var(--radius-md); }
.manager-priority-item.red { border-color: rgba(199, 66, 40, .2); background: var(--red-soft); }
.manager-priority-item.amber { border-color: rgba(192, 126, 18, .22); background: var(--amber-soft); }
.manager-priority-item.red .manager-priority-rank { color: var(--red-deep); background: rgba(199, 66, 40, .13); }
.manager-priority-item.amber .manager-priority-rank { color: var(--amber-deep); background: rgba(192, 126, 18, .15); }
.pc-nudge-btn {
  border: 1px solid rgba(192, 126, 18, .35);
  color: var(--amber-deep);
  background: var(--amber-soft);
  font-weight: 850;
}
.pc-nudge-btn:hover { background: #f4e8cf; }
.pc-nudge-btn:disabled { opacity: .65; }
.manager-guide-primary-action { display: flex; gap: 6px; flex-wrap: wrap; align-items: center; }

/* ============================================================
   PC 桌面端 C-v2 重设计 · 批次3 骨架屏 / 分页 / 错误重试
   ============================================================ */
.pc-skeleton { display: grid; gap: 14px; }
.pc-skeleton-line { display: block; border-radius: 8px; background: linear-gradient(90deg, #e8edf2 25%, #f3f6f9 40%, #e8edf2 55%); background-size: 400% 100%; animation: pcShimmer 1.4s ease infinite; }
.pc-skeleton-line.title { width: 220px; height: 26px; }
.pc-skeleton-line.subtitle { width: 340px; height: 13px; margin-bottom: 4px; }
.pc-skeleton-kpis { display: grid; grid-template-columns: repeat(5, minmax(0, 1fr)); gap: 12px; }
.pc-skeleton-kpis > i { height: 108px; border-radius: var(--radius-lg); background: linear-gradient(90deg, #e8edf2 25%, #f3f6f9 40%, #e8edf2 55%); background-size: 400% 100%; animation: pcShimmer 1.4s ease infinite; }
.pc-skeleton-panel { display: grid; gap: 10px; padding: 18px; border: 1px solid rgba(22, 31, 39, .05); border-radius: var(--radius-lg); background: #fff; }
.pc-skeleton-panel > i { height: 16px; border-radius: 6px; background: linear-gradient(90deg, #edf1f5 25%, #f6f8fa 40%, #edf1f5 55%); background-size: 400% 100%; animation: pcShimmer 1.4s ease infinite; }
.pc-skeleton-panel > i:nth-child(1) { width: 40%; }
.pc-skeleton-panel > i:nth-child(4) { width: 70%; }
@keyframes pcShimmer { 0% { background-position: 100% 0; } 100% { background-position: 0 0; } }
@media (prefers-reduced-motion: reduce) { .pc-skeleton-line, .pc-skeleton-kpis > i, .pc-skeleton-panel > i { animation: none; } }
.pc-pager { display: flex; align-items: center; justify-content: space-between; gap: 12px; padding: 13px 16px; border-top: 1px solid rgba(22, 31, 39, .05); }
.pc-pager span { color: var(--muted); font-size: 12px; font-weight: 750; }
.pc-pager div { display: flex; gap: 8px; }
.pc-error-body { display: grid; justify-items: center; gap: 10px; padding: 46px 20px; }
.pc-error-body .error-block { padding: 0; font-size: 15px; font-weight: 800; }
.pc-error-body p { margin: 0; color: var(--muted); font-size: 12px; }
.pc-mobile-hint { display: none; align-items: center; justify-content: space-between; gap: 10px; margin: 10px 16px 0; padding: 10px 14px; border: 1px solid rgba(14, 138, 114, .25); border-radius: 12px; background: var(--teal-soft); color: var(--teal-deep); font-size: 13px; font-weight: 750; }
.pc-mobile-hint a { color: var(--teal-deep); font-weight: 900; text-decoration: none; white-space: nowrap; }
@media (max-width: 760px) { .pc-mobile-hint { display: flex; } }

/* ============================================================
   PC 桌面端 · 驾驶舱升级包（晨会模式/目标进度/多店对比/趋势）
   ============================================================ */
.manager-morning-pill { padding: 2px 9px; border-radius: 999px; background: rgba(255, 255, 255, .16); color: #d9f4ec !important; font-size: 10.5px; font-weight: 900; }
.manager-target-line {
  width: 100%;
  display: grid;
  grid-template-columns: auto minmax(120px, 1fr) auto;
  align-items: center;
  gap: 14px;
  margin-top: 12px;
  padding: 10px 14px;
  border: 1px solid rgba(255, 255, 255, .16);
  border-radius: 12px;
  background: rgba(6, 40, 36, .35);
  color: #fff;
  text-align: left;
  cursor: pointer;
  transition: background .15s ease;
}
.manager-target-line:hover { background: rgba(6, 40, 36, .5); }
.manager-target-line.empty { grid-template-columns: 1fr auto; }
.manager-target-line.empty span { color: rgba(255, 255, 255, .72); font-size: 12px; font-weight: 750; }
.manager-target-line.empty b { color: #8be3cd; font-size: 12px; }
.manager-target-meta { display: grid; gap: 2px; }
.manager-target-meta b { font-size: 13px; }
.manager-target-meta em { color: rgba(255, 255, 255, .66); font-size: 10.5px; font-style: normal; font-weight: 800; }
.manager-target-track { position: relative; height: 8px; overflow: hidden; border-radius: 99px; background: rgba(255, 255, 255, .18); }
.manager-target-track u { position: absolute; inset: 0 auto 0 0; border-radius: inherit; background: linear-gradient(90deg, #17b392, #7ce3c6); }
.manager-target-gap { color: #ffe3a3; font-size: 11px; font-weight: 850; white-space: nowrap; }
.manager-yesterday-strip {
  display: grid;
  grid-template-columns: auto minmax(0, 1fr) auto;
  align-items: center;
  gap: 18px;
  margin-bottom: 14px;
  padding: 14px 18px;
  border: 1px solid rgba(22, 31, 39, .06);
  border-radius: var(--radius-lg);
  background:
    radial-gradient(80% 120% at 0% 0%, rgba(14, 138, 114, .09), transparent 60%),
    #fff;
  box-shadow: var(--shadow-card);
}
.manager-yesterday-title { display: grid; gap: 2px; }
.manager-yesterday-title b { font-size: 14.5px; }
.manager-yesterday-title span { color: var(--muted); font-size: 10.5px; font-weight: 800; }
.manager-yesterday-cells { display: grid; grid-template-columns: repeat(5, minmax(0, 1fr)); gap: 10px; }
.manager-yesterday-cells > div { display: grid; gap: 2px; padding: 8px 12px; border-radius: 11px; background: #f5f8f9; }
.manager-yesterday-cells > div.warn { background: var(--amber-soft); }
.manager-yesterday-cells > div.warn b { color: var(--amber-deep); }
.manager-yesterday-cells span { color: var(--muted); font-size: 10px; font-weight: 850; }
.manager-yesterday-cells b { font-size: 16px; font-variant-numeric: tabular-nums; white-space: nowrap; }
.manager-yesterday-cells small { color: #8a97a6; font-size: 9.5px; font-weight: 750; white-space: nowrap; }
.manager-store-compare { margin-bottom: 14px; }
.manager-store-rows { display: grid; gap: 8px; }
.manager-store-row {
  display: grid;
  grid-template-columns: minmax(140px, 1.4fr) repeat(5, minmax(0, 1fr));
  align-items: center;
  gap: 10px;
  padding: 11px 14px;
  border: 1px solid rgba(22, 31, 39, .06);
  border-radius: var(--radius-md);
  background: #fbfcfd;
  text-align: left;
  cursor: pointer;
  transition: background .14s ease, transform .14s ease;
}
.manager-store-row:hover { background: #f2f6f8; transform: translateY(-1px); }
.manager-store-name { display: flex; align-items: center; gap: 8px; min-width: 0; }
.manager-store-name b { overflow: hidden; font-size: 13px; text-overflow: ellipsis; white-space: nowrap; }
.manager-store-name em { padding: 2px 8px; border-radius: 999px; font-size: 9.5px; font-style: normal; font-weight: 900; }
.manager-store-name em.critical { color: var(--red-deep); background: var(--red-soft); }
.manager-store-name em.warning { color: var(--amber-deep); background: var(--amber-soft); }
.manager-store-name em.info { color: var(--blue-deep); background: var(--blue-soft); }
.manager-store-row > span { color: var(--muted); font-size: 10.5px; font-weight: 800; }
.manager-store-row > span b { display: block; margin-top: 1px; color: var(--ink); font-size: 13.5px; font-variant-numeric: tabular-nums; }
.manager-store-row b.warn { color: var(--amber-deep); }
.manager-trend-panel { margin-bottom: 14px; }
@media (max-width: 1100px) {
  .manager-yesterday-strip { grid-template-columns: 1fr; }
  .manager-yesterday-cells { grid-template-columns: repeat(3, minmax(0, 1fr)); }
  .manager-store-row { grid-template-columns: 1fr 1fr 1fr; row-gap: 6px; }
}

/* ---- 收尾三项：催办回执 / 已催态 ---- */
.pc-nudge-btn.nudged { border-color: rgba(22, 31, 39, .1); color: #8a97a6; background: #f1f4f7; }
.manager-nudge-receipt { display: grid; gap: 2px; margin-top: 4px; padding: 10px 12px; border-radius: 10px; background: var(--teal-soft); }
.manager-nudge-receipt b { color: var(--teal-deep); font-size: 12px; }
.manager-nudge-receipt span { color: var(--muted); font-size: 10.5px; font-weight: 750; }

/* ============================================================
   PC 桌面端 · 平台管理端壳 C-v2 换装
   ============================================================ */
.platform-rail {
  background:
    radial-gradient(120% 60% at 100% 0%, rgba(23, 179, 146, .12), transparent 55%),
    linear-gradient(178deg, #101d2c 0%, #0f2530 58%, #0c2a2b 100%);
}
.platform-brand span { color: #17b392; }
.platform-rail-item {
  border-radius: 11px;
  transition: background .16s ease, color .16s ease;
}
.platform-rail-item.active {
  background: linear-gradient(135deg, #0e8a72, #128f7b 55%, #17b392);
  box-shadow: 0 8px 18px rgba(14, 138, 114, .34);
  color: #fff;
}
.platform-rail-item.active span { background: rgba(255, 255, 255, .18); color: #fff; }
.platform-topbar {
  position: sticky;
  top: 0;
  z-index: 60;
  border-bottom: 1px solid rgba(22, 31, 39, .07);
  background: rgba(255, 255, 255, .82);
  backdrop-filter: blur(16px) saturate(1.5);
  -webkit-backdrop-filter: blur(16px) saturate(1.5);
}
.platform-admin-badge { border-radius: 999px; background: var(--teal-soft); color: var(--teal-deep); }

/* ── 导购端 G v2.2 蓝绿宝石 · 壳层覆盖（高优先级，胜过媒体规则）── */
.m-shell:not(.m-owner-shell) .m-tabbar {
  gap: 0; margin: 0; padding: 7px 4px calc(9px + env(safe-area-inset-bottom));
  border: 0; border-top: 1px solid rgba(20,24,29,.07); border-radius: 0;
  background: rgba(255,255,255,.88); box-shadow: none;
  backdrop-filter: blur(18px) saturate(170%); -webkit-backdrop-filter: blur(18px) saturate(170%);
}
.m-shell:not(.m-owner-shell) .m-tabbar-btn {
  min-height: 52px; border-radius: 14px; color: #9AA3AB;
  background: transparent; font-size: 10px; font-weight: 700; letter-spacing: .04em;
}
.m-shell:not(.m-owner-shell) .m-tabbar-btn::after { display: none; }
.m-shell:not(.m-owner-shell) .m-tabbar-btn.active {
  color: #1E3FA8; background: transparent; box-shadow: none; font-weight: 700;
}
.m-shell:not(.m-owner-shell) .m-tabbar-btn.active .m-nav-icon,
.m-shell:not(.m-owner-shell) .m-tabbar-btn.active .m-nav-svg { color: #1E3FA8; }
.m-shell:not(.m-owner-shell) .m-tabbar-btn:active { transform: translateY(1px) scale(.94); }
.m-nav-svg { display: grid; place-items: center; width: 24px; height: 24px; }
.m-nav-svg svg { width: 22px; height: 22px; display: block; }

/* ── 导购端 G v2.2 · 主按钮/头像宝石化（胜过全局 .primary 青绿）── */
.m-shell:not(.m-owner-shell) .primary {
  background: linear-gradient(135deg, #2E55D4 0%, #2C6BBE 48%, #27866E 100%);
  box-shadow: inset 0 1px 0 rgba(255,255,255,.22), 0 6px 16px -6px rgba(44,96,180,.5);
}
.m-shell:not(.m-owner-shell) .m-profile-button {
  background: linear-gradient(145deg, #3E68DE, #1E3FA8);
}
/* 焦点卡内主/次按钮不受上面影响（已是白底/玻璃），保持 */
.m-shell:not(.m-owner-shell) .m-focus-card .primary { background: linear-gradient(180deg, #FFFFFF, #F2F6FF); box-shadow: inset 0 1px 0 rgba(255,255,255,.9), 0 6px 18px -4px rgba(16,42,100,.45); }

/* 导购端 · 打电话按钮宝石化（保持与写跟进的主/次层级）*/
.m-shell:not(.m-owner-shell) .m-call-btn,
.m-shell:not(.m-owner-shell) .m-customer-card .m-call-btn.is-primary,
.m-shell:not(.m-owner-shell) .m-call-btn.is-primary {
  color: #fff; border-color: transparent;
  background: linear-gradient(135deg, #2E55D4 0%, #2C6BBE 48%, #27866E 100%);
  box-shadow: inset 0 1px 0 rgba(255,255,255,.22), 0 6px 16px -6px rgba(44,96,180,.5);
}
.m-shell:not(.m-owner-shell) .m-customer-card .m-call-btn:not(.is-primary) {
  color: #174E89; border-color: #cfe0ff; background: #edf4ff;
}

/* ── 客户详情 · 操作按钮层级精修（打电话主 / 写跟进次 / 改计划幽灵）── */
.m-shell:not(.m-owner-shell) .m-archive-actions button {
  min-height: 48px; padding: 8px 6px; border: 0; border-radius: 14px;
  font-size: 14.5px; font-weight: 800; letter-spacing: .02em;
  transition: transform .14s ease, box-shadow .14s ease, background .14s ease;
}
.m-shell:not(.m-owner-shell) .m-archive-actions button:active { transform: translateY(1px) scale(.985); }
/* 主：打电话 / 订单回款 —— 宝石渐变 */
.m-shell:not(.m-owner-shell) .m-archive-actions .m-call-btn:not(.ghost),
.m-shell:not(.m-owner-shell) .m-archive-actions .primary {
  color: #fff;
  background: linear-gradient(138deg, #2E55D4 0%, #2A63C1 52%, #24856C 100%);
  box-shadow: inset 0 1px 0 rgba(255,255,255,.3), 0 9px 22px -9px rgba(37,80,170,.75);
}
/* 次：与打电话并列时的写跟进 —— 宝石浅底（降权，避免双主色打架）*/
.m-shell:not(.m-owner-shell) .m-archive-actions:has(.m-call-btn:not(.ghost)) .primary {
  color: #1E3FA8;
  background: linear-gradient(180deg, #eef2fd, #e7edfb);
  box-shadow: inset 0 0 0 1px rgba(46,85,212,.16);
}
/* 幽灵：改计划 / 排计划 / 联系客户 */
.m-shell:not(.m-owner-shell) .m-archive-actions .ghost,
.m-shell:not(.m-owner-shell) .m-archive-actions .m-call-btn.ghost {
  color: #5a6675;
  background: #f3f5f9;
  box-shadow: inset 0 0 0 1px rgba(20,24,29,.07);
}
.m-shell:not(.m-owner-shell) .m-archive-actions .ghost:active,
.m-shell:not(.m-owner-shell) .m-archive-actions .m-call-btn.ghost:active { background: #e9edf3; }

/* ── 导购首页 · 版式对齐原型 ── */
/* 主卡标题内的等级徽章 */
.m-shell:not(.m-owner-shell) .m-focus-card h2 { display: flex; align-items: center; gap: 9px; }
.m-shell:not(.m-owner-shell) .m-focus-lv {
  flex: none; font-style: normal; padding: 2.5px 8px; border-radius: 7px;
  background: rgba(255,255,255,.16); color: #fff;
  box-shadow: inset 0 0 0 1px rgba(255,255,255,.3);
  font-size: 11.5px; font-weight: 700;
}
/* 主卡 meta / gauge / hint */
.m-shell:not(.m-owner-shell) .m-focus-meta { margin: 5px 0 0 !important; color: rgba(255,255,255,.66) !important; font-size: 12px !important; letter-spacing: .02em; }
.m-shell:not(.m-owner-shell) .m-focus-gauge { display: flex; align-items: center; gap: 10px; margin-top: 13px; }
.m-shell:not(.m-owner-shell) .m-focus-gauge > i { flex: 1; position: relative; height: 4px; border-radius: 4px; background: rgba(255,255,255,.22); overflow: visible; }
.m-shell:not(.m-owner-shell) .m-focus-gauge > i em { display: block; height: 100%; border-radius: inherit; background: #fff; box-shadow: 0 0 10px rgba(255,255,255,.6); position: relative; }
.m-shell:not(.m-owner-shell) .m-focus-gauge > i em::after { content: ''; position: absolute; right: -3px; top: 50%; margin-top: -3.5px; width: 7px; height: 7px; border-radius: 50%; background: #fff; box-shadow: 0 0 8px rgba(255,255,255,.9); }
.m-shell:not(.m-owner-shell) .m-focus-gauge b { font-family: "Space Grotesk","PingFang SC",sans-serif; font-size: 13px; font-weight: 700; color: #fff; }
.m-shell:not(.m-owner-shell) .m-focus-gauge b i { font-style: normal; font-size: 10px; color: rgba(255,255,255,.5); }
.m-shell:not(.m-owner-shell) .m-focus-hint { margin: 9px 0 0 !important; color: rgba(255,255,255,.72) !important; font-size: 12px !important; line-height: 1.55 !important; }
.m-shell:not(.m-owner-shell) .m-focus-card .m-next-action-primary > div:last-child { margin-top: 14px; }

/* 今日进度 · 三段式 */
.m-shell:not(.m-owner-shell) .m-pace-seg { display: grid; gap: 5px; grid-auto-flow: column; grid-auto-columns: 1fr; margin: 4px 0 2px; }
.m-shell:not(.m-owner-shell) .m-pace-seg i { height: 5px; border-radius: 5px; background: rgba(20,24,29,.08); }
.m-shell:not(.m-owner-shell) .m-pace-seg i.on { background: linear-gradient(90deg, #2E55D4, #27866E); box-shadow: 0 1px 6px rgba(44,107,190,.4); }

/* 待办行 · 首字头像 + 行内徽章 */
.m-shell:not(.m-owner-shell) .m-task-avatar {
  flex: none; width: 36px; height: 36px; border-radius: 12px; display: grid; place-items: center;
  color: #fff; background: linear-gradient(150deg, #3E68DE, #27866E);
  box-shadow: inset 0 1px 0 rgba(255,255,255,.22); font-size: 15px; font-weight: 600;
}
.m-shell:not(.m-owner-shell) .m-home-task { grid-template-columns: 36px minmax(0,1fr) auto; }
.m-shell:not(.m-owner-shell) .m-home-task.urgent .m-task-avatar { background: linear-gradient(150deg, #D65B41, #9C3018); }
.m-shell:not(.m-owner-shell) .m-home-task.attention .m-task-avatar { background: linear-gradient(150deg, #E0A43A, #8F5D06); }
.m-shell:not(.m-owner-shell) .m-task-line1 { display: flex; align-items: center; gap: 6px; }
.m-shell:not(.m-owner-shell) .m-task-line1 b { overflow: hidden; font-size: 13.5px; text-overflow: ellipsis; white-space: nowrap; }
.m-shell:not(.m-owner-shell) .m-task-lv { flex: none; padding: 1px 6px; border-radius: 6px; background: #FAECD2; color: #8F5D06; font-size: 10px; font-weight: 700; }
.m-shell:not(.m-owner-shell) .m-task-flag { flex: none; padding: 1px 6px; border-radius: 6px; background: rgba(20,24,29,.06); color: #6A737C; font-size: 10px; font-weight: 700; }
.m-shell:not(.m-owner-shell) .m-home-task.urgent .m-task-flag { background: rgba(199,66,40,.12); color: #C74228; }
.m-shell:not(.m-owner-shell) .m-task-copy p { color: #6A737C; font-size: 11px; }
.m-shell:not(.m-owner-shell) .m-task-copy small { color: #9AA3AB; font-size: 10.5px; }
/* 待办按钮 · 处理=浅蓝 / 收款=红 */
.m-shell:not(.m-owner-shell) .m-task-action { min-height: 36px; padding: 0 14px; border: 0; border-radius: 12px; color: #174E89; background: #DDEAF8; font-size: 12.5px; font-weight: 700; }
.m-shell:not(.m-owner-shell) .m-task-action.is-pay { color: #fff; background: linear-gradient(180deg, #D65B41, #C74228); box-shadow: inset 0 1px 0 rgba(255,255,255,.25), 0 4px 10px -2px rgba(199,66,40,.4); }

/* ── 跟进页优化 · slim note / 逾期旗标 / 进度卡收窄 ── */
.m-shell:not(.m-owner-shell) .m-follow-note {
  margin: 0 !important; padding: 0 !important; background: transparent !important;
  display: block !important; overflow: hidden; color: #8a96a8 !important;
  font-size: 11px !important; font-weight: 500 !important;
  text-overflow: ellipsis; white-space: nowrap;
}
.m-shell:not(.m-owner-shell) .m-flag-overdue {
  min-height: 22px; display: inline-flex; align-items: center; padding: 0 8px;
  border-radius: 999px; background: rgba(199,66,40,.12); color: #C74228;
  font-size: 11px; font-weight: 700;
}
/* 进度卡瘦身：去掉四格后底部留白收紧 */
.m-shell:not(.m-owner-shell) .m-task-progress-card.slim { gap: 10px; }

/* ── 客户列表卡 · 精细化：推荐框压成一行 + 逾期标签醒目 ── */
.m-shell:not(.m-owner-shell) .m-customer-recommendation {
  display: flex; align-items: baseline; gap: 5px;
  padding: 0 !important; background: transparent !important; border-radius: 0 !important;
  overflow: hidden; white-space: nowrap;
}
.m-shell:not(.m-owner-shell) .m-customer-recommendation b {
  flex: none; color: #6A737C !important; font-size: 11px !important; font-weight: 600 !important;
}
.m-shell:not(.m-owner-shell) .m-customer-recommendation p {
  overflow: hidden; color: #9AA3AB !important; font-size: 11px !important; font-weight: 400 !important;
  text-overflow: ellipsis;
}
/* 逾期计划标签 → 红色胶囊旗标 */
.m-shell:not(.m-owner-shell) .m-customer-card .m-customer-next.overdue {
  min-height: 22px; display: inline-flex; align-items: center; padding: 0 8px;
  border-radius: 999px; color: #C74228; background: rgba(199,66,40,.12); font-weight: 700;
}
/* 卡片纵向留白略收紧 */
.m-shell:not(.m-owner-shell) .m-customer-card { gap: 8px; }


/* 送货时段选择器 */
.m-order-period { display: flex; }
.m-order-period select { width: 100%; min-height: 44px; border: 1px solid var(--line); border-radius: 12px; padding: 0 10px; background: #fff; color: #334155; font-size: 14px; }

/* ── 消息中心 · 极简状态标签 ── */
.notification-status-tabs { display: grid; grid-template-columns: repeat(3, 1fr); gap: 6px; padding: 12px 0 4px; }
.notification-status-tabs button { min-height: 36px; border: 0; border-radius: 10px; background: rgba(20,24,29,.06); color: #64707a; font-size: 13px; font-weight: 600; transition: color .2s, background .2s; }
.notification-status-tabs button.active { color: #fff; background: linear-gradient(135deg, #2E55D4, #27866E); box-shadow: 0 4px 12px -4px rgba(44,96,180,.5); }
.notification-status-tabs button:active { transform: scale(.97); }

/* 今日复盘 · 系统日报小节 */
.m-shell:not(.m-owner-shell) .m-review-summary { margin-top: 4px; padding: 12px 13px; border-radius: 14px; background: #eef4fb; box-shadow: inset 0 0 0 1px rgba(37,105,179,.1); }
.m-shell:not(.m-owner-shell) .m-review-summary.pending { background: #f5f6f8; box-shadow: inset 0 0 0 1px rgba(20,24,29,.05); }
.m-shell:not(.m-owner-shell) .m-review-summary header { display: flex; align-items: baseline; justify-content: space-between; gap: 8px; margin-bottom: 6px; }
.m-shell:not(.m-owner-shell) .m-review-summary header b { font-size: 12.5px; color: #174e89; }
.m-shell:not(.m-owner-shell) .m-review-summary header span { color: #9aa3ab; font-size: 10.5px; }
.m-shell:not(.m-owner-shell) .m-review-summary p { margin: 0; color: #4b5563; font-size: 12px; line-height: 1.55; }
.m-shell:not(.m-owner-shell) .m-review-summary .m-review-plan { margin-top: 6px; color: #14181d; }

/* ══ 财务手端（finance mobile shell）══ */
/* 首页 hero 内部布局 */
.m-shell:not(.m-owner-shell) .m-fin-hero { display: grid; gap: 14px; }
.m-shell:not(.m-owner-shell) .m-fin-hero-head { display: flex; align-items: flex-start; justify-content: space-between; gap: 10px; }
.m-shell:not(.m-owner-shell) .m-fin-hero-head span { display: block; color: rgba(255,255,255,.72); font-size: 11.5px; letter-spacing: .04em; }
.m-shell:not(.m-owner-shell) .m-fin-hero-head b { display: block; margin-top: 4px; color: #fff; font-size: 16px; font-weight: 700; letter-spacing: .01em; }
.m-shell:not(.m-owner-shell) .m-fin-hero-money { text-align: right; }
.m-shell:not(.m-owner-shell) .m-fin-hero-money b { font-size: 20px; font-variant-numeric: tabular-nums; }
.m-shell:not(.m-owner-shell) .m-fin-hero-slots { display: grid; grid-template-columns: 1fr 1fr; gap: 10px; }
.m-shell:not(.m-owner-shell) .m-fin-slot { padding: 10px 12px; border-radius: 14px; background: rgba(255,255,255,.14); box-shadow: inset 0 1px 0 rgba(255,255,255,.22); }
.m-shell:not(.m-owner-shell) .m-fin-slot span { color: rgba(255,255,255,.78); font-size: 11px; }
.m-shell:not(.m-owner-shell) .m-fin-slot b { display: block; margin: 2px 0; color: #fff; font-size: 18px; font-weight: 700; font-variant-numeric: tabular-nums; }
.m-shell:not(.m-owner-shell) .m-fin-slot small { color: rgba(255,255,255,.66); font-size: 10.5px; }
.m-shell:not(.m-owner-shell) .m-fin-slot.is-full { background: rgba(159,24,18,.28); }
.m-shell:not(.m-owner-shell) .m-fin-slot.is-full small { color: #ffd9d2; }

/* 首页 KPI 磁贴 */
.m-shell:not(.m-owner-shell) .m-fin-kpis { display: grid; grid-template-columns: 1fr 1fr; gap: 10px; margin: 12px 0; }
.m-shell:not(.m-owner-shell) .m-fin-kpis button { display: grid; gap: 2px; min-height: 78px; padding: 12px 14px; border: 0; border-radius: 16px; background: rgba(255,255,255,.94); box-shadow: 0 1px 2px rgba(16,29,44,.06), inset 0 0 0 1px rgba(20,24,29,.05); text-align: left; }
.m-shell:not(.m-owner-shell) .m-fin-kpis button span { color: #64707a; font-size: 11.5px; }
.m-shell:not(.m-owner-shell) .m-fin-kpis button b { color: #16212e; font-size: 19px; font-weight: 700; font-variant-numeric: tabular-nums; }
.m-shell:not(.m-owner-shell) .m-fin-kpis button small { color: #9aa3ab; font-size: 10.5px; }
.m-shell:not(.m-owner-shell) .m-fin-kpis button.warning b { color: var(--amber-deep); }
.m-shell:not(.m-owner-shell) .m-fin-kpis button.danger b { color: var(--red); }
.m-shell:not(.m-owner-shell) .m-fin-kpis button:active { transform: scale(.98); }
.m-shell:not(.m-owner-shell) .m-fin-closure-kpis > div { display:grid; gap:2px; min-height:78px; padding:12px 14px; border-radius:16px; background:rgba(255,255,255,.94); box-shadow:0 1px 2px rgba(16,29,44,.06),inset 0 0 0 1px rgba(20,24,29,.05); text-align:left; }
.m-shell:not(.m-owner-shell) .m-fin-closure-kpis > div span { color:#64707a; font-size:11.5px; }
.m-shell:not(.m-owner-shell) .m-fin-closure-kpis > div b { color:#16212e; font-size:19px; font-weight:700; font-variant-numeric:tabular-nums; }
.m-shell:not(.m-owner-shell) .m-fin-closure-kpis > div small { color:#9aa3ab; font-size:10.5px; }

/* 首页优先待办行 */
.m-shell:not(.m-owner-shell) .m-fin-todo { display: flex; align-items: center; gap: 10px; width: 100%; min-height: 56px; padding: 10px 4px; border: 0; border-bottom: 1px solid rgba(20,24,29,.05); background: transparent; text-align: left; }
.m-shell:not(.m-owner-shell) .m-fin-todo:last-child { border-bottom: 0; }
.m-shell:not(.m-owner-shell) .m-fin-todo i { flex: none; }
.m-shell:not(.m-owner-shell) .m-fin-todo span { flex: 1; min-width: 0; display: grid; gap: 2px; }
.m-shell:not(.m-owner-shell) .m-fin-todo span b { color: #16212e; font-size: 13.5px; overflow: hidden; white-space: nowrap; text-overflow: ellipsis; }
.m-shell:not(.m-owner-shell) .m-fin-todo span small { color: #8a939c; font-size: 11.5px; overflow: hidden; white-space: nowrap; text-overflow: ellipsis; }
.m-shell:not(.m-owner-shell) .m-fin-todo em { flex: none; color: #2E55D4; font-size: 12px; font-style: normal; font-weight: 600; }

/* 7天容量看板 */
.m-shell:not(.m-owner-shell) .m-fin-board { display: grid; grid-template-columns: repeat(7, 1fr); gap: 6px; }
.m-shell:not(.m-owner-shell) .m-fin-board-strip { margin: 0 0 12px; padding: 10px; border-radius: 16px; background: rgba(255,255,255,.94); box-shadow: 0 1px 2px rgba(16,29,44,.06), inset 0 0 0 1px rgba(20,24,29,.05); }
.m-shell:not(.m-owner-shell) .m-fin-board-day { display: grid; gap: 3px; justify-items: center; padding: 6px 2px; border-radius: 10px; background: rgba(20,24,29,.03); }
.m-shell:not(.m-owner-shell) .m-fin-board-day span { color: #16212e; font-size: 11px; font-weight: 700; }
.m-shell:not(.m-owner-shell) .m-fin-board-day small { color: #9aa3ab; font-size: 9.5px; }
.m-shell:not(.m-owner-shell) .m-fin-board-day div { width: 100%; border-radius: 6px; padding: 2px 0; text-align: center; color: #27866E; background: rgba(39,134,110,.1); font-size: 9.5px; font-weight: 600; font-variant-numeric: tabular-nums; }
.m-shell:not(.m-owner-shell) .m-fin-board-day div.is-full { color: #C74228; background: rgba(199,66,40,.12); }
.m-shell:not(.m-owner-shell) .m-fin-board-empty { grid-column: 1 / -1; margin: 0; color: #9aa3ab; font-size: 12px; text-align: center; }

/* 状态筛选 tabs（送货/售后共用） */
.m-shell:not(.m-owner-shell) .m-fin-tabs { display: grid; grid-template-columns: repeat(5, 1fr); gap: 6px; margin: 0 0 12px; }
.m-shell:not(.m-owner-shell) .m-fin-tabs button { display: grid; gap: 1px; min-height: 44px; padding: 6px 2px; border: 0; border-radius: 12px; background: rgba(20,24,29,.06); color: #64707a; font-size: 12px; font-weight: 600; transition: color .2s, background .2s; }
.m-shell:not(.m-owner-shell) .m-fin-tabs button b { font-size: 12.5px; font-variant-numeric: tabular-nums; }
.m-shell:not(.m-owner-shell) .m-fin-tabs button.active { color: #fff; background: linear-gradient(135deg, #2E55D4, #27866E); box-shadow: 0 4px 12px -4px rgba(44,96,180,.5); }
.m-shell:not(.m-owner-shell) .m-fin-tabs button:active { transform: scale(.97); }

/* 送货/售后卡片 */
.m-shell:not(.m-owner-shell) .m-fin-delivery-card { display: grid; gap: 10px; padding: 13px 4px; border-bottom: 1px solid rgba(20,24,29,.05); }
.m-shell:not(.m-owner-shell) .m-fin-delivery-card:last-child { border-bottom: 0; }
.m-shell:not(.m-owner-shell) .m-fin-delivery-card header { display: flex; align-items: flex-start; justify-content: space-between; gap: 8px; }
.m-shell:not(.m-owner-shell) .m-fin-delivery-card header b { color: #16212e; font-size: 14.5px; }
.m-shell:not(.m-owner-shell) .m-fin-delivery-card header span:not(.tag) { display: block; margin-top: 2px; color: #8a939c; font-size: 11.5px; }
.m-shell:not(.m-owner-shell) .m-fin-delivery-lines { display: grid; gap: 5px; }
.m-shell:not(.m-owner-shell) .m-fin-delivery-lines > div { display: flex; gap: 8px; align-items: baseline; }
.m-shell:not(.m-owner-shell) .m-fin-delivery-lines span { flex: none; width: 52px; color: #9aa3ab; font-size: 11px; }
.m-shell:not(.m-owner-shell) .m-fin-delivery-lines b { flex: 1; min-width: 0; color: #3c4650; font-size: 12.5px; font-weight: 500; line-height: 1.45; }
.m-shell:not(.m-owner-shell) .m-fin-delivery-lines b.warn { color: var(--amber-deep); font-weight: 700; }

/* 派单三确认区块 */
.m-fin-check { display: grid; gap: 8px; padding: 12px 13px; border-radius: 14px; background: rgba(20,24,29,.03); box-shadow: inset 0 0 0 1px rgba(20,24,29,.05); }
.m-fin-check.warn { background: rgba(192,126,18,.07); box-shadow: inset 0 0 0 1px rgba(192,126,18,.18); }
.m-fin-check.ok { background: rgba(39,134,110,.06); box-shadow: inset 0 0 0 1px rgba(39,134,110,.15); }
.m-fin-check-head { display: flex; align-items: baseline; justify-content: space-between; gap: 8px; }
.m-fin-check-head b { color: #16212e; font-size: 13px; }
.m-fin-check-head span { color: #9aa3ab; font-size: 11px; }
.m-fin-check-warn { margin: 0; color: var(--amber-deep); font-size: 12.5px; }
.m-fin-check-warn b { font-variant-numeric: tabular-nums; }
.m-fin-check-ok { margin: 0; color: var(--teal-deep); font-size: 12.5px; font-weight: 600; }
.m-fin-deal { margin: 0; color: #4b5563; font-size: 12px; line-height: 1.5; }
.m-fin-option { display: flex; align-items: center; gap: 8px; min-height: 40px; padding: 0 10px; border-radius: 10px; background: #fff; box-shadow: inset 0 0 0 1px rgba(20,24,29,.08); font-size: 13px; color: #334155; }
.m-fin-option input { accent-color: #2E55D4; }

/* 时段选择（派单/结单结果共用） */
.m-fin-period { display: grid; grid-template-columns: 1fr 1fr; gap: 8px; }
.m-fin-period label { position: relative; }
.m-fin-period input { position: absolute; opacity: 0; inset: 0; }
.m-fin-period span { display: grid; gap: 1px; justify-items: center; min-height: 52px; padding: 8px; border-radius: 12px; background: rgba(20,24,29,.05); color: #4b5563; font-size: 14px; font-weight: 600; text-align: center; align-content: center; }
.m-fin-period small { color: #9aa3ab; font-size: 10.5px; font-weight: 500; }
.m-fin-period input:checked + span { color: #fff; background: linear-gradient(135deg, #2E55D4, #27866E); box-shadow: 0 4px 12px -4px rgba(44,96,180,.5); }
.m-fin-period input:checked + span small { color: rgba(255,255,255,.8); }
.m-fin-period input:disabled + span { opacity: .45; text-decoration: line-through; }
.m-fin-slot-tip { margin: 0; color: var(--red); font-size: 12px; min-height: 14px; }

/* 订单详情内：派单信息行 + 售后申请折叠 */
.m-order-dispatch-line { margin: 4px 0 0; color: #2569b3; font-size: 12px; line-height: 1.5; }
.m-order-aftersale summary { min-height: 40px; display: flex; align-items: center; color: #2E55D4; font-size: 13px; font-weight: 600; cursor: pointer; list-style: none; }
.m-order-aftersale summary::-webkit-details-marker { display: none; }
.m-order-aftersale[open] summary { color: #64707a; }

/* ══ 登录页 v3「宝石棱镜·颗粒玻璃」(手机端) ══ */
.m-login-v3 {
  position: relative;
  display: flex; flex-direction: column; align-items: center;
  min-height: 100dvh; padding: 0;
  color: #131F35;
  background:
    radial-gradient(110% 72% at 88% -6%, rgba(46,85,212,.55), transparent 55%),
    radial-gradient(120% 80% at -12% 104%, rgba(39,134,110,.5), transparent 58%),
    linear-gradient(158deg, #0C1533 8%, #0E2547 46%, #0B2E29 92%);
  overflow: hidden;
}
/* 全屏 SVG 噪点颗粒 */
.m-login-v3::before {
  content: ""; position: fixed; inset: 0; z-index: 5; pointer-events: none;
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='160' height='160'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.9' numOctaves='2' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='160' height='160' filter='url(%23n)' opacity='0.55'/%3E%3C/svg%3E");
  mix-blend-mode: overlay; opacity: .5;
}
/* 旋转宝石棱镜光环 */
.m-login-prism {
  position: absolute; z-index: 0; pointer-events: none;
  width: 560px; height: 560px; right: -190px; top: -230px; border-radius: 50%;
  background: conic-gradient(from 20deg,
    transparent 0 8%, rgba(46,85,212,.5) 16%, rgba(44,107,190,.34) 28%,
    rgba(39,134,110,.5) 42%, rgba(168,230,213,.2) 50%, transparent 58% 100%);
  -webkit-mask: radial-gradient(closest-side, transparent 58%, #000 60% 96%, transparent 100%);
          mask: radial-gradient(closest-side, transparent 58%, #000 60% 96%, transparent 100%);
  animation: m-login-prism-spin 46s linear infinite;
  filter: blur(14px); opacity: .8;
}
.m-login-prism.two { right: auto; left: -240px; top: 430px; width: 480px; height: 480px; opacity: .4; animation-duration: 64s; animation-direction: reverse; }
@keyframes m-login-prism-spin { to { transform: rotate(360deg) } }
/* 刻面细线 */
.m-login-facets {
  position: absolute; inset: 0; z-index: 0; pointer-events: none;
  background: repeating-linear-gradient(116deg, rgba(255,255,255,.045) 0 1px, transparent 1px 64px);
  -webkit-mask-image: linear-gradient(to bottom, #000 0%, transparent 70%);
          mask-image: linear-gradient(to bottom, #000 0%, transparent 70%);
}
/* 品牌区 */
.m-login-v3 .m-login-hero { position: relative; z-index: 1; width: min(100%, 412px); padding: calc(env(safe-area-inset-top) + 54px) 30px 30px; }
.m-login-v3 .m-login-brand-row { display: flex; align-items: center; gap: 14px; }
.m-login-v3 .m-login-mark {
  width: 48px; height: 48px; border-radius: 15px; flex: none; position: relative; overflow: hidden;
  display: grid; place-items: center;
  background: conic-gradient(from 215deg, #2E55D4, #2C6BBE 30%, #27866E 58%, #1E3FA8 82%, #2E55D4);
  box-shadow: 0 8px 22px rgba(10,25,66,.6), inset 0 1px 0 rgba(255,255,255,.4), inset 0 -6px 14px rgba(9,20,50,.35);
  color: #fff; font-weight: 700; font-size: 22px; font-style: normal;
}
.m-login-v3 .m-login-mark::after { content: ""; position: absolute; inset: 0; background: linear-gradient(155deg, rgba(255,255,255,.42) 0 26%, transparent 27% 100%); }
.m-login-v3 .m-login-brand-row b { display: block; color: #fff; font-size: 17px; font-weight: 600; letter-spacing: .02em; }
.m-login-v3 .m-login-brand-row small { display: block; color: #A8E6D5; font-size: 10px; font-weight: 600; letter-spacing: .34em; margin-top: 4px; opacity: .85; }
.m-login-v3 .m-login-greet { margin-top: 36px; color: #fff; }
.m-login-v3 .m-login-greet h1 { margin: 0; font-size: 28px; font-weight: 600; letter-spacing: .01em; line-height: 1.32; text-wrap: balance; }
.m-login-v3 .m-login-greet h1 em { font-style: normal; background: linear-gradient(96deg, #9FC1FF, #A8E6D5); -webkit-background-clip: text; background-clip: text; color: transparent; }
.m-login-v3 .m-login-greet p { margin: 9px 0 0; font-size: 14px; color: rgba(214,228,244,.68); letter-spacing: .02em; line-height: 1.6; }
/* 毛玻璃表单卡 */
.m-login-sheet {
  position: relative; z-index: 1; width: min(100% - 32px, 412px); margin: 10px auto 0;
  border-radius: 24px; padding: 27px 22px 24px;
  background: linear-gradient(172deg, rgba(255,255,255,.94), rgba(248,251,253,.86));
  -webkit-backdrop-filter: blur(26px) saturate(1.35); backdrop-filter: blur(26px) saturate(1.35);
  border: 1px solid rgba(255,255,255,.5);
  box-shadow: 0 30px 60px -22px rgba(6,16,44,.65), inset 0 1px 0 rgba(255,255,255,.95), inset 0 -1px 0 rgba(19,42,80,.06);
}
.m-login-v3 .m-login-field { margin: 0 0 18px; padding: 0; }
.m-login-v3 .m-login-field label { display: block; font-size: 11px; font-weight: 600; color: #5E6C80; letter-spacing: .09em; margin-bottom: 8px; transition: color .2s; }
.m-login-v3 .m-login-field:focus-within label { color: #2C6BBE; }
.m-login-control, .m-login-v3 .login-password-control { position: relative; display: flex; align-items: center; }
.m-login-v3 .m-login-control input,
.m-login-v3 .login-password-control input {
  width: 100%; height: 52px; font: inherit; font-size: 16px; font-weight: 500; color: #131F35;
  font-variant-numeric: tabular-nums; letter-spacing: .02em;
  background: rgba(255,255,255,.92); border: 1px solid rgba(19,42,80,.13); border-radius: 14px;
  padding: 0 48px 0 16px; box-shadow: inset 0 1px 2px rgba(19,42,80,.05);
  transition: border-color .2s, box-shadow .2s, background-color .2s;
}
.m-login-v3 .m-login-control input::placeholder,
.m-login-v3 .login-password-control input::placeholder { color: #A3AEBE; font-weight: 400; }
.m-login-v3 .m-login-control input:focus,
.m-login-v3 .login-password-control input:focus {
  outline: none; border-color: #2C6BBE; background: #fff;
  box-shadow: 0 0 0 4px rgba(44,107,190,.22), inset 0 1px 2px rgba(19,42,80,.04);
}
.m-login-clear,
.m-login-v3 .login-password-toggle {
  position: absolute; right: 6px; width: 40px; height: 40px; border: 0; background: none; border-radius: 10px;
  display: grid; place-items: center; color: #98A4B4; cursor: pointer; transition: color .2s, background-color .2s;
}
.m-login-v3 .login-password-toggle svg { width: 20px; height: 20px; fill: none; stroke: currentColor; stroke-width: 1.6; stroke-linecap: round; stroke-linejoin: round; }
.m-login-clear:hover, .m-login-v3 .login-password-toggle:hover { color: #2C6BBE; background: rgba(44,107,190,.08); }
.m-login-clear:focus-visible { outline: 2px solid #2C6BBE; outline-offset: 2px; }
/* 记住账号：宝石渐变开关 */
.m-login-row { display: flex; align-items: center; justify-content: space-between; margin: 2px 2px 20px; gap: 12px; }
.m-login-remember { display: flex; align-items: center; gap: 10px; font-size: 13px; color: #131F35; cursor: pointer; }
.m-login-remember input { position: absolute; opacity: 0; width: 0; height: 0; }
.m-login-switch { width: 42px; height: 25px; border-radius: 99px; background: #D3DAE3; flex: none; position: relative; transition: background .25s; box-shadow: inset 0 1px 2px rgba(19,42,80,.15); }
.m-login-switch::after { content: ""; position: absolute; top: 2.5px; left: 2.5px; width: 20px; height: 20px; border-radius: 50%; background: #fff; box-shadow: 0 1px 3px rgba(10,25,66,.35); transition: transform .25s cubic-bezier(.34,1.4,.64,1); }
.m-login-remember input:checked + .m-login-switch { background: linear-gradient(120deg, #2E55D4, #2C6BBE 45%, #27866E); box-shadow: inset 0 1px 2px rgba(10,25,66,.3); }
.m-login-remember input:checked + .m-login-switch::after { transform: translateX(17px); }
.m-login-remember input:focus-visible + .m-login-switch { outline: 2px solid #2C6BBE; outline-offset: 2px; }
.m-login-remember small { display: block; color: #5E6C80; font-size: 11px; margin-top: 1px; font-weight: 400; }
.m-login-forgot { margin: 0; font-size: 13px; color: #5E6C80; text-align: right; line-height: 1.5; }
.m-login-forgot b { color: #2C6BBE; font-weight: 600; }
/* CTA：宝石渐变 + 流光扫过 */
.m-login-cta {
  position: relative; overflow: hidden;
  width: 100%; height: 53px; border: 0; border-radius: 15px; cursor: pointer;
  font: inherit; font-size: 17px; font-weight: 600; letter-spacing: .08em; color: #fff;
  background: linear-gradient(150deg, #2E55D4, #2C6BBE 44%, #27866E);
  box-shadow: 0 14px 28px -10px rgba(37,82,180,.6), 0 6px 18px -8px rgba(39,134,110,.5), inset 0 1px 0 rgba(255,255,255,.32), inset 0 -8px 16px rgba(14,30,80,.22);
  transition: transform .12s, box-shadow .2s, filter .2s;
}
.m-login-cta::after {
  content: ""; position: absolute; top: 0; bottom: 0; left: 0; width: 44%;
  background: linear-gradient(105deg, transparent, rgba(255,255,255,.38) 48%, transparent);
  transform: translateX(-130%) skewX(-14deg);
  animation: m-login-cta-sweep 4.4s ease-in-out infinite;
}
@keyframes m-login-cta-sweep {
  0%, 58% { transform: translateX(-130%) skewX(-14deg) }
  88%, 100% { transform: translateX(330%) skewX(-14deg) }
}
.m-login-cta:hover { filter: brightness(1.06); }
.m-login-cta:active { transform: scale(.98); box-shadow: 0 6px 14px -8px rgba(37,82,180,.55); }
.m-login-cta:focus-visible { outline: 3px solid rgba(44,107,190,.22); outline-offset: 2px; }
.m-login-cta:disabled { filter: saturate(.6) brightness(.92); cursor: default; }
.m-login-hint { margin: 14px 0 0; text-align: center; font-size: 12px; color: #5E6C80; letter-spacing: .03em; }
.m-login-v3 .login-error { margin-top: 10px; text-align: center; }
.m-login-v3 .login-notice { margin-bottom: 14px; }
/* 页脚 */
.m-login-v3 .m-login-footer {
  position: relative; z-index: 1; margin: auto auto 0; padding: 30px 0 calc(env(safe-area-inset-bottom) + 22px);
  display: flex; align-items: center; gap: 8px;
  color: rgba(206,224,238,.42); font-size: 11px; letter-spacing: .05em; font-variant-numeric: tabular-nums;
  background: none; border: 0; width: auto;
}
.m-login-v3 .m-login-footer i { width: 3px; height: 3px; border-radius: 50%; background: currentColor; margin: 0; }
.m-login-v3 .m-login-footer svg { opacity: .7; }
@media (prefers-reduced-motion: reduce) {
  .m-login-prism, .m-login-prism.two { animation: none; }
  .m-login-cta::after { animation: none; display: none; }
}

/* 老板端 · 客户删除审批 */
.om-delete-requests header b { color: var(--amber-deep); font-size: 15px; font-weight: 700; }
.om-delete-request-list { display: grid; gap: 10px; }
.om-delete-request { display: grid; gap: 10px; padding: 13px 14px; border-radius: 14px; background: rgba(192,126,18,.06); box-shadow: inset 0 0 0 1px rgba(192,126,18,.16); }
.om-delete-request > div:first-child b { color: #16212e; font-size: 14.5px; }
.om-delete-request > div:first-child small { display: block; margin-top: 2px; color: #8a939c; font-size: 11.5px; }
.om-delete-request > div:first-child p { margin: 6px 0 0; color: #4b5563; font-size: 12.5px; line-height: 1.5; }
.om-delete-request-actions { display: flex; gap: 8px; }
.om-delete-request-actions button { flex: 1; min-height: 40px; border-radius: 11px; font-size: 13px; }
.om-delete-request-actions .danger-action { color: var(--red); }

/* ── 送装师傅端 + 派单时间段/师傅选择 ── */
.m-fin-board-day .m-fin-board-sub { background: transparent; color: #b07a10; font-size: 9.5px; font-weight: 700; padding: 0; }
.m-fin-slot-presets label span { font-size: 12.5px; }
.m-fin-slot-tip.is-full { color: #c2410c; font-weight: 700; }
.m-fin-crew { display: grid; gap: 6px; padding: 10px 12px; border-radius: 12px; background: #f6f8fc; }
.m-fin-crew > span { font-size: 11px; font-weight: 800; color: #64748b; }
.m-fin-crew .m-fin-option { margin: 0; }
.m-del-hero span { display: block; font-size: 12px; opacity: .85; }
.m-del-hero h1 { margin: 4px 0 2px; font-size: 24px; }
.m-del-next-head, .m-del-board-head { display: flex; align-items: center; justify-content: space-between; margin-bottom: 10px; }
.m-del-next-head span { font-size: 11px; font-weight: 800; color: #2E55D4; }
.m-del-next-head b, .m-del-board-head b { font-size: 14px; color: #17202e; }
.m-del-board-head span { font-size: 11px; color: #8a939c; }
.m-del-today .m-fin-delivery-card { margin-bottom: 10px; }
.m-del-today .m-fin-delivery-card:last-child { margin-bottom: 0; }
.m-del-empty { color: #8a939c; font-size: 12px; }
.m-del-guide { display: block; color: #94a0b1; font-size: 10.5px; margin-top: 2px; }
.m-order-card-actions .m-del-call { display: flex; align-items: center; justify-content: center; min-height: 44px; border-radius: 11px; font-size: 13px; font-weight: 800; text-decoration: none; }
.m-shell:not(.m-owner-shell) .m-order-card-actions a.m-del-call { color: #fff; background: linear-gradient(138deg, #2E55D4 0%, #2A63C1 52%, #24856C 100%); box-shadow: inset 0 1px 0 rgba(255,255,255,.3), 0 9px 22px -9px rgba(37,80,170,.75); }
.m-order-card-actions .m-del-call { grid-column: 1 / -1; }
.m-del-nav { margin-left: 8px; flex: none; font-size: 11.5px; font-weight: 800; color: #2E55D4; text-decoration: none; }
.m-del-board-head .ghost.compact { min-height: 30px; padding: 2px 12px; font-size: 11.5px; }
.m-shell:not(.m-owner-shell) .m-page-head [data-del-refresh] { flex: none; }
/* 底栏列数跟随 tab 数量（师傅端4个、导购/财务5个、老板6个） */
.m-tabbar.m-tabbar-3 { grid-template-columns: repeat(3, minmax(0, 1fr)); }
.m-tabbar.m-tabbar-4 { grid-template-columns: repeat(4, minmax(0, 1fr)); }
.m-tabbar.m-tabbar-6 { grid-template-columns: repeat(6, minmax(0, 1fr)); }
/* 任务/状态筛选标签铺满整行, 数量自适应等分 */
.m-shell:not(.m-owner-shell) .m-fin-tabs { display: flex; }
.m-shell:not(.m-owner-shell) .m-fin-tabs button { flex: 1 1 0; min-width: 0; }
.m-del-task-card .m-order-card-actions { grid-template-columns: repeat(2, minmax(0, 1fr)); }

/* 组长小组页 + 组织设置小组列 */
.m-group-summary .m-group-metrics { margin-top: 2px; }
.m-group-member { margin-bottom: 10px; }
.m-group-member header { display: flex; align-items: flex-start; justify-content: space-between; gap: 8px; margin-bottom: 10px; }
.m-group-id { display: flex; align-items: center; gap: 10px; }
.m-group-id b { font-size: 14.5px; color: #17202e; }
.m-group-id b em { font-style: normal; font-size: 11px; color: #2E55D4; font-weight: 800; }
.m-group-id small { display: block; color: #8a939c; font-size: 11px; margin-top: 1px; }
.m-group-flags { display: flex; gap: 4px; flex-wrap: wrap; justify-content: flex-end; }
.m-group-metrics { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 8px; }
.m-group-metrics > div { display: grid; gap: 1px; padding: 8px 6px; border-radius: 11px; background: #f6f8fc; text-align: center; }
.m-group-metrics b { font-size: 14px; font-weight: 800; color: #1d2733; font-variant-numeric: tabular-nums; }
.m-group-metrics span { font-size: 10px; color: #8a939c; font-weight: 700; }
.m-group-actions { margin-top: 10px; }
.org-group-select { min-height: 32px; padding: 2px 6px; border: 1px solid #dbe2ec; border-radius: 8px; background: #fff; font-size: 12px; color: #334155; }

/* ── PC 送装调度 + 桌面宿主的业务弹窗 ── */
.m-modal.m-modal-desktop { position: fixed; inset: 0; z-index: 400; display: flex; align-items: center; justify-content: center; }
.m-modal.m-modal-desktop .m-modal-backdrop { position: absolute; inset: 0; border: 0; background: rgba(15, 23, 42, .45); }
.m-modal.m-modal-desktop .m-modal-sheet { position: relative; width: min(560px, calc(100vw - 48px)); max-height: min(86vh, 780px); overflow: auto; border-radius: 18px; background: #fff; box-shadow: 0 24px 64px -24px rgba(15, 23, 42, .45); padding: 18px 20px calc(18px + 62px); }
.m-modal.m-modal-desktop .m-modal-actions { position: sticky; bottom: -18px; margin: 12px -20px -18px; padding: 12px 20px; background: #fff; border-top: 1px solid #eef1f5; }
.pc-dispatch-board { display: flex; gap: 10px; flex-wrap: wrap; }
.pc-dispatch-day { display: grid; gap: 2px; min-width: 84px; padding: 10px 12px; border-radius: 12px; background: #f4f7fb; text-align: center; }
.pc-dispatch-day span { font-size: 12px; font-weight: 700; color: #475569; }
.pc-dispatch-day small { font-size: 11px; color: #94a3b8; }
.pc-dispatch-day b { font-size: 15px; color: #0e8a72; font-variant-numeric: tabular-nums; }
.pc-dispatch-day i { font-style: normal; font-size: 10.5px; color: #b07a10; }
.pc-dispatch-day.is-full b { color: #c74228; }
.pc-dispatch-day.is-full { background: #fdf0ec; }
.pc-aftersale-tabs { display: inline-flex; }
.text-danger { color: #c74228; font-weight: 700; }

/* ══ 经营驾驶舱 v2 · 审批条 / 团队执行 / 经营面 ══ */
.manager-approval-strip { display: flex; gap: 10px; flex-wrap: wrap; margin: 0 0 14px; }
.manager-approval-strip button { display: flex; align-items: center; gap: 10px; min-height: 52px; padding: 8px 16px; border: 0; border-radius: 13px; background: #fff; box-shadow: inset 0 0 0 1px var(--line), 0 1px 2px rgba(15,23,42,.05); cursor: pointer; transition: transform .12s, box-shadow .2s; }
.manager-approval-strip button:hover { transform: translateY(-1px); box-shadow: inset 0 0 0 1px var(--line), 0 6px 14px -6px rgba(15,23,42,.18); }
.manager-approval-strip button b { font-size: 20px; font-weight: 750; font-variant-numeric: tabular-nums; }
.manager-approval-strip button span { color: #334155; font-size: 13px; font-weight: 600; }
.manager-approval-strip button em { color: var(--muted); font-size: 12px; font-style: normal; }
.manager-approval-strip button.amber b { color: var(--amber-deep); }
.manager-approval-strip button.red b { color: var(--red); }
.manager-approval-strip button.blue b { color: var(--blue); }
/* 团队执行 */
.manager-pulse-rates { display: grid; grid-template-columns: 1fr 1fr; gap: 8px; margin-bottom: 12px; }
.manager-pulse-rate { padding: 10px 12px; border-radius: 12px; background: #f7f9fb; box-shadow: inset 0 0 0 1px rgba(15,23,42,.04); }
.manager-pulse-rate span { display: block; color: var(--muted); font-size: 11.5px; }
.manager-pulse-rate b { display: block; margin: 2px 0; font-size: 19px; font-weight: 750; font-variant-numeric: tabular-nums; color: var(--ink); }
.manager-pulse-rate small { color: #8a939c; font-size: 11px; }
.manager-pulse-rate.amber b { color: var(--amber-deep); }
.manager-pulse-rate.red b { color: var(--red); }
.manager-pulse-rate.green b { color: var(--teal); }
.manager-pulse-problems { display: grid; gap: 8px; margin-bottom: 10px; }
.manager-pulse-problem { display: flex; align-items: center; justify-content: space-between; gap: 10px; padding: 9px 12px; border-radius: 11px; background: rgba(192,126,18,.06); box-shadow: inset 0 0 0 1px rgba(192,126,18,.14); }
.manager-pulse-problem.red { background: rgba(199,66,40,.06); box-shadow: inset 0 0 0 1px rgba(199,66,40,.16); }
.manager-pulse-problem b { font-size: 13.5px; color: var(--ink); }
.manager-pulse-problem small { display: block; color: #8a939c; font-size: 11.5px; margin-top: 1px; }
.manager-pulse-ok { margin: 0 0 10px; color: var(--muted); font-size: 12.5px; }
/* 经营面：送装 + 回款 */
.manager-ops-grid { display: grid; grid-template-columns: 1fr 1fr; gap: 14px; margin: 0 0 14px; }
@media (max-width: 1100px) { .manager-ops-grid { grid-template-columns: 1fr; } }
.manager-ops-days { display: grid; grid-template-columns: 1fr 1fr; gap: 10px; margin-bottom: 10px; }
.manager-ops-day { padding: 12px 14px; border-radius: 12px; background: var(--teal-soft); box-shadow: inset 0 0 0 1px rgba(14,138,114,.14); }
.manager-ops-day.is-full { background: var(--red-soft); box-shadow: inset 0 0 0 1px rgba(199,66,40,.16); }
.manager-ops-day span { color: var(--muted); font-size: 12px; }
.manager-ops-day b { display: block; margin: 2px 0; font-size: 22px; font-weight: 750; font-variant-numeric: tabular-nums; color: var(--ink); }
.manager-ops-day.is-full b { color: var(--red); }
.manager-ops-day small { color: #6a737c; font-size: 11.5px; }
.manager-ops-meta { display: flex; gap: 14px; flex-wrap: wrap; color: var(--muted); font-size: 12px; margin-bottom: 10px; }
.manager-ops-guides span { padding: 3px 9px; border-radius: 999px; background: rgba(192,126,18,.1); color: var(--amber-deep); font-weight: 600; }
.manager-ops-debts { display: grid; gap: 8px; margin-bottom: 10px; }
.manager-ops-debt { display: flex; align-items: center; gap: 10px; width: 100%; padding: 9px 12px; border: 0; border-radius: 11px; background: #f7f9fb; box-shadow: inset 0 0 0 1px rgba(15,23,42,.05); cursor: pointer; text-align: left; }
.manager-ops-debt:hover { background: #f1f5f9; }
.manager-ops-debt span { flex: 1; min-width: 0; }
.manager-ops-debt b { font-size: 13.5px; color: var(--ink); }
.manager-ops-debt small { display: block; color: #8a939c; font-size: 11.5px; margin-top: 1px; }
.manager-ops-debt strong { color: var(--amber-deep); font-size: 15px; font-weight: 750; font-variant-numeric: tabular-nums; }
.manager-ops-more { width: 100%; }

/* 订单业绩分成（协同跟进比例） */
.m-order-split-row { display: flex; align-items: center; justify-content: space-between; gap: 12px; margin: 6px 0; }
.m-order-split-row > span { font-weight: 700; }
.m-order-split-row .m-money-input { max-width: 132px; }
.m-order-split-total { text-align: right; font-weight: 800; font-size: 13px; color: #475569; }
.m-order-split-total.bad { color: #c92f36; }

/* PC 订单分成编辑器 */
.pc-order-split-editor { display: flex; flex-wrap: wrap; gap: 10px; align-items: center; margin: 10px 0; padding: 10px 12px; background: #f8fafc; border-radius: 10px; }
.pc-order-split-editor > b { width: 100%; font-size: 13px; }
.pc-order-split-editor label { display: flex; align-items: center; gap: 6px; font-size: 13px; font-weight: 600; }
.pc-order-split-editor input { width: 76px; }
.pc-split-total { font-weight: 800; font-size: 13px; color: #475569; }
.pc-split-total.bad { color: #c92f36; }

/* 老板端送货与售后只读经营中心 */
.om-readonly-banner { display:flex; align-items:center; gap:10px; padding:12px 14px; border-radius:16px; background:#eef4ff; box-shadow:inset 0 0 0 1px rgba(37,99,235,.1); }
.om-readonly-banner>i { padding:5px 8px; border-radius:8px; color:#fff; background:#2563eb; font-size:10px; font-style:normal; font-weight:800; letter-spacing:.08em; }
.om-readonly-banner span { min-width:0; }.om-readonly-banner b,.om-readonly-banner small { display:block; }.om-readonly-banner b { color:#172033; font-size:12.5px; }.om-readonly-banner small { margin-top:2px; color:#64748b; font-size:10.5px; line-height:1.4; }
.om-fulfilment-risk-strip { display:grid; grid-template-columns:repeat(3,1fr); gap:7px; }
.om-fulfilment-risk-strip>div { padding:10px 8px; border-radius:13px; background:#fff; box-shadow:0 2px 8px rgba(22,31,39,.05); text-align:center; }
.om-fulfilment-risk-strip span,.om-fulfilment-risk-strip b { display:block; }.om-fulfilment-risk-strip span { color:#7b8792; font-size:9.5px; }.om-fulfilment-risk-strip b { margin-top:3px; color:#c74228; font-size:16px; font-weight:800; font-variant-numeric:tabular-nums; }
.om-fulfilment-trend { display:grid; gap:9px; }.om-fulfilment-trend>div { display:grid; grid-template-columns:38px minmax(70px,1fr) 112px; gap:8px; align-items:center; }.om-fulfilment-trend span,.om-fulfilment-trend b { color:#64707a; font-size:10.5px; font-weight:600; }.om-fulfilment-trend b { text-align:right; }.om-fulfilment-trend i { position:relative; height:9px; border-radius:999px; background:#edf1f5; overflow:hidden; }.om-fulfilment-trend i em,.om-fulfilment-trend i u { position:absolute; left:0; height:4px; border-radius:999px; }.om-fulfilment-trend i em { top:0; background:#3b82f6; }.om-fulfilment-trend i u { bottom:0; background:#f59e0b; }
.om-fulfilment-stores>div { display:grid; gap:7px; }.om-fulfilment-stores article { display:grid; grid-template-columns:minmax(0,1fr) auto auto; gap:10px; align-items:center; padding:11px 12px; border-radius:13px; background:#f6f8f8; }.om-fulfilment-stores article.risk { background:#fff6f2; }.om-fulfilment-stores article div b,.om-fulfilment-stores article div small { display:block; }.om-fulfilment-stores article div b { font-size:12.5px; }.om-fulfilment-stores article small { margin-top:2px; color:#7b8792; font-size:10px; }.om-fulfilment-stores article>span { text-align:center; }.om-fulfilment-stores article>span b,.om-fulfilment-stores article>span small { display:block; }.om-fulfilment-stores article>span b { font-size:14px; }.om-fulfilment-stores article>em { color:#0e8a72; font-size:10.5px; font-style:normal; font-weight:700; }.om-fulfilment-stores article.risk>em { color:#c74228; }
.om-owner-aftersale-list>div { display:grid; gap:8px; }.om-owner-aftersale-list button { min-width:0; display:grid; grid-template-columns:5px minmax(0,1fr) auto; gap:4px 10px; align-items:center; width:100%; padding:12px; border:0; border-radius:14px; color:#172033; background:#f6f8f8; text-align:left; }.om-owner-aftersale-list button>i { grid-row:1/3; width:5px; height:40px; border-radius:5px; background:#3b82f6; }.om-owner-aftersale-list button>i.amber,.om-owner-aftersale-list button.overdue>i { background:#f59e0b; }.om-owner-aftersale-list button>span { min-width:0; }.om-owner-aftersale-list button span>* { display:block; overflow:hidden; text-overflow:ellipsis; white-space:nowrap; }.om-owner-aftersale-list button span>b { font-size:12.5px; }.om-owner-aftersale-list button span>small,.om-owner-aftersale-list button span>strong { margin-top:3px; color:#64707a; font-size:10.5px; }.om-owner-aftersale-list button>u { align-self:start; color:#174e89; font-size:10.5px; font-weight:700; text-decoration:none; }.om-owner-aftersale-list button.overdue>u { color:#c74228; }.om-owner-aftersale-list button>em { grid-column:3; align-self:end; color:#0e8a72; font-size:10.5px; font-style:normal; font-weight:700; }
.om-fulfilment-order-summary { display:grid; grid-template-columns:1fr 1fr; gap:8px; }.om-fulfilment-order-summary>div { padding:11px; border-radius:12px; background:#f6f8f8; }.om-fulfilment-order-summary span,.om-fulfilment-order-summary b { display:block; }.om-fulfilment-order-summary span { color:#7b8792; font-size:10px; }.om-fulfilment-order-summary b { margin-top:3px; font-size:13px; }
.om-fulfilment-timeline { position:relative; display:grid; gap:0; margin-top:14px; }.om-fulfilment-timeline article { position:relative; display:grid; grid-template-columns:16px 1fr; gap:10px; min-height:70px; }.om-fulfilment-timeline article:before { content:""; position:absolute; left:5px; top:12px; bottom:-4px; width:1px; background:#dbe3ea; }.om-fulfilment-timeline article:last-child:before { display:none; }.om-fulfilment-timeline article>i { position:relative; z-index:1; width:11px; height:11px; margin-top:4px; border:3px solid #dce9ff; border-radius:50%; background:#2563eb; }.om-fulfilment-timeline time,.om-fulfilment-timeline b,.om-fulfilment-timeline p { display:block; }.om-fulfilment-timeline time { color:#8a95a0; font-size:9.5px; }.om-fulfilment-timeline b { margin-top:2px; font-size:12.5px; }.om-fulfilment-timeline p { margin:3px 0 0; color:#64707a; font-size:10.5px; line-height:1.45; }
.om-readonly-note { margin:4px 0 0; padding:10px 12px; border-radius:12px; color:#536171; background:#eef4ff; font-size:10.5px; line-height:1.5; }
@media (max-width:390px) { .om-fulfilment-trend>div { grid-template-columns:34px minmax(60px,1fr) 100px; }.om-fulfilment-stores article { grid-template-columns:minmax(0,1fr) auto; }.om-fulfilment-stores article>em { grid-column:1/3; } }

/* Mobile customer workspace v3: one decision row, progressive filters, list-first layout. */
.m-shell:not(.m-owner-shell) .m-customer-page-head { min-height:54px; padding-block:0; }
.m-shell:not(.m-owner-shell) .m-customer-page-head h2 { margin-top:1px; font-size:22px; letter-spacing:-.035em; }
.m-shell:not(.m-owner-shell) .m-customer-page-head p { margin-top:2px; }
.m-shell:not(.m-owner-shell) .m-customer-page-head .m-customer-add { min-width:70px; min-height:40px; border-radius:12px; box-shadow:0 7px 16px rgba(28,78,164,.14); }
.m-shell:not(.m-owner-shell) .m-customer-workmode-filter { gap:3px; padding:3px; border-color:#dbe4f0; border-radius:13px; background:#eaf0f8; }
.m-shell:not(.m-owner-shell) .m-customer-workmode-filter button { min-height:40px; display:flex; justify-content:center; gap:7px; padding:0 7px; border-radius:10px; font-size:10px; }
.m-shell:not(.m-owner-shell) .m-customer-workmode-filter button b { font-size:13px; }
.m-shell:not(.m-owner-shell) .m-customer-workmode-filter button.active { border-color:transparent; box-shadow:0 3px 9px rgba(30,64,125,.09); }
.m-shell:not(.m-owner-shell) .m-customer-search input { min-height:42px; padding-right:102px; border-radius:13px; box-shadow:none; }
.m-shell:not(.m-owner-shell) .m-customer-search::before { top:12px; }
.m-shell:not(.m-owner-shell) .m-customer-search::after { top:26px; }
.m-shell:not(.m-owner-shell) .m-customer-search .m-customer-search-submit { top:4px; min-height:34px; padding-inline:13px; }
.m-shell:not(.m-owner-shell) .m-customer-search .m-customer-search-clear { top:3px; right:61px; }
.m-shell:not(.m-owner-shell) .m-customer-filter-card { gap:6px; padding:5px; border-radius:13px; background:rgba(255,255,255,.72); }
.m-shell:not(.m-owner-shell) .m-customer-filter-toolbar { grid-template-columns:minmax(0,1fr) auto; gap:4px; }
.m-shell:not(.m-owner-shell) .m-customer-filter-toolbar .m-customer-level-chips { grid-template-columns:1.15fr repeat(4,minmax(0,1fr)); gap:3px; }
.m-shell:not(.m-owner-shell) .m-customer-filter-toolbar .m-customer-level-chips button { min-height:32px; gap:3px; padding-inline:2px; border-radius:8px; }
.m-shell:not(.m-owner-shell) .m-customer-filter-toolbar .m-customer-level-chips button::before { width:4px; height:4px; }
.m-shell:not(.m-owner-shell) .m-customer-filter-toolbar .m-customer-filter-toggle { min-width:58px; min-height:32px; padding-inline:7px; border-radius:8px; }
.m-shell:not(.m-owner-shell) .m-customer-advanced-filter { gap:9px; max-height:54dvh; padding:10px 5px 4px; overflow-y:auto; }
.m-shell:not(.m-owner-shell) .m-customer-filter-group { display:grid; gap:5px; }
.m-shell:not(.m-owner-shell) .m-customer-filter-group > span { color:#718096; font-size:9px; font-weight:900; }
.m-shell:not(.m-owner-shell) .m-customer-advanced-filter .m-customer-participation-filter,
.m-shell:not(.m-owner-shell) .m-customer-advanced-filter .m-customer-scope-filter { gap:3px; padding:3px; border:0; border-radius:10px; background:#f1f5f9; }
.m-shell:not(.m-owner-shell) .m-customer-advanced-filter .m-customer-participation-filter button,
.m-shell:not(.m-owner-shell) .m-customer-advanced-filter .m-customer-scope-filter button { min-height:34px; display:flex; justify-content:center; gap:5px; padding:0 6px; border:0; border-radius:8px; font-size:9px; box-shadow:none; }
.m-shell:not(.m-owner-shell) .m-customer-advanced-filter .m-customer-participation-filter button b,
.m-shell:not(.m-owner-shell) .m-customer-advanced-filter .m-customer-scope-filter button b { font-size:11px; }
.m-shell:not(.m-owner-shell) .m-customer-advanced-filter .m-customer-participation-filter button.active,
.m-shell:not(.m-owner-shell) .m-customer-advanced-filter .m-customer-scope-filter button.active { background:#fff; box-shadow:0 2px 7px rgba(30,64,125,.08); }
.m-shell:not(.m-owner-shell) .m-customer-filter-summary { min-height:29px; padding:4px 2px 0; }
.m-shell:not(.m-owner-shell) .m-customer-filter-summary button { min-height:27px; }
.m-shell:not(.m-owner-shell) .m-customer-list-card { padding-top:9px; border-radius:15px; }
.m-shell:not(.m-owner-shell) .m-customer-list-head { min-height:32px; gap:8px; }
.m-shell:not(.m-owner-shell) .m-customer-risk-shortcuts { min-width:0; display:flex; justify-content:flex-end; gap:5px; }
.m-shell:not(.m-owner-shell) .m-customer-risk-shortcuts button { min-height:29px; display:inline-flex; align-items:center; gap:4px; padding:0 8px; border:1px solid #f4d9bf; border-radius:8px; color:#a35421; background:#fff8f1; font-size:9px; font-weight:850; transition:transform .16s ease,background-color .16s ease; }
.m-shell:not(.m-owner-shell) .m-customer-risk-shortcuts button b { color:#c24135; font-size:10px; font-variant-numeric:tabular-nums; }
.m-shell:not(.m-owner-shell) .m-customer-risk-shortcuts button.active { color:#fff; border-color:#c24135; background:#c24135; }
.m-shell:not(.m-owner-shell) .m-customer-risk-shortcuts button.active b { color:#fff; }
.m-shell:not(.m-owner-shell) .m-customer-risk-shortcuts button:active,
.m-shell:not(.m-owner-shell) .m-customer-workmode-filter button:active,
.m-shell:not(.m-owner-shell) .m-customer-filter-card button:active { transform:scale(.98); }
.m-shell:not(.m-owner-shell) .m-customer-risk-shortcuts button:focus-visible { outline:3px solid rgba(194,65,53,.2); outline-offset:2px; }
@media (max-width:360px) {
  .m-shell:not(.m-owner-shell) .m-customer-filter-toolbar { grid-template-columns:minmax(0,1fr) auto; }
  .m-shell:not(.m-owner-shell) .m-customer-filter-toolbar .m-customer-filter-toggle { width:auto; }
  .m-shell:not(.m-owner-shell) .m-customer-workmode-filter button { gap:4px; font-size:9px; }
  .m-shell:not(.m-owner-shell) .m-customer-risk-shortcuts button { padding-inline:6px; }
}
@media (prefers-reduced-motion:reduce) {
  .m-shell:not(.m-owner-shell) .m-customer-risk-shortcuts button { transition:none; }
}
