:root {
  --bg: #f3f4f6;
  --surface: #ffffff;
  --surface-soft: #f6f7f8;
  --table-head-bg: #fafafa;
  --table-border: #e7e8eb;
  --table-row-hover: #fafafa;
  --ink: #101113;
  --body: #3d3f43;
  --muted: #7a7d83;
  --faint: #a7abb1;
  --line: #e5e7eb;
  --line-strong: #d6d9de;
  --black: #090909;
  --green: #1c8b4a;
  --green-bg: #eaf7ef;
  --blue: #1e73d8;
  --blue-bg: #eaf3ff;
  --amber: #b56a05;
  --amber-bg: #fff3df;
  --red: #d53333;
  --red-bg: #fff0f0;
  --purple: #7257d7;
  --purple-bg: #f1edff;
  --radius-lg: 16px;
  --radius: 12px;
  --radius-sm: 9px;
  --shadow: 0 14px 42px rgba(17, 18, 20, .045);
  --shadow-soft: 0 8px 22px rgba(17, 18, 20, .03);
  --sidebar: 232px;
  --content-max: none;
  --workspace-gutter-x: clamp(16px, 1.45vw, 32px);
  --workspace-gutter-top: clamp(14px, 1.35vw, 24px);
  --workspace-gap: clamp(10px, .8vw, 16px);
  --control-height: 36px;
  --control-radius: 8px;
  --metric-card-height: 68.88px;
}

* {
  box-sizing: border-box;
}

html {
  height: 100%;
  overflow-x: hidden;
}

body {
  height: 100%;
  margin: 0;
  background: var(--bg);
  color: var(--ink);
  font-family: Inter, "PingFang SC", "Microsoft YaHei", system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
  letter-spacing: 0;
  overflow: hidden;
  -webkit-font-smoothing: antialiased;
}

#app {
  height: 100%;
}

button,
input,
select,
textarea {
  font: inherit;
}

button {
  cursor: pointer;
}

button:disabled {
  cursor: not-allowed;
  opacity: .5;
}

.app-shell {
  height: 100vh;
  display: grid;
  grid-template-columns: var(--sidebar) minmax(0, 1fr);
  overflow: hidden;
  transition: grid-template-columns .22s ease;
}

.sidebar {
  position: relative;
  top: 0;
  height: 100vh;
  display: flex;
  flex-direction: column;
  gap: 14px;
  padding: 20px 14px 18px;
  border-right: 1px solid var(--line);
  background: #fff;
  z-index: 20;
}

.sidebar-toggle {
  position: absolute;
  right: -16px;
  top: 50%;
  transform: translateY(-50%);
  width: 36px;
  height: 72px;
  padding: 0;
  border: 0;
  border-radius: 0;
  background: transparent;
  color: var(--muted);
  display: inline-flex;
  align-items: center;
  justify-content: center;
  cursor: pointer;
  z-index: 30;
  transition: color .15s ease;
}

.sidebar-toggle:hover {
  color: var(--ink);
}

.sidebar-toggle-icon {
  width: 24px;
  height: 24px;
  transform: rotate(90deg);
  transition: transform .2s ease;
}

.app-shell.is-collapsed .sidebar-toggle-icon {
  transform: rotate(-90deg);
}

.brand {
  display: flex;
  align-items: center;
  gap: 13px;
  min-height: 44px;
  padding: 0 12px;
  cursor: pointer;
}

.logo {
  width: 38px;
  height: 38px;
  object-fit: contain;
}

.brand-copy h1 {
  margin: 0;
  color: #101113;
  font-size: 24px;
  line-height: 1;
  font-weight: 820;
  letter-spacing: 0;
  white-space: nowrap;
}

.brand-copy p {
  margin: 4px 0 0;
  color: var(--muted);
  font-size: 12px;
  font-weight: 650;
}

.quick-create {
  width: 100%;
  min-height: 44px;
  border: 0;
  border-radius: 999px;
  background: linear-gradient(#191919, #070707);
  color: #fff;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 10px;
  padding: 0 18px;
  font-size: 15px;
  font-weight: 750;
  box-shadow: inset 0 1px 0 rgba(255,255,255,.12), 0 10px 24px rgba(0,0,0,.1);
}

.agent-manage {
  width: 100%;
  min-height: 44px;
  border: 0;
  border-radius: 999px;
  background: linear-gradient(#191919, #070707);
  color: #fff;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 10px;
  padding: 0 18px;
  font-size: 15px;
  font-weight: 750;
  box-shadow: inset 0 1px 0 rgba(255,255,255,.12), 0 10px 24px rgba(0,0,0,.1);
}

.side-nav {
  display: grid;
  gap: 6px;
  margin-top: 4px;
}

.nav-btn {
  position: relative;
  min-height: 40px;
  display: flex;
  align-items: center;
  justify-content: flex-start;
  border: 1px solid transparent;
  border-radius: 999px;
  background: transparent;
  color: #4b4f54;
  padding: 0 22px;
  font-size: 14px;
  font-weight: 700;
  text-align: left;
}

.nav-main {
  min-width: 0;
  display: inline-flex;
  align-items: center;
  gap: 10px;
}

.nav-btn .nav-icon,
.nav-img-icon {
  width: 18px;
  height: 18px;
  flex: 0 0 18px;
}

.filled-icon {
  fill: currentColor;
  stroke: none;
  display: block;
}

.nav-img-icon {
  flex: 0 0 auto;
  display: inline-block;
  background: currentColor;
  -webkit-mask: var(--nav-icon-url) center / contain no-repeat;
  mask: var(--nav-icon-url) center / contain no-repeat;
}

.nav-btn:hover {
  color: var(--ink);
  background: rgba(255,255,255,.82);
  border-color: var(--line);
}

.nav-btn.active {
  color: #fff;
  background: linear-gradient(#191919, #070707);
  box-shadow: inset 0 1px 0 rgba(255,255,255,.12), 0 10px 22px rgba(0,0,0,.1);
}

.nav-group {
  display: grid;
  gap: 6px;
}

.nav-group-toggle {
  justify-content: space-between;
  gap: 12px;
}

.nav-caret {
  width: 18px;
  height: 18px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  flex: 0 0 auto;
  transition: transform .16s ease;
}

.nav-caret-icon {
  width: 16px;
  height: 16px;
  fill: none;
  stroke: currentColor;
  stroke-width: 2.4;
  stroke-linecap: round;
  stroke-linejoin: round;
}

.nav-group.open .nav-caret {
  transform: rotate(180deg);
}

.nav-subitems {
  display: grid;
  gap: 4px;
  padding-left: 14px;
}

.nav-subbtn {
  min-height: 34px;
  display: flex;
  align-items: center;
  justify-content: flex-start;
  border: 1px solid transparent;
  border-radius: 999px;
  background: transparent;
  color: #60656b;
  padding: 0 18px;
  font-size: 13px;
  font-weight: 700;
  text-align: left;
}

.nav-subbtn:hover {
  color: var(--ink);
  background: rgba(255,255,255,.72);
  border-color: var(--line);
}

.nav-subbtn.active {
  color: var(--ink);
  background: rgba(0,0,0,.06);
  border-color: rgba(0,0,0,.08);
}

/* ---------- Collapsed sidebar ---------- */
.app-shell.is-collapsed {
  --sidebar: 72px;
}

.app-shell.is-collapsed .sidebar {
  align-items: center;
  padding: 20px 10px 18px;
}

.app-shell.is-collapsed .brand {
  justify-content: center;
  padding: 0;
}

.app-shell.is-collapsed .brand-copy {
  display: none;
}

.app-shell.is-collapsed .side-nav {
  justify-items: center;
  width: 100%;
}

.app-shell.is-collapsed .nav-btn {
  position: relative;
  width: 40px;
  height: 40px;
  padding: 0;
  justify-content: center;
}

.app-shell.is-collapsed .nav-main span:not(.nav-icon):not(.nav-img-icon),
.app-shell.is-collapsed .nav-subitems,
.app-shell.is-collapsed .nav-caret,
.app-shell.is-collapsed .quick-create span {
  display: none;
}

.app-shell.is-collapsed .nav-group {
  position: relative;
}

.app-shell.is-collapsed .nav-group-toggle {
  pointer-events: none;
}

.app-shell.is-collapsed .quick-create {
  width: 48px;
  height: 48px;
  padding: 0;
  border-radius: 50%;
}

/* Invisible hover bridges so the cursor can cross the gap without losing the menu */
.app-shell.is-collapsed .side-nav .nav-btn::after,
.app-shell.is-collapsed .nav-group::after {
  content: "";
  position: absolute;
  left: 100%;
  top: 0;
  width: 14px;
  height: 100%;
  background: transparent;
  pointer-events: auto;
}

.nav-tooltip {
  position: absolute;
  left: calc(100% + 10px);
  top: 50%;
  transform: translateY(-50%) scale(0.96);
  padding: 6px 12px;
  background: #1f2329;
  color: #fff;
  border-radius: 8px;
  font-size: 13px;
  font-weight: 700;
  white-space: nowrap;
  opacity: 0;
  visibility: hidden;
  pointer-events: none;
  transition: opacity .15s ease, transform .15s ease, visibility .15s ease;
  transition-delay: .08s;
  z-index: 40;
}

.app-shell.is-collapsed .nav-btn:hover .nav-tooltip {
  opacity: 1;
  visibility: visible;
  transform: translateY(-50%) scale(1);
  transition-delay: 0s;
}

.nav-flyout {
  position: absolute;
  left: calc(100% + 10px);
  top: 0;
  min-width: 160px;
  padding: 10px;
  background: #fff;
  border: 1px solid var(--line);
  border-radius: var(--radius);
  box-shadow: var(--shadow);
  opacity: 0;
  visibility: hidden;
  pointer-events: none;
  transform: translateX(-4px);
  transition: opacity .15s ease, transform .15s ease, visibility .15s ease;
  transition-delay: .08s;
  z-index: 40;
}

.app-shell.is-collapsed .nav-group:hover .nav-flyout {
  opacity: 1;
  visibility: visible;
  pointer-events: auto;
  transform: translateX(0);
  transition-delay: 0s;
}

.nav-flyout-title {
  padding: 6px 10px;
  color: var(--muted);
  font-size: 12px;
  font-weight: 700;
}

.nav-flyout-items {
  display: grid;
  gap: 4px;
}

.nav-flyout-item {
  min-height: 32px;
  padding: 0 10px;
  border: 1px solid transparent;
  border-radius: 999px;
  background: transparent;
  color: var(--ink);
  font-size: 13px;
  font-weight: 700;
  text-align: left;
  cursor: pointer;
  white-space: nowrap;
}

.nav-flyout-item:hover {
  background: rgba(0,0,0,.06);
  border-color: var(--line);
}

.nav-flyout-item.active {
  color: #fff;
  background: linear-gradient(#191919, #070707);
  border-color: transparent;
}

.side-spacer {
  flex: 1;
}

.main {
  height: 100vh;
  min-width: 0;
  min-height: 0;
  overflow-x: hidden;
  overflow-y: auto;
  overscroll-behavior: contain;
  padding: var(--workspace-gutter-top) var(--workspace-gutter-x) 22px;
}

.page {
  width: 100%;
  max-width: var(--content-max);
  margin: 0 auto;
}

.page.framed {
  border: 1px solid var(--line);
  border-radius: var(--radius-lg);
  background: rgba(255,255,255,.58);
  padding: 22px;
  box-shadow: var(--shadow);
}

.page-header {
  display: flex;
  justify-content: space-between;
  align-items: center;
  gap: 18px;
  margin-bottom: 14px;
}

.page-header.has-context {
  align-items: flex-start;
}

.page-heading {
  min-width: 0;
}

.page-title-row {
  min-width: 0;
  display: flex;
  align-items: baseline;
  gap: 12px;
  flex-wrap: wrap;
}

.page-context-row {
  display: flex;
  align-items: center;
  gap: 10px;
  min-width: 0;
  margin-bottom: 8px;
}

.back-btn {
  width: 40px;
  min-width: 40px;
  height: 40px;
  min-height: 40px;
  flex: 0 0 40px;
  justify-content: center;
  border-radius: 9px;
  padding: 0;
}

.back-icon {
  width: 24px;
  height: 24px;
  stroke-width: 2.6;
}

.page-breadcrumb {
  min-width: 0;
  display: flex;
  align-items: center;
  gap: 7px;
  color: var(--muted);
  font-size: 13px;
  line-height: 1.35;
  font-weight: 760;
  white-space: nowrap;
}

.page-breadcrumb button {
  min-width: 0;
  border: 0;
  background: transparent;
  padding: 0;
  color: inherit;
  font: inherit;
  cursor: pointer;
}

.page-breadcrumb button:hover {
  color: var(--ink);
}

.page-breadcrumb b {
  min-width: 0;
  color: var(--ink);
  font-weight: 820;
  overflow: hidden;
  text-overflow: ellipsis;
}

.breadcrumb-sep {
  color: var(--muted-2);
}

.page-header h2 {
  margin: 0;
  font-size: 21px;
  line-height: 1.25;
  letter-spacing: 0;
  font-weight: 850;
  color: var(--black);
  white-space: nowrap;
}

.page-header p {
  min-width: 0;
  margin: 0;
  display: inline-flex;
  align-items: center;
  gap: 12px;
  color: var(--muted);
  font-size: 14px;
  line-height: 1.45;
}

.page-header p::before {
  content: "";
  width: 1px;
  height: 14px;
  flex: 0 0 auto;
  background: var(--line-strong);
}

.breadcrumb {
  margin-bottom: 12px;
  color: var(--muted);
  font-size: 14px;
  font-weight: 800;
}

.header-actions,
.actions,
.toolbar {
  display: flex;
  align-items: center;
  justify-content: flex-end;
  gap: 12px;
  flex-wrap: wrap;
}

.more-actions {
  position: relative;
  display: inline-flex;
}

.more-actions summary {
  list-style: none;
}

.more-actions summary::-webkit-details-marker {
  display: none;
}

.more-actions-menu {
  position: absolute;
  top: calc(100% + 8px);
  right: 0;
  z-index: 40;
  min-width: 148px;
  display: grid;
  gap: 6px;
  padding: 8px;
  border: 1px solid var(--line);
  border-radius: var(--control-radius);
  background: var(--surface);
  box-shadow: 0 16px 42px rgba(17, 18, 20, .12);
}

.more-actions-menu .btn {
  width: 100%;
  justify-content: flex-start;
  min-height: 32px;
  border-color: transparent;
  box-shadow: none;
}

.btn {
  min-height: var(--control-height);
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 8px;
  border: 1px solid var(--line);
  border-radius: var(--control-radius);
  background: #fff;
  color: var(--ink);
  padding: 0 16px;
  font-size: 14px;
  font-weight: 700;
  white-space: nowrap;
  box-shadow: none;
}

.btn:hover {
  border-color: var(--line-strong);
  background: #fafafa;
}

.btn.primary {
  border-color: var(--black);
  background: linear-gradient(#171717, #050505);
  color: #fff;
  box-shadow: inset 0 1px 0 rgba(255,255,255,.12), 0 10px 22px rgba(0,0,0,.09);
}

.btn.ghost {
  background: transparent;
}

.icon-btn {
  width: 40px;
  min-width: 40px;
  padding: 0;
}

.nav-icon,
.ui-icon {
  width: 22px;
  height: 22px;
  flex: 0 0 auto;
  fill: none;
  stroke: currentColor;
  stroke-width: 1.9;
  stroke-linecap: round;
  stroke-linejoin: round;
}

.nav-icon.filled-icon {
  fill: currentColor;
  stroke: none;
}

.metric-grid {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 10px;
  margin-bottom: 12px;
}

.metric-grid.cols-5 {
  grid-template-columns: repeat(5, minmax(0, 1fr));
}

.metric-grid.compact {
  grid-template-columns: repeat(4, minmax(150px, 1fr));
}

.metric {
  height: var(--metric-card-height);
  border: 1px solid var(--line);
  border-radius: var(--radius);
  background: rgba(255,255,255,.78);
  box-shadow: var(--shadow-soft);
  display: grid;
  grid-template-columns: 50px minmax(0, 1fr);
  align-items: center;
  gap: 10px;
  padding: 12px 16px;
}

.metric-action {
  width: 100%;
  color: inherit;
  text-align: left;
  transition: border-color .15s ease, background .15s ease, box-shadow .15s ease, transform .15s ease;
}

.metric-action:hover {
  border-color: var(--line-strong);
  background: #fff;
  transform: translateY(-1px);
}

.metric-action.active {
  border-color: #aeb4bd;
  background: #fff;
  box-shadow: 0 14px 32px rgba(17,18,20,.055);
}

.metric-grid.no-icons .metric {
  grid-template-columns: minmax(0, 1fr);
  height: var(--metric-card-height);
  align-items: center;
  padding: 14px 20px;
}

.metric-grid.no-icons .metric-body {
  min-width: 0;
}

.metric-grid.no-icons .metric .label {
  color: var(--ink);
  font-size: 15px;
  font-weight: 780;
}

.metric-grid.no-icons .metric .value {
  margin-top: 4px;
  font-size: 28px;
  line-height: 1;
}

.skill-version-summary {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 10px;
  margin-bottom: 16px;
}

.skill-version-summary > div {
  min-height: 72px;
  border: 1px solid var(--line);
  border-radius: var(--radius);
  background: rgba(255,255,255,.82);
  box-shadow: var(--shadow-soft);
  display: grid;
  align-content: center;
  gap: 6px;
  padding: 12px 16px;
}

.skill-version-summary span {
  color: var(--muted);
  font-size: 12px;
  font-weight: 720;
}

.skill-version-summary b {
  min-width: 0;
  overflow: hidden;
  color: var(--ink);
  font-size: 17px;
  font-weight: 820;
  line-height: 1.25;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.version-skill-cell {
  display: grid;
  gap: 3px;
}

.version-skill-cell b {
  color: var(--ink);
  font-size: 14px;
  font-weight: 820;
}

.version-skill-cell span {
  max-width: 180px;
  overflow: hidden;
  color: var(--muted);
  font-size: 12px;
  font-weight: 680;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.version-history-table {
  table-layout: fixed;
  min-width: 1040px;
}

.version-history-table th,
.version-history-table td {
  padding: 10px 16px;
}

.version-history-table th:nth-child(1) { width: 19%; }
.version-history-table th:nth-child(2) { width: 28%; }
.version-history-table th:nth-child(3) { width: 12%; }
.version-history-table th:nth-child(4) { width: 22%; }
.version-history-table th:nth-child(5) { width: 9%; }
.version-history-table th:nth-child(6) { width: 10%; }

.version-history-table th:nth-child(3),
.version-history-table td:nth-child(3),
.version-history-table th:nth-child(6),
.version-history-table td:nth-child(6) {
  text-align: center;
}

.version-history-table td:nth-child(2),
.version-history-table td:nth-child(4) {
  white-space: normal;
}

.version-history-table td:last-child .btn {
  min-width: 74px;
}

.version-support-panel {
  margin-top: 14px;
}

.version-bottom-grid {
  display: grid;
  grid-template-columns: minmax(0, 2fr) minmax(280px, .85fr);
  gap: 14px;
  margin-top: 16px;
  align-items: stretch;
}

.version-bottom-panel {
  display: grid;
  grid-template-rows: auto minmax(0, 1fr);
  align-content: start;
  padding: 20px 22px;
}

.version-bottom-grid > .version-bottom-panel + .version-bottom-panel {
  margin-top: 0;
}

.version-panel-head {
  min-height: 44px;
  align-items: center;
  margin-bottom: 18px;
}

.version-impact-grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 10px;
}

.version-impact-grid > div {
  min-height: 104px;
  border: 1px solid var(--line);
  border-radius: var(--radius);
  background: rgba(255,255,255,.78);
  display: grid;
  align-content: start;
  gap: 6px;
  padding: 14px 16px;
}

.version-impact-grid span {
  color: var(--muted);
  font-size: 12px;
  font-weight: 720;
}

.version-impact-grid b {
  overflow: hidden;
  color: var(--ink);
  font-size: 15px;
  font-weight: 820;
  line-height: 1.25;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.version-impact-grid small {
  color: var(--muted);
  font-size: 12px;
  line-height: 1.35;
}

.version-rule-list {
  display: grid;
  gap: 0;
  align-self: start;
}

.version-note {
  margin-top: 12px;
  color: var(--body);
  font-size: 13px;
  line-height: 1.55;
}

.knowledge-detail-layout {
  grid-template-columns: minmax(0, 1fr) clamp(330px, 22vw, 390px);
  align-items: start;
}

.knowledge-detail-page .metric-grid.no-icons {
  gap: 12px;
  margin-bottom: 0;
}

.knowledge-detail-page .metric-grid.no-icons .metric {
  height: var(--metric-card-height);
  background: rgba(255,255,255,.84);
  padding: 16px 18px;
}

.knowledge-detail-page .metric-grid.no-icons .metric .label {
  color: var(--muted);
  font-size: 13px;
  font-weight: 760;
}

.knowledge-detail-page .metric-grid.no-icons .metric .value {
  font-size: 26px;
  line-height: 1.05;
  overflow-wrap: normal;
  word-break: keep-all;
}

.knowledge-detail-page .metric-grid.no-icons .metric .change {
  overflow-wrap: anywhere;
}

.knowledge-detail-layout > main.stack {
  gap: 10px;
}

.knowledge-core-panel {
  padding: 16px 18px;
}

.knowledge-core-panel .panel-head {
  align-items: center;
  margin-bottom: 12px;
}

.knowledge-core-panel .panel-head p,
.knowledge-version-card .table-head p {
  margin: 4px 0 0;
  color: var(--muted);
  font-size: 13px;
  line-height: 1.45;
  font-weight: 650;
}

.knowledge-module-table {
  overflow: hidden;
  border: 1px solid var(--line);
  border-radius: 12px;
  background: #fff;
}

.knowledge-module-head,
.knowledge-module-row {
  display: grid;
  grid-template-columns: minmax(92px, .75fr) minmax(88px, .65fr) minmax(240px, 2fr) minmax(130px, 1fr);
  column-gap: 16px;
  align-items: center;
  padding: 11px 16px;
}

.knowledge-module-head {
  min-height: 40px;
  border-bottom: 1px solid var(--line);
  background: #fafafa;
  color: var(--muted);
  font-size: 12px;
  font-weight: 780;
}

.knowledge-module-row {
  min-height: 52px;
}

.knowledge-module-row + .knowledge-module-row {
  border-top: 1px solid var(--line);
}

.knowledge-module-row b {
  color: var(--ink);
  font-size: 14px;
  font-weight: 820;
}

.knowledge-module-row span {
  color: var(--body);
  font-size: 13px;
  font-weight: 760;
}

.knowledge-module-row p {
  margin: 0;
  color: var(--body);
  font-size: 13px;
  line-height: 1.45;
}

.knowledge-module-row em {
  color: var(--muted);
  font-size: 13px;
  font-style: normal;
  line-height: 1.45;
}

.knowledge-version-card .table-head {
  align-items: center;
}

.knowledge-detail-version-table {
  min-width: 720px;
}

.knowledge-detail-version-table th:nth-child(1) { width: 19%; }
.knowledge-detail-version-table th:nth-child(2) { width: 36%; }
.knowledge-detail-version-table th:nth-child(3) { width: 15%; }
.knowledge-detail-version-table th:nth-child(4) { width: 16%; }
.knowledge-detail-version-table th:nth-child(5) { width: 14%; }

.knowledge-health-panel {
  position: sticky;
  top: 18px;
  align-self: start;
  display: grid;
  gap: 18px;
  padding: 24px;
}

.detail-title.no-icon {
  grid-template-columns: minmax(0, 1fr) auto;
}

.detail-title.no-icon > div {
  min-width: 0;
}

.detail-title.no-icon > .status {
  justify-self: start;
}

.detail-title.no-icon span:not(.status) {
  display: block;
  margin-top: 4px;
  color: var(--body);
  font-size: 14px;
  line-height: 1.35;
  font-weight: 700;
}

.knowledge-gap-list {
  display: grid;
}

.knowledge-gap-row {
  min-height: 42px;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 14px;
  border-top: 1px solid var(--line);
  color: var(--body);
  font-size: 13px;
  font-weight: 720;
}

.knowledge-gap-row:first-child {
  border-top: 0;
}

.knowledge-version-relation {
  display: grid;
  gap: 10px;
}

.knowledge-version-relation div {
  display: grid;
  gap: 4px;
}

.knowledge-version-relation span {
  color: var(--muted);
  font-size: 12px;
  font-weight: 760;
}

.knowledge-version-relation b {
  color: var(--ink);
  font-size: 14px;
  line-height: 1.35;
  font-weight: 820;
}

.asset-detail-layout {
  margin-top: 12px;
}

.asset-detail-page .metric-grid.no-icons,
.asset-detail-page .asset-detail-layout {
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 12px;
}

.asset-detail-page .metric-grid.no-icons .metric {
  overflow: hidden;
  align-items: stretch;
  padding: 10px 14px;
}

.asset-detail-page .metric-grid.no-icons .metric-body {
  min-width: 0;
  min-height: 0;
  display: grid;
  grid-template-rows: 28px 16px;
  align-content: center;
  gap: 3px;
  overflow: hidden;
}

.asset-detail-page .metric-grid.no-icons .metric-main {
  min-width: 0;
  min-height: 0;
  display: grid;
  grid-template-columns: max-content minmax(0, 1fr);
  align-items: center;
  gap: 6px;
}

.asset-detail-page .metric-grid.no-icons .metric .label,
.asset-detail-page .metric-grid.no-icons .metric .value,
.asset-detail-page .metric-grid.no-icons .metric .change {
  min-width: 0;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.asset-detail-page .metric-grid.no-icons .metric .label {
  color: var(--muted);
  font-size: 12px;
  line-height: 18px;
  font-weight: 760;
}

.asset-detail-page .metric-grid.no-icons .metric .value {
  max-width: 100%;
  margin-top: 0;
  justify-self: end;
  color: var(--black);
  font-size: 20px;
  line-height: 28px;
  font-weight: 850;
  text-align: right;
}

.asset-detail-page .metric-grid.no-icons .metric.long-value .value {
  font-size: 18px;
}

.asset-detail-page .metric-grid.no-icons .metric .change {
  justify-self: start;
  margin-top: 0;
  color: var(--faint);
  font-size: 12px;
  line-height: 16px;
  font-weight: 650;
}

.asset-detail-page .asset-detail-card {
  grid-column: 1 / span 3;
}

.asset-detail-page .asset-detail-side {
  grid-column: 4;
  width: 100%;
}

.asset-detail-card {
  overflow: hidden;
  padding: 0;
}

.asset-detail-card .skill-detail-content {
  height: auto;
  min-height: 0;
}

.asset-detail-card .skill-detail-scroll {
  overflow: visible;
}

.asset-detail-card .skill-detail-footer {
  grid-template-columns: repeat(3, minmax(0, 1fr));
}

.asset-detail-card .skill-detail-header {
  background: rgba(255,255,255,.72);
}

.asset-detail-card .skill-detail-scroll:has(.asset-core-panel) {
  padding: 0;
}

.asset-core-panel {
  padding: 16px 18px;
}

.asset-core-panel .panel-head {
  align-items: center;
  margin-bottom: 12px;
}

.asset-core-panel .panel-head p {
  margin: 4px 0 0;
  color: var(--muted);
  font-size: 13px;
  line-height: 1.45;
  font-weight: 650;
}

.asset-core-table {
  overflow: hidden;
  border: 1px solid var(--line);
  border-radius: 12px;
  background: #fff;
}

.asset-core-head,
.asset-core-row {
  display: grid;
  grid-template-columns: minmax(92px, .72fr) minmax(96px, .62fr) minmax(240px, 2fr) minmax(150px, 1fr);
  column-gap: 16px;
  align-items: center;
  padding: 11px 16px;
}

.asset-core-head {
  min-height: 40px;
  border-bottom: 1px solid var(--line);
  background: #fafafa;
  color: var(--muted);
  font-size: 12px;
  font-weight: 780;
}

.asset-core-row {
  min-height: 56px;
}

.asset-core-row + .asset-core-row {
  border-top: 1px solid var(--line);
}

.asset-core-row > div {
  min-width: 0;
  color: var(--body);
  font-size: 13px;
  line-height: 1.5;
  font-weight: 650;
}

.asset-core-row > div:first-child {
  color: var(--ink);
  font-size: 14px;
  font-weight: 820;
}

.asset-core-row .status {
  justify-self: start;
}

.asset-core-list {
  display: grid;
  gap: 5px;
  margin: 0;
  padding-left: 16px;
}

div.asset-core-list {
  padding-left: 0;
}

.asset-core-list li,
.asset-core-list span {
  color: var(--body);
  font-size: 13px;
  line-height: 1.45;
}

.asset-core-table .contract-chip-grid.compact {
  gap: 7px;
}

.asset-core-table .contract-chip-grid.compact .contract-chip {
  min-height: 28px;
  gap: 7px;
  padding: 0 9px;
  font-size: 12px;
}

.asset-core-table .contract-chip-grid.compact .contract-chip span {
  font-size: 12px;
}

.asset-field-chip-grid {
  display: flex;
  flex-wrap: wrap;
  gap: 7px;
}

.asset-field-chip {
  min-height: 28px;
  display: inline-flex;
  align-items: center;
  border-radius: 7px;
  padding: 0 9px;
  font-size: 12px;
  font-weight: 820;
}

.asset-field-chip.blue {
  background: var(--blue-bg);
  color: var(--blue);
}

.asset-field-chip.green {
  background: var(--green-bg);
  color: var(--green);
}

.asset-detail-card .asset-core-panel + .feedback-tool-link,
.asset-detail-card .asset-core-panel + .skill-detail-section,
.asset-detail-card .asset-core-panel + .asset-core-info-list {
  border-top: 1px solid var(--line);
}

.asset-detail-card > .skill-detail-section,
.asset-detail-card .asset-core-info-list {
  padding-left: 18px;
  padding-right: 18px;
}

.asset-detail-side .asset-side-actions {
  display: grid;
  gap: 10px;
}

.asset-detail-side .asset-side-actions .btn {
  width: 100%;
}

.feedback-detail-main-card {
  display: grid;
  align-content: start;
}

.feedback-detail-side .feedback-related-list {
  gap: 8px;
}

.feedback-detail-side .feedback-related-item {
  min-height: 56px;
}

.metric-icon,
.item-icon {
  width: 44px;
  height: 44px;
  display: grid;
  place-items: center;
  border: 1px solid var(--line);
  border-radius: 12px;
  background: #fafafa;
  color: #0e1012;
}

.metric .label {
  color: var(--body);
  font-size: 14px;
  font-weight: 700;
}

.metric-main {
  min-width: 0;
}

.metric .value {
  margin-top: 4px;
  color: var(--ink);
  font-size: 26px;
  line-height: 1;
  font-weight: 800;
}

.metric .change {
  margin-top: 6px;
  color: var(--muted);
  font-size: 13px;
  font-weight: 600;
}

.dashboard-grid {
  display: grid;
  grid-template-columns: 260px minmax(0, 1fr) 324px;
  gap: var(--workspace-gap);
}

.workbench-page {
  --workbench-left: clamp(240px, 15vw, 286px);
  --workbench-right: clamp(300px, 19vw, 360px);
}

.workbench-dashboard {
  display: grid;
  grid-template-columns: var(--workbench-left) minmax(0, 1fr) var(--workbench-right);
  grid-template-areas:
    "tasks stats stats"
    "tasks projects actions"
    "shortcuts projects overview";
  grid-template-rows: auto auto auto;
  gap: var(--workspace-gap);
  align-items: stretch;
}

.workspace-card,
.dashboard-stat-strip {
  border: 1px solid var(--line);
  border-radius: var(--radius-lg);
  background: rgba(255,255,255,.78);
  box-shadow: var(--shadow);
}

.workspace-card {
  padding: 18px;
}

.workspace-card h3 {
  margin: 0;
  color: var(--ink);
  font-size: 17px;
  line-height: 1.25;
  font-weight: 820;
}

.dashboard-tasks {
  grid-area: tasks;
  min-height: 100%;
}

.dashboard-shortcuts {
  grid-area: shortcuts;
}

.dense-workbench-dashboard .dashboard-shortcuts .dashboard-mini-item {
  min-height: 58px;
  padding: 9px 14px;
}

.dashboard-stat-strip {
  grid-area: stats;
  min-height: var(--metric-card-height);
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  align-items: stretch;
  gap: 14px;
  border: 0;
  border-radius: 0;
  background: transparent;
  box-shadow: none;
  padding: 0;
}

.dashboard-stat {
  position: relative;
  min-width: 0;
  height: var(--metric-card-height);
  border: 1px solid #dfe2e8;
  border-radius: 12px;
  background: rgba(255,255,255,.82);
  box-shadow: 0 12px 30px rgba(17,18,20,.038);
  padding: 10px 16px;
}

.dashboard-stat > div {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  grid-template-rows: auto auto;
  column-gap: 12px;
  align-content: center;
  align-items: start;
}

.dashboard-stat b {
  display: block;
  align-self: center;
  color: var(--ink);
  font-size: 14px;
  line-height: 1.2;
  font-weight: 820;
  white-space: nowrap;
}

.dashboard-stat strong {
  display: block;
  grid-column: 2;
  grid-row: 1;
  justify-self: end;
  margin-top: 0;
  color: var(--black);
  font-size: 26px;
  line-height: .95;
  font-weight: 850;
  letter-spacing: 0;
}

.dashboard-stat span:not(.metric-icon) {
  display: block;
  grid-column: 2;
  grid-row: 2;
  justify-self: end;
  margin-top: 4px;
  color: var(--muted);
  font-size: 13px;
  font-weight: 700;
  line-height: 1.2;
}

.metric-divider {
  display: none;
}

.dashboard-list {
  display: grid;
  gap: 12px;
  margin-top: 18px;
}

.dashboard-mini-item {
  min-height: 64px;
  width: 100%;
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  align-items: center;
  gap: 14px;
  border: 1px solid var(--line);
  border-radius: 12px;
  background: rgba(255,255,255,.86);
  padding: 10px 16px;
  text-align: left;
  transition: border-color .16s ease, background .16s ease, transform .16s ease;
}

.dashboard-mini-item:hover {
  border-color: var(--line-strong);
  background: #fff;
  transform: translateY(-1px);
}

.dashboard-mini-item b {
  display: block;
  color: var(--ink);
  font-size: 14px;
  line-height: 1.25;
  font-weight: 800;
}

.dashboard-mini-item .mini-text span {
  display: block;
  margin-top: 4px;
  color: var(--muted);
  font-size: 12px;
  line-height: 1.35;
  font-weight: 600;
}

.dashboard-mini-item strong {
  color: var(--black);
  font-size: 18px;
  font-weight: 850;
}

.dashboard-arrow {
  color: var(--muted);
  font-size: 22px;
  line-height: 1;
}

.dashboard-journey .journey-step:not(:last-child)::before {
  content: "";
  position: absolute;
  top: 13px;
  right: calc(-50% + 32px);
  width: 8px;
  height: 8px;
  border-top: 3px solid rgba(112, 112, 112, .78);
  border-right: 3px solid rgba(112, 112, 112, .78);
  transform: rotate(45deg);
}

.dashboard-journey .step-num {
  position: relative;
  z-index: 1;
  width: 36px;
  height: 36px;
  border: 0;
  background: #000;
  box-shadow: none;
  color: #fff;
  font-size: 12px;
  letter-spacing: 0;
  line-height: 1;
}

.dashboard-journey .journey-step b {
  margin-top: 7px;
  color: var(--ink);
  font-size: 15px;
  font-weight: 820;
}

.dashboard-journey .journey-step > span:last-child {
  max-width: 136px;
  color: var(--muted);
  font-size: 12px;
  line-height: 1.45;
}

.dashboard-actions {
  grid-area: actions;
  min-height: 100%;
}

.dashboard-projects {
  grid-area: projects;
  padding: 0;
  min-height: 100%;
}

.dashboard-projects .table-head {
  padding: 14px 18px 12px;
}

.dense-workbench-dashboard .dashboard-projects .table-head {
  padding-right: 160px;
}

.dashboard-table {
  min-width: 0;
}

.data-table.dashboard-table {
  min-width: 0;
  table-layout: fixed;
}

.dashboard-table th:nth-child(1) { width: 30%; }
.dashboard-table th:nth-child(2) { width: 22%; }
.dashboard-table th:nth-child(3) { width: 16%; }
.dashboard-table th:nth-child(4) { width: 24%; }
.dashboard-table th:nth-child(5) { width: 8%; }

.data-table.dashboard-table th,
.data-table.dashboard-table td {
  padding: 8px 14px;
  font-size: 14px;
}

.data-table.dashboard-table th:last-child,
.data-table.dashboard-table td:last-child {
  padding-right: 6px;
  padding-left: 6px;
  text-align: left;
}

.dashboard-table th,
.dashboard-table td {
  overflow: hidden;
  text-overflow: ellipsis;
}

.dashboard-table th,
.dashboard-table td {
  padding: 8px 14px;
}

.dashboard-table .icon-btn {
  width: 28px;
  min-width: 28px;
  min-height: 28px;
  border-color: transparent;
  background: transparent;
  color: var(--muted);
  padding: 0;
}

.dashboard-table .name-cell {
  display: block;
  color: var(--ink);
  font-weight: 800;
}

.dashboard-table th:nth-child(2),
.dashboard-table td:nth-child(2),
.dashboard-table th:nth-child(5),
.dashboard-table td:nth-child(5) {
  text-align: center;
}

.dashboard-card-footer {
  display: flex;
  justify-content: center;
  padding: 12px 18px 16px;
}

.dashboard-overview {
  grid-area: overview;
  min-height: 100%;
}

.overview-list {
  margin-top: 18px;
  border: 1px solid var(--line);
  border-radius: 12px;
  overflow: hidden;
  background: rgba(255,255,255,.86);
}

.overview-row {
  min-height: 44px;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 14px;
  padding: 0 16px;
  border-top: 1px solid var(--line);
}

.overview-row:first-child {
  border-top: 0;
}

.overview-row span {
  min-width: 0;
  color: var(--body);
  font-size: 13px;
  font-weight: 700;
}

.overview-row strong {
  color: var(--black);
  font-size: 20px;
  font-weight: 850;
}

.dense-workbench-page {
  width: 100%;
}

.dense-workbench-dashboard {
  grid-template-columns: clamp(220px, 14vw, 264px) minmax(0, 1fr) clamp(300px, 18vw, 348px);
  grid-template-areas:
    "tasks stats feedback"
    "tasks projects progress"
    "shortcuts projects suggestions"
    ". projects overview";
  grid-template-rows: 140px auto 350px 170px;
  gap: var(--workspace-gap);
}

.dense-workbench-dashboard .workspace-card {
  border-radius: 16px;
  background: rgba(255,255,255,.82);
}

.dense-workbench-dashboard .dashboard-stat-strip {
  min-height: 0;
  padding: 0;
}

.dense-workbench-dashboard .dashboard-core-stats {
  grid-template-columns: repeat(3, minmax(0, 1fr));
}

.dashboard-feedback {
  grid-area: feedback;
  display: flex;
  flex-direction: column;
  justify-content: center;
  padding: 24px 28px;
}

.dashboard-feedback strong {
  display: block;
  margin-top: 16px;
  color: var(--black);
  font-size: 36px;
  line-height: .95;
  font-weight: 850;
}

.dashboard-feedback span {
  margin-top: 14px;
  color: var(--muted);
  font-size: 13px;
  font-weight: 750;
}

.dashboard-progress {
  grid-area: progress;
  padding: 18px;
}

.progress-list,
.suggestion-list {
  margin-top: 14px;
  border: 1px solid var(--line);
  border-radius: 12px;
  overflow: hidden;
  background: rgba(255,255,255,.74);
}

.progress-row,
.suggestion-row {
  width: 100%;
  border: 0;
  border-top: 1px solid var(--line);
  background: transparent;
  text-align: left;
}

.progress-row:first-child,
.suggestion-row:first-child {
  border-top: 0;
}

.progress-row {
  min-height: 58px;
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  align-items: center;
  gap: 12px;
  padding: 10px 14px;
}

.progress-row b,
.suggestion-row b,
.activity-row b {
  color: var(--ink);
  font-size: 13px;
  font-weight: 850;
}

.progress-row small,
.suggestion-row span {
  display: block;
  margin-top: 4px;
  color: var(--muted);
  font-size: 12px;
  line-height: 1.35;
  font-weight: 650;
}

.progress-row > strong {
  color: var(--body);
  font-size: 13px;
  font-weight: 850;
}

.dashboard-suggestions {
  grid-area: suggestions;
  padding: 18px;
  overflow: hidden;
}

.suggestion-row {
  min-height: 52px;
  padding: 7px 12px;
}

.suggestion-row span {
  display: -webkit-box;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 2;
  overflow: hidden;
}

.dense-workbench-dashboard .dashboard-projects {
  min-height: 0;
  display: flex;
  flex-direction: column;
  position: relative;
}

.dense-workbench-dashboard .dashboard-table th,
.dense-workbench-dashboard .dashboard-table td {
  padding: 11px 22px;
  font-size: 13px;
}

.dense-workbench-dashboard .dashboard-projects .dashboard-card-footer {
  position: absolute;
  top: 16px;
  right: 20px;
  margin: 0;
  padding: 0;
}

.dense-workbench-dashboard .dashboard-projects .dashboard-card-footer .btn {
  min-height: 32px;
  border-radius: 9px;
  padding: 0 12px;
  font-size: 12px;
}

.project-summary {
  display: none;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 0;
  margin: 0 22px 22px;
  border: 1px solid var(--line);
  border-radius: 12px;
  background: rgba(255,255,255,.72);
  overflow: hidden;
}

.project-summary div {
  min-height: 58px;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 10px;
  padding: 0 14px;
  border-left: 1px solid var(--line);
}

.project-summary div:first-child {
  border-left: 0;
}

.project-summary span {
  color: var(--muted);
  font-size: 12px;
  font-weight: 750;
}

.project-summary strong {
  color: var(--black);
  font-size: 20px;
  font-weight: 850;
}

.dense-workbench-dashboard .dashboard-overview {
  padding: 18px;
}

.overview-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  margin-top: 16px;
  border-bottom: 1px solid var(--line);
}

.overview-stat {
  min-height: 74px;
  padding: 6px 12px 14px;
  border-left: 1px solid var(--line);
}

.overview-stat:nth-child(odd) {
  border-left: 0;
}

.overview-stat span {
  display: block;
  color: var(--muted);
  font-size: 12px;
  font-weight: 700;
}

.overview-stat strong {
  display: block;
  margin-top: 8px;
  color: var(--black);
  font-size: 24px;
  line-height: 1;
  font-weight: 850;
}

.activity-list {
  margin-top: 14px;
}

.activity-list h4 {
  margin: 0 0 10px;
  color: var(--ink);
  font-size: 14px;
  font-weight: 850;
}

.activity-row {
  min-height: 34px;
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  align-items: center;
  gap: 12px;
  border-top: 1px solid var(--line);
  color: var(--body);
  font-size: 12px;
}

.activity-row:first-of-type {
  border-top: 0;
}

.activity-row span {
  color: var(--body);
  font-size: 12px;
  font-weight: 700;
}

.responsive-workbench-page {
  --content-max: none;
  --workbench-right: clamp(300px, 18vw, 420px);
}

.responsive-workbench-layout {
  display: grid;
  grid-template-columns: minmax(0, 1fr) var(--workbench-right);
  gap: var(--workspace-gap);
  align-items: start;
}

.workbench-stack {
  min-width: 0;
  display: grid;
  gap: var(--workspace-gap);
  align-content: start;
}

.responsive-workbench-layout .workbench-main-stack {
  grid-column: 1;
}

.responsive-workbench-layout .workbench-right-stack {
  grid-column: 2;
}

.responsive-workbench-layout .dashboard-stat-strip,
.responsive-workbench-layout .dashboard-projects,
.responsive-workbench-layout .dashboard-feedback,
.responsive-workbench-layout .dashboard-progress,
.responsive-workbench-layout .dashboard-suggestions,
.responsive-workbench-layout .dashboard-overview {
  grid-area: auto;
}

.responsive-workbench-layout .workspace-card {
  border-radius: 16px;
  background: rgba(255,255,255,.82);
}

.responsive-workbench-layout .dashboard-stat-strip {
  min-height: var(--metric-card-height);
  padding: 0;
}

.responsive-workbench-layout .dashboard-core-stats {
  grid-template-columns: repeat(3, minmax(0, 1fr));
}

.responsive-projects {
  padding: 0;
  overflow: visible;
}

.responsive-projects .table-head {
  padding: 22px 24px 18px;
}

.responsive-projects .table-head .btn {
  min-height: 32px;
  border-radius: 9px;
  padding: 0 12px;
  font-size: 12px;
}

.responsive-projects .dashboard-table {
  min-width: 0;
}

.responsive-projects .dashboard-table th,
.responsive-projects .dashboard-table td {
  padding: 8px 14px;
  font-size: 13px;
}

.responsive-workbench-layout .workbench-project-table.table-card:has(.data-table) {
  border: 1px solid var(--line);
  border-radius: 14px;
  background: #fff;
  box-shadow: var(--shadow-soft);
  padding: 18px;
  overflow-x: auto;
}

.responsive-workbench-layout .workbench-project-table .table-head {
  padding: 0 0 16px;
}

.responsive-workbench-layout .workbench-project-table .table-head h3 {
  color: var(--black);
  font-size: 18px;
  line-height: 1.25;
  font-weight: 850;
}

.workbench-table-tools {
  min-width: 0;
  display: flex;
  align-items: center;
  justify-content: flex-end;
  gap: 14px;
}

.responsive-workbench-layout .workbench-project-table .search {
  width: min(430px, 38vw);
  min-height: var(--control-height);
  border-radius: var(--control-radius);
  padding: 0 12px;
}

.responsive-workbench-layout .workbench-project-table .search input {
  font-size: 13px;
}

.responsive-workbench-layout .workbench-project-table .btn.primary {
  min-height: var(--control-height);
  border-radius: var(--control-radius);
  padding: 0 12px;
  font-size: 13px;
  font-weight: 800;
}

.responsive-workbench-layout .workbench-project-table .data-table {
  min-width: 860px;
  border-color: var(--table-border);
  border-radius: 13px;
  box-shadow: none;
}

.responsive-workbench-layout .workbench-project-table .dashboard-table th:nth-child(1) { width: 34%; }
.responsive-workbench-layout .workbench-project-table .dashboard-table th:nth-child(2) { width: 18%; }
.responsive-workbench-layout .workbench-project-table .dashboard-table th:nth-child(3) { width: 14%; }
.responsive-workbench-layout .workbench-project-table .dashboard-table th:nth-child(4) { width: 18%; }
.responsive-workbench-layout .workbench-project-table .dashboard-table th:nth-child(5) { width: 16%; }

.responsive-workbench-layout .workbench-project-table .dashboard-table th:last-child,
.responsive-workbench-layout .workbench-project-table .dashboard-table td:last-child {
  padding-left: 14px;
  padding-right: 14px;
  text-align: left;
}

.responsive-workbench-layout .workbench-project-table .dashboard-table th {
  padding: 9px 14px;
  color: var(--muted);
  font-size: 14px;
  font-weight: 760;
}

.responsive-workbench-layout .workbench-project-table .dashboard-table td {
  padding: 7px 14px;
  font-size: 14px;
}

.workbench-project-name b,
.workbench-project-name span {
  display: block;
}

.workbench-project-name b {
  max-width: 260px;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
  color: var(--ink);
  font-size: 14px;
  font-weight: 850;
}

.workbench-project-name span {
  max-width: 280px;
  margin-top: 2px;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
  color: var(--muted);
  font-size: 12px;
  font-weight: 650;
}

.responsive-workbench-layout .workbench-project-table .date-cell {
  font-size: 14px;
}

.responsive-workbench-layout .workbench-project-table .status {
  min-height: 22px;
  padding: 0 8px;
  border-radius: 7px;
  font-size: 12px;
  font-weight: 680;
}

.responsive-workbench-layout .workbench-project-table .data-table .btn {
  min-height: 28px;
  border-radius: 8px;
  padding: 0 9px;
  font-size: 12px;
  font-weight: 620;
}

.responsive-workbench-layout .workbench-project-table .clickable-row {
  cursor: pointer;
}

.responsive-workbench-layout .workbench-project-table .clickable-row:focus-visible td {
  outline: 2px solid rgba(17, 18, 20, .24);
  outline-offset: -2px;
}

.responsive-workbench-layout .workbench-project-table .dashboard-table th:nth-child(2),
.responsive-workbench-layout .workbench-project-table .dashboard-table td:nth-child(2),
.responsive-workbench-layout .workbench-project-table .dashboard-table th:nth-child(5),
.responsive-workbench-layout .workbench-project-table .dashboard-table td:nth-child(5) {
  text-align: center;
}

.workbench-table-pagination {
  padding: 18px 6px 0;
}

.responsive-workbench-layout .dashboard-feedback {
  display: block;
  padding: 18px 28px;
}

@media (max-width: 1500px) and (min-width: 981px) {
  .responsive-workbench-layout {
    grid-template-columns: minmax(0, 1fr) minmax(300px, 360px);
    grid-template-areas: none;
    grid-template-rows: none;
  }

  .responsive-workbench-layout > .workbench-stack {
    display: grid;
  }

  .responsive-workbench-layout .workbench-left-stack > :first-child,
  .responsive-workbench-layout .workbench-left-stack > :last-child,
  .responsive-workbench-layout .workbench-left-stack > *,
  .responsive-workbench-layout .dashboard-stat-strip,
  .responsive-workbench-layout .dashboard-projects,
  .responsive-workbench-layout .dashboard-feedback,
  .responsive-workbench-layout .dashboard-progress,
  .responsive-workbench-layout .dashboard-suggestions,
  .responsive-workbench-layout .dashboard-overview {
    grid-area: auto;
  }

  .workbench-left-stack {
    grid-column: 1 / -1;
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .workbench-main-stack {
    grid-column: 1;
  }

  .workbench-right-stack {
    grid-column: 2;
  }
}

.content-grid {
  display: grid;
  grid-template-columns: clamp(220px, 14vw, 280px) minmax(0, 1fr) clamp(280px, 18vw, 340px);
  gap: var(--workspace-gap);
}

.split-grid {
  display: grid;
  grid-template-columns: minmax(0, 1fr) clamp(420px, 26vw, 500px);
  gap: var(--workspace-gap);
}

.agent-grid {
  display: grid;
  grid-template-columns: clamp(200px, 12vw, 240px) minmax(720px, 1fr) minmax(320px, .7fr);
  gap: var(--workspace-gap);
}

.dashboard-grid > *,
.workbench-dashboard > *,
.content-grid > *,
.split-grid > *,
.agent-grid > *,
.experience-layout > *,
.asset-layout > *,
.builder-layout > * {
  min-width: 0;
}

.panel,
.card,
.table-card,
.detail-panel {
  border: 1px solid var(--line);
  border-radius: var(--radius);
  background: rgba(255,255,255,.74);
  box-shadow: var(--shadow-soft);
}

.panel,
.card {
  padding: 18px;
}

.panel + .panel,
.card + .card {
  margin-top: 14px;
}

.panel-head {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: 16px;
  margin-bottom: 14px;
}

.panel h3,
.card h3,
.table-card h3,
.detail-panel h3 {
  margin: 0;
  font-size: 17px;
  line-height: 1.25;
  font-weight: 800;
}

.panel p,
.card p {
  margin: 8px 0 0;
  color: var(--body);
  font-size: 13px;
  line-height: 1.55;
}

.stack {
  display: grid;
  gap: 12px;
}

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

.mini-item,
.action-item,
.source-item,
.policy-item {
  min-height: 66px;
  display: grid;
  grid-template-columns: 42px minmax(0, 1fr) auto;
  align-items: center;
  gap: 12px;
  border: 1px solid var(--line);
  border-radius: 12px;
  background: #fff;
  padding: 11px 12px;
  transition: border-color .15s ease, background .15s ease;
}

.mini-item:hover,
.action-item:hover,
.source-item:hover,
.policy-item:hover {
  border-color: var(--line-strong);
  background: var(--surface-soft);
}

.mini-item b,
.action-item b,
.source-item b,
.policy-item b {
  display: block;
  font-size: 14px;
  font-weight: 750;
}

.mini-item span,
.action-item span,
.source-item span,
.policy-item span {
  display: block;
  margin-top: 3px;
  color: var(--muted);
  font-size: 12px;
  line-height: 1.35;
}

.count {
  color: var(--ink);
  font-size: 17px;
  font-weight: 800;
}

.flow-card {
  overflow: hidden;
  padding: 0;
}

.flow-card h3 {
  padding: 20px 22px;
  border-bottom: 1px solid var(--line);
}

.journey {
  display: grid;
  grid-template-columns: repeat(5, minmax(0, 1fr));
  gap: 0;
  padding: 30px 24px 28px;
}

.journey-step {
  position: relative;
  display: grid;
  justify-items: center;
  text-align: center;
  gap: 10px;
}

.journey-step:not(:last-child)::after {
  content: "";
  position: absolute;
  top: 16px;
  left: calc(50% + 26px);
  width: calc(100% - 52px);
  border-top: 1px dashed #c9c8c3;
}

.step-num {
  width: 34px;
  height: 34px;
  display: grid;
  place-items: center;
  border-radius: 50%;
  background: #101113;
  color: #fff;
  font-size: 13px;
  font-weight: 800;
}

.journey-step.muted .step-num {
  background: #c8c9ca;
}

.journey-icon {
  width: 62px;
  height: 62px;
  display: grid;
  place-items: center;
  border: 1px solid var(--line);
  border-radius: 14px;
  background: #fff;
}

.journey-step b {
  font-size: 14px;
  font-weight: 750;
}

.journey-step span {
  max-width: 132px;
  color: var(--muted);
  font-size: 12px;
  line-height: 1.45;
}

.filter-bar {
  min-height: 60px;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 16px;
  border: 1px solid var(--line);
  border-radius: var(--radius);
  background: rgba(255,255,255,.82);
  padding: 10px 14px;
  margin-bottom: 14px;
  box-shadow: var(--shadow-soft);
}

.tabs {
  display: flex;
  align-items: center;
  gap: 10px;
  flex-wrap: wrap;
}

.tab,
.chip {
  min-height: 34px;
  border: 1px solid var(--line);
  border-radius: 10px;
  background: #fff;
  color: var(--body);
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 7px;
  padding: 0 14px;
  font-size: 13px;
  font-weight: 700;
}

.tab.active,
.chip.active {
  border-color: var(--black);
  background: var(--black);
  color: #fff;
}

.search {
  width: min(360px, 100%);
  min-height: var(--control-height);
  display: grid;
  grid-template-columns: 20px minmax(0, 1fr);
  align-items: center;
  gap: 8px;
  border: 1px solid var(--line);
  border-radius: var(--control-radius);
  background: #fff;
  color: var(--muted);
  padding: 0 12px;
}

.search input {
  width: 100%;
  border: 0;
  outline: 0;
  background: transparent;
  color: var(--ink);
  font-size: 13px;
}

.table-card {
  overflow: hidden;
  overflow-x: auto;
}

.table-card:has(.data-table) {
  border: 1px solid var(--line);
  border-radius: 14px;
  background: #fff;
  box-shadow: var(--shadow-soft);
  padding: 18px;
  overflow: visible;
  overflow-x: auto;
}

.table-head {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 16px;
  padding: 20px 22px 16px;
}

.table-card:has(.data-table) .table-head {
  padding: 0 0 16px;
}

.data-table {
  width: 100%;
  min-width: 760px;
  border-collapse: separate;
  border-spacing: 0;
  border: 1px solid var(--table-border);
  border-radius: 12px;
  background: #fff;
  overflow: hidden;
}

.data-table th,
.data-table td {
  border-top: 1px solid var(--table-border);
  padding: 8px 14px;
  text-align: left;
  vertical-align: middle;
  font-size: 14px;
  line-height: 1.35;
  white-space: nowrap;
}

.data-table th {
  color: #6f737a;
  background: var(--table-head-bg);
  font-weight: 760;
}

.data-table td {
  color: var(--body);
  background: #fff;
  min-height: 48px;
}

.data-table th:last-child,
.data-table td:last-child {
  text-align: left;
}

.data-table tr.active td {
  background: #fbfcfd;
}

.data-table tr:hover td {
  background: var(--table-row-hover);
}

.data-table thead:first-child th {
  border-top: 0;
}

.data-table thead:first-child th:first-child {
  border-top-left-radius: 11px;
}

.data-table thead:first-child th:last-child {
  border-top-right-radius: 11px;
}

.data-table tbody:last-child tr:last-child td:first-child {
  border-bottom-left-radius: 11px;
}

.data-table tbody:last-child tr:last-child td:last-child {
  border-bottom-right-radius: 11px;
}

.table-card:has(.data-table) .table-head h3 {
  font-size: 18px;
  line-height: 1.25;
}

.table-head-tools {
  min-width: 0;
  display: flex;
  align-items: center;
  justify-content: flex-end;
  gap: 12px;
}

.table-head-tools .search {
  width: min(420px, 42vw);
  min-height: var(--control-height);
}

.table-head-tools .btn.primary {
  min-height: var(--control-height);
  border-radius: var(--control-radius);
  white-space: nowrap;
}

.responsive-workbench-layout .responsive-projects.table-card:has(.data-table) {
  padding: 0;
  overflow-x: auto;
  overflow-y: hidden;
}

.responsive-workbench-layout .responsive-projects.table-card:has(.data-table) .table-head {
  padding: 22px 24px 18px;
}

.responsive-workbench-layout .responsive-projects .dashboard-table {
  min-width: 760px;
  border-right: 0;
  border-left: 0;
  border-radius: 0;
}

.responsive-workbench-layout .responsive-projects .dashboard-table th:first-child,
.responsive-workbench-layout .responsive-projects .dashboard-table td:first-child {
  padding-left: 24px;
}

.responsive-workbench-layout .responsive-projects .dashboard-table th:last-child,
.responsive-workbench-layout .responsive-projects .dashboard-table td:last-child {
  padding-right: 18px;
}

.data-table .btn:not(.primary):not(.icon-btn),
.data-table .row-actions .btn {
  min-height: 28px;
  border-color: var(--table-border);
  border-radius: 8px;
  background: #fff;
  color: var(--ink);
  padding: 0 9px;
  font-size: 12px;
  font-weight: 620;
  box-shadow: none;
}

.data-table .row-actions .btn.primary {
  min-height: 28px;
  border-color: var(--black);
  border-radius: 8px;
  background: linear-gradient(#171717, #050505);
  color: #fff;
  padding: 0 10px;
  font-size: 12px;
  font-weight: 720;
  box-shadow: inset 0 1px 0 rgba(255,255,255,.12), 0 8px 18px rgba(0,0,0,.08);
}

.data-table .btn:not(.primary):not(.icon-btn):hover,
.data-table .row-actions .btn:not(.primary):hover {
  border-color: var(--line-strong);
  background: #f9fafb;
}

.name-cell {
  display: grid;
  grid-template-columns: 30px minmax(0, 1fr);
  align-items: center;
  gap: 10px;
  color: var(--ink);
  font-size: 15px;
  font-weight: 800;
}

.tiny-icon {
  width: 28px;
  height: 28px;
  display: grid;
  place-items: center;
  border: 1px solid var(--line);
  border-radius: 8px;
  background: #fff;
  color: var(--ink);
}

.status,
.tag {
  min-height: 24px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  border-radius: 7px;
  padding: 0 9px;
  font-size: 12px;
  font-weight: 800;
  white-space: nowrap;
}

.meta-tag {
  min-height: 36px;
  gap: 8px;
  border: 1px solid #e6e8eb;
  border-radius: 999px;
  background: #f3f4f5;
  color: #23262b;
  padding: 0 15px;
  font-size: 14px;
  font-weight: 820;
  line-height: 1;
  box-shadow: 0 1px 2px rgba(17, 18, 20, .04);
}

.meta-icon {
  width: 18px;
  height: 18px;
  flex: 0 0 18px;
  fill: none;
  stroke: currentColor;
  stroke-width: 2.1;
  stroke-linecap: round;
  stroke-linejoin: round;
  color: #242629;
}

.meta-progress {
  width: 20px;
  height: 20px;
  flex: 0 0 20px;
  border-radius: 50%;
  background: conic-gradient(#101113 0 var(--progress-value, 78%), #d6d8dc var(--progress-value, 78%) 100%);
  box-shadow: inset 0 0 0 1px rgba(16, 17, 19, .06);
  position: relative;
}

.meta-progress::after {
  content: "";
  position: absolute;
  inset: 4px;
  border-radius: inherit;
  background: #f3f4f5;
}

.data-table .status,
.data-table .tag {
  min-height: 22px;
  border-radius: 7px;
  padding: 0 8px;
  font-size: 12px;
  font-weight: 680;
}

.skill-name-cell {
  font-weight: 760;
}

.skill-page {
  --skill-name-width: 320px;
  --name-title-max: 190px;
}

.skill-assets-main {
  display: grid;
  gap: 12px;
}

.skill-page .metric-grid {
  margin-bottom: 0;
}

.skill-page .metric-grid.no-icons .metric {
  height: var(--metric-card-height);
  border-radius: 12px;
  background: rgba(255,255,255,.82);
  align-items: center;
  padding: 10px 16px;
  box-shadow: 0 12px 30px rgba(17,18,20,.038);
}

.skill-page .metric-grid.no-icons .metric-body {
  min-width: 0;
}

.skill-page .metric-grid.no-icons .metric-main {
  display: flex;
  align-items: baseline;
  justify-content: space-between;
  gap: 18px;
}

.skill-page .metric-grid.no-icons .metric .label {
  font-size: 14px;
  color: #3f4248;
  line-height: 1.25;
  white-space: nowrap;
}

.skill-page .metric-grid.no-icons .metric .value {
  margin-top: 0;
  font-size: 26px;
  line-height: .95;
  font-weight: 850;
  text-align: right;
}

.skill-page .metric-grid.no-icons .metric .change {
  margin-top: 6px;
  font-size: 13px;
  line-height: 1.2;
  text-align: right;
}

.skill-management-table {
  min-width: 1040px;
  table-layout: fixed;
}

.skill-page .table-card:has(.skill-management-table) {
  padding: 16px;
}

.skill-page .table-card:has(.skill-management-table) .table-head {
  padding-bottom: 12px;
}

.skill-management-table th:nth-child(1) { width: 28%; }
.skill-management-table th:nth-child(2) { width: 19%; }
.skill-management-table th:nth-child(3) { width: 10%; }
.skill-management-table th:nth-child(4) { width: 10%; }
.skill-management-table th:nth-child(5) { width: 15%; }
.skill-management-table th:nth-child(6) { width: 18%; }

.skill-management-table th,
.skill-management-table td {
  padding: 7px 14px;
}

.skill-management-table td:nth-child(2) {
  overflow: hidden;
  text-overflow: ellipsis;
}

.skill-management-table th:nth-child(3),
.skill-management-table td:nth-child(3),
.skill-management-table th:nth-child(4),
.skill-management-table td:nth-child(4),
.skill-management-table th:nth-child(6),
.skill-management-table td:nth-child(6) {
  text-align: center;
}

.skill-management-table .skill-name-cell > span {
  min-width: 0;
  display: flex;
  flex-wrap: wrap;
  column-gap: 8px;
  row-gap: 2px;
  align-items: center;
}

.skill-management-table .skill-name-cell b {
  width: fit-content;
  max-width: var(--name-title-max);
  font-size: 14px;
  line-height: 1.25;
}

.skill-management-table .skill-name-cell small {
  flex: 0 0 100%;
  max-width: var(--skill-name-width);
  margin-top: 0;
  line-height: 1.25;
}

.skill-management-table .skill-name-cell em {
  grid-column: 2;
  grid-row: 1;
  align-self: center;
  margin-top: 0;
  padding: 1px 6px;
  font-size: 11px;
  line-height: 1.25;
}

.skill-management-table td:last-child > .btn + .btn {
  margin-left: 4px;
}

.skill-row-actions {
  justify-content: flex-start;
  gap: 6px;
}

.skill-table th:nth-child(3),
.skill-table td:nth-child(3),
.skill-table th:nth-child(5),
.skill-table td:nth-child(5),
.skill-table th:nth-child(8),
.skill-table td:nth-child(8),
.agent-table th:nth-child(2),
.agent-table td:nth-child(2),
.agent-table th:nth-child(3),
.agent-table td:nth-child(3),
.agent-table th:nth-child(5),
.agent-table td:nth-child(5),
.agent-table th:nth-child(6),
.agent-table td:nth-child(6),
.tools-management-table th:nth-child(2),
.tools-management-table td:nth-child(2),
.tools-management-table th:nth-child(3),
.tools-management-table td:nth-child(3),
.tools-management-table th:nth-child(4),
.tools-management-table td:nth-child(4),
.tools-management-table th:nth-child(5),
.tools-management-table td:nth-child(5),
.tools-management-table th:nth-child(6),
.tools-management-table td:nth-child(6),
.tools-management-table th:nth-child(7),
.tools-management-table td:nth-child(7),
.tools-management-table th:nth-child(8),
.tools-management-table td:nth-child(8),
.feedback-management-table th:nth-child(3),
.feedback-management-table td:nth-child(3),
.feedback-management-table th:nth-child(6),
.feedback-management-table td:nth-child(6),
.feedback-management-table th:nth-child(7),
.feedback-management-table td:nth-child(7) {
  text-align: center;
}

.agent-table {
  min-width: 0;
  table-layout: fixed;
}

.agent-table th:nth-child(1) { width: 31%; }
.agent-table th:nth-child(2) { width: 17%; }
.agent-table th:nth-child(3) { width: 9%; }
.agent-table th:nth-child(4) { width: 14%; }
.agent-table th:nth-child(5) { width: 6%; }
.agent-table th:nth-child(6) { width: 23%; }

.agent-table th,
.agent-table td {
  padding: 6px 10px;
  font-size: 13px;
}

.agent-name-cell {
  min-width: 0;
  font-size: 13px;
  font-weight: 760;
}

.agent-name-cell > span {
  min-width: 0;
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  column-gap: 8px;
  row-gap: 2px;
}

.agent-name-cell em {
  flex: 0 0 auto;
  padding: 1px 6px;
  border: 1px solid var(--line);
  border-radius: 999px;
  color: #61656d;
  background: rgba(255,255,255,.78);
  font-size: 11px;
  font-style: normal;
  font-weight: 760;
  line-height: 1.25;
}

.agent-name-cell small,
.agent-name-text,
.agent-table .cell-truncate {
  min-width: 0;
  max-width: 100%;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.agent-name-cell small {
  flex: 0 0 100%;
  color: var(--muted);
  font-size: 12px;
  font-weight: 650;
  line-height: 1.25;
}

.agent-table th:nth-child(5),
.agent-table td:nth-child(5) {
  padding-left: 16px;
}

.agent-page .metric-grid.no-icons .metric {
  height: var(--metric-card-height);
}

.agent-page .metric-grid {
  margin-bottom: 0;
}

.agent-assets-main {
  display: grid;
  gap: 12px;
}

.agent-management-table {
  min-width: 1080px;
  table-layout: fixed;
}

.agent-management-table th:nth-child(1) { width: 31%; }
.agent-management-table th:nth-child(2) { width: 17%; }
.agent-management-table th:nth-child(3) { width: 9%; }
.agent-management-table th:nth-child(4) { width: 14%; }
.agent-management-table th:nth-child(5) { width: 6%; }
.agent-management-table th:nth-child(6) { width: 23%; }

.agent-management-table th,
.agent-management-table td {
  padding: 7px 14px;
}

.agent-management-table th:nth-child(2),
.agent-management-table td:nth-child(2),
.agent-management-table th:nth-child(3),
.agent-management-table td:nth-child(3),
.agent-management-table th:nth-child(5),
.agent-management-table td:nth-child(5),
.agent-management-table th:nth-child(6),
.agent-management-table td:nth-child(6) {
  text-align: center;
}

.agent-row-actions {
  justify-content: flex-start;
  gap: 6px;
  flex-wrap: nowrap;
}

.agent-row-actions .btn {
  flex: 0 0 auto;
}

.agent-page .table-card:has(.agent-management-table) {
  overflow: hidden;
}

.agent-table-scroll {
  width: 100%;
  overflow-x: auto;
  overflow-y: hidden;
  overscroll-behavior-x: contain;
  scrollbar-gutter: stable;
  border-radius: 12px;
}

.agent-table-scroll::-webkit-scrollbar {
  height: 10px;
}

.agent-table-scroll::-webkit-scrollbar-track {
  background: #f1f2f4;
  border-radius: 999px;
}

.agent-table-scroll::-webkit-scrollbar-thumb {
  background: #c8ccd2;
  border: 2px solid #f1f2f4;
  border-radius: 999px;
}

.agent-table-scroll::-webkit-scrollbar-thumb:hover {
  background: #aeb4bd;
}

.tool-page .metric-grid.no-icons .metric {
  height: var(--metric-card-height);
}

.tool-page .metric-grid {
  margin-bottom: 0;
}

.tool-assets-main {
  display: grid;
  gap: 10px;
}

.tool-governance-grid {
  display: grid;
  grid-template-columns: minmax(0, 1.15fr) minmax(0, .85fr);
  gap: 10px;
}

.tool-taxonomy-card {
  min-width: 0;
}

.tool-taxonomy-card .panel-head {
  margin-bottom: 12px;
}

.tool-taxonomy-card .panel-head p,
.tool-mapping-center .table-head p,
.tool-relation-card .table-head p {
  margin: 4px 0 0;
  color: var(--muted);
  font-size: 12px;
  font-weight: 650;
}

.taxonomy-card-grid {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 8px;
}

.taxonomy-card-grid.compact {
  grid-template-columns: repeat(2, minmax(0, 1fr));
}

.taxonomy-tile {
  min-height: 84px;
  display: grid;
  align-content: start;
  gap: 5px;
  border: 1px solid var(--line);
  border-radius: 8px;
  background: #fff;
  padding: 10px 12px;
  text-align: left;
}

.taxonomy-tile:hover {
  border-color: var(--line-strong);
  background: var(--surface-soft);
}

.taxonomy-tile span {
  color: var(--muted);
  font-size: 12px;
  font-weight: 760;
}

.taxonomy-tile b {
  color: var(--ink);
  font-size: 22px;
  line-height: 1;
  font-weight: 860;
}

.taxonomy-tile small {
  color: var(--muted);
  font-size: 11px;
  line-height: 1.35;
}

.taxonomy-tile.risk {
  min-height: 74px;
}

.tool-domain-filter {
  display: flex;
  flex-wrap: nowrap;
  gap: 3px;
  width: fit-content;
  max-width: 100%;
  min-height: 36px;
  overflow-x: auto;
  overscroll-behavior-x: contain;
  scrollbar-width: none;
  margin: 0 0 12px;
  padding: 3px;
  border: 1px solid var(--line);
  border-radius: 12px;
  background: #fff;
  box-shadow: 0 1px 2px rgba(15, 23, 42, .04);
}

.tool-domain-filter::-webkit-scrollbar {
  display: none;
}

.domain-filter-chip {
  flex: 0 0 auto;
  min-height: 28px;
  display: inline-flex;
  align-items: center;
  gap: 8px;
  border: 0;
  border-radius: 8px;
  background: transparent;
  padding: 0 11px;
  color: var(--body);
  font-size: 12px;
  font-weight: 760;
  white-space: nowrap;
}

.domain-filter-chip b {
  min-width: 20px;
  height: 20px;
  display: inline-grid;
  place-items: center;
  border-radius: 999px;
  background: var(--surface-soft);
  color: var(--muted);
  font-size: 11px;
}

.domain-filter-chip.active {
  background: #111;
  color: #fff;
  box-shadow: 0 1px 2px rgba(0, 0, 0, .18);
}

.domain-filter-chip.active b {
  background: rgba(255,255,255,.16);
  color: #fff;
}

.tools-management-table {
  min-width: 1320px;
  table-layout: fixed;
}

.tools-management-table th:nth-child(1) { width: 16%; }
.tools-management-table th:nth-child(2) { width: 12%; }
.tools-management-table th:nth-child(3) { width: 25%; }
.tools-management-table th:nth-child(4) { width: 10%; }
.tools-management-table th:nth-child(5) { width: 12%; }
.tools-management-table th:nth-child(6) { width: 10%; }
.tools-management-table th:nth-child(7) { width: 10%; }
.tools-management-table th:nth-child(8) { width: 15%; }

.tools-management-table th,
.tools-management-table td {
  padding: 7px 12px;
  font-size: 13px;
}

.tools-management-table td:nth-child(2) {
  text-align: center;
}

.tools-management-table td:nth-child(3) {
  text-align: left;
}

.tool-name-cell {
  min-width: 0;
  display: block;
}

.tool-name-cell b,
.tool-name-cell small,
.tools-management-table .cell-truncate {
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.tool-name-cell span:last-child {
  min-width: 0;
  display: grid;
  gap: 3px;
}

.tool-name-cell b {
  color: var(--ink);
  font-size: 13px;
  font-weight: 820;
}

.tool-name-cell small {
  color: var(--muted);
  font-size: 12px;
  font-weight: 650;
}

.tool-meta-stack,
.tool-policy-cell {
  min-width: 0;
  display: grid;
  justify-items: center;
  gap: 4px;
}

.tool-meta-stack small,
.tool-policy-cell small {
  max-width: 100%;
  overflow: hidden;
  color: var(--muted);
  font-size: 11px;
  font-weight: 720;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.tool-mapping-cell {
  min-width: 0;
  display: grid;
  gap: 3px;
}

.tool-mapping-cell b {
  min-width: 0;
  overflow: hidden;
  color: var(--ink);
  font-size: 13px;
  font-weight: 820;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.tool-mapping-cell small {
  min-width: 0;
  overflow: hidden;
  color: var(--muted);
  font-size: 12px;
  font-weight: 650;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.tool-health-cell {
  min-width: 0;
  display: grid;
  justify-items: center;
  gap: 3px;
}

.tool-health-cell small {
  color: var(--muted);
  font-size: 11px;
  font-weight: 720;
}

.tool-row-actions {
  justify-content: flex-start;
  gap: 5px;
}

.tool-row-actions .btn {
  padding: 0 10px;
}

.tool-card-actions {
  display: flex;
  align-items: center;
  gap: 8px;
}

.tool-call-grid {
  grid-template-columns: repeat(5, minmax(0, 1fr));
}

.tool-call-item .status {
  max-width: 88px;
}

.governance-center-main {
  display: grid;
  gap: 12px;
}

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

.governance-module-tile {
  min-width: 0;
  height: var(--metric-card-height);
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  align-items: center;
  gap: 8px 12px;
  border: 1px solid var(--line);
  border-radius: 10px;
  background: #fff;
  padding: 10px 16px;
  text-align: left;
}

.governance-module-tile:hover {
  border-color: var(--line-strong);
  background: var(--surface-soft);
}

.governance-module-tile > span:first-child {
  min-width: 0;
  display: block;
}

.governance-module-tile b {
  color: var(--ink);
  font-size: 14px;
  font-weight: 840;
}

.governance-module-tile strong {
  grid-column: 2;
  grid-row: 1;
  color: var(--ink);
  font-size: 16px;
  font-weight: 850;
}

.governance-module-tile .status {
  grid-column: 1 / -1;
  justify-self: start;
  white-space: nowrap;
  min-height: 22px;
  padding: 0 9px;
  font-size: 11px;
}

.governance-lower-grid {
  display: grid;
  grid-template-columns: minmax(0, 1fr) minmax(0, 1fr);
  gap: 12px;
}

.governance-subnav {
  margin-bottom: 12px;
}

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

.governance-workbench-grid {
  display: grid;
  grid-template-columns: minmax(0, 1fr);
  gap: 14px;
}

.governance-focus-panel .table-head {
  align-items: flex-start;
}

.governance-focus-list {
  display: grid;
  gap: 8px;
}

.governance-focus-row {
  box-sizing: border-box;
  min-width: 0;
  min-height: 82px;
  display: grid;
  grid-template-columns: 1fr;
  align-items: stretch;
  gap: 10px;
  border: 1px solid var(--line);
  border-radius: 9px;
  background: #fff;
  overflow: hidden;
  padding: 12px 18px;
  text-align: left;
}

.governance-focus-row.audit {
  grid-template-columns: 1fr;
}

.governance-focus-row:hover {
  border-color: var(--line-strong);
  background: var(--surface-soft);
}

.governance-focus-row > span:first-child {
  min-width: 0;
  display: grid;
  gap: 4px;
}

.governance-focus-row b,
.governance-focus-row small {
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.governance-focus-row b {
  color: var(--ink);
  font-size: 13px;
  font-weight: 830;
}

.governance-focus-row small,
.governance-focus-row em {
  color: var(--muted);
  font-size: 12px;
  font-style: normal;
  font-weight: 690;
}

.governance-focus-row .status {
  justify-self: end;
  white-space: nowrap;
}

.governance-row-footer {
  min-width: 0;
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  align-items: end;
  gap: 10px 16px;
}

.governance-task-meta {
  min-width: 0;
  display: flex;
  align-items: center;
  gap: 6px;
  flex-wrap: wrap;
  overflow: hidden;
  padding-right: 2px;
}

.governance-task-meta em {
  max-width: 100%;
  min-height: 22px;
  display: inline-flex;
  align-items: center;
  border: 1px solid var(--line);
  border-radius: 999px;
  background: var(--surface-soft);
  color: var(--muted);
  overflow: hidden;
  padding: 0 8px;
  font-size: 11px;
  font-style: normal;
  font-weight: 760;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.governance-task-action {
  min-width: max-content;
  display: inline-flex;
  align-items: center;
  justify-content: flex-end;
  gap: 8px;
  flex: 0 0 auto;
  white-space: nowrap;
}

.governance-task-action strong {
  min-height: 28px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  border: 1px solid var(--line);
  border-radius: 8px;
  background: #fff;
  color: var(--ink);
  padding: 0 9px;
  font-size: 12px;
  font-weight: 820;
}

.governance-focus-table {
  min-width: 760px;
  table-layout: fixed;
}

.governance-focus-table tr {
  cursor: pointer;
}

.governance-focus-table th,
.governance-focus-table td {
  overflow: hidden;
  padding: 9px 14px;
  text-overflow: ellipsis;
}

.governance-focus-table td:nth-last-child(-n+2),
.governance-focus-table th:nth-last-child(-n+2) {
  text-align: center;
}

.governance-focus-table td:last-child {
  overflow: visible;
  padding-right: 10px;
  padding-left: 10px;
}

.governance-cell-title {
  min-width: 0;
  display: grid;
  gap: 3px;
}

.governance-cell-title b,
.governance-cell-title small {
  min-width: 0;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.governance-cell-title b {
  color: var(--ink);
  font-size: 13px;
  font-weight: 830;
}

.governance-cell-title small {
  color: var(--muted);
  font-size: 11px;
  font-weight: 700;
}

.governance-focus-table code {
  border: 1px solid var(--line);
  border-radius: 6px;
  background: var(--surface-soft);
  padding: 2px 6px;
  color: var(--body);
  font-size: 12px;
}

.governance-focus-table b {
  color: var(--ink);
  font-size: 13px;
  font-weight: 820;
}

.governance-todo-table th:nth-child(1) { width: 34%; }
.governance-todo-table th:nth-child(2) { width: 12%; }
.governance-todo-table th:nth-child(3) { width: 13%; }
.governance-todo-table th:nth-child(4) { width: 17%; }
.governance-todo-table th:nth-child(5) { width: 104px; }
.governance-todo-table th:nth-child(6) { width: 86px; }

.governance-audit-table {
  min-width: 860px;
}

.governance-audit-table th:nth-child(1) { width: 112px; }
.governance-audit-table th:nth-child(2) { width: 20%; }
.governance-audit-table th:nth-child(3) { width: 18%; }
.governance-audit-table th:nth-child(4) { width: 17%; }
.governance-audit-table th:nth-child(5) { width: 134px; }
.governance-audit-table th:nth-child(6) { width: 96px; }
.governance-audit-table th:nth-child(7) { width: 86px; }

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

.governance-quick-link {
  min-width: 0;
  min-height: 72px;
  display: grid;
  gap: 5px;
  border: 1px solid var(--line);
  border-radius: 10px;
  background: #fff;
  padding: 12px 14px;
  text-align: left;
}

.governance-quick-link:hover {
  border-color: var(--line-strong);
  background: var(--surface-soft);
}

.governance-quick-link span,
.governance-quick-link small {
  color: var(--muted);
  font-size: 12px;
  font-weight: 700;
}

.governance-quick-link b {
  min-width: 0;
  overflow: hidden;
  color: var(--ink);
  font-size: 13px;
  font-weight: 830;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.governance-preview-card .table-head {
  align-items: flex-start;
}

.governance-preview-list {
  display: grid;
  gap: 8px;
}

.governance-preview-row {
  min-width: 0;
  min-height: 50px;
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  align-items: center;
  gap: 12px;
  border: 1px solid var(--line);
  border-radius: 10px;
  background: #fff;
  padding: 9px 12px;
  text-align: left;
}

.governance-preview-row:hover {
  border-color: var(--line-strong);
  background: var(--surface-soft);
}

.governance-preview-row > span:first-child {
  min-width: 0;
  display: grid;
  gap: 3px;
}

.governance-preview-row b,
.governance-preview-row span span {
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.governance-preview-row b {
  color: var(--ink);
  font-size: 13px;
  font-weight: 820;
}

.governance-preview-row span span {
  color: var(--muted);
  font-size: 12px;
  font-weight: 680;
}

.governance-table-card .table-head {
  align-items: center;
}

.governance-table-card .search {
  width: min(420px, 42vw);
}

.governance-list-table {
  min-width: 1080px;
  table-layout: fixed;
}

.governance-list-table th,
.governance-list-table td {
  overflow: hidden;
  text-overflow: ellipsis;
}

.governance-list-table code {
  max-width: 100%;
  display: inline-block;
  overflow: hidden;
  text-overflow: ellipsis;
  vertical-align: middle;
}

.governance-list-table th:last-child,
.governance-list-table td:last-child {
  width: 126px;
  overflow: visible;
  padding-right: 10px;
  padding-left: 10px;
  text-align: left;
}

.governance-list-table td b,
.governance-list-table td small {
  min-width: 0;
  display: block;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.governance-list-table td small {
  margin-top: 3px;
  color: var(--muted);
  font-size: 11px;
  font-weight: 700;
}

.governance-row-actions {
  min-width: max-content;
  justify-content: flex-start;
  gap: 5px;
}

.governance-row-actions .btn {
  padding: 0 10px;
}

.governance-detail-drawer {
  width: min(720px, 100vw);
}

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

.governance-form-grid .field.wide {
  grid-column: 1 / -1;
}

.governance-detail-list {
  display: grid;
  gap: 8px;
}

.governance-detail-list p {
  min-width: 0;
  display: grid;
  grid-template-columns: 120px minmax(0, 1fr);
  align-items: center;
  gap: 12px;
  border: 1px solid var(--line);
  border-radius: 10px;
  background: #fff;
  padding: 10px 12px;
  margin: 0;
}

.governance-detail-list p > span:first-child {
  color: var(--muted);
  font-size: 12px;
  font-weight: 740;
}

.governance-detail-list b {
  min-width: 0;
  overflow: hidden;
  color: var(--ink);
  font-size: 13px;
  font-weight: 820;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.governance-detail-list code {
  border: 1px solid var(--line);
  border-radius: 6px;
  background: var(--surface-soft);
  padding: 2px 6px;
  color: var(--body);
  font-size: 12px;
}

.governance-permission-table,
.governance-trace-table {
  table-layout: fixed;
}

.governance-permission-table {
  min-width: 1120px;
}

.governance-trace-table {
  min-width: 1204px;
}

.governance-list-table td:has(.status),
.governance-list-table th:nth-last-child(2) {
  text-align: center;
}

.governance-list-table.tool-mapping-table {
  min-width: 1120px;
}

.governance-list-table.tool-mapping-table th:nth-child(1) { width: 18%; }
.governance-list-table.tool-mapping-table th:nth-child(2) { width: 15%; }
.governance-list-table.tool-mapping-table th:nth-child(3) { width: 13%; }
.governance-list-table.tool-mapping-table th:nth-child(4) { width: 17%; }
.governance-list-table.tool-mapping-table th:nth-child(5) { width: 16%; }
.governance-list-table.tool-mapping-table th:nth-child(6) { width: 9%; }
.governance-list-table.tool-mapping-table th:nth-child(7) { width: 126px; }

.governance-list-table.tool-relation-table {
  min-width: 1160px;
}

.governance-list-table.tool-relation-table th:nth-child(1) { width: 17%; }
.governance-list-table.tool-relation-table th:nth-child(2) { width: 15%; }
.governance-list-table.tool-relation-table th:nth-child(3) { width: 18%; }
.governance-list-table.tool-relation-table th:nth-child(4) { width: 14%; }
.governance-list-table.tool-relation-table th:nth-child(5) { width: 15%; }
.governance-list-table.tool-relation-table th:nth-child(6) { width: 92px; }
.governance-list-table.tool-relation-table th:nth-child(7) { width: 126px; }

.governance-permission-table tr,
.governance-trace-table tr {
  cursor: pointer;
}

.governance-permission-table th:nth-child(1) { width: 20%; }
.governance-permission-table th:nth-child(2) { width: 15%; }
.governance-permission-table th:nth-child(3) { width: 24%; }
.governance-permission-table th:nth-child(4) { width: 14%; }
.governance-permission-table th:nth-child(5) { width: 10%; }
.governance-permission-table th:nth-child(6) { width: 92px; }
.governance-permission-table th:nth-child(7) { width: 126px; }

.governance-trace-table th:nth-child(1) { width: 112px; }
.governance-trace-table th:nth-child(2) { width: 18%; }
.governance-trace-table th:nth-child(3) { width: 15%; }
.governance-trace-table th:nth-child(4) { width: 15%; }
.governance-trace-table th:nth-child(5) { width: 14%; }
.governance-trace-table th:nth-child(6) { width: 92px; }
.governance-trace-table th:nth-child(7) { width: 156px; }
.governance-trace-table th:nth-child(8) { width: 126px; }

.governance-trace-table th:nth-child(6),
.governance-trace-table td:nth-child(6),
.governance-permission-table th:nth-child(6),
.governance-permission-table td:nth-child(6) {
  text-align: center;
}

.governance-permission-table b,
.governance-trace-table b {
  color: var(--ink);
  font-size: 13px;
  font-weight: 820;
}

.governance-trace-table code {
  border: 1px solid var(--line);
  border-radius: 6px;
  background: var(--surface-soft);
  padding: 2px 6px;
  color: var(--body);
  font-size: 12px;
}

.tool-mapping-layout {
  display: grid;
  grid-template-columns: 190px minmax(0, 1fr);
  gap: 12px;
}

.tool-model-stack {
  display: grid;
  align-content: start;
  gap: 8px;
}

.model-chip {
  min-height: 34px;
  display: flex;
  align-items: center;
  border: 1px solid var(--line);
  border-radius: 8px;
  background: var(--surface-soft);
  padding: 0 12px;
  color: var(--body);
  font-size: 13px;
  font-weight: 790;
}

.tool-mapping-table-wrap {
  min-width: 0;
  overflow-x: auto;
}

.tool-mapping-table {
  min-width: 860px;
  table-layout: fixed;
}

.tool-mapping-table th:nth-child(1) { width: 17%; }
.tool-mapping-table th:nth-child(2) { width: 15%; }
.tool-mapping-table th:nth-child(3) { width: 14%; }
.tool-mapping-table th:nth-child(4) { width: 20%; }
.tool-mapping-table th:nth-child(5) { width: 20%; }
.tool-mapping-table th:nth-child(6) { width: 14%; }

.tool-mapping-table td,
.tool-mapping-table th {
  padding: 8px 12px;
  font-size: 13px;
}

.tool-mapping-table code {
  border: 1px solid var(--line);
  border-radius: 6px;
  background: var(--surface-soft);
  padding: 2px 6px;
  color: var(--body);
  font-size: 12px;
}

.tool-relation-table {
  min-width: 1040px;
  table-layout: fixed;
}

.tool-relation-table th:nth-child(1) { width: 18%; }
.tool-relation-table th:nth-child(2) { width: 17%; }
.tool-relation-table th:nth-child(3) { width: 20%; }
.tool-relation-table th:nth-child(4) { width: 15%; }
.tool-relation-table th:nth-child(5) { width: 18%; }
.tool-relation-table th:nth-child(6) { width: 12%; }

.tool-relation-table td {
  vertical-align: middle;
}

.tool-relation-table td:not(:last-child) {
  text-align: left;
}

.tool-relation-table td:last-child,
.tool-relation-table th:last-child {
  text-align: center;
}

.tool-relation-table tr {
  cursor: pointer;
}

.tool-relation-table b,
.tool-relation-table small {
  min-width: 0;
  display: block;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.tool-relation-table b {
  color: var(--ink);
  font-size: 13px;
  font-weight: 820;
}

.tool-relation-table small {
  margin-top: 3px;
  color: var(--muted);
  font-size: 11px;
  font-weight: 700;
}

.run-dot.danger {
  background: var(--red);
}

.tool-detail-metrics,
.tool-assertion-grid,
.tool-publish-summary {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 8px;
}

.tool-detail-metrics > div,
.tool-assertion-grid > div,
.tool-publish-summary > div {
  min-width: 0;
  display: grid;
  gap: 5px;
  border: 1px solid var(--line);
  border-radius: 10px;
  background: #fff;
  padding: 10px 12px;
}

.tool-detail-metrics span,
.tool-assertion-grid span,
.tool-publish-summary span {
  color: var(--muted);
  font-size: 12px;
  font-weight: 700;
}

.tool-detail-metrics b {
  min-width: 0;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
  color: var(--ink);
  font-size: 13px;
  font-weight: 830;
}

.tool-drawer-call-list {
  display: grid;
  gap: 8px;
}

.tool-drawer-call {
  min-height: 48px;
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  align-items: center;
  gap: 12px;
  border: 1px solid var(--line);
  border-radius: 10px;
  background: #fff;
  padding: 9px 12px;
  text-align: left;
}

.tool-drawer-call:hover {
  background: var(--surface-soft);
}

.tool-drawer-call span:first-child {
  min-width: 0;
  display: grid;
  gap: 3px;
}

.tool-drawer-call b,
.tool-drawer-call small {
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.tool-drawer-call b {
  color: var(--body);
  font-size: 13px;
  font-weight: 820;
}

.tool-drawer-call small {
  color: var(--muted);
  font-size: 12px;
}

.feedback-page .metric-grid {
  margin-bottom: 0;
}

.feedback-page .metric-grid.no-icons .metric {
  height: var(--metric-card-height);
}

.feedback-assets-main {
  display: grid;
  gap: 12px;
}

.feedback-flow-page .flow-strip {
  margin-top: 8px;
}

.asset-layout.feedback-full-layout {
  grid-template-columns: minmax(0, 1fr);
}

.asset-layout.feedback-flow-layout {
  grid-template-columns: minmax(260px, 320px) minmax(0, 1fr);
}

.feedback-left-rail {
  display: grid;
  gap: 12px;
  align-content: start;
}

.feedback-flow-work-card {
  min-width: 0;
}

.feedback-flow-queue-card .panel-head {
  align-items: center;
  margin-bottom: 12px;
}

.feedback-flow-queue {
  display: grid;
  gap: 8px;
}

.feedback-flow-queue-item {
  width: 100%;
  min-width: 0;
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  align-items: center;
  gap: 10px;
  border: 1px solid #e3e7ed;
  border-radius: 10px;
  background: #fff;
  color: var(--body);
  padding: 10px;
  text-align: left;
}

.feedback-flow-queue-item:hover,
.feedback-flow-queue-item.active {
  border-color: #111;
  box-shadow: 0 12px 24px rgba(17, 18, 20, .055);
}

.feedback-flow-queue-item span,
.feedback-flow-select-card {
  min-width: 0;
}

.feedback-flow-queue-item b,
.feedback-flow-queue-item small {
  display: block;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.feedback-flow-queue-item b {
  color: var(--ink);
  font-size: 13px;
  font-weight: 830;
}

.feedback-flow-queue-item small {
  margin-top: 4px;
  color: var(--muted);
  font-size: 11px;
  font-weight: 680;
}

.feedback-flow-context-list {
  display: grid;
  gap: 8px;
  margin-top: 12px;
}

.feedback-flow-context-list p {
  display: grid;
  gap: 4px;
  border: 1px solid #edf0f3;
  border-radius: 10px;
  background: var(--surface-soft);
  margin: 0;
  padding: 9px 10px;
}

.feedback-flow-context-list span {
  color: var(--muted);
  font-size: 11px;
  font-weight: 760;
}

.feedback-flow-context-list b {
  color: var(--ink);
  font-size: 12px;
  line-height: 1.4;
  font-weight: 780;
}

.feedback-flow-select-grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 12px;
}

.feedback-flow-select-card {
  min-height: 156px;
  display: grid;
  align-content: start;
  gap: 9px;
  border: 1px solid #e3e7ed;
  border-radius: 14px;
  background: #fff;
  color: var(--body);
  padding: 14px;
  text-align: left;
}

.feedback-flow-select-card:hover,
.feedback-flow-select-card.active {
  border-color: #111;
  box-shadow: 0 16px 32px rgba(17, 18, 20, .06);
}

.feedback-flow-select-head {
  display: flex;
  flex-wrap: wrap;
  gap: 6px;
}

.feedback-flow-select-card b {
  color: var(--ink);
  font-size: 15px;
  line-height: 1.3;
  font-weight: 860;
}

.feedback-flow-select-card small,
.feedback-flow-select-card em {
  color: var(--muted);
  font-size: 12px;
  line-height: 1.45;
  font-style: normal;
  font-weight: 650;
}

.feedback-flow-select-card em {
  color: var(--body);
  font-weight: 760;
}

.feedback-flow-cause-list,
.feedback-flow-run-list {
  display: grid;
  gap: 8px;
}

.feedback-flow-run-list article {
  min-width: 0;
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  gap: 6px 12px;
  border: 1px solid #edf0f3;
  border-radius: 10px;
  background: var(--surface-soft);
  padding: 10px 12px;
}

.feedback-flow-run-list b,
.feedback-flow-run-list span {
  min-width: 0;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.feedback-flow-run-list b {
  color: var(--ink);
  font-size: 13px;
  font-weight: 830;
}

.feedback-flow-run-list span {
  color: var(--muted);
  font-size: 12px;
  font-weight: 680;
}

.feedback-step-action-card {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  gap: 12px;
  align-items: center;
}

.feedback-step-action-card h3 {
  margin: 0;
  color: var(--ink);
  font-size: 15px;
  line-height: 1.3;
  font-weight: 850;
}

.feedback-step-action-card .deposition-card-copy {
  margin-top: 4px;
}

.feedback-step-action-card .btn {
  min-width: 132px;
}

.feedback-step-gate {
  grid-column: 1 / -1;
  margin: 0;
  border: 1px solid #f2d49b;
  border-radius: 10px;
  background: #fff8ea;
  color: #9a6200;
  padding: 9px 11px;
  font-size: 12px;
  line-height: 1.45;
  font-weight: 760;
}

.governance-tool-nav {
  display: flex;
  flex-wrap: wrap;
  gap: 6px;
  margin: -2px 0 14px;
}

.governance-tool-item {
  min-height: 34px;
  border: 1px solid var(--line);
  border-radius: 9px;
  background: #fff;
  color: var(--body);
  padding: 0 14px;
  font-size: 13px;
  font-weight: 780;
}

.governance-tool-item:hover {
  border-color: var(--line-strong);
  background: var(--surface-soft);
}

.governance-tool-item.active {
  border-color: #111;
  background: #111;
  color: #fff;
}

.feedback-context-banner {
  position: sticky;
  top: 8px;
  z-index: 8;
  display: grid;
  grid-template-columns: minmax(0, 1fr) max-content;
  gap: 18px;
  align-items: start;
  border: 1px solid #c6d1df;
  border-radius: var(--radius);
  background: rgba(255, 255, 255, .96);
  margin-bottom: 12px;
  padding: 15px 18px;
  box-shadow: var(--shadow-soft);
  backdrop-filter: blur(10px);
}

.feedback-context-kicker {
  display: flex;
  flex-wrap: wrap;
  gap: 6px;
  align-items: center;
}

.feedback-context-banner h3 {
  margin: 8px 0 5px;
  color: var(--ink);
  font-size: 18px;
  line-height: 1.3;
  font-weight: 880;
}

.feedback-context-banner p {
  margin: 0;
  color: var(--muted);
  font-size: 12px;
  line-height: 1.5;
}

.feedback-context-meta {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 8px;
  margin-top: 12px;
}

.feedback-context-meta span {
  min-width: 0;
  display: grid;
  gap: 3px;
  border: 1px solid var(--line);
  border-radius: 10px;
  background: var(--surface-soft);
  padding: 8px 10px;
  color: var(--body);
  font-size: 12px;
  line-height: 1.35;
  font-weight: 720;
}

.feedback-context-meta b {
  color: var(--muted);
  font-size: 11px;
  line-height: 1.2;
  font-weight: 760;
}

.feedback-context-actions,
.feedback-rule-draft-actions {
  display: flex;
  flex-wrap: wrap;
  justify-content: flex-end;
  gap: 8px;
}

.feedback-context-actions {
  min-width: 260px;
}

.feedback-evidence-panel,
.feedback-rule-draft-panel {
  display: grid;
  gap: 12px;
  border: 1px solid var(--line);
  border-radius: var(--radius);
  background: #fff;
  margin-bottom: 12px;
  padding: 16px;
  box-shadow: var(--shadow-soft);
}

.feedback-evidence-panel .panel-head,
.feedback-rule-draft-panel .panel-head {
  margin-bottom: 0;
}

.feedback-evidence-panel .panel-head p,
.feedback-rule-draft-panel .panel-head p {
  margin: 4px 0 0;
  color: var(--muted);
  font-size: 12px;
  line-height: 1.5;
}

.feedback-evidence-list {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 10px;
}

.feedback-evidence-list article {
  min-width: 0;
  display: grid;
  gap: 6px;
  border: 1px solid var(--line);
  border-radius: 10px;
  background: var(--surface-soft);
  padding: 12px;
}

.feedback-evidence-list span {
  color: var(--muted);
  font-size: 11px;
  font-weight: 800;
}

.feedback-evidence-list b {
  color: var(--body);
  font-size: 13px;
  line-height: 1.5;
  font-weight: 740;
}

.feedback-rule-draft-panel .entry-edit-grid {
  grid-template-columns: repeat(2, minmax(0, 1fr));
}

.feedback-rule-draft-panel .field:has(.textarea) {
  grid-column: span 1;
}

.feedback-scope-strip {
  display: grid;
  grid-template-columns: minmax(0, 1fr) max-content;
  align-items: center;
  gap: 12px;
  border: 1px solid #d7dee8;
  border-radius: 10px;
  background: rgba(255,255,255,.86);
  margin-bottom: 12px;
  padding: 10px 12px;
}

.feedback-scope-strip > div:first-child {
  min-width: 0;
  display: flex;
  align-items: center;
  gap: 8px;
}

.feedback-scope-strip b,
.feedback-scope-strip span {
  min-width: 0;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.feedback-scope-strip b {
  color: var(--ink);
  font-size: 13px;
  font-weight: 820;
}

.feedback-scope-strip span {
  color: var(--muted);
  font-size: 12px;
  font-weight: 700;
}

.feedback-scope-actions {
  display: flex;
  justify-content: flex-end;
  gap: 8px;
}

.feedback-search {
  grid-template-columns: minmax(0, 1fr);
}

.table-count-note {
  color: var(--muted);
  font-size: 12px;
  font-weight: 720;
}

.feedback-management-table {
  min-width: 1240px;
  table-layout: fixed;
}

.feedback-management-table th:nth-child(1) { width: 19%; }
.feedback-management-table th:nth-child(2) { width: 18%; }
.feedback-management-table th:nth-child(3) { width: 12%; }
.feedback-management-table th:nth-child(4) { width: 19%; }
.feedback-management-table th:nth-child(5) { width: 12%; }
.feedback-management-table th:nth-child(6) { width: 7%; }
.feedback-management-table th:nth-child(7) { width: 13%; }

.feedback-management-table th,
.feedback-management-table td {
  padding: 7px 12px;
  font-size: 13px;
}

.feedback-name-cell,
.feedback-source-cell,
.feedback-stage-cell,
.feedback-next-step-cell {
  min-width: 0;
  display: grid;
  gap: 3px;
}

.feedback-name-cell b,
.feedback-source-cell b,
.feedback-next-step-cell b,
.feedback-name-cell small,
.feedback-source-cell small,
.feedback-stage-cell small,
.feedback-next-step-cell small,
.feedback-management-table .cell-truncate {
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.feedback-name-cell b,
.feedback-source-cell b,
.feedback-next-step-cell b {
  color: var(--ink);
  font-size: 13px;
  font-weight: 820;
}

.feedback-name-cell small,
.feedback-source-cell small,
.feedback-stage-cell small,
.feedback-next-step-cell small {
  color: var(--muted);
  font-size: 11px;
  font-weight: 700;
}

.feedback-sla {
  color: var(--body);
  font-size: 12px;
  font-weight: 760;
}

.feedback-sla.hot {
  color: var(--red);
}

.feedback-row-actions {
  gap: 5px;
}

.feedback-row-actions .btn {
  padding: 0 9px;
}

.feedback-ops-page .metric-grid {
  margin-bottom: 12px;
}

.feedback-ops-page .metric-grid.no-icons {
  gap: 14px;
}

.feedback-ops-page .metric-grid.no-icons .metric {
  border-radius: 12px;
  background: rgba(255,255,255,.82);
  align-items: center;
  padding: 10px 16px;
  box-shadow: 0 12px 30px rgba(17,18,20,.038);
}

.feedback-ops-page .metric-grid.no-icons .metric-main {
  display: flex;
  align-items: baseline;
  justify-content: space-between;
  gap: 18px;
}

.feedback-ops-page .metric-grid.no-icons .metric .label {
  color: #3f4248;
  font-size: 14px;
  line-height: 1.25;
  white-space: nowrap;
}

.feedback-ops-page .metric-grid.no-icons .metric .value {
  margin-top: 0;
  font-size: 26px;
  line-height: .95;
  font-weight: 850;
  text-align: right;
}

.feedback-ops-page .metric-grid.no-icons .metric .change {
  margin-top: 6px;
  font-size: 13px;
  line-height: 1.2;
  text-align: right;
}

.feedback-ops-grid {
  grid-template-columns: minmax(0, 1fr) minmax(300px, 360px);
}

.feedback-ops-table-layout {
  display: grid;
  grid-template-columns: minmax(0, 1fr);
}

.feedback-ops-table-layout .table-card {
  overflow-x: auto;
}

.feedback-ops-page .data-table .clickable-row {
  cursor: pointer;
}

.feedback-ops-page .data-table .clickable-row:hover td {
  background: var(--table-row-hover);
}

.feedback-ops-page .data-table .clickable-row.active td {
  background: #fbfcfd;
}

.feedback-ops-page .data-table .clickable-row:focus-visible td {
  outline: 2px solid rgba(17, 18, 20, .24);
  outline-offset: -2px;
}

.run-records-table {
  min-width: 1180px;
  table-layout: fixed;
}

.run-records-table th:nth-child(1) { width: 20%; }
.run-records-table th:nth-child(2) { width: 15%; }
.run-records-table th:nth-child(3) { width: 15%; }
.run-records-table th:nth-child(4) { width: 18%; }
.run-records-table th:nth-child(5) { width: 10%; }
.run-records-table th:nth-child(6) { width: 9%; }
.run-records-table th:nth-child(7) { width: 13%; }

.rule-library-table {
  min-width: 1240px;
  table-layout: fixed;
}

.rule-library-table th:nth-child(1) { width: 18%; }
.rule-library-table th:nth-child(2) { width: 22%; }
.rule-library-table th:nth-child(3) { width: 17%; }
.rule-library-table th:nth-child(4) { width: 10%; }
.rule-library-table th:nth-child(5) { width: 13%; }
.rule-library-table th:nth-child(6) { width: 8%; }
.rule-library-table th:nth-child(7) { width: 12%; }

.audit-log-table {
  min-width: 980px;
  table-layout: fixed;
}

.audit-log-table th:nth-child(1) { width: 17%; }
.audit-log-table th:nth-child(2) { width: 13%; }
.audit-log-table th:nth-child(3) { width: 25%; }
.audit-log-table th:nth-child(4) { width: 25%; }
.audit-log-table th:nth-child(5) { width: 10%; }
.audit-log-table th:nth-child(6) { width: 10%; }

.run-records-table th,
.run-records-table td,
.rule-library-table th,
.rule-library-table td,
.audit-log-table th,
.audit-log-table td {
  padding: 8px 12px;
  font-size: 13px;
}

.ops-name-cell {
  min-width: 0;
  display: grid;
  gap: 3px;
}

.ops-name-cell b,
.ops-name-cell small {
  min-width: 0;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.ops-name-cell b {
  color: var(--ink);
  font-size: 13px;
  font-weight: 820;
}

.ops-name-cell small {
  color: var(--muted);
  font-size: 11px;
  font-weight: 700;
}

.feedback-ops-detail {
  align-content: start;
}

.feedback-ops-drawer {
  width: min(520px, calc(100vw - 32px));
}

.feedback-ops-drawer .skill-source-line {
  margin-top: 8px;
}

.feedback-ops-drawer .skill-detail-scroll {
  padding-top: 2px;
  padding-bottom: 8px;
}

.feedback-ops-drawer .skill-detail-scroll .detail-section:first-child {
  border-top: 0;
}

.feedback-ops-drawer .detail-section {
  padding-bottom: 18px;
}

.rule-test-run-modal {
  width: min(760px, calc(100vw - 28px));
}

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

.rule-test-input-grid .field {
  margin: 0;
}

.rule-test-input-grid .field.full {
  grid-column: 1 / -1;
}

.rule-test-input-grid .textarea {
  min-height: 74px;
}

.rule-test-case-list {
  display: grid;
}

.ops-flow {
  display: flex;
  flex-wrap: wrap;
  gap: 6px;
}

.ops-flow span {
  border: 1px solid var(--line);
  border-radius: 8px;
  background: var(--surface-soft);
  padding: 5px 8px;
  color: var(--body);
  font-size: 12px;
  font-weight: 760;
}

.danger-text {
  color: var(--red);
  font-weight: 820;
}

.feedback-detail-meta {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 8px;
  border-bottom: 1px solid var(--line);
  padding: 16px 0 14px;
}

.feedback-detail-meta + .skill-detail-section {
  border-top: 0;
  padding-top: 18px;
}

.feedback-detail-meta > div {
  min-width: 0;
  display: grid;
  gap: 4px;
  border: 1px solid var(--line);
  border-radius: 10px;
  background: #fff;
  padding: 9px 10px;
}

.feedback-detail-meta span {
  color: var(--muted);
  font-size: 11px;
  font-weight: 720;
}

.feedback-detail-meta b {
  min-width: 0;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
  color: var(--ink);
  font-size: 13px;
  font-weight: 830;
}

.feedback-loop-progress {
  display: grid;
  grid-template-columns: repeat(6, minmax(0, 1fr));
  gap: 0;
  overflow: hidden;
  border: 1px solid var(--line);
  border-radius: 12px;
  background: #fff;
  margin-bottom: 14px;
  box-shadow: var(--shadow-soft);
}

.feedback-loop-step {
  min-width: 0;
  min-height: 62px;
  display: grid;
  grid-template-columns: 24px minmax(0, 1fr);
  align-items: center;
  gap: 8px;
  border-right: 1px solid var(--line);
  padding: 10px 12px;
  color: var(--muted);
}

.feedback-loop-step:last-child {
  border-right: 0;
}

.feedback-loop-step span {
  width: 24px;
  height: 24px;
  display: grid;
  place-items: center;
  border-radius: 999px;
  background: var(--surface-soft);
  color: var(--muted);
  font-size: 11px;
  font-weight: 860;
}

.feedback-loop-step b {
  min-width: 0;
  overflow: hidden;
  color: inherit;
  font-size: 12px;
  line-height: 1.25;
  font-weight: 820;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.feedback-loop-step.done span,
.feedback-loop-step.active span {
  background: #111;
  color: #fff;
}

.feedback-loop-step.done,
.feedback-loop-step.active {
  color: var(--ink);
}

.feedback-loop-step.active {
  background: #fafafa;
  box-shadow: inset 0 0 0 1px #111;
}

.feedback-current-action {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  gap: 16px;
  align-items: center;
  border: 1px solid #111;
  border-radius: var(--radius);
  background: #fff;
  margin-bottom: 14px;
  padding: 16px 18px;
  box-shadow: var(--shadow-soft);
}

.feedback-current-action h3 {
  margin: 8px 0 4px;
  color: var(--ink);
  font-size: 18px;
  line-height: 1.25;
  font-weight: 880;
}

.feedback-current-action p {
  margin: 0;
  color: var(--body);
  font-size: 14px;
  line-height: 1.45;
  font-weight: 760;
}

.feedback-current-action small {
  display: block;
  margin-top: 6px;
  color: var(--muted);
  font-size: 12px;
  line-height: 1.45;
}

.feedback-current-action-controls {
  display: flex;
  flex-wrap: wrap;
  justify-content: flex-end;
  gap: 8px;
}

.feedback-close-panel {
  display: grid;
  gap: 12px;
  border: 1px solid var(--line);
  border-radius: var(--radius);
  background: rgba(255,255,255,.9);
  margin: 14px 0;
  padding: 16px;
  box-shadow: var(--shadow-soft);
}

.feedback-close-panel .panel-head {
  margin-bottom: 0;
}

.feedback-close-panel .panel-head p {
  margin: 4px 0 0;
  color: var(--muted);
  font-size: 12px;
  line-height: 1.45;
}

.feedback-close-grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 10px;
}

.feedback-close-grid article {
  min-width: 0;
  display: grid;
  gap: 5px;
  border: 1px solid var(--line);
  border-radius: 10px;
  background: #fff;
  padding: 12px;
}

.feedback-close-grid span,
.feedback-close-grid small {
  color: var(--muted);
  font-size: 12px;
  line-height: 1.4;
}

.feedback-close-grid b {
  min-width: 0;
  overflow: hidden;
  color: var(--ink);
  font-size: 18px;
  line-height: 1.2;
  font-weight: 880;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.feedback-close-actions {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
}

.feedback-close-actions .btn[disabled] {
  opacity: .46;
  cursor: not-allowed;
}

.feedback-action-grid,
.feedback-tool-actions {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 8px;
}

.feedback-action {
  min-height: 48px;
  display: grid;
  justify-items: center;
  align-content: center;
  border: 1px solid var(--line);
  border-radius: 10px;
  background: #fff;
  color: var(--ink);
  padding: 10px 12px;
  text-align: center;
}

.feedback-action:hover {
  border-color: var(--line-strong);
  background: var(--surface-soft);
}

.feedback-action b {
  font-size: 12px;
  line-height: 1.25;
  font-weight: 820;
}

.feedback-asset-detail-page .page-header .header-actions {
  gap: 10px;
}

.feedback-asset-detail-page .page-header .header-actions .btn {
  min-height: 38px;
  border-radius: 9px;
  padding: 0 16px;
  font-size: 14px;
}

.feedback-detail-content .feedback-action-grid {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
}

.feedback-detail-content .feedback-action {
  width: auto;
  min-width: 136px;
  min-height: 38px;
  border-radius: 9px;
  padding: 0 16px;
}

.feedback-detail-content .feedback-action b {
  font-size: 13px;
}

.feedback-asset-detail-page .asset-side-actions {
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 8px;
}

.feedback-asset-detail-page .asset-side-actions .btn {
  min-height: 38px;
  border-radius: 9px;
  font-size: 13px;
}

.feedback-asset-detail-page .asset-side-actions .btn.primary {
  grid-column: 1 / -1;
}

.feedback-tool-card {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  align-items: center;
  gap: 10px;
  border: 1px solid var(--line);
  border-radius: 10px;
  background: #fff;
  padding: 10px;
}

.feedback-tool-card span:first-child {
  min-width: 0;
  display: grid;
  gap: 3px;
}

.feedback-tool-card strong,
.feedback-tool-card small {
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.feedback-tool-card strong {
  color: var(--ink);
  font-size: 13px;
  font-weight: 830;
}

.feedback-tool-card small {
  color: var(--muted);
  font-size: 12px;
  font-weight: 700;
}

.feedback-tool-actions {
  margin-top: 8px;
}

.feedback-tool-actions .btn {
  min-width: 0;
  padding: 0 8px;
}

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

.feedback-detail-actions .btn {
  min-width: 0;
}

.feedback-cause-list {
  margin: 0;
  padding-left: 18px;
}

.feedback-cause-list li {
  color: var(--body);
  font-size: 13px;
  line-height: 1.65;
}

.feedback-related-list {
  display: grid;
  gap: 8px;
}

.feedback-related-item {
  min-height: 54px;
  display: grid;
  grid-template-columns: minmax(0, 1fr);
  align-items: center;
  border: 1px solid var(--line);
  border-radius: 10px;
  background: #fff;
  color: var(--ink);
  padding: 10px 12px;
  text-align: left;
}

.feedback-related-item:hover {
  background: var(--surface-soft);
}

.feedback-related-item span:first-child {
  min-width: 0;
  display: grid;
  gap: 3px;
}

.feedback-related-item b,
.feedback-related-item small {
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.feedback-related-item b {
  color: var(--ink);
  font-size: 13px;
  font-weight: 820;
}

.feedback-related-item small {
  color: var(--muted);
  font-size: 12px;
  font-weight: 700;
}

.tool-workflow-page,
.tool-permission-page,
.tool-mock-page {
  --workspace-gap: 10px;
}

.tool-builder-layout {
  grid-template-columns: 220px minmax(0, 1fr) 380px;
}

.tool-builder-nav .step-item {
  width: 100%;
  border: 0;
  border-radius: 10px;
  background: transparent;
  padding: 6px 8px;
  text-align: left;
}

.tool-builder-nav .step-item:hover {
  background: var(--surface-soft);
}

.compact-panel {
  box-shadow: none;
}

.tool-schema-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 10px;
  align-items: stretch;
}

.tool-schema-grid > .panel {
  display: flex;
  flex-direction: column;
  margin-top: 0;
}

.tool-schema-grid .panel-head {
  align-items: center;
  margin-bottom: 12px;
}

.tool-schema-grid .textarea {
  flex: 1;
  min-height: 148px;
}

.tool-schema-grid h4 {
  margin: 0 0 8px;
  color: var(--body);
  font-size: 13px;
  font-weight: 820;
}

.tool-wizard-actions {
  display: flex;
  justify-content: flex-end;
  gap: 10px;
}

.tool-preview-panel {
  gap: 12px;
  padding: 20px 22px;
  min-width: 0;
}

.tool-preview-panel .check-row {
  min-height: 42px;
}

.tool-side-title {
  min-width: 0;
  display: grid;
  gap: 6px;
  padding-bottom: 10px;
}

.tool-side-title h3 {
  margin: 0;
  color: var(--ink);
  font-size: 22px;
  line-height: 1.2;
  font-weight: 880;
  letter-spacing: 0;
  white-space: nowrap;
}

.tool-side-title span {
  min-width: 0;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
  color: var(--muted);
  font-size: 14px;
  line-height: 1.35;
  font-weight: 650;
}

.tool-side-list {
  display: grid;
}

.tool-side-list .check-row {
  min-height: 54px;
  border-bottom: 1px solid var(--line);
}

.tool-side-list .check-row:last-child {
  border-bottom: 0;
}

.tool-type-grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 10px;
}

.tool-type-card {
  min-height: 112px;
  display: grid;
  align-content: start;
  gap: 8px;
  border: 1px solid var(--line);
  border-radius: 12px;
  background: #fff;
  padding: 14px;
  text-align: left;
}

.tool-type-card:hover,
.tool-type-card.active {
  border-color: #aeb4bd;
  background: #fbfcfd;
}

.tool-type-card b {
  color: var(--ink);
  font-size: 15px;
  font-weight: 840;
}

.tool-type-card span {
  color: var(--muted);
  font-size: 13px;
  line-height: 1.45;
}

.permission-choice-grid,
.permission-rule-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 10px;
}

.permission-choice {
  min-height: 46px;
  display: flex;
  align-items: center;
  gap: 10px;
  border: 1px solid var(--line);
  border-radius: 10px;
  background: #fff;
  padding: 0 12px;
  color: var(--body);
  font-size: 13px;
  font-weight: 760;
}

.permission-choice input {
  width: 16px;
  height: 16px;
}

.tool-permission-layout,
.tool-test-layout {
  grid-template-columns: minmax(0, 1fr) 400px;
  gap: 10px;
}

.permission-overview-grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 10px;
}

.permission-overview-card {
  min-height: 96px;
  display: grid;
  align-content: start;
  gap: 8px;
  border: 1px solid var(--line);
  border-radius: 12px;
  background: #fff;
  padding: 14px;
}

.permission-overview-card b {
  color: var(--ink);
  font-size: 15px;
  font-weight: 860;
}

.permission-overview-card span:last-child {
  color: var(--muted);
  font-size: 12px;
  line-height: 1.45;
  font-weight: 650;
}

.permission-matrix {
  display: grid;
  gap: 8px;
}

.permission-global-list,
.permission-tool-agent-list {
  display: grid;
  gap: 8px;
}

.permission-summary-table td,
.permission-config-table td {
  vertical-align: middle;
}

.permission-summary-table td:nth-child(3),
.permission-summary-table td:nth-child(4),
.permission-summary-table td:nth-child(5),
.permission-summary-table td:nth-child(6) {
  color: var(--ink);
  font-weight: 820;
}

.permission-tool-name {
  min-width: 0;
  display: grid;
  gap: 3px;
}

.permission-tool-name b,
.permission-tool-name small {
  min-width: 0;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.permission-tool-name b {
  color: var(--ink);
  font-size: 13px;
  font-weight: 830;
}

.permission-tool-name small {
  color: var(--muted);
  font-size: 11px;
  font-weight: 700;
}

.permission-check-cell {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  color: var(--body);
  font-size: 13px;
  font-weight: 760;
}

.permission-check-cell input,
.permission-control-list input {
  width: 16px;
  height: 16px;
}

.permission-select {
  width: 100%;
  min-width: 116px;
  height: 34px;
  border: 1px solid var(--line);
  border-radius: 8px;
  background: #fff;
  color: var(--body);
  padding: 0 10px;
  font-size: 13px;
  font-weight: 720;
}

.permission-select:disabled {
  color: var(--muted);
  background: var(--surface-soft);
}

.permission-control-list {
  min-width: 180px;
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 6px 10px;
}

.permission-control-list label {
  min-width: 0;
  display: inline-flex;
  align-items: center;
  gap: 6px;
  color: var(--body);
  font-size: 12px;
  font-weight: 720;
  white-space: nowrap;
}

.permission-global-row,
.permission-tool-agent-row {
  min-height: 58px;
  display: grid;
  align-items: center;
  gap: 10px;
  border: 1px solid var(--line);
  border-radius: 10px;
  background: #fff;
  padding: 8px 10px;
}

.permission-global-row {
  grid-template-columns: minmax(180px, .9fr) 112px minmax(360px, 1.5fr) 104px;
}

.permission-tool-agent-row {
  grid-template-columns: minmax(190px, .9fr) minmax(180px, 1fr) 110px minmax(220px, 1.2fr) 84px;
}

.permission-tool-agent-row.active {
  border-color: #d9dde3;
  background: #f8faf9;
}

.permission-agent-decision-list {
  min-width: 0;
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 8px;
}

.permission-agent-decision {
  min-width: 0;
  min-height: 38px;
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  align-items: center;
  gap: 8px;
  border: 1px solid var(--line);
  border-radius: 8px;
  background: #fbfcfd;
  padding: 0 8px;
  text-align: left;
}

.permission-agent-decision b {
  min-width: 0;
  overflow: hidden;
  color: var(--body);
  font-size: 12px;
  font-weight: 760;
  text-overflow: ellipsis;
  white-space: nowrap;
}

@media (max-width: 1500px) {
  .permission-global-row,
  .permission-tool-agent-row {
    grid-template-columns: 1fr;
    align-items: stretch;
  }

  .permission-agent-decision-list {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}

.permission-global-row > span,
.permission-tool-agent-row > span {
  min-width: 0;
  overflow: hidden;
  color: var(--muted);
  font-size: 12px;
  font-weight: 700;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.permission-row {
  min-height: 58px;
  display: grid;
  grid-template-columns: minmax(168px, 1.15fr) 86px minmax(160px, 1fr) 88px 102px 72px;
  align-items: center;
  gap: 10px;
  border: 1px solid var(--line);
  border-radius: 10px;
  background: #fff;
  padding: 8px 10px;
}

.permission-row.active {
  border-color: #d9dde3;
  background: #f8faf9;
}

.permission-row b,
.permission-row span {
  min-width: 0;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.permission-row b {
  color: var(--ink);
  font-size: 13px;
  font-weight: 820;
}

.permission-row small {
  display: block;
  min-width: 0;
  overflow: hidden;
  color: var(--muted);
  font-size: 11px;
  line-height: 1.3;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.permission-row > span {
  color: var(--muted);
  font-size: 12px;
  font-weight: 700;
}

.permission-row .permission-tool-name {
  color: var(--body);
}

.permission-row label {
  display: inline-flex;
  align-items: center;
  gap: 6px;
  color: var(--body);
  font-size: 12px;
  font-weight: 760;
}

.permission-agent-list {
  display: grid;
  gap: 8px;
}

.permission-agent-list button {
  min-height: 38px;
  border: 1px solid var(--line);
  border-radius: 10px;
  background: #fff;
  color: var(--body);
  padding: 0 12px;
  text-align: left;
  font-weight: 760;
}

.permission-agent-list button.active {
  border-color: var(--black);
  background: var(--black);
  color: #fff;
}

.permission-focus-section {
  position: relative;
  padding-right: 92px;
}

.permission-focus-section .status {
  position: absolute;
  top: 16px;
  right: 14px;
}

.permission-decision-path {
  display: grid;
  gap: 8px;
}

.permission-decision-path span {
  min-height: 34px;
  display: grid;
  grid-template-columns: 22px minmax(0, 1fr);
  align-items: center;
  gap: 8px;
  color: var(--body);
  font-size: 12px;
  font-weight: 720;
}

.permission-decision-path i {
  width: 22px;
  height: 22px;
  display: inline-grid;
  place-items: center;
  border: 1px solid var(--line);
  border-radius: 999px;
  color: var(--muted);
  font-size: 11px;
  font-style: normal;
  font-weight: 820;
}

.tool-test-result {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  align-items: center;
  gap: 12px;
  border: 1px solid var(--line);
  border-radius: 12px;
  background: var(--green-bg);
  padding: 14px;
  margin-bottom: 12px;
}

.tool-test-result.error {
  background: var(--red-bg);
}

.tool-test-result b,
.tool-test-result span {
  display: block;
}

.tool-test-result b {
  color: var(--ink);
  font-size: 15px;
  font-weight: 840;
}

.tool-test-result span {
  margin-top: 4px;
  color: var(--muted);
  font-size: 13px;
}

.tool-test-case-list {
  display: grid;
  gap: 10px;
}

.tool-test-case {
  min-height: 74px;
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  align-items: center;
  gap: 12px;
  border: 1px solid var(--line);
  border-radius: 12px;
  background: #fff;
  padding: 12px 14px;
  text-align: left;
}

.tool-test-case:hover {
  background: var(--surface-soft);
}

.tool-test-case > span:first-child {
  min-width: 0;
  display: grid;
  gap: 4px;
}

.tool-test-case b,
.tool-test-case small {
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.tool-test-case b {
  color: var(--body);
  font-size: 14px;
  font-weight: 820;
}

.tool-test-case small {
  color: var(--muted);
  font-size: 12px;
  font-weight: 650;
}

.object-test-page {
  --object-test-gap: 16px;
}

.object-test-page .metric-grid {
  gap: var(--object-test-gap);
  margin-bottom: var(--object-test-gap);
}

.object-test-layout {
  grid-template-columns: minmax(0, 1fr) clamp(280px, 24vw, 340px);
  gap: var(--object-test-gap);
  align-items: start;
}

.object-test-page main.stack {
  gap: var(--object-test-gap);
}

.object-test-page main.stack > .panel + .panel,
.object-test-page main.stack > .card + .card {
  margin-top: 0;
}

.object-test-page .metric-grid.no-icons .metric {
  height: 78px;
  overflow: hidden;
  align-items: stretch;
  border-radius: 12px;
  background: rgba(255,255,255,.84);
  padding: 12px 18px;
  box-shadow: 0 12px 30px rgba(17,18,20,.038);
}

.object-test-page .metric-grid.no-icons .metric-body {
  min-width: 0;
  min-height: 0;
  height: 100%;
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  grid-template-rows: auto auto;
  align-content: center;
  align-items: center;
  gap: 4px 18px;
}

.object-test-page .metric-grid.no-icons .metric-main {
  display: contents;
}

.object-test-page .metric-grid.no-icons .metric .label,
.object-test-page .metric-grid.no-icons .metric .value,
.object-test-page .metric-grid.no-icons .metric .change {
  min-width: 0;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.object-test-page .metric-grid.no-icons .metric .label {
  grid-column: 1;
  grid-row: 1;
  color: #3f4248;
  font-size: 14px;
  line-height: 18px;
  font-weight: 780;
}

.object-test-page .metric-grid.no-icons .metric .value {
  grid-column: 2;
  grid-row: 1 / span 2;
  justify-self: end;
  margin-top: 0;
  color: var(--black);
  font-size: 30px;
  line-height: 1;
  font-weight: 850;
  text-align: right;
}

.object-test-page .metric-grid.no-icons .metric .change {
  grid-column: 1;
  grid-row: 2;
  margin-top: 0;
  color: var(--faint);
  font-size: 12px;
  line-height: 16px;
  font-weight: 650;
}

.object-test-page .panel-head {
  align-items: center;
}

.object-test-page .tool-schema-grid {
  gap: var(--object-test-gap);
}

.object-test-page .tool-schema-grid > section {
  min-width: 0;
}

.object-test-page .tool-schema-grid .textarea {
  min-height: 166px;
}

.object-test-page .tool-test-case {
  min-height: 82px;
  border-radius: 12px;
  padding: 14px 16px;
}

.object-test-page .tool-test-case > span:first-child {
  gap: 5px;
}

.object-test-page .tool-test-case b {
  color: var(--ink);
  font-size: 14px;
  line-height: 1.35;
}

.object-test-page .tool-test-case .status {
  justify-self: end;
}

.object-test-side {
  display: grid;
  align-content: start;
  gap: var(--object-test-gap);
}

.object-test-page .tool-test-case-list {
  gap: 12px;
}

.object-test-table-card {
  margin-top: 0;
}

.object-test-table {
  table-layout: fixed;
  min-width: 900px;
}

.skill-test-run-strip {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto auto;
  align-items: center;
  gap: 14px;
  margin-bottom: var(--object-test-gap);
  border: 1px solid var(--line);
  border-radius: 12px;
  background: rgba(255,255,255,.9);
  padding: 12px 16px;
  box-shadow: 0 12px 30px rgba(17,18,20,.035);
}

.skill-test-run-strip > div:first-child {
  min-width: 0;
  display: grid;
  gap: 3px;
}

.skill-test-run-strip span,
.skill-test-run-strip small {
  color: var(--muted);
  font-size: 12px;
  font-weight: 700;
}

.skill-test-run-strip b {
  color: var(--ink);
  font-size: 15px;
  font-weight: 840;
}

.skill-test-run-strip-meta {
  display: flex;
  flex-wrap: wrap;
  justify-content: flex-end;
  gap: 8px;
}

.skill-test-run-modal {
  width: min(680px, 100%);
  max-height: min(760px, calc(100vh - 48px));
  display: grid;
  grid-template-rows: auto minmax(0, 1fr) auto;
}

.agent-sandbox-test-modal {
  width: min(760px, 100%);
}

.skill-test-run-body {
  display: grid;
  gap: 16px;
  overflow-y: auto;
}

.agent-sandbox-test-body {
  gap: 14px;
}

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

.agent-sandbox-config-grid article {
  min-width: 0;
  display: grid;
  gap: 6px;
  border: 1px solid var(--line);
  border-radius: 10px;
  background: #fff;
  padding: 12px;
}

.agent-sandbox-config-grid span,
.agent-sandbox-config-grid small,
.agent-sandbox-case-grid small {
  color: var(--muted);
  font-size: 12px;
  font-weight: 700;
}

.agent-sandbox-config-grid b {
  min-width: 0;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
  color: var(--ink);
  font-size: 15px;
  font-weight: 850;
}

.agent-sandbox-config-grid small,
.agent-sandbox-case-grid small {
  line-height: 1.45;
}

.agent-sandbox-input-card,
.agent-sandbox-case-picker {
  display: grid;
  gap: 10px;
  border: 1px solid var(--line);
  border-radius: 12px;
  background: var(--surface-soft);
  padding: 14px;
}

.agent-sandbox-input-card .panel-head,
.agent-sandbox-case-picker .panel-head {
  margin-bottom: 0;
}

.agent-sandbox-input-card .textarea {
  min-height: 88px;
  background: #fff;
}

.agent-sandbox-case-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 10px;
}

.agent-sandbox-case-grid label {
  min-width: 0;
  display: grid;
  grid-template-columns: auto minmax(0, 1fr) auto;
  align-items: center;
  gap: 10px;
  border: 1px solid var(--line);
  border-radius: 10px;
  background: #fff;
  padding: 10px 12px;
}

.agent-sandbox-case-grid input {
  width: 16px;
  height: 16px;
  accent-color: var(--ink);
}

.agent-sandbox-case-grid label > span {
  min-width: 0;
  display: grid;
  gap: 3px;
}

.agent-sandbox-case-grid b,
.agent-sandbox-case-grid small {
  min-width: 0;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.agent-sandbox-case-grid b {
  color: var(--ink);
  font-size: 13px;
  font-weight: 840;
}

.agent-sandbox-assertions {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
}

.agent-sandbox-assertions span {
  border: 1px solid rgba(37,99,235,.12);
  border-radius: 8px;
  background: rgba(37,99,235,.08);
  color: var(--blue);
  padding: 7px 10px;
  font-size: 12px;
  font-weight: 800;
}

@media (max-width: 760px) {
  .agent-sandbox-config-grid,
  .agent-sandbox-case-grid {
    grid-template-columns: 1fr;
  }
}

.skill-test-verdict {
  display: grid;
  gap: 8px;
  border: 1px solid var(--line);
  border-radius: 12px;
  background: var(--surface-soft);
  padding: 16px;
}

.skill-test-verdict.pass {
  background: rgba(22,163,74,.07);
  border-color: rgba(22,163,74,.18);
}

.skill-test-verdict.fail {
  background: rgba(220,38,38,.07);
  border-color: rgba(220,38,38,.18);
}

.skill-test-verdict h4,
.skill-test-verdict p,
.skill-test-fail-list h4 {
  margin: 0;
}

.skill-test-verdict h4 {
  color: var(--ink);
  font-size: 18px;
  font-weight: 850;
}

.skill-test-verdict p {
  color: var(--muted);
  font-size: 13px;
  line-height: 1.6;
}

.skill-test-result-grid {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 8px;
}

.skill-test-result-grid > div {
  min-width: 0;
  display: grid;
  gap: 6px;
  border: 1px solid var(--line);
  border-radius: 10px;
  background: #fff;
  padding: 10px 12px;
}

.skill-test-result-grid span {
  color: var(--muted);
  font-size: 12px;
  font-weight: 700;
}

.skill-test-fail-list {
  display: grid;
  gap: 10px;
}

.skill-test-fail-list h4 {
  color: var(--ink);
  font-size: 14px;
  font-weight: 840;
}

.skill-test-fail-list article {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  align-items: center;
  gap: 12px;
  border: 1px solid rgba(220,38,38,.14);
  border-radius: 10px;
  background: #fff;
  padding: 12px 14px;
}

.skill-test-fail-list article > div {
  min-width: 0;
  display: grid;
  gap: 4px;
}

.skill-test-fail-list b,
.skill-test-fail-list span {
  min-width: 0;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.skill-test-fail-list b {
  color: var(--ink);
  font-size: 14px;
  font-weight: 830;
}

.skill-test-fail-list span {
  color: var(--muted);
  font-size: 12px;
  font-weight: 650;
}

.object-test-table th,
.object-test-table td {
  padding: 11px 16px;
  vertical-align: middle;
}

.object-test-table th:nth-child(1) { width: 31%; }
.object-test-table th:nth-child(2) { width: 80px; }
.object-test-table th:nth-child(3) { width: auto; }
.object-test-table th:nth-child(4) { width: 84px; }
.object-test-table th:nth-child(5) { width: 112px; }
.object-test-table th:nth-child(6) { width: 96px; }

.skill-test-table {
  min-width: 920px;
}

.skill-test-table th:nth-child(1) { width: 44%; }
.skill-test-table th:nth-child(2) { width: 7%; }
.skill-test-table th:nth-child(3) { width: 12%; }
.skill-test-table th:nth-child(4) { width: 9%; }
.skill-test-table th:nth-child(5) { width: 15%; }
.skill-test-table th:nth-child(6) { width: 13%; }

.agent-test-table {
  min-width: 980px;
}

.agent-test-table th:nth-child(1) { width: 30%; }
.agent-test-table th:nth-child(2) { width: 7%; }
.agent-test-table th:nth-child(3) { width: 35%; }
.agent-test-table th:nth-child(4) { width: 8%; }
.agent-test-table th:nth-child(5) { width: 11%; }
.agent-test-table th:nth-child(6) { width: 9%; }

.object-test-table th:nth-child(1),
.object-test-table td:nth-child(1),
.object-test-table th:nth-child(3),
.object-test-table td:nth-child(3) {
  text-align: left;
}

.object-test-table th:nth-child(2),
.object-test-table td:nth-child(2),
.object-test-table th:nth-child(4),
.object-test-table td:nth-child(4),
.object-test-table th:nth-child(5),
.object-test-table td:nth-child(5),
.object-test-table th:nth-child(6),
.object-test-table td:nth-child(6) {
  text-align: center;
}

.object-test-table td:nth-child(1),
.object-test-table td:nth-child(3) {
  white-space: normal;
}

.object-test-table .version-skill-cell {
  min-width: 0;
  gap: 4px;
}

.object-test-table .version-skill-cell b,
.object-test-table .version-skill-cell span {
  max-width: none;
  overflow: hidden;
  text-overflow: ellipsis;
}

.object-test-table .version-skill-cell b {
  display: -webkit-box;
  color: var(--ink);
  line-height: 1.32;
  white-space: normal;
  -webkit-line-clamp: 2;
  -webkit-box-orient: vertical;
}

.object-test-table .version-skill-cell span,
.object-test-table .object-test-owner,
.object-test-table .object-test-note {
  color: var(--muted);
  font-size: 12px;
  line-height: 1.5;
  white-space: normal;
  overflow-wrap: anywhere;
}

.object-test-table .object-test-owner,
.object-test-table .object-test-note {
  width: 100%;
  min-width: 0;
  display: -webkit-box;
  overflow: hidden;
  text-align: left;
  text-overflow: ellipsis;
  -webkit-box-orient: vertical;
}

.object-test-table .object-test-owner {
  -webkit-line-clamp: 1;
}

.object-test-table .object-test-note {
  -webkit-line-clamp: 2;
}

.object-test-table .btn {
  min-width: 66px;
  padding: 0 12px;
}

.object-test-table th:last-child,
.object-test-table td:last-child {
  padding-right: 22px;
}

.skill-test-table .object-test-owner {
  color: #596273;
  overflow-wrap: normal;
}

.agent-test-table .object-test-note {
  min-height: 36px;
  display: grid;
  align-content: center;
  gap: 3px;
  line-height: 1.5;
  -webkit-line-clamp: unset;
}

.agent-test-table .object-test-note b,
.agent-test-table .object-test-note span {
  min-width: 0;
  display: block;
  overflow: hidden;
  text-align: left;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.agent-test-table .object-test-note b {
  color: #4f5968;
  font-size: 12px;
  font-weight: 740;
}

.agent-test-table .object-test-note span {
  color: var(--faint);
  font-size: 12px;
  font-weight: 650;
}

@media (max-width: 1500px) {
  .object-test-layout {
    grid-template-columns: 1fr;
  }

  .object-test-side {
    grid-template-columns: minmax(0, 1fr);
  }

  .object-test-page .tool-test-case-list {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}

@media (max-width: 720px) {
  .object-test-table {
    min-width: 0;
    border: 0;
    background: transparent;
  }

  .object-test-table thead {
    display: none;
  }

  .object-test-table tbody {
    display: grid;
    gap: 10px;
  }

  .object-test-table tr {
    display: grid;
    grid-template-columns: minmax(0, 1fr);
    gap: 9px 12px;
    border: 1px solid var(--table-border);
    border-radius: 12px;
    background: #fff;
    padding: 12px;
  }

  .object-test-table td {
    width: auto !important;
    min-height: 0;
    display: flex;
    align-items: center;
    justify-content: flex-start;
    gap: 6px;
    border-top: 0;
    background: transparent;
    padding: 0;
    white-space: normal;
  }

  .object-test-table td::before {
    color: var(--faint);
    font-size: 11px;
    font-weight: 720;
  }

  .object-test-table td:nth-child(1),
  .object-test-table td:nth-child(3) {
    grid-column: 1 / -1;
    display: block;
  }

  .object-test-table td:nth-child(1) {
    order: 1;
  }

  .object-test-table td:nth-child(3) {
    order: 2;
  }

  .object-test-table td:nth-child(2) {
    order: 3;
  }

  .object-test-table td:nth-child(2)::before {
    content: "类型";
  }

  .object-test-table td:nth-child(4) {
    order: 4;
  }

  .object-test-table td:nth-child(4)::before {
    content: "状态";
  }

  .object-test-table td:nth-child(5) {
    order: 5;
  }

  .object-test-table td:nth-child(5)::before {
    content: "最近";
  }

  .object-test-table td:nth-child(6) {
    order: 6;
  }

  .object-test-table td:nth-child(6)::before {
    content: "操作";
  }

  .object-test-table .version-skill-cell b {
    -webkit-line-clamp: 1;
  }

  .object-test-page .tool-test-case-list {
    grid-template-columns: 1fr;
  }
}

.agent-runs-card {
  padding: 18px;
}

.agent-runs-card .table-head {
  padding: 0 0 14px;
}

.agent-run-grid {
  display: grid;
  grid-template-columns: repeat(5, minmax(0, 1fr));
  gap: 10px;
}

.agent-run-item {
  min-width: 0;
  min-height: 70px;
  display: grid;
  grid-template-columns: 10px minmax(0, 1fr) auto;
  align-items: center;
  gap: 10px;
  border: 1px solid var(--line);
  border-radius: 10px;
  background: #fff;
  padding: 12px;
  text-align: left;
  cursor: pointer;
}

.agent-run-item:hover {
  background: #f8fafc;
}

.agent-run-copy {
  min-width: 0;
  display: grid;
  gap: 4px;
}

.agent-run-copy b,
.agent-run-copy small {
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.agent-run-copy b {
  font-size: 13px;
  font-weight: 820;
  color: var(--body);
}

.agent-run-copy small {
  font-size: 12px;
  color: var(--muted);
}

.skill-call-item .status {
  max-width: 92px;
}

.skill-call-item .agent-run-copy small {
  white-space: nowrap;
}

.skill-run-feedback {
  display: grid;
  gap: 12px;
}

.skill-run-summary {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  align-items: center;
  gap: 14px;
  padding: 12px;
  border: 1px solid var(--line);
  border-radius: 10px;
  background: #fff;
}

.skill-run-summary .status {
  justify-self: end;
}

.skill-run-facts {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 8px;
}

.skill-run-facts span {
  min-width: 0;
  display: grid;
  gap: 4px;
  padding: 10px 12px;
  border: 1px solid var(--line);
  border-radius: 10px;
  background: var(--surface-soft);
  color: var(--muted);
  font-size: 12px;
  font-weight: 650;
}

.skill-run-facts b {
  color: var(--body);
  font-size: 12px;
  font-weight: 820;
}

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

.skill-run-list .run-line:last-child {
  padding-bottom: 0;
}

.skill-run-list .run-line {
  grid-template-columns: minmax(0, 1fr) auto;
}

.skill-run-list .run-line > span:first-child {
  min-width: 0;
  display: grid;
  gap: 4px;
}

.skill-run-list .run-line b,
.skill-run-list .run-line span span {
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.skill-run-list .run-line b {
  font-size: 13px;
  color: var(--body);
}

.skill-run-list .run-line span span {
  color: var(--muted);
  font-size: 12px;
}

@media (max-width: 1280px) {
  .skill-call-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}

@media (max-width: 720px) {
  .skill-call-grid,
  .skill-run-facts {
    grid-template-columns: 1fr;
  }

  .skill-run-summary {
    grid-template-columns: 1fr;
  }

  .skill-run-summary .status {
    justify-self: start;
  }

  .skill-run-list .run-line {
    grid-template-columns: 1fr;
  }

  .skill-run-list .run-line .status {
    justify-self: start;
  }
}

.run-dot.warn {
  background: var(--amber);
}

.agent-detail-drawer .contract-chip {
  max-width: 100%;
}

.status.green,
.tag.green {
  background: var(--green-bg);
  color: var(--green);
}

.status.blue,
.tag.blue {
  background: var(--blue-bg);
  color: var(--blue);
}

.status.amber,
.tag.amber {
  background: var(--amber-bg);
  color: var(--amber);
}

.status.red,
.tag.red {
  background: var(--red-bg);
  color: var(--red);
}

.status.purple,
.tag.purple {
  background: var(--purple-bg);
  color: var(--purple);
}

.status.gray,
.tag.gray {
  background: #f0f0ef;
  color: #65676b;
}

.pagination {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 14px;
  border-top: 1px solid var(--line);
  padding: 12px 16px;
  color: var(--body);
  font-size: 13px;
}

.data-table + .pagination {
  border-top: 0;
}

.pages {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 8px;
}

.page-dot,
.page-arrow {
  width: 30px;
  height: 30px;
  border: 1px solid var(--line);
  border-radius: 8px;
  background: #fff;
  color: var(--ink);
  display: grid;
  place-items: center;
  font-weight: 750;
  cursor: pointer;
}

.page-dot.active {
  background: #050505;
  color: #fff;
}

.page-dot:disabled,
.page-arrow:disabled,
.page-size:disabled,
.page-jump:disabled {
  cursor: default;
  opacity: 0.48;
}

.side-rail {
  display: grid;
  gap: 14px;
  align-content: start;
}

.process-list {
  display: grid;
  gap: 12px;
}

.process-item {
  display: grid;
  grid-template-columns: 28px minmax(0, 1fr);
  gap: 10px;
  position: relative;
}

.process-item:not(:last-child)::after {
  content: "";
  position: absolute;
  top: 28px;
  left: 13px;
  bottom: -12px;
  border-left: 1px solid var(--line-strong);
}

.process-bullet {
  width: 28px;
  height: 28px;
  display: grid;
  place-items: center;
  border: 1px solid var(--line-strong);
  border-radius: 50%;
  background: #fff;
  color: var(--ink);
  font-size: 12px;
  font-weight: 800;
  z-index: 1;
}

.process-item b {
  display: block;
  font-size: 13px;
  font-weight: 750;
}

.process-item span {
  display: block;
  margin-top: 4px;
  color: var(--muted);
  font-size: 12px;
  line-height: 1.35;
}

.bar-item {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  gap: 8px;
  align-items: center;
  margin-top: 12px;
  color: var(--body);
  font-size: 13px;
}

.bar {
  grid-column: 1 / -1;
  height: 5px;
  border-radius: 999px;
  background: #e8e8e5;
  overflow: hidden;
}

.bar i {
  display: block;
  height: 100%;
  border-radius: inherit;
  background: #090909;
}

/* ---------- Experience deposition page ---------- */

.experience-page {
  --content-max: none;
  --experience-metric-gap: 14px;
  --experience-right: clamp(300px, 22vw, 360px);
}

.experience-page .page-header {
  margin-bottom: 14px;
}

.experience-page .metric-grid {
  gap: var(--experience-metric-gap);
  margin-bottom: 12px;
}

.experience-page .metric {
  height: var(--metric-card-height);
  border-radius: 12px;
  background: rgba(255,255,255,.82);
  grid-template-columns: minmax(0, 1fr);
  gap: 0;
  align-items: center;
  padding: 10px 16px;
  box-shadow: 0 12px 30px rgba(17,18,20,.038);
}

.experience-page .metric-icon {
  display: none;
}

.experience-page .metric-body {
  min-width: 0;
}

.experience-page .metric-main {
  display: flex;
  align-items: baseline;
  justify-content: space-between;
  gap: 18px;
}

.experience-page .metric .label {
  font-size: 14px;
  color: #3f4248;
  line-height: 1.25;
  white-space: nowrap;
}

.experience-page .metric .value {
  margin-top: 0;
  font-size: 26px;
  line-height: .95;
  font-weight: 850;
  text-align: right;
}

.experience-page .metric .change {
  margin-top: 6px;
  font-size: 13px;
  line-height: 1.2;
  text-align: right;
}

.experience-filter {
  min-height: 70px;
  border-radius: 14px;
  padding: 12px 16px;
  margin-bottom: 18px;
}

.experience-filter .tabs {
  gap: 12px;
}

.experience-filter .tab {
  min-width: 78px;
  min-height: 38px;
}

.experience-filter .toolbar {
  flex-wrap: nowrap;
}

.experience-filter .search {
  width: 376px;
  min-height: var(--control-height);
}

.experience-filter .btn.primary {
  min-height: var(--control-height);
  border-radius: var(--control-radius);
}

.experience-table-tools {
  min-width: 0;
  display: flex;
  align-items: center;
  justify-content: flex-end;
  gap: 12px;
}

.experience-table-tools .search {
  width: min(420px, 42vw);
  min-height: var(--control-height);
}

.experience-table-tools .btn.primary {
  min-height: var(--control-height);
  border-radius: var(--control-radius);
  white-space: nowrap;
}

.experience-layout {
  display: grid;
  grid-template-columns: minmax(0, 1fr) var(--experience-right);
  gap: var(--workspace-gap);
  align-items: start;
}

.experience-insight-rail {
  align-self: start;
}

.experience-insight-rail.panel-stack,
.experience-insight-rail.side-rail {
  align-items: start;
}

.experience-insight-rail .panel + .panel {
  margin-top: 0;
}

.experience-page .panel {
  border-radius: 14px;
  background: rgba(255,255,255,.8);
  box-shadow: 0 18px 46px rgba(17,18,20,.04);
}

.experience-table-card {
  border-radius: 12px;
  background: #fff;
  box-shadow: none;
}

.experience-page .panel {
  padding: 20px;
}

.experience-page .panel-head {
  align-items: center;
}

.experience-page .panel-head .btn {
  border: 0;
  background: transparent;
  color: var(--body);
  padding: 0;
}

.process-panel .process-list {
  margin-top: 18px;
}

.experience-page .process-item {
  grid-template-columns: 30px minmax(0, 1fr);
  gap: 11px;
}

.experience-page .process-bullet {
  width: 30px;
  height: 30px;
  font-size: 12px;
  background: #fff;
}

.experience-page .process-item b {
  font-size: 13px;
  font-weight: 820;
}

.experience-page .process-item span {
  font-size: 12px;
}

.panel-title-row,
.source-total {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 10px;
}

.info-dot {
  width: 16px;
  height: 16px;
  display: grid;
  place-items: center;
  border: 1px solid var(--line-strong);
  border-radius: 50%;
  color: var(--muted);
  font-size: 11px;
  font-weight: 850;
}

.source-panel .bar-item {
  grid-template-columns: minmax(0, 1fr) auto;
  margin-top: 16px;
  font-weight: 720;
}

.source-panel .bar {
  height: 5px;
}

.source-total {
  margin-top: 18px;
  color: var(--body);
  font-size: 13px;
  font-weight: 780;
}

.experience-page .experience-table-card.table-card:has(.data-table) {
  padding: 18px;
  overflow: visible;
  overflow-x: auto;
  background: #fff;
}

.experience-page .experience-table-card.table-card:has(.data-table) .table-head {
  padding: 0 0 16px;
}

.experience-title-group {
  min-width: 0;
  display: inline-flex;
  align-items: center;
  gap: 10px;
}

.experience-title-group h3 {
  flex: 0 0 auto;
}

.experience-status-pill {
  position: relative;
  flex: 0 0 auto;
  min-height: 30px;
  display: inline-flex;
  align-items: center;
  gap: 8px;
  border: 1px solid #dfe3e8;
  border-radius: 999px;
  background: linear-gradient(#fff, #fbfcfd);
  color: #191b1f;
  padding: 0 12px 0 15px;
  font-size: 13px;
  line-height: 1;
  font-weight: 800;
  cursor: pointer;
  transition: border-color .15s ease, background .15s ease, color .15s ease, box-shadow .15s ease;
}

.experience-status-pill:hover {
  border-color: #c9ced6;
  background: #fff;
  box-shadow: 0 3px 10px rgba(17,18,20,.04);
}

.experience-status-pill.active {
  border-color: #aeb4bd;
  background: #fff;
  color: var(--ink);
  box-shadow: 0 3px 10px rgba(17,18,20,.04);
}

.experience-status-pill .filter-caret {
  width: 7px;
  height: 7px;
  border-right: 1.6px solid #7c838d;
  border-bottom: 1.6px solid #7c838d;
  transform: translateY(-2px) rotate(45deg);
  transition: border-color .15s ease, transform .15s ease;
}

.experience-status-pill:hover .filter-caret,
.experience-status-pill.active .filter-caret {
  border-color: #22252a;
}

.experience-status-pill:focus-within {
  outline: 2px solid rgba(17,18,20,.18);
  outline-offset: 2px;
}

.experience-status-pill select {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  border: 0;
  opacity: 0;
  cursor: pointer;
}

.experience-table-scroll {
  width: 100%;
  overflow-x: auto;
  overflow-y: hidden;
  border-radius: 12px;
  padding: 0;
  scrollbar-gutter: stable;
  -webkit-overflow-scrolling: touch;
}

.experience-table-scroll:focus-visible {
  outline: 2px solid rgba(16, 17, 19, .28);
  outline-offset: 3px;
}

.experience-table {
  min-width: 1300px;
  table-layout: fixed;
}

.experience-table th:nth-child(1) { width: 320px; }
.experience-table th:nth-child(2) { width: 184px; }
.experience-table th:nth-child(3) { width: 146px; }
.experience-table th:nth-child(4) { width: 132px; }
.experience-table th:nth-child(5) { width: 104px; }
.experience-table th:nth-child(6) { width: 156px; }
.experience-table th:nth-child(7) { width: 244px; }

.experience-table th {
  padding: 9px 14px;
  color: var(--muted);
}

.experience-table td {
  padding: 7px 14px;
}

.experience-table th:first-child,
.experience-table td:first-child {
  position: sticky;
  left: 0;
  z-index: 2;
  background: #fff;
  box-shadow: none;
}

.experience-table th:first-child {
  z-index: 3;
  background: var(--table-head-bg);
}

.experience-table tr:hover td:first-child {
  background: var(--table-row-hover);
}

.experience-table tr.active td:first-child {
  background: #fbfcfd;
}

.experience-table .clickable-row {
  cursor: pointer;
}

.experience-table th:nth-child(3),
.experience-table td:nth-child(3),
.experience-table th:nth-child(4),
.experience-table td:nth-child(4),
.experience-table th:nth-child(7),
.experience-table td:nth-child(7) {
  text-align: center;
}

.table-head-filter {
  position: relative;
  display: inline-flex;
  align-items: center;
  gap: 5px;
  max-width: 100%;
  color: var(--muted);
  cursor: pointer;
}

.table-head-filter .filter-label {
  flex: 0 0 auto;
}

.table-head-filter .filter-caret {
  color: var(--faint);
  font-size: 14px;
  line-height: 1;
  transform: translateY(-1px);
}

.table-head-filter .filter-value {
  max-width: 74px;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
  border-radius: 999px;
  background: #eef1f4;
  color: var(--body);
  padding: 2px 7px;
  font-size: 11px;
  font-weight: 760;
}

.table-head-filter select {
  position: absolute;
  inset: -8px;
  width: calc(100% + 16px);
  height: calc(100% + 16px);
  border: 0;
  opacity: 0;
  cursor: pointer;
}

.table-head-filter.active .filter-label {
  color: var(--ink);
}

.table-head-filter.active .filter-caret {
  color: var(--ink);
}

.experience-name-cell {
  color: var(--ink);
  --name-title-max: 240px;
}

.experience-name-cell > span {
  min-width: 0;
  display: flex;
  flex-wrap: wrap;
  column-gap: 8px;
  row-gap: 2px;
  align-items: center;
}

.experience-name-cell b,
.experience-name-cell small,
.experience-name-cell em,
.experience-source b,
.experience-source small,
.date-cell {
  display: block;
}

.experience-name-cell b {
  width: fit-content;
  max-width: var(--name-title-max);
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
  font-size: 14px;
  font-weight: 850;
}

.experience-name-cell small,
.experience-source small {
  flex: 0 0 100%;
  margin-top: 2px;
  max-width: 250px;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
  color: var(--muted);
  font-size: 12px;
  line-height: 1.25;
  font-weight: 620;
}

.experience-name-cell em {
  align-self: center;
  width: fit-content;
  margin-top: 0;
  border: 1px solid var(--table-border);
  border-radius: 7px;
  background: #fff;
  color: var(--body);
  padding: 1px 6px;
  font-size: 11px;
  line-height: 1.25;
  font-style: normal;
  font-weight: 800;
}

.row-actions.knowledge-row-actions {
  display: inline-flex;
  justify-content: flex-start;
  align-items: center;
  gap: 6px;
  width: 100%;
}

.data-table .row-actions.knowledge-row-actions .btn {
  min-height: 28px;
  min-width: 44px;
  padding: 0 9px;
  border-radius: 8px;
  white-space: nowrap;
}

.data-table .row-actions.knowledge-row-actions .btn.primary {
  min-width: 44px;
  padding: 0 10px;
}

.row-actions.version-row-actions {
  justify-content: flex-start;
  gap: 6px;
}

.experience-source b {
  color: var(--body);
  font-size: 13px;
  font-weight: 760;
}

.inline-icon {
  width: 15px;
  height: 15px;
  fill: none;
  stroke: currentColor;
  stroke-width: 1.9;
  stroke-linecap: round;
  stroke-linejoin: round;
}

.version-text {
  color: var(--ink);
  font-size: 13px;
  font-weight: 780;
}

.date-cell {
  color: var(--body);
  line-height: 1.45;
  white-space: nowrap;
}

.row-actions {
  display: flex;
  align-items: center;
  justify-content: flex-start;
  gap: 6px;
}

.row-actions .btn {
  min-height: 28px;
  border-radius: 8px;
  padding: 0 9px;
  font-size: 12px;
}

.experience-pagination {
  min-height: 48px;
  padding: 10px 18px;
  border-top: 0;
}

.experience-pagination .pages {
  gap: 14px;
}

.page-size,
.page-jump {
  min-height: 34px;
  border: 1px solid var(--line);
  border-radius: 8px;
  background: #fff;
  color: var(--body);
  padding: 0 14px;
  font-size: 13px;
  font-weight: 720;
}

.page-jump {
  width: 52px;
  padding: 0;
}

.page-arrow {
  color: var(--muted);
  font-size: 22px;
  line-height: 1;
}

.experience-side-item {
  width: 100%;
  min-height: 74px;
  display: grid;
  grid-template-columns: 42px minmax(0, 1fr) auto;
  align-items: center;
  gap: 12px;
  border: 1px solid var(--line);
  border-radius: 12px;
  background: #fff;
  padding: 12px;
  text-align: left;
  transition: border-color .15s ease, background .15s ease, transform .15s ease;
}

.experience-side-item:hover {
  border-color: var(--line-strong);
  background: #fff;
  transform: translateY(-1px);
}

.experience-page .mini-text b {
  color: var(--ink);
  font-size: 13px;
  font-weight: 820;
  white-space: normal;
}

.experience-page .mini-text span {
  color: var(--muted);
  white-space: normal;
  display: -webkit-box;
  -webkit-line-clamp: 2;
  -webkit-box-orient: vertical;
}

.priority-badge {
  min-width: 28px;
  min-height: 24px;
  display: inline-grid;
  place-items: center;
  border-radius: 7px;
  background: #fff3df;
  color: var(--amber);
  font-size: 12px;
  font-weight: 850;
}

.experience-side-item:first-child .priority-badge {
  background: var(--red-bg);
  color: var(--red);
}

.panel-footnote {
  margin: 18px 0 0;
  color: var(--body);
  font-size: 13px;
  font-weight: 680;
}

@media (max-width: 1880px) {
  .experience-layout {
    grid-template-columns: 1fr;
  }

  .experience-layout > .side-rail {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .experience-layout > .side-rail.source-only {
    grid-template-columns: minmax(0, 1fr);
  }
}

@media (max-width: 1800px) {
  .experience-name-cell b,
  .experience-name-cell small,
  .experience-source small {
    max-width: 260px;
  }
}

.detail-panel {
  padding: 20px;
  display: grid;
  align-content: start;
  gap: 18px;
}

.drawer-backdrop {
  position: fixed;
  inset: 0;
  z-index: 80;
  display: flex;
  justify-content: flex-end;
  background: rgba(17, 18, 20, .26);
  backdrop-filter: blur(2px);
}

.skill-detail-drawer {
  position: relative;
  width: min(560px, calc(100vw - 32px));
  height: 100vh;
  overflow: hidden;
  border-radius: 18px 0 0 18px;
  border-right: 0;
  background: rgba(255, 255, 255, .98);
  box-shadow: -18px 0 50px rgba(17, 18, 20, .14);
  padding: 0;
  display: block;
  animation: drawerIn .18s ease-out;
}

@keyframes drawerIn {
  from {
    transform: translateX(18px);
    opacity: .72;
  }

  to {
    transform: translateX(0);
    opacity: 1;
  }
}

.skill-detail-content {
  height: 100%;
  min-height: 0;
  display: grid;
  grid-template-rows: auto minmax(0, 1fr) auto;
}

.skill-detail-header {
  padding: 22px 24px 18px;
  border-bottom: 1px solid var(--line);
}

.skill-detail-title-row {
  min-width: 0;
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  align-items: center;
  gap: 14px;
}

.skill-detail-title-row h3 {
  margin: 0;
  color: var(--ink);
  font-size: 25px;
  line-height: 1.2;
  font-weight: 880;
}

.skill-detail-header-actions {
  display: inline-flex;
  align-items: center;
  gap: 12px;
}

.skill-detail-header-actions .status {
  min-height: 30px;
  border-radius: 8px;
  padding: 0 12px;
  font-size: 13px;
  font-weight: 790;
}

.skill-detail-close {
  min-width: 54px;
  height: 34px;
  border-radius: 9px;
  background: transparent;
  color: var(--body);
  padding: 0 12px;
  font-size: 13px;
  font-weight: 780;
}

.skill-detail-close:hover {
  background: var(--surface-soft);
  color: var(--ink);
}

.skill-source-line {
  display: flex;
  align-items: center;
  flex-wrap: wrap;
  gap: 6px;
  margin-top: 18px;
  color: var(--body);
  font-size: 14px;
  line-height: 1.4;
  font-weight: 650;
}

.skill-source-line b {
  color: var(--ink);
  font-weight: 820;
}

.skill-detail-scroll {
  min-height: 0;
  overflow-y: auto;
  padding: 0 24px;
}

.skill-detail-section {
  border-top: 1px solid var(--line);
  padding: 18px 0 20px;
}

.skill-detail-scroll > .skill-detail-section:first-child {
  border-top: 0;
}

.skill-detail-section h4 {
  margin: 0 0 12px;
  color: var(--ink);
  font-size: 19px;
  line-height: 1.25;
  font-weight: 850;
}

.skill-detail-section p {
  margin: 0;
  color: var(--body);
  font-size: 14px;
  line-height: 1.75;
}

.contract-chip-grid {
  display: flex;
  flex-wrap: wrap;
  gap: 10px 14px;
}

.contract-chip {
  min-height: 32px;
  display: inline-flex;
  align-items: center;
  gap: 12px;
  border-radius: 7px;
  padding: 0 14px;
  color: var(--body);
  font-size: 14px;
  font-weight: 680;
}

.contract-chip b {
  font-weight: 850;
}

.contract-chip.blue {
  background: var(--blue-bg);
}

.contract-chip.blue b {
  color: var(--blue);
}

.contract-chip.green {
  background: var(--green-bg);
}

.contract-chip.green b {
  color: var(--green);
}

.flow-step-list {
  display: grid;
  gap: 11px;
  margin: 0;
  padding: 0;
  list-style: none;
}

.flow-step-list li {
  display: grid;
  grid-template-columns: 22px minmax(0, 1fr);
  align-items: start;
  gap: 10px;
  color: var(--body);
  font-size: 14px;
  line-height: 1.45;
}

.flow-step-list li span {
  width: 22px;
  height: 22px;
  display: grid;
  place-items: center;
  border-radius: 999px;
  background: #101113;
  color: #fff;
  font-size: 12px;
  font-weight: 820;
  line-height: 1;
}

.flow-step-list li b {
  color: var(--body);
  font-weight: 690;
}

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

.skill-info-row {
  width: 100%;
  min-height: 74px;
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  align-items: center;
  gap: 18px;
  border: 0;
  border-bottom: 1px solid var(--line);
  background: transparent;
  color: var(--ink);
  padding: 16px 0;
  text-align: left;
}

.skill-info-row.actionable {
  cursor: pointer;
}

.skill-info-row.actionable:hover {
  background: linear-gradient(90deg, rgba(246, 247, 248, .78), transparent);
}

.skill-info-copy {
  min-width: 0;
  display: grid;
  gap: 6px;
}

.skill-info-copy b {
  font-size: 16px;
  line-height: 1.25;
  font-weight: 850;
}

.skill-info-copy small {
  color: var(--body);
  font-size: 14px;
  line-height: 1.45;
}

.skill-detail-footer {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(120px, 1fr));
  gap: 10px;
  border-top: 1px solid var(--line);
  background: rgba(255, 255, 255, .96);
  padding: 16px 24px 18px;
  box-shadow: 0 -8px 22px rgba(17, 18, 20, .035);
}

.skill-detail-footer .btn {
  min-height: 44px;
  border-radius: 10px;
  font-size: 14px;
  font-weight: 820;
}

.detail-title {
  display: grid;
  grid-template-columns: 50px minmax(0, 1fr) auto;
  gap: 14px;
  align-items: center;
}

.detail-panel .detail-title {
  grid-template-columns: minmax(0, 1fr) auto;
}

.detail-panel .detail-title .metric-icon {
  display: none;
}

.detail-title h3 {
  font-size: 20px;
  font-weight: 800;
}

.detail-section {
  border-top: 1px solid var(--line);
  padding-top: 16px;
}

.detail-section > b {
  display: block;
  margin-bottom: 10px;
  font-size: 14px;
  font-weight: 800;
}

.detail-section p,
.detail-section li {
  color: var(--body);
  font-size: 13px;
  line-height: 1.65;
}

.pill-grid {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
}

.flow-strip {
  min-height: 86px;
  display: grid;
  grid-template-columns:
    max-content minmax(40px, 1fr)
    max-content minmax(40px, 1fr)
    max-content minmax(40px, 1fr)
    max-content minmax(40px, 1fr)
    max-content;
  align-items: center;
  column-gap: 12px;
  border: 1px solid #e8eaee;
  border-radius: 16px;
  background: #fff;
  padding: 18px 22px;
  margin-bottom: 18px;
  box-shadow: inset 0 1px 0 rgba(255,255,255,.9), 0 8px 22px rgba(17, 18, 20, .025);
}

.flow-node {
  display: flex;
  align-items: center;
  gap: 12px;
  border: 0;
  background: transparent;
  padding: 0;
  color: var(--muted);
  font-size: 15px;
  font-weight: 800;
  min-width: 0;
  text-align: left;
}

.flow-node.active,
.flow-node.done {
  color: var(--ink);
}

.flow-node:focus-visible {
  outline: 2px solid rgba(16, 17, 19, .26);
  outline-offset: 6px;
  border-radius: 999px;
}

.flow-node .step-num {
  flex: 0 0 36px;
  width: 36px;
  height: 36px;
  display: inline-grid;
  place-items: center;
  border-radius: 999px;
  background: #b8bbc0;
  color: #fff;
  font-size: 15px;
  font-weight: 800;
  line-height: 1;
}

.flow-node.active .step-num,
.flow-node.done .step-num {
  background: #050505;
}

.flow-node .step-title {
  min-width: max-content;
}

.flow-node:not(.active):not(.done) .step-title {
  color: #8f9399;
}

.flow-edge {
  position: relative;
  display: block;
  width: 100%;
  height: 1px;
}

.flow-edge::before {
  content: "";
  position: absolute;
  left: 0;
  right: 6px;
  top: 0;
  height: 1px;
}

.flow-edge::after {
  content: "";
  position: absolute;
  right: 0;
  top: 50%;
  width: 7px;
  height: 7px;
  border-top: 1.4px solid currentColor;
  border-right: 1.4px solid currentColor;
  transform: translateY(-50%) rotate(45deg);
}

.flow-edge.edge-done,
.flow-edge.edge-active {
  color: #101113;
}

.flow-edge.edge-pending {
  color: #c4c7cb;
}

.flow-edge.edge-done::before,
.flow-edge.edge-pending::before {
  background-image: repeating-linear-gradient(
    to right,
    currentColor 0,
    currentColor 4px,
    transparent 4px,
    transparent 8px
  );
}

.flow-edge.edge-active::before {
  background: currentColor;
}

.deposition-page .flow-strip {
  min-height: 82px;
  display: flex;
  flex-wrap: nowrap;
  align-items: center;
  gap: 8px;
  overflow-x: auto;
  overflow-y: hidden;
  scrollbar-width: thin;
}

.deposition-page .flow-node {
  flex: 0 0 auto;
  gap: 9px;
  font-size: 14px;
  white-space: nowrap;
}

.deposition-page .flow-node .step-num {
  flex-basis: 34px;
  width: 34px;
  height: 34px;
}

.deposition-page .flow-edge {
  flex: 1 1 58px;
  min-width: 48px;
}

.step-check {
  flex: 0 0 18px;
  width: 18px;
  height: 18px;
  display: inline-grid;
  place-items: center;
  border-radius: 999px;
  background: #101113;
}

.step-check::after {
  content: "";
  width: 7px;
  height: 4px;
  border-left: 1.8px solid #fff;
  border-bottom: 1.8px solid #fff;
  transform: translateY(-1px) rotate(-45deg);
}

.asset-layout {
  display: grid;
  grid-template-columns: clamp(240px, 15vw, 300px) minmax(0, 1fr) clamp(280px, 18vw, 340px);
  gap: var(--workspace-gap);
}

.asset-layout.source-layout {
  grid-template-columns: minmax(0, 1fr) clamp(280px, 20vw, 360px);
}

.asset-layout.source-layout .deposition-left-rail {
  display: none;
}

.asset-layout.wide-layout {
  grid-template-columns: clamp(240px, 15vw, 300px) minmax(0, 1.35fr) clamp(260px, 17vw, 320px);
}

.asset-layout.deposition-no-right-layout {
  grid-template-columns: clamp(240px, 15vw, 300px) minmax(0, 1fr);
  align-items: start;
}

.asset-layout.deposition-full-layout {
  grid-template-columns: minmax(0, 1fr);
  align-items: start;
}

.deposition-main-stack {
  min-width: 0;
  display: grid;
  align-content: start;
  gap: var(--workspace-gap);
}

.deposition-inline-checklist-card {
  padding: 18px;
}

.deposition-inline-checklist {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 8px 14px;
}

.deposition-inline-checklist .check-row {
  min-height: 44px;
  border: 1px solid #eef0f3;
  border-radius: 10px;
  background: #fbfcfd;
  padding: 8px 10px;
}

.deposition-page {
  --deposition-card-radius: 16px;
  --deposition-inner-radius: 14px;
  --deposition-card-shadow: 0 18px 44px rgba(17, 18, 20, .055);
}

.deposition-page .side-rail {
  gap: 14px;
}

.deposition-step-brief {
  display: grid;
  grid-template-columns: .85fr 1.3fr 1fr;
  gap: 12px;
  margin: -4px 0 18px;
}

.deposition-step-brief div {
  border: 1px solid #e7e9ed;
  border-radius: 12px;
  background: rgba(255, 255, 255, .82);
  padding: 12px 14px;
}

.deposition-step-brief span,
.deposition-step-brief b {
  display: block;
}

.deposition-step-brief span {
  color: #858991;
  font-size: 11px;
  line-height: 1.2;
  font-weight: 820;
}

.deposition-step-brief b {
  margin-top: 5px;
  color: #22262d;
  font-size: 13px;
  line-height: 1.45;
  font-weight: 760;
}

.deposition-work-card {
  overflow: hidden;
  background: rgba(255, 255, 255, .9);
}

.deposition-work-card .table-head {
  min-height: 68px;
  align-items: center;
  padding: 24px 28px 16px;
}

.deposition-step-body {
  display: grid;
  gap: 14px;
  padding: 16px 20px 20px;
}

.deposition-name-card {
  display: grid;
  grid-template-columns: minmax(360px, 1fr) max-content;
  align-items: center;
  gap: 16px;
  border: 1px solid #e5e8ec;
  border-radius: 14px;
  background: #fff;
  padding: 16px;
}

.deposition-name-field {
  margin: 0;
}

.deposition-name-card p {
  margin: 24px 0 0;
  color: #747983;
  font-size: 12px;
  line-height: 1.55;
  font-weight: 650;
  white-space: nowrap;
}

.deposition-side-card {
  border: 1px solid rgba(229, 231, 235, .92);
  border-radius: var(--deposition-card-radius);
  background: rgba(255, 255, 255, .94);
  box-shadow: var(--deposition-card-shadow);
  padding: 20px;
}

.deposition-side-card h3 {
  margin: 0;
  color: #101113;
  font-size: 18px;
  line-height: 1.2;
  font-weight: 860;
}

.deposition-card-copy {
  margin: 14px 0 0;
  color: #626873;
  font-size: 13px;
  line-height: 1.65;
  font-weight: 650;
}

.deposition-check-panel {
  padding: 20px;
  background: rgba(255, 255, 255, .94);
  box-shadow: var(--deposition-card-shadow);
}

.deposition-check-panel .check-list {
  margin-top: 16px;
}

.deposition-file-list,
.deposition-todo-list {
  margin-top: 16px;
  border: 1px solid #e7e9ed;
  border-radius: var(--deposition-inner-radius);
  background: #fff;
  overflow: hidden;
}

.deposition-file-row {
  min-height: 74px;
  display: grid;
  grid-template-columns: 38px minmax(0, 1fr) auto;
  align-items: center;
  gap: 12px;
  padding: 13px 14px;
}

.deposition-file-row + .deposition-file-row {
  border-top: 1px solid #edf0f3;
}

.deposition-file-icon {
  width: 38px;
  height: 38px;
  display: grid;
  place-items: center;
  border-radius: 9px;
  border: 1px solid #dfe3e8;
  background: #fff;
  color: #22262d;
  font-size: 10px;
  line-height: 1;
  font-weight: 900;
  letter-spacing: 0;
}

.deposition-file-icon.red,
.deposition-file-icon.green,
.deposition-file-icon.blue {
  color: #22262d;
}

.deposition-file-copy {
  min-width: 0;
}

.deposition-file-copy b,
.deposition-file-copy span {
  display: block;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.deposition-file-copy b {
  color: #25282d;
  font-size: 14px;
  line-height: 1.25;
  font-weight: 820;
}

.deposition-file-copy span {
  margin-top: 5px;
  color: #858991;
  font-size: 13px;
  line-height: 1.2;
  font-weight: 680;
}

.deposition-file-check {
  width: 22px;
  height: 22px;
  display: grid;
  place-items: center;
  border: 2px solid #30343a;
  border-radius: 50%;
  color: #30343a;
}

.deposition-file-check .ui-icon {
  width: 13px;
  height: 13px;
  stroke-width: 3;
}

.source-material-card .deposition-file-row {
  grid-template-columns: 38px minmax(0, 1fr);
  gap: 12px 14px;
}

.source-material-card .deposition-file-row > .status {
  grid-column: 2;
  justify-self: start;
}

.source-material-card .deposition-file-copy b {
  max-width: none;
}

.deposition-section-title {
  display: flex;
  align-items: center;
  gap: 6px;
  margin-top: 24px;
}

.deposition-section-title h4 {
  margin: 0;
  color: #202328;
  font-size: 18px;
  line-height: 1.25;
  font-weight: 860;
}

.deposition-source-types {
  display: grid;
  margin-top: 16px;
  border: 1px solid #e7e9ed;
  border-radius: var(--deposition-inner-radius);
  background: #fff;
  overflow: hidden;
}

.deposition-source-type {
  min-height: 44px;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 18px;
  color: #585d66;
  padding: 0 14px;
  font-size: 14px;
  line-height: 1.25;
  font-weight: 760;
}

.deposition-source-type + .deposition-source-type {
  border-top: 1px solid #edf0f3;
}

.deposition-source-type b {
  color: #22252a;
  font-size: 15px;
  font-weight: 860;
}

.business-check-card {
  padding: 20px 20px 16px;
}

.deposition-todo-list {
  padding: 4px 0;
}

.deposition-todo-row {
  min-height: 46px;
  display: grid;
  grid-template-columns: 24px minmax(0, 1fr);
  align-items: center;
  gap: 10px;
  padding: 8px 14px;
  color: #2b2e33;
  font-size: 14px;
  line-height: 1.25;
  font-weight: 760;
}

.deposition-todo-row input {
  appearance: none;
  width: 18px;
  height: 18px;
  margin: 0;
  border: 2px solid #858b93;
  border-radius: 4px;
  background: #fff;
}

.deposition-todo-row input:checked {
  border-color: #101113;
  background: #101113;
  box-shadow: inset 0 0 0 3px #fff;
}

.deposition-todo-row input:focus-visible {
  outline: 2px solid rgba(16, 17, 19, .28);
  outline-offset: 3px;
}

.deposition-card-hint {
  display: flex;
  align-items: center;
  gap: 8px;
  margin: 16px 0 0;
  color: #858991;
  font-size: 12px;
  line-height: 1.35;
  font-weight: 700;
}

.deposition-card-hint .ui-icon {
  width: 16px;
  height: 16px;
  stroke-width: 2.2;
}

.deposition-mode-grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 12px;
}

.deposition-source-work-card .deposition-mode-grid {
  grid-template-columns: repeat(3, minmax(180px, 1fr));
}

.deposition-mode-card {
  min-height: 128px;
  display: grid;
  grid-template-columns: minmax(0, 1fr);
  align-content: start;
  gap: 12px;
  border: 1px solid #e3e6ea;
  border-radius: 14px;
  background: #fff;
  color: #101113;
  padding: 16px;
  text-align: left;
}

.deposition-mode-card:hover,
.deposition-mode-card.active {
  border-color: #101113;
  box-shadow: 0 14px 28px rgba(17, 18, 20, .06);
}

.deposition-mode-card strong {
  width: fit-content;
  border-radius: 999px;
  background: #f1f2f4;
  color: #202328;
  padding: 3px 8px;
  font-size: 12px;
  line-height: 1.2;
  font-weight: 820;
}

.deposition-mode-card b,
.deposition-mode-card small {
  display: block;
}

.deposition-mode-card b {
  font-size: 15px;
  line-height: 1.25;
  font-weight: 850;
}

.deposition-mode-card small {
  margin-top: 7px;
  color: #686e78;
  font-size: 12px;
  line-height: 1.55;
  font-weight: 650;
}

.source-input-panel {
  border: 1px solid #e5e8ec;
  border-radius: 14px;
  background: #fff;
  padding: 16px;
}

.source-input-panel .panel-head {
  margin-bottom: 14px;
}

.source-input-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 14px 16px;
}

.source-input-field {
  min-width: 0;
  margin-bottom: 0;
}

.source-input-field.wide {
  grid-column: 1 / -1;
}

.source-upload-box {
  min-height: 116px;
  grid-column: 1 / -1;
  display: grid;
  align-content: center;
  gap: 8px;
  border: 1px dashed #cfd4da;
  border-radius: 12px;
  background: #fafafa;
  color: #202328;
  padding: 20px;
  cursor: pointer;
}

.source-upload-box:hover {
  border-color: #101113;
  background: #f6f6f6;
}

.source-upload-box input {
  display: none;
}

.source-upload-box b,
.source-upload-box span {
  display: block;
}

.source-upload-box b {
  font-size: 15px;
  line-height: 1.25;
  font-weight: 850;
}

.source-upload-box span {
  color: #626873;
  font-size: 12px;
  line-height: 1.55;
  font-weight: 650;
}

.source-input-panel .textarea {
  min-height: 108px;
}

.deposition-preview-card,
.knowledge-entry-card {
  border: 1px solid #e5e8ec;
  border-radius: 14px;
  background: #fff;
  padding: 16px;
}

.deposition-preview-card .panel-head,
.knowledge-entry-card .panel-head {
  margin-bottom: 12px;
}

.deposition-source-snippets {
  display: grid;
  gap: 10px;
}

.deposition-source-snippets p {
  display: grid;
  gap: 4px;
  margin: 0;
  border: 1px solid #edf0f3;
  border-radius: 10px;
  background: #fbfcfd;
  padding: 12px;
}

.deposition-source-snippets b {
  color: #202328;
  font-size: 13px;
  line-height: 1.25;
  font-weight: 850;
}

.deposition-source-snippets span {
  color: #626873;
  font-size: 12px;
  line-height: 1.55;
  font-weight: 650;
}

.deposition-candidate {
  min-height: 82px;
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto auto;
  align-items: center;
  gap: 12px;
  border: 1px solid #e3e6ea;
  border-radius: 14px;
  background: #fff;
  padding: 14px 16px;
}

.deposition-page .confirmation-card {
  grid-template-columns: minmax(0, 1fr);
  align-items: stretch;
}

.deposition-page .confirmation-card .icon-btn {
  color: #101113;
}

.deposition-candidate .icon-btn {
  width: auto;
  min-width: 54px;
  padding: 0 12px;
  font-size: 12px;
  font-weight: 800;
}

.deposition-confirmation-card .confirmation-actions .btn {
  width: auto;
  min-width: 66px;
  min-height: 34px;
  padding: 0 10px;
  font-size: 12px;
  font-weight: 820;
}

.deposition-confirmation-card {
  gap: 12px;
}

.deposition-confirmation-card .confirmation-body {
  display: grid;
  gap: 10px;
}

.confirmation-title-row {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
}

.confirmation-title-row .status {
  display: inline-flex;
  margin-top: 0;
}

.confirmation-textarea {
  min-height: 74px;
}

.confirmation-status-actions {
  display: flex;
  align-items: center;
  justify-content: flex-end;
  gap: 8px;
  flex-wrap: wrap;
}

.deposition-page .confirmation-status-actions .btn.primary {
  border-color: #050505;
  background: #050505;
  color: #fff;
  box-shadow: none;
}

.entry-edit-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 14px 18px;
}

.entry-edit-grid .field {
  min-width: 0;
  margin-bottom: 0;
}

.entry-edit-grid .field:has(textarea) {
  grid-column: 1 / -1;
}

.entry-edit-grid .textarea {
  min-height: 92px;
}

.source-location-list,
.conflict-list {
  display: grid;
  gap: 12px;
}

.source-location-list article {
  min-height: 72px;
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  align-items: center;
  gap: 12px;
  border: 1px solid #e3e6ea;
  border-radius: 14px;
  background: #fff;
  padding: 14px 16px;
}

.source-location-list b,
.source-location-list span {
  display: block;
}

.source-location-list b {
  color: #101113;
  font-size: 15px;
  line-height: 1.25;
  font-weight: 850;
}

.source-location-list span {
  margin-top: 5px;
  color: #626873;
  font-size: 12px;
  line-height: 1.5;
  font-weight: 650;
}

.deposition-candidate.accepted {
  background: #fff;
  border-color: #dfe3e8;
}

.deposition-candidate-copy {
  min-width: 0;
}

.deposition-candidate-copy b,
.deposition-candidate-copy span {
  display: block;
}

.deposition-candidate-copy b {
  color: #101113;
  font-size: 16px;
  line-height: 1.25;
  font-weight: 860;
}

.deposition-candidate-copy span {
  margin-top: 4px;
  color: #626873;
  font-size: 12px;
  line-height: 1.5;
  font-weight: 650;
}

.evidence-link {
  width: fit-content;
  margin-top: 9px;
  border: 0;
  background: transparent;
  color: #101113;
  padding: 0;
  font-size: 12px;
  line-height: 1.2;
  font-weight: 850;
  text-decoration: underline;
  text-underline-offset: 3px;
}

.evidence-panel {
  grid-column: 1 / -1;
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  gap: 10px 14px;
  border: 1px solid #dfe4ea;
  border-radius: 12px;
  background: #fbfcfd;
  padding: 12px 14px;
}

.evidence-panel div {
  display: grid;
  gap: 4px;
}

.evidence-panel b,
.evidence-panel span {
  display: block;
}

.evidence-panel b {
  color: #22262d;
  font-size: 12px;
  line-height: 1.2;
  font-weight: 850;
}

.evidence-panel span,
.evidence-panel p {
  color: #626873;
  font-size: 12px;
  line-height: 1.55;
  font-weight: 650;
}

.evidence-panel p {
  grid-column: 1 / -1;
  margin: 0;
}

.evidence-panel strong {
  align-self: start;
  border-radius: 999px;
  background: #f1f2f4;
  color: #202328;
  padding: 3px 8px;
  font-size: 11px;
  line-height: 1.2;
  font-weight: 850;
}

.knowledge-entry-title {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  align-items: center;
  gap: 14px;
  margin-bottom: 16px;
}

.knowledge-entry-title h3 {
  margin: 0;
  color: #101113;
  font-size: 18px;
  line-height: 1.25;
  font-weight: 860;
}

.knowledge-entry-title span {
  color: #747983;
  font-size: 12px;
  line-height: 1.35;
  font-weight: 650;
}

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

.entry-field-grid .check-row {
  border: 1px solid #edf0f3;
  border-radius: 10px;
  padding: 12px;
}

.entry-tags {
  margin-top: 16px;
}

.add-tag {
  border: 1px dashed #cfd4da;
  background: #fff;
  cursor: pointer;
}

.evaluation-score-grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 12px;
}

.evaluation-score-grid article {
  min-height: 118px;
  display: grid;
  align-content: center;
  gap: 7px;
  border: 1px solid #e5e8ec;
  border-radius: 14px;
  background: #fff;
  padding: 18px;
}

.evaluation-score-grid span,
.evaluation-score-grid small {
  color: #747983;
  font-size: 12px;
  line-height: 1.35;
  font-weight: 700;
}

.evaluation-score-grid b {
  color: #101113;
  font-size: 30px;
  line-height: 1;
  font-weight: 900;
}

.skill-suggestion {
  display: grid;
  grid-template-columns: minmax(0, 1fr);
  align-items: center;
  gap: 14px;
}

.skill-suggestion b,
.skill-suggestion span {
  display: block;
}

.skill-suggestion b {
  font-size: 16px;
  line-height: 1.3;
  font-weight: 860;
}

.skill-suggestion span {
  margin-top: 5px;
  color: #626873;
  font-size: 13px;
  line-height: 1.55;
  font-weight: 650;
}

.deposition-check-toggle-list {
  display: grid;
  gap: 12px;
  margin-top: 16px;
}

.check-row.toggle {
  width: 100%;
  border: 1px solid #edf0f3;
  border-radius: 10px;
  background: #fff;
  padding: 12px;
  text-align: left;
}

.check-row.toggle.checked {
  background: #fff;
  border-color: #101113;
}

.skill-gate-row {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  align-items: center;
  border-bottom: 0;
}

.skill-gate-row.needs-work {
  border-color: #f1dfb9;
  background: #fffdf8;
}

.skill-gate-row span:first-child {
  display: grid;
  gap: 4px;
}

.skill-gate-row b {
  color: var(--ink);
  font-size: 13px;
  line-height: 1.25;
  font-weight: 820;
}

.skill-gate-row small {
  color: var(--muted);
  font-size: 12px;
  line-height: 1.45;
  font-weight: 650;
}

@media (min-width: 1281px) {
  .deposition-page .asset-layout.wide-layout .source-material-card {
    max-height: none;
  }

  .deposition-page .asset-layout.confirm-layout {
    align-items: stretch;
  }

  .deposition-page .asset-layout.confirm-layout > .side-rail {
    height: 100%;
    grid-template-rows: auto minmax(0, 1fr);
  }

  .deposition-page .asset-layout.confirm-layout > main.table-card {
    height: 100%;
  }

  .deposition-page .asset-layout.confirm-layout > .side-rail > :last-child {
    min-height: 0;
  }

  .deposition-page .asset-layout.confirm-layout > .skill-knowledge-left-rail,
  .deposition-page .asset-layout.confirm-layout > .skill-knowledge-right-rail,
  .deposition-page .asset-layout.confirm-layout > .skill-create-right-rail {
    height: auto;
    grid-template-rows: none;
  }

  .deposition-page .asset-layout.confirm-layout > .skill-knowledge-left-rail > :last-child,
  .deposition-page .asset-layout.confirm-layout > .skill-knowledge-right-rail > :last-child,
  .deposition-page .asset-layout.confirm-layout > .skill-create-right-rail > :last-child {
    min-height: auto;
  }
}

.confirmation-card {
  min-height: 60px;
  display: grid;
  grid-template-columns: 34px minmax(0, 1fr) auto;
  align-items: center;
  gap: 12px;
  border: 1px solid var(--line);
  border-radius: 12px;
  background: #fff;
  padding: 12px 14px;
}

.confirmation-card + .confirmation-card {
  margin-top: 10px;
}

.check-list {
  display: grid;
  gap: 12px;
}

.check-row {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
  border-bottom: 1px solid var(--line);
  padding: 0 0 12px;
  color: var(--body);
  font-size: 13px;
}

.check-row:last-child {
  border-bottom: 0;
  padding-bottom: 0;
}

.bottom-actions {
  position: sticky;
  bottom: 0;
  z-index: 10;
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 18px;
  border: 1px solid var(--line);
  border-radius: var(--radius);
  background: rgba(255,255,255,.92);
  backdrop-filter: blur(12px);
  padding: 14px;
  margin-top: 18px;
}

.bottom-actions .btn {
  min-width: 150px;
}

.category-list {
  display: grid;
  gap: 0;
  border: 1px solid var(--line);
  border-radius: 12px;
  overflow: hidden;
}

.category-list button,
.side-action {
  min-height: 54px;
  display: grid;
  grid-template-columns: 34px minmax(0, 1fr) auto;
  align-items: center;
  gap: 10px;
  border: 0;
  border-bottom: 1px solid var(--line);
  background: #fff;
  color: var(--ink);
  padding: 10px 12px;
  text-align: left;
  font-size: 14px;
  font-weight: 750;
}

.category-list button:last-child {
  border-bottom: 0;
}

.category-list button.active {
  background: var(--surface-soft);
}

.run-line {
  display: grid;
  grid-template-columns: 22px minmax(0, 1fr) auto;
  gap: 10px;
  align-items: center;
  padding: 10px 0;
}

.run-dot {
  width: 10px;
  height: 10px;
  border: 2px solid #111;
  border-radius: 50%;
  justify-self: center;
}

.empty-card {
  min-height: 280px;
  display: grid;
  place-items: center;
  text-align: center;
  padding: 36px;
}

.empty-card h3 {
  margin: 0;
  font-size: 22px;
  font-weight: 800;
}

.empty-card p {
  max-width: 520px;
  margin: 10px auto 0;
  color: var(--muted);
}

.modal-backdrop {
  position: fixed;
  inset: 0;
  z-index: 80;
  display: grid;
  place-items: center;
  padding: 24px;
  background: rgba(16,17,19,.34);
}

.modal {
  width: min(720px, 100%);
  border: 1px solid var(--line);
  border-radius: var(--radius-lg);
  background: #fff;
  box-shadow: 0 34px 90px rgba(0,0,0,.22);
  overflow: hidden;
}

.skill-create-modal {
  width: min(980px, 100%);
  max-height: min(760px, calc(100vh - 48px));
  display: grid;
  grid-template-rows: auto minmax(0, 1fr) auto;
}

.modal-head,
.modal-body,
.modal-actions {
  padding: 22px 24px;
}

.modal-head {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: 18px;
  border-bottom: 1px solid var(--line);
}

.modal-head h3 {
  margin: 0;
  font-size: 22px;
  font-weight: 800;
}

.modal-head p {
  margin: 8px 0 0;
  color: var(--muted);
  font-size: 13px;
  line-height: 1.55;
}

.field {
  display: grid;
  gap: 8px;
  margin-bottom: 14px;
}

.field span {
  font-size: 13px;
  font-weight: 800;
}

.input,
.textarea,
.select {
  width: 100%;
  border: 1px solid var(--line);
  border-radius: 10px;
  background: #fff;
  color: var(--ink);
  padding: 11px 12px;
  outline: none;
}

.textarea {
  min-height: 112px;
  resize: vertical;
}

.modal-actions {
  display: flex;
  justify-content: flex-end;
  gap: 12px;
  border-top: 1px solid var(--line);
}

.skill-create-body {
  display: grid;
  gap: 20px;
  overflow-y: auto;
}

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

.skill-create-section-head {
  display: grid;
  gap: 4px;
}

.skill-create-section-head h4,
.skill-create-section-head p {
  margin: 0;
}

.skill-create-section h4 {
  margin: 0;
  font-size: 16px;
  line-height: 1.3;
  font-weight: 820;
}

.skill-create-section-head p {
  color: var(--muted);
  font-size: 13px;
  line-height: 1.45;
  font-weight: 650;
}

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

.skill-create-mode-card {
  position: relative;
  min-height: 126px;
  display: grid;
  align-content: start;
  gap: 7px;
  border: 1px solid var(--line);
  border-radius: 14px;
  background: #fff;
  color: var(--ink);
  padding: 18px 44px 18px 20px;
  text-align: left;
}

.skill-create-mode-card:hover,
.skill-create-mode-card.active {
  border-color: var(--black);
  box-shadow: 0 14px 30px rgba(17, 18, 20, .07);
}

.skill-create-mode-card b {
  font-size: 17px;
  line-height: 1.25;
  font-weight: 830;
}

.skill-create-mode-card > span:not(.mode-kicker) {
  color: var(--muted);
  font-size: 13px;
  line-height: 1.55;
}

.skill-create-mode-card .mode-kicker {
  color: var(--body);
  font-size: 12px;
  font-weight: 800;
}

.skill-create-mode-card .chevron {
  position: absolute;
  right: 18px;
  top: 50%;
  transform: translateY(-50%);
  color: var(--faint);
  font-style: normal;
  font-size: 22px;
  line-height: 1;
}

/* Skill create pages */

.skill-create-page {
  --content-max: none;
  --skill-create-left-width: clamp(240px, 17vw, 300px);
  --skill-create-right-width: clamp(320px, 20vw, 360px);
}

.skill-knowledge-page {
  --deposition-card-radius: 16px;
  --deposition-inner-radius: 14px;
  --deposition-card-shadow: 0 18px 44px rgba(17, 18, 20, .055);
}

.skill-build-header {
  display: grid;
  gap: 0;
}

.skill-build-header .detail-tags {
  margin-bottom: 20px;
}

.skill-build-flow {
  grid-template-columns: none;
  grid-auto-flow: column;
  grid-auto-columns: max-content minmax(44px, 1fr);
  width: 100%;
}

.skill-build-flow .flow-node {
  min-width: 0;
  white-space: nowrap;
}

.skill-build-flow .flow-node .step-title {
  min-width: 0;
}

.skill-professional-page .skill-build-flow {
  grid-auto-columns: max-content minmax(18px, .65fr);
  column-gap: 8px;
  overflow: hidden;
  padding-inline: 16px;
}

.skill-professional-page .skill-build-flow .flow-node {
  gap: 8px;
  font-size: 13px;
}

.skill-professional-page .skill-build-flow .flow-node .step-num {
  flex-basis: 32px;
  width: 32px;
  height: 32px;
  font-size: 14px;
}

.skill-professional-page .skill-build-flow .flow-edge {
  min-width: 18px;
}

.skill-knowledge-page .flow-strip,
.skill-dialogue-page .flow-strip,
.skill-mode-page .flow-strip {
  margin-bottom: 18px;
}

.skill-knowledge-layout > main {
  min-width: 0;
}

.skill-create-page .skill-knowledge-layout {
  grid-template-columns: var(--skill-create-left-width) minmax(0, 1fr) var(--skill-create-right-width);
}

.skill-create-page .skill-knowledge-layout.source-layout {
  grid-template-columns: minmax(0, 1fr) var(--skill-create-right-width);
}

.skill-create-page .skill-knowledge-layout.wide-layout {
  grid-template-columns: var(--skill-create-left-width) minmax(0, 1.35fr) var(--skill-create-right-width);
}

.skill-create-page .skill-knowledge-layout.knowledge-full-layout {
  grid-template-columns: minmax(0, 1fr);
}

.skill-create-page .skill-knowledge-layout.knowledge-no-right-layout {
  grid-template-columns: var(--skill-create-left-width) minmax(0, 1fr);
}

.skill-create-page .skill-knowledge-layout.professional-no-left-layout {
  grid-template-columns: minmax(0, 1fr) var(--skill-create-right-width);
}

.skill-create-page .skill-knowledge-layout.professional-full-layout {
  grid-template-columns: minmax(0, 1fr);
}

.skill-create-page .skill-dialogue-layout.dialogue-full-layout {
  grid-template-columns: minmax(0, 1fr);
}

.skill-source-select-grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 12px;
}

.skill-source-select-card {
  min-height: 118px;
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  align-content: start;
  gap: 12px;
  border: 1px solid #e3e6ea;
  border-radius: 14px;
  background: #fff;
  color: #101113;
  padding: 16px;
  text-align: left;
}

.skill-source-select-card:hover,
.skill-source-select-card.active {
  border-color: #101113;
  box-shadow: 0 14px 28px rgba(17, 18, 20, .06);
}

.skill-source-select-card b,
.skill-source-select-card small {
  display: block;
}

.skill-source-select-card b {
  font-size: 15px;
  line-height: 1.3;
  font-weight: 850;
}

.skill-source-select-card small {
  margin-top: 7px;
  color: #686e78;
  font-size: 12px;
  line-height: 1.45;
  font-weight: 650;
}

.selected-knowledge-card {
  display: grid;
  gap: 14px;
}

.selected-knowledge-card .knowledge-entry-title {
  margin-bottom: 0;
}

.selected-knowledge-meta {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 10px;
}

.selected-knowledge-meta .check-row {
  border: 1px solid #edf0f3;
  border-radius: 10px;
  padding: 10px 12px;
}

.selected-knowledge-actions {
  display: flex;
  justify-content: flex-end;
  gap: 10px;
  flex-wrap: wrap;
}

.recommended-knowledge-card {
  display: grid;
  gap: 14px;
}

.recommended-knowledge-card .panel-head {
  margin-bottom: 0;
}

.recommended-knowledge-card .panel-head p {
  margin: 5px 0 0;
  color: #747983;
  font-size: 12px;
  line-height: 1.5;
  font-weight: 650;
}

.skill-knowledge-picker-modal {
  width: min(1040px, 100%);
  max-height: min(820px, calc(100vh - 48px));
  display: grid;
  grid-template-rows: auto minmax(0, 1fr) auto;
}

.skill-knowledge-picker-body {
  display: grid;
  grid-template-rows: auto minmax(0, 1fr);
  gap: 14px;
  overflow: hidden;
}

.skill-knowledge-picker-toolbar {
  display: grid;
  grid-template-columns: minmax(260px, 1fr) minmax(180px, 220px);
  gap: 12px;
}

.skill-knowledge-picker-toolbar .search {
  width: 100%;
}

.filter-select {
  min-height: var(--control-height);
  display: grid;
  grid-template-columns: auto minmax(0, 1fr);
  align-items: center;
  gap: 8px;
  border: 1px solid var(--line);
  border-radius: var(--control-radius);
  background: #fff;
  padding: 0 12px;
}

.filter-select span {
  color: var(--muted);
  font-size: 12px;
  line-height: 1;
  font-weight: 800;
}

.filter-select select {
  min-width: 0;
  border: 0;
  outline: 0;
  background: transparent;
  color: var(--ink);
  font-size: 13px;
  font-weight: 750;
}

.skill-knowledge-list {
  min-height: 0;
  display: grid;
  align-content: start;
  gap: 10px;
  overflow-y: auto;
  padding-right: 4px;
}

.skill-knowledge-list-row {
  width: 100%;
  min-height: 112px;
  display: grid;
  grid-template-columns: 22px minmax(0, 1fr) auto;
  align-items: center;
  gap: 14px;
  border: 1px solid #e3e6ea;
  border-radius: 14px;
  background: #fff;
  color: var(--ink);
  padding: 14px 16px;
  text-align: left;
}

.skill-knowledge-list-row:hover,
.skill-knowledge-list-row.active {
  border-color: #101113;
  box-shadow: 0 12px 26px rgba(17, 18, 20, .055);
}

.knowledge-select-radio {
  width: 18px;
  height: 18px;
  border: 2px solid #c7ccd3;
  border-radius: 50%;
  background: #fff;
}

.skill-knowledge-list-row.active .knowledge-select-radio {
  border-color: #101113;
  box-shadow: inset 0 0 0 4px #fff;
  background: #101113;
}

.skill-knowledge-list-main {
  min-width: 0;
  display: grid;
  gap: 5px;
}

.skill-knowledge-list-main b {
  color: #101113;
  font-size: 15px;
  line-height: 1.28;
  font-weight: 860;
}

.skill-knowledge-list-main small {
  color: #6c727c;
  font-size: 12px;
  line-height: 1.35;
  font-weight: 700;
}

.skill-knowledge-list-main em {
  color: #4d535d;
  font-size: 12px;
  line-height: 1.55;
  font-style: normal;
  font-weight: 650;
}

.skill-knowledge-list-side {
  min-width: 130px;
  display: grid;
  justify-items: end;
  gap: 7px;
}

.skill-knowledge-list-side strong {
  color: #626873;
  font-size: 12px;
  line-height: 1.2;
  font-weight: 800;
}

.small-empty {
  min-height: 160px;
  display: grid;
  place-items: center;
  align-content: center;
  gap: 6px;
  border: 1px dashed #d8dde3;
  border-radius: 14px;
  background: #fbfcfd;
  text-align: center;
}

.small-empty b {
  color: var(--ink);
  font-size: 15px;
  font-weight: 850;
}

.small-empty span {
  color: var(--muted);
  font-size: 13px;
  font-weight: 650;
}

.skill-source-meta-list {
  display: grid;
  gap: 10px;
  margin-top: 16px;
}

.skill-source-meta-list .check-row {
  padding-bottom: 10px;
}

.skill-knowledge-summary-card {
  height: 320px;
  overflow-y: auto;
}

.skill-build-inline-gate {
  display: grid;
  grid-template-columns: repeat(5, minmax(0, 1fr));
  gap: 10px;
}

.skill-build-inline-gate article {
  min-height: 82px;
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  align-content: start;
  gap: 6px 8px;
  border: 1px solid #e5e8ec;
  border-radius: 12px;
  background: #fff;
  padding: 12px;
}

.skill-build-inline-gate span {
  color: #69717c;
  font-size: 12px;
  line-height: 1.35;
  font-weight: 760;
}

.skill-build-inline-gate b {
  grid-column: 1;
  color: #111318;
  font-size: 18px;
  line-height: 1.2;
  font-weight: 880;
}

.skill-build-inline-gate small {
  grid-column: 1 / -1;
  color: #737b86;
  font-size: 11px;
  line-height: 1.35;
  font-weight: 650;
}

.skill-build-inline-gate .status {
  grid-column: 2;
  grid-row: 1 / span 2;
  align-self: start;
}

.skill-build-checklist-card {
  padding: 16px;
}

.skill-build-checklist {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 8px 14px;
}

.skill-build-checklist .check-row {
  min-height: 44px;
  border: 1px solid #eef0f3;
  border-radius: 10px;
  background: #fbfcfd;
  padding: 8px 10px;
}

.skill-draft-expand-list {
  overflow: hidden;
  border: 1px solid #e5e8ec;
  border-radius: 14px;
  background: #fff;
}

.skill-draft-expand-row + .skill-draft-expand-row {
  border-top: 1px solid #edf0f3;
}

.skill-draft-row-head {
  width: 100%;
  min-height: 58px;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 16px;
  border: 0;
  background: #fbfcfd;
  color: #101113;
  padding: 0 16px;
  text-align: left;
}

.skill-draft-row-head:hover {
  background: #f6f7f8;
}

.skill-draft-label-inline {
  display: inline-flex;
  align-items: center;
  min-width: 0;
}

.skill-draft-label-inline b {
  font-size: 15px;
  line-height: 1.3;
  font-weight: 860;
}

.skill-draft-row-body {
  color: #3d3f43;
  border-top: 1px solid #edf0f3;
  padding: 13px 18px 15px;
  font-size: 13px;
  line-height: 1.65;
  font-weight: 650;
}

.skill-draft-row-body ul,
.skill-draft-row-body ol {
  display: grid;
  gap: 5px;
  margin: 0;
  padding-left: 18px;
}

.skill-todo-row.done {
  border-color: #dcefe3;
  background: #fbfffc;
}

.skill-todo-row .status.blue {
  white-space: nowrap;
}

.skill-config-confirm-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 14px;
}

.skill-config-confirm-card {
  display: grid;
  align-content: start;
  gap: 18px;
}

.skill-config-confirm-card .panel-head {
  align-items: start;
  margin-bottom: 0;
}

.skill-config-confirm-card .panel-head > div {
  display: grid;
  gap: 5px;
}

.skill-config-confirm-card .panel-head p {
  margin: 0;
  color: var(--muted);
  font-size: 12px;
  line-height: 1.45;
  font-weight: 650;
}

.skill-config-confirm-card .field {
  margin-bottom: 0;
}

.skill-config-confirm-card .textarea {
  min-height: 118px;
}

.skill-config-confirm-card .btn {
  justify-self: start;
}

.skill-test-case-list {
  display: grid;
  gap: 12px;
}

.skill-test-case {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  align-items: end;
  gap: 12px;
  border: 1px solid #e5e8ec;
  border-radius: 14px;
  background: #fff;
  padding: 14px;
}

.skill-test-case .entry-edit-grid {
  gap: 12px;
}

.skill-test-case .textarea {
  min-height: 76px;
}

.skill-generated-card {
  display: grid;
  gap: 7px;
  border: 1px solid #dbeee2;
  border-radius: 14px;
  background: #fbfffc;
  padding: 16px;
}

.skill-generated-card b {
  display: flex;
  align-items: center;
  gap: 8px;
  color: #101113;
  font-size: 15px;
  line-height: 1.35;
  font-weight: 880;
}

.skill-generated-card .ui-icon {
  width: 18px;
  height: 18px;
  color: #1c8b4a;
}

.skill-generated-card span {
  color: #626873;
  font-size: 13px;
  line-height: 1.55;
  font-weight: 650;
}

/* Skill create mode pages */

.skill-mode-page {
  --deposition-card-radius: 16px;
  --deposition-inner-radius: 14px;
  --deposition-card-shadow: 0 18px 44px rgba(17, 18, 20, .055);
  --skill-mode-right-width: var(--skill-create-right-width);
}

.skill-mode-flow {
  min-height: 74px;
}

.skill-mode-layout {
  grid-template-columns: clamp(170px, 12vw, 220px) minmax(0, 1fr) var(--skill-mode-right-width);
  gap: var(--workspace-gap);
}

.skill-mode-unified-layout {
  grid-template-columns: var(--skill-create-left-width) minmax(0, 1fr) var(--skill-create-right-width);
  gap: var(--workspace-gap);
  align-items: start;
}

.skill-template-structured-layout {
  grid-template-columns: minmax(0, 1fr);
}

.skill-template-structured-layout.skill-template-full-layout {
  grid-template-columns: minmax(0, 1fr);
}

.skill-template-structured-layout.skill-template-context-layout {
  grid-template-columns: var(--skill-create-left-width) minmax(0, 1fr);
}

.skill-template-structured-layout > .skill-work-card {
  width: 100%;
  max-width: none;
}

.skill-build-left-rail {
  min-width: 0;
  display: grid;
  align-content: start;
  gap: var(--workspace-gap);
}

.skill-build-source-card {
  display: grid;
  gap: 12px;
}

.skill-build-source-card .panel-head {
  margin-bottom: 0;
}

.skill-build-source-card .deposition-card-copy {
  margin-top: 0;
}

.skill-template-layout {
  grid-template-columns: minmax(0, 1fr) var(--skill-mode-right-width);
  gap: var(--workspace-gap);
  align-items: stretch;
}

.skill-template-work {
  min-width: 0;
}

.skill-create-right-rail,
.skill-mode-right-rail {
  min-width: 0;
  display: grid;
  align-content: start;
  gap: var(--workspace-gap);
}

.skill-create-right-rail > .panel,
.skill-create-right-rail > .deposition-side-card {
  min-width: 0;
}

.skill-mode-check-panel {
  display: grid;
  align-content: start;
  gap: 14px;
}

.skill-mode-check-panel .panel-head {
  margin-bottom: 0;
}

.skill-mode-check-panel .check-list {
  margin-top: 0;
  gap: 0;
}

.skill-unified-check-panel {
  display: grid;
  align-content: start;
  gap: 14px;
  padding: 20px;
}

.skill-unified-check-panel .panel-head {
  margin-bottom: 0;
}

.skill-unified-check-panel h3 {
  font-size: 18px;
  line-height: 1.25;
}

.skill-unified-check-panel .check-list {
  margin-top: 0;
  gap: 0;
}

.skill-unified-check-panel .check-row {
  min-height: 46px;
  padding: 0;
}

.skill-unified-check-panel .check-row > span {
  min-width: 0;
  line-height: 1.4;
}

.skill-rail-progress {
  height: 6px;
  overflow: hidden;
  border-radius: 999px;
  background: #eceff3;
}

.skill-rail-progress span {
  display: block;
  width: var(--progress-value);
  height: 100%;
  border-radius: inherit;
  background: #101113;
}

.skill-quality-advice {
  display: grid;
  gap: 8px;
  border-top: 1px solid #e7e9ed;
  padding-top: 14px;
}

.skill-quality-advice b {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  color: #101113;
  font-size: 13px;
  line-height: 1.3;
  font-weight: 850;
}

.skill-quality-advice .ui-icon {
  width: 16px;
  height: 16px;
  stroke-width: 2.4;
}

.skill-quality-advice p {
  margin: 0;
  color: var(--body);
  font-size: 12px;
  line-height: 1.65;
  font-weight: 650;
}

.skill-rail-context-card {
  display: grid;
  align-content: start;
  gap: 12px;
}

.skill-rail-context-card .panel-head {
  margin-bottom: 0;
}

.skill-rail-context-card .deposition-card-copy {
  margin: 0;
}

.skill-rail-context-list {
  display: grid;
  gap: 0;
  border-top: 1px solid #e7e9ed;
  padding-top: 2px;
}

.skill-rail-context-list .check-row {
  min-height: 46px;
  padding: 0;
}

.skill-rail-context-list .check-row > span,
.skill-rail-context-list .status {
  min-width: 0;
}

.skill-rail-context-list .status {
  max-width: 170px;
  white-space: normal;
  text-align: right;
}

.skill-mode-left-nav {
  display: grid;
  align-content: start;
  gap: 8px;
  border: 1px solid #e5e8ec;
  border-radius: 14px;
  background: #fff;
  padding: 12px;
}

.skill-mode-left-nav button {
  min-height: 42px;
  border: 0;
  border-radius: 9px;
  background: transparent;
  color: #4c535f;
  padding: 0 12px;
  text-align: left;
  font-size: 13px;
  font-weight: 760;
}

.skill-mode-left-nav button:hover,
.skill-mode-left-nav button.active {
  background: #f0f1f3;
  color: #101113;
}

.skill-professional-work .deposition-step-body {
  gap: 14px;
}

.skill-professional-intro-card {
  display: grid;
  grid-template-columns: minmax(0, 1fr) minmax(260px, .72fr);
  align-items: center;
  gap: 18px;
  border: 1px solid #e5e8ec;
  border-radius: 14px;
  background: #fff;
  padding: 18px 20px;
}

.skill-professional-intro-card h3 {
  margin: 0;
  color: #101113;
  font-size: 17px;
  line-height: 1.3;
  font-weight: 860;
}

.skill-professional-intro-card p {
  max-width: 780px;
  margin: 6px 0 0;
  color: var(--body);
  font-size: 13px;
  line-height: 1.65;
  font-weight: 650;
}

.skill-professional-fit-tags {
  display: flex;
  flex-wrap: wrap;
  justify-content: flex-end;
  gap: 8px;
}

.skill-professional-fit-tags span {
  min-height: 28px;
  display: inline-flex;
  align-items: center;
  border: 1px solid #dfe3e8;
  border-radius: 8px;
  background: #fbfcfd;
  color: #353a42;
  padding: 0 10px;
  font-size: 12px;
  font-weight: 780;
}

.skill-professional-module-grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 10px;
}

.skill-professional-module-grid article {
  min-height: 88px;
  display: grid;
  align-content: start;
  gap: 8px;
  border: 1px solid #e5e8ec;
  border-radius: 12px;
  background: #fff;
  padding: 13px 14px;
}

.skill-professional-module-grid article > div {
  min-width: 0;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 10px;
}

.skill-professional-module-grid b {
  min-width: 0;
  overflow: hidden;
  color: #111318;
  font-size: 13px;
  line-height: 1.3;
  font-weight: 850;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.skill-professional-module-grid span:not(.status) {
  color: #626a75;
  font-size: 12px;
  line-height: 1.45;
  font-weight: 650;
}

.skill-professional-config-grid {
  display: grid;
  grid-template-columns: minmax(0, 1fr) minmax(260px, 320px);
  gap: 14px;
  align-items: start;
}

.skill-professional-config-grid.schema-layout {
  grid-template-columns: minmax(0, 1fr) minmax(250px, 300px);
}

.skill-professional-goal-card {
  min-height: 0;
}

.skill-professional-goal-card .panel-head p {
  margin: 0;
  color: #69717c;
  font-size: 12px;
  line-height: 1.45;
  font-weight: 650;
}

.skill-professional-config-main,
.skill-professional-config-side {
  min-width: 0;
  display: grid;
  gap: 14px;
}

.skill-professional-preview-card {
  position: sticky;
  top: 12px;
  display: grid;
  align-content: start;
  gap: 12px;
  border: 1px solid #e5e8ec;
  border-radius: 14px;
  background: #fff;
  padding: 16px;
}

.skill-professional-preview-card .panel-head {
  margin-bottom: 0;
}

.skill-professional-preview-block {
  display: grid;
  gap: 5px;
  border: 1px solid #eef0f3;
  border-radius: 12px;
  background: #fbfcfd;
  padding: 12px;
}

.skill-professional-preview-block span,
.skill-professional-preview-list .check-row > span {
  color: var(--muted);
  font-size: 12px;
  font-weight: 760;
}

.skill-professional-preview-block b {
  color: #101113;
  font-size: 15px;
  line-height: 1.3;
  font-weight: 850;
}

.skill-professional-preview-block p {
  margin: 0;
  color: var(--body);
  font-size: 12px;
  line-height: 1.45;
  font-weight: 650;
}

.skill-professional-preview-list {
  display: grid;
  gap: 0;
  border-top: 1px solid #eef0f3;
}

.skill-professional-preview-list .check-row {
  min-height: 42px;
  padding: 0;
}

.skill-professional-preview-note {
  border-radius: 10px;
  background: #f6f7f8;
  color: #4d535d;
  padding: 10px 12px;
  font-size: 12px;
  line-height: 1.55;
  font-weight: 650;
}

.skill-professional-wide-work {
  min-width: 0;
}

.skill-professional-wide-work .table-head {
  gap: 12px;
}

.skill-professional-wide-work .table-actions {
  flex-wrap: wrap;
}

.skill-professional-view-tabs {
  display: inline-flex;
  align-items: center;
  gap: 4px;
  border: 1px solid #dde2e7;
  border-radius: 10px;
  background: #f7f8fa;
  padding: 3px;
}

.skill-professional-view-tabs button {
  min-height: 30px;
  border: 0;
  border-radius: 7px;
  background: transparent;
  color: #5d6570;
  padding: 0 10px;
  font-size: 12px;
  font-weight: 800;
  cursor: pointer;
}

.skill-professional-view-tabs button:hover,
.skill-professional-view-tabs button.active {
  background: #fff;
  color: #101113;
  box-shadow: 0 1px 3px rgba(17, 18, 20, .08);
}

.skill-professional-inline-gate {
  display: grid;
  grid-template-columns: repeat(5, minmax(0, 1fr));
  gap: 10px;
}

.skill-professional-inline-gate article {
  min-height: 82px;
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  align-content: start;
  gap: 6px 8px;
  border: 1px solid #e5e8ec;
  border-radius: 12px;
  background: #fff;
  padding: 12px;
}

.skill-professional-inline-gate span {
  color: #69717c;
  font-size: 12px;
  line-height: 1.35;
  font-weight: 760;
}

.skill-professional-inline-gate b {
  grid-column: 1;
  color: #111318;
  font-size: 18px;
  line-height: 1.2;
  font-weight: 880;
}

.skill-professional-inline-gate small {
  grid-column: 1 / -1;
  color: #737b86;
  font-size: 11px;
  line-height: 1.35;
  font-weight: 650;
}

.skill-professional-inline-gate .status {
  grid-column: 2;
  grid-row: 1 / span 2;
  align-self: start;
}

.skill-professional-checklist-card {
  padding: 16px;
}

.skill-professional-checklist {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 8px 14px;
}

.skill-professional-checklist .check-row {
  min-height: 44px;
  border: 1px solid #eef0f3;
  border-radius: 10px;
  background: #fbfcfd;
  padding: 8px 10px;
}

.skill-professional-code-card pre {
  max-height: 430px;
  overflow: auto;
  margin: 0;
  border: 1px solid #e4e8ed;
  border-radius: 12px;
  background: #101113;
  color: #f5f7fa;
  padding: 16px;
  font-size: 12px;
  line-height: 1.6;
  white-space: pre-wrap;
}

.skill-professional-mapping-grid,
.skill-professional-policy-grid {
  display: grid;
  gap: 8px;
}

.skill-professional-governance-card {
  min-width: 0;
}

.skill-professional-governance-card .entry-edit-grid {
  margin-top: 14px;
}

.skill-professional-governance-card .panel-actions {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  justify-content: flex-end;
  gap: 8px;
}

.skill-professional-section-note {
  margin: -2px 0 12px;
  color: #69717c;
  font-size: 12px;
  line-height: 1.5;
  font-weight: 650;
}

.skill-professional-governance-summary {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 8px;
}

.skill-professional-governance-summary .check-row {
  min-height: 62px;
  align-content: center;
  border: 1px solid #eef0f3;
  border-radius: 10px;
  background: #fbfcfd;
  padding: 10px;
}

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

.skill-professional-baseline-grid article {
  min-width: 0;
  min-height: 104px;
  display: grid;
  align-content: start;
  gap: 6px;
  border: 1px dashed #dfe4ea;
  border-radius: 12px;
  background: #fbfcfd;
  padding: 12px;
}

.skill-professional-baseline-grid b {
  color: #111318;
  font-size: 13px;
  line-height: 1.3;
  font-weight: 850;
}

.skill-professional-baseline-grid span,
.skill-professional-baseline-grid small {
  color: #626a75;
  font-size: 12px;
  line-height: 1.45;
  font-weight: 650;
}

.skill-professional-baseline-grid small {
  color: #8a6230;
  font-weight: 760;
}

.skill-professional-policy-table {
  overflow-x: auto;
  border: 1px solid #e5e8ec;
  border-radius: 12px;
  background: #fff;
}

.skill-professional-policy-head,
.skill-professional-policy-row {
  min-width: 1080px;
  display: grid;
  grid-template-columns: .82fr .9fr .9fr .78fr 1.35fr .9fr 1.05fr;
  gap: 8px;
  align-items: center;
  padding: 10px 12px;
}

.skill-professional-policy-table.editable .skill-professional-policy-head,
.skill-professional-policy-table.editable .skill-professional-policy-row {
  min-width: 1280px;
  grid-template-columns: .85fr .95fr .9fr .82fr 1.35fr .95fr 1.05fr 72px;
}

.skill-professional-policy-head {
  background: #f5f7f9;
  color: #6a727d;
  font-size: 11px;
  line-height: 1.2;
  font-weight: 850;
}

.skill-professional-policy-row + .skill-professional-policy-row {
  border-top: 1px solid #eef0f3;
}

.skill-professional-policy-row b,
.skill-professional-policy-row span {
  min-width: 0;
  color: #4d5560;
  font-size: 12px;
  line-height: 1.45;
  font-weight: 680;
}

.skill-professional-policy-row b {
  color: #111318;
  font-weight: 850;
}

.skill-professional-policy-row .mini-input,
.skill-professional-policy-row .mini-select,
.skill-professional-approval-list .mini-input,
.skill-professional-approval-list .mini-select,
.skill-professional-sensitive-list .mini-input,
.skill-professional-sensitive-list .mini-select {
  width: 100%;
  min-width: 0;
  min-height: 34px;
  border: 1px solid #dfe4ea;
  border-radius: 8px;
  background: #fff;
  color: #111318;
  padding: 0 9px;
  font-size: 12px;
  line-height: 1.2;
  font-weight: 680;
}

.skill-professional-policy-row .mini-input:focus,
.skill-professional-policy-row .mini-select:focus,
.skill-professional-approval-list .mini-input:focus,
.skill-professional-approval-list .mini-select:focus,
.skill-professional-sensitive-list .mini-input:focus,
.skill-professional-sensitive-list .mini-select:focus {
  border-color: #111318;
  outline: 0;
  box-shadow: 0 0 0 3px rgba(17, 18, 20, .08);
}

.skill-professional-governance-split {
  display: grid;
  grid-template-columns: minmax(0, 1.05fr) minmax(0, .95fr);
  gap: 14px;
}

.skill-professional-approval-list,
.skill-professional-sensitive-list {
  display: grid;
  gap: 9px;
}

.skill-professional-approval-list article,
.skill-professional-sensitive-list article {
  min-width: 0;
  display: grid;
  grid-template-columns: minmax(0, 1fr) minmax(0, 1fr) 74px;
  gap: 6px 10px;
  border: 1px solid #e8ebef;
  border-radius: 12px;
  background: #fbfcfd;
  padding: 12px;
}

.skill-professional-sensitive-list article {
  grid-template-columns: minmax(0, 1fr) 76px minmax(0, .9fr) minmax(0, 1fr) 74px;
}

.skill-professional-approval-list .mini-input.full,
.skill-professional-sensitive-list .mini-input.full {
  grid-column: 1 / -2;
}

.skill-professional-approval-list b,
.skill-professional-sensitive-list b {
  color: #111318;
  font-size: 13px;
  line-height: 1.28;
  font-weight: 850;
}

.skill-professional-approval-list span,
.skill-professional-approval-list small,
.skill-professional-sensitive-list span,
.skill-professional-sensitive-list small {
  color: #626a75;
  font-size: 12px;
  line-height: 1.45;
  font-weight: 650;
}

.skill-professional-approval-list small,
.skill-professional-sensitive-list small {
  grid-column: 1 / -1;
}

.skill-professional-sensitive-list article > div {
  min-width: 0;
  display: grid;
  gap: 3px;
}

.skill-professional-simulator {
  display: grid;
  grid-template-columns: repeat(3, minmax(150px, 1fr)) minmax(260px, 1.25fr);
  gap: 12px;
  align-items: end;
}

.skill-professional-decision-card {
  min-height: 94px;
  display: grid;
  align-content: start;
  gap: 5px;
  border: 1px solid #e2e6eb;
  border-radius: 12px;
  background: #fbfcfd;
  padding: 12px;
}

.skill-professional-decision-card span {
  color: #6a727d;
  font-size: 11px;
  line-height: 1.2;
  font-weight: 850;
}

.skill-professional-decision-card b {
  color: #111318;
  font-size: 18px;
  line-height: 1.15;
  font-weight: 880;
}

.skill-professional-decision-card p,
.skill-professional-decision-card small {
  margin: 0;
  color: #59616c;
  font-size: 12px;
  line-height: 1.45;
  font-weight: 650;
}

.skill-professional-flow-layout {
  min-height: 430px;
  display: grid;
  grid-template-columns: minmax(150px, 180px) minmax(0, 1fr) minmax(220px, 270px);
  gap: 12px;
}

.skill-professional-node-palette,
.skill-professional-node-config {
  min-width: 0;
  border: 1px solid #e5e8ec;
  border-radius: 14px;
  background: #fff;
  padding: 14px;
}

.skill-professional-node-palette {
  display: grid;
  align-content: start;
  gap: 8px;
}

.skill-professional-node-palette b {
  color: #111318;
  font-size: 13px;
  font-weight: 850;
}

.skill-professional-node-palette button {
  min-height: 34px;
  border: 1px solid #e0e4e9;
  border-radius: 8px;
  background: #fbfcfd;
  color: #333943;
  padding: 0 10px;
  text-align: left;
  font-size: 12px;
  font-weight: 760;
}

.skill-professional-node-palette p {
  margin: 4px 0 0;
  color: #68717d;
  font-size: 12px;
  line-height: 1.55;
  font-weight: 650;
}

.skill-professional-flow-canvas {
  position: relative;
  min-width: 0;
  min-height: 430px;
  overflow-x: auto;
  border: 1px solid #dfe4ea;
  border-radius: 14px;
  background:
    linear-gradient(#eef2f6 1px, transparent 1px),
    linear-gradient(90deg, #eef2f6 1px, transparent 1px),
    #fbfcfd;
  background-size: 32px 32px;
}

.skill-professional-flow-link {
  position: absolute;
  display: block;
  min-width: 2px;
  min-height: 2px;
  border-radius: 999px;
  background: #b9c1cb;
}

.skill-professional-flow-node {
  position: absolute;
  width: 150px;
  min-height: 84px;
  display: grid;
  gap: 5px;
  border: 1px solid #cfd6df;
  border-left-width: 4px;
  border-radius: 12px;
  background: #fff;
  color: #15171a;
  padding: 10px 11px;
  text-align: left;
  box-shadow: 0 12px 24px rgba(17, 18, 20, .055);
  cursor: pointer;
}

.skill-professional-flow-node:hover,
.skill-professional-flow-node.active {
  border-color: #111318;
  box-shadow: 0 16px 30px rgba(17, 18, 20, .11);
}

.skill-professional-flow-node b,
.skill-professional-flow-node span,
.skill-professional-flow-node small {
  min-width: 0;
  overflow: hidden;
  text-overflow: ellipsis;
}

.skill-professional-flow-node b {
  font-size: 12px;
  line-height: 1.25;
  font-weight: 850;
  white-space: nowrap;
}

.skill-professional-flow-node span {
  color: #5e6671;
  font-size: 11px;
  line-height: 1.35;
  font-weight: 650;
}

.skill-professional-flow-node small {
  width: max-content;
  max-width: 100%;
  border-radius: 999px;
  background: #f1f3f5;
  color: #59616b;
  padding: 3px 7px;
  font-size: 10px;
  font-weight: 800;
}

.skill-professional-flow-node.trigger { border-left-color: #111318; }
.skill-professional-flow-node.skill { border-left-color: #8ea7d1; }
.skill-professional-flow-node.condition { border-left-color: #e4c16b; }
.skill-professional-flow-node.human { border-left-color: #ef9a72; }
.skill-professional-flow-node.tool { border-left-color: #9bc8a7; }
.skill-professional-flow-node.output { border-left-color: #9aa5b5; }

.skill-professional-flow-layout {
  min-height: 0;
  grid-template-columns: minmax(150px, 190px) minmax(0, 1fr) minmax(260px, 320px);
}

.skill-professional-node-palette button {
  display: inline-flex;
  align-items: center;
  gap: 6px;
}

.skill-professional-node-palette button svg {
  width: 14px;
  height: 14px;
}

.skill-professional-flow-canvas {
  min-height: 420px;
  display: flex;
  align-content: flex-start;
  align-items: flex-start;
  flex-wrap: wrap;
  gap: 18px 14px;
  overflow: visible;
  padding: 76px 26px 28px;
}

.skill-professional-flow-link {
  display: none;
}

.skill-professional-flow-node {
  position: static;
  flex: 1 1 158px;
  max-width: 190px;
  min-height: 104px;
}

.skill-professional-flow-node span {
  display: -webkit-box;
  min-height: 44px;
  -webkit-line-clamp: 3;
  -webkit-box-orient: vertical;
}

.skill-professional-flow-arrow {
  align-self: center;
  color: #8c949f;
  font-style: normal;
  font-size: 18px;
  line-height: 1;
  font-weight: 800;
}

.skill-professional-node-form {
  display: grid;
  gap: 12px;
}

.skill-professional-node-form .textarea {
  min-height: 84px;
}

.skill-professional-node-actions {
  display: flex;
  align-items: center;
  flex-wrap: wrap;
  gap: 8px;
}

.skill-professional-node-actions span {
  color: #4d5560;
  font-size: 12px;
  font-weight: 760;
}

.skill-professional-node-form-layout {
  min-height: 430px;
  display: grid;
  grid-template-columns: minmax(190px, 240px) minmax(0, 1fr) minmax(230px, 280px);
  gap: 12px;
}

.skill-professional-node-index,
.skill-professional-node-form-workbench,
.skill-professional-node-summary {
  min-width: 0;
  border: 1px solid #e5e8ec;
  border-radius: 14px;
  background: #fff;
  padding: 14px;
}

.skill-professional-node-index {
  display: grid;
  align-content: start;
  gap: 12px;
}

.skill-professional-node-list {
  display: grid;
  gap: 8px;
}

.skill-professional-node-list button {
  min-height: 58px;
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  gap: 4px 8px;
  align-items: center;
  border: 1px solid #e2e6eb;
  border-radius: 10px;
  background: #fbfcfd;
  color: #111318;
  padding: 9px 10px;
  text-align: left;
  cursor: pointer;
}

.skill-professional-node-list button:hover,
.skill-professional-node-list button.active {
  border-color: #111318;
  background: #fff;
  box-shadow: 0 8px 20px rgba(17, 18, 20, .08);
}

.skill-professional-node-list b,
.skill-professional-node-list span {
  min-width: 0;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.skill-professional-node-list b {
  color: #111318;
  font-size: 12px;
  font-weight: 850;
}

.skill-professional-node-list span {
  grid-column: 1;
  color: #68717d;
  font-size: 11px;
  font-weight: 720;
}

.skill-professional-node-list .status {
  grid-column: 2;
  grid-row: 1 / span 2;
  align-self: center;
}

.skill-professional-node-index-actions {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 8px;
  border-top: 1px solid #eef0f3;
  padding-top: 12px;
}

.skill-professional-node-index-actions .mini-btn {
  justify-content: flex-start;
  gap: 6px;
  padding: 0 9px;
}

.skill-professional-node-index-actions .ui-icon {
  width: 14px;
  height: 14px;
}

.skill-professional-node-form-workbench {
  display: grid;
  align-content: start;
  gap: 14px;
}

.skill-professional-node-form-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 12px;
}

.skill-professional-node-form-grid .field.full {
  grid-column: 1 / -1;
}

.skill-professional-node-form-grid .textarea {
  min-height: 82px;
}

.skill-professional-node-form-footer {
  min-height: 48px;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
  border-top: 1px solid #eef0f3;
  padding-top: 12px;
}

.skill-professional-node-summary {
  display: grid;
  align-content: start;
  gap: 12px;
}

.skill-professional-node-summary-list {
  display: grid;
  gap: 8px;
}

.skill-professional-node-summary-list .check-row {
  min-height: 44px;
  border: 1px solid #eef0f3;
  border-radius: 10px;
  background: #fbfcfd;
  padding: 8px 10px;
}

.skill-professional-node-summary p {
  margin: 0;
  border-radius: 10px;
  background: #f6f7f8;
  color: #565e69;
  padding: 10px 12px;
  font-size: 12px;
  line-height: 1.55;
  font-weight: 680;
}

.skill-professional-tool-grid,
.skill-professional-test-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 10px;
}

.skill-professional-tool-grid article,
.skill-professional-test-grid article {
  min-height: 96px;
  display: grid;
  align-content: start;
  gap: 7px;
  border: 1px solid #e5e8ec;
  border-radius: 12px;
  background: #fbfcfd;
  padding: 13px;
}

.skill-professional-tool-grid b,
.skill-professional-test-grid b {
  color: #111318;
  font-size: 13px;
  line-height: 1.3;
  font-weight: 850;
}

.skill-professional-tool-grid span,
.skill-professional-test-grid span,
.skill-professional-test-grid small {
  color: #626a75;
  font-size: 12px;
  line-height: 1.45;
  font-weight: 650;
}

.skill-professional-tool-workbench {
  display: grid;
  grid-template-columns: minmax(220px, .72fr) minmax(240px, .78fr) minmax(0, 1.25fr);
  gap: 12px;
  align-items: start;
}

.skill-professional-tool-summary {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 8px;
}

.skill-professional-tool-summary .check-row {
  min-height: 58px;
  align-content: center;
  border: 1px solid #eef0f3;
  border-radius: 10px;
  background: #fbfcfd;
  padding: 10px;
}

.skill-professional-enabled-summary {
  min-width: 0;
  min-height: 44px;
  display: grid;
  grid-template-columns: auto minmax(0, 1fr) auto;
  align-items: center;
  gap: 10px;
  border: 1px solid #e5e8ec;
  border-radius: 12px;
  background: #fbfcfd;
  padding: 10px 12px;
}

.skill-professional-enabled-summary b {
  color: #111318;
  font-size: 12px;
  font-weight: 850;
}

.skill-professional-enabled-summary span:not(.status) {
  min-width: 0;
  overflow: hidden;
  color: #626a75;
  font-size: 12px;
  line-height: 1.4;
  font-weight: 680;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.skill-professional-tool-list,
.skill-professional-tool-detail {
  min-width: 0;
  display: grid;
  align-content: start;
  gap: 10px;
  border: 1px solid #e5e8ec;
  border-radius: 14px;
  background: #fbfcfd;
  padding: 14px;
}

.skill-professional-tool-list {
  grid-template-columns: minmax(0, 1fr);
}

.skill-professional-tool-empty,
.skill-professional-config-empty {
  grid-column: 1 / -1;
  min-height: 92px;
  align-content: center;
  border: 1px dashed #dfe4ea;
  border-radius: 12px;
  background: #fbfcfd;
}

.skill-professional-tool-call-card {
  width: 100%;
  min-height: 116px;
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  gap: 8px 12px;
  border: 1px solid #e2e6eb;
  border-radius: 12px;
  background: #fbfcfd;
  color: #111318;
  padding: 12px;
  text-align: left;
  cursor: pointer;
}

.skill-professional-tool-call-card:hover,
.skill-professional-tool-call-card.active {
  border-color: #111318;
  background: #fff;
  box-shadow: inset 0 0 0 1px #111318;
}

.skill-professional-tool-call-card.is-unavailable {
  background: #f6f7f8;
  color: #7a808a;
}

.skill-professional-tool-call-card span {
  min-width: 0;
  display: grid;
  gap: 4px;
}

.skill-professional-tool-card-meta {
  justify-items: end;
  gap: 5px;
}

.skill-professional-tool-call-card b,
.skill-professional-tool-detail-head b {
  color: #111318;
  font-size: 13px;
  line-height: 1.3;
  font-weight: 850;
}

.skill-professional-tool-call-card small,
.skill-professional-tool-detail-head span {
  color: #626a75;
  font-size: 12px;
  line-height: 1.45;
  font-weight: 650;
}

.skill-professional-tool-call-card em {
  grid-column: 1 / -1;
  color: #4d5560;
  font-size: 11px;
  line-height: 1.35;
  font-style: normal;
  font-weight: 760;
}

.skill-professional-tool-detail-head {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
  border: 1px solid #eef0f3;
  border-radius: 12px;
  background: #fbfcfd;
  padding: 12px;
}

.skill-professional-tool-detail-head > div {
  min-width: 0;
  display: grid;
  gap: 4px;
}

.skill-professional-tool-detail .textarea {
  min-height: 78px;
}

.skill-professional-tool-detail .entry-edit-grid {
  grid-template-columns: repeat(auto-fit, minmax(260px, 1fr));
}

.skill-professional-tool-meta-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 8px;
}

.skill-professional-tool-meta-grid .check-row {
  min-height: 64px;
  align-content: start;
  border: 1px solid #eef0f3;
  border-radius: 10px;
  background: #fbfcfd;
  padding: 10px;
}

.skill-tool-picker-modal {
  width: min(1120px, 100%);
  max-height: min(840px, calc(100vh - 48px));
  display: grid;
  grid-template-rows: auto minmax(0, 1fr) auto;
}

.skill-tool-picker-body {
  display: grid;
  grid-template-rows: auto minmax(0, 1fr);
  gap: 14px;
  overflow: hidden;
}

.skill-tool-picker-toolbar {
  display: grid;
  grid-template-columns: minmax(300px, 1fr) minmax(150px, 190px) minmax(150px, 190px);
  gap: 12px;
}

.skill-tool-picker-toolbar .search {
  width: 100%;
}

.skill-tool-picker-list {
  display: grid;
  align-content: start;
  gap: 10px;
  overflow-y: auto;
  padding-right: 4px;
}

.skill-tool-picker-row {
  width: 100%;
  min-height: 116px;
  display: grid;
  grid-template-columns: 22px minmax(0, 1fr) auto;
  align-items: center;
  gap: 14px;
  border: 1px solid #e3e6ea;
  border-radius: 14px;
  background: #fff;
  color: #111318;
  padding: 14px 16px;
  text-align: left;
}

.skill-tool-picker-row:hover,
.skill-tool-picker-row.active {
  border-color: #101113;
  box-shadow: 0 12px 26px rgba(17, 18, 20, .055);
}

.skill-tool-picker-row.is-unavailable {
  background: #f7f8f9;
  color: #737a84;
}

.tool-select-check {
  width: 18px;
  height: 18px;
  border: 2px solid #c7ccd3;
  border-radius: 5px;
  background: #fff;
}

.skill-tool-picker-row.active .tool-select-check {
  border-color: #101113;
  background: #101113;
  box-shadow: inset 0 0 0 3px #fff;
}

.skill-tool-picker-main {
  min-width: 0;
  display: grid;
  gap: 5px;
}

.skill-tool-picker-main b {
  color: #101113;
  font-size: 15px;
  line-height: 1.28;
  font-weight: 860;
}

.skill-tool-picker-main small {
  color: #6c727c;
  font-size: 12px;
  line-height: 1.35;
  font-weight: 700;
}

.skill-tool-picker-main em {
  color: #4d535d;
  font-size: 12px;
  line-height: 1.55;
  font-style: normal;
  font-weight: 650;
}

.skill-tool-picker-row.is-unavailable .skill-tool-picker-main b,
.skill-tool-picker-row.is-unavailable .skill-tool-picker-main small,
.skill-tool-picker-row.is-unavailable .skill-tool-picker-main em {
  color: #747b85;
}

.skill-tool-picker-side {
  min-width: 150px;
  display: grid;
  justify-items: end;
  gap: 7px;
}

.skill-tool-picker-side strong {
  color: #626873;
  font-size: 12px;
  line-height: 1.2;
  font-weight: 800;
}

.skill-tool-picker-actions {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
}

.skill-tool-picker-actions > span {
  color: #626873;
  font-size: 12px;
  font-weight: 800;
}

.skill-tool-picker-actions > div {
  display: flex;
  align-items: center;
  gap: 10px;
}

@media (max-width: 980px) {
  .skill-professional-governance-summary,
  .skill-professional-baseline-grid,
  .skill-professional-governance-split,
  .skill-professional-simulator,
  .skill-professional-tool-summary,
  .skill-professional-tool-meta-grid,
  .skill-tool-picker-toolbar {
    grid-template-columns: 1fr;
  }

  .skill-tool-picker-row {
    grid-template-columns: 22px minmax(0, 1fr);
    align-items: start;
  }

  .skill-tool-picker-side {
    grid-column: 2;
    min-width: 0;
    justify-items: start;
    grid-template-columns: repeat(3, max-content);
    align-items: center;
    gap: 8px;
  }

  .skill-tool-picker-actions {
    align-items: stretch;
    flex-direction: column;
  }

  .skill-tool-picker-actions > div {
    display: grid;
    grid-template-columns: 1fr;
  }
}

@media (max-width: 720px) {
  .skill-professional-approval-list article,
  .skill-professional-sensitive-list article {
    grid-template-columns: 1fr;
  }

  .skill-professional-approval-list .mini-input.full,
  .skill-professional-sensitive-list .mini-input.full {
    grid-column: auto;
  }

  .skill-tool-picker-modal {
    width: 100vw;
    max-height: 100vh;
    border-radius: 0;
  }

  .skill-tool-picker-row {
    grid-template-columns: 1fr;
  }

  .tool-select-check {
    display: none;
  }

  .skill-tool-picker-side {
    grid-column: auto;
  }
}

.skill-professional-tool-detail .field:has(.textarea) {
  grid-column: 1 / -1;
}

.skill-professional-tool-gate-grid {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 8px;
  margin-bottom: 14px;
}

.skill-professional-tool-gate-grid .check-row {
  min-height: 58px;
  align-content: center;
  border: 1px solid #eef0f3;
  border-radius: 10px;
  background: #fbfcfd;
  padding: 10px;
}

.skill-professional-data-table {
  margin-top: 12px;
  overflow-x: auto;
  border: 1px solid #e5e8ec;
  border-radius: 12px;
  background: #fff;
}

.skill-professional-data-head,
.skill-professional-data-row {
  min-width: 900px;
  display: grid;
  grid-template-columns: 1fr 1.15fr 1fr .68fr 1.25fr .62fr;
  gap: 8px;
  align-items: center;
  padding: 9px 10px;
}

.skill-professional-data-head {
  background: #f5f7f9;
  color: #6a727d;
  font-size: 11px;
  font-weight: 850;
}

.skill-professional-data-row + .skill-professional-data-row {
  border-top: 1px solid #eef0f3;
}

.skill-schema-table {
  overflow: hidden;
  border: 1px solid #e5e8ec;
  border-radius: 14px;
  background: #fff;
}

.skill-schema-title {
  min-height: 38px;
  display: flex;
  align-items: center;
  gap: 6px;
  padding: 0 12px;
}

.skill-schema-title b {
  color: #111318;
  font-size: 14px;
  font-weight: 860;
}

.skill-schema-title span {
  width: 15px;
  height: 15px;
  display: grid;
  place-items: center;
  border: 1px solid #cfd4db;
  border-radius: 50%;
  color: #7a818c;
  font-size: 10px;
  font-weight: 850;
}

.skill-schema-head,
.skill-schema-row {
  display: grid;
  grid-template-columns: 18px minmax(84px, .95fr) minmax(78px, .7fr) 44px minmax(58px, .55fr) minmax(110px, 1.35fr) 82px;
  align-items: center;
  gap: 8px;
  border-top: 1px solid #eef0f3;
  padding: 8px 10px;
}

.skill-schema-head.no-default,
.skill-schema-head.no-default + .skill-schema-row,
.skill-schema-row:has(.schema-actions):not(:has([data-skill-professional-table-field="defaultValue"])) {
  grid-template-columns: 18px minmax(84px, .95fr) minmax(78px, .7fr) 44px minmax(190px, 1.4fr) 82px;
}

.skill-schema-head {
  background: #fafbfc;
  color: #69707b;
  font-size: 11px;
  font-weight: 850;
}

.skill-schema-row .input,
.skill-schema-row .select {
  min-height: 34px;
  border-radius: 7px;
  padding: 6px 9px;
  font-size: 12px;
}

.schema-grip {
  color: #1d2025;
  font-size: 15px;
  letter-spacing: -3px;
}

.toggle-pill {
  width: 32px;
  height: 18px;
  border: 0;
  border-radius: 999px;
  background: #c8ccd2;
  position: relative;
}

.toggle-pill::after {
  content: "";
  position: absolute;
  width: 14px;
  height: 14px;
  left: 2px;
  top: 2px;
  border-radius: 50%;
  background: #fff;
  box-shadow: 0 1px 4px rgba(0,0,0,.18);
}

.toggle-pill.on {
  background: #050505;
}

.toggle-pill.on::after {
  left: 16px;
}

.schema-actions {
  display: flex;
  align-items: center;
  justify-content: flex-end;
  gap: 6px;
}

.skill-schema-row .schema-actions .mini-btn {
  padding: 0 8px;
}

.mini-btn {
  min-height: 30px;
  border: 1px solid #dfe4ea;
  padding: 0 10px;
  border-radius: 8px;
  background: #fff;
  color: #111318;
  font-size: 12px;
  font-weight: 800;
  cursor: pointer;
}

.mini-btn:disabled {
  cursor: not-allowed;
  opacity: .45;
}

.mini-icon {
  width: 30px;
  min-height: 30px;
}

.mini-icon .ui-icon {
  width: 14px;
  height: 14px;
}

.skill-schema-footer {
  min-height: 42px;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
  border-top: 1px solid #eef0f3;
  padding: 6px 12px;
}

.skill-schema-footer span {
  color: #666d78;
  font-size: 12px;
  font-weight: 750;
}

.skill-flow-editor {
  display: grid;
  gap: 8px;
  border: 1px solid #e5e8ec;
  border-radius: 14px;
  background: #fff;
  padding: 0 12px 14px;
}

.skill-flow-chain {
  display: grid;
  grid-template-columns: repeat(4, minmax(120px, 1fr));
  align-items: stretch;
  gap: 12px;
}

.skill-flow-chain article {
  min-height: 78px;
  display: grid;
  gap: 5px;
  border: 1px solid #dfe3e8;
  border-radius: 12px;
  background: #fbfcfd;
  padding: 12px;
}

.skill-flow-chain article b {
  width: 22px;
  height: 22px;
  display: grid;
  place-items: center;
  border-radius: 7px;
  background: #4a4f57;
  color: #fff;
  font-size: 12px;
}

.skill-flow-chain article span {
  color: #15181d;
  font-size: 13px;
  font-weight: 850;
}

.skill-flow-chain article small {
  color: #666d78;
  font-size: 11px;
  line-height: 1.45;
  font-weight: 650;
}

.skill-flow-chain i {
  display: none;
}

.skill-test-status-grid {
  display: grid;
  gap: 8px;
}

.skill-template-grid {
  display: grid;
  grid-template-columns: minmax(180px, 220px) minmax(300px, 1fr) minmax(260px, 320px);
  gap: var(--workspace-gap);
  align-items: stretch;
}

.skill-template-grid.unified {
  grid-template-columns: clamp(180px, 18%, 230px) minmax(360px, 1fr) minmax(320px, .78fr);
  align-items: start;
}

.skill-template-grid.unified > .panel + .panel {
  margin-top: 0;
}

.skill-template-work-card .skill-template-preview-card {
  margin-top: 0;
}

.skill-template-category-card,
.skill-template-list-card,
.skill-template-detail-card,
.skill-template-preview-card,
.skill-iteration-list-card {
  min-width: 0;
  align-self: start;
}

.skill-template-work-card .table-head p,
.skill-template-adapt-card .panel-head p {
  margin: 4px 0 0;
  color: #68717c;
  font-size: 12px;
  line-height: 1.45;
  font-weight: 650;
}

.skill-template-category-card h3,
.skill-iteration-list-card h3 {
  min-height: 22px;
  margin: 0 0 16px;
  font-size: 18px;
  line-height: 1.25;
  font-weight: 860;
}

.skill-template-list-card .panel-head,
.skill-template-detail-card .panel-head {
  min-height: 22px;
  align-items: center;
  margin-bottom: 16px;
}

.skill-template-category-list,
.skill-template-list,
.skill-iteration-list {
  display: grid;
  gap: 12px;
}

.skill-template-category-list button,
.skill-template-item,
.skill-iteration-list button {
  width: 100%;
  min-width: 0;
  border: 1px solid #e3e6ea;
  border-radius: 12px;
  background: #fff;
  color: #101113;
  text-align: left;
}

.skill-template-category-list button {
  min-height: 58px;
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  align-items: center;
  gap: 12px;
  padding: 0 12px;
}

.skill-template-category-list button.active,
.skill-template-item.active,
.skill-iteration-list button.active {
  border-color: #101113;
  box-shadow: inset 0 0 0 1px #101113;
}

.skill-template-category-list b {
  font-size: 14px;
  font-weight: 850;
}

.skill-template-item {
  min-height: 112px;
  display: grid;
  grid-template-columns: minmax(0, 1fr);
  align-items: center;
  gap: 12px;
  padding: 14px 16px;
}

.skill-template-item > span:first-child,
.skill-iteration-list button > span:nth-child(2) {
  min-width: 0;
  display: grid;
  gap: 5px;
}

.skill-template-item b,
.skill-iteration-list b {
  color: #111318;
  font-size: 14px;
  line-height: 1.3;
  font-weight: 860;
}

.skill-template-item small,
.skill-template-item em,
.skill-iteration-list small,
.skill-iteration-list em {
  color: #666d78;
  font-size: 12px;
  line-height: 1.45;
  font-style: normal;
  font-weight: 650;
}

.skill-template-item i {
  width: 22px;
  height: 22px;
  display: grid;
  place-items: center;
  border-radius: 50%;
  background: #050505;
  color: #fff;
}

.skill-template-item i .ui-icon {
  width: 14px;
  height: 14px;
}

.skill-template-detail-card {
  display: grid;
  align-content: start;
  gap: 14px;
}

.skill-template-detail-card .panel-head {
  margin-bottom: 0;
}

.skill-template-selected-summary {
  display: grid;
  grid-template-columns: minmax(0, 1fr);
  align-items: start;
  border: 1px solid #e5e8ec;
  border-radius: 12px;
  background: #fbfcfd;
  padding: 12px;
}

.skill-template-selected-summary b {
  color: #111318;
  font-size: 14px;
  line-height: 1.3;
  font-weight: 860;
}

.skill-template-selected-summary p {
  margin: 5px 0 0;
  color: #5f6873;
  font-size: 12px;
  line-height: 1.5;
  font-weight: 650;
}

.skill-template-preview-table {
  overflow: hidden;
  border: 1px solid #e5e8ec;
  border-radius: 12px;
}

.skill-template-preview-table p {
  display: grid;
  grid-template-columns: minmax(68px, .34fr) minmax(0, 1fr);
  gap: 10px;
  margin: 0;
  border-top: 1px solid #eef0f3;
  padding: 12px;
}

.skill-template-preview-table p:first-child {
  border-top: 0;
}

.skill-template-preview-table b {
  min-width: 0;
  color: #111318;
  font-size: 13px;
  font-weight: 850;
}

.skill-template-preview-table span {
  min-width: 0;
  color: #4d535d;
  font-size: 13px;
  line-height: 1.55;
  font-weight: 650;
  word-break: break-word;
}

.skill-template-flow,
.skill-template-param-grid {
  display: flex;
  flex-wrap: wrap;
  gap: 10px;
  margin-top: 14px;
}

.skill-template-flow span {
  border: 1px solid #e5e8ec;
  border-radius: 8px;
  background: #fbfcfd;
  padding: 8px 12px;
  color: #343943;
  font-size: 12px;
  font-weight: 760;
}

.skill-template-flow i {
  align-self: center;
  color: #8d949e;
  font-style: normal;
}

.skill-template-param-grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
}

.skill-template-param-grid label {
  display: grid;
  gap: 6px;
  border: 1px solid #e5e8ec;
  border-radius: 10px;
  padding: 10px;
}

.skill-template-param-grid span {
  color: #4d535d;
  font-size: 12px;
  font-weight: 800;
}

.skill-template-adapt-card .entry-edit-grid {
  margin-top: 0;
}

.skill-template-adapt-card .textarea {
  min-height: 88px;
}

.skill-template-draft-work-card .table-head p {
  margin: 4px 0 0;
  color: #68717c;
  font-size: 12px;
  line-height: 1.45;
  font-weight: 650;
}

.skill-template-draft-hero {
  min-width: 0;
  display: grid;
  grid-template-columns: minmax(0, 1fr) minmax(230px, 300px);
  gap: 14px;
  align-items: center;
  border: 1px solid #e5e8ec;
  border-radius: 14px;
  background: #fff;
  padding: 16px;
}

.skill-template-draft-hero span,
.skill-template-draft-hero p {
  color: #626a75;
  font-size: 12px;
  line-height: 1.5;
  font-weight: 680;
}

.skill-template-draft-hero h3 {
  margin: 6px 0;
  color: #111318;
  font-size: 20px;
  line-height: 1.25;
  font-weight: 880;
}

.skill-template-draft-metrics {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 8px;
}

.skill-template-draft-metrics article {
  min-height: 72px;
  display: grid;
  place-items: center;
  border: 1px solid #edf0f3;
  border-radius: 12px;
  background: #fbfcfd;
  padding: 10px;
  text-align: center;
}

.skill-template-draft-metrics b {
  color: #111318;
  font-size: 24px;
  line-height: 1;
  font-weight: 900;
}

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

.skill-template-draft-section,
.skill-template-diff-card,
.skill-template-risk-card {
  min-width: 0;
}

.skill-template-draft-section {
  border: 1px solid #e5e8ec;
  border-radius: 14px;
  background: #fff;
  padding: 14px;
}

.skill-template-draft-section .panel-head {
  margin-bottom: 10px;
}

.skill-template-draft-section p {
  margin: 0 0 10px;
  color: #4f5863;
  font-size: 12px;
  line-height: 1.55;
  font-weight: 650;
}

.skill-template-draft-items {
  display: flex;
  flex-wrap: wrap;
  gap: 7px;
}

.skill-template-draft-items span {
  max-width: 100%;
  border: 1px solid #edf0f3;
  border-radius: 999px;
  background: #fbfcfd;
  color: #343943;
  padding: 6px 9px;
  font-size: 12px;
  line-height: 1.25;
  font-weight: 760;
}

.skill-template-diff-grid,
.skill-template-gate-detail-list {
  display: grid;
  gap: 10px;
}

.skill-template-diff-grid {
  grid-template-columns: repeat(3, minmax(0, 1fr));
}

.skill-template-diff-grid p {
  min-width: 0;
  display: grid;
  gap: 6px;
  margin: 0;
  border: 1px solid #edf0f3;
  border-radius: 12px;
  background: #fbfcfd;
  padding: 12px;
}

.skill-template-diff-grid b,
.skill-template-gate-detail-list b {
  color: #111318;
  font-size: 13px;
  line-height: 1.3;
  font-weight: 850;
}

.skill-template-diff-grid span,
.skill-template-gate-detail-list p,
.skill-template-gate-detail-list small {
  color: #5f6873;
  font-size: 12px;
  line-height: 1.5;
  font-weight: 650;
}

.skill-template-gate-detail-list article {
  min-width: 0;
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  gap: 12px;
  align-items: start;
  border: 1px solid #edf0f3;
  border-radius: 12px;
  background: #fff;
  padding: 12px;
}

.skill-template-gate-detail-list article.needs-work {
  border-color: #f0d59f;
  background: #fffaf1;
}

.skill-template-gate-detail-list p,
.skill-template-gate-detail-list small {
  display: block;
  margin: 4px 0 0;
}

.skill-template-gate-detail-list small {
  color: #6f5527;
  font-weight: 760;
}

.skill-template-gate-detail-list.compact article.passed {
  border-color: #d9eee2;
  background: #f6fbf8;
}

.skill-iteration-layout {
  grid-template-columns: clamp(240px, 20vw, 330px) minmax(0, 1fr) var(--skill-mode-right-width);
  gap: var(--workspace-gap);
}

.skill-iteration-structured-layout.skill-iteration-full-layout {
  grid-template-columns: minmax(0, 1fr);
}

.skill-iteration-structured-layout.skill-iteration-context-layout {
  grid-template-columns: var(--skill-create-left-width) minmax(0, 1fr);
}

.skill-iteration-structured-layout > .skill-work-card {
  width: 100%;
  max-width: none;
}

.skill-iteration-select-grid {
  display: grid;
  grid-template-columns: minmax(420px, 1.18fr) minmax(300px, .82fr);
  gap: var(--workspace-gap);
  align-items: start;
}

.skill-iteration-baseline-card {
  min-height: 104px;
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  gap: 18px;
  align-items: center;
  padding: 18px;
}

.skill-iteration-baseline-card span {
  color: #69717c;
  font-size: 12px;
  line-height: 1.2;
  font-weight: 780;
}

.skill-iteration-baseline-card h3 {
  margin: 7px 0 5px;
  color: #111318;
  font-size: 20px;
  line-height: 1.25;
  font-weight: 880;
}

.skill-iteration-baseline-card p {
  margin: 0;
  color: #5f6873;
  font-size: 13px;
  line-height: 1.5;
  font-weight: 650;
}

.skill-iteration-baseline-meta {
  display: flex;
  align-items: center;
  justify-content: flex-end;
  flex-wrap: wrap;
  gap: 8px;
}

.skill-iteration-inline-checklist-card {
  display: grid;
  gap: 14px;
  padding: 18px;
}

.skill-iteration-inline-checklist-card .panel-head {
  margin-bottom: 0;
}

.skill-iteration-check-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 8px;
}

.skill-iteration-check-item {
  min-width: 0;
  min-height: 58px;
  display: grid;
  grid-template-columns: minmax(0, 1fr) max-content;
  align-items: center;
  gap: 12px;
  border: 1px solid #edf0f3;
  border-radius: 10px;
  background: #fbfcfd;
  padding: 10px 12px;
}

.skill-iteration-check-item > span {
  min-width: 0;
  display: grid;
  gap: 3px;
}

.skill-iteration-check-item b {
  overflow: hidden;
  color: #111318;
  font-size: 13px;
  line-height: 1.3;
  font-weight: 800;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.skill-iteration-check-item small {
  overflow: hidden;
  color: #69717c;
  font-size: 11px;
  line-height: 1.35;
  font-weight: 650;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.skill-iteration-check-item .status {
  justify-self: end;
  max-width: 132px;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.skill-iteration-list-card {
  display: grid;
  align-content: start;
  gap: 14px;
}

.skill-iteration-list-card .panel-head,
.skill-iteration-trigger-card .panel-head {
  align-items: flex-start;
}

.skill-iteration-list-card .panel-head h3,
.skill-iteration-trigger-card .panel-head h3 {
  margin-bottom: 4px;
}

.skill-iteration-list-card .panel-head p,
.skill-iteration-trigger-card .panel-head p {
  margin: 0;
  color: #68717c;
  font-size: 12px;
  line-height: 1.45;
  font-weight: 650;
}

.skill-iteration-list-card .deposition-side-card {
  display: grid;
  gap: 12px;
}

.skill-iteration-list-card .search {
  width: 100%;
}

.skill-iteration-search {
  grid-template-columns: minmax(0, 1fr);
}

.skill-iteration-list button {
  min-height: 96px;
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  align-items: center;
  gap: 12px;
  padding: 13px;
}

.skill-iteration-list button i {
  border: 1px solid #e7e9ed;
  border-radius: 7px;
  background: #f7f8f9;
  color: #343943;
  padding: 4px 7px;
  font-style: normal;
  font-size: 11px;
  font-weight: 850;
}

.skill-iteration-pager {
  display: flex;
  align-items: center;
  justify-content: flex-end;
  gap: 8px;
  color: #4d535d;
  font-size: 13px;
  font-weight: 750;
  margin-top: 10px;
}

.skill-iteration-trigger-list {
  display: grid;
  gap: 8px;
}

.skill-iteration-trigger-list button {
  min-height: 86px;
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  gap: 5px 10px;
  align-items: center;
  border: 1px solid #e7e9ed;
  border-radius: 10px;
  background: #fff;
  padding: 12px;
  color: #111318;
  text-align: left;
}

.skill-iteration-trigger-list button:hover,
.skill-iteration-trigger-list button.active {
  border-color: #111318;
  box-shadow: 0 10px 22px rgba(17, 18, 20, .06);
}

.skill-iteration-trigger-list b {
  min-width: 0;
  font-size: 13px;
  line-height: 1.25;
  font-weight: 840;
}

.skill-iteration-trigger-list span:not(.status) {
  grid-column: 1 / -1;
  color: #646b76;
  font-size: 12px;
  line-height: 1.45;
  font-weight: 650;
}

.skill-version-diff-card {
  display: grid;
  grid-template-columns: minmax(0, 1fr) 28px minmax(0, 1fr) minmax(0, 1fr);
  align-items: center;
  gap: 12px;
  border: 1px solid #e5e8ec;
  border-radius: 14px;
  background: #fbfcfd;
  padding: 18px;
}

.skill-version-diff-card div {
  display: grid;
  gap: 6px;
}

.skill-version-diff-card span {
  color: #69707b;
  font-size: 12px;
  font-weight: 800;
}

.skill-version-diff-card b {
  color: #111318;
  font-size: 24px;
  line-height: 1;
  font-weight: 880;
}

.skill-version-diff-card small {
  color: #4d535d;
  font-size: 12px;
  font-weight: 650;
}

.skill-version-diff-card i {
  color: #a3a9b2;
  font-size: 28px;
  font-style: normal;
}

.skill-iteration-rule-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 14px;
}

.skill-iteration-rule-grid ul {
  display: grid;
  gap: 8px;
  margin: 0;
  padding-left: 18px;
  color: #3f4650;
  font-size: 13px;
  line-height: 1.55;
  font-weight: 650;
}

/* Agent builder */

.agent-builder-page {
  padding-bottom: 24px;
}

.agent-builder-flow-card {
  border: 1px solid #e3e6ea;
  border-radius: 14px;
  background: #fff;
  padding: 20px 22px;
  margin-bottom: 16px;
  box-shadow: 0 8px 22px rgba(17, 18, 20, .035);
  overflow-x: auto;
}

.agent-builder-page .agent-builder-flow {
  min-width: 0;
  display: grid;
  grid-template-columns:
    max-content minmax(16px, 1fr)
    max-content minmax(16px, 1fr)
    max-content minmax(16px, 1fr)
    max-content minmax(16px, 1fr)
    max-content minmax(16px, 1fr)
    max-content minmax(16px, 1fr)
    max-content;
  align-items: center;
  column-gap: 7px;
}

.agent-flow-node {
  min-width: 0;
  display: inline-flex;
  align-items: center;
  gap: 9px;
  border: 0;
  background: transparent;
  color: #14171c;
  padding: 0;
  white-space: nowrap;
  cursor: pointer;
}

.agent-flow-node .step-num {
  flex: 0 0 30px;
  width: 30px;
  height: 30px;
  display: grid;
  place-items: center;
  border: 1px solid transparent;
  border-radius: 999px;
  background: #b9bfc7;
  color: #fff;
  font-size: 13px;
  line-height: 1;
  font-weight: 850;
}

.agent-flow-node.done .step-num,
.agent-flow-node.active .step-num {
  background: #000;
  color: #fff;
}

.agent-flow-node .step-title {
  color: #a5abb3;
  font-size: 13px;
  line-height: 1;
  font-weight: 850;
}

.agent-flow-node.done .step-title,
.agent-flow-node.active .step-title {
  color: #111318;
}

.agent-flow-node .step-check {
  flex: 0 0 16px;
  width: 16px;
  height: 16px;
  display: inline-grid;
  place-items: center;
  border-radius: 999px;
  background: #111318;
}

.agent-flow-node .step-check::after {
  content: "";
  width: 6px;
  height: 3.5px;
  border-left: 1.6px solid #fff;
  border-bottom: 1.6px solid #fff;
  border-left-width: 1.6px;
  border-bottom-width: 1.6px;
  transform: rotate(-45deg) translate(1px, -1px);
}

.agent-flow-edge {
  position: relative;
  height: 1px;
  display: block;
  background: #111318;
}

.agent-flow-edge::after {
  content: "";
  position: absolute;
  right: -2px;
  top: 50%;
  width: 7px;
  height: 7px;
  border-top: 1px solid currentColor;
  border-right: 1px solid currentColor;
  color: #111318;
  transform: translateY(-50%) rotate(45deg);
}

.agent-flow-edge.edge-pending {
  background: repeating-linear-gradient(to right, #c6cbd2 0 4px, transparent 4px 8px);
}

.agent-flow-edge.edge-pending::after {
  color: #c6cbd2;
}

.agent-flow-edge.edge-active {
  background: #111318;
}

.agent-flow-edge.edge-done {
  background: repeating-linear-gradient(to right, #111318 0 4px, transparent 4px 8px);
}

.agent-step-brief {
  grid-template-columns: .9fr 1.25fr 1fr;
  margin: 0 0 16px;
}

.agent-builder-layout {
  grid-template-columns: minmax(0, 1fr) clamp(300px, 19vw, 360px);
  align-items: start;
  gap: 16px;
  padding-bottom: 0;
}

.agent-builder-layout.canvas-layout {
  grid-template-columns: minmax(0, 1fr) clamp(300px, 19vw, 360px);
}

.agent-builder-layout.agent-builder-full-layout,
.agent-builder-layout.agent-builder-full-layout.canvas-layout {
  grid-template-columns: minmax(0, 1fr);
}

.agent-builder-main-stack {
  min-width: 0;
  display: grid;
  align-content: start;
  gap: 10px;
}

.agent-builder-work-card {
  min-width: 0;
}

.agent-builder-left-rail {
  display: none;
}

.agent-workspace-brief {
  display: grid;
  grid-template-columns: minmax(0, 1.15fr) minmax(260px, .9fr) minmax(240px, .78fr);
  gap: 12px;
  border-top: 1px solid #eef0f3;
  border-bottom: 1px solid #eef0f3;
  background: #fbfcfd;
  padding: 16px 20px;
}

.agent-workspace-title,
.agent-workspace-task-list,
.agent-workspace-output {
  min-width: 0;
}

.agent-workspace-title span,
.agent-workspace-output span {
  display: block;
  color: #7d838c;
  font-size: 11px;
  line-height: 1.2;
  font-weight: 850;
}

.agent-workspace-title h3 {
  margin: 6px 0 7px;
  color: #101113;
  font-size: 18px;
  line-height: 1.25;
  font-weight: 880;
}

.agent-workspace-title p,
.agent-workspace-output small {
  display: block;
  margin: 0;
  color: #666d78;
  font-size: 12px;
  line-height: 1.6;
  font-weight: 650;
}

.agent-workspace-task-list {
  display: grid;
  gap: 8px;
}

.agent-workspace-task-list p {
  min-width: 0;
  display: grid;
  grid-template-columns: 24px minmax(0, 1fr);
  align-items: center;
  gap: 8px;
  margin: 0;
  color: #303640;
  font-size: 12px;
  line-height: 1.45;
  font-weight: 760;
}

.agent-workspace-task-list b {
  width: 24px;
  height: 24px;
  display: grid;
  place-items: center;
  border-radius: 999px;
  background: #101113;
  color: #fff;
  font-size: 11px;
  line-height: 1;
  font-weight: 860;
}

.agent-workspace-output {
  display: grid;
  align-content: start;
  gap: 7px;
  border: 1px solid #e4e7eb;
  border-radius: 12px;
  background: #fff;
  padding: 12px 14px;
}

.agent-workspace-output b {
  color: #1c2026;
  font-size: 13px;
  line-height: 1.45;
  font-weight: 820;
}

.agent-builder-work-card .table-head p,
.agent-select-card small,
.agent-tool-card span,
.agent-segment span,
.agent-chain-preview small,
.agent-config-list span,
.agent-risk-list span,
.agent-approval-grid span,
.agent-trace-list span,
.agent-left-summary span {
  color: #666d78;
  font-size: 12px;
  line-height: 1.48;
  font-weight: 650;
}

.agent-segment-grid,
.agent-card-grid,
.agent-tool-grid,
.agent-approval-grid,
.agent-release-summary {
  display: grid;
  gap: 12px;
}

.agent-segment-grid {
  grid-template-columns: repeat(3, minmax(0, 1fr));
}

.agent-segment,
.agent-select-card,
.agent-tool-card,
.agent-chain-preview article,
.agent-approval-grid p,
.agent-risk-list p,
.agent-trace-list p,
.agent-left-summary p,
.agent-release-summary article,
.agent-config-list p {
  min-width: 0;
  border: 1px solid #e4e7eb;
  border-radius: 12px;
  background: #fff;
  padding: 13px 14px;
}

.agent-segment,
.agent-select-card {
  display: grid;
  gap: 6px;
  color: #14171c;
  text-align: left;
}

.agent-segment:hover,
.agent-select-card:hover,
.agent-node-palette button:hover,
.agent-clickable-checks .check-row:hover {
  border-color: #cfd4db;
  background: #fbfcfd;
}

.agent-segment:focus-visible,
.agent-select-card:focus-visible,
.agent-node-palette button:focus-visible,
.agent-canvas-node:focus-visible,
.agent-clickable-checks .check-row:focus-visible {
  outline: 2px solid rgba(30, 115, 216, .28);
  outline-offset: 2px;
}

.agent-segment.active,
.agent-select-card.active {
  border-color: #101113;
  box-shadow: inset 0 0 0 1px #101113;
}

.agent-select-card.muted {
  opacity: .62;
}

.agent-segment b,
.agent-select-card b,
.agent-tool-card b,
.agent-chain-preview span,
.agent-config-list b,
.agent-risk-list b,
.agent-approval-grid b,
.agent-trace-list b,
.agent-left-summary b,
.agent-release-summary b {
  color: #14171c;
  font-size: 14px;
  line-height: 1.32;
  font-weight: 850;
}

.agent-select-card em {
  justify-self: start;
  color: #22262d;
  border: 1px solid #e4e7eb;
  border-radius: 999px;
  background: #f7f8f9;
  padding: 3px 8px;
  font-size: 11px;
  line-height: 1.15;
  font-style: normal;
  font-weight: 800;
}

.agent-card-grid {
  grid-template-columns: repeat(3, minmax(0, 1fr));
}

.agent-chain-preview {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 12px;
}

.agent-chain-preview article {
  display: grid;
  grid-template-columns: 34px minmax(0, 1fr);
  align-items: center;
  gap: 4px 10px;
}

.agent-chain-preview article b {
  grid-row: span 2;
  width: 34px;
  height: 34px;
  display: grid;
  place-items: center;
  border-radius: 999px;
  background: #101113;
  color: #fff;
  font-size: 13px;
  line-height: 1;
}

.agent-chain-preview small {
  display: block;
}

.agent-capability-workbench {
  align-items: stretch;
}

.agent-capability-card.enabled {
  border-color: #d9f0e2;
  background: #fbfffc;
}

.agent-capability-card.active {
  border-color: #101113;
  background: #fff;
  box-shadow: inset 0 0 0 1px #101113;
}

.agent-capability-card .skill-professional-tool-card-meta {
  justify-items: end;
}

.agent-capability-detail .textarea {
  min-height: 72px;
}

.agent-capability-meta-grid .check-row > span:first-child {
  min-width: 0;
}

.agent-capability-chain-card,
.agent-capability-risk-card {
  display: grid;
  gap: 12px;
}

.agent-capability-chain-card .panel-head,
.agent-capability-risk-card .panel-head {
  margin-bottom: 0;
}

.agent-capability-chain-preview {
  grid-template-columns: repeat(auto-fit, minmax(180px, 1fr));
}

.agent-skill-picker-modal .skill-tool-picker-list {
  grid-template-columns: 1fr;
}

.agent-canvas-work-card .table-head {
  border-bottom: 1px solid #eef0f3;
}

.agent-flow-view-tabs {
  display: inline-flex;
  align-items: center;
  gap: 3px;
  border: 1px solid #dfe4ea;
  border-radius: 10px;
  background: #f6f8fb;
  padding: 3px;
}

.agent-flow-view-tabs button {
  min-height: 32px;
  border: 0;
  border-radius: 8px;
  background: transparent;
  color: #4d5561;
  padding: 0 12px;
  font-size: 12px;
  font-weight: 820;
}

.agent-flow-view-tabs button.active {
  background: #fff;
  color: #111318;
  box-shadow: 0 1px 4px rgba(17, 18, 20, .08);
}

.agent-canvas-layout {
  display: grid;
  grid-template-columns: minmax(150px, 190px) minmax(0, 1fr) minmax(260px, 320px);
  gap: 12px;
  min-height: 420px;
}

.agent-node-palette,
.agent-node-config {
  min-width: 0;
  align-self: stretch;
  border: 1px solid #e5e8ec;
  border-radius: 14px;
  background: #fff;
  padding: 14px;
}

.agent-node-palette {
  display: grid;
  align-content: start;
  gap: 9px;
}

.agent-node-palette b {
  color: #14171c;
  font-size: 13px;
  font-weight: 850;
}

.agent-node-palette button {
  min-height: 36px;
  display: inline-flex;
  align-items: center;
  gap: 6px;
  border: 1px solid #e4e7eb;
  border-radius: 8px;
  background: #fbfcfd;
  color: #333842;
  font-size: 12px;
  font-weight: 760;
  text-align: left;
  padding: 0 10px;
}

.agent-node-palette button svg {
  flex: 0 0 14px;
  width: 14px;
  height: 14px;
}

.agent-node-palette button span,
.agent-node-directory-actions button span {
  min-width: 0;
  overflow: hidden;
  line-height: 1.2;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.agent-node-palette button.active {
  border-color: #101113;
  background: #fff;
  color: #111318;
  box-shadow: inset 0 0 0 1px #101113;
}

.agent-node-palette-actions {
  display: grid;
  gap: 7px;
  margin-top: 4px;
  padding-top: 10px;
  border-top: 1px solid #e5e8ec;
}

.agent-node-palette-actions button.primary {
  border-color: #101113;
  background: #101113;
  color: #fff;
}

.agent-node-palette-actions button {
  min-height: 34px;
  border: 1px solid #dfe4ea;
  border-radius: 8px;
  background: #fff;
  color: #111318;
  padding: 0 10px;
  font-size: 12px;
  font-weight: 760;
  text-align: left;
}

.agent-node-palette p {
  margin: 2px 0 0;
  color: #69707b;
  font-size: 12px;
  line-height: 1.55;
  font-weight: 650;
}

.agent-orchestration-canvas {
  position: relative;
  min-width: 0;
  min-height: 420px;
  display: flex;
  align-content: flex-start;
  align-items: flex-start;
  flex-wrap: wrap;
  gap: 18px 14px;
  border: 1px solid #e2e5e9;
  border-radius: 14px;
  background:
    linear-gradient(#eef2f6 1px, transparent 1px),
    linear-gradient(90deg, #eef2f6 1px, transparent 1px),
    #fbfcfd;
  background-size: 32px 32px;
  overflow: visible;
  padding: 60px 26px 28px;
}

.agent-canvas-link {
  position: absolute;
  display: none;
  background: #b8bdc5;
  border-radius: 999px;
  z-index: 1;
}

.agent-canvas-node {
  position: static;
  z-index: 2;
  flex: 1 1 158px;
  max-width: 190px;
  min-height: 104px;
  display: grid;
  align-content: start;
  gap: 5px;
  border: 1px solid #cfd6df;
  border-left-width: 4px;
  border-radius: 12px;
  background: #fff;
  padding: 10px 11px;
  box-shadow: 0 12px 24px rgba(17, 18, 20, .055);
  color: inherit;
  cursor: pointer;
  text-align: left;
}

.agent-canvas-node:hover {
  transform: translateY(-1px);
  box-shadow: 0 14px 28px rgba(17, 18, 20, .075);
}

.agent-canvas-node.active {
  border-color: #101113;
  box-shadow: 0 16px 30px rgba(17, 18, 20, .11);
}

.agent-canvas-node.needs-config small {
  border-color: #ffe3b0;
  background: #fff8ed;
  color: #b26a00;
}

.agent-canvas-node.from-skill small {
  border-color: #d9f0e2;
  background: #eaf7ef;
  color: #1c8b4a;
}

.agent-canvas-node b {
  min-width: 0;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
  color: #111318;
  font-size: 12px;
  line-height: 1.25;
  font-weight: 850;
}

.agent-canvas-node span {
  display: -webkit-box;
  min-height: 44px;
  overflow: hidden;
  -webkit-line-clamp: 3;
  -webkit-box-orient: vertical;
  color: #626873;
  font-size: 11px;
  line-height: 1.38;
  font-weight: 650;
}

.agent-canvas-node small {
  justify-self: start;
  width: max-content;
  max-width: 100%;
  overflow: hidden;
  border: 1px solid #e6e9ed;
  border-radius: 999px;
  background: #f7f8f9;
  color: #555c66;
  padding: 2px 7px;
  font-size: 10px;
  line-height: 1.2;
  font-weight: 800;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.agent-canvas-node.trigger { border-left-color: #111318; }
.agent-canvas-node.skill { border-left-color: #8ea7d1; }
.agent-canvas-node.condition { border-left-color: #e4c16b; }
.agent-canvas-node.human { border-left-color: #ef9a72; }
.agent-canvas-node.tool { border-left-color: #9bc8a7; }
.agent-canvas-node.output { border-left-color: #9aa5b5; }

.agent-canvas-arrow {
  align-self: center;
  color: #8c949f;
  font-style: normal;
  font-size: 18px;
  line-height: 1;
  font-weight: 800;
}

.agent-node-config {
  display: grid;
  align-content: start;
  gap: 14px;
}

.agent-node-edit-form {
  display: grid;
  gap: 10px;
}

.agent-node-edit-form .field {
  margin: 0;
}

.agent-node-edit-form .textarea {
  min-height: 74px;
}

.agent-node-inline-actions {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
  padding-top: 2px;
}

.agent-node-inline-actions .btn {
  min-width: 52px;
  padding-inline: 12px;
  white-space: nowrap;
}

.agent-node-form-footer {
  min-height: 40px;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
  border-top: 1px solid #eef0f3;
  padding-top: 14px;
}

.agent-node-form-footer.full {
  grid-column: 1 / -1;
}

.agent-node-form-footer .agent-node-inline-actions {
  justify-content: flex-end;
  margin-left: auto;
}

.agent-node-confirm-row {
  min-height: 32px;
  display: inline-flex;
  align-items: center;
  gap: 8px;
  color: #222832;
  font-size: 12px;
  line-height: 1.25;
  font-weight: 760;
}

.agent-node-confirm-row.full {
  grid-column: 1 / -1;
}

.agent-node-confirm-row span {
  min-width: 0;
}

.agent-node-form-layout {
  display: grid;
  grid-template-columns: 270px minmax(0, 1fr) 300px;
  gap: 14px;
  padding: 16px;
}

.agent-node-directory,
.agent-node-form-main,
.agent-node-check-panel {
  min-width: 0;
  border: 1px solid #e5e8ec;
  border-radius: 14px;
  background: #fff;
  padding: 16px;
}

.agent-node-directory,
.agent-node-check-panel {
  align-self: start;
}

.agent-node-directory {
  max-height: min(640px, calc(100vh - 340px));
  display: grid;
  grid-template-rows: auto minmax(0, 1fr) auto;
}

.agent-node-directory-list {
  min-height: 0;
  overflow-y: auto;
  display: grid;
  align-content: start;
  gap: 9px;
  margin-top: 12px;
  padding-right: 2px;
}

.agent-node-directory-list button {
  min-height: 64px;
  display: grid;
  grid-template-columns: minmax(0, 1fr) max-content;
  align-items: center;
  gap: 10px;
  border: 1px solid #e6e9ed;
  border-radius: 10px;
  background: #fbfcfd;
  color: #111318;
  padding: 10px 11px;
  text-align: left;
}

.agent-node-directory-list button.active {
  border-color: #101113;
  background: #fff;
  box-shadow: inset 0 0 0 1px #101113;
}

.agent-node-directory-list span {
  min-width: 0;
  display: grid;
  gap: 4px;
}

.agent-node-directory-list b {
  overflow: hidden;
  color: #111318;
  font-size: 13px;
  line-height: 1.25;
  font-weight: 850;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.agent-node-directory-list small {
  color: #69707b;
  font-size: 11px;
  line-height: 1.2;
  font-weight: 760;
}

.agent-node-directory-actions {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 8px;
  border-top: 1px solid #eef0f3;
  margin-top: 14px;
  padding-top: 14px;
}

.agent-node-directory-actions button {
  min-height: 34px;
  display: inline-flex;
  align-items: center;
  gap: 6px;
  border: 1px solid #dfe4ea;
  border-radius: 8px;
  background: #fff;
  color: #111318;
  padding: 0 10px;
  font-size: 12px;
  font-weight: 820;
  text-align: left;
}

.agent-node-directory-actions button svg {
  flex: 0 0 14px;
  width: 14px;
  height: 14px;
}

.agent-node-form-main {
  display: grid;
  align-content: start;
  gap: 14px;
}

.agent-node-form-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 14px;
}

.agent-node-form-grid .field {
  margin: 0;
}

.agent-node-form-grid .field.full {
  grid-column: 1 / -1;
}

.agent-node-form-grid .textarea {
  min-height: 92px;
}

.agent-node-check-list {
  display: grid;
  gap: 9px;
  margin-top: 12px;
}

.agent-node-check-list .check-row {
  min-height: 48px;
  border: 1px solid #eef0f3;
  border-radius: 10px;
  background: #fbfcfd;
  padding: 10px;
}

.agent-node-check-list .check-row > span:first-child {
  flex: 0 0 auto;
  min-width: max-content;
  white-space: nowrap;
}

.agent-node-check-list .check-row .status {
  min-width: 0;
  max-width: 155px;
  justify-content: center;
  white-space: normal;
  text-align: center;
}

.agent-node-check-panel p {
  margin: 14px 0 0;
  border-radius: 10px;
  background: #f6f7f8;
  color: #58616d;
  padding: 12px;
  font-size: 12px;
  line-height: 1.55;
  font-weight: 700;
}

.agent-config-list,
.agent-risk-list,
.agent-trace-list,
.agent-left-summary {
  display: grid;
  gap: 10px;
}

.agent-clickable-checks .check-row {
  width: 100%;
  border: 0;
  border-bottom: 1px solid var(--line);
  background: transparent;
  text-align: left;
  cursor: pointer;
}

.agent-clickable-checks .check-row:last-child {
  border-bottom: 0;
}

.agent-clickable-checks .check-row.active {
  margin-inline: -8px;
  width: calc(100% + 16px);
  border-radius: 10px;
  background: #f6f8fb;
  padding-inline: 8px;
}

.agent-action-blocker {
  max-width: 280px;
  color: #9a5b04;
  border: 1px solid #ffe3b0;
  border-radius: 999px;
  background: #fff8ed;
  padding: 8px 12px;
  font-size: 12px;
  line-height: 1.25;
  font-weight: 800;
  text-align: center;
}

.agent-node-side-panel .agent-config-list {
  gap: 8px;
}

.agent-config-list p,
.agent-risk-list p,
.agent-trace-list p,
.agent-left-summary p {
  display: grid;
  gap: 5px;
  margin: 0;
}

.agent-builder-right-rail {
  position: sticky;
  top: 14px;
  min-width: 0;
  display: grid;
  align-content: start;
  gap: 10px;
}

.agent-builder-right-rail > .panel {
  padding: 18px;
}

.agent-builder-right-rail > .panel + .panel {
  margin-top: 0;
}

.agent-check-head {
  align-items: center;
  margin-bottom: 0;
}

.agent-builder-right-rail .deposition-check-panel .check-list {
  margin-top: 12px;
}

.agent-inline-checklist-card {
  padding: 18px;
}

.agent-inline-checklist {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 8px;
  margin-top: 12px;
}

.agent-inline-checklist .check-row {
  min-height: 46px;
  width: 100%;
  border: 1px solid #eef0f3;
  border-radius: 10px;
  background: #fbfcfd;
  color: inherit;
  padding: 9px 10px;
  text-align: left;
}

.agent-inline-checklist .check-row > span {
  min-width: 0;
  line-height: 1.35;
}

.agent-step-blocker {
  display: grid;
  gap: 5px;
  border: 1px solid #ffe3b0;
  border-radius: 10px;
  background: #fff8ed;
  margin-top: 12px;
  padding: 10px 12px;
}

.agent-step-blocker span {
  color: #9a5b04;
  font-size: 11px;
  line-height: 1.2;
  font-weight: 850;
}

.agent-step-blocker b {
  color: #7a4300;
  font-size: 12px;
  line-height: 1.5;
  font-weight: 760;
}

.agent-builder-right-rail .skill-smart-advice {
  height: auto;
  max-height: none;
}

.agent-tool-grid {
  grid-template-columns: repeat(3, minmax(0, 1fr));
}

.agent-flow-stats,
.agent-tool-summary,
.agent-governance-summary,
.agent-tool-gate-grid {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 10px;
  padding: 16px;
  border-bottom: 1px solid #eef0f3;
  background: #fbfcfd;
}

.agent-flow-stats {
  grid-template-columns: repeat(6, minmax(0, 1fr));
  gap: 8px;
  border-top: 1px solid #eef0f3;
  border-bottom: 0;
  background: transparent;
  padding: 12px 0 0;
}

.agent-flow-stats .check-row,
.agent-tool-summary .check-row,
.agent-governance-summary .check-row,
.agent-tool-gate-grid .check-row {
  min-height: 42px;
  border: 1px solid #e5e8ec;
  border-radius: 10px;
  background: #fff;
  padding: 9px 12px;
}

.agent-flow-stats .check-row {
  min-height: 38px;
  padding: 8px 10px;
}

.agent-enabled-summary {
  min-height: 50px;
  display: grid;
  grid-template-columns: max-content minmax(0, 1fr) max-content;
  align-items: center;
  gap: 12px;
  border: 1px solid #e5e8ec;
  border-radius: 12px;
  background: #fff;
  padding: 12px 14px;
}

.agent-enabled-summary b {
  color: #111318;
  font-size: 14px;
  font-weight: 850;
}

.agent-enabled-summary span {
  min-width: 0;
  overflow: hidden;
  color: #626873;
  font-size: 12px;
  font-weight: 700;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.agent-tool-workbench {
  display: grid;
  grid-template-columns: minmax(220px, .72fr) minmax(240px, .78fr) minmax(0, 1.25fr);
  gap: 12px;
}

.agent-tool-list,
.agent-tool-detail {
  min-width: 0;
  display: grid;
  align-content: start;
  gap: 10px;
  border: 1px solid #e5e8ec;
  border-radius: 14px;
  background: #fbfcfd;
  padding: 14px;
}

.agent-tool-card {
  display: grid;
  gap: 8px;
  align-content: start;
  color: inherit;
  text-align: left;
  cursor: pointer;
}

.agent-tool-card-top {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: 8px;
}

.agent-tool-card .status {
  justify-self: start;
}

.agent-tool-card.active {
  border-color: #101113;
  box-shadow: inset 0 0 0 1px #101113;
}

.agent-tool-card.recommended {
  border-color: #d8e8fb;
  background: #f8fbff;
}

.agent-tool-card small {
  color: #7a808a;
  font-size: 11px;
  line-height: 1.35;
  font-weight: 760;
}

.agent-tool-card em {
  color: #4b5664;
  font-size: 11px;
  line-height: 1.45;
  font-style: normal;
  font-weight: 700;
}

.agent-tool-empty {
  min-height: 118px;
}

.agent-tool-detail-head {
  display: grid;
  grid-template-columns: minmax(0, 1fr) max-content;
  align-items: center;
  gap: 12px;
  border: 1px solid #e4e7eb;
  border-radius: 12px;
  background: #fff;
  padding: 13px 14px;
}

.agent-tool-detail-head b {
  display: block;
  color: #14171c;
  font-size: 14px;
  line-height: 1.35;
  font-weight: 850;
}

.agent-tool-detail-head span {
  display: block;
  margin-top: 4px;
  color: #666d78;
  font-size: 12px;
  line-height: 1.45;
  font-weight: 650;
}

.agent-tool-meta-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 8px;
}

.agent-tool-detail .entry-edit-grid {
  grid-template-columns: repeat(2, minmax(0, 1fr));
}

.agent-tool-detail .field:last-child {
  grid-column: 1 / -1;
}

.agent-plain-table {
  width: 100%;
  overflow: auto;
  border: 1px solid #e5e8ec;
  border-radius: 12px;
  background: #fff;
}

.agent-plain-table + .agent-plain-table,
.agent-plain-table + .skill-professional-data-table {
  margin-top: 12px;
}

.mapping-view-tabs {
  display: inline-flex;
  align-items: center;
  gap: 3px;
  border: 1px solid #dfe4ea;
  border-radius: 10px;
  background: #f6f8fb;
  padding: 3px;
}

.mapping-view-tabs > span {
  color: #68707b;
  padding: 0 7px;
  font-size: 12px;
  font-weight: 820;
}

.mapping-view-tabs button {
  min-height: 30px;
  border: 0;
  border-radius: 8px;
  background: transparent;
  color: #4d5561;
  padding: 0 10px;
  font-size: 12px;
  font-weight: 820;
}

.mapping-view-tabs button.active {
  background: #fff;
  color: #111318;
  box-shadow: 0 1px 4px rgba(17, 18, 20, .08);
}

.mapping-view-label {
  display: inline-flex;
  width: fit-content;
  min-height: 24px;
  align-items: center;
  border: 1px solid #e6e9ee;
  border-radius: 999px;
  background: #fbfcfd;
  color: #4e5661;
  padding: 0 10px;
  margin: 12px 0 8px;
  font-size: 12px;
  line-height: 1;
  font-weight: 820;
}

.agent-plain-table table {
  width: 100%;
  border-collapse: collapse;
}

.agent-plain-table th,
.agent-plain-table td {
  border-bottom: 1px solid #eef0f3;
  color: #343943;
  padding: 11px 12px;
  font-size: 12px;
  line-height: 1.45;
  font-weight: 650;
  text-align: left;
  vertical-align: top;
}

.agent-plain-table th {
  background: #fafbfc;
  color: #69707b;
  font-size: 11px;
  font-weight: 850;
}

.agent-plain-table tr:last-child td {
  border-bottom: 0;
}

.agent-approval-tabs {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  overflow: hidden;
  border: 1px solid #dfe3e8;
  border-radius: 10px;
  margin-bottom: 14px;
}

.agent-approval-tabs button {
  min-height: 38px;
  border: 0;
  border-right: 1px solid #dfe3e8;
  background: #fff;
  color: #343943;
  font-size: 13px;
  font-weight: 760;
}

.agent-approval-tabs button:last-child {
  border-right: 0;
}

.agent-approval-tabs button.active {
  background: #101113;
  color: #fff;
}

.agent-approval-grid {
  grid-template-columns: repeat(2, minmax(0, 1fr));
}

.agent-governance-card .entry-edit-grid {
  margin-top: 12px;
}

.agent-governance-split {
  display: grid;
  grid-template-columns: minmax(0, 1.15fr) minmax(280px, .85fr);
  gap: 12px;
}

.agent-permission-simulator {
  display: grid;
  gap: 10px;
}

.agent-permission-simulator p {
  min-width: 0;
  display: grid;
  grid-template-columns: 72px minmax(0, 1fr);
  align-items: start;
  gap: 10px;
  border: 1px solid #e4e7eb;
  border-radius: 10px;
  background: #fff;
  margin: 0;
  padding: 11px 12px;
}

.agent-permission-simulator b {
  color: #14171c;
  font-size: 13px;
  line-height: 1.35;
  font-weight: 850;
}

.agent-permission-simulator span {
  color: #666d78;
  font-size: 12px;
  line-height: 1.5;
  font-weight: 680;
}

.agent-risk-list p {
  grid-template-columns: 82px minmax(0, 1fr);
  align-items: center;
}

.agent-release-summary {
  grid-template-columns: repeat(auto-fit, minmax(132px, 1fr));
}

.agent-release-summary article {
  display: grid;
  gap: 5px;
}

.agent-release-summary span {
  color: #747a84;
  font-size: 11px;
  font-weight: 820;
}

.agent-builder-actions {
  position: sticky;
  bottom: 16px;
  z-index: 20;
  display: flex;
  justify-content: center;
  align-items: center;
  gap: 18px;
  border: 1px solid #e1e5ea;
  border-radius: 12px;
  background: rgba(255, 255, 255, .96);
  box-shadow: 0 18px 34px rgba(17, 18, 20, .08);
  backdrop-filter: blur(12px);
  padding: 14px 18px;
  margin-top: 18px;
}

.agent-builder-actions .btn {
  min-width: 150px;
}

.agent-release-summary b {
  font-size: 13px;
}

.agent-generated-card b {
  display: block;
}

.skill-create-knowledge-shell {
  display: grid;
  gap: var(--workspace-gap);
  padding-bottom: 86px;
}

.skill-create-progress {
  grid-template-columns:
    max-content minmax(40px, 1fr)
    max-content minmax(40px, 1fr)
    max-content minmax(40px, 1fr)
    max-content;
  min-height: 70px;
  padding: 14px 22px;
  margin-bottom: 0;
}

.skill-create-knowledge-grid {
  display: grid;
  grid-template-columns: minmax(240px, 280px) minmax(0, 1fr) minmax(260px, 320px);
  gap: var(--workspace-gap);
  align-items: stretch;
}

.skill-create-source-column,
.skill-create-draft-column,
.skill-create-check-column {
  min-width: 0;
  display: grid;
  align-content: start;
  gap: var(--workspace-gap);
}

.skill-knowledge-source-list {
  display: grid;
  gap: 10px;
  margin-top: 4px;
}

.skill-knowledge-source-item {
  min-height: 84px;
  display: grid;
  grid-template-columns: 42px minmax(0, 1fr) auto;
  align-items: center;
  gap: 12px;
  border: 1px solid #edf0f3;
  border-radius: 12px;
  background: #fff;
  padding: 12px;
}

.skill-knowledge-source-item b,
.skill-knowledge-source-item small {
  display: block;
}

.skill-knowledge-source-item b {
  color: var(--ink);
  font-size: 14px;
  line-height: 1.25;
  font-weight: 850;
}

.skill-knowledge-source-item small {
  margin-top: 5px;
  color: var(--muted);
  font-size: 12px;
  line-height: 1.35;
  font-weight: 650;
}

.skill-source-action {
  width: 100%;
  margin-top: 12px;
}

.skill-source-summary {
  display: grid;
  gap: 12px;
  margin: 0;
  padding-left: 18px;
}

.skill-source-summary li {
  color: var(--body);
  font-size: 13px;
  line-height: 1.65;
  font-weight: 650;
}

.skill-ai-draft-panel {
  display: grid;
  gap: 14px;
}

.skill-draft-table {
  overflow: hidden;
  border: 1px solid #e5e8ec;
  border-radius: 14px;
  background: #fff;
}

.skill-draft-row {
  display: grid;
  grid-template-columns: minmax(140px, 180px) minmax(0, 1fr);
  min-height: 58px;
  border-top: 1px solid #edf0f3;
}

.skill-draft-row:first-child {
  border-top: 0;
}

.skill-draft-label {
  display: flex;
  align-items: flex-start;
  gap: 10px;
  border-right: 1px solid #edf0f3;
  background: #fbfcfd;
  padding: 10px 14px;
}

.skill-draft-icon {
  flex: 0 0 20px;
  width: 20px;
  height: 20px;
  display: grid;
  place-items: center;
  color: #101113;
}

.skill-draft-icon .ui-icon {
  width: 18px;
  height: 18px;
  stroke-width: 2;
}

.skill-draft-label b {
  color: var(--ink);
  font-size: 14px;
  line-height: 1.35;
  font-weight: 850;
}

.skill-draft-content {
  min-width: 0;
  color: var(--body);
  padding: 9px 16px;
  font-size: 12px;
  line-height: 1.42;
  font-weight: 650;
}

.skill-draft-content ul,
.skill-draft-content ol {
  display: grid;
  gap: 3px;
  margin: 0;
  padding-left: 18px;
}

.skill-capability-callout {
  display: grid;
  gap: 4px;
  border: 1px solid #e6e8eb;
  border-radius: 14px;
  background: linear-gradient(180deg, #f7f7f8 0%, #eee 100%);
  padding: 10px 14px;
}

.skill-capability-callout b {
  color: #101113;
  font-size: 14px;
  line-height: 1.35;
  font-weight: 880;
}

.skill-capability-callout span {
  color: #626873;
  font-size: 12px;
  line-height: 1.55;
  font-weight: 650;
}

.skill-create-todos {
  display: grid;
  gap: 8px;
}

.skill-create-todos .panel-head {
  margin-bottom: 0;
}

.skill-todo-row {
  min-height: 44px;
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  align-items: center;
  gap: 12px;
  border: 1px solid #e5e8ec;
  border-radius: 10px;
  background: #fff;
  color: var(--body);
  padding: 10px 12px;
  text-align: left;
}

.skill-todo-row:hover {
  border-color: #101113;
}

.skill-todo-row span:first-child {
  min-width: 0;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
  font-size: 13px;
  line-height: 1.35;
  font-weight: 700;
}

.skill-preflight-list {
  margin-top: 6px;
}

.skill-smart-advice {
  display: grid;
  align-content: start;
  gap: 10px;
  height: 210px;
  overflow-y: auto;
}

.skill-smart-advice p {
  margin: 0;
  color: var(--body);
  font-size: 13px;
  line-height: 1.7;
  font-weight: 650;
}

.skill-create-action-bar {
  position: fixed;
  left: calc(var(--sidebar) + var(--workspace-gutter-x));
  right: var(--workspace-gutter-x);
  bottom: 16px;
  z-index: 30;
  display: grid;
  grid-template-columns: minmax(160px, 220px) minmax(160px, 220px) minmax(200px, 260px);
  justify-content: end;
  gap: 14px;
  border: 1px solid var(--line);
  border-radius: var(--radius);
  background: rgba(255,255,255,.82);
  box-shadow: var(--shadow-soft);
  padding: 16px;
}

.skill-create-action-bar .btn {
  width: 100%;
}

.skill-knowledge-page .skill-create-action-bar {
  position: sticky;
  left: auto;
  right: auto;
  bottom: 16px;
  margin-top: 18px;
}

.skill-knowledge-page .bottom-actions.skill-bottom-actions {
  position: sticky;
  bottom: 0;
}

.skill-bottom-actions .btn[data-action="generate-skill-builder"],
.skill-bottom-actions .btn[data-action="generate-skill-direct"],
.skill-bottom-actions .btn[data-action="generate-skill-dialogue-builder"],
.skill-bottom-actions .btn[data-action="generate-skill-dialogue-direct"],
.skill-bottom-actions .btn[data-route="skill-detail"] {
  min-width: 190px;
}

.skill-create-layout {
  align-items: stretch;
}

.skill-create-step-rail,
.skill-draft-preview {
  align-self: start;
}

.skill-draft-preview .panel {
  min-width: 0;
}

.detail-title.compact {
  grid-template-columns: 42px minmax(0, 1fr);
}

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

.skill-mapping-card {
  min-height: 108px;
  display: grid;
  align-content: start;
  gap: 8px;
  border: 1px solid var(--line);
  border-radius: 12px;
  background: #fff;
  padding: 16px;
}

.skill-mapping-card b,
.skill-mapping-card span {
  display: block;
}

.skill-mapping-card b {
  color: var(--ink);
  font-size: 15px;
  line-height: 1.3;
  font-weight: 830;
}

.skill-mapping-card > span:not(.status) {
  color: var(--muted);
  font-size: 13px;
  line-height: 1.5;
  font-weight: 650;
}

.skill-chat-panel {
  min-height: 520px;
}

.skill-chat-list {
  display: grid;
  gap: 12px;
  margin: 12px 0 18px;
}

.skill-chat-bubble {
  max-width: min(660px, 88%);
  border: 1px solid var(--line);
  border-radius: 14px;
  background: #fff;
  color: var(--body);
  padding: 12px 14px;
  font-size: 14px;
  line-height: 1.55;
  font-weight: 650;
}

.skill-chat-bubble.user {
  justify-self: end;
  border-color: var(--black);
  background: #101113;
  color: #fff;
}

.skill-chat-bubble.assistant {
  justify-self: start;
}

.skill-question-grid {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
  margin-bottom: 16px;
}

.skill-question-chip {
  min-height: 34px;
  border: 1px solid var(--line);
  border-radius: 999px;
  background: #fff;
  color: var(--body);
  padding: 0 12px;
  font-size: 12px;
  line-height: 1;
  font-weight: 760;
}

.skill-question-chip:hover {
  border-color: var(--black);
}

.skill-question-chip.active {
  border-color: #101113;
  background: #101113;
  color: #fff;
}

.skill-dialogue-page {
  --deposition-card-radius: 16px;
  --deposition-inner-radius: 14px;
  --deposition-card-shadow: 0 18px 44px rgba(17, 18, 20, .055);
  padding-bottom: 16px;
}

.skill-dialogue-flow .step-icon {
  width: 18px;
  height: 18px;
  stroke: currentColor;
  stroke-width: 2.8;
  fill: none;
}

.skill-dialogue-page .skill-build-flow {
  grid-template-columns: max-content minmax(44px, 1fr) max-content minmax(44px, 1fr) max-content minmax(44px, 1fr) max-content;
  grid-auto-flow: initial;
  grid-auto-columns: initial;
  column-gap: 12px;
}

.skill-dialogue-page .skill-build-flow .flow-node {
  min-width: 0;
}

.skill-dialogue-page .skill-build-flow .flow-node .step-title {
  min-width: 0;
  white-space: nowrap;
}

.skill-dialogue-page .skill-build-flow .flow-edge {
  min-width: 0;
}

.skill-dialogue-workspace {
  display: grid;
  grid-template-columns: minmax(0, 1.08fr) minmax(420px, .92fr);
  gap: var(--workspace-gap);
  align-items: stretch;
}

.skill-dialogue-layout.confirm-layout,
.skill-dialogue-layout.wide-layout {
  grid-template-columns: var(--skill-create-left-width) minmax(0, 1fr) var(--skill-create-right-width);
  align-items: start;
}

.skill-dialogue-workspace > * {
  min-width: 0;
}

.skill-dialogue-left-rail {
  min-width: 0;
  display: grid;
  align-content: start;
  gap: var(--workspace-gap);
}

.skill-dialogue-path-card,
.skill-dialogue-guide-card {
  padding: 18px;
}

.skill-dialogue-path-card .panel-head {
  margin-bottom: 0;
}

.skill-dialogue-path-card .panel-head h3 {
  font-size: 16px;
}

.skill-dialogue-path-list {
  display: grid;
  gap: 8px;
}

.skill-dialogue-path-item {
  display: grid;
  grid-template-columns: 28px minmax(0, 1fr) auto;
  align-items: start;
  gap: 10px;
  border: 1px solid #edf0f3;
  border-radius: 10px;
  background: #fff;
  padding: 10px;
}

.skill-dialogue-path-item.active {
  border-color: #111;
  box-shadow: 0 10px 22px rgba(17, 18, 20, .055);
}

.skill-dialogue-path-item .path-index {
  width: 28px;
  height: 28px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  border-radius: 999px;
  background: #f0f2f5;
  color: #30343a;
  font-size: 12px;
  font-weight: 850;
}

.skill-dialogue-path-item.active .path-index {
  background: #101113;
  color: #fff;
}

.skill-dialogue-path-item b {
  display: block;
  color: var(--ink);
  font-size: 13px;
  line-height: 1.35;
  font-weight: 850;
}

.skill-dialogue-path-item p {
  margin: 4px 0 0;
  color: var(--muted);
  font-size: 12px;
  line-height: 1.45;
  font-weight: 650;
}

.skill-dialogue-guide-card {
  display: grid;
  gap: 8px;
}

.skill-dialogue-guide-card b {
  font-size: 14px;
  line-height: 1.35;
}

.skill-dialogue-guide-card p {
  margin: 0;
  color: var(--muted);
  font-size: 12px;
  line-height: 1.55;
  font-weight: 650;
}

.skill-dialogue-goal-work .deposition-step-body {
  display: grid;
  gap: 10px;
  padding-top: 14px;
}

.skill-dialogue-intent-card {
  display: grid;
  gap: 12px;
  border: 1px solid #e5e8ec;
  border-radius: 14px;
  background: #fff;
  padding: 16px;
}

.skill-dialogue-intent-card > div:first-child {
  display: grid;
  gap: 5px;
}

.skill-dialogue-intent-card span,
.skill-dialogue-current-question > span {
  color: var(--muted);
  font-size: 12px;
  line-height: 1.3;
  font-weight: 780;
}

.skill-dialogue-intent-card h3,
.skill-dialogue-current-question h3 {
  margin: 0;
  color: var(--ink);
  font-size: 20px;
  line-height: 1.25;
  font-weight: 880;
}

.skill-dialogue-intent-card p,
.skill-dialogue-current-question p {
  margin: 0;
  color: var(--muted);
  font-size: 13px;
  line-height: 1.55;
  font-weight: 650;
}

.skill-dialogue-intent-card .field {
  gap: 8px;
}

.skill-dialogue-intent-card .textarea {
  min-height: 104px;
  font-size: 14px;
  line-height: 1.55;
}

.skill-dialogue-example-grid {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 6px;
  margin-top: -2px;
}

.skill-dialogue-intent-card .skill-question-chip {
  min-height: 28px;
  border-color: #e2e5e9;
  background: #fbfcfd;
  color: #626873;
  padding: 0 10px;
  font-size: 12px;
  font-weight: 680;
  box-shadow: none;
}

.skill-dialogue-intent-card .skill-question-chip:hover {
  border-color: #c8cdd4;
  background: #f5f6f8;
}

.skill-dialogue-base-fields .panel-head {
  margin-bottom: 0;
}

.skill-dialogue-base-fields .status {
  background: #f1f2f4;
  color: #6a6f78;
}

.skill-dialogue-base-fields .panel-head > div {
  display: grid;
  gap: 4px;
}

.skill-dialogue-base-fields .panel-head p {
  margin: 0;
  color: var(--muted);
  font-size: 12px;
  line-height: 1.45;
  font-weight: 650;
}

.skill-dialogue-base-grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 12px 10px;
}

.skill-dialogue-base-grid .field:nth-child(4),
.skill-dialogue-base-grid .field:nth-child(5) {
  grid-column: span 3;
}

.skill-dialogue-base-grid .textarea {
  min-height: 72px;
}

.skill-dialogue-main-stack {
  min-width: 0;
  display: grid;
  align-content: start;
  gap: 14px;
}

.skill-dialogue-chat-card,
.skill-dialogue-right-stack {
  min-height: 650px;
}

.skill-dialogue-chat-card {
  display: grid;
  grid-template-rows: auto minmax(0, 1fr) auto auto;
  align-content: start;
  gap: 16px;
  padding: 22px;
}

.skill-dialogue-chat-card .panel-head {
  align-items: start;
}

.skill-dialogue-chat-card .table-head {
  align-items: start;
}

.skill-dialogue-chat-card .panel-head > div {
  display: grid;
  gap: 6px;
}

.skill-dialogue-chat-card .table-head > div,
.skill-dialogue-chat-card .panel-head > div {
  min-width: 0;
  display: grid;
  gap: 6px;
}

.skill-dialogue-chat-card .table-head p,
.skill-dialogue-chat-card .panel-head p {
  margin: 0;
  color: var(--muted);
  font-size: 13px;
  line-height: 1.5;
  font-weight: 650;
}

.skill-dialogue-thread {
  min-height: 0;
  display: grid;
  align-content: start;
  gap: 14px;
  overflow-y: auto;
  padding: 4px 2px 22px;
}

.skill-dialogue-thread.compact {
  max-height: 230px;
  border: 1px solid #edf0f3;
  border-radius: 12px;
  background: #fbfcfd;
  padding: 14px;
}

.skill-dialogue-stage-grid {
  display: grid;
  grid-template-columns: minmax(0, .92fr) minmax(0, 1.08fr);
  gap: 14px;
}

.skill-dialogue-current-question,
.skill-dialogue-extracted-card {
  min-width: 0;
  border: 1px solid #e5e8ec;
  border-radius: 14px;
  background: #fff;
  padding: 18px;
}

.skill-dialogue-current-question {
  display: grid;
  align-content: start;
  gap: 12px;
}

.skill-dialogue-current-question .skill-question-grid {
  margin: 0;
}

.skill-dialogue-extracted-card .panel-head {
  margin-bottom: 0;
}

.skill-dialogue-extracted-card .deposition-source-snippets {
  margin-top: 12px;
}

.skill-dialogue-confirm-list {
  display: grid;
  gap: 10px;
  border: 1px solid #e5e8ec;
  border-radius: 14px;
  background: #fff;
  padding: 18px;
}

.skill-dialogue-confirm-list .panel-head {
  margin-bottom: 0;
}

.skill-dialogue-confirm-list .panel-head h3 {
  font-size: 16px;
}

.skill-dialogue-confirm-item {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  align-items: center;
  gap: 12px;
  min-height: 62px;
  border: 1px solid #edf0f3;
  border-radius: 10px;
  background: #fbfcfd;
  padding: 12px;
}

.skill-dialogue-confirm-item.checked {
  border-color: #d6eadc;
  background: #f4fbf6;
}

.skill-dialogue-confirm-item b {
  display: block;
  color: var(--ink);
  font-size: 13px;
  line-height: 1.35;
  font-weight: 850;
}

.skill-dialogue-confirm-item p {
  margin: 4px 0 0;
  color: var(--muted);
  font-size: 12px;
  line-height: 1.45;
  font-weight: 650;
}

.skill-dialogue-confirm-item .btn {
  min-width: 88px;
}

.skill-dialogue-message {
  display: grid;
  grid-template-columns: 32px minmax(0, max-content);
  align-items: end;
  gap: 10px;
  max-width: 92%;
}

.skill-dialogue-message.user {
  grid-template-columns: minmax(0, max-content) 32px;
  justify-self: end;
}

.skill-dialogue-message.user .skill-dialogue-avatar {
  grid-column: 2;
  grid-row: 1;
}

.skill-dialogue-message.user .skill-dialogue-bubble {
  grid-column: 1;
  grid-row: 1;
}

.skill-dialogue-avatar {
  width: 32px;
  height: 32px;
  display: grid;
  place-items: center;
  border: 1px solid #d8e8ff;
  border-radius: 50%;
  background: #edf5ff;
  color: #0b63ce;
  font-size: 11px;
  line-height: 1;
  font-weight: 900;
}

.skill-dialogue-message.user .skill-dialogue-avatar {
  border-color: #111317;
  background: #111317;
  color: #fff;
}

.skill-dialogue-round {
  justify-self: center;
  min-height: 24px;
  display: inline-flex;
  align-items: center;
  border: 1px solid #e5e8ec;
  border-radius: 999px;
  background: #fff;
  color: var(--muted);
  padding: 0 10px;
  font-size: 11px;
  line-height: 1;
  font-weight: 800;
}

.skill-dialogue-bubble {
  max-width: min(560px, 100%);
  border: 1px solid #dfe3e8;
  border-radius: 8px;
  background: #f7f8fa;
  color: #202226;
  padding: 10px 14px;
  box-shadow: 0 8px 18px rgba(17, 18, 20, .035);
}

.skill-dialogue-bubble p {
  margin: 0;
  font-size: 13px;
  line-height: 1.55;
  font-weight: 650;
}

.skill-dialogue-message.user .skill-dialogue-bubble {
  background: #f0f1f3;
}

.skill-dialogue-choice-message {
  max-width: min(620px, 100%);
}

.skill-dialogue-choice-message .skill-dialogue-bubble,
.skill-dialogue-choice-message p {
  max-width: 100%;
}

.skill-dialogue-choice-grid {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
  margin-top: 8px;
}

.skill-dialogue-choice-grid .skill-question-chip {
  min-height: 30px;
}

.skill-dialogue-composer {
  display: grid;
  gap: 12px;
  border-top: 1px solid #edf0f3;
  padding-top: 14px;
}

.skill-dialogue-composer .skill-question-grid {
  margin-bottom: 0;
}

.skill-dialogue-input-row {
  display: grid;
  grid-template-columns: minmax(0, 1fr) 88px;
  align-items: stretch;
  gap: 10px;
}

.skill-dialogue-input-row .textarea {
  min-height: 54px;
  max-height: 140px;
  resize: vertical;
}

.skill-dialogue-input-row .btn {
  width: 88px;
  min-height: 54px;
  border-radius: 10px;
  padding-inline: 0;
}

.skill-dialogue-send-btn {
  font-weight: 850;
  letter-spacing: 0;
}

.skill-dialogue-composer p {
  margin: 0;
  color: var(--muted);
  font-size: 12px;
  line-height: 1.45;
  font-weight: 650;
}

.skill-dialogue-right-stack {
  display: grid;
  grid-template-rows: minmax(0, auto) minmax(0, 1fr);
  align-content: start;
  gap: 14px;
  min-width: 0;
}

.skill-dialogue-draft-card {
  min-width: 0;
}

.skill-dialogue-page .deposition-check-panel,
.skill-dialogue-draft-card {
  padding: 22px;
}

.skill-dialogue-page .skill-unified-check-panel {
  padding: 20px;
}

.skill-dialogue-page .deposition-check-panel h3,
.skill-dialogue-draft-card .panel-head h3 {
  font-size: 18px;
  line-height: 1.25;
}

.skill-dialogue-page .deposition-check-panel .check-list {
  margin-top: 0;
  gap: 0;
}

.skill-dialogue-page .deposition-check-panel .check-row {
  min-height: 54px;
  padding: 0;
}

.skill-dialogue-page .check-row > span {
  min-width: 0;
  line-height: 1.4;
}

.skill-dialogue-draft-card {
  display: grid;
  align-content: start;
}

.skill-dialogue-draft-table {
  overflow: hidden;
  border: 1px solid #e5e8ec;
  border-radius: 14px;
  background: #fff;
}

.skill-dialogue-draft-row {
  display: grid;
  grid-template-columns: minmax(124px, 170px) minmax(0, 1fr);
  min-height: 58px;
  border-top: 1px solid #edf0f3;
}

.skill-dialogue-draft-row:first-child {
  border-top: 0;
}

.skill-dialogue-draft-content {
  min-width: 0;
  display: grid;
  align-content: center;
  gap: 8px;
  color: var(--body);
  padding: 10px 14px;
  font-size: 13px;
  line-height: 1.5;
  font-weight: 680;
}

.skill-dialogue-draft-content .pill-grid {
  gap: 6px;
}

.skill-dialogue-draft-content .tag {
  font-size: 11px;
  padding: 5px 8px;
}

.skill-dialogue-draft-confirm-card .table-head {
  align-items: start;
}

.skill-dialogue-draft-confirm-card .table-head > div {
  min-width: 0;
  display: grid;
  gap: 6px;
}

.skill-dialogue-draft-confirm-card .table-head p {
  margin: 0;
  color: var(--muted);
  font-size: 13px;
  line-height: 1.5;
  font-weight: 650;
}

.skill-dialogue-draft-edit-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 12px;
}

.skill-dialogue-draft-edit-grid .textarea {
  min-height: 104px;
}

.skill-spec-hero {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  align-items: start;
  gap: 18px;
  border: 1px solid #e5e8ec;
  border-radius: 14px;
  background: #fff;
  padding: 18px;
}

.skill-spec-hero span,
.skill-spec-hero p,
.skill-spec-card p,
.skill-spec-card li {
  color: var(--muted);
  font-size: 13px;
  line-height: 1.6;
  font-weight: 650;
}

.skill-spec-hero h3 {
  margin: 4px 0 6px;
  color: var(--ink);
  font-size: 20px;
  line-height: 1.25;
  font-weight: 880;
}

.skill-spec-hero p {
  margin: 0;
  color: var(--body);
}

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

.skill-spec-card {
  min-width: 0;
  display: grid;
  align-content: start;
  gap: 12px;
  border: 1px solid #e5e8ec;
  border-radius: 14px;
  background: #fff;
  padding: 16px;
}

.skill-spec-card.skill-spec-wide {
  grid-column: 1 / -1;
}

.skill-spec-card .panel-head {
  margin-bottom: 0;
}

.skill-spec-card .panel-head h3 {
  font-size: 16px;
}

.skill-spec-card p,
.skill-spec-card ul,
.skill-spec-card ol {
  margin: 0;
}

.skill-spec-card ul,
.skill-spec-card ol {
  display: grid;
  gap: 6px;
  padding-left: 18px;
}

.skill-spec-card .textarea {
  min-height: 118px;
  line-height: 1.55;
}

.skill-dialogue-actions {
  position: sticky;
  bottom: 0;
  z-index: 20;
  justify-content: center;
  margin-top: var(--workspace-gap);
  border-top: 1px solid rgba(229, 231, 235, .92);
  background: rgba(255, 255, 255, .96);
  box-shadow: 0 -8px 22px rgba(17, 18, 20, .035);
  backdrop-filter: blur(8px);
}

.skill-dialogue-actions .btn.primary {
  min-width: 190px;
}

.skill-dialogue-actions .btn {
  min-width: 140px;
}

.project-start-grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 14px;
}

.project-start-card {
  min-height: 142px;
  border: 1px solid var(--line);
  border-radius: 14px;
  background: #fff;
  color: var(--ink);
  display: grid;
  align-content: start;
  gap: 12px;
  padding: 22px;
  text-align: left;
  cursor: pointer;
}

.project-start-card:hover,
.project-start-card.active {
  border-color: var(--black);
  box-shadow: 0 14px 32px rgba(0,0,0,.08);
}

.project-start-copy {
  display: grid;
  gap: 7px;
}

.project-start-copy small {
  color: var(--muted);
  font-size: 12px;
  font-weight: 800;
}

.project-start-copy b {
  font-size: 17px;
  font-weight: 850;
}

.project-start-copy span {
  color: var(--muted);
  font-size: 13px;
  line-height: 1.5;
  white-space: normal;
}

/* ---------- Additional component styles for detail pages ---------- */

.breadcrumb {
  margin-bottom: 12px;
  color: var(--muted);
  font-size: 14px;
  font-weight: 800;
}

.breadcrumb span {
  cursor: pointer;
}

.breadcrumb span:hover {
  color: var(--ink);
}

.deposition-title {
  margin-bottom: 14px;
  color: #566170;
  font-size: 18px;
  line-height: 1.35;
  font-weight: 820;
}

.deposition-title span,
.deposition-title b {
  color: inherit;
  font-weight: inherit;
}

.page-tags {
  display: flex;
  align-items: center;
  gap: 10px;
  flex-wrap: wrap;
}

.detail-tags {
  margin-bottom: 20px;
}

.status.dot {
  display: inline-flex;
  align-items: center;
  gap: 6px;
}

.status.dot::before {
  content: "";
  width: 6px;
  height: 6px;
  border-radius: 50%;
  background: currentColor;
}

.status.green::before,
.status.blue::before,
.status.amber::before,
.status.red::before,
.status.purple::before {
  background: currentColor;
}

.hint {
  margin: 12px 0 0;
  color: var(--muted);
  font-size: 12px;
}

.chevron {
  color: var(--faint);
  font-size: 18px;
  font-weight: 700;
}

.mini-text {
  min-width: 0;
}

.mini-text b,
.mini-text span {
  display: block;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}

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

.run-line span b {
  display: block;
  font-size: 14px;
  font-weight: 750;
}

.run-line span span {
  display: block;
  margin-top: 2px;
  color: var(--muted);
  font-size: 12px;
}

.score-badge {
  text-align: right;
}

.score-badge b {
  display: block;
  font-size: 26px;
  line-height: 1;
  font-weight: 800;
}

.score-badge span {
  color: var(--muted);
  font-size: 12px;
}

.confirmation-body b,
.confirmation-body span {
  display: block;
}

.confirmation-body b {
  font-weight: 750;
}

.confirmation-body span {
  color: var(--muted);
  font-size: 12px;
  margin-top: 3px;
}

.confirmation-actions {
  display: flex;
  align-items: center;
  gap: 8px;
}

.cell-truncate {
  display: block;
  max-width: 240px;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.panel-head .btn,
.table-head .btn {
  padding: 0 12px;
  min-height: 34px;
  font-size: 13px;
}

.prompt-rules-layout {
  gap: 16px;
  align-items: start;
}

.prompt-rules-layout > .stack {
  gap: 10px;
}

.prompt-rules-panel {
  padding: 14px 16px;
}

.prompt-rules-panel .panel-head {
  margin-bottom: 10px;
}

.prompt-rules-textarea {
  min-height: 150px;
  line-height: 1.45;
}

.prompt-rules-side {
  padding: 16px;
}

.prompt-rules-side .detail-title {
  padding-bottom: 14px;
  margin-bottom: 12px;
}

/* Mode cards */

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

.mode-card {
  min-height: 116px;
  display: grid;
  grid-template-columns: 50px minmax(0, 1fr) auto;
  align-items: center;
  gap: 16px;
  border: 1px solid var(--line);
  border-radius: var(--radius);
  background: rgba(255,255,255,.78);
  padding: 18px;
  text-align: left;
  cursor: pointer;
}

.mode-card:hover {
  border-color: var(--line-strong);
  background: #fff;
  box-shadow: var(--shadow-soft);
}

.mode-card.primary {
  border-color: var(--black);
}

.mode-icon {
  width: 46px;
  height: 46px;
  display: grid;
  place-items: center;
  border: 1px solid var(--line);
  border-radius: 13px;
  background: #fafafa;
  color: var(--ink);
}

.mode-text b,
.mode-text span {
  display: block;
}

.mode-text b {
  font-weight: 750;
}

.mode-text span {
  margin-top: 4px;
  color: var(--muted);
  font-size: 13px;
  line-height: 1.45;
}

/* Upload cards */

.upload-stack {
  display: grid;
  gap: 12px;
}

.upload-card {
  min-height: 80px;
  display: grid;
  grid-template-columns: 48px minmax(0, 1fr) auto;
  align-items: center;
  gap: 14px;
  border: 1px dashed var(--line-strong);
  border-radius: var(--radius);
  background: rgba(255,255,255,.78);
  padding: 16px;
}

.upload-text b,
.upload-text span {
  display: block;
}

.upload-text span {
  margin-top: 4px;
  color: var(--muted);
  font-size: 13px;
}

.upload-formats {
  grid-column: 2 / -1;
  color: var(--faint);
  font-size: 12px;
}

/* Builder layouts */

.builder-layout {
  display: grid;
  grid-template-columns: clamp(220px, 14vw, 280px) minmax(0, 1fr) clamp(300px, 18vw, 360px);
  gap: var(--workspace-gap);
  align-items: start;
}

.builder-layout > main {
  min-width: 0;
  overflow: hidden;
}

.builder-nav {
  display: grid;
  gap: 10px;
  border: 1px solid var(--line);
  border-radius: var(--radius);
  background: rgba(255,255,255,.78);
  padding: 16px;
}

.step-item {
  display: flex;
  align-items: center;
  gap: 10px;
  color: var(--muted);
  font-size: 14px;
  font-weight: 750;
}

.step-item.active {
  color: var(--ink);
}

.step-item.active .step-num {
  background: var(--black);
  color: #fff;
  border-color: var(--black);
}

.step-num {
  width: 28px;
  height: 28px;
  display: grid;
  place-items: center;
  border: 1px solid var(--line-strong);
  border-radius: 50%;
  background: #fff;
  font-size: 12px;
  font-weight: 800;
}

.builder-preview {
  display: grid;
  gap: 14px;
  align-content: start;
  min-width: 0;
}

/* Field grid */

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

.field-grid .field:has(textarea) {
  grid-column: 1 / -1;
}

/* Trace timeline */

.trace-timeline {
  display: grid;
  gap: 16px;
  padding: 8px 0;
}

.trace-evidence-page {
  display: grid;
  gap: 16px;
}

.trace-explain-strip {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 16px;
  padding: 14px 16px;
  border: 1px solid var(--line);
  border-radius: var(--radius);
  background: #fff;
}

.trace-explain-strip div {
  display: grid;
  gap: 4px;
  min-width: 0;
}

.trace-explain-strip b {
  color: var(--ink);
  font-size: 15px;
  line-height: 1.3;
  font-weight: 860;
}

.trace-explain-strip span:not(.status) {
  color: var(--body);
  font-size: 13px;
  line-height: 1.55;
}

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

.trace-fact-card {
  min-width: 0;
  display: grid;
  gap: 7px;
  padding: 14px;
  border: 1px solid var(--line);
  border-radius: var(--radius);
  background: #fff;
}

.trace-fact-card span {
  color: var(--muted);
  font-size: 12px;
  font-weight: 800;
  line-height: 1.2;
}

.trace-fact-card b {
  color: var(--ink);
  font-size: 16px;
  line-height: 1.25;
  font-weight: 860;
}

.trace-fact-card small {
  color: var(--muted);
  font-size: 12px;
  line-height: 1.45;
}

.trace-evidence-layout {
  align-items: start;
}

.trace-chain-panel .panel-head {
  margin-bottom: 4px;
}

.trace-chain-panel .panel-head p {
  margin: 4px 0 0;
  color: var(--muted);
  font-size: 12px;
  line-height: 1.45;
  font-weight: 650;
}

.trace-side-panel .detail-section {
  margin-top: 14px;
}

.trace-answer-list {
  display: grid;
  gap: 8px;
}

.trace-answer-list span {
  display: block;
  padding: 8px 10px;
  border: 1px solid var(--line);
  border-radius: 8px;
  background: #f8f9fb;
  color: var(--body);
  font-size: 12px;
  line-height: 1.35;
  font-weight: 750;
}

.trace-item {
  display: grid;
  grid-template-columns: 28px minmax(0, 1fr);
  gap: 14px;
  position: relative;
}

.trace-item:not(:last-child)::before {
  content: "";
  position: absolute;
  top: 28px;
  left: 13px;
  bottom: -16px;
  border-left: 1px solid var(--line-strong);
}

.trace-dot {
  width: 14px;
  height: 14px;
  border-radius: 50%;
  background: var(--blue);
  border: 3px solid #fff;
  box-shadow: 0 0 0 1px var(--line-strong);
  justify-self: center;
  z-index: 1;
}

.trace-dot.green { background: var(--green); }
.trace-dot.amber { background: var(--amber); }
.trace-dot.red { background: var(--red); }

.trace-card {
  border: 1px solid var(--line);
  border-radius: var(--radius-sm);
  background: #fff;
  padding: 14px;
}

.trace-head {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
  margin-bottom: 8px;
}

.trace-card p {
  margin: 0;
  color: var(--body);
  font-size: 13px;
  line-height: 1.6;
}

/* Test cards */

.test-verification-page .metric-grid {
  grid-template-columns: repeat(4, minmax(0, 1fr));
}

.test-workbench-grid {
  display: grid;
  grid-template-columns: minmax(220px, .74fr) minmax(0, 2fr) minmax(240px, .86fr);
  gap: 14px;
  align-items: start;
}

.test-gate-panel,
.test-run-panel {
  display: grid;
  gap: 14px;
  align-content: start;
}

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

.test-gate-list > div {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
  border-bottom: 1px solid var(--line);
  padding-bottom: 10px;
  color: var(--body);
  font-size: 13px;
}

.test-gate-list > div:last-child {
  border-bottom: 0;
  padding-bottom: 0;
}

.test-gate-note {
  margin: 0;
  color: var(--body);
  font-size: 13px;
  line-height: 1.6;
}

.test-case-panel {
  min-width: 0;
}

.test-case-toolbar {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 14px;
  margin-bottom: 12px;
}

.test-case-toolbar h3 {
  margin: 0 0 4px;
  font-size: 16px;
}

.test-case-toolbar span {
  color: var(--muted);
  font-size: 13px;
}

.segmented-control {
  display: inline-flex;
  align-items: center;
  gap: 2px;
  border: 1px solid var(--line);
  border-radius: var(--radius-sm);
  background: rgba(255,255,255,.78);
  padding: 3px;
  flex: 0 0 auto;
}

.segmented-control button {
  min-height: 32px;
  border-radius: 6px;
  padding: 0 12px;
  color: var(--muted);
  font-size: 13px;
  font-weight: 750;
}

.segmented-control button.active {
  background: var(--black);
  color: #fff;
}

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

.test-grid.enhanced {
  grid-template-columns: repeat(2, minmax(280px, 1fr));
}

.feedback-verification-context {
  display: grid;
  grid-template-columns: minmax(0, 1fr) minmax(300px, 420px);
  gap: 12px;
  margin-bottom: 12px;
}

.feedback-verification-main,
.feedback-verification-requirement,
.feedback-closure-checks article {
  min-width: 0;
  border: 1px solid var(--line);
  border-radius: var(--radius-sm);
  background: rgba(255,255,255,.88);
  box-shadow: var(--shadow-soft);
}

.feedback-verification-main {
  padding: 16px 18px;
}

.feedback-verification-main h3 {
  margin: 8px 0 6px;
  color: var(--ink);
  font-size: 18px;
  line-height: 1.3;
  font-weight: 860;
}

.feedback-verification-main p {
  max-width: 820px;
  margin: 0;
  color: var(--body);
  font-size: 13px;
  line-height: 1.6;
}

.feedback-verification-meta {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
  margin-top: 12px;
}

.feedback-verification-meta span {
  border-radius: 999px;
  background: var(--surface-soft);
  padding: 5px 9px;
  color: var(--muted);
  font-size: 12px;
  font-weight: 760;
}

.feedback-verification-requirement {
  display: grid;
  align-content: center;
  gap: 8px;
  padding: 16px 18px;
}

.feedback-verification-requirement span {
  color: var(--muted);
  font-size: 12px;
  font-weight: 760;
}

.feedback-verification-requirement b {
  color: var(--ink);
  font-size: 14px;
  line-height: 1.5;
  font-weight: 820;
}

.feedback-closure-checks {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 12px;
  margin-bottom: 12px;
}

.feedback-closure-checks article {
  display: grid;
  gap: 6px;
  padding: 14px 16px;
}

.feedback-closure-checks b {
  color: var(--ink);
  font-size: 14px;
  line-height: 1.35;
  font-weight: 850;
}

.feedback-closure-checks span,
.feedback-closure-checks small {
  color: var(--muted);
  font-size: 12px;
  line-height: 1.45;
}

.feedback-closure-checks span {
  color: var(--body);
  font-weight: 760;
}

.evaluation-command-strip {
  display: grid;
  grid-template-columns: minmax(0, 1fr) minmax(210px, 280px);
  gap: 14px;
  align-items: stretch;
  margin-bottom: 12px;
  border: 1px solid var(--line);
  border-radius: var(--radius);
  background: rgba(255,255,255,.84);
  box-shadow: var(--shadow-soft);
  overflow: hidden;
}

.evaluation-command-strip > div:first-child {
  min-width: 0;
  padding: 16px 18px;
}

.evaluation-command-strip .status {
  margin-bottom: 10px;
}

.evaluation-command-strip h3 {
  margin: 0;
  color: var(--ink);
  font-size: 18px;
  line-height: 1.3;
  font-weight: 850;
}

.evaluation-command-strip p {
  max-width: 720px;
  margin: 6px 0 0;
  color: var(--body);
  font-size: 13px;
  line-height: 1.6;
}

.evaluation-run-summary {
  display: grid;
  align-content: center;
  gap: 4px;
  border-left: 1px solid var(--line);
  background: #fafafa;
  padding: 16px 18px;
}

.evaluation-run-summary span,
.evaluation-run-summary small {
  color: var(--muted);
  font-size: 12px;
  line-height: 1.45;
}

.evaluation-run-summary b {
  color: var(--ink);
  font-size: 18px;
  line-height: 1.25;
  font-weight: 850;
}

.evaluation-metric-grid {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 12px;
  margin-bottom: 12px;
}

.evaluation-metric {
  min-width: 0;
  min-height: var(--metric-card-height);
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  grid-template-rows: auto auto;
  gap: 4px 12px;
  align-items: center;
  border: 1px solid var(--line);
  border-radius: var(--radius-sm);
  background: rgba(255,255,255,.86);
  padding: 12px 16px;
  text-align: left;
  box-shadow: var(--shadow-soft);
}

.evaluation-metric:hover,
.evaluation-metric[aria-pressed="true"] {
  border-color: var(--line-strong);
  background: #fff;
}

.evaluation-metric[aria-pressed="true"] {
  box-shadow: inset 0 0 0 1px var(--ink), var(--shadow-soft);
}

.evaluation-metric span {
  color: var(--body);
  font-size: 13px;
  font-weight: 800;
}

.evaluation-metric b {
  grid-row: 1 / span 2;
  grid-column: 2;
  color: var(--ink);
  font-size: 28px;
  line-height: 1;
  font-weight: 880;
  letter-spacing: 0;
}

.evaluation-metric small {
  color: var(--muted);
  font-size: 12px;
  font-weight: 700;
}

.evaluation-metric.good b {
  color: var(--green);
}

.evaluation-metric.danger b {
  color: var(--red);
}

.evaluation-results-card {
  padding: 18px;
  overflow-x: auto;
  overflow-y: hidden;
}

.evaluation-results-card .table-head {
  padding: 0 0 16px;
}

.evaluation-results-table {
  min-width: 1060px;
  table-layout: fixed;
}

.evaluation-results-table th:nth-child(1) { width: 14%; }
.evaluation-results-table th:nth-child(2) { width: 14%; }
.evaluation-results-table th:nth-child(3) { width: 12%; }
.evaluation-results-table th:nth-child(4) { width: 20%; }
.evaluation-results-table th:nth-child(5) { width: 20%; }
.evaluation-results-table th:nth-child(6) { width: 9%; }
.evaluation-results-table th:nth-child(7) { width: 11%; }

.evaluation-results-table th,
.evaluation-results-table td {
  padding: 8px 12px;
  font-size: 13px;
}

.evaluation-results-table th:first-child,
.evaluation-results-table td:first-child {
  padding-left: 14px;
}

.evaluation-results-table th:nth-child(3),
.evaluation-results-table td:nth-child(3),
.evaluation-results-table th:nth-child(6),
.evaluation-results-table td:nth-child(6),
.evaluation-results-table th:nth-child(7),
.evaluation-results-table td:nth-child(7) {
  text-align: center;
}

.evaluation-results-table td:nth-child(4),
.evaluation-results-table td:nth-child(5) {
  white-space: normal;
}

.evaluation-results-table .cell-truncate {
  max-width: 100%;
  display: -webkit-box;
  overflow: hidden;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 2;
  white-space: normal;
}

.evaluation-result-cell,
.evaluation-rate-cell {
  min-width: 0;
  display: grid;
  gap: 5px;
}

.evaluation-result-cell b {
  color: var(--ink);
  font-size: 15px;
  line-height: 1.2;
  font-weight: 860;
}

.evaluation-result-cell small {
  overflow: hidden;
  color: var(--muted);
  font-size: 12px;
  line-height: 1.25;
  font-weight: 700;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.evaluation-rate-cell {
  justify-items: center;
}

.evaluation-rate-cell span {
  color: var(--ink);
  font-size: 13px;
  line-height: 1.2;
  font-weight: 820;
}

.evaluation-rate-cell i {
  width: min(92px, 100%);
  height: 6px;
  overflow: hidden;
  border-radius: 999px;
  background: #eceff2;
}

.evaluation-rate-cell em {
  display: block;
  height: 100%;
  border-radius: inherit;
  background: linear-gradient(90deg, var(--green), #35b06d);
}

.evaluation-row-fail .evaluation-rate-cell em {
  background: linear-gradient(90deg, var(--red), #f06a6a);
}

.evaluation-empty-row {
  min-height: 108px;
  display: grid;
  place-items: center;
  align-content: center;
  gap: 6px;
  color: var(--muted);
  text-align: center;
}

.evaluation-empty-row b {
  color: var(--ink);
  font-size: 15px;
}

.evaluation-results-table .row-actions {
  flex-wrap: nowrap;
  justify-content: flex-start;
}

.evaluation-empty-row span {
  font-size: 13px;
}

.evaluation-filter-row {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
  margin: 0 0 12px;
}

.evaluation-filter-row button {
  min-height: 32px;
  display: inline-flex;
  align-items: center;
  gap: 8px;
  border: 1px solid var(--line);
  border-radius: var(--control-radius);
  background: rgba(255,255,255,.82);
  color: var(--body);
  padding: 0 11px;
  font-size: 13px;
  font-weight: 780;
}

.evaluation-filter-row button span {
  min-width: 20px;
  min-height: 20px;
  display: inline-grid;
  place-items: center;
  border-radius: 999px;
  background: var(--surface-soft);
  color: var(--muted);
  font-size: 11px;
}

.evaluation-filter-row button.active {
  border-color: var(--black);
  background: var(--black);
  color: #fff;
}

.evaluation-filter-row button.active span {
  background: rgba(255,255,255,.16);
  color: #fff;
}

.evaluation-case-grid {
  align-items: stretch;
}

.test-card {
  border: 1px solid var(--line);
  border-radius: var(--radius);
  background: rgba(255,255,255,.78);
  padding: 16px;
  min-width: 0;
}

.test-card.pass {
  border-left: 4px solid var(--green);
}

.test-card.fail {
  border-left: 4px solid var(--red);
}

.evaluation-card {
  min-height: var(--eval-card-min-height);
  display: flex;
  flex-direction: column;
  box-shadow: var(--shadow-soft);
}

.evaluation-card.fail {
  background: linear-gradient(90deg, rgba(255,240,240,.8), rgba(255,255,255,.9) 18%);
}

.evaluation-card.pass {
  background: linear-gradient(90deg, rgba(234,247,239,.72), rgba(255,255,255,.9) 18%);
}

.test-head {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: 12px;
  margin-bottom: 10px;
}

.test-head > div {
  min-width: 0;
}

.test-head b {
  display: block;
  color: var(--ink);
  font-size: 16px;
  line-height: 1.35;
}

.test-head span:not(.status) {
  display: block;
  margin-top: 4px;
  color: var(--muted);
  font-size: 12px;
}

.evaluation-card-head {
  margin-bottom: 12px;
}

.evaluation-progress-row {
  display: flex;
  align-items: baseline;
  justify-content: space-between;
  gap: 12px;
  margin-bottom: 7px;
  color: var(--muted);
  font-size: 12px;
  font-weight: 780;
}

.evaluation-progress-row b {
  color: var(--ink);
  font-size: 18px;
  font-weight: 860;
}

.evaluation-progress {
  height: 7px;
  overflow: hidden;
  border-radius: 999px;
  background: #eceff2;
  margin-bottom: 11px;
}

.evaluation-progress i {
  display: block;
  height: 100%;
  border-radius: inherit;
  background: linear-gradient(90deg, var(--green), #35b06d);
}

.evaluation-card.fail .evaluation-progress i {
  background: linear-gradient(90deg, var(--red), #f06a6a);
}

.test-meta {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
  color: var(--muted);
  font-size: 12px;
  margin-bottom: 10px;
}

.test-meta span {
  border: 1px solid var(--line);
  border-radius: 999px;
  background: rgba(255,255,255,.68);
  padding: 4px 8px;
}

.test-assertion {
  min-height: 42px;
  margin: 0 0 12px;
  color: var(--body);
  font-size: 13px;
  line-height: 1.6;
}

.test-issue {
  margin: 0 0 12px;
  color: var(--body);
  font-size: 13px;
}

.evaluation-issue-block,
.evaluation-next-step {
  border: 1px solid var(--line);
  border-radius: var(--radius-sm);
  background: rgba(255,255,255,.72);
  padding: 10px 12px;
  margin-bottom: 10px;
}

.evaluation-issue-block span,
.evaluation-next-step span {
  display: block;
  margin-bottom: 4px;
  color: var(--muted);
  font-size: 12px;
  font-weight: 820;
}

.evaluation-issue-block p,
.evaluation-next-step p {
  margin: 0;
  color: var(--body);
  font-size: 13px;
  line-height: 1.55;
}

.evaluation-card-actions {
  margin-top: auto;
}

.evaluation-empty-state {
  grid-column: 1 / -1;
  min-height: 160px;
  display: grid;
  place-items: center;
  align-content: center;
  gap: 6px;
  border: 1px dashed var(--line-strong);
  border-radius: var(--radius);
  background: rgba(255,255,255,.66);
  color: var(--muted);
  text-align: center;
}

.evaluation-empty-state b {
  color: var(--ink);
  font-size: 15px;
}

.evaluation-empty-state span {
  font-size: 13px;
}

.test-actions {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
}

.test-run-list {
  display: grid;
  gap: 12px;
}

.test-run-list > div {
  border: 1px solid var(--line);
  border-radius: var(--radius-sm);
  background: rgba(255,255,255,.7);
  padding: 12px;
}

.test-run-list b,
.test-run-list span,
.test-run-list small {
  display: block;
}

.test-run-list b {
  color: var(--ink);
  font-size: 13px;
}

.test-run-list span {
  margin-top: 4px;
  color: var(--body);
  font-size: 12px;
}

.test-run-list small {
  margin-top: 6px;
  color: var(--muted);
  font-size: 11px;
}

.test-run-button {
  width: 100%;
}

/* Release management */

.release-management-page .metric-grid {
  grid-template-columns: repeat(6, minmax(0, 1fr));
}

.release-assets-main {
  display: grid;
  gap: 14px;
}

.release-layout {
  display: grid;
  grid-template-columns: minmax(0, 1fr);
  gap: 14px;
  align-items: start;
}

.release-main,
.release-side {
  display: grid;
  gap: 14px;
  min-width: 0;
}

.release-table-card .data-table th,
.release-table-card .data-table td {
  white-space: nowrap;
}

.release-table-scroll {
  overflow-x: auto;
}

.release-queue-table td small {
  display: block;
  margin-top: 4px;
  color: var(--muted);
  font-size: 11px;
  line-height: 1.35;
}

.release-queue-table .version-skill-cell {
  min-width: 230px;
}

.release-queue-table .version-skill-cell span {
  max-width: 320px;
  white-space: normal;
}

.release-next-action {
  display: block;
  color: var(--ink);
  font-size: 13px;
  line-height: 1.25;
}

.release-type-filter {
  margin: 0 0 12px;
}

.release-detail-drawer {
  width: min(520px, calc(100vw - 32px));
}

.release-decision-card {
  display: grid;
  gap: 10px;
  padding: 14px;
  border: 1px solid var(--line);
  border-radius: var(--radius);
  background: #fff;
}

.release-decision-card h4 {
  margin: 0;
  color: var(--ink);
  font-size: 16px;
  line-height: 1.3;
  font-weight: 860;
}

.release-decision-card p {
  margin: 0;
  color: var(--body);
  font-size: 13px;
  line-height: 1.55;
}

.release-path-strip {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 8px;
}

.release-path-strip span {
  min-width: 0;
  display: flex;
  align-items: center;
  gap: 7px;
  padding: 9px 10px;
  border: 1px solid var(--line);
  border-radius: 8px;
  background: #fff;
  color: var(--muted);
  font-size: 12px;
  font-weight: 800;
  line-height: 1.2;
}

.release-path-strip i {
  flex: 0 0 20px;
  width: 20px;
  height: 20px;
  display: grid;
  place-items: center;
  border-radius: 50%;
  background: #eef0f3;
  color: var(--muted);
  font-style: normal;
  font-size: 11px;
}

.release-path-strip span.done {
  border-color: rgba(22, 163, 74, .22);
  background: #f0fbf5;
  color: #11683a;
}

.release-path-strip span.done i {
  background: #16a34a;
  color: #fff;
}

.release-path-strip span.current {
  border-color: rgba(217, 119, 6, .25);
  background: #fff8eb;
  color: #9a5b00;
}

.release-path-strip span.current i {
  background: #d97706;
  color: #fff;
}

.release-check-summary-modal {
  width: min(760px, 100%);
  max-height: min(760px, calc(100vh - 48px));
  display: grid;
  grid-template-rows: auto minmax(0, 1fr) auto;
}

.release-check-summary-body {
  overflow-y: auto;
  display: grid;
  gap: 14px;
}

.release-check-modal-grid article {
  min-width: 0;
  border: 1px solid var(--line);
  border-radius: var(--radius);
  background: rgba(255,255,255,.82);
}

.release-check-modal-grid article > span {
  color: var(--muted);
  font-size: 12px;
  font-weight: 800;
}

.release-check-modal-grid small {
  color: var(--muted);
  font-size: 12px;
  line-height: 1.45;
}

.release-check-modal-grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 10px;
}

.release-check-modal-grid article {
  display: grid;
  gap: 8px;
  align-content: start;
  padding: 14px;
}

.release-check-modal-grid b {
  color: var(--ink);
  font-size: 14px;
  line-height: 1.35;
  font-weight: 840;
}

.release-check-list {
  margin: 0;
}

.release-stage-strip {
  display: grid;
  grid-template-columns: repeat(5, minmax(0, 1fr));
  gap: 10px;
}

.release-stage-strip article {
  min-height: 94px;
  border: 1px solid var(--line);
  border-radius: var(--radius);
  background: rgba(255,255,255,.78);
  padding: 14px;
}

.release-stage-strip span:not(.status) {
  display: block;
  margin-top: 10px;
  color: var(--body);
  font-size: 13px;
  line-height: 1.5;
}

.release-check-panel {
  display: grid;
  gap: 14px;
  align-content: start;
}

/* Workflow canvas */

.canvas-panel {
  min-height: 520px;
  overflow: auto;
}

.workflow-canvas {
  position: relative;
  min-width: 820px;
  min-height: 340px;
  background:
    linear-gradient(to right, rgba(0,0,0,.03) 1px, transparent 1px),
    linear-gradient(to bottom, rgba(0,0,0,.03) 1px, transparent 1px);
  background-size: 24px 24px;
  border-radius: var(--radius-sm);
}

.workflow-node {
  position: absolute;
  width: 170px;
  border: 1px solid var(--line);
  border-radius: 12px;
  background: #fff;
  padding: 12px;
  text-align: center;
  box-shadow: var(--shadow-soft);
}

.workflow-node b {
  display: block;
  font-size: 13px;
}

.workflow-node span {
  display: block;
  margin-top: 4px;
  color: var(--muted);
  font-size: 11px;
}

.workflow-node.trigger { border-color: var(--black); background: #fafafa; }
.workflow-node.skill { border-color: var(--blue); }
.workflow-node.condition { border-color: var(--amber); }
.workflow-node.human { border-color: var(--purple); }
.workflow-node.tool { border-color: var(--green); }
.workflow-node.output { border-color: var(--line-strong); }

/* Code textarea */

.textarea.code {
  font-family: "SF Mono", Monaco, "Cascadia Code", Consolas, monospace;
  font-size: 12px;
  background: #fbfbfa;
}

/* Responsive additions */

@media (max-width: 1280px) {
  .builder-layout {
    grid-template-columns: 1fr;
  }

  .skill-create-knowledge-grid {
    grid-template-columns: 1fr;
  }

  .skill-source-select-grid {
    grid-template-columns: 1fr;
  }

  .skill-dialogue-workspace {
    grid-template-columns: 1fr;
  }

  .skill-mode-layout,
  .skill-mode-unified-layout,
  .skill-template-grid,
  .skill-iteration-layout {
    grid-template-columns: 1fr;
  }

  .skill-template-structured-layout.skill-template-context-layout {
    grid-template-columns: 1fr;
  }

  .skill-iteration-structured-layout.skill-iteration-context-layout,
  .skill-iteration-select-grid,
  .skill-iteration-check-grid {
    grid-template-columns: 1fr;
  }

  .skill-iteration-baseline-card {
    grid-template-columns: 1fr;
  }

  .skill-iteration-baseline-meta {
    justify-content: flex-start;
  }

  .skill-mode-left-nav {
    grid-auto-flow: column;
    grid-auto-columns: minmax(120px, 1fr);
    overflow-x: auto;
  }

  .skill-schema-table {
    overflow-x: auto;
  }

  .skill-schema-head,
  .skill-schema-row {
    min-width: 780px;
  }

  .skill-flow-chain,
  .skill-professional-intro-card,
  .skill-professional-config-grid,
  .skill-professional-node-form-layout,
  .skill-template-draft-hero,
  .skill-template-draft-grid,
  .skill-template-diff-grid,
  .skill-template-param-grid,
  .skill-iteration-rule-grid,
  .skill-version-diff-card {
    grid-template-columns: 1fr;
  }

  .skill-professional-fit-tags {
    justify-content: flex-start;
  }

  .skill-professional-preview-card {
    position: static;
  }

  .skill-professional-node-index-actions {
    grid-template-columns: repeat(auto-fit, minmax(130px, 1fr));
  }

  .skill-dialogue-chat-card,
  .skill-dialogue-right-stack {
    min-height: auto;
  }

  .skill-dialogue-thread {
    max-height: none;
    overflow: visible;
  }

  .skill-create-progress {
    overflow-x: auto;
  }

  .builder-nav {
    grid-auto-flow: column;
    grid-auto-columns: minmax(120px, 1fr);
    overflow-x: auto;
  }

  .mode-grid,
  .test-grid {
    grid-template-columns: 1fr;
  }
}

@media (max-width: 980px) {
  .asset-layout.feedback-flow-layout,
  .asset-layout.feedback-full-layout {
    grid-template-columns: 1fr;
  }

  .feedback-flow-select-grid {
    grid-template-columns: 1fr;
  }

  .feedback-step-action-card {
    grid-template-columns: 1fr;
  }

  .feedback-step-action-card .btn {
    width: 100%;
  }

  .asset-layout.deposition-full-layout,
  .asset-layout.deposition-no-right-layout {
    grid-template-columns: 1fr;
  }

  .deposition-inline-checklist {
    grid-template-columns: 1fr;
  }

  .field-grid {
    grid-template-columns: 1fr;
  }

  .skill-draft-row {
    grid-template-columns: 1fr;
  }

  .skill-draft-label {
    border-right: 0;
    border-bottom: 1px solid #edf0f3;
  }

  .skill-create-action-bar {
    grid-template-columns: 1fr;
  }

  .skill-test-case {
    grid-template-columns: 1fr;
  }

  .skill-config-confirm-grid {
    grid-template-columns: 1fr;
  }

  .skill-dialogue-flow {
    overflow-x: auto;
  }

  .skill-dialogue-draft-row {
    grid-template-columns: 1fr;
  }

  .skill-dialogue-base-grid {
    grid-template-columns: 1fr;
  }

  .skill-professional-module-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .skill-professional-node-form-grid {
    grid-template-columns: 1fr;
  }

  .skill-professional-node-form-footer {
    align-items: stretch;
    flex-direction: column;
  }

  .skill-dialogue-draft-edit-grid {
    grid-template-columns: 1fr;
  }

  .skill-spec-hero,
  .skill-spec-grid {
    grid-template-columns: 1fr;
  }

  .skill-dialogue-base-grid .field:nth-child(4),
  .skill-dialogue-base-grid .field:nth-child(5) {
    grid-column: auto;
  }

  .skill-dialogue-draft-row .skill-draft-label {
    border-right: 0;
    border-bottom: 1px solid #edf0f3;
  }

  .skill-dialogue-layout > .skill-knowledge-right-rail,
  .skill-dialogue-layout > .skill-create-right-rail {
    grid-template-columns: 1fr;
  }

  .skill-dialogue-actions {
    position: sticky;
    justify-content: stretch;
  }

  .deposition-mode-grid,
  .evaluation-score-grid,
  .feedback-verification-context,
  .feedback-closure-checks,
  .evaluation-command-strip,
  .evaluation-metric-grid,
  .entry-field-grid,
  .deposition-name-card,
  .deposition-step-brief {
    grid-template-columns: 1fr;
  }

  .evaluation-run-summary {
    border-left: 0;
    border-top: 1px solid var(--line);
  }
}

@media (max-width: 720px) {
  .workflow-canvas {
    min-width: auto;
  }

  .knowledge-detail-page .metric-grid.no-icons {
    grid-template-columns: 1fr;
  }

  .knowledge-detail-page .metric-grid.no-icons .metric {
    height: var(--metric-card-height);
  }

  .skill-dialogue-chat-card {
    padding: 16px;
  }

  .skill-dialogue-message,
  .skill-dialogue-message.user {
    max-width: 100%;
  }

  .skill-dialogue-input-row {
    grid-template-columns: 1fr;
  }

  .skill-dialogue-input-row .btn {
    width: 100%;
  }

  .bottom-actions.skill-dialogue-actions {
    flex-direction: column;
  }

  .bottom-actions.skill-dialogue-actions .btn {
    width: 100%;
  }

  .knowledge-module-head {
    display: none;
  }

  .knowledge-module-row {
    grid-template-columns: 1fr;
    gap: 6px;
    align-items: start;
    padding: 14px;
  }

  .knowledge-module-row span::before {
    content: "状态：";
    color: var(--muted);
    font-weight: 720;
  }

  .knowledge-module-row p::before {
    content: "内容：";
    color: var(--muted);
    font-weight: 720;
  }

  .knowledge-module-row em::before {
    content: "缺口：";
    color: var(--muted);
    font-weight: 720;
  }

  .asset-core-head {
    display: none;
  }

  .asset-core-row {
    grid-template-columns: 1fr;
    gap: 7px;
    align-items: start;
    padding: 14px;
  }

  .asset-core-row > div:first-child {
    font-size: 15px;
  }

  .asset-field-chip-grid {
    display: grid;
    grid-template-columns: 1fr;
  }

  .knowledge-health-panel {
    padding: 18px;
  }

  .detail-title.no-icon {
    grid-template-columns: 1fr;
    gap: 10px;
  }

  .knowledge-detail-version-table {
    min-width: 0;
    border: 0;
    background: transparent;
  }

  .knowledge-detail-version-table thead {
    display: none;
  }

  .knowledge-detail-version-table,
  .knowledge-detail-version-table tbody,
  .knowledge-detail-version-table tr,
  .knowledge-detail-version-table td {
    display: block;
    width: 100%;
  }

  .knowledge-detail-version-table tr {
    border: 1px solid var(--table-border);
    border-radius: 12px;
    background: #fff;
    overflow: hidden;
  }

  .knowledge-detail-version-table tr + tr {
    margin-top: 10px;
  }

  .knowledge-detail-version-table td {
    display: grid;
    grid-template-columns: 76px minmax(0, 1fr);
    gap: 10px;
    border-top: 1px solid var(--table-border);
    padding: 10px 12px;
    white-space: normal;
  }

  .knowledge-detail-version-table td:first-child {
    border-top: 0;
  }

  .knowledge-detail-version-table td::before {
    color: var(--muted);
    font-size: 12px;
    font-weight: 760;
  }

  .knowledge-detail-version-table td .status {
    justify-self: start;
  }

  .knowledge-detail-version-table td:nth-child(1)::before { content: "版本"; }
  .knowledge-detail-version-table td:nth-child(2)::before { content: "变更"; }
  .knowledge-detail-version-table td:nth-child(3)::before { content: "负责人"; }
  .knowledge-detail-version-table td:nth-child(4)::before { content: "时间"; }
  .knowledge-detail-version-table td:nth-child(5)::before { content: "状态"; }

  .skill-knowledge-page {
    overflow: hidden;
  }

  .skill-knowledge-page .flow-node,
  .skill-dialogue-page .flow-node,
  .skill-mode-page .flow-node {
    min-width: 0;
  }

  .skill-knowledge-page .flow-node .step-title,
  .skill-dialogue-page .flow-node .step-title,
  .skill-mode-page .flow-node .step-title {
    min-width: 0;
    white-space: normal;
  }

  .selected-knowledge-meta,
  .skill-source-select-grid,
  .skill-knowledge-picker-toolbar,
  .skill-knowledge-list-row {
    grid-template-columns: 1fr;
  }

  .selected-knowledge-actions {
    justify-content: stretch;
  }

  .selected-knowledge-actions .btn,
  .recommended-knowledge-card .panel-head .btn {
    width: 100%;
  }

  .skill-knowledge-picker-modal {
    width: 100vw;
    max-height: 100vh;
    border-radius: 0;
  }

  .skill-knowledge-list-row {
    align-items: start;
  }

  .knowledge-select-radio {
    display: none;
  }

  .skill-knowledge-list-side {
    min-width: 0;
    justify-items: start;
    grid-template-columns: repeat(3, max-content);
    align-items: center;
    gap: 8px;
  }

  .skill-professional-module-grid {
    grid-template-columns: 1fr;
  }

  .bottom-actions.skill-bottom-actions {
    display: grid;
    grid-template-columns: 1fr;
    align-items: stretch;
  }

  .bottom-actions.skill-bottom-actions .btn {
    width: 100%;
    min-width: 0;
  }

  .skill-create-action-bar {
    position: static;
    left: auto;
    right: auto;
    bottom: auto;
  }

  .skill-detail-drawer {
    width: 100vw;
    border-radius: 0;
  }

  .skill-detail-header,
  .skill-detail-scroll,
  .skill-detail-footer {
    padding-left: 18px;
    padding-right: 18px;
  }

  .skill-detail-title-row {
    align-items: start;
  }

  .skill-detail-title-row h3 {
    font-size: 22px;
  }

  .feedback-scope-strip,
  .feedback-scope-strip > div:first-child {
    grid-template-columns: 1fr;
    align-items: stretch;
  }

  .feedback-scope-strip > div:first-child {
    display: grid;
  }

  .feedback-scope-actions,
  .feedback-scope-actions .btn {
    width: 100%;
  }

  .contract-chip {
    max-width: 100%;
  }

  .skill-detail-footer {
    gap: 12px;
  }

  .feedback-detail-content .feedback-action-grid,
  .feedback-asset-detail-page .asset-side-actions {
    display: grid;
    grid-template-columns: 1fr;
  }

  .feedback-loop-progress,
  .feedback-close-grid,
  .feedback-current-action {
    grid-template-columns: 1fr;
  }

  .feedback-current-action-controls {
    justify-content: stretch;
  }

  .feedback-current-action-controls .btn {
    flex: 1 1 100%;
  }

  .feedback-context-banner,
  .feedback-evidence-list,
  .feedback-rule-draft-panel .entry-edit-grid {
    grid-template-columns: 1fr;
  }

  .feedback-context-banner {
    position: static;
  }

  .feedback-context-meta {
    grid-template-columns: 1fr;
  }

  .feedback-context-actions,
  .feedback-rule-draft-actions {
    justify-content: stretch;
  }

  .feedback-context-actions {
    min-width: 0;
  }

  .feedback-context-actions .btn,
  .feedback-rule-draft-actions .btn {
    flex: 1 1 100%;
  }

  .feedback-loop-step {
    border-right: 0;
    border-bottom: 1px solid var(--line);
  }

  .feedback-loop-step:last-child {
    border-bottom: 0;
  }

  .feedback-detail-content .feedback-action {
    width: 100%;
  }

  .modal-backdrop {
    padding: 12px;
  }

  .skill-create-modal {
    max-height: calc(100vh - 24px);
  }

}

@media (max-width: 1280px) {
  .dashboard-grid,
  .content-grid,
  .experience-layout,
  .agent-grid,
  .asset-layout,
  .asset-layout.source-layout,
  .asset-layout.wide-layout,
  .skill-dialogue-layout.confirm-layout,
  .skill-dialogue-layout.wide-layout {
    grid-template-columns: 1fr;
  }

  .asset-layout.source-layout .deposition-left-rail {
    display: grid;
  }

  .split-grid {
    grid-template-columns: 1fr;
  }

  .knowledge-detail-layout {
    grid-template-columns: 1fr;
  }

  .asset-detail-page .asset-detail-layout {
    grid-template-columns: 1fr;
  }

  .asset-detail-page .asset-detail-card,
  .asset-detail-page .asset-detail-side {
    grid-column: auto;
  }

  .knowledge-health-panel {
    position: static;
  }

  .metric-grid.cols-5.no-icons {
    grid-template-columns: repeat(3, minmax(0, 1fr));
  }

  .governance-module-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .governance-workbench-grid,
  .governance-overview-grid,
  .governance-lower-grid {
    grid-template-columns: 1fr;
  }

  .release-layout {
    grid-template-columns: 1fr;
  }

  .governance-quick-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .skill-create-mode-grid {
    grid-template-columns: 1fr;
  }

  .skill-mapping-grid {
    grid-template-columns: 1fr;
  }

  .workbench-dashboard {
    grid-template-columns: minmax(0, 1fr) minmax(280px, 340px);
    grid-template-areas:
      "stats stats"
      "tasks actions"
      "shortcuts overview"
      "projects projects";
  }

  .dense-workbench-dashboard {
    grid-template-columns: minmax(0, 1fr) minmax(300px, 360px);
    grid-template-areas:
      "stats feedback"
      "tasks progress"
      "shortcuts suggestions"
      "projects overview";
    grid-template-rows: auto;
  }

  .responsive-workbench-layout {
    grid-template-columns: minmax(0, 1fr) minmax(300px, 360px);
    grid-template-areas: none;
    grid-template-rows: none;
  }

  .responsive-workbench-layout > .workbench-stack {
    display: grid;
  }

  .responsive-workbench-layout .workbench-left-stack > :first-child,
  .responsive-workbench-layout .workbench-left-stack > :last-child,
  .responsive-workbench-layout .dashboard-stat-strip,
  .responsive-workbench-layout .dashboard-projects,
  .responsive-workbench-layout .dashboard-feedback,
  .responsive-workbench-layout .dashboard-progress,
  .responsive-workbench-layout .dashboard-suggestions,
  .responsive-workbench-layout .dashboard-overview {
    grid-area: auto;
  }

  .workbench-left-stack {
    grid-column: 1 / -1;
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .workbench-main-stack {
    grid-column: 1;
  }

  .workbench-right-stack {
    grid-column: 2;
  }

  .side-rail {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .experience-layout {
    grid-template-columns: 1fr;
  }

  .experience-layout > .side-rail {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .experience-table-card .table-head,
  .table-card .table-head {
    align-items: flex-start;
    flex-wrap: wrap;
  }

  .experience-table-tools,
  .table-head-tools {
    flex-wrap: wrap;
    justify-content: flex-start;
  }

  .experience-table-tools .search,
  .table-head-tools .search {
    width: min(420px, 100%);
  }

  .experience-filter .toolbar {
    flex-wrap: wrap;
  }

  .trace-fact-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}

@media (max-width: 980px) {
  :root {
    --sidebar: 168px;
  }

  .sidebar {
    padding: 22px 12px;
    align-items: center;
  }

  .brand-copy,
  .quick-create span,
  .agent-manage span {
    display: none;
  }

  .brand {
    padding: 0;
  }

  .quick-create,
  .agent-manage {
    width: 54px;
    min-width: 54px;
    padding: 0;
    grid-template-columns: 1fr;
    justify-items: center;
  }

  .nav-btn {
    width: 100%;
    padding: 0 18px;
  }

  .metric-grid,
  .metric-grid.cols-5,
  .metric-grid.compact {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .asset-detail-page .metric-grid.no-icons {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

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

  .workbench-dashboard {
    grid-template-columns: 1fr;
    grid-template-areas:
      "stats"
      "tasks"
      "actions"
      "shortcuts"
      "projects"
      "overview";
  }

  .dense-workbench-dashboard {
    grid-template-columns: 1fr;
    grid-template-areas:
      "stats"
      "feedback"
      "tasks"
      "progress"
      "shortcuts"
      "projects"
      "suggestions"
      "overview";
    grid-template-rows: auto;
  }

  .responsive-workbench-layout,
  .workbench-left-stack {
    grid-template-columns: 1fr;
  }

  .responsive-workbench-layout .workbench-main-stack,
  .responsive-workbench-layout .workbench-right-stack,
  .workbench-left-stack {
    grid-column: 1;
  }

  .dashboard-stat-strip {
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 16px;
  }

  .responsive-workbench-layout .dashboard-core-stats {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .skill-version-summary {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .test-verification-page .metric-grid,
  .release-management-page .metric-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .test-workbench-grid,
  .release-layout {
    grid-template-columns: 1fr;
  }

  .test-grid.enhanced {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .release-stage-strip {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .release-path-strip,
  .trace-fact-grid {
    grid-template-columns: 1fr;
  }

  .trace-explain-strip {
    align-items: flex-start;
    flex-direction: column;
  }

  .version-bottom-grid,
  .version-impact-grid {
    grid-template-columns: 1fr;
  }

  .page-header,
  .filter-bar {
    align-items: stretch;
    flex-direction: column;
  }

  .experience-filter .toolbar {
    justify-content: stretch;
  }

  .experience-filter .search,
  .experience-filter .btn.primary {
    width: 100%;
  }

  .flow-strip,
  .journey {
    grid-auto-flow: column;
    grid-auto-columns: minmax(160px, 1fr);
    grid-template-columns: none;
    overflow-x: auto;
  }
}

@media (max-width: 720px) {
  html,
  body,
  #app {
    height: auto;
    min-height: 100%;
  }

  body {
    overflow-x: hidden;
    overflow-y: auto;
  }

  .page-title-row {
    flex-direction: column;
    align-items: flex-start;
    gap: 5px;
  }

  .page-context-row {
    width: 100%;
    align-items: flex-start;
    flex-direction: column;
    gap: 7px;
  }

  .page-breadcrumb {
    width: 100%;
    flex-wrap: wrap;
    white-space: normal;
  }

  .page-header h2 {
    white-space: normal;
  }

  .page-header p::before {
    display: none;
  }

  .app-shell {
    grid-template-columns: 1fr;
    height: auto;
    min-height: 100vh;
    overflow: visible;
  }

  .sidebar {
    position: static;
    width: 100%;
    height: auto;
    flex-direction: row;
    overflow-x: auto;
    justify-content: flex-start;
  }

  .side-nav {
    grid-auto-flow: column;
    grid-auto-columns: minmax(96px, max-content);
    display: grid;
  }

  .side-spacer,
  .agent-manage,
  .user-card {
    display: none;
  }

  .main {
    height: auto;
    overflow: visible;
    padding: 18px 14px 24px;
  }

  .release-check-modal-grid {
    grid-template-columns: 1fr;
  }

  .page.framed {
    padding: 14px;
  }

  .metric-grid,
  .metric-grid.cols-5,
  .metric-grid.compact,
  .governance-module-grid,
  .governance-workbench-grid,
  .governance-overview-grid,
  .governance-quick-grid,
  .governance-form-grid,
  .test-verification-page .metric-grid,
  .release-management-page .metric-grid,
  .test-grid.enhanced,
  .release-stage-strip,
  .skill-version-summary,
  .version-bottom-grid,
  .version-impact-grid,
  .side-rail,
  .experience-layout > .side-rail {
    grid-template-columns: 1fr;
  }

  .governance-focus-row,
  .governance-focus-row.audit {
    grid-template-columns: 1fr;
  }

  .governance-row-footer {
    align-items: stretch;
    flex-direction: column;
  }

  .governance-task-action {
    justify-content: space-between;
  }

  .test-case-toolbar {
    align-items: stretch;
    flex-direction: column;
  }

  .segmented-control {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    width: 100%;
  }

  .asset-detail-page .metric-grid.no-icons {
    grid-template-columns: 1fr;
  }

  .experience-page .metric {
    height: var(--metric-card-height);
    padding: 12px 18px;
  }

  .evaluation-command-strip > div:first-child,
  .evaluation-run-summary {
    padding: 14px;
  }

  .evaluation-metric {
    min-height: 64px;
    padding: 11px 14px;
  }

  .evaluation-filter-row {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .evaluation-filter-row button {
    justify-content: center;
  }

  .experience-pagination,
  .experience-pagination .pages {
    align-items: flex-start;
    flex-direction: column;
  }

  .workspace-card {
    padding: 16px;
  }

  .dashboard-stat-strip {
    grid-template-columns: 1fr;
    padding: 0;
  }

  .responsive-workbench-layout .dashboard-core-stats {
    grid-template-columns: 1fr;
  }

  .dashboard-stat {
    height: var(--metric-card-height);
    padding: 10px 16px;
  }

  .metric-divider {
    display: none;
  }

  .dashboard-mini-item {
    min-height: 70px;
  }

  .data-table {
    min-width: 760px;
  }

  .table-card {
    overflow-x: auto;
  }
}

@media (max-width: 1280px) {
  .agent-builder-layout {
    grid-template-columns: minmax(0, 1fr) clamp(250px, 24vw, 320px);
  }

  .agent-builder-layout.canvas-layout {
    grid-template-columns: 1fr;
  }

  .agent-builder-left-rail {
    display: none;
  }

  .agent-builder-work-card {
    order: 1;
  }

  .agent-builder-right-rail {
    order: 2;
    grid-template-columns: 1fr;
  }

  .agent-builder-right-rail {
    position: static;
  }

  .agent-builder-layout.canvas-layout .agent-builder-right-rail {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .agent-builder-page .agent-builder-flow {
    min-width: 0;
    grid-template-columns:
      max-content minmax(16px, 1fr)
      max-content minmax(16px, 1fr)
      max-content minmax(16px, 1fr)
      max-content minmax(16px, 1fr)
      max-content minmax(16px, 1fr)
      max-content minmax(16px, 1fr)
      max-content;
  }

  .agent-inline-checklist {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}

@media (max-width: 980px) {
  .agent-builder-layout,
  .agent-builder-layout.canvas-layout {
    grid-template-columns: 1fr;
  }

  .agent-step-brief,
  .agent-workspace-brief,
  .agent-inline-checklist,
  .agent-segment-grid,
  .agent-card-grid,
  .agent-tool-grid,
  .agent-tool-workbench,
  .skill-professional-tool-workbench,
  .agent-node-form-layout,
  .agent-governance-split,
  .agent-approval-grid,
  .agent-release-summary,
  .agent-builder-left-rail,
  .agent-builder-right-rail {
    grid-template-columns: 1fr;
  }

  .agent-flow-stats,
  .agent-tool-summary,
  .agent-governance-summary,
  .agent-tool-gate-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .agent-canvas-layout {
    grid-template-columns: minmax(130px, 150px) minmax(820px, 1fr) minmax(220px, 250px);
  }

  .agent-builder-work-card,
  .agent-builder-right-rail {
    width: 100%;
  }

  .agent-workspace-title h3 {
    font-size: 16px;
  }

  .tool-governance-grid,
  .tool-mapping-layout,
  .feedback-ops-grid {
    grid-template-columns: 1fr;
  }

  .taxonomy-card-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .tool-relation-card {
    overflow-x: auto;
  }
}

@media (max-width: 720px) {
  .agent-builder-flow-card {
    padding: 14px 16px;
  }

  .agent-flow-node .step-num {
    flex-basis: 30px;
    width: 30px;
    height: 30px;
    font-size: 12px;
  }

  .agent-flow-node .step-title {
    font-size: 12px;
  }

  .agent-canvas-layout {
    padding: 12px;
  }

  .agent-flow-stats,
  .agent-tool-summary,
  .agent-governance-summary,
  .agent-tool-gate-grid,
  .skill-test-run-strip,
  .agent-tool-meta-grid,
  .agent-tool-detail .entry-edit-grid,
  .agent-node-form-grid,
  .agent-node-directory-actions {
    grid-template-columns: 1fr;
  }

  .skill-test-run-strip-meta {
    justify-content: flex-start;
  }

  .skill-test-result-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .agent-builder-actions {
    bottom: 10px;
    flex-direction: column;
    align-items: stretch;
  }

  .agent-builder-actions .btn {
    width: 100%;
  }

  .taxonomy-card-grid,
  .taxonomy-card-grid.compact {
    grid-template-columns: 1fr;
  }

  .tool-domain-filter {
    margin-inline: 0;
    max-width: 100%;
  }

  .domain-filter-chip {
    flex: 0 0 auto;
  }
}

/* ---------- Responsive system overrides ---------- */

@media (min-width: 721px) {
  .app-shell,
  .sidebar,
  .main {
    height: 100dvh;
  }
}

@media (max-width: 1440px) and (min-width: 981px) {
  .responsive-workbench-layout {
    grid-template-columns: minmax(0, 1fr);
  }

  .responsive-workbench-layout .workbench-main-stack,
  .responsive-workbench-layout .workbench-right-stack {
    grid-column: 1;
  }

  .responsive-workbench-layout .workbench-right-stack {
    grid-template-columns: repeat(3, minmax(0, 1fr));
  }

  .responsive-workbench-layout .dashboard-overview {
    grid-column: auto;
  }

  .responsive-workbench-layout .workbench-project-table .search {
    width: min(430px, 44vw);
  }
}

@media (max-width: 1180px) and (min-width: 981px) {
  .responsive-workbench-layout .workbench-right-stack {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .responsive-workbench-layout .dashboard-overview {
    grid-column: 1 / -1;
  }
}

@media (max-width: 980px) {
  .main {
    padding-inline: clamp(14px, 3vw, 24px);
  }

  .responsive-workbench-layout .workbench-project-table .table-head,
  .table-card:has(.data-table) .table-head {
    gap: 12px;
  }

  .workbench-table-tools,
  .table-head-tools,
  .skill-table-tools {
    width: 100%;
    justify-content: stretch;
  }

  .workbench-table-tools .search,
  .workbench-table-tools .btn,
  .table-head-tools .search,
  .table-head-tools .btn {
    flex: 1 1 220px;
  }

  .responsive-workbench-layout .workbench-project-table .search,
  .table-head-tools .search {
    width: 100%;
  }

  .responsive-workbench-layout .workbench-project-table .btn.primary,
  .table-head-tools .btn.primary {
    justify-content: center;
  }
}

@media (max-width: 720px) {
  html,
  body,
  #app {
    min-width: 0;
  }

  .app-shell.is-collapsed {
    --sidebar: 100%;
  }

  .app-shell.is-collapsed .sidebar {
    align-items: stretch;
    padding: 10px 10px 12px;
  }

  .sidebar {
    gap: 6px;
    padding: 10px 10px 12px;
  }

  .brand {
    flex: 0 0 auto;
    min-height: 38px;
    padding-inline: 0;
  }

  .logo {
    width: 24px;
    height: 24px;
  }

  .sidebar-toggle {
    display: none;
  }

  .side-nav,
  .app-shell.is-collapsed .side-nav {
    width: auto;
    min-width: 0;
    gap: 4px;
    grid-auto-columns: minmax(74px, max-content);
    justify-items: stretch;
  }

  .nav-group {
    min-width: 0;
  }

  .nav-btn,
  .nav-group-toggle,
  .app-shell.is-collapsed .nav-btn {
    width: auto;
    height: auto;
    min-height: 36px;
    border-radius: 12px;
    padding: 0 7px;
    white-space: nowrap;
  }

  .app-shell.is-collapsed .nav-main span:not(.nav-icon):not(.nav-img-icon) {
    display: inline;
  }

  .nav-btn.active,
  .nav-group-toggle.active {
    box-shadow: none;
  }

  .nav-img-icon,
  .nav-btn .nav-icon {
    width: 14px;
    height: 14px;
    flex-basis: 14px;
  }

  .nav-main {
    gap: 5px;
  }

  .nav-main span:last-child {
    font-size: 12px;
  }

  .nav-subitems,
  .nav-flyout,
  .nav-tooltip {
    display: none;
  }

  .main {
    padding: 14px 10px 22px;
  }

  .page-header {
    gap: 10px;
    margin-bottom: 12px;
  }

  .header-actions {
    width: 100%;
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(120px, 1fr));
    gap: 8px;
  }

  .header-actions .btn {
    justify-content: center;
    min-width: 0;
  }

  .dashboard-stat {
    min-height: 64px;
  }

  .responsive-workbench-layout .workbench-project-table.table-card:has(.data-table),
  .skill-page .table-card:has(.skill-management-table),
  .agent-page .table-card:has(.agent-management-table) {
    padding: 14px;
    overflow: visible;
  }

  .responsive-workbench-layout .workbench-project-table .table-head,
  .skill-page .table-card:has(.skill-management-table) .table-head,
  .agent-page .table-card:has(.agent-management-table) .table-head {
    padding-bottom: 12px;
  }

  .responsive-workbench-layout .workbench-project-table .data-table,
  .skill-page .skill-management-table,
  .agent-page .agent-management-table {
    min-width: 0;
    border: 0;
    background: transparent;
  }

  .responsive-workbench-layout .workbench-project-table .data-table thead,
  .skill-page .skill-management-table thead,
  .agent-page .agent-management-table thead {
    display: none;
  }

  .responsive-workbench-layout .workbench-project-table .data-table,
  .responsive-workbench-layout .workbench-project-table .data-table tbody,
  .responsive-workbench-layout .workbench-project-table .data-table tr,
  .responsive-workbench-layout .workbench-project-table .data-table td,
  .skill-page .skill-management-table,
  .skill-page .skill-management-table tbody,
  .skill-page .skill-management-table tr,
  .skill-page .skill-management-table td,
  .agent-page .agent-management-table,
  .agent-page .agent-management-table tbody,
  .agent-page .agent-management-table tr,
  .agent-page .agent-management-table td {
    display: block;
    width: 100%;
  }

  .responsive-workbench-layout .workbench-project-table .data-table tbody,
  .skill-page .skill-management-table tbody,
  .agent-page .agent-management-table tbody {
    display: grid;
    gap: 10px;
  }

  .responsive-workbench-layout .workbench-project-table .data-table tr,
  .skill-page .skill-management-table tr,
  .agent-page .agent-management-table tr {
    display: grid;
    gap: 7px;
    border: 1px solid var(--table-border);
    border-radius: 12px;
    background: #fff;
    padding: 12px;
    overflow: hidden;
  }

  .responsive-workbench-layout .workbench-project-table .data-table td,
  .skill-page .skill-management-table td,
  .agent-page .agent-management-table td {
    display: grid;
    grid-template-columns: 76px minmax(0, 1fr);
    align-items: start;
    gap: 10px;
    border: 0;
    padding: 0;
    min-height: 0;
    text-align: left !important;
    white-space: normal;
  }

  .responsive-workbench-layout .workbench-project-table .data-table td::before,
  .skill-page .skill-management-table td::before,
  .agent-page .agent-management-table td::before {
    color: var(--muted);
    font-size: 12px;
    line-height: 1.35;
    font-weight: 760;
  }

  .responsive-workbench-layout .workbench-project-table .dashboard-table td:nth-child(1)::before { content: "项目"; }
  .responsive-workbench-layout .workbench-project-table .dashboard-table td:nth-child(2)::before { content: "阶段"; }
  .responsive-workbench-layout .workbench-project-table .dashboard-table td:nth-child(3)::before { content: "负责人"; }
  .responsive-workbench-layout .workbench-project-table .dashboard-table td:nth-child(4)::before { content: "更新"; }
  .responsive-workbench-layout .workbench-project-table .dashboard-table td:nth-child(5)::before { content: "操作"; }

  .skill-page .skill-management-table td:nth-child(1)::before { content: "Skill"; }
  .skill-page .skill-management-table td:nth-child(2)::before { content: "来源"; }
  .skill-page .skill-management-table td:nth-child(3)::before { content: "状态"; }
  .skill-page .skill-management-table td:nth-child(4)::before { content: "输入输出"; }
  .skill-page .skill-management-table td:nth-child(5)::before { content: "更新"; }
  .skill-page .skill-management-table td:nth-child(6)::before { content: "操作"; }

  .agent-page .agent-management-table td:nth-child(1)::before { content: "Agent"; }
  .agent-page .agent-management-table td:nth-child(2)::before { content: "依赖"; }
  .agent-page .agent-management-table td:nth-child(3)::before { content: "状态"; }
  .agent-page .agent-management-table td:nth-child(4)::before { content: "运行"; }
  .agent-page .agent-management-table td:nth-child(5)::before { content: "评分"; }
  .agent-page .agent-management-table td:nth-child(6)::before { content: "操作"; }

  .workbench-project-name b,
  .workbench-project-name span,
  .skill-management-table .skill-name-cell b,
  .skill-management-table .skill-name-cell small,
  .agent-name-cell small,
  .agent-name-text,
  .agent-table .cell-truncate {
    max-width: 100%;
    white-space: normal;
  }

  .row-actions,
  .skill-row-actions,
  .agent-row-actions {
    display: flex;
    flex-wrap: wrap;
    justify-content: flex-start;
    gap: 8px;
  }

  .row-actions .btn,
  .skill-row-actions .btn,
  .agent-row-actions .btn {
    min-width: 74px;
  }

  .workbench-table-pagination,
  .pagination,
  .experience-pagination {
    align-items: stretch;
    flex-direction: column;
    gap: 10px;
    padding: 12px 0 0;
  }

  .pages {
    justify-content: flex-start;
    overflow-x: auto;
    padding-bottom: 2px;
  }

  .agent-builder-flow-card {
    position: sticky;
    top: 0;
    z-index: 12;
    margin-inline: -10px;
    border-left: 0;
    border-right: 0;
    border-radius: 0;
    padding: 10px;
  }

  .agent-builder-page .agent-builder-flow {
    min-width: max-content;
    column-gap: 6px;
  }

  .agent-flow-node {
    gap: 6px;
  }

  .agent-flow-node .step-num {
    flex-basis: 28px;
    width: 28px;
    height: 28px;
  }

  .agent-flow-node .step-title {
    max-width: 68px;
    overflow: hidden;
    text-overflow: ellipsis;
  }
}

@media (max-width: 720px) {
  body,
  .app-shell,
  .page,
  .main,
  .workspace-card,
  .table-card {
    max-width: 100vw;
  }

  .main {
    overflow-x: hidden;
  }

  .sidebar,
  .app-shell.is-collapsed .sidebar {
    max-width: 100vw;
    overflow-x: auto;
    overflow-y: hidden;
    scrollbar-width: none;
  }

  .sidebar::-webkit-scrollbar {
    display: none;
  }

  .side-nav,
  .app-shell.is-collapsed .side-nav {
    flex: 0 0 max-content;
  }

  .workbench-table-tools,
  .table-head-tools,
  .skill-table-tools {
    display: grid;
    grid-template-columns: minmax(0, 1fr);
    flex-wrap: initial;
    gap: 8px;
  }

  .workbench-table-tools .search,
  .workbench-table-tools .btn,
  .table-head-tools .search,
  .table-head-tools .btn,
  .skill-table-tools .search,
  .skill-table-tools .btn {
    width: 100%;
    min-width: 0;
    max-width: 100%;
  }

  .responsive-workbench-layout .workbench-project-table .data-table td > *,
  .skill-page .skill-management-table td > *,
  .agent-page .agent-management-table td > * {
    min-width: 0;
    max-width: 100%;
  }

  .responsive-workbench-layout .workbench-project-table .data-table td > .status,
  .skill-page .skill-management-table td > .status,
  .agent-page .agent-management-table td > .status,
  .responsive-workbench-layout .workbench-project-table .data-table td > .tag,
  .skill-page .skill-management-table td > .tag,
  .agent-page .agent-management-table td > .tag {
    width: fit-content;
    justify-self: start;
  }

  .responsive-workbench-layout .workbench-project-table .data-table .btn,
  .skill-page .skill-management-table .btn,
  .agent-page .agent-management-table .btn {
    width: auto;
    max-width: 100%;
    justify-self: start;
  }

  .dashboard-stat > div,
  .dashboard-stat b,
  .dashboard-stat strong,
  .dashboard-stat span {
    min-width: 0;
  }

  .dashboard-stat > div {
    width: 100%;
    height: 100%;
    grid-template-columns: minmax(0, 1fr);
    grid-template-rows: auto auto auto;
    row-gap: 3px;
    align-content: center;
  }

  .dashboard-stat strong,
  .dashboard-stat span:not(.metric-icon) {
    grid-column: 1;
    justify-self: start;
  }

  .dashboard-stat strong {
    grid-row: 2;
    font-size: 24px;
  }

  .dashboard-stat span:not(.metric-icon) {
    grid-row: 3;
    margin-top: 0;
  }
}

@media (max-width: 720px) {
  .agent-page .table-card:has(.agent-management-table) {
    overflow: hidden;
  }

  .agent-page .agent-table-scroll {
    overflow-x: auto;
    overflow-y: hidden;
  }

  .agent-page .agent-management-table {
    display: table;
    min-width: 1080px;
    border: 1px solid var(--table-border);
    background: #fff;
  }

  .agent-page .agent-management-table thead {
    display: table-header-group;
  }

  .agent-page .agent-management-table tbody {
    display: table-row-group;
  }

  .agent-page .agent-management-table tr {
    display: table-row;
    border: 0;
    border-radius: 0;
    background: transparent;
    padding: 0;
    overflow: visible;
  }

  .agent-page .agent-management-table th,
  .agent-page .agent-management-table td {
    display: table-cell;
    width: auto;
    border-bottom: 1px solid var(--table-border);
    padding: 7px 14px;
    white-space: nowrap;
  }

  .agent-page .agent-management-table td::before {
    content: none;
  }

  .agent-page .agent-management-table .cell-truncate,
  .agent-page .agent-name-text {
    white-space: nowrap;
  }

  .agent-page .agent-row-actions {
    justify-content: flex-start;
    flex-wrap: nowrap;
  }
}

.dashboard-table th:last-child,
.responsive-workbench-layout .workbench-project-table .dashboard-table th:last-child,
.skill-management-table th:nth-child(6),
.agent-management-table th:nth-child(6),
.agent-table th:nth-child(6),
.tools-management-table th:nth-child(8),
.feedback-management-table th:nth-child(7),
.governance-list-table th:last-child,
.tool-mapping-table th:last-child,
.tool-relation-table th:last-child,
.governance-todo-table th:last-child,
.governance-audit-table th:last-child,
.governance-permission-table th:last-child,
.governance-trace-table th:last-child,
.run-records-table th:nth-child(7),
.rule-library-table th:nth-child(7),
.audit-log-table th:nth-child(6),
.object-test-table th:last-child,
.experience-table th:last-child,
.release-queue-table th:last-child,
.evaluation-results-table th:last-child {
  text-align: left;
}

.responsive-workbench-layout .workbench-project-table .dashboard-table td:last-child {
  text-align: left;
}

.responsive-workbench-layout .workbench-project-table .dashboard-table td:last-child .btn {
  margin-left: 0;
  margin-right: auto;
}
