:root {
  --ink: #1f2933;
  --muted: #667085;
  --soft: #8a94a6;
  --line: #dde3ea;
  --line-strong: #cbd5df;
  --paper: #f4f7fa;
  --panel: #ffffff;
  --panel-soft: #f8fafc;
  --brand: #9a2f25;
  --brand-dark: #6f2018;
  --brand-soft: #fff1ee;
  --blue: #245b83;
  --blue-soft: #edf5fb;
  --green: #22715e;
  --green-soft: #edf8f4;
  --gold: #9f6b22;
  --gold-soft: #fff7e8;
  --danger: #b42318;
  --shadow: 0 18px 45px rgba(31, 41, 51, .08);
}

* { box-sizing: border-box; }

html { background: var(--paper); }

body {
  margin: 0;
  font-family: -apple-system, BlinkMacSystemFont, "PingFang SC", "Microsoft YaHei", sans-serif;
  color: var(--ink);
  background:
    linear-gradient(180deg, #eef3f7 0, var(--paper) 360px),
    var(--paper);
  overflow-x: hidden;
}

button,
input,
textarea,
select {
  font: inherit;
  max-width: 100%;
}

button {
  border: 0;
  background: var(--brand);
  color: #fff;
  border-radius: 7px;
  padding: 10px 15px;
  min-height: 42px;
  cursor: pointer;
  font-weight: 650;
  line-height: 1.2;
  box-shadow: 0 8px 16px rgba(154, 47, 37, .14);
}

button:hover { filter: brightness(.98); }
button.secondary { background: var(--blue); box-shadow: 0 8px 16px rgba(36, 91, 131, .13); }
button.ghost { background: transparent; color: var(--brand); border: 1px solid var(--line-strong); box-shadow: none; }
button:disabled { opacity: .5; cursor: not-allowed; box-shadow: none; }

#app {
  min-height: 100vh;
  display: grid;
  grid-template-columns: 260px minmax(0, 1fr);
}

.sidebar {
  background: rgba(255, 255, 255, .92);
  border-right: 1px solid var(--line);
  padding: 22px 16px;
  position: sticky;
  top: 0;
  height: 100vh;
  display: flex;
  flex-direction: column;
  gap: 22px;
  backdrop-filter: blur(12px);
}

.brand { display: flex; gap: 12px; align-items: center; min-width: 0; }
.brand .mark {
  width: 48px;
  height: 48px;
  border-radius: 8px;
  background: linear-gradient(145deg, var(--brand), var(--brand-dark));
  color: white;
  display: grid;
  place-items: center;
  font-size: 23px;
  font-weight: 850;
  box-shadow: 0 12px 22px rgba(154, 47, 37, .22);
  flex: 0 0 auto;
}
.brand h1 { font-size: 17px; line-height: 1.3; margin: 0; letter-spacing: 0; }
.brand p { margin: 3px 0 0; color: var(--muted); font-size: 12px; }

nav { display: grid; gap: 6px; }
.nav-group {
  margin: 12px 8px 2px;
  color: var(--soft);
  font-size: 12px;
  font-weight: 800;
}
nav button {
  background: transparent;
  color: var(--ink);
  text-align: left;
  border: 1px solid transparent;
  box-shadow: none;
  border-radius: 7px;
  min-height: 40px;
  padding: 10px 12px;
  font-weight: 620;
}
nav button.active {
  background: var(--brand-soft);
  border-color: #f1c9c1;
  color: var(--brand-dark);
}
nav button.locked {
  color: var(--muted);
}
nav button.locked::after {
  content: "需升级";
  float: right;
  font-size: 11px;
  color: #8f241c;
  background: #fff1ee;
  border-radius: 999px;
  padding: 2px 6px;
  margin-left: 8px;
}
nav button.admin-only {
  margin-top: 8px;
  background: var(--blue-soft);
  color: var(--blue);
  border-color: #cde3f2;
}

.account {
  margin-top: auto;
  border-top: 1px solid var(--line);
  padding-top: 16px;
  color: var(--muted);
  display: grid;
  gap: 10px;
  min-width: 0;
  font-size: 13px;
}

main {
  padding: 26px;
  min-width: 0;
  max-width: 1480px;
  width: 100%;
}

.hidden { display: none !important; }
.feature-hidden { display: none !important; }

.page-map {
  margin: 0 0 18px;
  padding: 12px 14px;
  border: 1px solid #cde3f2;
  border-radius: 8px;
  background: linear-gradient(180deg, #f7fbfd 0, #ffffff 100%);
  box-shadow: 0 12px 28px rgba(36, 91, 131, .07);
  position: sticky;
  top: 12px;
  z-index: 8;
}

.page-map-head {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  gap: 14px;
  align-items: center;
  margin-bottom: 10px;
}

.page-map-head span {
  color: var(--blue);
  font-size: 12px;
  font-weight: 850;
  text-transform: uppercase;
}

.page-map-head strong {
  display: block;
  margin-top: 2px;
  color: var(--ink);
  font-size: 20px;
  line-height: 1.3;
}

.page-map-head p {
  margin: 4px 0 0;
  color: var(--muted);
  line-height: 1.45;
  font-size: 13px;
}

.page-map-head em {
  padding: 7px 10px;
  border-radius: 7px;
  background: var(--blue-soft);
  color: var(--blue);
  font-size: 12px;
  font-style: normal;
  font-weight: 850;
}

.secondary-menu-grid {
  display: grid;
  grid-template-columns: repeat(5, minmax(0, 1fr));
  gap: 8px;
}

.secondary-menu-item {
  min-height: 48px;
  display: grid;
  grid-template-columns: auto minmax(0, 1fr);
  gap: 8px;
  align-items: center;
  padding: 10px 12px;
  border: 1px solid var(--line);
  border-radius: 8px;
  background: #fff;
  color: var(--ink);
  text-align: left;
  box-shadow: none;
}

.secondary-menu-item:hover {
  border-color: #cde3f2;
  background: #f7fbfd;
}

.secondary-menu-item.active {
  border-color: #245b83;
  background: #edf5fb;
}

.secondary-menu-item span {
  width: 30px;
  height: 26px;
  display: grid;
  place-items: center;
  border-radius: 6px;
  background: var(--brand-soft);
  color: var(--brand-dark);
  font-size: 12px;
  font-weight: 900;
}

.secondary-menu-item strong {
  min-width: 0;
  color: var(--ink);
  line-height: 1.35;
  font-size: 15px;
}

.workbench-grid {
  display: grid;
  grid-template-columns: minmax(0, 1.15fr) minmax(360px, .85fr);
  gap: 18px;
  align-items: start;
}

.workbench-hero {
  min-height: 220px;
}

.profile-summary {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 16px;
  margin-bottom: 18px;
}

.profile-card {
  display: grid;
  gap: 9px;
  align-content: start;
  min-height: 170px;
  padding: 18px;
  border: 1px solid var(--line);
  border-radius: 8px;
  background: var(--panel);
  box-shadow: var(--shadow);
}

.profile-card span,
.profile-entitlements span {
  color: var(--muted);
  font-size: 12px;
  font-weight: 800;
}

.profile-card strong {
  font-size: 22px;
  color: var(--ink);
}

.profile-card p,
.profile-entitlements p {
  margin: 0;
  color: var(--muted);
  line-height: 1.65;
  font-size: 13px;
}

.profile-card.admin-entry {
  border-color: #cde3f2;
  background: var(--blue-soft);
}

.profile-entitlements {
  grid-column: 1 / -1;
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 12px;
}

.profile-entitlements > div {
  display: grid;
  gap: 6px;
  padding: 14px;
  border: 1px solid var(--line);
  border-radius: 8px;
  background: var(--panel);
}

.profile-entitlements > div.active {
  border-color: #bbdfca;
  background: var(--green-soft);
}

.profile-entitlements strong {
  color: var(--ink);
}

.auth-panel {
  min-height: calc(100vh - 52px);
  display: grid;
  place-items: center;
}
.auth-card {
  width: min(760px, 100%);
  background: var(--panel);
  border: 1px solid var(--line);
  border-radius: 8px;
  padding: 30px;
  box-shadow: var(--shadow);
}
.auth-card h2 { margin: 0 0 8px; font-size: 28px; }
.auth-card p { margin: 0 0 22px; color: var(--muted); line-height: 1.7; }
.register-box { margin-top: 20px; padding-top: 20px; border-top: 1px solid var(--line); }
.team-invite-landing {
  display: grid;
  gap: 12px;
  margin-bottom: 20px;
  padding: 14px;
  border: 1px solid rgba(36, 91, 131, .18);
  border-radius: 8px;
  background: #f7fbfd;
}
.team-invite-landing-head {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  gap: 10px;
  align-items: start;
}
.team-invite-landing-head span {
  color: var(--blue);
  font-size: 12px;
  font-weight: 800;
}
.team-invite-landing-head strong {
  display: block;
  margin-top: 4px;
  color: var(--ink);
  font-size: 18px;
}
.team-invite-landing-head p {
  margin: 5px 0 0;
  color: var(--muted);
  font-size: 13px;
  line-height: 1.55;
}
.team-invite-landing-head em {
  padding: 6px 8px;
  border-radius: 6px;
  background: #eaf2f8;
  color: var(--blue);
  font-size: 12px;
  font-style: normal;
  font-weight: 900;
}
.team-invite-landing-meta,
.team-invite-landing-path,
.team-invite-landing-tasks {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 8px;
}
.team-invite-landing-meta span,
.team-invite-landing-path span,
.team-invite-landing-tasks span {
  display: grid;
  gap: 3px;
  padding: 9px;
  border: 1px solid var(--line);
  border-radius: 7px;
  background: #fff;
  color: var(--muted);
  font-size: 12px;
  line-height: 1.45;
}
.team-invite-landing-path span.active {
  border-color: #bbdfca;
  background: #f4fbf6;
}
.team-invite-landing-meta strong,
.team-invite-landing-path strong,
.team-invite-landing-tasks strong {
  color: var(--ink);
  font-size: 13px;
}
.team-invite-landing-path em,
.team-invite-landing-tasks em {
  color: var(--muted);
  font-style: normal;
}

.actions,
.admin-toolbar {
  display: flex;
  gap: 10px;
  flex-wrap: wrap;
  align-items: center;
}
.actions { margin-top: 14px; }
.inline-actions {
  display: flex;
  gap: 10px;
  align-items: end;
  min-width: 0;
}

.activation {
  background: var(--gold-soft);
  border: 1px solid #ecd39a;
  border-radius: 8px;
  padding: 14px 16px;
  margin-bottom: 18px;
  display: flex;
  gap: 14px;
  align-items: center;
  flex-wrap: wrap;
}
.activation span { color: var(--muted); }
.activation input { width: 260px; }

.hero {
  display: grid;
  grid-template-columns: minmax(0, 1fr) 300px;
  gap: 22px;
  align-items: stretch;
  background:
    linear-gradient(115deg, rgba(111, 32, 24, .98), rgba(154, 47, 37, .96)),
    var(--brand-dark);
  color: white;
  border-radius: 8px;
  padding: 30px;
  box-shadow: var(--shadow);
}
.hero h2 {
  font-size: 34px;
  margin: 0 0 12px;
  max-width: 780px;
  line-height: 1.22;
  letter-spacing: 0;
}
.hero p { color: #f9ded9; margin: 0; line-height: 1.75; }
.eyebrow {
  font-size: 13px;
  margin-bottom: 8px !important;
  color: #ffd9a2 !important;
  font-weight: 700;
}
.hero-card {
  border: 1px solid rgba(255, 255, 255, .26);
  border-radius: 8px;
  padding: 20px;
  display: grid;
  align-content: center;
  background: rgba(255, 255, 255, .09);
}
.hero-card span { color: #ffd9a2; font-size: 13px; font-weight: 700; }
.hero-card strong { font-size: 26px; line-height: 1.28; margin-top: 6px; }

.section-title {
  margin-bottom: 18px;
  display: flex;
  align-items: flex-end;
  justify-content: space-between;
  gap: 16px;
}
.section-title h2 { margin: 0 0 6px; font-size: 26px; letter-spacing: 0; }
.section-title p { margin: 0; color: var(--muted); line-height: 1.7; }

.stats {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 12px;
  margin: 18px 0;
}
.stat {
  background: var(--panel);
  border: 1px solid var(--line);
  border-radius: 8px;
  padding: 16px;
  box-shadow: 0 8px 20px rgba(31, 41, 51, .04);
}
.stat span { color: var(--muted); font-size: 13px; }
.stat strong { display: block; font-size: 28px; margin-top: 4px; letter-spacing: 0; }
.compact-stats {
  grid-template-columns: repeat(6, minmax(0, 1fr));
  margin-top: -6px;
}
.stat.small { padding: 12px; }
.stat.small strong { font-size: 22px; }

.next-action-panel {
  position: sticky;
  top: 12px;
  z-index: 5;
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto auto;
  gap: 12px;
  align-items: center;
  margin-bottom: 14px;
  padding: 14px;
  border: 1px solid #bbdfca;
  border-radius: 8px;
  background: #f4fbf6;
  box-shadow: 0 12px 30px rgba(31, 41, 51, .08);
}
.next-action-panel span {
  color: var(--green);
  font-size: 12px;
  font-weight: 800;
}
.next-action-panel strong {
  display: block;
  margin-top: 4px;
  font-size: 17px;
}
.next-action-panel p {
  margin: 4px 0 0;
  color: var(--muted);
  line-height: 1.55;
}

.panel,
.answer,
.history,
.table-list,
.products,
.admin-table {
  background: var(--panel);
  border: 1px solid var(--line);
  border-radius: 8px;
  padding: 18px;
  max-width: 100%;
  min-width: 0;
  box-shadow: 0 8px 20px rgba(31, 41, 51, .035);
}
.panel + .panel { margin-top: 14px; }
.panel h3 { margin: 0 0 14px; font-size: 18px; }

.principles { display: grid; gap: 10px; }
.journey-panel { display: grid; gap: 14px; }
.section-title.compact { margin-bottom: 0; }
.action-guide {
  display: grid;
  gap: 12px;
  padding: 16px;
  border: 1px solid #b9d9cf;
  border-radius: 8px;
  background: var(--green-soft);
}
.guide-head { display: grid; gap: 8px; }
.guide-head strong { font-size: 20px; }
.guide-head p { margin: 0; line-height: 1.7; color: var(--ink); }
.guide-signals {
  display: grid;
  grid-template-columns: repeat(5, minmax(0, 1fr));
  gap: 8px;
}
.guide-signals span {
  padding: 9px 10px;
  border: 1px solid rgba(80, 136, 121, .22);
  border-radius: 7px;
  background: rgba(255, 255, 255, .68);
  color: var(--muted);
}
.guide-signals strong { display: block; color: var(--ink); font-size: 18px; }
.guide-blockers { display: flex; flex-wrap: wrap; gap: 8px; }
.guide-blockers em {
  padding: 7px 9px;
  border-radius: 6px;
  background: #fff2f0;
  color: #8f241c;
  font-style: normal;
}
.onboarding-autopilot {
  display: grid;
  gap: 12px;
  padding: 16px;
  border: 1px solid #b9d7ca;
  border-radius: 8px;
  background: linear-gradient(180deg, #f3fbf6 0%, #f8fbff 100%);
}
.newcomer-command-center {
  display: grid;
  gap: 12px;
  padding: 18px;
  border: 1px solid #cdd8e4;
  border-radius: 8px;
  background: #f8fbff;
}
.command-head {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  gap: 16px;
  align-items: start;
}
.command-head strong {
  display: block;
  margin-top: 8px;
  font-size: 24px;
}
.command-head p,
.command-primary p,
.command-task p,
.command-side p,
.command-systems p {
  margin: 6px 0 0;
  color: var(--muted);
  line-height: 1.65;
}
.command-head.urgent strong { color: #8f241c; }
.command-head.locked strong { color: var(--brand); }
.dispatch-landing {
  display: grid;
  grid-template-columns: minmax(0, 1fr) minmax(220px, .55fr) minmax(260px, .72fr) auto;
  gap: 10px;
  align-items: center;
  padding: 12px;
  border: 1px solid rgba(34, 113, 94, .22);
  border-radius: 8px;
  background: #f7fcf9;
}
.dispatch-landing span {
  color: var(--green);
  font-size: 12px;
  font-weight: 850;
}
.dispatch-landing strong {
  display: block;
  margin-top: 4px;
  font-size: 16px;
}
.dispatch-landing p {
  margin: 4px 0 0;
  color: var(--muted);
  line-height: 1.55;
}
.dispatch-landing small {
  display: block;
  margin-top: 4px;
  color: var(--muted);
  font-size: 12px;
}
.dispatch-landing-fields {
  display: flex;
  flex-wrap: wrap;
  gap: 6px;
}
.dispatch-landing-fields em {
  padding: 5px 7px;
  border: 1px solid rgba(34, 113, 94, .16);
  border-radius: 6px;
  background: #fff;
  color: var(--muted);
  font-size: 12px;
  font-style: normal;
}
.command-dispatch {
  display: grid;
  grid-template-columns: minmax(0, 1.35fr) minmax(240px, .8fr) minmax(240px, .85fr);
  gap: 10px;
}
.command-dispatch > div {
  display: grid;
  gap: 8px;
  align-content: start;
  padding: 13px;
  border: 1px solid rgba(36, 91, 131, .16);
  border-radius: 8px;
  background: #fff;
}
.command-dispatch-primary {
  border-color: rgba(34, 113, 94, .24) !important;
  background: #f7fcf9 !important;
}
.command-dispatch span,
.command-dispatch-evidence span {
  color: var(--brand);
  font-size: 12px;
  font-weight: 850;
}
.command-dispatch strong {
  font-size: 17px;
}
.command-dispatch p {
  margin: 0;
  color: var(--muted);
  line-height: 1.6;
}
.command-dispatch-evidence div {
  display: flex;
  flex-wrap: wrap;
  gap: 6px;
}
.command-dispatch-evidence em {
  padding: 5px 7px;
  border: 1px solid #bbdfca;
  border-radius: 6px;
  background: #f4fbf6;
  color: #22715e;
  font-size: 12px;
  font-style: normal;
}
.command-primary {
  display: grid;
  grid-template-columns: minmax(0, 1.25fr) minmax(260px, .75fr);
  gap: 10px;
}
.command-primary > div,
.command-side > div {
  padding: 13px;
  border: 1px solid rgba(36, 91, 131, .14);
  border-radius: 8px;
  background: rgba(255, 255, 255, .78);
}
.command-primary span,
.command-tool span {
  color: var(--brand);
  font-size: 12px;
  font-weight: 850;
}
.command-primary strong,
.command-tool strong {
  display: block;
  margin-top: 6px;
  font-size: 18px;
}
.command-primary em,
.command-task em,
.command-systems em {
  display: block;
  margin-top: 6px;
  color: var(--muted);
  font-size: 12px;
  font-style: normal;
  line-height: 1.45;
}
.command-grid {
  display: grid;
  grid-template-columns: minmax(0, 1fr) minmax(280px, .42fr);
  gap: 10px;
}
.command-tasks {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 9px;
}
.command-task,
.command-systems button {
  display: grid;
  gap: 6px;
  align-content: start;
  min-height: 150px;
  padding: 12px;
  text-align: left;
  color: var(--ink);
  border: 1px solid var(--line);
  border-radius: 8px;
  background: #fff;
  box-shadow: none;
}
.command-task.urgent {
  border-color: #f0b5a8;
  background: #fff7f5;
}
.command-task span,
.command-systems span {
  color: var(--muted);
  font-size: 12px;
}
.command-task strong,
.command-systems strong {
  font-size: 14px;
}
.command-side {
  display: grid;
  gap: 9px;
}
.command-records div {
  display: flex;
  flex-wrap: wrap;
  gap: 7px;
  margin-top: 8px;
}
.command-records span {
  padding: 7px 9px;
  border: 1px solid #bbdfca;
  border-radius: 7px;
  background: #f4fbf6;
  color: #22715e;
  font-size: 12px;
}
.command-systems {
  display: grid;
  grid-template-columns: repeat(6, minmax(0, 1fr));
  gap: 8px;
}
.command-systems button {
  min-height: 160px;
}
.command-systems button.active {
  border-color: #bbdfca;
  background: #f4fbf6;
}
.command-systems button.pending {
  background: #fff;
}
.command-signals {
  display: grid;
  grid-template-columns: repeat(7, minmax(0, 1fr));
  gap: 8px;
}
.command-signals span {
  padding: 9px;
  border: 1px solid rgba(36, 91, 131, .14);
  border-radius: 7px;
  background: rgba(255, 255, 255, .78);
  color: var(--muted);
  font-size: 12px;
}
.command-signals strong {
  display: block;
  margin-top: 3px;
  color: var(--ink);
  font-size: 18px;
}
.system-operation-audit {
  display: grid;
  gap: 12px;
  padding: 18px;
  border: 1px solid #ecd39a;
  border-radius: 8px;
  background: #fffaf0;
}
.operation-audit-head {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  gap: 16px;
  align-items: start;
}
.operation-audit-head strong {
  display: block;
  margin-top: 8px;
  font-size: 22px;
}
.operation-audit-head p,
.operation-audit-next p,
.operation-audit-module p {
  margin: 6px 0 0;
  color: var(--muted);
  line-height: 1.65;
}
.operation-audit-score {
  min-width: 120px;
  padding: 12px;
  text-align: center;
  border: 1px solid rgba(143, 36, 28, .14);
  border-radius: 8px;
  background: rgba(255, 255, 255, .72);
}
.operation-audit-score span,
.operation-audit-score em {
  display: block;
  color: var(--muted);
  font-size: 12px;
  font-style: normal;
}
.operation-audit-score strong {
  display: block;
  margin: 4px 0;
  color: #8f241c;
  font-size: 26px;
}
.operation-audit-next {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  gap: 12px;
  align-items: center;
  padding: 12px;
  border: 1px solid rgba(143, 36, 28, .14);
  border-radius: 8px;
  background: rgba(255, 255, 255, .72);
}
.operation-audit-next span {
  color: var(--muted);
  font-size: 12px;
}
.operation-audit-next strong {
  display: block;
  margin-top: 4px;
}
.operation-audit-modules {
  display: grid;
  grid-template-columns: repeat(7, minmax(0, 1fr));
  gap: 9px;
}
.operation-audit-module {
  display: grid;
  gap: 8px;
  align-content: start;
  padding: 12px;
  border: 1px solid rgba(143, 36, 28, .14);
  border-radius: 8px;
  background: rgba(255, 255, 255, .72);
}
.operation-audit-module.gap {
  border-color: #f0b5a8;
  background: #fff7f5;
}
.operation-audit-module > div:first-child {
  display: flex;
  justify-content: space-between;
  gap: 8px;
}
.operation-audit-module > div:first-child span {
  color: var(--brand);
  font-weight: 850;
}
.operation-audit-checks {
  display: grid;
  gap: 7px;
}
.operation-audit-checks button,
.operation-audit-gaps button {
  display: grid;
  gap: 4px;
  padding: 9px;
  text-align: left;
  color: var(--ink);
  border: 1px solid var(--line);
  border-radius: 7px;
  background: #fff;
  box-shadow: none;
}
.operation-audit-checks button.ok {
  border-color: #bbdfca;
  background: #f4fbf6;
}
.operation-audit-checks button.gap,
.operation-audit-gaps button {
  border-color: #f0b5a8;
  background: #fff7f5;
}
.operation-audit-checks span,
.operation-audit-checks em,
.operation-audit-gaps span,
.operation-audit-gaps em {
  color: var(--muted);
  font-size: 12px;
  font-style: normal;
  line-height: 1.45;
}
.operation-audit-checks strong,
.operation-audit-gaps strong {
  font-size: 13px;
}
.operation-audit-gaps {
  display: grid;
  grid-template-columns: repeat(6, minmax(0, 1fr));
  gap: 8px;
}
.system-goal-audit {
  display: grid;
  gap: 12px;
  padding: 18px;
  border: 1px solid rgba(159, 107, 34, .24);
  border-radius: 8px;
  background: var(--gold-soft);
}
.goal-audit-head,
.goal-audit-next {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  gap: 16px;
  align-items: start;
}
.goal-audit-head strong {
  display: block;
  margin-top: 8px;
  font-size: 22px;
}
.goal-audit-head p,
.goal-audit-next p,
.goal-audit-card p {
  margin: 6px 0 0;
  color: var(--muted);
  line-height: 1.65;
}
.goal-audit-score {
  min-width: 132px;
  display: grid;
  justify-items: center;
  gap: 3px;
  padding: 12px;
  border: 1px solid rgba(159, 107, 34, .2);
  border-radius: 8px;
  background: #fff;
}
.goal-audit-score span,
.goal-audit-score em,
.goal-audit-next span {
  color: var(--muted);
  font-size: 12px;
  font-style: normal;
}
.goal-audit-score strong {
  margin: 0;
  color: var(--gold);
  font-size: 30px;
}
.goal-audit-next {
  align-items: center;
  padding: 13px;
  border: 1px solid rgba(159, 107, 34, .2);
  border-radius: 8px;
  background: rgba(255, 255, 255, .72);
}
.goal-audit-grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 8px;
}
.goal-audit-card {
  display: grid;
  gap: 7px;
  min-height: 190px;
  padding: 12px;
  text-align: left;
  color: var(--ink);
  border: 1px solid rgba(159, 107, 34, .2);
  border-radius: 8px;
  background: #fff;
  box-shadow: none;
}
.goal-audit-card.ready {
  border-color: #bbdfca;
  background: #f4fbf6;
}
.goal-audit-card.gap {
  border-color: #f0b5a8;
  background: #fff7f5;
}
.goal-audit-card span {
  color: var(--gold);
  font-size: 12px;
  font-weight: 800;
}
.goal-audit-card strong {
  font-size: 15px;
  line-height: 1.35;
}
.goal-audit-card div {
  display: flex;
  flex-wrap: wrap;
  gap: 5px;
}
.goal-audit-card em {
  padding: 4px 6px;
  border-radius: 5px;
  background: #f1f5f9;
  color: var(--muted);
  font-size: 11px;
  font-style: normal;
}
.goal-audit-card em.ok {
  color: var(--green);
  background: #edf9f1;
}
.goal-audit-card em.gap {
  color: var(--brand);
  background: #fff0ee;
}
.goal-audit-bottom {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 10px;
}
.goal-audit-bottom > div {
  display: grid;
  gap: 7px;
  align-content: start;
  padding: 12px;
  border: 1px solid rgba(159, 107, 34, .18);
  border-radius: 8px;
  background: rgba(255, 255, 255, .72);
}
.goal-audit-bottom strong {
  color: var(--gold);
  font-size: 13px;
}
.goal-audit-bottom span {
  display: block;
  color: var(--ink);
  font-size: 12px;
  line-height: 1.45;
}
.goal-audit-bottom em {
  display: block;
  margin-top: 3px;
  color: var(--muted);
  font-style: normal;
  overflow-wrap: anywhere;
}
.user-lifecycle-center {
  display: grid;
  gap: 12px;
  padding: 18px;
  border: 1px solid rgba(36, 91, 131, .18);
  border-radius: 8px;
  background: #f7fbff;
}
.lifecycle-head,
.lifecycle-current {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  gap: 16px;
  align-items: start;
}
.lifecycle-head strong {
  display: block;
  margin-top: 8px;
  font-size: 22px;
}
.lifecycle-head p,
.lifecycle-current p,
.lifecycle-current em,
.lifecycle-panel p {
  margin: 6px 0 0;
  color: var(--muted);
  line-height: 1.65;
  font-size: 13px;
  font-style: normal;
}
.lifecycle-score {
  min-width: 132px;
  display: grid;
  justify-items: center;
  gap: 3px;
  padding: 12px;
  border: 1px solid rgba(36, 91, 131, .14);
  border-radius: 8px;
  background: #fff;
}
.lifecycle-score span,
.lifecycle-score em,
.lifecycle-current span {
  color: var(--muted);
  font-size: 12px;
  font-style: normal;
}
.lifecycle-score strong {
  margin: 0;
  color: var(--blue);
  font-size: 30px;
}
.lifecycle-current {
  align-items: center;
  padding: 13px;
  border: 1px solid #cde3f2;
  border-radius: 8px;
  background: #fff;
}
.lifecycle-current strong {
  display: block;
  margin-top: 4px;
  font-size: 18px;
}
.lifecycle-path {
  display: grid;
  grid-template-columns: repeat(8, minmax(0, 1fr));
  gap: 8px;
}
.lifecycle-path button {
  display: grid;
  gap: 5px;
  min-height: 96px;
  padding: 10px;
  text-align: left;
  color: var(--ink);
  border: 1px solid var(--line);
  border-radius: 8px;
  background: #fff;
  box-shadow: none;
}
.lifecycle-path button.done {
  border-color: #bbdfca;
  background: #f4fbf6;
}
.lifecycle-path button.current {
  border-color: #cde3f2;
  background: #fff;
  box-shadow: inset 0 0 0 1px rgba(36, 91, 131, .12);
}
.lifecycle-path button.locked {
  background: #f8fafc;
}
.lifecycle-path span {
  width: 24px;
  height: 24px;
  display: grid;
  place-items: center;
  border-radius: 50%;
  color: #fff;
  background: var(--blue);
  font-size: 12px;
  font-weight: 850;
}
.lifecycle-path strong {
  font-size: 13px;
  line-height: 1.35;
}
.lifecycle-path em {
  color: var(--muted);
  font-size: 12px;
  font-style: normal;
}
.lifecycle-grid {
  display: grid;
  grid-template-columns: minmax(0, 1.25fr) minmax(280px, .75fr);
  gap: 10px;
}
.lifecycle-panel {
  display: grid;
  gap: 9px;
  align-content: start;
  padding: 12px;
  border: 1px solid rgba(36, 91, 131, .12);
  border-radius: 8px;
  background: #fff;
}
.lifecycle-panel > strong {
  color: var(--blue);
  font-size: 13px;
}
.lifecycle-panel.stages > div {
  display: grid;
  gap: 7px;
  padding: 10px;
  border: 1px solid rgba(36, 91, 131, .1);
  border-radius: 8px;
  background: #fbfcfd;
}
.lifecycle-panel.stages > div.current {
  border-color: #cde3f2;
  background: #f8fbff;
}
.lifecycle-panel.stages > div.done {
  border-color: #bbdfca;
  background: #f4fbf6;
}
.lifecycle-panel.stages span,
.lifecycle-panel button span,
.lifecycle-panel button em {
  color: var(--muted);
  font-size: 12px;
  font-style: normal;
  line-height: 1.45;
}
.lifecycle-panel b {
  font-size: 14px;
}
.lifecycle-checks {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 7px;
}
.lifecycle-checks button,
.lifecycle-panel button {
  display: grid;
  gap: 4px;
  padding: 9px;
  text-align: left;
  color: var(--ink);
  border: 1px solid var(--line);
  border-radius: 7px;
  background: #fff;
  box-shadow: none;
}
.lifecycle-checks button.ok {
  border-color: #bbdfca;
  background: #f4fbf6;
}
.lifecycle-checks button.gap,
.lifecycle-panel button {
  border-color: #f0b5a8;
  background: #fff7f5;
}
.lifecycle-side {
  display: grid;
  gap: 10px;
  align-content: start;
}
.user-behavior-profile {
  display: grid;
  gap: 12px;
  padding: 18px;
  border: 1px solid #cdd8e4;
  border-radius: 8px;
  background: #f8fbff;
}
.behavior-profile-head {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  gap: 16px;
  align-items: start;
}
.behavior-profile-head strong {
  display: block;
  margin-top: 8px;
  font-size: 22px;
}
.behavior-profile-head p,
.behavior-profile-next p,
.behavior-module-grid p {
  margin: 6px 0 0;
  color: var(--muted);
  line-height: 1.65;
}
.behavior-profile-score {
  min-width: 132px;
  padding: 12px;
  text-align: center;
  border: 1px solid rgba(36, 91, 131, .14);
  border-radius: 8px;
  background: rgba(255, 255, 255, .78);
}
.behavior-profile-score span,
.behavior-profile-score em {
  display: block;
  color: var(--muted);
  font-size: 12px;
  font-style: normal;
}
.behavior-profile-score strong {
  display: block;
  margin: 4px 0;
  color: var(--brand);
  font-size: 24px;
}
.behavior-profile-next {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  gap: 12px;
  align-items: center;
  padding: 12px;
  border: 1px solid rgba(36, 91, 131, .14);
  border-radius: 8px;
  background: rgba(255, 255, 255, .78);
}
.behavior-profile-next span {
  color: var(--muted);
  font-size: 12px;
}
.behavior-profile-next strong {
  display: block;
  margin-top: 4px;
}
.behavior-module-grid {
  display: grid;
  grid-template-columns: repeat(7, minmax(0, 1fr));
  gap: 8px;
}
.behavior-module-grid button,
.behavior-timeline button {
  display: grid;
  gap: 5px;
  padding: 10px;
  text-align: left;
  color: var(--ink);
  border: 1px solid var(--line);
  border-radius: 8px;
  background: #fff;
  box-shadow: none;
}
.behavior-module-grid button.active {
  border-color: #bbdfca;
  background: #f4fbf6;
}
.behavior-module-grid button.pending {
  border-color: #f0b5a8;
  background: #fff7f5;
}
.behavior-module-grid span,
.behavior-timeline span,
.behavior-timeline em {
  color: var(--muted);
  font-size: 12px;
  font-style: normal;
  line-height: 1.45;
}
.behavior-module-grid strong,
.behavior-timeline strong {
  font-size: 13px;
}
.behavior-timeline {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 8px;
  max-height: 430px;
  overflow: auto;
}
.evidence-ledger {
  display: grid;
  gap: 12px;
  padding: 18px;
  border: 1px solid rgba(34, 113, 94, .22);
  border-radius: 8px;
  background: #f7fcf9;
}
.evidence-head,
.evidence-next {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  gap: 16px;
  align-items: start;
}
.evidence-head strong {
  display: block;
  margin-top: 8px;
  font-size: 22px;
}
.evidence-head p,
.evidence-next p,
.evidence-modules p,
.evidence-side p {
  margin: 6px 0 0;
  color: var(--muted);
  line-height: 1.65;
}
.evidence-score {
  min-width: 132px;
  display: grid;
  justify-items: center;
  gap: 3px;
  padding: 12px;
  border: 1px solid rgba(34, 113, 94, .18);
  border-radius: 8px;
  background: #fff;
}
.evidence-score span,
.evidence-score em,
.evidence-next span {
  color: var(--muted);
  font-size: 12px;
  font-style: normal;
}
.evidence-score strong {
  margin: 0;
  color: var(--green);
  font-size: 30px;
}
.evidence-next {
  align-items: center;
  padding: 13px;
  border: 1px solid rgba(34, 113, 94, .18);
  border-radius: 8px;
  background: #fff;
}
.evidence-next strong {
  display: block;
  margin-top: 4px;
}
.evidence-modules {
  display: grid;
  grid-template-columns: repeat(5, minmax(0, 1fr));
  gap: 8px;
}
.evidence-modules button,
.evidence-chain button,
.evidence-side button {
  display: grid;
  gap: 5px;
  padding: 10px;
  text-align: left;
  color: var(--ink);
  border: 1px solid var(--line);
  border-radius: 8px;
  background: #fff;
  box-shadow: none;
}
.evidence-modules button.ready {
  border-color: #bbdfca;
  background: #f4fbf6;
}
.evidence-modules button.gap,
.evidence-side button.gap {
  border-color: #ecd39a;
  background: #fffaf0;
}
.evidence-modules span,
.evidence-modules em,
.evidence-chain span,
.evidence-chain em,
.evidence-side span,
.evidence-side em {
  color: var(--muted);
  font-size: 12px;
  font-style: normal;
  line-height: 1.45;
}
.evidence-modules strong,
.evidence-chain b,
.evidence-side b {
  font-size: 13px;
  line-height: 1.35;
}
.evidence-grid {
  display: grid;
  grid-template-columns: minmax(0, 1.1fr) minmax(300px, .9fr);
  gap: 10px;
}
.evidence-chain,
.evidence-side,
.evidence-side > div {
  display: grid;
  gap: 8px;
  align-content: start;
}
.evidence-chain,
.evidence-side > div {
  padding: 12px;
  border: 1px solid rgba(34, 113, 94, .14);
  border-radius: 8px;
  background: #fff;
}
.evidence-chain > strong,
.evidence-side strong {
  color: var(--green);
  font-size: 13px;
}
.ai-learning-core {
  display: grid;
  gap: 12px;
  padding: 18px;
  border: 1px solid rgba(36, 91, 131, .2);
  border-radius: 8px;
  background: #f8fbff;
}
.ai-core-head,
.ai-core-runtime {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  gap: 16px;
  align-items: start;
}
.ai-core-head strong {
  display: block;
  margin-top: 8px;
  font-size: 22px;
}
.ai-core-head p,
.ai-core-sources p {
  margin: 6px 0 0;
  color: var(--muted);
  line-height: 1.65;
}
.ai-core-score {
  min-width: 132px;
  display: grid;
  justify-items: center;
  gap: 3px;
  padding: 12px;
  border: 1px solid rgba(36, 91, 131, .14);
  border-radius: 8px;
  background: #fff;
}
.ai-core-score span,
.ai-core-score em,
.ai-core-runtime span {
  color: var(--muted);
  font-size: 12px;
  font-style: normal;
}
.ai-core-score strong {
  margin: 0;
  color: var(--blue);
  font-size: 30px;
}
.ai-core-runtime {
  align-items: center;
  padding: 13px;
  border: 1px solid #cde3f2;
  border-radius: 8px;
  background: #fff;
}
.ai-core-runtime strong {
  display: block;
  margin-bottom: 4px;
}
.ai-core-sources {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 8px;
}
.ai-core-sources button,
.ai-core-routes button,
.ai-core-side button {
  display: grid;
  gap: 5px;
  padding: 10px;
  text-align: left;
  color: var(--ink);
  border: 1px solid var(--line);
  border-radius: 8px;
  background: #fff;
  box-shadow: none;
}
.ai-core-sources button.ready {
  border-color: #bbdfca;
  background: #f4fbf6;
}
.ai-core-sources button.gap,
.ai-core-side button.gap {
  border-color: #f0b5a8;
  background: #fff7f5;
}
.ai-core-sources span,
.ai-core-sources em,
.ai-core-routes span,
.ai-core-routes em,
.ai-core-side span,
.ai-core-side em {
  color: var(--muted);
  font-size: 12px;
  font-style: normal;
  line-height: 1.45;
}
.ai-core-sources strong,
.ai-core-routes b,
.ai-core-side b {
  font-size: 13px;
  line-height: 1.35;
}
.ai-core-grid {
  display: grid;
  grid-template-columns: minmax(0, .9fr) minmax(320px, 1.1fr);
  gap: 10px;
}
.ai-core-routes,
.ai-core-side,
.ai-core-side > div {
  display: grid;
  gap: 8px;
  align-content: start;
}
.ai-core-routes,
.ai-core-side > div {
  padding: 12px;
  border: 1px solid rgba(36, 91, 131, .12);
  border-radius: 8px;
  background: #fff;
}
.ai-core-routes > strong,
.ai-core-side strong {
  color: var(--blue);
  font-size: 13px;
}
.ai-core-side p {
  margin: 0;
  color: var(--muted);
  line-height: 1.6;
}
.ai-runtime-package {
  display: grid;
  gap: 12px;
  padding: 14px;
  border: 1px solid #cfe5d6;
  border-radius: 8px;
  background: #fbfefb;
}
.ai-runtime-head {
  display: grid;
  grid-template-columns: minmax(0, 1fr) minmax(150px, auto);
  gap: 14px;
  align-items: start;
}
.ai-runtime-head strong {
  display: block;
  margin-top: 7px;
  font-size: 18px;
}
.ai-runtime-head p,
.ai-runtime-inputs p,
.ai-runtime-grid p {
  margin: 5px 0 0;
  color: var(--muted);
  line-height: 1.55;
}
.ai-runtime-head > div:last-child {
  display: grid;
  justify-items: end;
  gap: 3px;
  color: var(--muted);
  font-size: 12px;
}
.ai-runtime-head b {
  color: var(--green);
  font-size: 24px;
}
.ai-runtime-head em {
  font-style: normal;
}
.ai-runtime-inputs {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 8px;
}
.ai-runtime-inputs button,
.ai-runtime-grid button {
  display: grid;
  gap: 5px;
  padding: 10px;
  text-align: left;
  color: var(--ink);
  border: 1px solid #dbe9dd;
  border-radius: 8px;
  background: #fff;
  box-shadow: none;
}
.ai-runtime-inputs span,
.ai-runtime-grid span,
.ai-runtime-grid em {
  color: var(--muted);
  font-size: 12px;
  font-style: normal;
  line-height: 1.45;
}
.ai-runtime-inputs strong,
.ai-runtime-grid b,
.ai-runtime-grid > div > strong {
  font-size: 13px;
  line-height: 1.35;
}
.ai-runtime-grid {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 8px;
}
.ai-runtime-grid > div {
  display: grid;
  gap: 7px;
  align-content: start;
  padding: 12px;
  border: 1px solid rgba(57, 117, 74, .14);
  border-radius: 8px;
  background: #fff;
}
.ai-runtime-grid > div > strong {
  color: var(--green);
}
.system-command-deck {
  display: grid;
  gap: 13px;
  padding: 18px;
  border: 1px solid rgba(36, 91, 131, .18);
  border-radius: 8px;
  background: #fbfcf8;
}
.command-deck-head {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  gap: 16px;
  align-items: start;
}
.command-deck-head strong {
  display: block;
  margin-top: 8px;
  font-size: 24px;
}
.command-deck-head p {
  margin: 7px 0 0;
  color: var(--muted);
  line-height: 1.7;
}
.command-deck-score {
  min-width: 152px;
  padding: 13px;
  text-align: center;
  border: 1px solid rgba(143, 36, 28, .14);
  border-radius: 8px;
  background: #fff;
}
.command-deck-score span,
.command-deck-score em {
  display: block;
  color: var(--muted);
  font-size: 12px;
  font-style: normal;
}
.command-deck-score strong {
  display: block;
  margin: 4px 0;
  color: var(--brand);
  font-size: 30px;
}
.command-deck-next {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  gap: 14px;
  align-items: center;
  padding: 14px;
  border: 1px solid #ecd39a;
  border-radius: 8px;
  background: #fffaf0;
}
.command-deck-next span,
.command-deck-coach strong,
.command-deck-queue > strong {
  color: var(--brand);
  font-size: 12px;
  font-weight: 850;
}
.command-deck-next strong {
  display: block;
  margin: 5px 0;
  font-size: 18px;
}
.command-deck-next p,
.command-deck-next em,
.command-deck-coach p {
  margin: 0;
  color: var(--muted);
  line-height: 1.6;
  font-size: 13px;
  font-style: normal;
}
.command-deck-strip {
  display: grid;
  grid-template-columns: repeat(5, minmax(0, 1fr));
  gap: 8px;
}
.command-deck-strip span {
  display: grid;
  justify-items: center;
  gap: 4px;
  padding: 9px;
  border: 1px solid rgba(36, 91, 131, .12);
  border-radius: 8px;
  background: #fff;
  color: var(--muted);
  font-size: 12px;
}
.command-deck-strip strong {
  color: var(--blue);
  font-size: 18px;
}
.command-deck-grid {
  display: grid;
  grid-template-columns: minmax(0, 1.35fr) minmax(280px, .65fr);
  gap: 10px;
}
.command-deck-steps {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 9px;
}
.command-deck-steps button,
.command-deck-modules button,
.command-deck-timeline button,
.command-deck-queue button {
  display: grid;
  gap: 5px;
  padding: 11px;
  text-align: left;
  color: var(--ink);
  border: 1px solid var(--line);
  border-radius: 8px;
  background: #fff;
  box-shadow: none;
}
.command-deck-steps button.current {
  border-color: #ecd39a;
  background: #fffaf0;
}
.command-deck-steps span,
.command-deck-modules span,
.command-deck-timeline span,
.command-deck-queue span,
.command-deck-steps em,
.command-deck-modules em,
.command-deck-queue em {
  color: var(--muted);
  font-size: 12px;
  font-style: normal;
  line-height: 1.45;
}
.command-deck-steps strong,
.command-deck-modules strong,
.command-deck-timeline strong {
  font-size: 14px;
}
.command-deck-steps p {
  margin: 0;
  color: var(--muted);
  line-height: 1.55;
  font-size: 13px;
}
.command-deck-side,
.command-deck-coach,
.command-deck-queue {
  display: grid;
  gap: 8px;
  align-content: start;
}
.command-deck-coach,
.command-deck-queue {
  padding: 12px;
  border: 1px solid rgba(36, 91, 131, .12);
  border-radius: 8px;
  background: #fff;
}
.command-deck-modules {
  display: grid;
  grid-template-columns: repeat(7, minmax(0, 1fr));
  gap: 8px;
}
.command-deck-modules button.ready.active {
  border-color: #bbdfca;
  background: #f4fbf6;
}
.command-deck-modules button.gap,
.command-deck-modules button.urgent {
  border-color: #f0b5a8;
  background: #fff7f5;
}
.command-deck-timeline {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 8px;
}
.execution-orchestrator {
  display: grid;
  gap: 13px;
  padding: 18px;
  border: 1px solid rgba(57, 117, 74, .2);
  border-radius: 8px;
  background: #fbfefb;
}
.orchestrator-head {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  gap: 16px;
  align-items: start;
}
.orchestrator-head strong {
  display: block;
  margin-top: 8px;
  font-size: 22px;
}
.orchestrator-head p {
  margin: 7px 0 0;
  color: var(--muted);
  line-height: 1.65;
}
.orchestrator-mode {
  min-width: 144px;
  display: grid;
  justify-items: center;
  gap: 3px;
  padding: 13px;
  border: 1px solid rgba(57, 117, 74, .16);
  border-radius: 8px;
  background: #fff;
}
.orchestrator-mode span,
.orchestrator-mode em,
.orchestrator-primary span,
.orchestrator-primary em,
.orchestrator-lanes span,
.orchestrator-lanes em,
.orchestrator-flows span,
.orchestrator-flows em,
.orchestrator-side span,
.orchestrator-side em {
  color: var(--muted);
  font-size: 12px;
  font-style: normal;
  line-height: 1.45;
}
.orchestrator-mode strong {
  color: var(--green);
  font-size: 30px;
}
.orchestrator-primary {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  gap: 14px;
  align-items: center;
  padding: 14px;
  border: 1px solid #cfe5d6;
  border-radius: 8px;
  background: #fff;
}
.orchestrator-primary.urgent {
  border-color: #f0b5a8;
  background: #fff7f5;
}
.orchestrator-primary strong {
  display: block;
  margin: 5px 0;
  font-size: 18px;
}
.orchestrator-primary p {
  margin: 0 0 6px;
  color: var(--muted);
  line-height: 1.55;
}
.orchestrator-lanes {
  display: grid;
  grid-template-columns: repeat(7, minmax(0, 1fr));
  gap: 8px;
}
.orchestrator-lanes button,
.orchestrator-flows button,
.orchestrator-side button {
  display: grid;
  gap: 5px;
  padding: 10px;
  text-align: left;
  color: var(--ink);
  border: 1px solid var(--line);
  border-radius: 8px;
  background: #fff;
  box-shadow: none;
}
.orchestrator-lanes button.urgent,
.orchestrator-flows button.urgent {
  border-color: #f0b5a8;
  background: #fff7f5;
}
.orchestrator-lanes strong,
.orchestrator-flows b,
.orchestrator-side b {
  font-size: 13px;
  line-height: 1.35;
}
.orchestrator-grid {
  display: grid;
  grid-template-columns: minmax(0, 1fr) minmax(320px, .9fr);
  gap: 10px;
}
.orchestrator-flows,
.orchestrator-side,
.orchestrator-side > div {
  display: grid;
  gap: 8px;
  align-content: start;
}
.orchestrator-flows,
.orchestrator-side > div {
  padding: 12px;
  border: 1px solid rgba(57, 117, 74, .14);
  border-radius: 8px;
  background: #fff;
}
.orchestrator-flows > strong,
.orchestrator-side strong {
  color: var(--green);
  font-size: 13px;
}
.orchestrator-flows p,
.orchestrator-side p {
  margin: 0;
  color: var(--muted);
  line-height: 1.55;
}
.automation-dispatch-center {
  display: grid;
  gap: 12px;
  padding: 18px;
  border: 1px solid rgba(80, 136, 121, .2);
  border-radius: 8px;
  background: #f7fbf8;
}
.dispatch-head {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  gap: 16px;
  align-items: start;
}
.dispatch-head strong {
  display: block;
  margin-top: 8px;
  font-size: 22px;
}
.dispatch-head p,
.dispatch-primary p,
.dispatch-primary em,
.dispatch-handoff p {
  margin: 6px 0 0;
  color: var(--muted);
  line-height: 1.65;
  font-size: 13px;
  font-style: normal;
}
.dispatch-mode {
  min-width: 136px;
  display: grid;
  justify-items: center;
  gap: 3px;
  padding: 12px;
  border: 1px solid rgba(80, 136, 121, .22);
  border-radius: 8px;
  background: #fff;
}
.dispatch-mode span,
.dispatch-mode em {
  color: var(--muted);
  font-size: 12px;
  font-style: normal;
}
.dispatch-mode strong {
  margin: 0;
  color: var(--green);
  font-size: 30px;
}
.dispatch-primary {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  gap: 14px;
  align-items: center;
  padding: 14px;
  border: 1px solid #bbdfca;
  border-radius: 8px;
  background: #fff;
}
.dispatch-primary.urgent {
  border-color: #f0b5a8;
  background: #fff7f5;
}
.dispatch-primary span,
.dispatch-orders > strong,
.dispatch-handoff strong,
.dispatch-rules > strong {
  color: var(--green);
  font-size: 12px;
  font-weight: 850;
}
.dispatch-primary strong {
  display: block;
  margin: 5px 0;
  font-size: 18px;
}
.dispatch-metrics,
.dispatch-lanes {
  display: grid;
  grid-template-columns: repeat(5, minmax(0, 1fr));
  gap: 8px;
}
.dispatch-lanes {
  grid-template-columns: repeat(7, minmax(0, 1fr));
}
.dispatch-metrics span,
.dispatch-lanes button {
  display: grid;
  gap: 4px;
  padding: 10px;
  border: 1px solid rgba(80, 136, 121, .18);
  border-radius: 8px;
  background: rgba(255, 255, 255, .8);
  color: var(--ink);
}
.dispatch-metrics span {
  justify-items: center;
  color: var(--muted);
  font-size: 12px;
}
.dispatch-metrics strong {
  color: var(--ink);
  font-size: 18px;
}
.dispatch-lanes button {
  min-height: 96px;
  text-align: left;
  box-shadow: none;
}
.dispatch-lanes button.urgent {
  border-color: #f0b5a8;
  background: #fff7f5;
}
.dispatch-lanes span,
.dispatch-lanes em {
  color: var(--muted);
  font-size: 12px;
  font-style: normal;
}
.dispatch-lanes strong {
  font-size: 13px;
  line-height: 1.35;
}
.dispatch-grid {
  display: grid;
  grid-template-columns: minmax(0, 1.35fr) minmax(280px, .65fr);
  gap: 10px;
}
.dispatch-orders,
.dispatch-side,
.dispatch-rules,
.dispatch-handoff {
  display: grid;
  gap: 9px;
}
.dispatch-orders button {
  display: grid;
  gap: 5px;
  padding: 11px;
  text-align: left;
  color: var(--ink);
  border: 1px solid var(--line);
  border-radius: 8px;
  background: #fff;
  box-shadow: none;
}
.dispatch-orders button.urgent {
  border-color: #f0b5a8;
  background: #fff7f5;
}
.dispatch-orders span,
.dispatch-orders p,
.dispatch-orders em,
.dispatch-rules em {
  margin: 0;
  color: var(--muted);
  line-height: 1.5;
  font-size: 12px;
  font-style: normal;
}
.dispatch-handoff,
.dispatch-rules {
  padding: 12px;
  border: 1px solid rgba(80, 136, 121, .16);
  border-radius: 8px;
  background: #fff;
}
.dispatch-rules span {
  display: grid;
  gap: 3px;
  padding: 8px;
  border: 1px solid rgba(36, 91, 131, .1);
  border-radius: 7px;
  background: #fbfcfd;
}
.dispatch-rules b {
  font-size: 13px;
}
.integration-health-center {
  display: grid;
  gap: 12px;
  padding: 18px;
  border: 1px solid rgba(36, 91, 131, .18);
  border-radius: 8px;
  background: #f7fbff;
}
.integration-health-head,
.integration-health-next {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  gap: 14px;
  align-items: center;
}
.integration-health-head strong {
  display: block;
  margin: 8px 0;
  font-size: 22px;
}
.integration-health-head p,
.integration-health-next p,
.integration-card p {
  margin: 0;
  color: var(--muted);
  line-height: 1.65;
  font-size: 13px;
}
.integration-health-score {
  min-width: 138px;
  display: grid;
  justify-items: center;
  gap: 3px;
  padding: 12px;
  border: 1px solid rgba(36, 91, 131, .16);
  border-radius: 8px;
  background: #fff;
}
.integration-health-score span,
.integration-health-score em,
.integration-health-next span {
  color: var(--muted);
  font-size: 12px;
  font-style: normal;
}
.integration-health-score strong {
  margin: 0;
  color: var(--blue);
  font-size: 30px;
}
.integration-health-next {
  padding: 13px;
  border: 1px solid #cde3f2;
  border-radius: 8px;
  background: #fff;
}
.integration-health-next strong {
  display: block;
  margin: 5px 0;
  font-size: 17px;
}
.integration-health-grid {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 10px;
}
.integration-card {
  display: grid;
  gap: 9px;
  align-content: start;
  padding: 12px;
  border: 1px solid rgba(36, 91, 131, .14);
  border-radius: 8px;
  background: #fff;
}
.integration-card.gap {
  border-color: #f0b5a8;
  background: #fff8f6;
}
.integration-card-head {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  gap: 4px 8px;
  align-items: start;
}
.integration-card-head span {
  grid-column: 1 / -1;
  color: var(--blue);
  font-size: 12px;
  font-weight: 800;
}
.integration-card-head strong {
  font-size: 15px;
}
.integration-card-head em {
  color: var(--brand);
  font-style: normal;
  font-weight: 850;
}
.integration-checks {
  display: grid;
  gap: 6px;
}
.integration-checks button {
  display: grid;
  gap: 3px;
  padding: 8px;
  text-align: left;
  color: var(--ink);
  border: 1px solid rgba(36, 91, 131, .1);
  border-radius: 7px;
  background: #fbfcfd;
  box-shadow: none;
}
.integration-checks button.gap {
  border-color: #f0b5a8;
  background: #fff7f5;
}
.integration-checks span,
.integration-checks em {
  color: var(--muted);
  font-size: 12px;
  font-style: normal;
  line-height: 1.4;
}
.integration-health-bottom {
  display: grid;
  grid-template-columns: minmax(0, 1.2fr) minmax(280px, .8fr);
  gap: 10px;
}
.integration-contracts,
.integration-evidence {
  display: grid;
  gap: 8px;
  align-content: start;
  padding: 12px;
  border: 1px solid rgba(36, 91, 131, .12);
  border-radius: 8px;
  background: #fff;
}
.integration-contracts > strong,
.integration-evidence > strong {
  color: var(--blue);
  font-size: 13px;
}
.integration-contracts {
  grid-template-columns: repeat(2, minmax(0, 1fr));
}
.integration-contracts > strong,
.integration-evidence > strong {
  grid-column: 1 / -1;
}
.integration-contracts button,
.integration-evidence button {
  display: grid;
  gap: 4px;
  padding: 9px;
  text-align: left;
  color: var(--ink);
  border: 1px solid rgba(36, 91, 131, .1);
  border-radius: 7px;
  background: #fbfcfd;
  box-shadow: none;
}
.integration-contracts span,
.integration-contracts code,
.integration-evidence span {
  color: var(--muted);
  font-size: 12px;
}
.integration-evidence {
  grid-template-columns: repeat(3, minmax(0, 1fr));
}
.integration-evidence b {
  color: var(--blue);
  font-size: 22px;
}
.autopilot-head {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  gap: 14px;
  align-items: start;
}
.autopilot-head strong {
  display: block;
  margin-top: 8px;
  font-size: 22px;
}
.autopilot-head p {
  margin: 7px 0 0;
  color: var(--muted);
  line-height: 1.7;
}
.autopilot-head.urgent strong {
  color: #8f241c;
}
.autopilot-head.locked strong {
  color: var(--brand);
}
.autopilot-dispatch {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  gap: 10px 14px;
  align-items: center;
  padding: 13px;
  border: 1px solid rgba(34, 113, 94, .22);
  border-radius: 8px;
  background: #f7fcf9;
}
.autopilot-dispatch span {
  color: var(--green);
  font-size: 12px;
  font-weight: 850;
}
.autopilot-dispatch strong {
  display: block;
  margin-top: 4px;
  font-size: 18px;
}
.autopilot-dispatch p {
  margin: 5px 0 0;
  color: var(--muted);
  line-height: 1.6;
}
.autopilot-dispatch em {
  grid-column: 1 / -1;
  color: var(--muted);
  font-size: 12px;
  font-style: normal;
}
.autopilot-grid {
  display: grid;
  grid-template-columns: minmax(0, 1fr) minmax(260px, .8fr);
  gap: 10px;
}
.autopilot-current,
.autopilot-playbook {
  padding: 14px;
  border: 1px solid rgba(80, 136, 121, .2);
  border-radius: 8px;
  background: rgba(255, 255, 255, .78);
}
.autopilot-current {
  display: grid;
  gap: 8px;
}
.autopilot-current span,
.autopilot-playbook > strong {
  color: var(--green);
  font-size: 12px;
  font-weight: 800;
}
.autopilot-current strong {
  font-size: 18px;
}
.autopilot-current p {
  margin: 0;
  color: var(--ink);
  line-height: 1.65;
}
.autopilot-current em {
  color: var(--muted);
  font-size: 12px;
  font-style: normal;
}
.autopilot-playbook {
  display: grid;
  gap: 8px;
}
.autopilot-playbook p {
  display: grid;
  grid-template-columns: 22px minmax(0, 1fr);
  gap: 8px;
  align-items: start;
  margin: 0;
  color: var(--ink);
  line-height: 1.55;
}
.autopilot-playbook p span {
  width: 22px;
  height: 22px;
  display: grid;
  place-items: center;
  border-radius: 50%;
  background: #dff5e8;
  color: #1f7a55;
  font-size: 12px;
  font-weight: 850;
}
.autopilot-execution {
  display: grid;
  grid-template-columns: minmax(0, 1.1fr) minmax(0, .9fr);
  gap: 10px;
}
.autopilot-toolkit,
.autopilot-required,
.autopilot-coach,
.autopilot-blocked {
  display: grid;
  gap: 8px;
  align-content: start;
  padding: 13px;
  border: 1px solid rgba(80, 136, 121, .18);
  border-radius: 8px;
  background: rgba(255, 255, 255, .78);
}
.autopilot-toolkit {
  grid-template-columns: minmax(0, 1fr) auto;
  align-items: start;
}
.autopilot-toolkit span,
.autopilot-required strong,
.autopilot-coach strong,
.autopilot-blocked strong {
  color: var(--green);
  font-size: 12px;
  font-weight: 800;
}
.autopilot-toolkit strong {
  display: block;
  margin-top: 4px;
  font-size: 17px;
}
.autopilot-toolkit p,
.autopilot-coach p,
.autopilot-blocked p {
  margin: 0;
  color: var(--muted);
  line-height: 1.6;
}
.autopilot-required div {
  display: flex;
  flex-wrap: wrap;
  gap: 7px;
}
.autopilot-required span {
  padding: 6px 8px;
  border: 1px solid rgba(80, 136, 121, .16);
  border-radius: 6px;
  background: #f6fbf8;
  color: var(--ink);
  font-size: 12px;
}
.autopilot-coach {
  border-color: #cde3f2;
  background: #f8fbff;
}
.autopilot-blocked {
  border-color: #ecd39a;
  background: #fffaf0;
}
.autopilot-signals {
  display: grid;
  grid-template-columns: repeat(8, minmax(0, 1fr));
  gap: 8px;
}
.autopilot-signals span {
  padding: 9px 10px;
  border: 1px solid rgba(80, 136, 121, .18);
  border-radius: 7px;
  background: rgba(255, 255, 255, .72);
  color: var(--muted);
}
.autopilot-signals strong {
  display: block;
  margin-top: 2px;
  color: var(--ink);
  font-size: 16px;
}
.autopilot-urgent {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 8px;
}
.autopilot-urgent button {
  display: grid;
  gap: 5px;
  text-align: left;
  color: var(--ink);
  background: #fff8f6;
  border: 1px solid #f1c4bd;
  box-shadow: none;
}
.autopilot-urgent span,
.autopilot-urgent em {
  color: var(--muted);
  font-size: 12px;
  font-style: normal;
}
.autopilot-unlocks {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
  align-items: center;
  color: var(--muted);
  font-size: 13px;
}
.autopilot-unlocks span {
  padding: 6px 8px;
  border: 1px solid rgba(80, 136, 121, .18);
  border-radius: 6px;
  background: rgba(255, 255, 255, .72);
  color: var(--green);
  font-weight: 750;
}
.newcomer-autopilot-workbench {
  display: grid;
  gap: 12px;
  padding: 18px;
  border: 1px solid rgba(34, 113, 94, .22);
  border-radius: 8px;
  background: #f7fcf9;
}
.newcomer-workbench-head,
.newcomer-workbench-current,
.newcomer-workbench-gate {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  gap: 16px;
  align-items: start;
}
.newcomer-workbench-head strong {
  display: block;
  margin-top: 8px;
  font-size: 22px;
}
.newcomer-workbench-head p,
.newcomer-workbench-current p,
.newcomer-workbench-gate p,
.newcomer-workbench-side p,
.newcomer-workbench-queue p {
  margin: 6px 0 0;
  color: var(--muted);
  line-height: 1.65;
}
.newcomer-workbench-score {
  min-width: 132px;
  display: grid;
  justify-items: center;
  gap: 3px;
  padding: 12px;
  border: 1px solid rgba(34, 113, 94, .18);
  border-radius: 8px;
  background: #fff;
}
.newcomer-workbench-score span,
.newcomer-workbench-score em,
.newcomer-workbench-current span,
.newcomer-workbench-current em,
.newcomer-workbench-gate span {
  color: var(--muted);
  font-size: 12px;
  font-style: normal;
}
.newcomer-workbench-score strong {
  margin: 0;
  color: var(--green);
  font-size: 30px;
}
.newcomer-workbench-dispatch {
  display: grid;
  grid-template-columns: minmax(0, 1.2fr) minmax(240px, .85fr);
  gap: 10px;
}
.dispatch-command-card {
  display: grid;
  gap: 8px;
  align-content: start;
  padding: 13px;
  border: 1px solid rgba(34, 113, 94, .18);
  border-radius: 8px;
  background: #fff;
}
.dispatch-command-card:first-child {
  border-color: rgba(34, 113, 94, .28);
  background: #f3fbf7;
}
.dispatch-command-card span {
  color: var(--green);
  font-size: 12px;
  font-weight: 850;
}
.dispatch-command-card strong {
  font-size: 17px;
}
.dispatch-command-card p {
  margin: 0;
  color: var(--muted);
  line-height: 1.6;
}
.dispatch-command-card div {
  display: flex;
  flex-wrap: wrap;
  gap: 6px;
}
.dispatch-command-card em,
.dispatch-command-card small {
  padding: 5px 7px;
  border: 1px solid rgba(34, 113, 94, .16);
  border-radius: 6px;
  background: #f7fcf9;
  color: var(--muted);
  font-size: 12px;
  font-style: normal;
  line-height: 1.45;
}
.dispatch-command-card small {
  padding: 0;
  border: 0;
  background: transparent;
}
.newcomer-workbench-dispatch-rules {
  display: grid;
  grid-template-columns: repeat(5, minmax(0, 1fr));
  gap: 8px;
}
.newcomer-workbench-dispatch-rules span,
.newcomer-workbench-dispatch-rules button,
.newcomer-workbench-dispatch-rules i {
  min-height: 62px;
  padding: 9px;
  border: 1px solid rgba(34, 113, 94, .14);
  border-radius: 8px;
  background: rgba(255, 255, 255, .82);
  color: var(--muted);
  font-size: 12px;
  font-style: normal;
  line-height: 1.45;
}
.newcomer-workbench-dispatch-rules button {
  display: grid;
  gap: 4px;
  text-align: left;
  box-shadow: none;
}
.newcomer-workbench-dispatch-rules b {
  color: var(--ink);
  font-size: 12px;
}
.newcomer-workbench-dispatch-rules em {
  color: var(--muted);
  font-style: normal;
}
.newcomer-workbench-dispatch-rules i {
  display: grid;
  place-items: center;
  min-height: auto;
  color: #22715e;
  background: #f4fbf6;
}
.newcomer-workbench-current,
.newcomer-workbench-gate {
  align-items: center;
  padding: 13px;
  border: 1px solid rgba(34, 113, 94, .18);
  border-radius: 8px;
  background: #fff;
}
.newcomer-workbench-current strong,
.newcomer-workbench-gate strong {
  display: block;
  margin-top: 4px;
}
.newcomer-workbench-gate.blocked {
  border-color: #ecd39a;
  background: #fffaf0;
}
.newcomer-workbench-gate.passed {
  border-color: #bbdfca;
  background: #f4fbf6;
}
.newcomer-workbench-gate > div:last-child {
  display: flex;
  flex-wrap: wrap;
  justify-content: flex-end;
  gap: 7px;
  max-width: 360px;
}
.newcomer-workbench-gate em,
.newcomer-workbench-side span,
.newcomer-workbench-unlocks span {
  padding: 6px 8px;
  border: 1px solid rgba(34, 113, 94, .16);
  border-radius: 6px;
  background: #fff;
  color: var(--muted);
  font-size: 12px;
  font-style: normal;
  line-height: 1.4;
}
.newcomer-workbench-grid {
  display: grid;
  grid-template-columns: minmax(0, 1.15fr) minmax(300px, .85fr);
  gap: 10px;
}
.newcomer-workbench-queue,
.newcomer-workbench-side,
.newcomer-workbench-side > div {
  display: grid;
  gap: 8px;
  align-content: start;
}
.newcomer-workbench-queue,
.newcomer-workbench-side > div {
  padding: 12px;
  border: 1px solid rgba(34, 113, 94, .14);
  border-radius: 8px;
  background: #fff;
}
.newcomer-workbench-queue > strong,
.newcomer-workbench-side strong,
.newcomer-workbench-unlocks strong {
  color: var(--green);
  font-size: 13px;
}
.newcomer-workbench-queue button,
.newcomer-workbench-route button {
  display: grid;
  gap: 5px;
  padding: 10px;
  text-align: left;
  color: var(--ink);
  border: 1px solid var(--line);
  border-radius: 8px;
  background: #fff;
  box-shadow: none;
}
.newcomer-workbench-queue span,
.newcomer-workbench-queue em,
.newcomer-workbench-route em {
  color: var(--muted);
  font-size: 12px;
  font-style: normal;
  line-height: 1.45;
}
.newcomer-workbench-queue b,
.newcomer-workbench-route strong {
  font-size: 13px;
}
.newcomer-workbench-route {
  display: grid;
  grid-template-columns: repeat(8, minmax(0, 1fr));
  gap: 8px;
}
.newcomer-workbench-route button.done {
  border-color: #bbdfca;
  background: #f4fbf6;
}
.newcomer-workbench-route button.current {
  border-color: #ecd39a;
  background: #fffaf0;
}
.newcomer-workbench-route span {
  width: 24px;
  height: 24px;
  display: grid;
  place-items: center;
  border-radius: 50%;
  color: #fff;
  background: var(--green);
  font-size: 12px;
  font-weight: 850;
}
.newcomer-workbench-unlocks {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
  align-items: center;
}
.onboarding-system-package {
  display: grid;
  gap: 10px;
  padding: 12px;
  border: 1px solid rgba(34, 113, 94, .14);
  border-radius: 8px;
  background: rgba(255, 255, 255, .82);
}
.onboarding-system-head {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  gap: 10px;
  align-items: start;
}
.onboarding-system-head strong {
  color: var(--green);
  font-size: 14px;
}
.onboarding-system-head p {
  margin: 5px 0 0;
  color: var(--muted);
  font-size: 12px;
  line-height: 1.55;
}
.onboarding-system-head em {
  padding: 6px 8px;
  border-radius: 6px;
  background: #edf8f3;
  color: var(--green);
  font-size: 12px;
  font-style: normal;
  font-weight: 900;
}
.onboarding-system-gates {
  display: grid;
  grid-template-columns: repeat(8, minmax(0, 1fr));
  gap: 8px;
}
.onboarding-system-gates button {
  display: grid;
  gap: 5px;
  min-width: 0;
  padding: 9px;
  text-align: left;
  color: var(--ink);
  border: 1px solid var(--line);
  border-radius: 8px;
  background: #fff;
  box-shadow: none;
}
.onboarding-system-gates span,
.onboarding-system-gates em,
.onboarding-system-gates small {
  color: var(--muted);
  font-size: 12px;
  font-style: normal;
  line-height: 1.45;
}
.onboarding-system-gates strong {
  font-size: 13px;
}
.onboarding-system-grid {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 8px;
}
.onboarding-system-grid > div {
  display: grid;
  gap: 7px;
  padding: 10px;
  border: 1px solid var(--line);
  border-radius: 8px;
  background: #fff;
}
.onboarding-system-grid > div > strong {
  color: var(--green);
  font-size: 13px;
}
.onboarding-system-grid span {
  display: grid;
  gap: 3px;
  padding: 7px;
  border: 1px solid var(--line);
  border-radius: 7px;
  background: var(--panel-soft);
}
.onboarding-system-grid em {
  color: var(--green);
  font-size: 12px;
  font-style: normal;
  font-weight: 800;
}
.onboarding-system-grid b {
  color: var(--muted);
  font-size: 12px;
  font-weight: 500;
  line-height: 1.45;
}
.guided-start {
  display: grid;
  gap: 14px;
  margin-bottom: 16px;
}

.guided-start-hero {
  display: grid;
  grid-template-columns: minmax(0, 1fr) minmax(320px, .72fr);
  gap: 18px;
  align-items: stretch;
  padding: 22px;
  border: 1px solid #f1c9c1;
  border-radius: 14px;
  background:
    radial-gradient(circle at top right, rgba(154, 47, 37, .12), transparent 34%),
    linear-gradient(135deg, #fff8f6 0, #ffffff 58%, #f8fbff 100%);
  box-shadow: var(--shadow);
}

.guided-start-hero h2 {
  margin: 6px 0 8px;
  font-size: clamp(28px, 4vw, 48px);
  line-height: 1.08;
  letter-spacing: -.03em;
}

.guided-start-hero p {
  margin: 0;
  max-width: 760px;
  color: var(--muted);
  font-size: 16px;
  line-height: 1.75;
}

.guided-next-card {
  display: grid;
  gap: 10px;
  align-content: start;
  padding: 18px;
  border: 1px solid rgba(154, 47, 37, .22);
  border-radius: 12px;
  background: rgba(255, 255, 255, .86);
}

.guided-next-card span,
.guided-action-card span,
.guided-route-strip span {
  color: var(--brand);
  font-size: 12px;
  font-weight: 850;
}

.guided-next-card strong {
  font-size: 23px;
  line-height: 1.25;
}

.guided-next-card p {
  font-size: 14px;
  line-height: 1.65;
}

.guided-next-card button {
  width: 100%;
  min-height: 52px;
  font-size: 16px;
}

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

.guided-action-card {
  display: grid;
  gap: 7px;
  justify-items: start;
  min-height: 150px;
  padding: 16px;
  text-align: left;
  color: var(--ink);
  border: 1px solid var(--line);
  border-radius: 12px;
  background: #fff;
  box-shadow: 0 12px 26px rgba(31, 41, 51, .06);
}

.guided-action-card.primary {
  color: #fff;
  border-color: var(--brand-dark);
  background: linear-gradient(145deg, var(--brand), var(--brand-dark));
}

.guided-action-card.primary span,
.guided-action-card.primary p,
.guided-action-card.primary em {
  color: rgba(255, 255, 255, .82);
}

.guided-action-card strong {
  font-size: 18px;
  line-height: 1.25;
}

.guided-action-card p {
  margin: 0;
  color: var(--muted);
  line-height: 1.55;
}

.guided-action-card em {
  margin-top: auto;
  color: var(--blue);
  font-size: 12px;
  font-style: normal;
  font-weight: 850;
}

.guided-route-strip {
  display: grid;
  grid-template-columns: auto minmax(0, 1fr) auto;
  gap: 10px;
  align-items: center;
  padding: 12px 14px;
  border: 1px solid #cde3f2;
  border-radius: 10px;
  background: #f8fbff;
}

.guided-route-strip strong {
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.guided-route-strip em {
  color: var(--muted);
  font-size: 12px;
  font-style: normal;
}

.dashboard-focus-grid,
.dashboard-support-grid {
  display: grid;
  grid-template-columns: minmax(0, 1.05fr) minmax(320px, .95fr);
  gap: 14px;
  margin-bottom: 14px;
}

.route-panel {
  align-content: start;
}

.dashboard-advanced {
  margin: 0 0 14px;
  border: 1px dashed var(--line-strong);
  border-radius: 10px;
  background: rgba(255, 255, 255, .72);
}

.dashboard-advanced summary {
  cursor: pointer;
  padding: 13px 15px;
  color: var(--muted);
  font-weight: 800;
}

.advanced-grid {
  display: grid;
  gap: 12px;
  padding: 0 14px 14px;
}

.today-workbench {
  display: grid;
  gap: 12px;
  padding: 16px;
  border: 1px solid #cde3f2;
  border-radius: 8px;
  background: var(--blue-soft);
}
.today-head {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  gap: 14px;
  align-items: start;
}
.today-head strong {
  display: block;
  margin-top: 8px;
  font-size: 20px;
}
.today-head p {
  margin: 7px 0 0;
  color: var(--muted);
  line-height: 1.7;
}
.today-metrics {
  display: grid;
  grid-template-columns: repeat(5, minmax(0, 1fr));
  gap: 8px;
}
.today-metrics span {
  padding: 9px 10px;
  border: 1px solid rgba(36, 91, 131, .18);
  border-radius: 7px;
  background: rgba(255, 255, 255, .72);
  color: var(--muted);
}
.today-metrics strong {
  display: block;
  color: var(--ink);
  font-size: 18px;
  margin-top: 2px;
}
.action-flow {
  display: grid;
  gap: 10px;
}
.action-flow-current {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  gap: 14px;
  align-items: center;
  padding: 14px;
  border: 1px solid rgba(36, 91, 131, .22);
  border-radius: 8px;
  background: #fff;
}
.action-flow-current strong {
  display: block;
  margin-top: 8px;
  font-size: 18px;
}
.action-flow-current p {
  margin: 6px 0 4px;
  color: var(--ink);
  line-height: 1.65;
}
.action-flow-current em {
  color: var(--muted);
  font-style: normal;
  font-size: 12px;
}
.action-flow-urgent {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 8px;
}
.action-flow-urgent button {
  display: grid;
  gap: 5px;
  text-align: left;
  color: var(--ink);
  background: #fff8f6;
  border: 1px solid #f1c4bd;
  box-shadow: none;
  min-height: 0;
}
.action-flow-urgent span,
.action-flow-urgent em {
  color: var(--muted);
  font-size: 12px;
  font-style: normal;
}
.action-flow-steps {
  display: grid;
  grid-template-columns: repeat(8, minmax(0, 1fr));
  gap: 6px;
}
.action-flow-step {
  display: grid;
  gap: 4px;
  justify-items: start;
  text-align: left;
  padding: 10px;
  min-height: 82px;
  border: 1px solid rgba(36, 91, 131, .18);
  border-radius: 8px;
  color: var(--ink);
  background: rgba(255, 255, 255, .76);
  box-shadow: none;
}
.action-flow-step span {
  width: 24px;
  height: 24px;
  display: grid;
  place-items: center;
  border-radius: 50%;
  background: #e9f3fb;
  color: var(--blue);
  font-size: 12px;
  font-weight: 850;
}
.action-flow-step strong {
  font-size: 13px;
  line-height: 1.35;
}
.action-flow-step em {
  color: var(--muted);
  font-size: 12px;
  font-style: normal;
}
.action-flow-step.current {
  border-color: var(--blue);
  background: #fff;
}
.action-flow-step.current span {
  color: #fff;
  background: var(--blue);
}
.action-flow-step.done {
  border-color: #b7e4c7;
  background: #f5fcf7;
}
.action-flow-step.done span {
  color: #1f7a55;
  background: #dff5e8;
}
.action-flow-step.locked {
  background: #f8fafc;
}
.action-flow-next {
  color: var(--muted);
  font-size: 13px;
  line-height: 1.6;
}
.today-list {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 10px;
}
.today-item {
  display: grid;
  gap: 6px;
  text-align: left;
  background: rgba(255, 255, 255, .82);
  color: var(--ink);
  border: 1px solid rgba(36, 91, 131, .18);
  box-shadow: none;
  min-height: 0;
}
.today-item.urgent {
  border-color: #f0b5a8;
  background: #fff7f5;
}
.reminder-center {
  display: grid;
  gap: 12px;
}
.reminder-head {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  gap: 14px;
  align-items: center;
  padding: 16px;
  border: 1px solid #ecd39a;
  border-radius: 8px;
  background: var(--gold-soft);
}
.reminder-head strong {
  display: block;
  margin: 8px 0;
  font-size: 18px;
}
.reminder-head p {
  margin: 0;
  color: var(--muted);
  line-height: 1.7;
}
.reminder-actions {
  display: grid;
  gap: 8px;
  justify-items: stretch;
  min-width: 112px;
}
.reminder-total {
  display: grid;
  justify-items: center;
  gap: 4px;
  padding: 12px;
  border: 1px solid rgba(143, 36, 28, .16);
  border-radius: 8px;
  background: #fff;
}
.reminder-total span {
  color: var(--muted);
  font-size: 12px;
}
.reminder-total strong {
  margin: 0;
  color: var(--brand);
  font-size: 28px;
}
.reminder-sync-result {
  display: grid;
  gap: 4px;
  padding: 11px 12px;
  border: 1px solid #bbdfca;
  border-radius: 8px;
  background: #f4fbf6;
}
.reminder-sync-result span {
  color: var(--green);
  font-size: 12px;
  font-weight: 800;
}
.reminder-sync-result strong {
  font-size: 14px;
}
.reminder-sync-result p {
  margin: 0;
  color: var(--muted);
  line-height: 1.55;
  font-size: 13px;
}
.reminder-list {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 10px;
}
.reminder-item {
  display: grid;
  gap: 6px;
  align-content: start;
  text-align: left;
  min-height: 132px;
  padding: 12px;
  border: 1px solid var(--line);
  border-radius: 8px;
  background: #fff;
  color: var(--ink);
  box-shadow: none;
}
.reminder-item.urgent {
  border-color: #f0b5a8;
  background: #fff7f5;
}
.reminder-item span {
  color: var(--brand);
  font-size: 12px;
  font-weight: 750;
}
.reminder-item strong {
  font-size: 14px;
}
.reminder-item em {
  color: var(--muted);
  font-size: 12px;
  font-style: normal;
}
.reminder-item p {
  margin: 0;
  color: var(--muted);
  line-height: 1.55;
  font-size: 13px;
}
.notification-command-center {
  display: grid;
  gap: 12px;
  padding: 16px;
  border: 1px solid rgba(80, 136, 121, .2);
  border-radius: 8px;
  background: #f6fbf8;
}
.notification-command-head,
.notification-command-next,
.notification-provider {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  gap: 14px;
  align-items: center;
}
.notification-command-head strong {
  display: block;
  margin: 8px 0;
  font-size: 20px;
}
.notification-command-head p,
.notification-command-next p,
.notification-provider p {
  margin: 0;
  color: var(--muted);
  line-height: 1.65;
  font-size: 13px;
}
.notification-command-score {
  min-width: 132px;
  display: grid;
  justify-items: center;
  gap: 4px;
  padding: 12px;
  border: 1px solid rgba(80, 136, 121, .2);
  border-radius: 8px;
  background: #fff;
}
.notification-command-score span,
.notification-command-score em,
.notification-command-next span,
.notification-provider span {
  color: var(--muted);
  font-size: 12px;
  font-style: normal;
}
.notification-command-score strong {
  margin: 0;
  color: var(--green);
  font-size: 28px;
}
.notification-command-head.blocked .notification-command-score strong,
.notification-command-head.urgent .notification-command-score strong {
  color: var(--brand);
}
.notification-command-next,
.notification-provider {
  padding: 12px;
  border: 1px solid rgba(80, 136, 121, .16);
  border-radius: 8px;
  background: #fff;
}
.notification-command-next strong,
.notification-provider strong {
  display: block;
  margin: 4px 0;
  font-size: 16px;
}
.notification-lanes {
  display: grid;
  grid-template-columns: repeat(6, minmax(0, 1fr));
  gap: 8px;
}
.notification-lanes button {
  display: grid;
  gap: 4px;
  min-height: 92px;
  padding: 10px;
  text-align: left;
  color: var(--ink);
  border: 1px solid rgba(80, 136, 121, .16);
  border-radius: 8px;
  background: #fff;
  box-shadow: none;
}
.notification-lanes button.blocked {
  border-color: #f0b5a8;
  background: #fff7f5;
}
.notification-lanes span {
  color: var(--green);
  font-size: 22px;
  font-weight: 850;
}
.notification-lanes strong {
  font-size: 13px;
}
.notification-lanes em {
  color: var(--muted);
  font-size: 12px;
  font-style: normal;
  line-height: 1.45;
}
.notification-grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 10px;
}
.notification-panel {
  display: grid;
  gap: 8px;
  align-content: start;
  padding: 12px;
  border: 1px solid rgba(80, 136, 121, .14);
  border-radius: 8px;
  background: #fff;
}
.notification-panel > strong {
  color: var(--green);
  font-size: 13px;
}
.notification-panel button,
.notification-panel div {
  display: grid;
  gap: 4px;
  padding: 9px;
  text-align: left;
  color: var(--ink);
  border: 1px solid rgba(36, 91, 131, .1);
  border-radius: 7px;
  background: #fbfcfd;
  box-shadow: none;
}
.notification-panel button.failed,
.notification-panel div.missing {
  border-color: #f0b5a8;
  background: #fff7f5;
}
.notification-panel span,
.notification-panel em,
.notification-panel p {
  margin: 0;
  color: var(--muted);
  line-height: 1.45;
  font-size: 12px;
  font-style: normal;
}
.notification-panel b {
  font-size: 13px;
}
.practice-calendar {
  display: grid;
  gap: 12px;
  padding: 16px;
  border: 1px solid rgba(80, 136, 121, .2);
  border-radius: 8px;
  background: #f6fbf8;
}
.practice-calendar-head {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  gap: 14px;
  align-items: center;
}
.practice-calendar-head strong {
  display: block;
  margin: 8px 0;
  font-size: 20px;
}
.practice-calendar-head p {
  margin: 0;
  color: var(--muted);
  line-height: 1.7;
}
.practice-calendar-metrics {
  display: grid;
  grid-template-columns: repeat(6, minmax(0, 1fr));
  gap: 8px;
}
.practice-calendar-metrics span {
  display: grid;
  justify-items: center;
  gap: 4px;
  padding: 9px;
  border: 1px solid rgba(80, 136, 121, .16);
  border-radius: 8px;
  background: #fff;
  color: var(--muted);
  font-size: 12px;
}
.practice-calendar-metrics strong {
  color: var(--green);
  font-size: 18px;
}
.practice-calendar-next {
  display: grid;
  gap: 5px;
  padding: 12px;
  border: 1px solid #bbdfca;
  border-radius: 8px;
  background: #fff;
}
.practice-calendar-next span {
  color: var(--green);
  font-size: 12px;
  font-weight: 800;
}
.practice-calendar-next strong {
  font-size: 16px;
}
.practice-calendar-next p {
  margin: 0;
  color: var(--muted);
  line-height: 1.55;
  font-size: 13px;
}
.practice-calendar-days {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 10px;
}
.practice-calendar-day {
  display: grid;
  gap: 8px;
  align-content: start;
  min-height: 180px;
  padding: 11px;
  border: 1px solid var(--line);
  border-radius: 8px;
  background: #fff;
}
.practice-calendar-day.today {
  border-color: #8ebaa6;
  box-shadow: inset 0 0 0 1px rgba(80, 136, 121, .16);
}
.calendar-day-title {
  display: flex;
  justify-content: space-between;
  gap: 8px;
  align-items: center;
}
.calendar-day-title strong {
  font-size: 15px;
}
.calendar-day-title span,
.calendar-day-count {
  color: var(--muted);
  font-size: 12px;
}
.calendar-day-items {
  display: grid;
  gap: 7px;
}
.calendar-day-items em {
  color: var(--muted);
  font-size: 12px;
  font-style: normal;
}
.calendar-item {
  display: grid;
  gap: 4px;
  padding: 9px;
  text-align: left;
  border: 1px solid var(--line);
  border-radius: 7px;
  background: #fff;
  color: var(--ink);
  box-shadow: none;
}
.calendar-item.overdue {
  border-color: #f0b5a8;
  background: #fff7f5;
}
.calendar-item.today {
  border-color: #ecd39a;
  background: #fffaf0;
}
.calendar-item span {
  color: var(--muted);
  font-size: 12px;
}
.calendar-item strong {
  font-size: 13px;
  line-height: 1.35;
}
.today-item span {
  color: var(--blue);
  font-size: 12px;
  font-weight: 750;
}
.today-item strong {
  font-size: 15px;
}
.today-item em {
  color: var(--muted);
  font-size: 12px;
  font-style: normal;
}
.today-item p {
  margin: 0;
  color: var(--muted);
  line-height: 1.55;
  font-size: 13px;
}
.daily-action-plan {
  display: grid;
  gap: 12px;
  padding: 16px;
  border: 1px solid rgba(36, 91, 131, .18);
  border-radius: 8px;
  background: #f7fbff;
}
.daily-plan-head {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  gap: 14px;
  align-items: center;
}
.daily-plan-head strong {
  display: block;
  margin: 8px 0;
  font-size: 20px;
}
.daily-plan-head p {
  margin: 0;
  color: var(--muted);
  line-height: 1.7;
}
.daily-plan-head.urgent strong {
  color: var(--brand);
}
.daily-plan-mode {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  gap: 12px;
  align-items: center;
  padding: 12px;
  border: 1px solid rgba(36, 91, 131, .12);
  border-radius: 8px;
  background: rgba(255, 255, 255, .78);
}
.daily-plan-mode span {
  color: var(--blue);
  font-weight: 800;
}
.daily-plan-mode p {
  margin: 4px 0 0;
  color: var(--muted);
  line-height: 1.55;
  font-size: 13px;
}
.daily-plan-counts {
  display: flex;
  gap: 8px;
  flex-wrap: wrap;
  justify-content: flex-end;
}
.daily-plan-counts em {
  display: grid;
  justify-items: center;
  min-width: 54px;
  padding: 7px 9px;
  border: 1px solid var(--line);
  border-radius: 7px;
  background: #fff;
  color: var(--muted);
  font-style: normal;
  font-size: 12px;
}
.daily-plan-counts strong {
  color: var(--ink);
  font-size: 17px;
}
.daily-plan-steps {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 10px;
}
.daily-plan-step {
  display: grid;
  gap: 7px;
  align-content: start;
  min-height: 170px;
  padding: 13px;
  border: 1px solid var(--line);
  border-radius: 8px;
  background: #fff;
  color: var(--ink);
  text-align: left;
  box-shadow: none;
}
.daily-plan-step.urgent {
  border-color: #f0b5a8;
  background: #fff7f5;
}
.daily-plan-step span {
  color: var(--blue);
  font-size: 12px;
  font-weight: 800;
}
.daily-plan-step strong {
  font-size: 15px;
  line-height: 1.35;
}
.daily-plan-step p,
.daily-plan-step em {
  margin: 0;
  color: var(--muted);
  line-height: 1.55;
  font-size: 13px;
  font-style: normal;
}
.task-execution {
  display: grid;
  gap: 12px;
  padding: 16px;
  border: 1px solid #bbdfca;
  border-radius: 8px;
  background: #f4fbf6;
}
.task-execution-head {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  gap: 14px;
  align-items: start;
}
.task-execution-head strong {
  display: block;
  margin-top: 8px;
  font-size: 20px;
}
.task-execution-head p {
  margin: 7px 0 0;
  color: var(--muted);
  line-height: 1.7;
}
.task-execution-progress {
  min-width: 94px;
  padding: 10px;
  border: 1px solid rgba(80, 136, 121, .18);
  border-radius: 7px;
  background: rgba(255, 255, 255, .76);
  text-align: center;
}
.task-execution-progress span {
  display: block;
  color: var(--muted);
  font-size: 12px;
}
.task-execution-progress strong {
  margin-top: 2px;
  color: var(--green);
  font-size: 24px;
}
.task-execution-tip {
  padding: 10px 12px;
  border-left: 4px solid var(--green);
  border-radius: 7px;
  background: rgba(255, 255, 255, .8);
  color: var(--ink);
  line-height: 1.65;
}
.task-claimed-workflow {
  display: grid;
  grid-template-columns: minmax(0, 1fr) minmax(260px, .8fr);
  gap: 10px;
  padding: 12px;
  border: 1px solid #cfe5d6;
  border-radius: 8px;
  background: #fbfefb;
}
.task-claimed-workflow.blocked {
  border-color: #ecd39a;
  background: #fffaf0;
}
.task-claimed-workflow span {
  color: var(--green);
  font-size: 12px;
  font-weight: 850;
}
.task-claimed-workflow strong {
  display: block;
  margin: 5px 0;
  font-size: 16px;
}
.task-claimed-workflow p {
  margin: 0;
  color: var(--muted);
  line-height: 1.55;
}
.task-claimed-workflow > div:last-child {
  display: grid;
  gap: 5px;
  align-content: start;
}
.task-claimed-workflow em {
  padding: 6px 8px;
  color: var(--muted);
  font-size: 12px;
  font-style: normal;
  border: 1px solid rgba(57, 117, 74, .12);
  border-radius: 7px;
  background: #fff;
}
.task-workflow-gate {
  display: grid;
  gap: 10px;
  padding: 12px;
  border: 1px solid #ecd39a;
  border-radius: 8px;
  background: #fffaf0;
}
.task-workflow-gate.passed {
  border-color: #bbdfca;
  background: #f7fcf8;
}
.task-workflow-gate-head {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  gap: 10px;
  align-items: start;
}
.task-workflow-gate-head span {
  color: var(--muted);
  font-size: 12px;
  font-weight: 850;
}
.task-workflow-gate-head strong {
  display: block;
  margin-top: 4px;
  color: var(--ink);
  font-size: 14px;
  line-height: 1.5;
}
.task-workflow-gate-head em {
  padding: 6px 8px;
  color: var(--green);
  font-size: 12px;
  font-style: normal;
  border: 1px solid rgba(57, 117, 74, .14);
  border-radius: 7px;
  background: #fff;
}
.task-workflow-evidence {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 8px;
}
.task-workflow-evidence div {
  display: grid;
  gap: 3px;
  min-height: 76px;
  padding: 9px;
  border: 1px solid rgba(143, 36, 28, .14);
  border-radius: 7px;
  background: #fff;
}
.task-workflow-evidence div.ok {
  border-color: #bbdfca;
  background: #f4fbf6;
}
.task-workflow-evidence span,
.task-workflow-evidence em {
  color: var(--muted);
  font-size: 12px;
  font-style: normal;
}
.task-workflow-evidence strong {
  color: var(--ink);
  font-size: 20px;
}
.task-workflow-evidence p {
  margin: 0;
  color: var(--muted);
  font-size: 13px;
}
.task-workflow-required {
  display: flex;
  flex-wrap: wrap;
  gap: 7px;
}
.task-workflow-required span {
  padding: 7px 9px;
  color: var(--muted);
  font-size: 12px;
  border: 1px solid rgba(80, 136, 121, .16);
  border-radius: 7px;
  background: rgba(255, 255, 255, .78);
}
.task-system-gate {
  display: grid;
  gap: 4px;
  padding: 11px 12px;
  border: 1px solid #ecd39a;
  border-radius: 7px;
  background: #fffaf0;
}
.task-system-gate.passed {
  border-color: #bbdfca;
  background: #f7fcf8;
}
.task-system-gate span {
  color: var(--muted);
  font-size: 12px;
  font-weight: 750;
}
.task-system-gate strong {
  color: var(--ink);
  font-size: 14px;
  line-height: 1.45;
}
.task-execution-grid {
  display: grid;
  grid-template-columns: minmax(240px, .72fr) minmax(0, 1fr);
  gap: 12px;
}
.task-checklist,
.task-evidence,
.task-toolkit {
  display: grid;
  gap: 10px;
}
.task-checklist label {
  display: grid;
  grid-template-columns: 18px minmax(0, 1fr);
  gap: 9px;
  align-items: start;
  padding: 11px;
  border: 1px solid rgba(80, 136, 121, .18);
  border-radius: 7px;
  background: rgba(255, 255, 255, .82);
  color: var(--ink);
}
.task-checklist input {
  margin-top: 2px;
}
.task-evidence textarea {
  resize: vertical;
}
.task-toolkit {
  align-content: start;
}
.task-toolkit-head {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  gap: 10px;
  align-items: center;
  padding: 12px;
  border: 1px solid rgba(80, 136, 121, .18);
  border-radius: 7px;
  background: rgba(255, 255, 255, .82);
}
.task-toolkit-head span {
  color: var(--green);
  font-size: 12px;
  font-weight: 800;
}
.task-toolkit-head strong {
  display: block;
  margin-top: 4px;
  font-size: 16px;
}
.task-toolkit-head p {
  margin: 5px 0 0;
  color: var(--muted);
  font-size: 13px;
  line-height: 1.55;
}
.task-required-fields {
  display: flex;
  flex-wrap: wrap;
  gap: 7px;
}
.task-required-fields span {
  padding: 7px 9px;
  border: 1px solid rgba(80, 136, 121, .18);
  border-radius: 6px;
  background: rgba(255, 255, 255, .78);
  color: var(--green);
  font-size: 12px;
  font-weight: 750;
}
.task-system-records {
  display: grid;
  gap: 8px;
  padding: 12px;
  border: 1px solid rgba(36, 91, 131, .16);
  border-radius: 7px;
  background: #fbfdff;
}
.task-system-records > strong {
  color: var(--blue);
  font-size: 13px;
}
.task-system-records p {
  margin: 0;
  color: var(--muted);
  font-size: 13px;
}
.task-system-record {
  display: grid;
  gap: 3px;
  padding-top: 8px;
  border-top: 1px solid rgba(36, 91, 131, .1);
}
.task-system-record span,
.task-system-record em {
  color: var(--muted);
  font-size: 12px;
  font-style: normal;
}
.task-system-record b {
  color: var(--ink);
  font-size: 14px;
}
.task-execution-actions {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto auto;
  gap: 10px;
  align-items: center;
}
.task-execution-actions span {
  color: var(--muted);
  font-size: 13px;
  line-height: 1.6;
}
.onboarding-roadmap {
  display: grid;
  gap: 12px;
}
.roadmap-head {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  gap: 14px;
  align-items: start;
  padding: 16px;
  border: 1px solid var(--line);
  border-radius: 8px;
  background: #f8fbff;
}
.roadmap-head strong {
  display: block;
  margin: 8px 0;
  font-size: 18px;
}
.roadmap-head p {
  margin: 0;
  color: var(--muted);
  line-height: 1.7;
}
.roadmap-steps {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 10px;
}
.roadmap-step {
  min-height: 188px;
  display: grid;
  gap: 8px;
  align-content: start;
  text-align: left;
  padding: 14px;
  border: 1px solid var(--line);
  border-radius: 8px;
  background: #fff;
  color: var(--ink);
  box-shadow: none;
}
.roadmap-step span {
  color: var(--muted);
  font-size: 12px;
}
.roadmap-step strong {
  font-size: 15px;
}
.roadmap-step p,
.roadmap-step em {
  margin: 0;
  color: var(--muted);
  font-size: 13px;
  line-height: 1.6;
  font-style: normal;
}
.roadmap-step.current {
  border-color: var(--brand);
  background: #eef6ff;
}
.roadmap-step.done {
  border-color: #b7e4c7;
  background: #f0fdf4;
}
.roadmap-step.locked {
  background: var(--panel-soft);
}
.system-blueprint {
  display: grid;
  gap: 12px;
  padding: 16px;
  border: 1px solid #d9bd7b;
  border-radius: 8px;
  background: var(--gold-soft);
}
.blueprint-head {
  display: grid;
  gap: 8px;
}
.blueprint-head strong {
  display: block;
  margin-top: 8px;
  font-size: 20px;
}
.blueprint-head p {
  margin: 0;
  color: var(--muted);
  line-height: 1.7;
}
.blueprint-head em {
  display: block;
  margin-top: 8px;
  color: var(--gold);
  font-size: 13px;
  font-style: normal;
  font-weight: 750;
  line-height: 1.6;
}
.blueprint-method-map {
  display: grid;
  gap: 10px;
  padding: 14px;
  border: 1px solid rgba(159, 107, 34, .2);
  border-radius: 8px;
  background: rgba(255, 255, 255, .6);
}
.blueprint-method-head {
  display: grid;
  gap: 6px;
}
.blueprint-method-head strong {
  font-size: 18px;
}
.blueprint-method-head p {
  margin: 0;
  color: var(--muted);
  line-height: 1.6;
}
.blueprint-method-grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 8px;
}
.blueprint-method-card {
  display: grid;
  gap: 7px;
  min-height: 190px;
  padding: 12px;
  border: 1px solid rgba(36, 91, 131, .16);
  border-radius: 8px;
  background: #fff;
  color: var(--ink);
  text-align: left;
  box-shadow: none;
}
.blueprint-method-card span {
  color: var(--blue);
  font-size: 12px;
  font-weight: 800;
}
.blueprint-method-card strong {
  font-size: 15px;
  line-height: 1.35;
}
.blueprint-method-card p,
.blueprint-method-card em {
  margin: 0;
  color: var(--muted);
  font-size: 12px;
  font-style: normal;
  line-height: 1.55;
}
.blueprint-grid {
  display: grid;
  grid-template-columns: repeat(7, minmax(0, 1fr));
  gap: 8px;
}
.blueprint-card {
  min-height: 150px;
  padding: 12px;
  border: 1px solid rgba(159, 107, 34, .22);
  border-radius: 8px;
  background: rgba(255, 255, 255, .74);
  color: var(--ink);
  box-shadow: none;
  text-align: left;
  display: grid;
  align-content: start;
  gap: 7px;
}
.blueprint-card.foundation {
  border-color: rgba(36, 91, 131, .28);
  background: #f3f8fc;
}
.blueprint-card.active {
  border-color: rgba(34, 113, 94, .22);
  background: #f7fcf9;
}
.blueprint-card span {
  color: var(--muted);
  font-size: 12px;
  line-height: 1.4;
}
.blueprint-card strong {
  font-size: 16px;
  line-height: 1.35;
}
.blueprint-card p {
  margin: 0;
  color: var(--muted);
  font-size: 12px;
  line-height: 1.55;
}
.blueprint-audit {
  display: grid;
  gap: 10px;
  padding: 14px;
  border: 1px solid rgba(34, 113, 94, .2);
  border-radius: 8px;
  background: #f7fcf9;
}
.blueprint-audit-head {
  display: grid;
  grid-template-columns: minmax(0, 1fr) 128px;
  gap: 12px;
  align-items: center;
}
.blueprint-audit-head strong {
  display: block;
  margin-top: 8px;
  font-size: 18px;
}
.blueprint-audit-head p {
  margin: 6px 0 0;
  color: var(--muted);
  line-height: 1.6;
}
.blueprint-audit-score {
  display: grid;
  justify-items: center;
  gap: 3px;
  padding: 10px;
  border: 1px solid rgba(34, 113, 94, .2);
  border-radius: 8px;
  background: #fff;
}
.blueprint-audit-score span,
.blueprint-audit-score em {
  color: var(--muted);
  font-size: 12px;
  font-style: normal;
}
.blueprint-audit-score strong {
  margin: 0;
  color: var(--green);
  font-size: 26px;
}
.blueprint-audit-grid {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 8px;
}
.blueprint-audit-card {
  display: grid;
  gap: 7px;
  min-height: 160px;
  padding: 12px;
  border: 1px solid rgba(34, 113, 94, .18);
  border-radius: 8px;
  background: #fff;
  color: var(--ink);
  text-align: left;
  box-shadow: none;
}
.blueprint-audit-card.gap {
  border-color: #ecd39a;
  background: #fffaf0;
}
.blueprint-audit-card span {
  color: var(--green);
  font-size: 12px;
  font-weight: 800;
}
.blueprint-audit-card strong {
  font-size: 15px;
  line-height: 1.35;
}
.blueprint-audit-card div {
  display: flex;
  flex-wrap: wrap;
  gap: 5px;
}
.blueprint-audit-card em {
  padding: 4px 6px;
  border-radius: 5px;
  background: #f1f5f9;
  color: var(--muted);
  font-size: 11px;
  font-style: normal;
}
.blueprint-audit-card em.ok {
  color: var(--green);
  background: #edf9f1;
}
.blueprint-audit-card p {
  margin: 0;
  color: var(--muted);
  font-size: 12px;
  line-height: 1.5;
}
.blueprint-sources {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 10px;
}
.blueprint-source {
  display: grid;
  gap: 6px;
  padding: 12px;
  border: 1px solid rgba(159, 107, 34, .22);
  border-radius: 8px;
  background: rgba(255, 255, 255, .72);
  min-width: 0;
}
.blueprint-source span {
  color: var(--gold);
  font-size: 12px;
  font-weight: 750;
}
.blueprint-source strong {
  font-size: 16px;
}
.blueprint-source code {
  display: block;
  padding: 7px 8px;
  border-radius: 6px;
  background: #f5f2ec;
  color: #5a3c18;
  font-size: 12px;
  white-space: normal;
  overflow-wrap: anywhere;
}
.blueprint-source p {
  margin: 0;
  color: var(--muted);
  line-height: 1.55;
  font-size: 13px;
}
.blueprint-loop {
  display: grid;
  grid-template-columns: minmax(0, 1.2fr) minmax(0, 1fr);
  gap: 10px;
}
.blueprint-loop > div {
  padding: 12px;
  border: 1px solid rgba(159, 107, 34, .18);
  border-radius: 8px;
  background: rgba(255, 255, 255, .72);
}
.blueprint-loop strong {
  display: block;
  margin-bottom: 8px;
}
.blueprint-loop p {
  display: grid;
  gap: 6px;
  margin: 0;
  color: var(--muted);
  line-height: 1.5;
}
.journey-stage,
.next-task {
  display: grid;
  gap: 8px;
  padding: 14px;
  border: 1px solid var(--line);
  border-radius: 8px;
  background: #fbfdff;
}
.next-task {
  grid-template-columns: minmax(0, 1fr) auto;
  align-items: center;
  background: #fff8f2;
  border-color: #f0d6c8;
}
.next-task h3 { margin: 6px 0; }
.next-task p { margin: 0; color: var(--muted); line-height: 1.7; }
.task-roadmap {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 10px;
}
.task-dot {
  display: grid;
  gap: 5px;
  padding: 12px;
  border: 1px solid var(--line);
  border-radius: 8px;
  background: #fff;
}
.task-dot.completed { border-color: #bbdfca; background: #f4fbf6; }
.task-dot.pending { border-color: #ead8c6; }
.task-dot span,
.task-dot em { color: var(--muted); font-size: 12px; font-style: normal; }
.task-dot strong { color: var(--ink); font-size: 14px; }
.principle {
  border-left: 4px solid var(--gold);
  background: var(--gold-soft);
  padding: 11px 12px;
  border-radius: 6px;
  line-height: 1.65;
}
.notice {
  border-left: 4px solid var(--green);
  background: var(--green-soft);
  color: var(--ink);
  padding: 10px 12px;
  border-radius: 6px;
  line-height: 1.7;
  margin-bottom: 12px;
  white-space: pre-wrap;
}
.system-status { display: grid; gap: 12px; }
.status-grid {
  display: grid;
  grid-template-columns: repeat(5, minmax(0, 1fr));
  gap: 10px;
}
.status-pill {
  border: 1px solid var(--line);
  border-radius: 8px;
  padding: 10px;
  background: var(--panel-soft);
  min-width: 0;
}
.status-pill strong { display: block; font-size: 13px; }
.status-pill span { color: var(--muted); font-size: 12px; overflow-wrap: anywhere; }
.status-pill.ok { border-color: #b9d9cf; background: #f2fbf7; }
.status-pill.bad { border-color: #efb5ad; background: #fff2f0; }
.log-tail {
  background: #18212b;
  color: #f2f6fb;
  border-radius: 8px;
  padding: 12px;
  overflow-x: auto;
  max-height: 240px;
  white-space: pre-wrap;
  font-family: ui-monospace, SFMono-Regular, Menlo, Consolas, monospace;
  font-size: 12px;
  line-height: 1.6;
}
.readiness {
  border: 1px solid var(--line);
  border-radius: 8px;
  padding: 14px;
  background: var(--panel-soft);
}
.readiness > div:first-child {
  display: grid;
  gap: 3px;
  margin-bottom: 12px;
}
.readiness > div:first-child span {
  color: var(--muted);
  font-size: 13px;
}
.readiness.ok {
  border-color: #b9d9cf;
  background: #f2fbf7;
}
.readiness.bad {
  border-color: #efc0b9;
  background: #fff7f5;
}
.readiness-grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 10px;
}
.readiness-item {
  background: #fff;
  border: 1px solid var(--line);
  border-radius: 7px;
  padding: 10px;
}
.readiness-item strong {
  display: block;
  font-size: 12px;
}
.readiness-item span {
  color: var(--muted);
  display: block;
  font-size: 12px;
  line-height: 1.5;
  margin-top: 4px;
}
.readiness-item.ok { border-color: #b9d9cf; }
.readiness-item.bad { border-color: #efb5ad; }

.grid { display: grid; gap: 12px; margin-bottom: 12px; }
.grid.two { grid-template-columns: repeat(2, minmax(0, 1fr)); }
.grid.three { grid-template-columns: repeat(3, minmax(0, 1fr)); }
.grid.four { grid-template-columns: repeat(4, minmax(0, 1fr)); }
label { display: grid; gap: 6px; color: var(--muted); font-size: 13px; min-width: 0; }
input,
textarea,
select {
  width: 100%;
  border: 1px solid var(--line-strong);
  border-radius: 7px;
  padding: 10px 12px;
  color: var(--ink);
  background: #fff;
  outline: none;
  min-height: 42px;
}
input:focus,
textarea:focus,
select:focus {
  border-color: #b55a51;
  box-shadow: 0 0 0 3px rgba(154, 47, 37, .1);
}
textarea { min-height: 96px; resize: vertical; line-height: 1.65; }

.tabs { display: flex; gap: 8px; flex-wrap: wrap; margin-bottom: 14px; }
.tabs button {
  background: #fff;
  color: var(--ink);
  border: 1px solid var(--line-strong);
  box-shadow: none;
}
.tabs button.active { background: var(--green); color: #fff; border-color: var(--green); }
.lesson-list { display: grid; gap: 12px; }
.lesson {
  background: var(--panel);
  border: 1px solid var(--line);
  border-radius: 8px;
  padding: 18px;
  box-shadow: 0 8px 20px rgba(31, 41, 51, .035);
}
.lesson h3 { margin: 0 0 8px; font-size: 18px; }
.lesson p { color: var(--muted); line-height: 1.75; margin: 0 0 12px; }
.lesson .key {
  color: var(--brand-dark);
  background: var(--brand-soft);
  padding: 9px 10px;
  border-radius: 6px;
  line-height: 1.6;
}
.learn-workbench {
  display: grid;
  grid-template-columns: minmax(0, 1.05fr) minmax(360px, .95fr);
  gap: 14px;
  align-items: start;
}
.quiz-panel { display: grid; gap: 14px; }
.bank-list {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 10px;
}
.bank-card {
  text-align: left;
  color: var(--ink);
  background: #fff;
  border: 1px solid var(--line-strong);
  box-shadow: none;
  display: grid;
  gap: 6px;
  min-height: 112px;
}
.bank-card strong { font-size: 15px; line-height: 1.35; }
.bank-card span,
.bank-card em {
  color: var(--muted);
  font-size: 12px;
  line-height: 1.5;
  font-style: normal;
}
.bank-card.active {
  border-color: #8fc4b7;
  background: var(--green-soft);
  color: var(--green);
}
.quiz-area,
.quiz-form {
  display: grid;
  gap: 12px;
}
.quiz-heading {
  display: flex;
  justify-content: space-between;
  gap: 12px;
  align-items: center;
  border: 1px solid var(--line);
  border-radius: 8px;
  padding: 14px;
  background: var(--panel-soft);
}
.quiz-heading div { display: grid; gap: 5px; min-width: 0; }
.quiz-heading strong { font-size: 17px; }
.quiz-heading span { color: var(--muted); line-height: 1.6; }
.question-card {
  border: 1px solid var(--line);
  border-radius: 8px;
  padding: 16px;
  background: #fff;
  display: grid;
  gap: 10px;
}
.question-meta {
  display: flex;
  justify-content: space-between;
  gap: 10px;
  color: var(--muted);
  font-size: 12px;
}
.question-meta em { font-style: normal; }
.question-card h4 {
  margin: 0;
  font-size: 16px;
  line-height: 1.45;
}
.question-card p {
  margin: 0;
  color: var(--muted);
  line-height: 1.7;
}
.option-list { display: grid; gap: 8px; }
.option-item {
  display: flex;
  align-items: flex-start;
  gap: 8px;
  border: 1px solid var(--line);
  border-radius: 7px;
  padding: 10px;
  background: var(--panel-soft);
}
.option-item input {
  width: auto;
  min-height: 0;
  margin-top: 4px;
  flex: 0 0 auto;
}
.option-item span { line-height: 1.55; }
.action-fields textarea { min-height: 120px; }
.quiz-result { display: grid; gap: 10px; }
.result-card {
  border: 1px solid var(--line-strong);
  border-radius: 8px;
  padding: 14px;
  display: grid;
  gap: 10px;
  background: var(--panel-soft);
}
.result-card.ok { border-color: #9ed0c2; background: var(--green-soft); }
.result-card.bad { border-color: #e7aaa3; background: var(--brand-soft); }
.result-card > span { color: var(--muted); }
.result-card > p { margin: 0; line-height: 1.6; color: var(--ink); }
.result-row {
  background: rgba(255, 255, 255, .72);
  border: 1px solid var(--line);
  border-radius: 7px;
  padding: 10px;
  display: grid;
  gap: 4px;
}
.result-row span { color: var(--muted); }
.result-row p { margin: 0; color: var(--muted); line-height: 1.6; }
.mistakes-list { gap: 10px; }
.mistake-summary {
  padding: 10px 12px;
  border: 1px solid var(--line);
  border-radius: 8px;
  background: #fbfaf7;
}
.mistake-item {
  display: grid;
  gap: 6px;
  padding: 12px;
  border: 1px solid #ecd39a;
  border-radius: 8px;
  background: #fffaf0;
}
.mistake-item span { color: var(--muted); }
.mistake-item p { margin: 0; color: var(--ink); line-height: 1.6; }
.mistake-actions {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
  align-items: center;
}
.quiz-report {
  margin: -4px 0 16px;
}
.learning-command-center {
  display: grid;
  gap: 12px;
  margin: 0 0 16px;
  padding: 18px;
  border: 1px solid rgba(36, 91, 131, .18);
  border-radius: 8px;
  background: #f8fbff;
}
.learning-command-head,
.learning-command-current {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  gap: 16px;
  align-items: start;
}
.learning-command-head strong {
  display: block;
  margin-top: 8px;
  font-size: 22px;
}
.learning-command-head p,
.learning-command-current p {
  margin: 6px 0 0;
  color: var(--muted);
  line-height: 1.65;
}
.learning-command-score {
  min-width: 126px;
  padding: 12px;
  text-align: right;
  border: 1px solid #cde3f2;
  border-radius: 8px;
  background: #fff;
}
.learning-command-score strong {
  display: block;
  color: var(--blue);
  font-size: 28px;
}
.learning-command-score span,
.learning-command-current span {
  color: var(--muted);
  font-size: 12px;
}
.learning-command-current {
  align-items: center;
  padding: 13px;
  border: 1px solid #cde3f2;
  border-radius: 8px;
  background: rgba(255, 255, 255, .76);
}
.learning-command-current strong {
  display: block;
  margin-top: 4px;
  font-size: 18px;
}
.learning-command-metrics {
  display: grid;
  grid-template-columns: repeat(8, minmax(0, 1fr));
  gap: 8px;
}
.learning-command-metrics span {
  min-width: 0;
  padding: 9px;
  border: 1px solid rgba(36, 91, 131, .14);
  border-radius: 7px;
  background: #fff;
}
.learning-command-metrics em {
  display: block;
  color: var(--muted);
  font-size: 12px;
  font-style: normal;
}
.learning-command-metrics strong {
  display: block;
  color: var(--ink);
  font-size: 18px;
  overflow-wrap: anywhere;
}
.learning-command-lanes {
  display: grid;
  grid-template-columns: repeat(5, minmax(0, 1fr));
  gap: 8px;
}
.learning-command-lanes button {
  display: grid;
  gap: 6px;
  min-width: 0;
  padding: 10px;
  text-align: left;
  color: var(--ink);
  border: 1px solid var(--line);
  border-radius: 8px;
  background: #fff;
  box-shadow: none;
}
.learning-command-lanes button.ready {
  border-color: #bbdfca;
  background: #f4fbf6;
}
.learning-command-lanes button.gap {
  border-color: #f0b5a8;
  background: #fff7f5;
}
.learning-command-lanes span,
.learning-command-lanes em {
  color: var(--muted);
  font-size: 12px;
  font-style: normal;
  line-height: 1.45;
}
.learning-command-lanes i {
  height: 7px;
  border-radius: 99px;
  background: #edf1f4;
  overflow: hidden;
}
.learning-command-lanes b {
  display: block;
  height: 100%;
  border-radius: inherit;
  background: var(--blue);
}
.learning-command-grid {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 10px;
}
.learning-command-panel {
  display: grid;
  gap: 8px;
  align-content: start;
  min-width: 0;
  padding: 12px;
  border: 1px solid rgba(36, 91, 131, .12);
  border-radius: 8px;
  background: #fff;
}
.learning-command-panel > strong {
  color: var(--blue);
  font-size: 13px;
}
.learning-command-panel button,
.learning-command-panel span {
  display: grid;
  gap: 5px;
  padding: 9px;
  text-align: left;
  color: var(--ink);
  border: 1px solid var(--line);
  border-radius: 7px;
  background: var(--panel-soft);
  box-shadow: none;
}
.learning-command-panel span.ok {
  border-color: #bbdfca;
  background: #f4fbf6;
}
.learning-command-panel span.gap {
  border-color: #f0b5a8;
  background: #fff7f5;
}
.learning-command-panel button span,
.learning-command-panel em,
.learning-command-panel small {
  color: var(--muted);
  font-size: 12px;
  font-style: normal;
  line-height: 1.45;
}
.learning-system-package {
  display: grid;
  gap: 10px;
  padding: 12px;
  border: 1px solid rgba(36, 91, 131, .14);
  border-radius: 8px;
  background: rgba(255, 255, 255, .8);
}
.learning-system-head {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  gap: 10px;
  align-items: start;
}
.learning-system-head strong {
  color: var(--blue);
  font-size: 14px;
}
.learning-system-head p {
  margin: 5px 0 0;
  color: var(--muted);
  font-size: 12px;
  line-height: 1.55;
}
.learning-system-head em {
  padding: 6px 8px;
  border-radius: 6px;
  background: #eaf2f8;
  color: var(--blue);
  font-size: 12px;
  font-style: normal;
  font-weight: 900;
}
.learning-system-modules {
  display: grid;
  grid-template-columns: repeat(5, minmax(0, 1fr));
  gap: 8px;
}
.learning-system-modules span {
  display: grid;
  gap: 4px;
  padding: 9px;
  border: 1px solid var(--line);
  border-radius: 7px;
  background: #fff;
}
.learning-system-modules strong {
  color: var(--ink);
  font-size: 13px;
}
.learning-system-modules em,
.learning-system-modules b {
  color: var(--muted);
  font-size: 12px;
  font-style: normal;
  font-weight: 500;
  line-height: 1.45;
}
.learning-system-grid {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 8px;
}
.learning-system-grid > div {
  display: grid;
  gap: 7px;
  padding: 10px;
  border: 1px solid var(--line);
  border-radius: 8px;
  background: #fff;
}
.learning-system-grid > div > strong {
  color: var(--blue);
  font-size: 13px;
}
.learning-system-grid span {
  display: grid;
  gap: 3px;
  padding: 7px;
  border: 1px solid var(--line);
  border-radius: 7px;
  background: var(--panel-soft);
}
.learning-system-grid em {
  color: var(--blue);
  font-size: 12px;
  font-style: normal;
  font-weight: 800;
}
.learning-system-grid b {
  color: var(--muted);
  font-size: 12px;
  font-weight: 500;
  line-height: 1.45;
}
.learning-path-map {
  display: grid;
  gap: 12px;
  margin: -4px 0 16px;
  padding: 16px;
  border: 1px solid rgba(77, 132, 104, .22);
  border-radius: 8px;
  background: #f5fbf7;
}
.learning-path-head,
.learning-path-current {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  gap: 14px;
  align-items: start;
}
.learning-path-head strong {
  display: block;
  margin-top: 8px;
  font-size: 20px;
}
.learning-path-head p,
.learning-path-current p,
.learning-path-contract span {
  margin: 6px 0 0;
  color: var(--muted);
  line-height: 1.65;
}
.learning-path-score {
  min-width: 118px;
  padding: 12px;
  border: 1px solid #bbdfca;
  border-radius: 8px;
  background: #fff;
  text-align: right;
}
.learning-path-score strong {
  display: block;
  color: #22715e;
  font-size: 28px;
}
.learning-path-score span,
.learning-path-current span {
  color: var(--muted);
  font-size: 12px;
}
.learning-path-current {
  align-items: center;
  padding: 12px;
  border: 1px solid rgba(77, 132, 104, .2);
  border-radius: 8px;
  background: rgba(255, 255, 255, .78);
}
.learning-path-current strong {
  display: block;
  margin-top: 4px;
  font-size: 18px;
}
.learning-path-rail {
  display: grid;
  grid-template-columns: repeat(6, minmax(0, 1fr));
  gap: 8px;
}
.learning-path-rail button {
  display: grid;
  gap: 6px;
  min-width: 0;
  padding: 10px;
  text-align: left;
  color: var(--ink);
  border: 1px solid var(--line);
  border-radius: 8px;
  background: #fff;
  box-shadow: none;
}
.learning-path-rail button.done {
  border-color: #bbdfca;
  background: #f0fdf4;
}
.learning-path-rail button.current {
  border-color: #ecd39a;
  background: #fffaf0;
}
.learning-path-rail button.locked {
  background: #f8fafc;
}
.learning-path-rail span {
  display: inline-grid;
  place-items: center;
  width: 24px;
  height: 24px;
  border-radius: 50%;
  background: #eaf2f8;
  color: var(--blue);
  font-weight: 900;
}
.learning-path-rail em,
.learning-path-rail small {
  color: var(--muted);
  font-size: 12px;
  font-style: normal;
  line-height: 1.45;
}
.learning-path-contract {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  gap: 12px;
  align-items: center;
  padding: 12px;
  border: 1px solid rgba(77, 132, 104, .16);
  border-radius: 8px;
  background: #fff;
}
.learning-path-contract strong {
  color: #22715e;
}
.learning-exam-center {
  display: grid;
  gap: 12px;
  margin: -4px 0 16px;
  padding: 16px;
  border: 1px solid #bfd7ef;
  border-radius: 8px;
  background: #f8fbff;
}
.learning-exam-head,
.learning-exam-ticket {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  gap: 14px;
  align-items: start;
}
.learning-exam-head strong {
  display: block;
  margin-top: 8px;
  font-size: 20px;
}
.learning-exam-head p {
  margin: 6px 0 0;
  color: var(--muted);
  line-height: 1.65;
}
.learning-exam-score {
  min-width: 118px;
  padding: 12px;
  border: 1px solid #bfd7ef;
  border-radius: 8px;
  background: #fff;
  text-align: right;
}
.learning-exam-score strong {
  display: block;
  color: var(--blue);
  font-size: 28px;
}
.learning-exam-score span {
  color: var(--muted);
  font-size: 12px;
}
.learning-exam-score.gap strong {
  color: var(--brand);
}
.learning-exam-ticket {
  padding: 12px;
  border: 1px solid rgba(36, 91, 131, .14);
  border-radius: 8px;
  background: rgba(255, 255, 255, .78);
  align-items: center;
}
.learning-exam-ticket strong,
.learning-exam-ticket span {
  display: block;
}
.learning-exam-ticket span {
  margin-top: 4px;
  color: var(--muted);
}
.learning-exam-metrics {
  display: grid;
  grid-template-columns: repeat(8, minmax(0, 1fr));
  gap: 8px;
}
.learning-exam-metrics span {
  padding: 9px;
  border: 1px solid rgba(36, 91, 131, .14);
  border-radius: 7px;
  background: rgba(255, 255, 255, .78);
  color: var(--muted);
  font-size: 12px;
}
.learning-exam-metrics strong {
  display: block;
  margin-top: 2px;
  color: var(--ink);
  font-size: 18px;
}
.learning-exam-lanes {
  display: grid;
  grid-template-columns: repeat(5, minmax(0, 1fr));
  gap: 9px;
}
.learning-exam-lane {
  display: grid;
  gap: 9px;
  padding: 12px;
  border: 1px solid rgba(36, 91, 131, .14);
  border-radius: 8px;
  background: rgba(255, 255, 255, .78);
}
.learning-exam-lane.gap {
  border-color: #f0b5a8;
  background: #fff8f5;
}
.learning-exam-lane.ready {
  border-color: #bbdfca;
  background: #f4fbf6;
}
.learning-exam-lane-head {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  gap: 8px;
}
.learning-exam-lane-head p {
  margin: 4px 0 0;
  color: var(--muted);
  line-height: 1.5;
}
.learning-exam-lane-head em {
  color: var(--blue);
  font-style: normal;
  font-weight: 900;
}
.learning-exam-lane-metrics {
  display: flex;
  flex-wrap: wrap;
  gap: 7px;
}
.learning-exam-lane-metrics span {
  padding: 6px 8px;
  border: 1px solid var(--line);
  border-radius: 999px;
  background: #fff;
  color: var(--muted);
  font-size: 12px;
}
.learning-exam-lane-metrics b {
  margin-left: 4px;
  color: var(--ink);
}
.learning-exam-checks {
  display: grid;
  gap: 7px;
}
.learning-exam-checks button,
.learning-exam-bottom button {
  display: grid;
  gap: 4px;
  padding: 9px;
  text-align: left;
  color: var(--ink);
  border: 1px solid var(--line);
  border-radius: 7px;
  background: #fff;
  box-shadow: none;
}
.learning-exam-checks button.ok {
  border-color: #bbdfca;
  background: #f4fbf6;
}
.learning-exam-checks button.gap {
  border-color: #f0b5a8;
  background: #fff7f5;
}
.learning-exam-checks span,
.learning-exam-checks em,
.learning-exam-bottom span,
.learning-exam-bottom em {
  color: var(--muted);
  font-size: 12px;
  font-style: normal;
  line-height: 1.45;
}
.learning-exam-bottom {
  display: grid;
  grid-template-columns: minmax(0, .9fr) minmax(0, 1.1fr);
  gap: 10px;
}
.learning-exam-bottom > div {
  display: grid;
  gap: 7px;
  padding: 12px;
  border: 1px solid rgba(36, 91, 131, .14);
  border-radius: 8px;
  background: rgba(255, 255, 255, .78);
}
.learning-exam-bottom > div > strong {
  margin-bottom: 2px;
}
.learning-exam-bottom span {
  display: block;
}
.learning-exam-bottom span em {
  display: block;
  margin-top: 3px;
}
.learning-exam-next {
  padding: 10px 12px;
  border: 1px solid rgba(36, 91, 131, .14);
  border-radius: 7px;
  background: rgba(255, 255, 255, .78);
  color: var(--blue);
  line-height: 1.6;
}
.learning-control-tower {
  display: grid;
  gap: 12px;
  margin: -4px 0 16px;
  padding: 16px;
  border: 1px solid #bfd7ef;
  border-radius: 8px;
  background: #f8fbff;
}
.ai-learning-session {
  display: grid;
  gap: 12px;
  margin: -4px 0 16px;
  padding: 16px;
  border: 1px solid #cdd8e4;
  border-radius: 8px;
  background: #f8fbff;
}
.ai-session-head {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  gap: 14px;
  align-items: start;
}
.ai-session-head strong {
  display: block;
  margin-top: 8px;
  font-size: 20px;
}
.ai-session-head p,
.ai-session-steps p,
.ai-session-prompts p {
  margin: 6px 0 0;
  color: var(--muted);
  line-height: 1.65;
}
.ai-session-grid {
  display: grid;
  grid-template-columns: minmax(0, 1fr) minmax(280px, .55fr);
  gap: 10px;
}
.ai-session-steps {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 9px;
}
.ai-session-steps button,
.ai-session-prompts button {
  display: grid;
  gap: 6px;
  align-content: start;
  padding: 12px;
  text-align: left;
  color: var(--ink);
  border: 1px solid var(--line);
  border-radius: 8px;
  background: #fff;
  box-shadow: none;
}
.ai-session-steps span,
.ai-session-prompts span {
  color: var(--muted);
  font-size: 12px;
}
.ai-session-steps strong {
  font-size: 14px;
}
.ai-session-prompts {
  display: grid;
  gap: 8px;
  padding: 12px;
  border: 1px solid rgba(36, 91, 131, .14);
  border-radius: 8px;
  background: rgba(255, 255, 255, .78);
}
.ai-session-prompts > strong {
  color: var(--brand);
}
.ai-session-acceptance {
  display: grid;
  grid-template-columns: minmax(0, .7fr) minmax(0, 1fr);
  gap: 10px;
}
.ai-session-acceptance > div {
  display: flex;
  flex-wrap: wrap;
  gap: 7px;
  align-items: flex-start;
  padding: 12px;
  border: 1px solid rgba(36, 91, 131, .14);
  border-radius: 8px;
  background: rgba(255, 255, 255, .78);
}
.ai-session-acceptance strong {
  width: 100%;
}
.ai-session-acceptance span {
  padding: 7px 9px;
  border: 1px solid #cdd8e4;
  border-radius: 7px;
  background: #fff;
  color: var(--muted);
  font-size: 12px;
}
.ai-session-acceptance span.active {
  border-color: #bbdfca;
  background: #f4fbf6;
  color: #22715e;
}
.ai-session-acceptance span.gap {
  border-color: #f0b5a8;
  background: #fff7f5;
  color: #8f241c;
}
.learning-control-head {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  gap: 14px;
  align-items: start;
}
.learning-control-head strong {
  display: block;
  margin-top: 8px;
  font-size: 20px;
}
.learning-control-head p {
  margin: 6px 0 0;
  color: var(--muted);
  line-height: 1.65;
}
.learning-control-metrics {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 8px;
}
.learning-control-metrics span {
  border: 1px solid rgba(36, 91, 131, .16);
  border-radius: 7px;
  padding: 10px;
  background: rgba(255, 255, 255, .78);
  color: var(--muted);
}
.learning-control-metrics strong {
  display: block;
  margin-top: 3px;
  color: var(--ink);
  font-size: 18px;
}
.learning-control-steps {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 10px;
}
.learning-control-step {
  min-height: 168px;
  display: grid;
  gap: 8px;
  align-content: start;
  text-align: left;
  padding: 13px;
  border: 1px solid var(--line);
  border-radius: 8px;
  background: #fff;
  color: var(--ink);
  box-shadow: none;
}
.learning-control-step:hover {
  border-color: var(--brand);
}
.learning-control-step.current {
  border-color: var(--brand);
  background: #eef6ff;
}
.learning-control-step.done {
  border-color: #b7e4c7;
  background: #f0fdf4;
}
.learning-control-step.locked {
  background: var(--panel-soft);
}
.learning-control-step span {
  color: var(--muted);
  font-size: 12px;
}
.learning-control-step strong {
  font-size: 15px;
}
.learning-control-step p,
.learning-control-step em {
  margin: 0;
  color: var(--muted);
  font-size: 12px;
  line-height: 1.55;
  font-style: normal;
}
.learning-control-sources {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 10px;
}
.learning-control-source {
  padding: 12px;
  border: 1px solid rgba(36, 91, 131, .14);
  border-radius: 8px;
  background: rgba(255, 255, 255, .78);
}
.learning-control-source strong {
  display: block;
  margin-bottom: 5px;
}
.learning-control-source p {
  margin: 0;
  color: var(--muted);
  font-size: 12px;
  line-height: 1.6;
  word-break: break-all;
}
.learning-practice-loop {
  display: grid;
  gap: 12px;
  margin: -4px 0 16px;
  padding: 16px;
  border: 1px solid #cfe4d3;
  border-radius: 8px;
  background: #f6fbf7;
}
.learning-loop-head {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  gap: 14px;
  align-items: start;
}
.learning-loop-head strong {
  display: block;
  margin-top: 8px;
  font-size: 20px;
}
.learning-loop-head p,
.learning-loop-stage p {
  margin: 6px 0 0;
  color: var(--muted);
  line-height: 1.65;
}
.learning-loop-metrics {
  display: grid;
  grid-template-columns: repeat(8, minmax(0, 1fr));
  gap: 8px;
}
.learning-loop-metrics span {
  border: 1px solid rgba(34, 113, 94, .16);
  border-radius: 7px;
  padding: 10px;
  background: rgba(255, 255, 255, .78);
  color: var(--muted);
}
.learning-loop-metrics strong {
  display: block;
  margin-top: 3px;
  color: var(--ink);
  font-size: 18px;
}
.learning-loop-stages {
  display: grid;
  grid-template-columns: repeat(5, minmax(0, 1fr));
  gap: 10px;
}
.learning-loop-stage {
  display: grid;
  gap: 8px;
  align-content: start;
  padding: 12px;
  border: 1px solid rgba(34, 113, 94, .14);
  border-radius: 8px;
  background: rgba(255, 255, 255, .78);
}
.learning-loop-stage > div:first-child {
  display: flex;
  justify-content: space-between;
  gap: 8px;
}
.learning-loop-stage > div:first-child span {
  color: #22715e;
  font-weight: 800;
}
.learning-loop-checks {
  display: grid;
  gap: 7px;
}
.learning-loop-checks button {
  display: grid;
  gap: 4px;
  padding: 9px;
  text-align: left;
  color: var(--ink);
  border: 1px solid var(--line);
  border-radius: 7px;
  background: #fff;
  box-shadow: none;
}
.learning-loop-checks button.ok {
  border-color: #bbdfca;
  background: #f4fbf6;
}
.learning-loop-checks button.gap {
  border-color: #f0b5a8;
  background: #fff7f5;
}
.learning-loop-checks span,
.learning-loop-checks em {
  color: var(--muted);
  font-size: 12px;
  font-style: normal;
  line-height: 1.45;
}
.learning-loop-checks strong {
  font-size: 13px;
}
.learning-loop-next {
  padding: 10px 12px;
  border: 1px solid rgba(34, 113, 94, .14);
  border-radius: 7px;
  background: rgba(255, 255, 255, .78);
  color: #2d6355;
  line-height: 1.6;
}
.learning-plan {
  display: grid;
  gap: 12px;
  margin-bottom: 16px;
}
.learning-plan-head {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  gap: 14px;
  align-items: start;
  padding: 16px;
  border: 1px solid #bbdfca;
  border-radius: 8px;
  background: var(--green-soft);
}
.learning-plan-head strong {
  display: block;
  margin: 8px 0;
  font-size: 18px;
}
.learning-plan-head p {
  margin: 0;
  color: var(--muted);
  line-height: 1.7;
}
.learning-plan-steps {
  display: grid;
  grid-template-columns: repeat(5, minmax(0, 1fr));
  gap: 10px;
}
.learning-plan-step {
  min-height: 180px;
  display: grid;
  gap: 8px;
  align-content: start;
  text-align: left;
  padding: 13px;
  border: 1px solid var(--line);
  border-radius: 8px;
  background: #fff;
  color: var(--ink);
  box-shadow: none;
}
.learning-plan-step.current {
  border-color: var(--brand);
  background: #eef6ff;
}
.learning-plan-step.done {
  border-color: #b7e4c7;
  background: #f0fdf4;
}
.learning-plan-step.locked {
  background: var(--panel-soft);
}
.learning-plan-step span {
  color: var(--muted);
  font-size: 12px;
}
.learning-plan-step strong {
  font-size: 15px;
}
.learning-plan-step p,
.learning-plan-step em {
  margin: 0;
  color: var(--muted);
  font-size: 12px;
  line-height: 1.55;
  font-style: normal;
}
.exam-workbench {
  display: grid;
  gap: 12px;
  margin: -4px 0 16px;
  padding: 16px;
  border: 1px solid #cde3f2;
  border-radius: 8px;
  background: #f8fbff;
}
.exam-head {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  gap: 14px;
  align-items: start;
}
.exam-head strong {
  display: block;
  margin-top: 8px;
  font-size: 20px;
}
.exam-head p {
  margin: 6px 0 0;
  color: var(--muted);
  line-height: 1.65;
}
.exam-metrics {
  display: grid;
  grid-template-columns: repeat(5, minmax(0, 1fr));
  gap: 8px;
}
.exam-metrics span {
  border: 1px solid rgba(36, 91, 131, .16);
  border-radius: 7px;
  padding: 10px;
  background: rgba(255, 255, 255, .72);
  color: var(--muted);
}
.exam-metrics strong {
  display: block;
  margin-top: 3px;
  color: var(--ink);
  font-size: 18px;
}
.exam-task-list {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 10px;
}
.exam-task {
  display: grid;
  gap: 6px;
  align-content: start;
  min-height: 142px;
  padding: 12px;
  border: 1px solid var(--line);
  border-radius: 8px;
  text-align: left;
  color: var(--ink);
  background: #fff;
  box-shadow: none;
}
.exam-task.retry,
.exam-task.due,
.exam-task.current {
  border-color: #ecd39a;
  background: #fffaf0;
}
.exam-task.passed,
.exam-task.active {
  border-color: #bbdfca;
  background: #f4fbf6;
}
.exam-task span,
.exam-task em {
  color: var(--muted);
  font-size: 12px;
  font-style: normal;
}
.exam-task strong {
  font-size: 14px;
}
.exam-task p {
  margin: 0;
  color: var(--muted);
  font-size: 12px;
  line-height: 1.55;
}
.action-handbook-plan {
  display: grid;
  gap: 12px;
  margin: -4px 0 16px;
  padding: 16px;
  border: 1px solid #bbdfca;
  border-radius: 8px;
  background: #f4fbf6;
}
.handbook-head {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  gap: 14px;
  align-items: start;
}
.handbook-head strong {
  display: block;
  margin-top: 8px;
  font-size: 20px;
}
.handbook-head p {
  margin: 6px 0 0;
  color: var(--muted);
  line-height: 1.65;
}
.handbook-mode {
  display: grid;
  gap: 4px;
  padding: 10px 12px;
  border: 1px solid rgba(80, 136, 121, .18);
  border-radius: 8px;
  background: rgba(255, 255, 255, .75);
}
.handbook-mode strong {
  color: var(--green);
  font-size: 14px;
}
.handbook-mode span {
  color: var(--muted);
  font-size: 13px;
  line-height: 1.55;
}
.handbook-tasks {
  display: grid;
  grid-template-columns: repeat(5, minmax(0, 1fr));
  gap: 10px;
}
.handbook-task {
  display: grid;
  gap: 7px;
  align-content: start;
  min-height: 178px;
  padding: 12px;
  border: 1px solid var(--line);
  border-radius: 8px;
  background: #fff;
  color: var(--ink);
  text-align: left;
  box-shadow: none;
}
.handbook-task.current {
  border-color: #ecd39a;
  background: #fffaf0;
}
.handbook-task.recent {
  border-color: #cde3f2;
  background: #f8fbff;
}
.handbook-task span {
  color: var(--green);
  font-size: 12px;
  font-weight: 800;
}
.handbook-task strong {
  font-size: 15px;
  line-height: 1.35;
}
.handbook-task p,
.handbook-task em {
  margin: 0;
  color: var(--muted);
  font-size: 12px;
  line-height: 1.55;
  font-style: normal;
}
.report-card {
  display: grid;
  gap: 12px;
  border: 1px solid #cde3f2;
  border-radius: 8px;
  padding: 16px;
  background: var(--blue-soft);
}
.report-card.review,
.report-card.retry {
  border-color: #ecd39a;
  background: var(--gold-soft);
}
.report-head {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  gap: 14px;
  align-items: center;
}
.report-head strong {
  display: block;
  margin-top: 8px;
  font-size: 20px;
}
.report-head p {
  margin: 6px 0 0;
  color: var(--muted);
  line-height: 1.65;
}
.report-metrics,
.bank-status-list {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 8px;
}
.report-metrics span,
.bank-status {
  border: 1px solid rgba(36, 91, 131, .16);
  border-radius: 7px;
  padding: 10px;
  background: rgba(255, 255, 255, .72);
}
.report-metrics strong,
.bank-status strong {
  display: block;
  margin-top: 4px;
  color: var(--ink);
  font-size: 18px;
}
.bank-status {
  color: var(--ink);
  text-align: left;
  box-shadow: none;
}
.bank-status span,
.bank-status em {
  display: block;
  color: var(--muted);
  font-size: 12px;
  font-style: normal;
}
.bank-status.passed { border-color: #b9d9cf; background: var(--green-soft); }
.bank-status.retry { border-color: #ecd39a; background: #fffaf0; }
.borrow-report {
  margin: -4px 0 16px;
}
.borrow-command-center {
  display: grid;
  gap: 12px;
  margin: 0 0 16px;
  padding: 16px;
  border: 1px solid rgba(143, 36, 28, .18);
  border-radius: 8px;
  background: #fffdf8;
}
.borrow-command-head,
.borrow-command-current {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  gap: 14px;
  align-items: start;
}
.borrow-command-head strong {
  display: block;
  margin-top: 8px;
  font-size: 22px;
}
.borrow-command-head p,
.borrow-command-current p {
  margin: 6px 0 0;
  color: var(--muted);
  line-height: 1.65;
}
.borrow-command-score {
  min-width: 142px;
  padding: 12px;
  text-align: center;
  border: 1px solid rgba(143, 36, 28, .14);
  border-radius: 8px;
  background: #fff;
}
.borrow-command-score span,
.borrow-command-score em,
.borrow-command-current span {
  display: block;
  color: var(--muted);
  font-size: 12px;
  font-style: normal;
}
.borrow-command-score strong {
  display: block;
  margin: 4px 0;
  color: var(--brand);
  font-size: 30px;
}
.borrow-command-current {
  align-items: center;
  padding: 13px;
  border: 1px solid #ecd39a;
  border-radius: 8px;
  background: #fffaf0;
}
.borrow-command-current strong {
  display: block;
  margin-top: 5px;
  font-size: 18px;
}
.borrow-command-metrics {
  display: grid;
  grid-template-columns: repeat(8, minmax(0, 1fr));
  gap: 8px;
}
.borrow-command-metrics span {
  min-width: 0;
  padding: 10px;
  border: 1px solid rgba(143, 36, 28, .14);
  border-radius: 7px;
  background: rgba(255, 255, 255, .74);
}
.borrow-command-metrics em {
  display: block;
  color: var(--muted);
  font-size: 12px;
  font-style: normal;
}
.borrow-command-metrics strong {
  display: block;
  color: var(--ink);
  font-size: 19px;
}
.borrow-command-lanes {
  display: grid;
  grid-template-columns: repeat(7, minmax(0, 1fr));
  gap: 8px;
}
.borrow-command-lanes button {
  display: grid;
  gap: 6px;
  min-width: 0;
  padding: 10px;
  text-align: left;
  color: var(--ink);
  border: 1px solid var(--line);
  border-radius: 8px;
  background: #fff;
  box-shadow: none;
}
.borrow-command-lanes button.ready {
  border-color: #bbdfca;
  background: #f4fbf6;
}
.borrow-command-lanes button.gap {
  border-color: #f0b5a8;
  background: #fff7f5;
}
.borrow-command-lanes span,
.borrow-command-lanes em {
  color: var(--muted);
  font-size: 12px;
  font-style: normal;
  line-height: 1.45;
}
.borrow-command-lanes strong {
  font-size: 14px;
}
.borrow-command-lanes i {
  height: 7px;
  border-radius: 99px;
  background: #edf1f4;
  overflow: hidden;
}
.borrow-command-lanes b {
  display: block;
  height: 100%;
  border-radius: inherit;
  background: var(--green);
}
.borrow-command-bottom {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 10px;
}
.borrow-command-panel {
  display: grid;
  gap: 8px;
  align-content: start;
  min-width: 0;
  padding: 12px;
  border: 1px solid rgba(36, 91, 131, .12);
  border-radius: 8px;
  background: #fff;
}
.borrow-command-panel > strong {
  color: var(--brand);
  font-size: 13px;
}
.borrow-command-panel button,
.borrow-command-note {
  display: grid;
  gap: 5px;
  min-width: 0;
  padding: 9px;
  text-align: left;
  color: var(--ink);
  border: 1px solid var(--line);
  border-radius: 7px;
  background: var(--panel-soft);
  box-shadow: none;
}
.borrow-command-panel button.overdue {
  border-color: #f0b5a8;
  background: #fff7f5;
}
.borrow-command-panel button.followup,
.borrow-command-panel button.followup_due,
.borrow-command-panel button.due_soon {
  border-color: #ecd39a;
  background: #fffaf0;
}
.borrow-command-panel button.meeting {
  border-color: #bbdfca;
  background: var(--green-soft);
}
.borrow-command-panel span,
.borrow-command-panel em,
.borrow-command-note span,
.borrow-command-note em {
  color: var(--muted);
  font-size: 12px;
  font-style: normal;
  line-height: 1.45;
}
.borrow-command-panel button strong,
.borrow-command-note strong {
  font-size: 14px;
}
.borrow-command-script {
  display: grid;
  gap: 6px;
  padding-top: 2px;
}
.borrow-command-script span {
  padding: 8px;
  border: 1px solid var(--line);
  border-radius: 7px;
  background: var(--panel-soft);
  color: var(--ink);
}
.borrow-command-script p {
  margin: 0;
  color: var(--muted);
  line-height: 1.6;
  font-size: 13px;
}
.borrow-system-package {
  display: grid;
  gap: 10px;
  padding: 12px;
  border: 1px solid rgba(143, 36, 28, .14);
  border-radius: 8px;
  background: rgba(255, 255, 255, .78);
}
.borrow-system-head {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  gap: 10px;
  align-items: start;
}
.borrow-system-head strong {
  color: var(--brand);
  font-size: 14px;
}
.borrow-system-head p {
  margin: 5px 0 0;
  color: var(--muted);
  font-size: 12px;
  line-height: 1.55;
}
.borrow-system-head em {
  padding: 6px 8px;
  border-radius: 6px;
  background: #fff2dd;
  color: var(--brand);
  font-size: 12px;
  font-style: normal;
  font-weight: 900;
}
.borrow-system-fields {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 8px;
}
.borrow-system-fields span {
  display: grid;
  gap: 3px;
  padding: 9px;
  border: 1px solid var(--line);
  border-radius: 7px;
  background: #fff;
}
.borrow-system-fields span.required {
  border-color: #ecd39a;
  background: #fffaf0;
}
.borrow-system-fields strong {
  color: var(--ink);
  font-size: 13px;
}
.borrow-system-fields em,
.borrow-system-fields b {
  color: var(--muted);
  font-size: 12px;
  font-style: normal;
  font-weight: 500;
  line-height: 1.45;
}
.borrow-system-grid {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 8px;
}
.borrow-system-grid > div {
  display: grid;
  gap: 7px;
  padding: 10px;
  border: 1px solid var(--line);
  border-radius: 8px;
  background: #fff;
}
.borrow-system-grid > div > strong {
  color: var(--brand);
  font-size: 13px;
}
.borrow-system-grid span {
  display: grid;
  gap: 3px;
  padding: 7px;
  border: 1px solid var(--line);
  border-radius: 7px;
  background: var(--panel-soft);
}
.borrow-system-grid span.high {
  border-color: #f0b5a8;
  background: #fff7f5;
}
.borrow-system-grid em {
  color: var(--brand);
  font-size: 12px;
  font-style: normal;
  font-weight: 800;
}
.borrow-system-grid b,
.borrow-system-grid small {
  color: var(--muted);
  font-size: 12px;
  font-weight: 500;
  line-height: 1.45;
}
.borrow-pipeline {
  display: grid;
  gap: 12px;
  margin: 0 0 16px;
  padding: 16px;
  border: 1px solid rgba(143, 36, 28, .16);
  border-radius: 8px;
  background: #fbfcf8;
}
.borrow-pipeline-head,
.borrow-pipeline-next {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  gap: 14px;
  align-items: start;
}
.borrow-pipeline-head strong {
  display: block;
  margin-top: 8px;
  font-size: 22px;
}
.borrow-pipeline-head p,
.borrow-pipeline-next p {
  margin: 6px 0 0;
  color: var(--muted);
  line-height: 1.65;
}
.borrow-pipeline-score {
  min-width: 140px;
  padding: 12px;
  text-align: center;
  border: 1px solid rgba(143, 36, 28, .14);
  border-radius: 8px;
  background: #fff;
}
.borrow-pipeline-score span,
.borrow-pipeline-score em,
.borrow-pipeline-next span {
  display: block;
  color: var(--muted);
  font-size: 12px;
  font-style: normal;
}
.borrow-pipeline-score strong {
  display: block;
  margin: 4px 0;
  color: var(--brand);
  font-size: 30px;
}
.borrow-pipeline-next {
  align-items: center;
  padding: 13px;
  border: 1px solid #ecd39a;
  border-radius: 8px;
  background: #fffaf0;
}
.borrow-pipeline-next strong {
  display: block;
  margin-top: 5px;
  font-size: 18px;
}
.borrow-pipeline-stages {
  display: grid;
  grid-template-columns: repeat(7, minmax(0, 1fr));
  gap: 8px;
}
.borrow-pipeline-stages button {
  display: grid;
  gap: 6px;
  padding: 10px;
  text-align: left;
  color: var(--ink);
  border: 1px solid var(--line);
  border-radius: 8px;
  background: #fff;
  box-shadow: none;
}
.borrow-pipeline-stages button.ready {
  border-color: #bbdfca;
  background: #f4fbf6;
}
.borrow-pipeline-stages button.gap {
  border-color: #f0b5a8;
  background: #fff7f5;
}
.borrow-pipeline-stages span,
.borrow-pipeline-stages em,
.borrow-pipeline-leaks span,
.borrow-pipeline-leaks em {
  color: var(--muted);
  font-size: 12px;
  font-style: normal;
  line-height: 1.45;
}
.borrow-pipeline-stages strong,
.borrow-pipeline-leaks strong {
  font-size: 14px;
}
.borrow-pipeline-stages i {
  height: 7px;
  border-radius: 99px;
  background: #edf1f4;
  overflow: hidden;
}
.borrow-pipeline-stages b {
  display: block;
  height: 100%;
  border-radius: inherit;
  background: var(--green);
}
.borrow-pipeline-grid {
  display: grid;
  grid-template-columns: minmax(0, 1.25fr) minmax(280px, .75fr);
  gap: 10px;
}
.borrow-pipeline-leaks,
.borrow-pipeline-protocol {
  display: grid;
  gap: 8px;
  align-content: start;
  padding: 12px;
  border: 1px solid rgba(36, 91, 131, .12);
  border-radius: 8px;
  background: #fff;
}
.borrow-pipeline-leaks > strong,
.borrow-pipeline-protocol > strong {
  color: var(--brand);
  font-size: 13px;
}
.borrow-pipeline-leaks button {
  display: grid;
  gap: 4px;
  padding: 9px;
  text-align: left;
  color: var(--ink);
  border: 1px solid #f0b5a8;
  border-radius: 7px;
  background: #fff7f5;
  box-shadow: none;
}
.borrow-pipeline-protocol span {
  padding: 8px;
  border: 1px solid var(--line);
  border-radius: 7px;
  background: var(--panel-soft);
  color: var(--ink);
  font-size: 13px;
}
.borrow-pipeline-protocol p {
  margin: 0;
  color: var(--muted);
  line-height: 1.6;
  font-size: 13px;
}
.borrow-action-center {
  margin-bottom: 16px;
}
.borrow-action-panel {
  display: grid;
  gap: 12px;
  padding: 16px;
  border: 1px solid #ecd39a;
  border-radius: 8px;
  background: var(--gold-soft);
}
.borrow-action-head {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  gap: 16px;
  align-items: start;
}
.borrow-action-head strong {
  display: block;
  margin: 8px 0;
  font-size: 18px;
}
.borrow-action-head p {
  margin: 0;
  color: var(--muted);
  line-height: 1.7;
}
.borrow-action-head button:disabled {
  opacity: .55;
  cursor: default;
}
.borrow-action-metrics {
  display: grid;
  grid-template-columns: repeat(5, minmax(0, 1fr));
  gap: 8px;
}
.borrow-action-metrics span {
  padding: 10px;
  border: 1px solid rgba(143, 36, 28, .14);
  border-radius: 7px;
  background: rgba(255, 255, 255, .72);
}
.borrow-action-metrics em {
  display: block;
  color: var(--muted);
  font-size: 12px;
  font-style: normal;
}
.borrow-action-metrics strong {
  display: block;
  color: var(--ink);
  font-size: 20px;
}
.borrow-action-list {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 10px;
}
.borrow-action-card {
  display: grid;
  gap: 6px;
  min-height: 146px;
  padding: 12px;
  text-align: left;
  color: var(--ink);
  border: 1px solid var(--line);
  border-radius: 8px;
  background: #fff;
  box-shadow: none;
}
.borrow-action-card span {
  color: var(--brand);
  font-size: 12px;
  font-weight: 750;
}
.borrow-action-card strong {
  font-size: 15px;
  line-height: 1.35;
}
.borrow-action-card em,
.borrow-action-card small {
  color: var(--muted);
  font-size: 12px;
  font-style: normal;
  line-height: 1.55;
}
.borrow-action-card.overdue {
  border-color: #f0b5a8;
  background: #fff7f5;
}
.borrow-action-card.followup,
.borrow-action-card.due_soon {
  border-color: #ecd39a;
  background: #fffaf0;
}
.borrow-action-card.meeting {
  border-color: #b9d9cf;
  background: var(--green-soft);
}
.borrow-board {
  display: grid;
  gap: 12px;
  margin-bottom: 16px;
}
.borrow-board-head {
  padding: 16px;
  border: 1px solid #bbdfca;
  border-radius: 8px;
  background: var(--green-soft);
}
.borrow-board-head strong {
  display: block;
  margin: 8px 0;
  font-size: 18px;
}
.borrow-board-head p {
  margin: 0;
  color: var(--muted);
  line-height: 1.7;
}
.borrow-board-grid {
  display: grid;
  grid-template-columns: repeat(5, minmax(0, 1fr));
  gap: 10px;
}
.borrow-board-column {
  display: grid;
  align-content: start;
  gap: 10px;
  min-width: 0;
  padding: 12px;
  border: 1px solid var(--line);
  border-radius: 8px;
  background: var(--panel-soft);
}
.borrow-board-column h3 {
  margin: 0;
  font-size: 15px;
}
.borrow-board-column h3 span {
  color: var(--brand);
}
.borrow-board-column p {
  margin: 0;
  color: var(--muted);
  font-size: 12px;
  line-height: 1.55;
}
.borrow-board-list {
  display: grid;
  gap: 8px;
}
.borrow-board-card {
  display: grid;
  gap: 5px;
  text-align: left;
  padding: 10px;
  border: 1px solid var(--line);
  border-radius: 8px;
  background: #fff;
  color: var(--ink);
  box-shadow: none;
}
.borrow-board-card.overdue {
  border-color: #f0b5a8;
  background: #fff7f5;
}
.borrow-board-card.due_soon,
.borrow-board-card.followup_due {
  border-color: #ecd39a;
  background: #fffaf0;
}
.borrow-board-card strong {
  font-size: 14px;
}
.borrow-board-card span,
.borrow-board-card em {
  color: var(--muted);
  font-size: 12px;
  font-style: normal;
}
.borrow-bookshelf {
  display: grid;
  gap: 12px;
  margin-bottom: 16px;
}
.borrow-shelf-head {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  gap: 14px;
  align-items: start;
  padding: 16px;
  border: 1px solid #bbdfca;
  border-radius: 8px;
  background: var(--green-soft);
}
.borrow-shelf-head strong {
  display: block;
  margin: 8px 0;
  font-size: 18px;
}
.borrow-shelf-head p {
  margin: 0;
  color: var(--muted);
  line-height: 1.7;
}
.borrow-shelf-metrics,
.borrow-shelf-grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 10px;
}
.borrow-shelf-metrics span {
  padding: 12px;
  border: 1px solid var(--line);
  border-radius: 8px;
  background: #fff;
}
.borrow-shelf-metrics em {
  display: block;
  color: var(--muted);
  font-size: 12px;
  font-style: normal;
}
.borrow-shelf-metrics strong {
  display: block;
  margin-top: 4px;
  font-size: 20px;
}
.borrow-shelf-book {
  display: grid;
  gap: 10px;
  min-width: 0;
  padding: 14px;
  border: 1px solid var(--line);
  border-radius: 8px;
  background: #fff;
}
.borrow-shelf-book.blocked {
  border-color: #f0b5a8;
  background: #fff7f5;
}
.borrow-shelf-book.watch,
.borrow-shelf-book.empty {
  border-color: #ecd39a;
  background: #fffaf0;
}
.borrow-shelf-book span,
.borrow-shelf-book em,
.borrow-shelf-loans span,
.borrow-shelf-loans em {
  color: var(--muted);
  font-size: 12px;
  font-style: normal;
}
.borrow-shelf-book strong {
  display: block;
  margin-top: 4px;
  font-size: 16px;
}
.borrow-shelf-book p {
  margin: 0;
  color: var(--ink);
  line-height: 1.55;
  font-size: 13px;
}
.borrow-shelf-book-metrics {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 6px;
}
.borrow-shelf-book-metrics span {
  padding: 7px;
  border: 1px solid rgba(80, 136, 121, .18);
  border-radius: 6px;
  background: #fff;
}
.borrow-shelf-book-metrics b {
  color: var(--brand);
}
.borrow-shelf-loans {
  display: grid;
  gap: 8px;
  padding: 12px;
  border: 1px solid var(--line);
  border-radius: 8px;
  background: var(--panel-soft);
}
.borrow-shelf-loans > strong {
  font-size: 15px;
}
.borrow-shelf-loans button {
  display: grid;
  grid-template-columns: minmax(0, 1fr) minmax(0, .8fr) minmax(0, 1fr);
  gap: 8px;
  text-align: left;
  align-items: center;
  padding: 10px;
  border: 1px solid var(--line);
  border-radius: 8px;
  background: #fff;
  color: var(--ink);
  box-shadow: none;
}
.borrow-shelf-loans button.overdue {
  border-color: #f0b5a8;
  background: #fff7f5;
}
.borrow-shelf-loans button.due_soon,
.borrow-shelf-loans button.followup_due {
  border-color: #ecd39a;
  background: #fffaf0;
}
.borrow-report-card {
  display: grid;
  gap: 12px;
  border: 1px solid #cde3f2;
  border-radius: 8px;
  padding: 16px;
  background: var(--blue-soft);
}
.borrow-report-card.overdue,
.borrow-report-card.followup {
  border-color: #ecd39a;
  background: var(--gold-soft);
}
.borrow-funnel,
.borrow-report-grid {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 8px;
}
.borrow-funnel span,
.borrow-mini {
  border: 1px solid rgba(36, 91, 131, .16);
  border-radius: 7px;
  padding: 10px;
  background: rgba(255, 255, 255, .72);
}
.borrow-funnel em,
.borrow-mini span {
  display: block;
  color: var(--muted);
  font-size: 12px;
  font-style: normal;
  line-height: 1.5;
}
.borrow-funnel strong,
.borrow-mini strong {
  display: block;
  color: var(--ink);
  font-size: 18px;
  margin-top: 4px;
}
.borrow-report-grid {
  grid-template-columns: repeat(2, minmax(0, 1fr));
}
.borrow-report-grid > div {
  display: grid;
  gap: 8px;
  align-content: start;
}
.borrow-report-grid h4 {
  margin: 0;
  font-size: 15px;
}
.borrow-mini {
  text-align: left;
  color: var(--ink);
  box-shadow: none;
}
.borrow-mini.overdue { border-color: #f0b5a8; background: #fff7f5; }
.borrow-mini.followup_due,
.borrow-mini.due_soon { border-color: #ecd39a; background: #fffaf0; }
.borrow-mini.candidate { border-color: #b9d9cf; background: var(--green-soft); }
.meeting-report {
  margin: -4px 0 16px;
}
.meeting-command-center {
  display: grid;
  gap: 12px;
  margin: 0 0 16px;
  padding: 16px;
  border: 1px solid #bfd7ef;
  border-radius: 8px;
  background: #f8fbff;
}
.meeting-command-head,
.meeting-command-provider,
.meeting-command-current {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  gap: 14px;
  align-items: start;
}
.meeting-command-head strong {
  display: block;
  margin-top: 8px;
  font-size: 22px;
}
.meeting-command-head p,
.meeting-command-lane p {
  margin: 6px 0 0;
  color: var(--muted);
  line-height: 1.6;
}
.meeting-command-score {
  min-width: 136px;
  padding: 12px;
  text-align: center;
  border: 1px solid rgba(36, 91, 131, .14);
  border-radius: 8px;
  background: #fff;
}
.meeting-command-score span,
.meeting-command-score em {
  display: block;
  color: var(--muted);
  font-size: 12px;
  font-style: normal;
}
.meeting-command-score strong {
  display: block;
  margin: 4px 0;
  color: var(--blue);
  font-size: 30px;
}
.meeting-command-provider,
.meeting-command-current {
  align-items: center;
  padding: 12px;
  border: 1px solid rgba(36, 91, 131, .14);
  border-radius: 8px;
  background: rgba(255, 255, 255, .78);
}
.meeting-command-provider strong,
.meeting-command-current strong,
.meeting-command-provider span,
.meeting-command-current span {
  display: block;
}
.meeting-command-provider span,
.meeting-command-current span {
  margin-top: 4px;
  color: var(--muted);
  line-height: 1.55;
}
.meeting-command-metrics {
  display: grid;
  grid-template-columns: repeat(8, minmax(0, 1fr));
  gap: 8px;
}
.meeting-command-metrics span {
  padding: 9px;
  border: 1px solid rgba(36, 91, 131, .14);
  border-radius: 7px;
  background: rgba(255, 255, 255, .78);
  color: var(--muted);
  font-size: 12px;
}
.meeting-command-metrics strong {
  display: block;
  margin-top: 2px;
  color: var(--ink);
  font-size: 18px;
}
.meeting-command-lanes {
  display: grid;
  grid-template-columns: repeat(7, minmax(0, 1fr));
  gap: 8px;
}
.meeting-command-lane {
  display: grid;
  gap: 8px;
  padding: 11px;
  border: 1px solid rgba(36, 91, 131, .14);
  border-radius: 8px;
  background: rgba(255, 255, 255, .78);
}
.meeting-command-lane.ready {
  border-color: #bbdfca;
  background: #f4fbf6;
}
.meeting-command-lane.gap,
.meeting-command-lane.urgent {
  border-color: #f0b5a8;
  background: #fff8f5;
}
.meeting-command-lane > div:first-child {
  display: flex;
  justify-content: space-between;
  gap: 8px;
}
.meeting-command-lane > div:first-child em {
  color: var(--blue);
  font-style: normal;
  font-weight: 900;
}
.meeting-command-lane > span {
  color: var(--muted);
  font-size: 12px;
}
.meeting-command-checks {
  display: grid;
  gap: 6px;
}
.meeting-command-checks button,
.meeting-command-bottom button {
  display: grid;
  gap: 4px;
  padding: 8px;
  text-align: left;
  color: var(--ink);
  border: 1px solid var(--line);
  border-radius: 7px;
  background: #fff;
  box-shadow: none;
}
.meeting-command-checks button.ok {
  border-color: #bbdfca;
  background: #f4fbf6;
}
.meeting-command-checks button.gap {
  border-color: #f0b5a8;
  background: #fff7f5;
}
.meeting-command-checks em,
.meeting-command-bottom span,
.meeting-command-bottom em {
  color: var(--muted);
  font-size: 12px;
  font-style: normal;
  line-height: 1.45;
}
.meeting-command-bottom {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 10px;
}
.meeting-command-bottom > div {
  display: grid;
  gap: 7px;
  padding: 12px;
  border: 1px solid rgba(36, 91, 131, .14);
  border-radius: 8px;
  background: rgba(255, 255, 255, .78);
}
.meeting-command-bottom > div > strong {
  color: var(--brand);
}
.meeting-adapter-package {
  display: grid;
  gap: 10px;
  padding: 12px;
  border: 1px solid rgba(36, 91, 131, .14);
  border-radius: 8px;
  background: rgba(255, 255, 255, .78);
}
.meeting-adapter-head {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  gap: 10px;
  align-items: start;
}
.meeting-adapter-head strong {
  color: var(--blue);
  font-size: 14px;
}
.meeting-adapter-head p {
  margin: 5px 0 0;
  color: var(--muted);
  font-size: 12px;
  line-height: 1.55;
}
.meeting-adapter-head em {
  padding: 6px 8px;
  border-radius: 6px;
  background: #eaf2f8;
  color: var(--blue);
  font-size: 12px;
  font-style: normal;
  font-weight: 900;
}
.meeting-adapter-files,
.meeting-adapter-grid {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 8px;
}
.meeting-adapter-files > div,
.meeting-adapter-grid > div {
  display: grid;
  gap: 7px;
  padding: 10px;
  border: 1px solid var(--line);
  border-radius: 8px;
  background: #fff;
}
.meeting-adapter-files > div.ok {
  border-color: #bbdfca;
  background: #f4fbf6;
}
.meeting-adapter-files > div.gap {
  border-color: #f0b5a8;
  background: #fff7f5;
}
.meeting-adapter-files strong,
.meeting-adapter-grid strong {
  color: var(--ink);
  font-size: 13px;
}
.meeting-adapter-files code {
  padding: 6px;
  border-radius: 6px;
  background: #eef3f7;
  color: #31485c;
  font-size: 11px;
  line-height: 1.45;
  overflow-wrap: anywhere;
}
.meeting-adapter-files p,
.meeting-adapter-files span,
.meeting-adapter-grid span,
.meeting-adapter-grid b,
.meeting-adapter-grid em {
  margin: 0;
  color: var(--muted);
  font-size: 12px;
  font-style: normal;
  line-height: 1.45;
}
.meeting-adapter-grid span {
  display: grid;
  gap: 2px;
  padding: 7px;
  border: 1px solid var(--line);
  border-radius: 7px;
  background: var(--panel-soft);
}
.meeting-adapter-grid em {
  color: var(--blue);
  font-weight: 800;
}
.meeting-pipeline {
  display: grid;
  gap: 12px;
  margin: 0 0 16px;
  padding: 16px;
  border: 1px solid rgba(143, 36, 28, .16);
  border-radius: 8px;
  background: #fbfcf8;
}
.meeting-pipeline-head,
.meeting-pipeline-next {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  gap: 14px;
  align-items: start;
}
.meeting-pipeline-head strong {
  display: block;
  margin-top: 8px;
  font-size: 22px;
}
.meeting-pipeline-head p,
.meeting-pipeline-next p {
  margin: 6px 0 0;
  color: var(--muted);
  line-height: 1.65;
}
.meeting-pipeline-score {
  min-width: 140px;
  padding: 12px;
  text-align: center;
  border: 1px solid rgba(143, 36, 28, .14);
  border-radius: 8px;
  background: #fff;
}
.meeting-pipeline-score span,
.meeting-pipeline-score em,
.meeting-pipeline-next span {
  display: block;
  color: var(--muted);
  font-size: 12px;
  font-style: normal;
}
.meeting-pipeline-score strong {
  display: block;
  margin: 4px 0;
  color: var(--brand);
  font-size: 30px;
}
.meeting-pipeline-next {
  align-items: center;
  padding: 13px;
  border: 1px solid #ecd39a;
  border-radius: 8px;
  background: #fffaf0;
}
.meeting-pipeline-next strong {
  display: block;
  margin-top: 5px;
  font-size: 18px;
}
.meeting-pipeline-stages {
  display: grid;
  grid-template-columns: repeat(7, minmax(0, 1fr));
  gap: 8px;
}
.meeting-pipeline-stages button {
  display: grid;
  gap: 6px;
  padding: 10px;
  text-align: left;
  color: var(--ink);
  border: 1px solid var(--line);
  border-radius: 8px;
  background: #fff;
  box-shadow: none;
}
.meeting-pipeline-stages button.ready {
  border-color: #bbdfca;
  background: #f4fbf6;
}
.meeting-pipeline-stages button.gap {
  border-color: #f0b5a8;
  background: #fff7f5;
}
.meeting-pipeline-stages span,
.meeting-pipeline-stages em,
.meeting-pipeline-leaks span,
.meeting-pipeline-leaks em {
  color: var(--muted);
  font-size: 12px;
  font-style: normal;
  line-height: 1.45;
}
.meeting-pipeline-stages strong,
.meeting-pipeline-leaks strong {
  font-size: 14px;
}
.meeting-pipeline-stages i {
  height: 7px;
  border-radius: 99px;
  background: #edf1f4;
  overflow: hidden;
}
.meeting-pipeline-stages b {
  display: block;
  height: 100%;
  border-radius: inherit;
  background: var(--green);
}
.meeting-pipeline-grid {
  display: grid;
  grid-template-columns: minmax(0, 1.25fr) minmax(280px, .75fr);
  gap: 10px;
}
.meeting-pipeline-leaks,
.meeting-pipeline-protocol {
  display: grid;
  gap: 8px;
  align-content: start;
  padding: 12px;
  border: 1px solid rgba(36, 91, 131, .12);
  border-radius: 8px;
  background: #fff;
}
.meeting-pipeline-leaks > strong,
.meeting-pipeline-protocol > strong {
  color: var(--brand);
  font-size: 13px;
}
.meeting-pipeline-leaks button {
  display: grid;
  gap: 4px;
  padding: 9px;
  text-align: left;
  color: var(--ink);
  border: 1px solid #f0b5a8;
  border-radius: 7px;
  background: #fff7f5;
  box-shadow: none;
}
.meeting-pipeline-protocol span {
  padding: 8px;
  border: 1px solid var(--line);
  border-radius: 7px;
  background: var(--panel-soft);
  color: var(--ink);
  font-size: 13px;
}
.meeting-pipeline-protocol p {
  margin: 0;
  color: var(--muted);
  line-height: 1.6;
  font-size: 13px;
}
.meeting-action-center {
  margin-bottom: 16px;
}
.meeting-action-panel {
  display: grid;
  gap: 12px;
  padding: 16px;
  border: 1px solid #ecd39a;
  border-radius: 8px;
  background: var(--gold-soft);
}
.meeting-action-head {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  gap: 16px;
  align-items: start;
}
.meeting-action-head strong {
  display: block;
  margin: 8px 0;
  font-size: 18px;
}
.meeting-action-head p {
  margin: 0;
  color: var(--muted);
  line-height: 1.7;
}
.meeting-action-head button:disabled {
  opacity: .55;
  cursor: default;
}
.meeting-action-metrics {
  display: grid;
  grid-template-columns: repeat(6, minmax(0, 1fr));
  gap: 8px;
}
.meeting-action-metrics span {
  padding: 10px;
  border: 1px solid rgba(143, 36, 28, .14);
  border-radius: 7px;
  background: rgba(255, 255, 255, .72);
}
.meeting-action-metrics em {
  display: block;
  color: var(--muted);
  font-size: 12px;
  font-style: normal;
}
.meeting-action-metrics strong {
  display: block;
  color: var(--ink);
  font-size: 20px;
}
.meeting-action-list {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 10px;
}
.meeting-action-card {
  display: grid;
  gap: 6px;
  min-height: 146px;
  padding: 12px;
  text-align: left;
  color: var(--ink);
  border: 1px solid var(--line);
  border-radius: 8px;
  background: #fff;
  box-shadow: none;
}
.meeting-action-card span {
  color: var(--brand);
  font-size: 12px;
  font-weight: 750;
}
.meeting-action-card strong {
  font-size: 15px;
  line-height: 1.35;
}
.meeting-action-card em,
.meeting-action-card small {
  color: var(--muted);
  font-size: 12px;
  font-style: normal;
  line-height: 1.55;
}
.meeting-action-card.finish,
.meeting-action-card.reminder,
.meeting-action-card.start {
  border-color: #ecd39a;
  background: #fffaf0;
}
.meeting-action-card.sync {
  border-color: #cde3f2;
  background: var(--blue-soft);
}
.meeting-action-card.fill_members,
.meeting-action-card.commitment {
  border-color: #bbdfca;
  background: var(--green-soft);
}
.meeting-operation-plan {
  margin-bottom: 16px;
}
.meeting-operation-card {
  display: grid;
  gap: 12px;
  padding: 16px;
  border: 1px solid #bbdfca;
  border-radius: 8px;
  background: var(--green-soft);
}
.meeting-operation-card.gap {
  border-color: #ecd39a;
  background: var(--gold-soft);
}
.meeting-operation-head {
  display: grid;
  grid-template-columns: minmax(0, 1fr) 110px auto;
  gap: 14px;
  align-items: start;
}
.meeting-operation-head strong {
  display: block;
  margin: 8px 0;
  font-size: 18px;
}
.meeting-operation-head p,
.meeting-operation-next span,
.meeting-operation-section p {
  margin: 0;
  color: var(--muted);
  line-height: 1.6;
}
.meeting-operation-score {
  display: grid;
  gap: 2px;
  justify-items: end;
}
.meeting-operation-score span {
  color: var(--muted);
  font-size: 12px;
}
.meeting-operation-score strong {
  margin: 0;
  color: var(--brand);
  font-size: 26px;
}
.meeting-operation-next {
  display: grid;
  gap: 4px;
  padding: 10px 12px;
  border: 1px solid rgba(46, 125, 90, .18);
  border-radius: 7px;
  background: rgba(255, 255, 255, .72);
}
.meeting-operation-sections {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 10px;
}
.meeting-operation-section {
  display: grid;
  gap: 8px;
  padding: 12px;
  border: 1px solid rgba(46, 125, 90, .14);
  border-radius: 8px;
  background: rgba(255, 255, 255, .72);
}
.meeting-operation-section > div:first-child {
  display: flex;
  justify-content: space-between;
  gap: 8px;
}
.meeting-operation-section > div:first-child span {
  color: var(--brand);
  font-weight: 750;
}
.meeting-operation-checks {
  display: grid;
  gap: 7px;
}
.meeting-operation-check {
  display: grid;
  gap: 4px;
  padding: 9px;
  text-align: left;
  color: var(--ink);
  border: 1px solid var(--line);
  border-radius: 7px;
  background: #fff;
  box-shadow: none;
}
.meeting-operation-check span {
  color: var(--muted);
  font-size: 12px;
}
.meeting-operation-check strong {
  font-size: 14px;
}
.meeting-operation-check em {
  color: var(--muted);
  font-size: 12px;
  font-style: normal;
  line-height: 1.45;
}
.meeting-operation-check.ok {
  border-color: #bbdfca;
  background: #f6fbf8;
}
.meeting-operation-check.gap {
  border-color: #ecd39a;
  background: #fffaf0;
}
.meeting-review {
  margin-bottom: 16px;
}
.meeting-review-card {
  display: grid;
  gap: 12px;
  padding: 16px;
  border: 1px solid #bbdfca;
  border-radius: 8px;
  background: var(--green-soft);
}
.meeting-review-card.gap,
.meeting-review-card.watch {
  border-color: #ecd39a;
  background: var(--gold-soft);
}
.meeting-review-head {
  display: grid;
  grid-template-columns: minmax(0, 1fr) 120px auto;
  gap: 14px;
  align-items: start;
}
.meeting-review-head strong {
  display: block;
  margin: 8px 0;
  font-size: 18px;
}
.meeting-review-head p {
  margin: 0;
  color: var(--muted);
  line-height: 1.65;
}
.meeting-review-score {
  display: grid;
  gap: 2px;
  justify-items: end;
}
.meeting-review-score span {
  color: var(--muted);
  font-size: 12px;
}
.meeting-review-score strong {
  color: var(--brand);
  font-size: 26px;
}
.meeting-review-metrics,
.meeting-review-minutes,
.meeting-review-grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 10px;
}
.meeting-review-metrics span,
.meeting-review-minutes div,
.meeting-review-grid > div {
  padding: 12px;
  border: 1px solid rgba(46, 125, 90, .14);
  border-radius: 8px;
  background: rgba(255, 255, 255, .72);
}
.meeting-review-metrics em,
.meeting-review-minutes span,
.meeting-review-grid span,
.meeting-review-grid em {
  color: var(--muted);
  font-size: 12px;
  font-style: normal;
  line-height: 1.5;
}
.meeting-review-metrics strong,
.meeting-review-minutes strong,
.meeting-review-grid > div > strong {
  display: block;
  margin-bottom: 6px;
}
.meeting-review-grid button {
  display: grid;
  gap: 4px;
  width: 100%;
  margin-top: 7px;
  padding: 9px;
  text-align: left;
  color: var(--ink);
  border: 1px solid var(--line);
  border-radius: 7px;
  background: #fff;
  box-shadow: none;
}
.meeting-report-card {
  display: grid;
  gap: 12px;
  border: 1px solid #cde3f2;
  border-radius: 8px;
  padding: 16px;
  background: var(--blue-soft);
}
.meeting-report-card.reminder,
.meeting-report-card.overdue,
.meeting-report-card.sync,
.meeting-report-card.members {
  border-color: #ecd39a;
  background: var(--gold-soft);
}
.meeting-funnel,
.meeting-priority-list {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 8px;
}
.meeting-funnel span,
.meeting-mini {
  border: 1px solid rgba(36, 91, 131, .16);
  border-radius: 7px;
  padding: 10px;
  background: rgba(255, 255, 255, .72);
}
.meeting-funnel em,
.meeting-mini span {
  display: block;
  color: var(--muted);
  font-size: 12px;
  font-style: normal;
  line-height: 1.5;
}
.meeting-funnel strong,
.meeting-mini strong {
  display: block;
  color: var(--ink);
  font-size: 18px;
  margin-top: 4px;
}
.meeting-priority-list {
  grid-template-columns: repeat(2, minmax(0, 1fr));
}
.meeting-mini {
  color: var(--ink);
  text-align: left;
  box-shadow: none;
}
.meeting-mini.overdue,
.meeting-mini.reminder_due,
.meeting-mini.due_soon { border-color: #ecd39a; background: #fffaf0; }
.compact-list {
  display: grid;
  gap: 8px;
}
.compact-row {
  display: grid;
  grid-template-columns: minmax(0, 1.2fr) minmax(0, .7fr) minmax(0, 1fr);
  gap: 8px;
  align-items: start;
  border: 1px solid var(--line);
  border-radius: 7px;
  padding: 10px;
  background: var(--panel-soft);
}
.compact-row strong,
.compact-row span,
.compact-row em {
  min-width: 0;
  overflow-wrap: anywhere;
}
.compact-row span,
.compact-row em {
  color: var(--muted);
  font-style: normal;
}
.team-qr-wrap {
  display: grid;
  grid-template-columns: 156px minmax(0, 1fr);
  gap: 14px;
  align-items: center;
  margin-top: 14px;
  padding: 14px;
  border: 1px solid var(--line);
  border-radius: 8px;
  background: var(--panel-soft);
}
.team-qr {
  width: 156px;
  height: 156px;
  border: 1px solid var(--line);
  border-radius: 8px;
  background: #fff;
}
.qr-meta {
  display: grid;
  gap: 8px;
  color: var(--muted);
  line-height: 1.6;
}
.qr-meta strong {
  color: var(--ink);
  font-size: 16px;
}
.qr-meta a {
  color: var(--brand);
  font-weight: 750;
}
.team-report {
  display: grid;
  gap: 12px;
  margin: 14px 0;
}
.team-board {
  display: grid;
  gap: 12px;
  margin-bottom: 14px;
}
.team-command-package {
  display: grid;
  gap: 12px;
  margin: 14px 0;
  padding: 16px;
  border: 1px solid #d6bd7a;
  border-radius: 8px;
  background: #fffaf0;
}
.team-command-head,
.team-command-current {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  gap: 12px;
  align-items: start;
}
.team-command-head strong,
.team-command-current strong {
  display: block;
  margin-top: 8px;
  color: var(--ink);
  font-size: 22px;
}
.team-command-head p,
.team-command-current p,
.team-command-grid p {
  margin: 6px 0 0;
  color: var(--muted);
  line-height: 1.6;
}
.team-command-score {
  min-width: 140px;
  padding: 12px;
  text-align: center;
  border: 1px solid rgba(143, 105, 34, .18);
  border-radius: 8px;
  background: #fff;
}
.team-command-score span,
.team-command-score em,
.team-command-current span,
.team-command-current em {
  display: block;
  color: var(--muted);
  font-size: 12px;
  line-height: 1.5;
  font-style: normal;
}
.team-command-score strong {
  display: block;
  color: #8f241c;
  font-size: 36px;
}
.team-command-metrics,
.team-command-grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 10px;
}
.team-command-metrics span,
.team-command-grid > div {
  padding: 12px;
  border: 1px solid rgba(143, 105, 34, .16);
  border-radius: 8px;
  background: #fff;
}
.team-command-metrics strong,
.team-command-grid > div > strong {
  display: block;
  margin-top: 4px;
  color: var(--ink);
  font-size: 20px;
}
.team-command-grid span,
.team-command-grid button {
  display: block;
  width: 100%;
  margin-top: 8px;
  padding: 10px;
  text-align: left;
  border: 1px solid #eadbb4;
  border-radius: 8px;
  background: #fffdf8;
}
.team-command-grid em,
.team-command-grid b {
  display: block;
  color: var(--muted);
  font-size: 12px;
  line-height: 1.5;
  font-style: normal;
}
.team-replication-center {
  display: grid;
  gap: 12px;
  margin: 14px 0;
  padding: 16px;
  border: 1px solid #bddfc9;
  border-radius: 8px;
  background: #f5fbf6;
}
.team-rep-head,
.team-rep-current {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  gap: 12px;
  align-items: start;
}
.team-rep-head strong,
.team-rep-current strong {
  display: block;
  margin-top: 8px;
  color: var(--ink);
  font-size: 22px;
}
.team-rep-head p,
.team-rep-current p,
.team-rep-grid p,
.team-rep-levels p {
  margin: 6px 0 0;
  color: var(--muted);
  line-height: 1.6;
}
.team-rep-score {
  min-width: 130px;
  padding: 12px;
  text-align: center;
  border: 1px solid rgba(39, 120, 75, .18);
  border-radius: 8px;
  background: #fff;
}
.team-rep-score span,
.team-rep-score em,
.team-rep-current span,
.team-rep-current em {
  display: block;
  color: var(--muted);
  font-size: 12px;
  line-height: 1.5;
  font-style: normal;
}
.team-rep-score strong {
  display: block;
  color: #1f7a4a;
  font-size: 36px;
}
.team-rep-metrics,
.team-rep-levels,
.team-rep-grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 10px;
}
.team-rep-metrics span,
.team-rep-levels > div,
.team-rep-grid > div {
  padding: 12px;
  border: 1px solid rgba(39, 120, 75, .16);
  border-radius: 8px;
  background: #fff;
}
.team-rep-metrics strong,
.team-rep-grid > div > strong {
  display: block;
  margin-top: 4px;
  color: var(--ink);
  font-size: 20px;
}
.team-rep-levels > div > div {
  display: flex;
  justify-content: space-between;
  gap: 10px;
}
.team-rep-levels i {
  display: block;
  height: 7px;
  margin-top: 10px;
  overflow: hidden;
  border-radius: 999px;
  background: #e7efe9;
}
.team-rep-levels b {
  display: block;
  height: 100%;
  background: #1f7a4a;
}
.team-rep-grid span,
.team-rep-grid button {
  display: block;
  width: 100%;
  margin-top: 8px;
  padding: 10px;
  text-align: left;
  border: 1px solid #cde8d5;
  border-radius: 8px;
  background: #fbfffc;
}
.team-rep-grid em {
  display: block;
  color: var(--muted);
  font-size: 12px;
  line-height: 1.5;
  font-style: normal;
}
.team-behavior-hub {
  display: grid;
  gap: 12px;
  margin: 14px 0;
  padding: 16px;
  border: 1px solid #bfd7ef;
  border-radius: 8px;
  background: #f8fbff;
}
.team-hub-head,
.team-hub-invite {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto auto;
  gap: 12px;
  align-items: start;
}
.team-hub-head strong {
  display: block;
  margin-top: 8px;
  font-size: 22px;
}
.team-hub-head p,
.team-hub-lane p {
  margin: 6px 0 0;
  color: var(--muted);
  line-height: 1.6;
}
.team-hub-score {
  min-width: 138px;
  padding: 12px;
  text-align: center;
  border: 1px solid rgba(36, 91, 131, .14);
  border-radius: 8px;
  background: #fff;
}
.team-hub-score span,
.team-hub-score em {
  display: block;
  color: var(--muted);
  font-size: 12px;
  font-style: normal;
}
.team-hub-score strong {
  display: block;
  margin: 4px 0;
  color: var(--blue);
  font-size: 30px;
}
.team-hub-invite {
  align-items: center;
  padding: 12px;
  border: 1px solid rgba(36, 91, 131, .14);
  border-radius: 8px;
  background: rgba(255, 255, 255, .78);
}
.team-hub-invite strong,
.team-hub-invite span {
  display: block;
}
.team-hub-invite span {
  margin-top: 4px;
  color: var(--muted);
  word-break: break-all;
}
.team-hub-metrics {
  display: grid;
  grid-template-columns: repeat(8, minmax(0, 1fr));
  gap: 8px;
}
.team-hub-metrics span {
  padding: 9px;
  border: 1px solid rgba(36, 91, 131, .14);
  border-radius: 7px;
  background: rgba(255, 255, 255, .78);
  color: var(--muted);
  font-size: 12px;
}
.team-hub-metrics strong {
  display: block;
  margin-top: 2px;
  color: var(--ink);
  font-size: 18px;
}
.team-hub-lanes {
  display: grid;
  grid-template-columns: repeat(5, minmax(0, 1fr));
  gap: 9px;
}
.team-hub-lane {
  display: grid;
  gap: 9px;
  padding: 12px;
  border: 1px solid rgba(36, 91, 131, .14);
  border-radius: 8px;
  background: rgba(255, 255, 255, .78);
}
.team-hub-lane.ready {
  border-color: #bbdfca;
  background: #f4fbf6;
}
.team-hub-lane.gap {
  border-color: #f0b5a8;
  background: #fff8f5;
}
.team-hub-lane-head {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  gap: 8px;
}
.team-hub-lane-head em {
  color: var(--blue);
  font-style: normal;
  font-weight: 900;
}
.team-hub-lane-metrics {
  display: flex;
  flex-wrap: wrap;
  gap: 7px;
}
.team-hub-lane-metrics span {
  padding: 6px 8px;
  border: 1px solid var(--line);
  border-radius: 999px;
  background: #fff;
  color: var(--muted);
  font-size: 12px;
}
.team-hub-lane-metrics b {
  margin-left: 4px;
  color: var(--ink);
}
.team-hub-checks {
  display: grid;
  gap: 7px;
}
.team-hub-checks button,
.team-hub-bottom button {
  display: grid;
  gap: 4px;
  padding: 9px;
  text-align: left;
  color: var(--ink);
  border: 1px solid var(--line);
  border-radius: 7px;
  background: #fff;
  box-shadow: none;
}
.team-hub-checks button.ok {
  border-color: #bbdfca;
  background: #f4fbf6;
}
.team-hub-checks button.gap {
  border-color: #f0b5a8;
  background: #fff7f5;
}
.team-hub-checks span,
.team-hub-checks em,
.team-hub-bottom span,
.team-hub-bottom em,
.team-hub-bottom b {
  color: var(--muted);
  font-size: 12px;
  font-style: normal;
  line-height: 1.45;
}
.team-hub-bottom {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 10px;
}
.team-hub-bottom > div {
  display: grid;
  gap: 7px;
  padding: 12px;
  border: 1px solid rgba(36, 91, 131, .14);
  border-radius: 8px;
  background: rgba(255, 255, 255, .78);
}
.team-hub-bottom > div > strong {
  color: var(--brand);
}
.team-hub-bottom span {
  display: grid;
  gap: 3px;
}
.team-hub-next {
  padding: 10px 12px;
  border: 1px solid rgba(36, 91, 131, .14);
  border-radius: 7px;
  background: rgba(255, 255, 255, .78);
  color: var(--blue);
  line-height: 1.6;
}
.team-coaching-deck {
  display: grid;
  gap: 12px;
  margin: 14px 0;
  padding: 16px;
  border: 1px solid rgba(143, 36, 28, .16);
  border-radius: 8px;
  background: #fbfcf8;
}
.team-coach-head,
.team-coach-current {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  gap: 14px;
  align-items: start;
}
.team-coach-head strong {
  display: block;
  margin-top: 8px;
  font-size: 22px;
}
.team-coach-head p,
.team-coach-current p,
.team-coach-ai p,
.team-coach-cohorts p {
  margin: 6px 0 0;
  color: var(--muted);
  line-height: 1.6;
}
.team-coach-score {
  min-width: 142px;
  padding: 12px;
  text-align: center;
  border: 1px solid rgba(143, 36, 28, .14);
  border-radius: 8px;
  background: #fff;
}
.team-coach-score span,
.team-coach-score em,
.team-coach-current span,
.team-coach-current em {
  display: block;
  color: var(--muted);
  font-size: 12px;
  font-style: normal;
}
.team-coach-score strong {
  display: block;
  margin: 4px 0;
  color: var(--brand);
  font-size: 30px;
}
.team-coach-current {
  align-items: center;
  padding: 13px;
  border: 1px solid #ecd39a;
  border-radius: 8px;
  background: #fffaf0;
}
.team-coach-current strong {
  display: block;
  margin: 5px 0;
  font-size: 18px;
}
.team-coach-metrics {
  display: grid;
  grid-template-columns: repeat(5, minmax(0, 1fr));
  gap: 8px;
}
.team-coach-metrics span {
  display: grid;
  justify-items: center;
  gap: 4px;
  padding: 9px;
  border: 1px solid rgba(143, 36, 28, .12);
  border-radius: 8px;
  background: #fff;
  color: var(--muted);
  font-size: 12px;
}
.team-coach-metrics strong {
  color: var(--ink);
  font-size: 18px;
}
.team-coach-grid {
  display: grid;
  grid-template-columns: minmax(0, 1.25fr) minmax(280px, .75fr);
  gap: 10px;
}
.team-coach-missions {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 9px;
}
.team-coach-missions button,
.team-coach-cohorts button {
  display: grid;
  gap: 5px;
  padding: 11px;
  text-align: left;
  color: var(--ink);
  border: 1px solid var(--line);
  border-radius: 8px;
  background: #fff;
  box-shadow: none;
}
.team-coach-missions button.bind,
.team-coach-missions button.wake {
  border-color: #f0b5a8;
  background: #fff7f5;
}
.team-coach-missions button.copy,
.team-coach-missions button.meeting {
  border-color: #bbdfca;
  background: #f4fbf6;
}
.team-coach-missions span,
.team-coach-missions em,
.team-coach-cohorts em,
.team-cadence em {
  color: var(--muted);
  font-size: 12px;
  font-style: normal;
  line-height: 1.45;
}
.team-coach-missions strong,
.team-coach-cohorts strong {
  font-size: 14px;
}
.team-coach-missions p {
  margin: 0;
  color: var(--muted);
  line-height: 1.55;
  font-size: 13px;
}
.team-coach-side,
.team-coach-playbook,
.team-coach-ai {
  display: grid;
  gap: 8px;
  align-content: start;
}
.team-coach-playbook,
.team-coach-ai {
  padding: 12px;
  border: 1px solid rgba(36, 91, 131, .12);
  border-radius: 8px;
  background: #fff;
}
.team-coach-playbook > strong,
.team-coach-ai > strong {
  color: var(--brand);
  font-size: 13px;
}
.team-coach-playbook span {
  padding: 7px 8px;
  border: 1px solid var(--line);
  border-radius: 7px;
  color: var(--ink);
  background: var(--panel-soft);
  font-size: 13px;
}
.team-coach-cohorts {
  display: grid;
  grid-template-columns: repeat(6, minmax(0, 1fr));
  gap: 8px;
}
.team-coach-cohorts > div {
  display: grid;
  align-content: start;
  gap: 7px;
  padding: 10px;
  border: 1px solid var(--line);
  border-radius: 8px;
  background: #fff;
}
.team-coach-cohorts h3 {
  margin: 0;
  font-size: 14px;
}
.team-coach-cohorts h3 span {
  color: var(--brand);
}
.team-copy-path,
.team-cadence {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 8px;
}
.team-copy-path div,
.team-cadence span {
  display: grid;
  gap: 5px;
  padding: 10px;
  border: 1px solid var(--line);
  border-radius: 8px;
  background: #fff;
}
.team-copy-path span,
.team-cadence strong {
  color: var(--muted);
  font-size: 12px;
}
.team-copy-path strong {
  font-size: 16px;
}
.team-copy-path i {
  height: 7px;
  border-radius: 99px;
  background: #edf1f4;
  overflow: hidden;
}
.team-copy-path b {
  display: block;
  height: 100%;
  border-radius: inherit;
  background: var(--green);
}
.team-cadence span.ok {
  border-color: #bbdfca;
  background: #f4fbf6;
}
.team-cadence span.gap {
  border-color: #f0b5a8;
  background: #fff7f5;
}
.team-operation-loop {
  display: grid;
  gap: 12px;
  margin: 14px 0;
  padding: 16px;
  border: 1px solid #ecd39a;
  border-radius: 8px;
  background: #fffaf0;
}
.team-loop-head {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  gap: 14px;
  align-items: start;
}
.team-loop-head strong {
  display: block;
  margin-top: 8px;
  font-size: 20px;
}
.team-loop-head p,
.team-loop-stage p {
  margin: 6px 0 0;
  color: var(--muted);
  line-height: 1.65;
}
.team-loop-metrics {
  display: grid;
  grid-template-columns: repeat(8, minmax(0, 1fr));
  gap: 8px;
}
.team-loop-metrics span {
  padding: 9px;
  border: 1px solid rgba(143, 36, 28, .14);
  border-radius: 7px;
  background: rgba(255, 255, 255, .72);
  color: var(--muted);
  font-size: 12px;
}
.team-loop-metrics strong {
  display: block;
  margin-top: 2px;
  color: var(--ink);
  font-size: 18px;
}
.team-loop-stages {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 10px;
}
.team-loop-stage {
  display: grid;
  gap: 8px;
  padding: 12px;
  border: 1px solid rgba(143, 36, 28, .14);
  border-radius: 8px;
  background: rgba(255, 255, 255, .72);
}
.team-loop-stage > div:first-child {
  display: flex;
  justify-content: space-between;
  gap: 8px;
}
.team-loop-stage > div:first-child span {
  color: var(--brand);
  font-weight: 800;
}
.team-loop-checks {
  display: grid;
  gap: 7px;
}
.team-loop-checks button {
  display: grid;
  gap: 4px;
  padding: 9px;
  text-align: left;
  color: var(--ink);
  border: 1px solid var(--line);
  border-radius: 7px;
  background: #fff;
  box-shadow: none;
}
.team-loop-checks button.ok {
  border-color: #bbdfca;
  background: #f4fbf6;
}
.team-loop-checks button.gap {
  border-color: #f0b5a8;
  background: #fff7f5;
}
.team-loop-checks span,
.team-loop-checks em {
  color: var(--muted);
  font-size: 12px;
  font-style: normal;
  line-height: 1.45;
}
.team-loop-checks strong {
  font-size: 13px;
}
.team-loop-next {
  padding: 10px 12px;
  border: 1px solid rgba(143, 36, 28, .14);
  border-radius: 7px;
  background: rgba(255, 255, 255, .72);
  color: #6c4a17;
  line-height: 1.6;
}
.team-action-center {
  display: grid;
  gap: 12px;
  margin: 14px 0;
  padding: 16px;
  border: 1px solid #cde3f2;
  border-radius: 8px;
  background: #f8fbff;
}
.team-action-head {
  display: grid;
  grid-template-columns: minmax(0, 1fr) 110px;
  gap: 14px;
  align-items: center;
}
.team-action-head strong {
  display: block;
  margin-top: 8px;
  font-size: 20px;
}
.team-action-head p {
  margin: 6px 0 0;
  color: var(--muted);
  line-height: 1.65;
}
.health-score.compact {
  padding: 10px;
}
.health-score.compact strong {
  font-size: 28px;
}
.team-action-metrics {
  display: grid;
  grid-template-columns: repeat(5, minmax(0, 1fr));
  gap: 8px;
}
.team-action-metrics span {
  border: 1px solid rgba(36, 91, 131, .16);
  border-radius: 7px;
  padding: 10px;
  background: rgba(255, 255, 255, .72);
  color: var(--muted);
  font-size: 13px;
}
.team-action-metrics strong {
  display: block;
  color: var(--ink);
  font-size: 18px;
}
.team-action-list {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 10px;
}
.team-action-card {
  display: grid;
  gap: 6px;
  text-align: left;
  min-height: 148px;
  border: 1px solid var(--line);
  border-radius: 8px;
  padding: 12px;
  color: var(--ink);
  background: #fff;
  box-shadow: none;
}
.team-action-card.bind,
.team-action-card.wake {
  border-color: #f1c4bd;
  background: #fff8f6;
}
.team-action-card.duplicate {
  border-color: #d9bd7b;
  background: #fffaf0;
}
.team-action-card.meeting {
  border-color: #bbdfca;
  background: #f4fbf6;
}
.team-action-card span,
.team-action-card em {
  color: var(--muted);
  font-size: 12px;
  font-style: normal;
}
.team-action-card strong {
  font-size: 15px;
}
.team-action-card p {
  margin: 0;
  color: var(--muted);
  font-size: 13px;
  line-height: 1.55;
}
.team-member-profile {
  display: grid;
  gap: 12px;
  margin: 14px 0;
  padding: 16px;
  border: 1px solid #bbdfca;
  border-radius: 8px;
  background: #f4fbf6;
}
.team-profile-head {
  display: grid;
  grid-template-columns: minmax(0, 1fr) 120px;
  gap: 14px;
  align-items: start;
}
.team-profile-head strong {
  display: block;
  margin-top: 8px;
  font-size: 20px;
}
.team-profile-head p {
  margin: 7px 0 0;
  color: var(--muted);
  line-height: 1.65;
}
.team-profile-score {
  display: grid;
  gap: 3px;
  justify-items: center;
  padding: 10px;
  border: 1px solid rgba(80, 136, 121, .18);
  border-radius: 8px;
  background: rgba(255, 255, 255, .78);
}
.team-profile-score span,
.team-profile-score em {
  color: var(--muted);
  font-size: 12px;
  font-style: normal;
  text-align: center;
}
.team-profile-score strong {
  margin: 0;
  color: var(--green);
  font-size: 30px;
}
.team-profile-evidence {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 8px;
}
.team-profile-evidence span {
  display: grid;
  gap: 4px;
  padding: 10px;
  border: 1px solid var(--line);
  border-radius: 8px;
  background: #fff;
}
.team-profile-evidence span.ok {
  border-color: #bbdfca;
}
.team-profile-evidence span.gap {
  border-color: #f0b5a8;
  background: #fff7f5;
}
.team-profile-evidence strong {
  font-size: 13px;
}
.team-profile-evidence em {
  color: var(--muted);
  font-size: 12px;
  font-style: normal;
  line-height: 1.45;
}
.team-profile-next {
  padding: 11px 12px;
  border: 1px solid #ecd39a;
  border-radius: 8px;
  background: #fffaf0;
}
.team-profile-next strong {
  display: block;
  margin-bottom: 4px;
}
.team-profile-next p {
  margin: 0;
  color: #6c4a17;
  line-height: 1.6;
}
.team-profile-events {
  display: grid;
  gap: 7px;
}
.team-profile-events > strong {
  font-size: 14px;
}
.team-profile-events span {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  gap: 8px;
  padding: 8px 10px;
  border: 1px solid var(--line);
  border-radius: 7px;
  background: rgba(255, 255, 255, .76);
}
.team-profile-events em,
.team-profile-events b {
  color: var(--muted);
  font-size: 12px;
  font-style: normal;
  font-weight: 500;
}
.team-board-head {
  padding: 16px;
  border: 1px solid #bbdfca;
  border-radius: 8px;
  background: var(--green-soft);
}
.team-board-head strong {
  display: block;
  margin: 8px 0;
  font-size: 18px;
}
.team-board-head p {
  margin: 0;
  color: var(--muted);
  line-height: 1.7;
}
.team-board-grid {
  display: grid;
  grid-template-columns: repeat(5, minmax(0, 1fr));
  gap: 10px;
}
.team-board-column {
  display: grid;
  align-content: start;
  gap: 10px;
  min-width: 0;
  padding: 12px;
  border: 1px solid var(--line);
  border-radius: 8px;
  background: var(--panel-soft);
}
.team-board-column h3 {
  margin: 0;
  font-size: 15px;
}
.team-board-column h3 span {
  color: var(--brand);
}
.team-board-column p {
  margin: 0;
  color: var(--muted);
  font-size: 12px;
  line-height: 1.55;
}
.team-board-list {
  display: grid;
  gap: 8px;
}
.team-board-card {
  display: grid;
  gap: 5px;
  padding: 10px;
  border: 1px solid var(--line);
  border-radius: 8px;
  background: #fff;
}
.team-board-card strong {
  font-size: 14px;
}
.team-board-card span,
.team-board-card em {
  color: var(--muted);
  font-size: 12px;
  font-style: normal;
}
.team-report-card {
  border: 1px solid var(--line);
  border-radius: 8px;
  background: var(--panel);
  padding: 16px;
}
.team-report-card.main {
  display: grid;
  grid-template-columns: minmax(0, 1fr) 120px;
  gap: 16px;
  align-items: center;
  background: #f8fbff;
}
.team-report-card h3 {
  margin: 4px 0 8px;
}
.team-report-card p {
  margin: 0 0 10px;
  color: var(--muted);
  line-height: 1.7;
}
.health-score {
  display: grid;
  justify-items: center;
  gap: 6px;
  padding: 14px;
  border: 1px solid var(--line);
  border-radius: 8px;
  background: #fff;
}
.health-score span,
.team-funnel span {
  color: var(--muted);
  font-size: 12px;
}
.health-score strong {
  font-size: 34px;
  color: var(--brand);
}
.team-funnel {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 10px;
}
.team-funnel div {
  display: grid;
  gap: 4px;
  padding: 12px;
  border: 1px solid var(--line);
  border-radius: 8px;
  background: var(--panel-soft);
}
.team-funnel strong {
  font-size: 22px;
  color: var(--ink);
}
.team-priority-list {
  display: grid;
  gap: 8px;
}

.ai-box { display: grid; gap: 12px; }
.ai-box textarea { min-height: 150px; }
.answer,
.history { margin-top: 14px; white-space: pre-wrap; line-height: 1.75; }
.history { color: var(--muted); max-height: 320px; overflow: auto; }
.answer-context {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
  margin-bottom: 12px;
  white-space: normal;
}
.answer-context span {
  padding: 6px 8px;
  border-radius: 6px;
  background: var(--blue-soft);
  color: var(--blue);
  font-size: 12px;
}
.coach-evidence-list {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 8px;
  margin: 0 0 12px;
  white-space: normal;
}
.coach-evidence-list span {
  display: grid;
  gap: 4px;
  padding: 9px;
  border: 1px solid var(--line);
  border-radius: 7px;
  background: #fff;
}
.coach-evidence-list span.active {
  border-color: #bbdfca;
  background: #f4fbf6;
}
.coach-evidence-list span.gap {
  border-color: #ecd39a;
  background: #fffaf0;
}
.coach-evidence-list strong {
  color: var(--ink);
  font-size: 13px;
}
.coach-evidence-list em {
  color: var(--muted);
  font-size: 12px;
  font-style: normal;
  line-height: 1.45;
}
.coach-signal-grid {
  display: grid;
  grid-template-columns: repeat(6, minmax(0, 1fr));
  gap: 8px;
  margin: 0 0 14px;
  white-space: normal;
}
.coach-signal-grid span {
  padding: 9px;
  border: 1px solid var(--line);
  border-radius: 7px;
  background: var(--panel-soft);
}
.coach-signal-grid em {
  display: block;
  color: var(--muted);
  font-size: 12px;
  font-style: normal;
}
.coach-signal-grid strong {
  display: block;
  color: var(--ink);
  font-size: 18px;
  margin-top: 2px;
}
.coach-runtime-card,
.coach-memory-card {
  display: grid;
  gap: 7px;
  margin: 0 0 14px;
  padding: 12px;
  border: 1px solid rgba(36, 91, 131, .14);
  border-radius: 8px;
  background: #f7fbfe;
  white-space: normal;
}
.coach-memory-card {
  grid-template-columns: minmax(0, 1fr) minmax(220px, .8fr);
  align-items: start;
  margin-top: 14px;
  background: #fbfcf8;
}
.coach-runtime-card span,
.coach-memory-card span {
  color: var(--blue);
  font-size: 12px;
  font-weight: 800;
}
.coach-runtime-card strong,
.coach-memory-card strong {
  color: var(--ink);
  font-size: 15px;
}
.coach-runtime-card em,
.coach-memory-card p {
  margin: 0;
  color: var(--muted);
  font-size: 13px;
  font-style: normal;
  line-height: 1.55;
}
.coach-execution-card {
  display: grid;
  grid-template-columns: minmax(0, 1fr) minmax(220px, .7fr) auto;
  gap: 12px;
  align-items: start;
  margin-top: 14px;
  padding: 13px;
  border: 1px solid #ecd39a;
  border-radius: 8px;
  background: #fffaf0;
  white-space: normal;
}
.coach-execution-card span {
  color: var(--brand);
  font-size: 12px;
  font-weight: 800;
}
.coach-execution-card strong {
  display: block;
  margin-top: 4px;
  color: var(--ink);
  font-size: 16px;
}
.coach-execution-card p,
.coach-execution-card em {
  display: block;
  margin: 5px 0 0;
  color: var(--muted);
  font-size: 13px;
  font-style: normal;
  line-height: 1.55;
}
.coach-required-records {
  display: flex;
  flex-wrap: wrap;
  gap: 7px;
}
.coach-required-records span {
  padding: 6px 8px;
  border: 1px solid rgba(143, 36, 28, .14);
  border-radius: 6px;
  background: rgba(255, 255, 255, .72);
  color: var(--ink);
  font-size: 12px;
  font-weight: 650;
}
.coach-actions {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 10px;
  margin-top: 16px;
  white-space: normal;
}
.coach-action {
  display: grid;
  gap: 6px;
  text-align: left;
  padding: 12px;
  border: 1px solid #bbdfca;
  border-radius: 8px;
  background: #f4fbf6;
  color: var(--ink);
  box-shadow: none;
}
.coach-action strong {
  font-size: 14px;
}
.coach-action span {
  color: var(--muted);
  line-height: 1.55;
  font-size: 13px;
}

.table-list { margin-top: 14px; display: grid; gap: 0; }
.row {
  display: grid;
  grid-template-columns: 1.15fr .8fr 1fr 2fr;
  gap: 12px;
  border-bottom: 1px solid var(--line);
  padding: 12px 0;
  align-items: start;
  min-width: 0;
}
.row:last-child { border-bottom: 0; }
.row strong { color: var(--ink); }
.row span { color: var(--muted); overflow-wrap: anywhere; }
.invite-panel { display: grid; gap: 12px; }
.invite-line {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto auto;
  gap: 10px;
  align-items: center;
}
.team-row {
  grid-template-columns: 1fr .9fr 1fr 1.25fr 1.3fr;
  align-items: center;
  width: 100%;
  color: var(--ink);
  text-align: left;
  background: transparent;
  box-shadow: none;
}
.team-row.selected {
  border-color: #bbdfca;
  border-radius: 8px;
  background: #f4fbf6;
  padding-left: 10px;
  padding-right: 10px;
}
.borrow-followup-panel { display: grid; gap: 12px; }
.borrow-row {
  grid-template-columns: 1fr .9fr 1.35fr 1fr auto 1.4fr;
  align-items: center;
}
.borrow-row.overdue {
  background: #fff1ee;
  border-radius: 8px;
  padding-left: 10px;
  padding-right: 10px;
}
.borrow-row.due_soon,
.borrow-row.followup_due {
  background: #fff7e8;
  border-radius: 8px;
  padding-left: 10px;
  padding-right: 10px;
}

.products {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 14px;
}
.membership-overview {
  display: grid;
  gap: 14px;
  margin-bottom: 14px;
}
.membership-card {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  gap: 16px;
  align-items: center;
  border: 1px solid #cde3f2;
  border-radius: 8px;
  padding: 18px;
  background: var(--blue-soft);
}
.membership-card h3 {
  margin: 10px 0 6px;
  font-size: 22px;
  letter-spacing: 0;
}
.membership-card p {
  margin: 0;
  color: var(--muted);
  line-height: 1.7;
}
.order-claim-panel {
  border-color: #cde3f2;
  background: linear-gradient(180deg, #ffffff 0, #f7fbfd 100%);
}
.order-claim-head {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  gap: 16px;
  align-items: center;
}
.order-claim-head h3 {
  margin: 10px 0 6px;
  font-size: 20px;
}
.order-claim-head p {
  margin: 0;
  color: var(--muted);
  line-height: 1.7;
}
.order-claim-form {
  display: grid;
  grid-template-columns: minmax(260px, 420px) minmax(0, 1fr);
  gap: 14px;
  margin-top: 14px;
  align-items: start;
}
.order-claim-platforms {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
}
.order-claim-platforms span {
  display: grid;
  gap: 2px;
  min-width: 112px;
  padding: 9px 10px;
  border: 1px solid var(--line);
  border-radius: 8px;
  background: #fff;
}
.order-claim-platforms span.active {
  border-color: #bbdfca;
  background: var(--green-soft);
}
.order-claim-platforms strong {
  font-size: 13px;
  color: var(--ink);
}
.order-claim-platforms em {
  color: var(--muted);
  font-style: normal;
  font-size: 12px;
}
.order-claim-result {
  margin-top: 12px;
  padding: 10px 12px;
  border-radius: 8px;
  background: var(--panel-soft);
  color: var(--muted);
  line-height: 1.65;
  font-size: 13px;
}
.shop-guide {
  display: grid;
  gap: 12px;
  margin-bottom: 14px;
}
.shop-guide-card {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  gap: 16px;
  align-items: center;
  border: 1px solid #bbdfca;
  border-radius: 8px;
  padding: 18px;
  background: var(--green-soft);
}
.shop-guide-card h3 {
  margin: 10px 0 6px;
  font-size: 21px;
}
.shop-guide-card p {
  margin: 0;
  color: var(--muted);
  line-height: 1.7;
}
.shop-missing {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
}
.shop-missing span {
  padding: 8px 10px;
  border: 1px solid var(--line);
  border-radius: 8px;
  background: var(--panel);
  color: var(--muted);
  font-size: 13px;
}
.shop-missing span.missing {
  border-color: #f0d6c8;
  background: #fff8f2;
  color: #8f241c;
}
.shop-missing span.owned {
  border-color: #bbdfca;
  background: #f0fdf4;
  color: #22715e;
}
.commerce-operation-loop {
  display: grid;
  gap: 12px;
  margin-bottom: 14px;
  padding: 18px;
  border: 1px solid #ecd39a;
  border-radius: 8px;
  background: #fffaf0;
}
.commerce-loop-head {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  gap: 16px;
  align-items: start;
}
.commerce-loop-head h3 {
  margin: 10px 0 6px;
  font-size: 21px;
}
.commerce-loop-head p,
.commerce-loop-stage p {
  margin: 0;
  color: var(--muted);
  line-height: 1.65;
}
.commerce-loop-metrics {
  display: grid;
  grid-template-columns: repeat(8, minmax(0, 1fr));
  gap: 8px;
}
.commerce-loop-metrics span {
  padding: 9px;
  border: 1px solid rgba(143, 36, 28, .14);
  border-radius: 7px;
  background: rgba(255, 255, 255, .72);
  color: var(--muted);
  font-size: 12px;
}
.commerce-loop-metrics strong {
  display: block;
  margin-top: 2px;
  color: var(--ink);
  font-size: 18px;
}
.commerce-loop-stages {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 10px;
}
.commerce-loop-stage {
  display: grid;
  gap: 8px;
  padding: 12px;
  border: 1px solid rgba(143, 36, 28, .14);
  border-radius: 8px;
  background: rgba(255, 255, 255, .72);
}
.commerce-loop-stage > div:first-child {
  display: flex;
  justify-content: space-between;
  gap: 8px;
}
.commerce-loop-stage > div:first-child span {
  color: var(--brand);
  font-weight: 800;
}
.commerce-loop-checks {
  display: grid;
  gap: 7px;
}
.commerce-loop-checks button {
  display: grid;
  gap: 4px;
  padding: 9px;
  text-align: left;
  color: var(--ink);
  border: 1px solid var(--line);
  border-radius: 7px;
  background: #fff;
  box-shadow: none;
}
.commerce-loop-checks button.ok {
  border-color: #bbdfca;
  background: #f4fbf6;
}
.commerce-loop-checks button.gap {
  border-color: #f0b5a8;
  background: #fff7f5;
}
.commerce-loop-checks span,
.commerce-loop-checks em {
  color: var(--muted);
  font-size: 12px;
  font-style: normal;
  line-height: 1.45;
}
.commerce-loop-checks strong {
  font-size: 13px;
}
.commerce-loop-next {
  padding: 10px 12px;
  border: 1px solid rgba(143, 36, 28, .14);
  border-radius: 7px;
  background: rgba(255, 255, 255, .72);
  color: #6c4a17;
  line-height: 1.6;
}
.commerce-sync-hub {
  display: grid;
  gap: 12px;
  margin-bottom: 14px;
  padding: 18px;
  border: 1px solid #bddfca;
  border-radius: 8px;
  background: #f6fbf7;
}
.commerce-sync-head,
.commerce-sync-next {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  gap: 16px;
  align-items: start;
}
.commerce-sync-head h3 {
  margin: 10px 0 6px;
  font-size: 21px;
}
.commerce-sync-head p {
  margin: 0;
  color: var(--muted);
  line-height: 1.7;
}
.commerce-sync-score {
  min-width: 122px;
  padding: 12px;
  border: 1px solid #bbdfca;
  border-radius: 8px;
  background: #fff;
  text-align: right;
}
.commerce-sync-score strong {
  display: block;
  color: #22715e;
  font-size: 28px;
}
.commerce-sync-score span {
  color: var(--muted);
  font-size: 12px;
}
.commerce-sync-score.gap strong {
  color: var(--brand);
}
.commerce-sync-next {
  padding: 12px;
  border: 1px solid #bbdfca;
  border-radius: 8px;
  background: rgba(255, 255, 255, .72);
  align-items: center;
}
.commerce-sync-next strong,
.commerce-sync-next span {
  display: block;
}
.commerce-sync-next span {
  margin-top: 4px;
  color: var(--muted);
  line-height: 1.6;
}
.commerce-sync-metrics {
  display: grid;
  grid-template-columns: repeat(5, minmax(0, 1fr));
  gap: 8px;
}
.commerce-sync-metrics span {
  padding: 9px;
  border: 1px solid rgba(34, 113, 94, .18);
  border-radius: 7px;
  background: rgba(255, 255, 255, .78);
  color: var(--muted);
  font-size: 12px;
}
.commerce-sync-metrics strong {
  display: block;
  margin-top: 2px;
  color: var(--ink);
  font-size: 18px;
}
.commerce-sync-streams {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 10px;
}
.commerce-sync-stream {
  display: grid;
  gap: 10px;
  padding: 12px;
  border: 1px solid rgba(34, 113, 94, .16);
  border-radius: 8px;
  background: rgba(255, 255, 255, .78);
}
.commerce-sync-stream.gap {
  border-color: #f0b5a8;
  background: #fff8f5;
}
.commerce-sync-stream-head {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  gap: 10px;
}
.commerce-sync-stream-head p {
  margin: 4px 0 0;
  color: var(--muted);
  line-height: 1.55;
}
.commerce-sync-stream-head em {
  color: #22715e;
  font-style: normal;
  font-weight: 900;
}
.commerce-sync-stream-metrics {
  display: flex;
  flex-wrap: wrap;
  gap: 7px;
}
.commerce-sync-stream-metrics span {
  padding: 6px 8px;
  border: 1px solid var(--line);
  border-radius: 999px;
  background: #fff;
  color: var(--muted);
  font-size: 12px;
}
.commerce-sync-stream-metrics b {
  margin-left: 4px;
  color: var(--ink);
}
.commerce-sync-checks {
  display: grid;
  gap: 7px;
}
.commerce-sync-checks button {
  display: grid;
  gap: 4px;
  padding: 9px;
  text-align: left;
  color: var(--ink);
  border: 1px solid var(--line);
  border-radius: 7px;
  background: #fff;
  box-shadow: none;
}
.commerce-sync-checks button.ok {
  border-color: #bbdfca;
  background: #f4fbf6;
}
.commerce-sync-checks button.gap {
  border-color: #f0b5a8;
  background: #fff7f5;
}
.commerce-sync-checks span,
.commerce-sync-checks em {
  color: var(--muted);
  font-size: 12px;
  font-style: normal;
  line-height: 1.45;
}
.commerce-sync-latest,
.commerce-sync-playbook {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 10px;
}
.commerce-sync-latest > div,
.commerce-sync-playbook > div {
  display: grid;
  gap: 7px;
  padding: 12px;
  border: 1px solid rgba(34, 113, 94, .16);
  border-radius: 8px;
  background: rgba(255, 255, 255, .78);
}
.commerce-sync-latest span,
.commerce-sync-playbook span {
  display: block;
  color: var(--muted);
  line-height: 1.55;
}
.commerce-sync-playbook em {
  display: block;
  color: var(--muted);
  font-style: normal;
  font-size: 12px;
  line-height: 1.45;
}
.commerce-implementation-console {
  display: grid;
  gap: 12px;
  margin-bottom: 14px;
  padding: 18px;
  border: 1px solid rgba(36, 91, 131, .18);
  border-radius: 8px;
  background: #f8fbff;
}
.commerce-impl-head,
.commerce-impl-next {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  gap: 16px;
  align-items: start;
}
.commerce-impl-head h3 {
  margin: 10px 0 6px;
  font-size: 21px;
}
.commerce-impl-head p,
.commerce-impl-next span {
  margin: 0;
  color: var(--muted);
  line-height: 1.7;
}
.commerce-impl-score {
  min-width: 124px;
  padding: 12px;
  text-align: right;
  border: 1px solid #cde3f2;
  border-radius: 8px;
  background: #fff;
}
.commerce-impl-score strong {
  display: block;
  color: var(--blue);
  font-size: 28px;
}
.commerce-impl-score span {
  color: var(--muted);
  font-size: 12px;
}
.commerce-impl-next {
  align-items: center;
  padding: 12px;
  border: 1px solid #cde3f2;
  border-radius: 8px;
  background: rgba(255, 255, 255, .76);
}
.commerce-impl-sources,
.commerce-impl-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 10px;
}
.commerce-impl-sources > div,
.commerce-impl-panel,
.commerce-impl-bottom > div {
  display: grid;
  gap: 8px;
  min-width: 0;
  padding: 12px;
  border: 1px solid var(--line);
  border-radius: 8px;
  background: #fff;
}
.commerce-impl-sources span,
.commerce-impl-panel > strong,
.commerce-impl-bottom > div > strong {
  color: var(--blue);
  font-size: 13px;
  font-weight: 800;
}
.commerce-impl-sources code,
.commerce-impl-panel pre,
.commerce-impl-code code {
  display: block;
  padding: 9px;
  border-radius: 7px;
  background: #eef3f7;
  color: #31485c;
  font-size: 12px;
  line-height: 1.5;
  white-space: pre-wrap;
  overflow-wrap: anywhere;
}
.commerce-impl-sources p,
.commerce-impl-sources em,
.commerce-impl-endpoint em,
.commerce-impl-endpoint small,
.commerce-impl-code em {
  margin: 0;
  color: var(--muted);
  font-size: 12px;
  font-style: normal;
  line-height: 1.5;
}
.commerce-impl-endpoint,
.commerce-impl-code {
  display: grid;
  gap: 5px;
  padding: 10px;
  border: 1px solid var(--line);
  border-radius: 7px;
  background: var(--panel-soft);
}
.commerce-impl-endpoint span,
.commerce-impl-code span,
.commerce-impl-chip {
  color: var(--blue);
  font-size: 12px;
  font-weight: 750;
  overflow-wrap: anywhere;
}
.commerce-impl-chip {
  display: block;
  padding: 7px 8px;
  border: 1px solid rgba(36, 91, 131, .16);
  border-radius: 7px;
  background: #f7fbfe;
}
.commerce-impl-bottom {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 10px;
}
.commerce-impl-bottom span {
  display: block;
  padding: 8px;
  border: 1px solid var(--line);
  border-radius: 7px;
  background: var(--panel-soft);
  color: var(--muted);
  font-size: 12px;
  line-height: 1.5;
}
.commerce-impl-bottom em {
  display: block;
  color: var(--ink);
  font-style: normal;
  font-weight: 750;
}
.commerce-dev-blueprint {
  display: grid;
  grid-template-columns: minmax(0, 1.1fr) minmax(320px, .9fr);
  gap: 10px;
}
.commerce-dev-section {
  display: grid;
  gap: 10px;
  min-width: 0;
  padding: 12px;
  border: 1px solid rgba(36, 91, 131, .14);
  border-radius: 8px;
  background: #fff;
}
.commerce-dev-section > strong {
  color: var(--blue);
  font-size: 13px;
}
.commerce-dev-source,
.commerce-dev-stage {
  display: grid;
  gap: 8px;
  padding: 10px;
  border: 1px solid var(--line);
  border-radius: 8px;
  background: var(--panel-soft);
}
.commerce-dev-source > div,
.commerce-dev-stage > div {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  gap: 8px;
  align-items: center;
}
.commerce-dev-source b,
.commerce-dev-stage b {
  font-size: 14px;
}
.commerce-dev-source > div > em,
.commerce-dev-stage > div > em {
  color: var(--blue);
  font-size: 13px;
  font-style: normal;
  font-weight: 900;
}
.commerce-dev-source p,
.commerce-dev-stage p {
  margin: 0;
  color: var(--muted);
  font-size: 12px;
  line-height: 1.55;
}
.commerce-dev-source span,
.commerce-dev-stage span {
  display: grid;
  gap: 4px;
  padding: 8px;
  border: 1px solid var(--line);
  border-radius: 7px;
  background: #fff;
}
.commerce-dev-source span.ok,
.commerce-dev-stage span.ok {
  border-color: #bbdfca;
  background: #f4fbf6;
}
.commerce-dev-source span.gap,
.commerce-dev-stage span.gap {
  border-color: #f0b5a8;
  background: #fff7f5;
}
.commerce-dev-source span em,
.commerce-dev-stage span em,
.commerce-dev-source small,
.commerce-dev-stage small {
  color: var(--muted);
  font-size: 12px;
  font-style: normal;
  line-height: 1.45;
}
.commerce-dev-source code {
  padding: 6px;
  border-radius: 6px;
  background: #eef3f7;
  color: #31485c;
  font-size: 11px;
  line-height: 1.45;
  overflow-wrap: anywhere;
}
.commerce-adapter-package {
  display: grid;
  gap: 10px;
  padding: 12px;
  border: 1px solid rgba(36, 91, 131, .14);
  border-radius: 8px;
  background: #fff;
}
.commerce-adapter-head,
.commerce-adapter-bottom {
  display: grid;
  grid-template-columns: minmax(0, 1fr) minmax(260px, .45fr);
  gap: 10px;
  align-items: start;
}
.commerce-adapter-head strong,
.commerce-adapter-bottom strong {
  color: var(--blue);
  font-size: 13px;
}
.commerce-adapter-head p {
  margin: 4px 0 0;
  color: var(--muted);
  font-size: 12px;
  line-height: 1.55;
}
.commerce-adapter-head code,
.commerce-adapter-bottom code,
.commerce-adapter-file code {
  padding: 7px;
  border-radius: 6px;
  background: #eef3f7;
  color: #31485c;
  font-size: 11px;
  line-height: 1.45;
  overflow-wrap: anywhere;
}
.commerce-adapter-files {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 10px;
}
.commerce-adapter-file {
  display: grid;
  gap: 8px;
  padding: 10px;
  border: 1px solid var(--line);
  border-radius: 8px;
  background: var(--panel-soft);
}
.commerce-adapter-file.ok {
  border-color: #bbdfca;
  background: #f4fbf6;
}
.commerce-adapter-file.new {
  border-color: #c9d8e5;
}
.commerce-adapter-file > div {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  gap: 8px;
  align-items: center;
}
.commerce-adapter-file b {
  font-size: 14px;
}
.commerce-adapter-file em,
.commerce-adapter-file span {
  color: var(--blue);
  font-size: 12px;
  font-style: normal;
  font-weight: 800;
}
.commerce-adapter-file p,
.commerce-adapter-file small {
  margin: 0;
  color: var(--muted);
  font-size: 12px;
  line-height: 1.5;
}
.commerce-adapter-file pre {
  margin: 0;
  padding: 8px;
  border-radius: 6px;
  background: #102a43;
  color: #e6f2ff;
  font-size: 11px;
  line-height: 1.5;
  white-space: pre-wrap;
  overflow-wrap: anywhere;
}
.commerce-adapter-bottom > div {
  display: grid;
  gap: 8px;
}
.commerce-adapter-bottom span {
  padding: 8px;
  border: 1px solid var(--line);
  border-radius: 7px;
  background: var(--panel-soft);
  color: var(--muted);
  font-size: 12px;
  line-height: 1.45;
}
.commerce-integration {
  display: grid;
  gap: 12px;
  margin-bottom: 14px;
  padding: 18px;
  border: 1px solid #cde3f2;
  border-radius: 8px;
  background: #f8fbff;
}
.commerce-head {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  gap: 16px;
  align-items: start;
}
.commerce-head h3 {
  margin: 10px 0 6px;
  font-size: 21px;
}
.commerce-head p {
  margin: 0;
  color: var(--muted);
  line-height: 1.7;
}
.commerce-readiness {
  display: grid;
  gap: 12px;
  padding: 14px;
  border: 1px solid #cde3f2;
  border-radius: 8px;
  background: #fff;
}
.commerce-readiness.ready {
  border-color: #bbdfca;
  background: #f4fbf6;
}
.commerce-readiness.gap {
  border-color: #ecd39a;
  background: #fffaf0;
}
.commerce-readiness-head {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  gap: 12px;
  align-items: center;
}
.commerce-readiness-head span {
  color: var(--blue);
  font-size: 12px;
  font-weight: 800;
}
.commerce-readiness-head strong {
  display: block;
  margin: 4px 0;
  font-size: 28px;
}
.commerce-readiness-head p {
  margin: 0;
  color: var(--muted);
  line-height: 1.6;
}
.commerce-readiness-head em {
  padding: 8px 10px;
  border: 1px solid var(--line);
  border-radius: 7px;
  background: rgba(255, 255, 255, .8);
  color: var(--muted);
  font-style: normal;
  font-size: 13px;
}
.commerce-checks {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 8px;
}
.commerce-checks span {
  display: grid;
  gap: 4px;
  padding: 10px;
  border: 1px solid var(--line);
  border-radius: 8px;
  background: #fff;
}
.commerce-checks span.ok {
  border-color: #bbdfca;
  background: #f4fbf6;
}
.commerce-checks span.gap {
  border-color: #f0b5a8;
  background: #fff7f5;
}
.commerce-checks strong {
  font-size: 13px;
}
.commerce-checks em {
  color: var(--muted);
  font-size: 12px;
  font-style: normal;
  line-height: 1.45;
}
.commerce-latest {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 10px;
}
.commerce-latest div {
  display: grid;
  gap: 6px;
  padding: 10px;
  border: 1px solid var(--line);
  border-radius: 8px;
  background: #f8fafc;
}
.commerce-latest strong {
  font-size: 13px;
}
.commerce-latest span {
  color: var(--muted);
  font-size: 12px;
  overflow-wrap: anywhere;
}
.commerce-sources,
.commerce-contracts {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 10px;
}
.commerce-contracts {
  grid-template-columns: repeat(4, minmax(0, 1fr));
}
.commerce-source-card,
.commerce-contract {
  display: grid;
  gap: 7px;
  padding: 12px;
  border: 1px solid var(--line);
  border-radius: 8px;
  background: #fff;
  min-width: 0;
}
.commerce-source-card span,
.commerce-contract span {
  color: var(--blue);
  font-size: 12px;
  font-weight: 750;
  line-height: 1.45;
}
.commerce-source-card strong,
.commerce-contract strong {
  font-size: 16px;
  line-height: 1.35;
}
.commerce-source-card code {
  padding: 7px 8px;
  border-radius: 6px;
  background: #eef3f7;
  color: #31485c;
  font-size: 12px;
  white-space: normal;
  overflow-wrap: anywhere;
}
.commerce-source-card p,
.commerce-contract p {
  margin: 0;
  color: var(--muted);
  line-height: 1.55;
  font-size: 13px;
}
.commerce-source-card em,
.commerce-contract em {
  color: var(--soft);
  font-style: normal;
  font-size: 12px;
  line-height: 1.5;
}
.commerce-source-card small {
  color: var(--green);
  font-size: 12px;
  line-height: 1.45;
  overflow-wrap: anywhere;
}
.commerce-bottom {
  display: grid;
  grid-template-columns: minmax(0, 1.15fr) minmax(0, .85fr);
  gap: 10px;
}
.commerce-steps,
.commerce-products {
  display: grid;
  gap: 8px;
}
.commerce-steps span,
.commerce-products span {
  display: grid;
  gap: 4px;
  padding: 10px;
  border: 1px solid var(--line);
  border-radius: 8px;
  background: #fff;
}
.commerce-steps span.active {
  border-color: #bbdfca;
  background: #f4fbf6;
}
.commerce-steps span.planned {
  border-color: #d9bd7b;
  background: #fffaf0;
}
.commerce-steps strong,
.commerce-products strong {
  font-size: 14px;
}
.commerce-steps em,
.commerce-products em {
  color: var(--muted);
  font-style: normal;
  font-size: 12px;
  line-height: 1.5;
}
.commerce-next {
  padding: 11px 12px;
  border: 1px solid #d9bd7b;
  border-radius: 8px;
  background: #fffaf0;
  color: #6c4a17;
  line-height: 1.6;
}
.feature-matrix {
  display: grid;
  grid-template-columns: repeat(6, minmax(0, 1fr));
  gap: 10px;
}
.feature-cell {
  border: 1px solid var(--line);
  border-radius: 8px;
  padding: 13px;
  background: var(--panel);
  min-width: 0;
}
.feature-cell.active {
  border-color: #b9d9cf;
  background: var(--green-soft);
}
.feature-cell span {
  color: var(--muted);
  font-size: 12px;
}
.feature-cell.active span { color: #22715e; }
.feature-cell strong {
  display: block;
  margin: 5px 0;
  font-size: 16px;
}
.feature-cell p {
  margin: 0;
  color: var(--muted);
  font-size: 12px;
  line-height: 1.55;
}
.shop-subtitle {
  margin-top: 18px;
  margin-bottom: 10px;
}
.shop-category-tabs {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
  margin-bottom: 12px;
}
.shop-category-tabs button {
  min-height: 36px;
  padding: 8px 12px;
  border: 1px solid var(--line);
  border-radius: 7px;
  color: var(--ink);
  background: #fff;
  box-shadow: none;
}
.shop-category-tabs button.active {
  color: #fff;
  border-color: var(--brand);
  background: var(--brand);
}
.shop-category-tabs span {
  margin-left: 4px;
  opacity: .78;
}
.product {
  border: 1px solid var(--line);
  border-radius: 8px;
  padding: 16px;
  display: grid;
  gap: 10px;
  align-content: start;
  background: var(--panel-soft);
  min-width: 0;
}
.product.owned {
  border-color: #b9d9cf;
  background: #f7fcf9;
}
.product.recommended {
  border-color: #d9bd7b;
  background: #fffaf0;
}
.product.selected {
  box-shadow: 0 0 0 2px rgba(143, 36, 28, .14);
}
.product-top {
  display: flex;
  justify-content: space-between;
  gap: 10px;
  align-items: center;
}
.product-top span,
.product-top em {
  font-size: 12px;
  color: var(--muted);
  font-style: normal;
}
.product-top em {
  color: #22715e;
  font-weight: 750;
}
.product strong { font-size: 17px; line-height: 1.35; }
.product p { color: var(--muted); line-height: 1.65; min-height: 78px; margin: 0; }
.product-coverage {
  display: grid;
  gap: 4px;
  padding: 10px;
  border: 1px solid rgba(80, 136, 121, .18);
  border-radius: 7px;
  background: #fff;
}
.product-coverage span {
  color: var(--ink);
  font-size: 13px;
  font-weight: 750;
}
.product-coverage em {
  color: var(--muted);
  font-style: normal;
  font-size: 12px;
  line-height: 1.5;
}
.entitlement-tags {
  display: flex;
  flex-wrap: wrap;
  gap: 6px;
}
.entitlement-tags span {
  padding: 5px 7px;
  border: 1px solid #d7e8e1;
  border-radius: 6px;
  background: #f4fbf6;
  color: #2f6b5e;
  font-size: 12px;
}
.price { color: var(--brand); font-size: 22px; font-weight: 850; }
.product-actions {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 8px;
}
.product-actions button {
  min-width: 0;
  padding-left: 10px;
  padding-right: 10px;
}
.product-detail {
  margin-top: 14px;
  border: 1px solid #d9bd7b;
  border-radius: 8px;
  padding: 18px;
  background: #fffaf0;
  display: grid;
  gap: 14px;
}
.product-detail-head {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  gap: 14px;
  align-items: start;
}
.product-detail-head h3 {
  margin: 10px 0 6px;
  font-size: 22px;
}
.product-detail-head p {
  margin: 0;
  color: var(--muted);
  line-height: 1.7;
}
.detail-price {
  color: var(--brand);
  font-size: 28px;
  font-weight: 900;
}
.product-detail-grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 12px;
}
.product-detail-grid > div {
  border: 1px solid rgba(143, 36, 28, .12);
  border-radius: 8px;
  padding: 12px;
  background: #fff;
}
.product-detail-grid h4 {
  margin: 0 0 8px;
  font-size: 14px;
}
.product-detail-grid p {
  margin: 0 0 7px;
  color: var(--muted);
  line-height: 1.6;
  font-size: 13px;
}
.product-detail-grid p:last-child { margin-bottom: 0; }
.product-detail-actions {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto auto;
  gap: 12px;
  align-items: center;
  color: var(--muted);
}
.shop-cart {
  margin-top: 14px;
  border: 1px solid #d9bd7b;
  border-radius: 8px;
  padding: 16px;
  background: #fffdf7;
  display: grid;
  gap: 12px;
}
.shop-cart-head {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  gap: 14px;
  align-items: start;
}
.shop-cart-head h3 {
  margin: 8px 0 4px;
  font-size: 20px;
}
.shop-cart-head p {
  margin: 0;
  color: var(--muted);
  line-height: 1.65;
}
.shop-cart-total {
  text-align: right;
  display: grid;
  gap: 4px;
}
.shop-cart-total span {
  color: var(--muted);
  font-size: 12px;
}
.shop-cart-total strong {
  color: var(--brand);
  font-size: 24px;
}
.shop-cart-items {
  display: grid;
  gap: 8px;
}
.shop-cart-item {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto auto auto;
  gap: 10px;
  align-items: center;
  border: 1px solid rgba(143, 36, 28, .12);
  border-radius: 8px;
  padding: 10px;
  background: #fff;
}
.shop-cart-item strong {
  display: block;
  font-size: 14px;
}
.shop-cart-item span,
.shop-cart-item em {
  color: var(--muted);
  font-size: 12px;
  font-style: normal;
}
.shop-cart-item b {
  color: var(--ink);
  font-size: 14px;
}
.shop-cart-checkout {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  gap: 12px;
  align-items: center;
  border-top: 1px solid rgba(143, 36, 28, .12);
  padding-top: 12px;
}
.shop-cart-checkout strong {
  display: block;
  margin-bottom: 4px;
}
.shop-cart-checkout span {
  color: var(--muted);
  font-size: 13px;
}
.order-flow-list {
  display: grid;
  gap: 12px;
}
.order-flow-card {
  border: 1px solid var(--line);
  border-radius: 8px;
  padding: 14px;
  background: #fff;
  display: grid;
  gap: 12px;
}
.order-flow-card.ok {
  border-color: #bbdfca;
  background: #f7fcf9;
}
.order-flow-card.warn {
  border-color: #ead29a;
  background: #fffaf0;
}
.order-flow-card.bad {
  border-color: #f1c4bd;
  background: #fff8f6;
}
.order-flow-head {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  gap: 12px;
  align-items: start;
}
.order-flow-head span,
.order-flow-head em {
  display: block;
  color: var(--muted);
  font-size: 12px;
  font-style: normal;
}
.order-flow-head strong {
  display: block;
  margin: 5px 0;
  font-size: 16px;
}
.order-flow-head b {
  color: var(--brand);
  font-size: 14px;
}
.order-steps {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 8px;
}
.order-steps span {
  text-align: center;
  padding: 8px 6px;
  border: 1px solid var(--line);
  border-radius: 7px;
  color: var(--muted);
  background: var(--panel-soft);
  font-size: 12px;
}
.order-steps span.done {
  border-color: #bbdfca;
  color: #22715e;
  background: #f0fdf4;
}
.order-steps span.cancelled {
  border-color: #f1c4bd;
  color: #8f241c;
  background: #fff8f6;
}
.order-flow-body p {
  margin: 0 0 5px;
  color: var(--ink);
  line-height: 1.6;
}
.order-flow-body small {
  color: var(--muted);
}
.order-flow-actions {
  display: grid;
  grid-template-columns: auto minmax(0, 1fr);
  gap: 10px;
  align-items: center;
  color: var(--muted);
}

.admin-toolbar { margin-bottom: 14px; }
.admin-operations {
  display: grid;
  gap: 14px;
}
.ops-metrics-grid {
  display: grid;
  grid-template-columns: repeat(6, minmax(0, 1fr));
  gap: 10px;
}
.ops-metric {
  padding: 12px;
  border: 1px solid var(--line);
  border-radius: 8px;
  background: #fff;
}
.ops-metric span,
.ops-metric em {
  display: block;
  color: var(--muted);
  font-size: 12px;
  font-style: normal;
}
.ops-metric strong {
  display: block;
  margin: 4px 0;
  color: var(--ink);
  font-size: 24px;
  line-height: 1;
}
.ops-claim {
  border: 1px solid var(--line);
  border-radius: 8px;
  overflow: hidden;
  background: #fff;
}
.ops-claim.warn {
  border-color: #ead29a;
  background: #fffdf7;
}
.ops-claim.high {
  border-color: #f1c4bd;
  background: #fff8f6;
}
.ops-claim-head {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  gap: 12px;
  align-items: start;
  padding: 14px;
  border-bottom: 1px solid var(--line);
  background: var(--panel-soft);
}
.ops-claim-head span {
  display: block;
  color: var(--muted);
  font-size: 12px;
}
.ops-claim-head strong {
  display: block;
  margin: 3px 0;
  font-size: 18px;
}
.ops-claim-head p {
  margin: 0;
  color: var(--muted);
  line-height: 1.55;
}
.ops-claim-head button {
  min-width: 132px;
  white-space: nowrap;
}
.ops-claim-body {
  display: grid;
  grid-template-columns: 170px minmax(0, 1fr) minmax(220px, .72fr);
  gap: 12px;
  padding: 14px;
}
.ops-claim-score {
  display: grid;
  align-content: center;
  gap: 4px;
  min-height: 118px;
  padding: 12px;
  border: 1px solid var(--line);
  border-radius: 8px;
  background: #fff;
}
.ops-claim-score span,
.ops-claim-score em {
  color: var(--muted);
  font-size: 12px;
  font-style: normal;
}
.ops-claim-score strong {
  color: var(--brand);
  font-size: 34px;
  line-height: 1;
}
.ops-claim-checks {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 8px;
}
.ops-claim-checks span,
.ops-claim-providers span,
.ops-claim-recent span {
  min-width: 0;
  border: 1px solid var(--line);
  border-radius: 8px;
  padding: 10px;
  background: #fff;
}
.ops-claim-checks span.ok {
  border-color: #bbdfca;
  background: #f7fcf9;
}
.ops-claim-checks span.bad {
  border-color: #f1c4bd;
  background: #fff8f6;
}
.ops-claim-checks strong,
.ops-claim-providers strong,
.ops-claim-recent strong {
  display: block;
  font-size: 13px;
  line-height: 1.35;
}
.ops-claim-checks em,
.ops-claim-providers em,
.ops-claim-recent em {
  display: block;
  margin-top: 3px;
  color: var(--muted);
  font-size: 12px;
  font-style: normal;
  line-height: 1.4;
}
.ops-claim-providers {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 8px;
}
.ops-claim-providers span.active {
  border-color: #bbdfca;
  background: #f7fcf9;
}
.ops-claim-foot {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
  padding: 0 14px 14px;
}
.ops-claim-foot span {
  border: 1px solid var(--line);
  border-radius: 99px;
  padding: 6px 10px;
  color: var(--muted);
  background: #fff;
  font-size: 12px;
}
.ops-claim-foot strong {
  color: var(--ink);
}
.ops-claim-recent {
  display: grid;
  grid-template-columns: repeat(5, minmax(0, 1fr));
  gap: 8px;
  padding: 0 14px 14px;
}
.ops-dashboard-grid {
  display: grid;
  grid-template-columns: minmax(0, 1.35fr) minmax(320px, .65fr);
  gap: 12px;
}
.ops-health,
.ops-funnel {
  border: 1px solid var(--line);
  border-radius: 8px;
  background: #fff;
  overflow: hidden;
}
.ops-subhead {
  display: flex;
  justify-content: space-between;
  gap: 10px;
  padding: 12px 14px;
  border-bottom: 1px solid var(--line);
  background: var(--panel-soft);
}
.ops-subhead span {
  color: var(--muted);
  font-size: 12px;
}
.ops-health-grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 10px;
  padding: 12px;
}
.ops-health-card {
  display: grid;
  gap: 7px;
  min-height: 126px;
  padding: 12px;
  text-align: left;
  color: var(--ink);
  border: 1px solid var(--line);
  border-radius: 8px;
  background: var(--panel-soft);
  box-shadow: none;
}
.ops-health-card span {
  color: var(--muted);
  font-size: 12px;
}
.ops-health-card strong {
  color: var(--brand);
  font-size: 26px;
  line-height: 1;
}
.ops-health-card p {
  margin: 0;
  color: var(--muted);
  font-size: 12px;
  line-height: 1.45;
}
.ops-health-card.high {
  border-color: #f1c4bd;
  background: #fff8f6;
}
.ops-health-card.high strong { color: #bb3f2a; }
.ops-health-card.warn {
  border-color: #ead29a;
  background: #fffaf0;
}
.ops-health-card.warn strong { color: #936615; }
.ops-funnel-list {
  display: grid;
  gap: 11px;
  padding: 14px;
}
.ops-funnel-row {
  display: grid;
  grid-template-columns: 88px minmax(0, 1fr) 42px;
  gap: 10px;
  align-items: center;
}
.ops-funnel-row span {
  color: var(--muted);
  font-size: 12px;
}
.ops-funnel-row div {
  height: 9px;
  border-radius: 99px;
  background: #edf1f4;
  overflow: hidden;
}
.ops-funnel-row i {
  display: block;
  height: 100%;
  border-radius: inherit;
  background: #2f6b5e;
}
.ops-funnel-row strong {
  font-size: 13px;
  text-align: right;
}
.ops-risk-grid {
  display: grid;
  grid-template-columns: repeat(6, minmax(0, 1fr));
  gap: 10px;
}
.ops-risk-card {
  border: 1px solid var(--line);
  border-radius: 8px;
  padding: 12px;
  background: var(--panel-soft);
  min-width: 0;
  display: grid;
  gap: 8px;
}
.ops-risk-card div {
  display: grid;
  gap: 3px;
  min-width: 0;
}
.ops-risk-card span {
  color: var(--muted);
  font-size: 12px;
}
.ops-risk-card strong {
  font-size: 14px;
  line-height: 1.35;
}
.ops-risk-card b {
  font-size: 28px;
  line-height: 1;
  color: var(--brand);
}
.ops-risk-card p {
  margin: 0;
  color: var(--muted);
  font-size: 12px;
  line-height: 1.45;
}
.ops-risk-card.high {
  border-color: #f1c4bd;
  background: #fff8f6;
}
.ops-risk-card.high b { color: #bb3f2a; }
.ops-risk-card.warn {
  border-color: #ead29a;
  background: #fffaf0;
}
.ops-risk-card.warn b { color: #936615; }
.ops-priority {
  border: 1px solid var(--line);
  border-radius: 8px;
  overflow: hidden;
  background: #fff;
}
.ops-priority-head {
  display: flex;
  justify-content: space-between;
  gap: 10px;
  padding: 12px 14px;
  background: var(--panel-soft);
  border-bottom: 1px solid var(--line);
}
.ops-generated {
  color: var(--muted);
  font-size: 12px;
}
.ops-priority-list {
  display: grid;
}
.ops-priority-item {
  display: grid;
  grid-template-columns: 72px minmax(0, 1fr);
  gap: 12px;
  padding: 12px 14px;
  border-bottom: 1px solid var(--line);
}
.ops-priority-item:last-child { border-bottom: 0; }
.ops-priority-item > span {
  align-self: start;
  justify-self: start;
  border: 1px solid #dce7e3;
  border-radius: 6px;
  padding: 4px 7px;
  color: #2f6b5e;
  background: #f5fbf8;
  font-size: 12px;
  font-weight: 750;
}
.ops-priority-item strong {
  display: block;
  line-height: 1.4;
}
.ops-priority-item p {
  margin: 4px 0 3px;
  color: var(--muted);
  line-height: 1.5;
}
.ops-priority-item em {
  color: var(--muted);
  font-style: normal;
  font-size: 12px;
}
.admin-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 14px;
  margin-top: 14px;
  min-width: 0;
}
.admin-grid > .panel { min-width: 0; }
.pulse-target {
  outline: 2px solid rgba(143, 36, 28, .32);
  outline-offset: 4px;
}
.admin-table {
  overflow-x: auto;
  padding: 0;
  width: 100%;
  max-width: 100%;
}
.admin-table table {
  width: 100%;
  border-collapse: separate;
  border-spacing: 0;
  min-width: 720px;
}
.admin-table th,
.admin-table td {
  border-bottom: 1px solid var(--line);
  padding: 10px 11px;
  text-align: left;
  vertical-align: top;
  font-size: 13px;
  line-height: 1.55;
}
.admin-table th {
  color: var(--muted);
  background: var(--panel-soft);
  font-weight: 750;
  position: sticky;
  top: 0;
  z-index: 1;
}
.admin-table td { color: var(--ink); }
.admin-table tr:hover td { background: #fbfcfd; }
.admin-table .clip {
  max-width: 360px;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
}
.admin-table .empty {
  padding: 16px;
  color: var(--muted);
}
.admin-table button {
  padding: 7px 10px;
  min-height: 34px;
  border-radius: 6px;
  white-space: nowrap;
  font-size: 12px;
}
.muted { color: var(--muted); }

#toast {
  position: fixed;
  right: 24px;
  bottom: 24px;
  background: #18212b;
  color: white;
  padding: 12px 16px;
  border-radius: 8px;
  opacity: 0;
  transform: translateY(10px);
  transition: .2s;
  pointer-events: none;
  box-shadow: var(--shadow);
  z-index: 10;
}
#toast.show { opacity: 1; transform: translateY(0); }

@media (max-width: 1100px) {
  #app { grid-template-columns: 220px minmax(0, 1fr); }
  .sidebar { padding: 18px 12px; }
  .hero { grid-template-columns: 1fr; }
  .products { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .status-grid { grid-template-columns: repeat(3, minmax(0, 1fr)); }
}

@media (max-width: 900px) {
  #app { display: block; }
  .sidebar {
    position: static;
    height: auto;
    padding: 18px;
    display: block;
  }
  .brand { margin-bottom: 18px; }
  nav { grid-template-columns: repeat(auto-fit, minmax(92px, 1fr)); }
  nav button { text-align: center; min-height: 42px; padding: 9px 8px; }
  nav button.admin-only { margin-top: 0; }
  .account { margin-top: 18px; }
  .account .ghost { width: 100%; min-width: 0; }
  main { padding: 18px; }
  .page-map {
    position: static;
  }
  .auth-panel {
    min-height: 0;
    display: block;
  }
  .section-title { display: block; }
  .stats,
  .guided-start-hero,
  .guided-actions,
  .guided-route-strip,
  .dashboard-focus-grid,
  .dashboard-support-grid,
  .ops-risk-grid,
  .dispatch-landing,
  .autopilot-head,
  .autopilot-dispatch,
  .autopilot-grid,
  .autopilot-execution,
  .autopilot-signals,
  .autopilot-urgent,
  .newcomer-workbench-head,
  .newcomer-workbench-dispatch,
  .newcomer-workbench-dispatch-rules,
  .newcomer-workbench-current,
  .newcomer-workbench-gate,
  .newcomer-workbench-grid,
  .newcomer-workbench-queue,
  .newcomer-workbench-side,
  .newcomer-workbench-route,
  .onboarding-system-head,
  .onboarding-system-gates,
  .onboarding-system-grid,
  .action-flow-current,
  .action-flow-urgent,
  .action-flow-steps,
  .task-execution-head,
  .task-claimed-workflow,
  .task-execution-grid,
  .task-execution-actions,
  .admin-grid,
  .readiness-grid,
  .status-grid,
  .membership-card,
  .order-claim-head,
  .order-claim-form,
  .shop-guide-card,
  .commerce-loop-head,
  .commerce-loop-metrics,
  .commerce-loop-stages,
  .commerce-sync-head,
  .commerce-sync-next,
  .commerce-sync-metrics,
  .commerce-sync-streams,
  .commerce-sync-latest,
  .commerce-sync-playbook,
  .commerce-impl-head,
  .commerce-impl-next,
  .commerce-impl-sources,
  .commerce-impl-grid,
  .commerce-impl-bottom,
  .commerce-dev-blueprint,
  .commerce-adapter-head,
  .commerce-adapter-files,
  .commerce-adapter-bottom,
  .commerce-head,
  .commerce-sources,
  .commerce-contracts,
  .commerce-bottom,
  .product-detail-head,
  .product-detail-grid,
  .product-detail-actions,
  .order-flow-head,
  .order-steps,
  .order-flow-actions,
  .ops-metrics-grid,
  .ops-claim-head,
  .ops-claim-body,
  .ops-claim-checks,
  .ops-claim-providers,
  .ops-claim-recent,
  .ops-dashboard-grid,
  .ops-health-grid,
  .grid.two,
  .grid.three,
  .grid.four,
  .guide-signals,
  .task-roadmap,
  .exam-head,
  .exam-metrics,
  .exam-task-list,
  .feature-matrix,
  .report-head,
  .report-metrics,
  .bank-status-list,
  .learning-command-head,
  .learning-command-current,
  .learning-command-metrics,
  .learning-command-lanes,
  .learning-command-grid,
  .learning-system-head,
  .learning-system-modules,
  .learning-system-grid,
  .borrow-command-head,
  .borrow-command-current,
  .borrow-command-metrics,
  .borrow-command-lanes,
  .borrow-command-bottom,
  .borrow-system-head,
  .borrow-system-fields,
  .borrow-system-grid,
  .borrow-pipeline-head,
  .borrow-pipeline-next,
  .borrow-pipeline-stages,
  .borrow-pipeline-grid,
  .borrow-action-head,
  .borrow-action-metrics,
  .borrow-action-list,
  .borrow-funnel,
  .borrow-report-grid,
  .borrow-shelf-head,
  .borrow-shelf-metrics,
  .borrow-shelf-grid,
  .borrow-shelf-loans button,
  .borrow-board-grid,
  .meeting-pipeline-head,
  .meeting-pipeline-next,
  .meeting-pipeline-stages,
  .meeting-pipeline-grid,
  .meeting-command-head,
  .meeting-command-provider,
  .meeting-command-current,
  .meeting-command-metrics,
  .meeting-command-lanes,
  .meeting-command-bottom,
  .meeting-adapter-head,
  .meeting-adapter-files,
  .meeting-adapter-grid,
  .meeting-action-head,
  .meeting-operation-head,
  .meeting-action-metrics,
  .meeting-action-list,
  .meeting-operation-sections,
  .meeting-review-head,
  .meeting-review-metrics,
  .meeting-review-minutes,
  .meeting-review-grid,
  .meeting-funnel,
  .meeting-priority-list,
  .team-report-card.main,
  .team-command-head,
  .team-command-current,
  .team-command-metrics,
  .team-command-grid,
  .team-rep-head,
  .team-rep-current,
  .team-rep-metrics,
  .team-rep-levels,
  .team-rep-grid,
  .team-hub-head,
  .team-hub-invite,
  .team-hub-metrics,
  .team-hub-lanes,
  .team-hub-bottom,
  .team-loop-head,
  .team-loop-metrics,
  .team-loop-stages,
  .team-action-head,
  .team-coach-head,
  .team-coach-current,
  .team-coach-metrics,
  .team-coach-grid,
  .team-coach-missions,
  .team-coach-cohorts,
  .team-copy-path,
  .team-cadence,
  .team-action-metrics,
  .team-action-list,
  .team-funnel,
  .team-board-grid,
  .coach-evidence-list,
  .coach-signal-grid,
  .coach-runtime-card,
  .coach-memory-card,
  .coach-execution-card,
  .team-invite-landing-head,
  .team-invite-landing-meta,
  .team-invite-landing-path,
  .team-invite-landing-tasks,
  .blueprint-method-grid,
  .blueprint-grid,
  .blueprint-sources,
  .blueprint-loop,
  .roadmap-head,
  .roadmap-steps,
  .command-head,
  .command-dispatch,
  .command-primary,
  .command-grid,
  .command-tasks,
  .command-systems,
  .command-signals,
  .operation-audit-head,
  .operation-audit-next,
  .operation-audit-modules,
  .operation-audit-gaps,
  .goal-audit-head,
  .goal-audit-next,
  .goal-audit-grid,
  .goal-audit-bottom,
  .lifecycle-head,
  .lifecycle-current,
  .lifecycle-path,
  .lifecycle-grid,
  .lifecycle-checks,
  .evidence-head,
  .evidence-next,
  .evidence-modules,
  .evidence-grid,
  .evidence-chain,
  .evidence-side,
  .ai-core-head,
  .ai-core-runtime,
  .ai-core-sources,
  .ai-core-grid,
  .ai-core-routes,
  .ai-core-side,
  .ai-runtime-head,
  .ai-runtime-inputs,
  .ai-runtime-grid,
  .behavior-profile-head,
  .behavior-profile-next,
  .behavior-module-grid,
  .behavior-timeline,
  .command-deck-head,
  .command-deck-next,
  .command-deck-strip,
  .command-deck-grid,
  .command-deck-steps,
  .command-deck-modules,
  .command-deck-timeline,
  .orchestrator-head,
  .orchestrator-primary,
  .orchestrator-lanes,
  .orchestrator-grid,
  .orchestrator-flows,
  .orchestrator-side,
  .dispatch-head,
  .dispatch-primary,
  .dispatch-metrics,
  .dispatch-lanes,
  .dispatch-grid,
  .integration-health-head,
  .integration-health-next,
  .integration-health-grid,
  .integration-health-bottom,
  .integration-contracts,
  .integration-evidence,
  .ai-session-head,
  .ai-session-grid,
  .ai-session-steps,
  .ai-session-acceptance,
  .learning-control-head,
  .learning-exam-head,
  .learning-exam-ticket,
  .learning-exam-metrics,
  .learning-exam-lanes,
  .learning-exam-bottom,
  .learning-control-metrics,
  .learning-control-steps,
  .learning-control-sources,
  .learning-loop-head,
  .learning-loop-metrics,
  .learning-loop-stages,
  .learning-plan-head,
  .learning-plan-steps,
  .reminder-head,
  .reminder-list,
  .notification-command-head,
  .notification-command-next,
  .notification-provider,
  .notification-lanes,
  .notification-grid,
  .practice-calendar-head,
  .practice-calendar-metrics,
  .practice-calendar-days,
  .workbench-grid,
  .profile-summary,
  .profile-entitlements,
  .secondary-menu-grid,
  .shop-cart-head,
  .shop-cart-item,
  .shop-cart-checkout { grid-template-columns: 1fr; }
  .shop-cart-total { text-align: left; }
  .product-actions,
  .product-detail-actions { grid-template-columns: 1fr; }
  .ops-priority-head { display: block; }
  .compact-stats,
  .invite-line,
  .team-qr-wrap,
  .team-row,
  .borrow-row,
  .coach-actions { grid-template-columns: 1fr; }
  .next-task { grid-template-columns: 1fr; }
  .inline-actions { align-items: stretch; flex-wrap: wrap; }
  .row { grid-template-columns: 1fr; gap: 6px; }
}

@media (max-width: 560px) {
  .brand h1 { font-size: 16px; }
  nav { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  main { padding: 14px; }
  .auth-card,
  .hero,
  .panel,
  .answer,
  .history,
  .table-list,
  .products { padding: 16px; }
  .auth-card h2 { font-size: 24px; }
  .hero h2 { font-size: 26px; }
  .hero-card strong { font-size: 22px; }
  .page-map { padding: 14px; }
  .page-map-head { grid-template-columns: 1fr; }
  .page-map-head strong { font-size: 21px; }
  .secondary-menu-item { min-height: auto; }
  .stats,
  .guided-actions,
  .products { grid-template-columns: 1fr; }
  .guided-start-hero { padding: 18px; }
  .guided-action-card { min-height: 0; }
  .guided-route-strip strong { white-space: normal; }
  .ops-priority-item { grid-template-columns: 1fr; }
  .actions { align-items: stretch; }
  .actions button,
  .inline-actions button { width: 100%; }
  .activation input,
  .activation button { width: 100%; }
  .admin-table table { min-width: 640px; }
  #toast { left: 14px; right: 14px; bottom: 14px; }
}

.inline-check {
  grid-auto-flow: column;
  justify-content: start;
  align-items: center;
  gap: 8px;
  color: var(--ink);
}
.row-actions {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
  align-items: center;
}
.row-actions select,
.row-actions button { margin: 0; }
.meeting-summary {
  padding: 10px 12px;
  border: 1px solid var(--line);
  border-radius: 8px;
  background: #fbfaf7;
}
.meeting-row.due_soon,
.meeting-row.reminder_due {
  border-color: #ecd39a;
  background: #fffaf0;
}
.meeting-row.overdue {
  border-color: #efb5ad;
  background: #fff2f0;
}
#meetingList .row { grid-template-columns: 1.1fr .75fr 1.25fr 1fr .8fr 1fr 1.4fr; align-items: center; }
#memberList .row { grid-template-columns: 1fr .6fr .8fr 1.6fr 1.6fr auto; align-items: center; }
@media (max-width: 980px) {
  .learn-workbench,
  .bank-list,
  .quiz-heading,
  .compact-row {
    grid-template-columns: 1fr;
  }
  .quiz-heading {
    display: grid;
  }
  #meetingList .row,
  #memberList .row { grid-template-columns: 1fr; gap: 6px; }
}
