@font-face {
  font-family: geistSans;
  src: url("../media/Geist_Variable-s.p.cd9565cf.woff2") format("woff2");
  font-display: swap;
  font-weight: 100 900;
}

@font-face {
  font-family: geistSans Fallback;
  src: local(Arial);
  ascent-override: 94.56%;
  descent-override: 27.76%;
  line-gap-override: 0.0%;
  size-adjust: 106.28%;
}

.geistsans_c55036d9-module__e-VL-a__className {
  font-family: geistSans, geistSans Fallback;
}

.geistsans_c55036d9-module__e-VL-a__variable {
  --font-geist-sans: "geistSans","geistSans Fallback";
}

@font-face {
  font-family: geistMono;
  src: url("../media/GeistMono_Variable-s.p.f8e42271.woff2") format("woff2");
  font-display: swap;
  font-weight: 100 900;
}

@font-face {
  font-family: geistMono Fallback;
  src: local(Arial);
  ascent-override: 76.43%;
  descent-override: 22.43%;
  line-gap-override: 0.0%;
  size-adjust: 131.49%;
}

.geistmono_eabc6546-module__nXXjIG__className {
  font-family: geistMono, geistMono Fallback;
}

.geistmono_eabc6546-module__nXXjIG__variable {
  --font-geist-mono: "geistMono","geistMono Fallback";
}

.cs-console {
  --bg-canvas: #fbfcfe;
  --bg-panel: #fff;
  --bg-sunken: #e6eaf1;
  --bg-rail: #eef1f6;
  --bg-overlay: rgba(15, 19, 28, .42);
  --bg-hover: #f0f3f8;
  --bg-active: #e4e8ef;
  --bg-code: #0f141c;
  --bg-code-soft: #f1f3f7;
  --border: #dee2ea;
  --border-strong: #c8cfdb;
  --border-soft: #e6e9ef;
  --divider: #e6e9ef;
  --text-primary: #0f141c;
  --text-secondary: #4b5566;
  --text-tertiary: #7b8597;
  --text-faint: #a3abba;
  --text-inverse: #f6f7f9;
  --text-link: #1f6feb;
  --text-on-code: #c9d2e1;
  --accent: #1f6feb;
  --accent-soft: #dde9fd;
  --accent-strong: #1857c4;
  --status-success: #1f8a52;
  --status-success-bg: #def0e3;
  --status-pending: #a86700;
  --status-pending-bg: #fbebca;
  --status-failed: #b91c1c;
  --status-failed-bg: #fadcdc;
  --status-info: #1857c4;
  --status-info-bg: #dde9fd;
  --status-muted: #5b6573;
  --status-muted-bg: #e6e9ef;
  --status-warn: #b25e09;
  --status-warn-bg: #fbe2c3;
  --status-locked: #4a5566;
  --status-locked-bg: #e0e3e9;
  --r-xs: 3px;
  --r-sm: 4px;
  --r-md: 6px;
  --r-lg: 8px;
  --shadow-1: 0 1px 0 rgba(15, 19, 28, .03);
  --shadow-2: 0 1px 2px rgba(15, 19, 28, .05),0 0 0 1px rgba(15, 19, 28, .02);
  --shadow-drawer: -8px 0 24px rgba(15, 19, 28, .06);
  --shadow-modal: 0 24px 48px rgba(15, 19, 28, .18);
  --cs-font-sans: var(--font-geist-sans),"IBM Plex Sans SC","PingFang SC","Microsoft YaHei",-apple-system,sans-serif;
  --cs-font-mono: var(--font-geist-mono),"JetBrains Mono","IBM Plex Mono",ui-monospace,Menlo,Consolas,monospace;
  --fs-10: 10px;
  --fs-11: 11px;
  --fs-12: 12px;
  --fs-13: 13px;
  --fs-14: 14px;
  --fs-15: 15px;
  --fs-16: 16px;
  --fs-18: 18px;
  --fs-22: 22px;
  --fs-26: 26px;
  --fs-28: 28px;
  --fs-34: 34px;
  --sidebar-w: 232px;
  --gap-w: 14px;
  --topbar-h: 48px;
  --row-h: 38px;
  font-family: var(--cs-font-sans);
  font-size: var(--fs-13);
  color: var(--text-primary);
  -webkit-font-smoothing: antialiased;
  font-feature-settings: "cv11","ss01","ss03";
  line-height: 1.45;
}

.cs-console, .cs-console *, .cs-console :before, .cs-console :after {
  box-sizing: border-box;
}

.cs-console button, .cs-console input, .cs-console select, .cs-console textarea {
  font: inherit;
  color: inherit;
}

.cs-console button {
  cursor: pointer;
}

.cs-console a {
  color: var(--text-link);
  text-decoration: none;
}

.cs-console a:hover {
  text-decoration: underline;
}

.cs-console .btn {
  border-radius: var(--r-sm);
  background: var(--bg-sunken);
  color: var(--text-primary);
  font-size: var(--fs-12);
  white-space: nowrap;
  border: 0;
  align-items: center;
  gap: 5px;
  height: 26px;
  padding: 3px 9px;
  font-weight: 500;
  transition: background-color 80ms, color 80ms;
  display: inline-flex;
}

.cs-console .btn:hover, .cs-console .btn:active {
  background: var(--bg-active);
}

.cs-console .btn:disabled {
  color: var(--text-faint);
  background: var(--bg-sunken);
  cursor: not-allowed;
  opacity: .7;
}

.cs-console .btn--primary {
  color: #fff;
  background: #1a1f29;
}

.cs-console .btn--primary:hover {
  background: #2a2f3a;
}

.cs-console .btn--primary:disabled {
  background: var(--bg-sunken);
  color: var(--text-faint);
}

.cs-console .btn--accent {
  background: var(--accent);
  color: #fff;
}

.cs-console .btn--accent:hover {
  background: var(--accent-strong);
}

.cs-console .btn--danger {
  background: var(--status-failed);
  color: #fff;
}

.cs-console .btn--danger:hover {
  background: #a01818;
}

.cs-console .btn--ghost {
  color: var(--text-secondary);
  background: none;
}

.cs-console .btn--ghost:hover {
  background: var(--bg-hover);
  color: var(--text-primary);
}

.cs-console .btn--sm {
  height: 22px;
  font-size: var(--fs-12);
  padding: 1px 7px;
}

.cs-console .btn--icon {
  justify-content: center;
  width: 26px;
  padding: 3px;
}

.cs-console .btn-group {
  background: var(--bg-active);
  border-radius: var(--r-sm);
  gap: 1px;
  padding: 0;
  display: inline-flex;
}

.cs-console .btn-group .btn {
  border-radius: 0;
}

.cs-console .btn-group .btn:first-child {
  border-top-left-radius: var(--r-sm);
  border-bottom-left-radius: var(--r-sm);
}

.cs-console .btn-group .btn:last-child {
  border-top-right-radius: var(--r-sm);
  border-bottom-right-radius: var(--r-sm);
}

.cs-console .kbd {
  font-family: var(--cs-font-mono);
  color: var(--text-tertiary);
  background: var(--bg-sunken);
  border-radius: 3px;
  padding: 0 5px;
  font-size: 10px;
  line-height: 16px;
  display: inline-block;
}

.cs-console .badge {
  white-space: nowrap;
  letter-spacing: .01em;
  border-radius: 3px;
  align-items: center;
  gap: 5px;
  padding: 2px 7px;
  font-size: 11px;
  font-weight: 500;
  line-height: 14px;
  display: inline-flex;
}

.cs-console .badge__dot {
  background: currentColor;
  border-radius: 50%;
  width: 6px;
  height: 6px;
}

.cs-console .badge--success {
  color: var(--status-success);
  background: var(--status-success-bg);
}

.cs-console .badge--pending {
  color: var(--status-pending);
  background: var(--status-pending-bg);
}

.cs-console .badge--failed {
  color: var(--status-failed);
  background: var(--status-failed-bg);
}

.cs-console .badge--info {
  color: var(--status-info);
  background: var(--status-info-bg);
}

.cs-console .badge--muted {
  color: var(--status-muted);
  background: var(--status-muted-bg);
}

.cs-console .badge--warn {
  color: var(--status-warn);
  background: var(--status-warn-bg);
}

.cs-console .badge--locked {
  color: var(--status-locked);
  background: var(--status-locked-bg);
}

.cs-console .badge--plain {
  color: var(--text-secondary);
  background: var(--bg-sunken);
}

.cs-console .badge--lg {
  font-size: var(--fs-12);
  padding: 3px 9px;
}

.cs-console .risk-bar {
  align-items: center;
  gap: 2px;
  display: inline-flex;
}

.cs-console .risk-bar i {
  background: var(--bg-sunken);
  border-radius: 1px;
  width: 4px;
  height: 10px;
}

.cs-console .risk-bar i.on--low {
  background: var(--status-success);
}

.cs-console .risk-bar i.on--med {
  background: var(--status-warn);
}

.cs-console .risk-bar i.on--high {
  background: var(--status-failed);
}

.cs-console .hash {
  font-family: var(--cs-font-mono);
  color: var(--text-secondary);
  background: var(--bg-sunken);
  border-radius: 3px;
  align-items: center;
  gap: 4px;
  padding: 2px 7px;
  font-size: 11px;
  display: inline-flex;
}

.cs-console .hash button {
  color: var(--text-faint);
  background: none;
  border: none;
  place-items: center;
  padding: 0;
  display: inline-grid;
}

.cs-console .hash button:hover {
  color: var(--text-primary);
}

.cs-console .section-title {
  letter-spacing: .08em;
  text-transform: uppercase;
  color: var(--text-tertiary);
  margin: 16px 0 8px;
  font-size: 11px;
  font-weight: 600;
}

.cs-console .kv {
  font-size: var(--fs-12);
  grid-template-columns: 130px 1fr;
  gap: 6px 12px;
  display: grid;
}

.cs-console .kv__k {
  color: var(--text-tertiary);
  padding-top: 1px;
}

.cs-console .kv__v {
  color: var(--text-primary);
}

.cs-console .kv__v.mono {
  font-family: var(--cs-font-mono);
  word-break: break-all;
  font-size: 11px;
}

.cs-console .kv--tight {
  row-gap: 4px;
}

.cs-console .kv--wide {
  grid-template-columns: 160px 1fr;
}

.cs-console .banner {
  border-radius: var(--r-md);
  font-size: var(--fs-12);
  align-items: flex-start;
  gap: 10px;
  padding: 10px 12px;
  line-height: 1.5;
  display: flex;
}

.cs-console .banner--info {
  background: var(--status-info-bg);
  color: var(--status-info);
}

.cs-console .banner--warn {
  background: var(--status-warn-bg);
  color: var(--status-warn);
}

.cs-console .banner--danger {
  background: var(--status-failed-bg);
  color: var(--status-failed);
}

.cs-console .banner--locked {
  background: var(--status-locked-bg);
  color: var(--status-locked);
}

.cs-console .banner--success {
  background: var(--status-success-bg);
  color: var(--status-success);
}

.cs-console .banner__icon {
  flex-shrink: 0;
  margin-top: 1px;
}

.cs-console .banner__body {
  flex: 1;
  min-width: 0;
}

.cs-console .banner__title {
  color: inherit;
  margin-bottom: 2px;
  font-weight: 600;
}

.cs-console .banner__text {
  color: var(--text-secondary);
}

.cs-console .banner--danger .banner__text {
  color: #6b1717;
}

.cs-console .banner--warn .banner__text {
  color: #6b3e07;
}

.cs-console .banner--info .banner__text {
  color: #1a3d8a;
}

.cs-console .banner--locked .banner__text {
  color: var(--text-secondary);
}

.cs-console .banner__actions {
  gap: 6px;
  margin-top: 8px;
  display: flex;
}

.cs-console .empty {
  color: var(--text-tertiary);
  text-align: center;
  flex-direction: column;
  justify-content: center;
  align-items: center;
  gap: 8px;
  padding: 40px 20px;
  display: flex;
}

.cs-console .empty__icon {
  background: var(--bg-sunken);
  width: 36px;
  height: 36px;
  color: var(--text-faint);
  border-radius: 50%;
  place-items: center;
  margin-bottom: 2px;
  display: grid;
}

.cs-console .empty__title {
  font-size: var(--fs-13);
  color: var(--text-secondary);
  font-weight: 500;
}

.cs-console .empty__text {
  font-size: var(--fs-12);
  max-width: 320px;
}

.cs-console .tabs {
  background: none;
  gap: 4px;
  padding: 4px 20px 0;
  display: flex;
}

.cs-console .tabs__tab {
  font-size: var(--fs-13);
  color: var(--text-secondary);
  cursor: pointer;
  background: none;
  border: none;
  border-radius: 5px 5px 0 0;
  align-items: center;
  gap: 6px;
  padding: 8px 12px 9px;
  display: inline-flex;
  position: relative;
}

.cs-console .tabs__tab:hover {
  color: var(--text-primary);
  background: var(--bg-hover);
}

.cs-console .tabs__tab--active {
  color: var(--text-primary);
  background: none;
  font-weight: 500;
}

.cs-console .tabs__tab--active:after {
  content: "";
  background: var(--accent);
  border-radius: 2px;
  height: 2px;
  position: absolute;
  bottom: 0;
  left: 8px;
  right: 8px;
}

.cs-console .tabs__count {
  font-family: var(--cs-font-mono);
  background: var(--bg-sunken);
  color: var(--text-tertiary);
  border-radius: 3px;
  padding: 1px 5px;
  font-size: 10px;
}

.cs-console .tabs__tab--active .tabs__count {
  background: var(--accent-soft);
  color: var(--accent);
}

.cs-console .modal-overlay {
  background: var(--bg-overlay);
  z-index: 200;
  -webkit-backdrop-filter: blur(2px);
  backdrop-filter: blur(2px);
  place-items: center;
  animation: .12s cs-fade-in;
  display: grid;
  position: fixed;
  top: 0;
  bottom: 0;
  left: 0;
  right: 0;
}

.cs-console .modal {
  background: var(--bg-panel);
  border-radius: var(--r-lg);
  box-shadow: var(--shadow-modal);
  flex-direction: column;
  width: 540px;
  max-width: calc(100vw - 40px);
  max-height: calc(100vh - 80px);
  animation: .16s cubic-bezier(.2, .8, .2, 1) cs-rise;
  display: flex;
  overflow: hidden;
}

.cs-console .modal--wide {
  width: 680px;
}

.cs-console .modal__header {
  align-items: center;
  gap: 10px;
  padding: 14px 18px 10px;
  display: flex;
}

.cs-console .modal__title {
  font-size: var(--fs-15);
  flex: 1;
  font-weight: 600;
}

.cs-console .modal__close {
  color: var(--text-tertiary);
  border-radius: var(--r-sm);
  background: none;
  border: none;
  padding: 4px;
}

.cs-console .modal__close:hover {
  background: var(--bg-hover);
  color: var(--text-primary);
}

.cs-console .modal__body {
  padding: 4px 18px 16px;
  overflow: auto;
}

.cs-console .modal__footer {
  background: var(--bg-canvas);
  justify-content: space-between;
  align-items: center;
  gap: 8px;
  padding: 12px 18px;
  display: flex;
}

.cs-console .modal__footer-meta {
  color: var(--text-tertiary);
  font-size: 11px;
  font-family: var(--cs-font-mono);
}

.cs-console .modal__actions {
  gap: 6px;
  display: flex;
}

@keyframes cs-fade-in {
  0% {
    opacity: 0;
  }

  to {
    opacity: 1;
  }
}

@keyframes cs-rise {
  0% {
    opacity: 0;
    transform: translateY(8px);
  }

  to {
    opacity: 1;
    transform: translateY(0);
  }
}

.cs-console .row {
  align-items: center;
  gap: 8px;
  display: flex;
}

.cs-console .row--end {
  justify-content: flex-end;
}

.cs-console .row--between {
  justify-content: space-between;
}

.cs-console .col {
  flex-direction: column;
  display: flex;
}

.cs-console .gap-2 {
  gap: 2px;
}

.cs-console .gap-4 {
  gap: 4px;
}

.cs-console .gap-6 {
  gap: 6px;
}

.cs-console .gap-8 {
  gap: 8px;
}

.cs-console .gap-12 {
  gap: 12px;
}

.cs-console .gap-16 {
  gap: 16px;
}

.cs-console .muted {
  color: var(--text-tertiary);
}

.cs-console .faint {
  color: var(--text-faint);
}

.cs-console .mono {
  font-family: var(--cs-font-mono);
  font-size: 11px;
}

.cs-console .num {
  font-variant-numeric: tabular-nums;
}

.cs-console .truncate {
  text-overflow: ellipsis;
  white-space: nowrap;
  overflow: hidden;
}

.cs-console .flex {
  display: flex;
}

.cs-console .flex-1 {
  flex: 1;
  min-width: 0;
}

.cs-console .grid-2 {
  grid-template-columns: 1fr 1fr;
  gap: 12px;
  display: grid;
}

.cs-console .grid-3 {
  grid-template-columns: repeat(3, 1fr);
  gap: 12px;
  display: grid;
}

.cs-console .divider-h {
  height: 8px;
  margin: 8px 0;
}

.cs-console .cs-app {
  --sidebar-current-w: var(--sidebar-w);
  --sidebar-collapsed-w: 88px;
  grid-template-columns: var(--sidebar-current-w)1fr;
  grid-template-rows: var(--topbar-h)1fr;
  background: var(--bg-rail);
  height: 100vh;
  min-height: 100vh;
  display: grid;
}

.cs-console .cs-app--sidebar-collapsed {
  --sidebar-current-w: var(--sidebar-collapsed-w);
}

.cs-console .cs-app__main {
  min-width: 0;
  padding-left: var(--gap-w);
  background: var(--bg-panel);
  grid-area: 2 / 2 / -1 / -1;
  overflow: auto;
}

.cs-console .cs-topbar {
  height: var(--topbar-h);
  background: var(--bg-panel);
  grid-column: 1 / -1;
  align-items: center;
  gap: 10px;
  padding: 0 10px 0 0;
  display: flex;
  position: relative;
}

.cs-console .cs-topbar__brand {
  width: var(--sidebar-current-w);
  background: var(--bg-rail);
  height: 100%;
  font-weight: 600;
  font-size: var(--fs-13);
  letter-spacing: .01em;
  white-space: nowrap;
  flex-shrink: 0;
  align-items: center;
  gap: 8px;
  padding: 0 6px 0 14px;
  display: flex;
}

.cs-console .cs-topbar__brand-text {
  flex: 1;
  min-width: 0;
}

.cs-console .cs-topbar__nav-controls {
  flex-shrink: 0;
  align-items: center;
  gap: 1px;
  margin-left: auto;
  display: flex;
}

.cs-console .cs-topbar__brand-mark {
  color: #d6e2f4;
  width: 22px;
  height: 22px;
  font-family: var(--cs-font-mono);
  background: #fff;
  border-radius: 5px;
  place-items: center;
  font-size: 11px;
  font-weight: 600;
  display: grid;
  overflow: hidden;
  box-shadow: inset 0 0 0 1px rgba(15, 19, 28, .08);
}

.cs-console .cs-topbar__brand-logo {
  object-fit: cover;
  width: 100%;
  height: 100%;
  display: block;
}

.cs-console .cs-app--sidebar-collapsed .cs-topbar__brand {
  gap: 4px;
  padding: 0 8px;
}

.cs-console .cs-app--sidebar-collapsed .cs-topbar__brand-text, .cs-console .cs-app--sidebar-collapsed .cs-topbar__history-btn {
  display: none;
}

.cs-console .cs-topbar__tenant {
  border-radius: var(--r-sm);
  font-size: var(--fs-12);
  color: var(--text-secondary);
  white-space: nowrap;
  background: none;
  border: 0;
  flex-shrink: 0;
  align-items: center;
  gap: 6px;
  max-width: 220px;
  padding: 3px 8px 3px 4px;
  display: flex;
}

.cs-console .cs-topbar__tenant strong {
  color: var(--text-primary);
  min-width: 0;
  font-weight: 600;
}

.cs-console .cs-topbar__tenant-avatar {
  color: #fff;
  width: 18px;
  height: 18px;
  font-size: 9px;
  font-weight: 600;
  font-family: var(--cs-font-mono);
  background: #1f3d80;
  border-radius: 4px;
  flex-shrink: 0;
  place-items: center;
  display: grid;
}

.cs-console .cs-topbar__pagetitle {
  font-size: var(--fs-16);
  color: var(--text-primary);
  letter-spacing: -.005em;
  white-space: nowrap;
  flex-shrink: 0;
  align-items: center;
  gap: 8px;
  max-width: 360px;
  padding: 0 4px;
  font-weight: 600;
  display: flex;
  overflow: hidden;
}

.cs-console .cs-topbar__pagetitle-badge {
  align-items: center;
  display: inline-flex;
}

.cs-console .cs-topbar__spacer {
  flex: 1;
  min-width: 0;
}

.cs-console .cs-topbar__search {
  background: var(--bg-sunken);
  border-radius: var(--r-sm);
  width: 280px;
  height: 28px;
  color: var(--text-tertiary);
  font-size: var(--fs-12);
  cursor: text;
  white-space: nowrap;
  border: 0;
  flex-shrink: 0;
  align-items: center;
  gap: 8px;
  padding: 5px 10px;
  display: flex;
  overflow: hidden;
}

.cs-console .cs-topbar__search:hover {
  background: var(--bg-hover);
}

.cs-console .cs-topbar__search > .truncate {
  text-align: left;
  flex: 1;
  min-width: 0;
}

.cs-console .cs-topbar__search-kbd {
  font-family: var(--cs-font-mono);
  background: var(--bg-panel);
  color: var(--text-tertiary);
  border-radius: 3px;
  margin-left: auto;
  padding: 1px 5px;
  font-size: 10px;
}

.cs-console .cs-topbar__page-actions {
  flex-shrink: 0;
  align-items: center;
  gap: 6px;
  margin-left: 2px;
  padding-left: 8px;
  display: flex;
  position: relative;
}

.cs-console .cs-topbar__page-actions:before {
  content: "";
  background: var(--divider);
  width: 1px;
  height: 16px;
  position: absolute;
  top: 50%;
  left: 0;
  transform: translateY(-50%);
}

.cs-console .cs-topbar__actions {
  flex-shrink: 0;
  align-items: center;
  gap: 1px;
  margin-left: 2px;
  padding-left: 8px;
  display: flex;
  position: relative;
}

.cs-console .cs-topbar__actions:before {
  content: "";
  background: var(--divider);
  width: 1px;
  height: 16px;
  position: absolute;
  top: 50%;
  left: 0;
  transform: translateY(-50%);
}

.cs-console .cs-topbar__iconbtn {
  border-radius: var(--r-sm);
  width: 26px;
  height: 26px;
  color: var(--text-secondary);
  background: none;
  border: none;
  place-items: center;
  display: grid;
}

.cs-console .cs-topbar__iconbtn:hover {
  background: var(--bg-hover);
  color: var(--text-primary);
}

.cs-console .cs-sidebar {
  background: var(--bg-rail);
  flex-direction: column;
  grid-area: 2 / 1 / -1 / 2;
  gap: 2px;
  padding: 8px;
  display: flex;
  overflow-y: auto;
}

.cs-console .cs-sidebar__group {
  margin-top: 8px;
}

.cs-console .cs-sidebar__group:first-child {
  margin-top: 0;
}

.cs-console .cs-sidebar__group-label {
  letter-spacing: .1em;
  text-transform: uppercase;
  color: var(--text-faint);
  padding: 8px 10px 4px;
  font-size: 10px;
}

.cs-console .cs-sidebar__item {
  border-radius: var(--r-sm);
  font-size: var(--fs-13);
  color: var(--text-secondary);
  cursor: pointer;
  -webkit-user-select: none;
  user-select: none;
  align-items: center;
  gap: 9px;
  padding: 6px 10px;
  line-height: 1.3;
  text-decoration: none;
  display: flex;
}

.cs-console .cs-sidebar__item:hover {
  background: var(--bg-hover);
  color: var(--text-primary);
}

.cs-console .cs-sidebar__item--active {
  background: var(--bg-panel);
  color: var(--text-primary);
  box-shadow: var(--shadow-1);
  font-weight: 500;
}

.cs-console .cs-sidebar__item-icon {
  width: 16px;
  height: 16px;
  color: var(--text-tertiary);
  flex-shrink: 0;
  place-items: center;
  display: grid;
}

.cs-console .cs-sidebar__item--active .cs-sidebar__item-icon {
  color: var(--accent);
}

.cs-console .cs-sidebar__item-label {
  flex: 1;
  min-width: 0;
}

.cs-console .cs-sidebar__item-tag {
  font-family: var(--cs-font-mono);
  letter-spacing: .08em;
  color: var(--accent);
  background: var(--accent-soft);
  border-radius: 3px;
  margin-left: auto;
  padding: 1px 5px;
  font-size: 9px;
  font-weight: 600;
}

.cs-console .cs-app--sidebar-collapsed .cs-sidebar {
  padding: 8px 26px;
  overflow-x: hidden;
}

.cs-console .cs-app--sidebar-collapsed .cs-sidebar__group {
  margin-top: 10px;
}

.cs-console .cs-app--sidebar-collapsed .cs-sidebar__group:first-child {
  margin-top: 0;
}

.cs-console .cs-app--sidebar-collapsed .cs-sidebar__group-label, .cs-console .cs-app--sidebar-collapsed .cs-sidebar__item-label, .cs-console .cs-app--sidebar-collapsed .cs-sidebar__item-tag {
  display: none;
}

.cs-console .cs-app--sidebar-collapsed .cs-sidebar__item {
  justify-content: center;
  width: 36px;
  height: 32px;
  padding: 0;
}

.cs-console .cs-cmdk-input {
  box-shadow: none;
  font-size: var(--fs-14);
  color: var(--text-primary);
  font-family: var(--cs-font-sans);
  background: none;
  border: none;
  outline: none;
  flex: 1;
  padding: 4px 0;
}

.cs-console .cs-cmdk-input::placeholder {
  color: var(--text-faint);
}

.cs-console .cs-cmdk-item {
  cursor: pointer;
  border-left: 2px solid rgba(0, 0, 0, 0);
  align-items: center;
  gap: 10px;
  padding: 8px 14px;
  display: flex;
}

.cs-console .cs-cmdk-item--active {
  background: var(--bg-hover);
  border-left-color: var(--accent);
}

.cs-console .page {
  background: var(--bg-panel);
  flex-direction: column;
  flex: 1;
  min-height: 0;
  display: flex;
  overflow: hidden;
}

.cs-console .page__body {
  flex: 1;
  min-height: 0;
  overflow: auto;
}

.cs-console .page__body > .stats, .cs-console .page__body > .panel, .cs-console .page__body > .banner, .cs-console .page__body > .grid-2, .cs-console .page__body > .grid-3, .cs-console .page__body > .col {
  flex-shrink: 0;
}

.cs-console .page-pad {
  padding: 14px 20px;
}

.cs-console .panel {
  background: var(--bg-canvas);
  border-radius: var(--r-md);
  min-width: 0;
  overflow: hidden;
}

.cs-console .panel__header {
  font-size: var(--fs-13);
  justify-content: space-between;
  align-items: center;
  padding: 10px 14px 8px;
  font-weight: 500;
  display: flex;
}

.cs-console .panel__header-meta {
  font-size: var(--fs-12);
  color: var(--text-tertiary);
  font-weight: 400;
}

.cs-console .panel__body {
  padding: 4px 14px 14px;
}

.cs-console .panel__body--flush {
  padding: 0;
}

.cs-console .grid-2--compact .panel__header {
  font-size: var(--fs-12);
  padding: 8px 12px 4px;
}

.cs-console .grid-2--compact .panel__body {
  padding: 0 12px 10px;
}

.cs-console .panel__footer {
  font-size: var(--fs-12);
  color: var(--text-tertiary);
  background: var(--bg-sunken);
  border-bottom-left-radius: var(--r-md);
  border-bottom-right-radius: var(--r-md);
  justify-content: space-between;
  align-items: center;
  padding: 9px 14px;
  display: flex;
}

.cs-console .stats {
  grid-template-columns: repeat(6, 1fr);
  gap: 8px;
  display: grid;
}

.cs-console .stat {
  background: var(--bg-canvas);
  border-radius: var(--r-md);
  flex-direction: column;
  gap: 2px;
  min-width: 0;
  padding: 8px 12px;
  display: flex;
}

.cs-console .stat__label {
  color: var(--text-tertiary);
  align-items: center;
  gap: 6px;
  font-size: 11px;
  display: flex;
}

.cs-console .stat__value {
  font-size: var(--fs-18);
  font-variant-numeric: tabular-nums;
  letter-spacing: -.01em;
  color: var(--text-primary);
  align-items: baseline;
  gap: 6px;
  font-weight: 600;
  line-height: 1.2;
  display: flex;
}

.cs-console .stat__delta {
  color: var(--text-tertiary);
  font-variant-numeric: tabular-nums;
  font-size: 11px;
}

.cs-console .stat__delta--up {
  color: var(--status-success);
}

.cs-console .stat__delta--down {
  color: var(--status-failed);
}

.cs-console .stat__sub {
  color: var(--text-tertiary);
  align-items: center;
  gap: 6px;
  font-size: 11px;
  line-height: 1.3;
  display: flex;
}

.cs-console .table {
  border-collapse: separate;
  border-spacing: 0;
  width: 100%;
  font-size: var(--fs-12);
}

.cs-console .table th, .cs-console .table td {
  text-align: left;
  height: var(--row-h);
  vertical-align: middle;
  white-space: nowrap;
  text-overflow: ellipsis;
  padding: 0 12px;
  overflow: hidden;
}

.cs-console .table th:first-child, .cs-console .table td:first-child {
  padding-left: 20px;
}

.cs-console .table th:last-child, .cs-console .table td:last-child {
  padding-right: 20px;
}

.cs-console .table th {
  background: var(--bg-sunken);
  color: var(--text-tertiary);
  letter-spacing: .02em;
  z-index: 1;
  height: 30px;
  font-size: 11px;
  font-weight: 500;
  position: sticky;
  top: 0;
}

.cs-console .table tbody tr {
  transition: background-color 60ms;
}

.cs-console .table tbody tr:hover {
  background: var(--bg-active);
  cursor: pointer;
}

.cs-console .table tbody tr:hover td {
  background: var(--bg-active);
}

.cs-console .table tbody tr.is-selected, .cs-console .table tbody tr.is-selected td {
  background: var(--accent-soft);
}

.cs-console .table .mono {
  font-family: var(--font-mono);
  color: var(--text-secondary);
  font-size: 11px;
}

.cs-console .table .num {
  font-variant-numeric: tabular-nums;
}

.cs-console .table .col-trunc {
  max-width: 0;
}

.cs-console .table__rowmenu {
  visibility: hidden;
}

.cs-console .table tbody tr:hover .table__rowmenu {
  visibility: visible;
}

.cs-console .filterbar {
  background: none;
  flex-wrap: wrap;
  align-items: center;
  gap: 6px;
  padding: 8px 20px;
  display: flex;
}

.cs-console .filterbar__chip {
  border-radius: var(--r-sm);
  background: var(--bg-sunken);
  font-size: var(--fs-12);
  color: var(--text-tertiary);
  cursor: pointer;
  border: 0;
  align-items: center;
  gap: 5px;
  height: 26px;
  padding: 3px 9px;
  display: inline-flex;
}

.cs-console .filterbar__chip:hover {
  background: var(--bg-hover);
  color: var(--text-primary);
}

.cs-console .filterbar__chip--applied {
  background: var(--bg-active);
  color: var(--text-primary);
}

.cs-console .filterbar__chip--applied .label {
  color: var(--text-tertiary);
}

.cs-console .filterbar__chip-x {
  color: var(--text-faint);
  cursor: pointer;
  place-items: center;
  width: 12px;
  height: 12px;
  display: inline-grid;
}

.cs-console .filterbar__chip-x:hover {
  color: var(--text-primary);
}

.cs-console .filterbar__divider {
  display: none;
}

.cs-console .filterbar__search {
  background: var(--bg-sunken);
  border-radius: var(--r-sm);
  align-items: center;
  gap: 6px;
  min-width: 240px;
  height: 26px;
  padding: 0 9px;
  display: flex;
}

.cs-console .filterbar__search:focus-within {
  background: var(--bg-panel);
  box-shadow: 0 0 0 2px var(--accent-soft);
}

.cs-console .filterbar__search input {
  font-size: var(--fs-12);
  color: var(--text-primary);
  background: none;
  border: none;
  outline: none;
  flex: 1;
}

.cs-console .filterbar__count {
  font-size: var(--fs-12);
  color: var(--text-tertiary);
  font-variant-numeric: tabular-nums;
  margin-left: auto;
}

.cs-console .split-layout {
  background: var(--bg-panel);
  grid-template-columns: minmax(0, 1fr) 460px;
  gap: 0;
  height: 100%;
  min-height: 0;
  display: grid;
}

.cs-console .split-layout--full {
  grid-template-columns: minmax(0, 1fr);
}

.cs-console .split-layout__left {
  background: var(--bg-panel);
  flex-direction: column;
  min-width: 0;
  display: flex;
  overflow: hidden;
}

.cs-console .split-layout__list {
  flex: 1;
  overflow: auto;
}

.cs-console .drawer {
  background: var(--bg-panel);
  min-width: 0;
  box-shadow: var(--shadow-drawer);
  flex-direction: column;
  display: flex;
  overflow: hidden;
}

.cs-console .drawer__header {
  align-items: flex-start;
  gap: 10px;
  padding: 12px 14px;
  display: flex;
}

.cs-console .drawer__title-row {
  font-size: var(--fs-13);
  color: var(--text-tertiary);
  font-family: var(--font-mono);
  align-items: center;
  gap: 8px;
  display: flex;
}

.cs-console .drawer__title {
  font-size: var(--fs-15);
  color: var(--text-primary);
  margin: 4px 0 6px;
  font-weight: 600;
}

.cs-console .drawer__actions {
  align-items: center;
  gap: 4px;
  margin-left: auto;
  display: flex;
}

.cs-console .drawer__body {
  flex: 1;
  padding: 4px 14px 14px;
  overflow: auto;
}

.cs-console .timeline {
  flex-direction: column;
  gap: 0;
  display: flex;
}

.cs-console .timeline__item {
  grid-template-columns: 22px 1fr auto;
  gap: 8px;
  padding: 8px 0;
  display: grid;
  position: relative;
}

.cs-console .timeline__item + .timeline__item:before {
  content: "";
  background: var(--bg-sunken);
  border-radius: 1px;
  width: 2px;
  position: absolute;
  top: -8px;
  bottom: calc(100% - 12px);
  left: 10px;
}

.cs-console .timeline__item:after {
  content: "";
  background: var(--bg-sunken);
  border-radius: 1px;
  width: 2px;
  position: absolute;
  top: 18px;
  bottom: 0;
  left: 10px;
}

.cs-console .timeline__item:last-child:after {
  display: none;
}

.cs-console .timeline__dot {
  background: var(--bg-sunken);
  z-index: 1;
  width: 20px;
  height: 20px;
  color: var(--text-tertiary);
  border-radius: 50%;
  place-items: center;
  display: grid;
}

.cs-console .timeline__dot--success {
  color: var(--status-success);
  background: var(--status-success-bg);
}

.cs-console .timeline__dot--failed {
  color: var(--status-failed);
  background: var(--status-failed-bg);
}

.cs-console .timeline__dot--pending {
  color: var(--status-pending);
  background: var(--status-pending-bg);
}

.cs-console .timeline__dot--info {
  color: var(--status-info);
  background: var(--status-info-bg);
}

.cs-console .timeline__body {
  min-width: 0;
}

.cs-console .timeline__title {
  font-size: var(--fs-13);
  color: var(--text-primary);
  font-weight: 500;
}

.cs-console .timeline__meta {
  color: var(--text-tertiary);
  margin-top: 2px;
  font-size: 11px;
}

.cs-console .timeline__meta .mono {
  font-family: var(--font-mono);
}

.cs-console .timeline__time {
  color: var(--text-tertiary);
  font-variant-numeric: tabular-nums;
  font-size: 11px;
  font-family: var(--font-mono);
  white-space: nowrap;
}

.cs-console .code {
  background: var(--bg-code);
  color: var(--text-on-code);
  font-family: var(--font-mono);
  border-radius: var(--r-md);
  white-space: pre;
  margin: 0;
  padding: 12px 14px;
  font-size: 11.5px;
  line-height: 1.7;
  overflow-x: auto;
}

.cs-console .code .tk-k {
  color: #c7a8ff;
}

.cs-console .code .tk-s {
  color: #97d77c;
}

.cs-console .code .tk-n {
  color: #ffcf80;
}

.cs-console .code .tk-c {
  color: #6b7891;
}

.cs-console .code .tk-p {
  color: #84b8ff;
}

.cs-console .code--inline {
  background: var(--bg-code-soft);
  color: var(--text-primary);
  white-space: nowrap;
  border-radius: 3px;
  padding: 1px 5px;
  font-size: 11px;
  display: inline;
}

.cs-console .scope-pill {
  background: var(--bg-sunken);
  border-radius: var(--r-sm);
  font-size: 11px;
  font-family: var(--font-mono);
  color: var(--text-secondary);
  align-items: center;
  gap: 6px;
  padding: 3px 9px;
  display: inline-flex;
}

.cs-console .cs-spin {
  animation: .8s linear infinite cs-spin;
}

@keyframes cs-spin {
  to {
    transform: rotate(360deg);
  }
}

.cs-console .field {
  flex-direction: column;
  gap: 4px;
  margin-bottom: 12px;
  display: flex;
}

.cs-console .field__label {
  font-size: var(--fs-11);
  color: var(--text-tertiary);
  letter-spacing: .02em;
  text-transform: uppercase;
  font-weight: 500;
}

.cs-console .field__label .req {
  color: var(--status-failed);
  margin-left: 2px;
}

.cs-console .field__hint {
  font-size: var(--fs-11);
  color: var(--text-tertiary);
  margin-top: 2px;
}

.cs-console .input, .cs-console .select, .cs-console .textarea {
  background: var(--bg-sunken);
  border-radius: var(--r-sm);
  font-size: var(--fs-13);
  color: var(--text-primary);
  border: 0;
  outline: none;
  width: 100%;
  padding: 6px 10px;
  transition: background-color 80ms, box-shadow 80ms;
}

.cs-console .textarea {
  resize: vertical;
  min-height: 64px;
  line-height: 1.5;
}

.cs-console .input:focus, .cs-console .select:focus, .cs-console .textarea:focus {
  background: var(--bg-panel);
  box-shadow: 0 0 0 2px var(--accent-soft);
}

.cs-console .input--mono, .cs-console .textarea--mono {
  font-family: var(--cs-font-mono);
}

.cs-console .checkbox-row {
  font-size: var(--fs-12);
  align-items: center;
  gap: 8px;
  display: flex;
}

.cs-console .checkbox-row input {
  accent-color: var(--accent);
}

.cs-console .switch {
  background: var(--bg-active);
  cursor: pointer;
  border-radius: 99px;
  flex-shrink: 0;
  width: 28px;
  height: 16px;
  transition: background-color .12s;
  display: inline-block;
  position: relative;
}

.cs-console .switch:after {
  content: "";
  background: #fff;
  border-radius: 50%;
  width: 12px;
  height: 12px;
  transition: transform .12s;
  position: absolute;
  top: 2px;
  left: 2px;
  box-shadow: 0 1px 2px rgba(0, 0, 0, .18);
}

.cs-console .switch.is-on {
  background: var(--accent);
}

.cs-console .switch.is-on:after {
  transform: translate(12px);
}

.cs-console .switch.is-locked {
  background: var(--bg-sunken);
  cursor: not-allowed;
}

.cs-console .switch.is-locked:after {
  background: var(--bg-canvas);
}

.cs-console .pkg-layout {
  background: var(--bg-rail);
  flex: 1;
  grid-template-columns: 240px minmax(0, 1fr);
  gap: 0;
  min-height: 0;
  display: grid;
}

.cs-console .pkg-rail {
  background: var(--bg-rail);
  border-right: 1px solid var(--border-soft);
  flex-direction: column;
  gap: 0;
  padding: 12px 10px;
  display: flex;
  overflow-y: auto;
}

.cs-console .pkg-rail__head {
  font-size: var(--fs-12);
  color: var(--text-secondary);
  align-items: center;
  gap: 6px;
  padding: 4px 8px 10px;
  font-weight: 600;
  display: flex;
}

.cs-console .pkg-rail__list {
  flex-direction: column;
  gap: 6px;
  display: flex;
}

.cs-console .pkg-rail__item {
  background: var(--bg-panel);
  cursor: pointer;
  text-align: left;
  border: 0;
  border-radius: 6px;
  width: 100%;
  padding: 8px 10px;
  display: block;
}

.cs-console .pkg-rail__item:hover {
  background: var(--bg-hover);
}

.cs-console .pkg-rail__item.is-selected {
  box-shadow: 0 0 0 1.5px var(--accent);
}

.cs-console .pkg-rail__name {
  font-size: var(--fs-12);
  color: var(--text-primary);
  margin-bottom: 3px;
  font-weight: 500;
}

.cs-console .pkg-main {
  background: var(--bg-panel);
  flex-direction: column;
  min-height: 0;
  display: flex;
}

.cs-console .pkg-stepper {
  border-bottom: 1px solid var(--border-soft);
  background: linear-gradient(180deg,var(--bg-rail),transparent);
  align-items: center;
  gap: 0;
  padding: 16px 24px 14px;
  display: flex;
}

.cs-console .pkg-step {
  cursor: pointer;
  background: none;
  border: 0;
  flex-shrink: 0;
  align-items: center;
  gap: 10px;
  display: flex;
}

.cs-console .pkg-step__num {
  background: var(--bg-sunken);
  width: 26px;
  height: 26px;
  color: var(--text-tertiary);
  font-family: var(--cs-font-mono);
  font-size: var(--fs-12);
  border-radius: 50%;
  flex-shrink: 0;
  place-items: center;
  font-weight: 700;
  display: grid;
}

.cs-console .pkg-step__label {
  font-size: var(--fs-13);
  color: var(--text-secondary);
  font-weight: 600;
}

.cs-console .pkg-step__desc {
  font-size: var(--fs-11);
  color: var(--text-tertiary);
  margin-top: 1px;
}

.cs-console .pkg-step--active .pkg-step__num {
  color: #fff;
  box-shadow: 0 0 0 4px var(--bg-sunken);
  background: #0f141c;
}

.cs-console .pkg-step--active .pkg-step__label {
  color: var(--text-primary);
}

.cs-console .pkg-step--done .pkg-step__num {
  background: var(--status-success);
  color: #fff;
}

.cs-console .pkg-step--done .pkg-step__label {
  color: var(--text-primary);
}

.cs-console .pkg-step__connector {
  background: var(--bg-sunken);
  border-radius: 1px;
  flex: 1;
  height: 2px;
  margin: 0 16px;
  position: relative;
  top: -8px;
}

.cs-console .pkg-step__connector--done {
  background: var(--status-success);
}

.cs-console .pkg-stepbody {
  flex: 1;
  min-height: 0;
  padding: 16px 24px;
  overflow: auto;
}

.cs-console .pkg-footer {
  background: var(--bg-rail);
  border-top: 1px solid var(--border-soft);
  justify-content: space-between;
  align-items: center;
  padding: 12px 24px;
  display: flex;
}

.cs-console .pkg-asset-grid {
  grid-template-columns: repeat(auto-fill, minmax(280px, 1fr));
  gap: 8px;
  display: grid;
}

.cs-console .pkg-asset {
  background: var(--bg-canvas);
  cursor: pointer;
  text-align: left;
  border: 0;
  border-radius: 6px;
  align-items: flex-start;
  gap: 10px;
  width: 100%;
  padding: 12px;
  transition: background-color 80ms, box-shadow 80ms;
  display: flex;
  box-shadow: 0 0 0 1px rgba(0, 0, 0, 0);
}

.cs-console .pkg-asset:hover {
  background: var(--bg-hover);
}

.cs-console .pkg-asset--selected {
  background: var(--accent-soft);
  box-shadow: 0 0 0 1.5px var(--accent);
}

.cs-console .pkg-asset__check {
  flex-shrink: 0;
  padding-top: 2px;
}

.cs-console .pkg-asset__check input {
  accent-color: var(--accent);
}

.cs-console .pkg-asset__name {
  font-size: var(--fs-13);
  color: var(--text-primary);
  font-weight: 500;
}

.cs-console .pkg-tpl-chip {
  background: var(--bg-sunken);
  font-size: var(--fs-12);
  color: var(--text-secondary);
  cursor: pointer;
  border: 0;
  border-radius: 4px;
  align-items: center;
  padding: 5px 11px;
  display: inline-flex;
}

.cs-console .pkg-tpl-chip:hover {
  background: var(--bg-hover);
}

.cs-console .pkg-tpl-chip--active {
  background: var(--accent);
  color: #fff;
  font-weight: 500;
}

.cs-console .pkg-order-row {
  border-bottom: 1px solid var(--border-soft);
  align-items: center;
  gap: 10px;
  padding: 8px 12px;
  display: flex;
}

.cs-console .pkg-order-row:last-child {
  border-bottom: none;
}

.cs-console .pkg-order-row__idx {
  font-size: var(--fs-11);
  color: var(--text-tertiary);
  width: 38px;
  font-weight: 600;
}

.cs-console .merkle {
  background: var(--bg-canvas);
  font-family: var(--cs-font-mono);
  border-radius: 6px;
  flex-direction: column;
  align-items: center;
  gap: 2px;
  padding: 14px 20px;
  display: flex;
}

.cs-console .merkle__root {
  background: var(--status-success-bg);
  color: var(--status-success);
  font-size: var(--fs-11);
  border-radius: 6px;
  align-items: center;
  gap: 8px;
  margin: 0 auto 4px;
  padding: 6px 12px;
  font-weight: 600;
  display: inline-flex;
}

.cs-console .merkle__level {
  font-size: var(--fs-10);
  letter-spacing: .05em;
  text-transform: uppercase;
  background: rgba(0, 0, 0, .1);
  border-radius: 2px;
  padding: 1px 5px;
}

.cs-console .merkle__branches {
  gap: 80px;
  height: 14px;
  display: flex;
}

.cs-console .merkle__branches--wide {
  gap: 40px;
}

.cs-console .merkle__line {
  background: var(--text-faint);
  width: 1.5px;
}

.cs-console .merkle__internal-row {
  gap: 28px;
  display: flex;
}

.cs-console .merkle__leaf-row {
  flex-wrap: wrap;
  justify-content: center;
  gap: 8px;
  display: flex;
}

.cs-console .merkle__node {
  background: var(--bg-panel);
  font-size: var(--fs-10);
  color: var(--text-secondary);
  box-shadow: 0 0 0 1px var(--border-soft);
  border-radius: 4px;
  align-items: center;
  gap: 6px;
  padding: 4px 10px;
  display: inline-flex;
}

.cs-console .merkle__node--internal {
  background: var(--status-info-bg);
  color: var(--status-info);
  box-shadow: none;
}

.cs-console .merkle__leaf-idx {
  color: var(--text-tertiary);
  font-size: var(--fs-10);
  font-weight: 600;
}

.cs-console .merkle__node--ellipsis {
  box-shadow: none;
  background: none;
}

.cs-console .pkg-pdf-preview {
  justify-content: center;
  display: flex;
}

.cs-console .pkg-pdf-preview__page {
  aspect-ratio: 210 / 297;
  width: 100%;
  max-width: 320px;
  box-shadow: 0 4px 16px rgba(15, 19, 28, .08),0 0 0 1px var(--border-soft);
  background: #fff;
  border-radius: 2px;
  padding: 24px 20px;
  overflow: hidden;
}

.cs-console .pkg-pdf-preview__cover {
  font-family: Times New Roman, serif;
}

.cs-console .pkg-pdf-preview__cfca {
  background: var(--accent-soft);
  color: var(--accent);
  font-size: var(--fs-10);
  font-family: var(--cs-font-sans);
  border-radius: 3px;
  align-items: center;
  gap: 4px;
  margin-top: 10px;
  padding: 3px 6px;
  display: inline-flex;
}

.cs-console .pkg-pdf-preview__divider {
  background: var(--border-soft);
  height: 1px;
  margin: 14px 0 10px;
}

.cs-console .pkg-pdf-preview__row {
  border-bottom: 1px dashed var(--border-soft);
  align-items: center;
  gap: 6px;
  padding: 2px 0;
  display: flex;
}

.cs-console .detail-grid {
  grid-template-columns: minmax(0, 1fr) 360px;
  align-items: start;
  gap: 14px;
  display: grid;
}

@media (max-width: 1100px) {
  .cs-console .detail-grid {
    grid-template-columns: minmax(0, 1fr);
  }

  .cs-console .pkg-asset-grid {
    grid-template-columns: 1fr;
  }
}

.cs-console .related-row {
  background: var(--bg-sunken);
  border-radius: 6px;
  align-items: center;
  gap: 8px;
  margin-bottom: 6px;
  padding: 9px 12px;
  display: flex;
}

.cs-console .apv2-flows {
  background: var(--bg-rail);
  flex: 1;
  grid-template-columns: 280px minmax(0, 1fr);
  gap: 0;
  min-height: 0;
  display: grid;
}

.cs-console .apv2-flows__list {
  background: var(--bg-rail);
  border-right: 1px solid var(--border-soft);
  flex-direction: column;
  gap: 4px;
  padding: 12px 10px;
  display: flex;
  overflow-y: auto;
}

.cs-console .apv2-flows__list-head {
  font-size: var(--fs-12);
  color: var(--text-secondary);
  align-items: center;
  gap: 6px;
  padding: 4px 8px 8px;
  font-weight: 600;
  display: flex;
}

.cs-console .apv2-flow-item {
  background: var(--bg-panel);
  cursor: pointer;
  text-align: left;
  width: 100%;
  font: inherit;
  border: 0;
  border-radius: 6px;
  padding: 8px 10px;
  box-shadow: 0 0 0 1px rgba(0, 0, 0, 0);
}

.cs-console .apv2-flow-item:hover {
  background: var(--bg-hover);
}

.cs-console .apv2-flow-item--active {
  box-shadow: 0 0 0 1.5px var(--accent);
}

.cs-console .apv2-flow-item__name {
  font-size: var(--fs-12);
  color: var(--text-primary);
  margin-bottom: 2px;
  font-weight: 500;
}

.cs-console .apv2-flows__canvas-wrap {
  background: var(--bg-panel);
  flex-direction: column;
  min-height: 0;
  display: flex;
}

.cs-console .apv2-flows__canvas-head {
  border-bottom: 1px solid var(--border-soft);
  justify-content: space-between;
  align-items: flex-start;
  gap: 14px;
  padding: 14px 20px 12px;
  display: flex;
}

.cs-console .apv2-flows__canvas {
  background: radial-gradient(circle,var(--border-soft)1px,transparent 1px)0 0/16px 16px,var(--bg-canvas);
  flex: 1;
  justify-content: center;
  min-height: 0;
  padding: 24px;
  display: flex;
  overflow: auto;
}

.cs-console .apv2-flows__palette {
  background: var(--bg-rail);
  border-top: 1px solid var(--border-soft);
  padding: 12px 20px;
}

.cs-console .apv2-palette-chip {
  background: var(--bg-panel);
  font-size: var(--fs-11);
  color: var(--text-secondary);
  box-shadow: 0 0 0 1px var(--border-soft);
  border-radius: 4px;
  align-items: center;
  gap: 5px;
  padding: 4px 10px;
  font-weight: 500;
  display: inline-flex;
}

.cs-console .flow-canvas {
  flex-direction: column;
  align-items: center;
  gap: 0;
  width: 100%;
  max-width: 360px;
  display: flex;
}

.cs-console .flow-node {
  background: var(--bg-panel);
  width: 100%;
  box-shadow: 0 2px 8px rgba(15, 19, 28, .08),0 0 0 1px var(--border-soft);
  border-radius: 8px;
  padding: 12px 14px;
}

.cs-console .flow-node--start {
  background: linear-gradient(180deg,var(--status-info-bg),var(--bg-panel));
}

.cs-console .flow-node--condition {
  background: linear-gradient(180deg,var(--status-warn-bg),var(--bg-panel));
}

.cs-console .flow-node--approver {
  background: linear-gradient(180deg,var(--status-pending-bg),var(--bg-panel));
}

.cs-console .flow-node--stepup {
  background: linear-gradient(180deg,var(--status-warn-bg),var(--bg-panel));
  box-shadow: 0 4px 14px rgba(168, 103, 0, .18),0 0 0 1.5px var(--status-warn);
}

.cs-console .flow-node--end {
  background: linear-gradient(180deg,var(--status-success-bg),var(--bg-panel));
}

.cs-console .flow-node__head {
  align-items: center;
  gap: 8px;
  margin-bottom: 6px;
  display: flex;
}

.cs-console .flow-node__icon {
  background: var(--bg-sunken);
  width: 24px;
  height: 24px;
  color: var(--text-tertiary);
  border-radius: 6px;
  place-items: center;
  display: grid;
}

.cs-console .flow-node__icon--info {
  background: var(--status-info-bg);
  color: var(--status-info);
}

.cs-console .flow-node__icon--warn {
  background: var(--status-warn-bg);
  color: var(--status-warn);
}

.cs-console .flow-node__icon--pending {
  background: var(--status-pending-bg);
  color: var(--status-pending);
}

.cs-console .flow-node__icon--success {
  background: var(--status-success-bg);
  color: var(--status-success);
}

.cs-console .flow-node__kind {
  font-size: var(--fs-10);
  color: var(--text-tertiary);
  text-transform: uppercase;
  letter-spacing: .08em;
  font-weight: 600;
}

.cs-console .flow-node__label {
  font-size: var(--fs-13);
  color: var(--text-primary);
  margin-bottom: 3px;
  font-weight: 600;
}

.cs-console .flow-node__meta {
  font-size: var(--fs-11);
  color: var(--text-tertiary);
}

.cs-console .flow-edge {
  width: 80px;
  margin: -2px 0;
}

.cs-console .flow-strip {
  background: var(--bg-canvas);
  border-radius: 6px;
  align-items: center;
  margin-bottom: 4px;
  padding: 10px 14px;
  display: flex;
  overflow-x: auto;
}

.cs-console .flow-strip__node {
  flex-direction: column;
  flex-shrink: 0;
  align-items: center;
  display: flex;
}

.cs-console .flow-strip__node-idx {
  background: var(--bg-sunken);
  width: 22px;
  height: 22px;
  color: var(--text-tertiary);
  font-size: var(--fs-10);
  font-weight: 700;
  font-family: var(--cs-font-mono);
  border-radius: 50%;
  place-items: center;
  display: grid;
}

.cs-console .flow-strip__node-label {
  font-size: var(--fs-10);
  color: var(--text-tertiary);
  margin-top: 4px;
}

.cs-console .flow-strip__node--done .flow-strip__node-idx {
  background: var(--status-success);
  color: #fff;
}

.cs-console .flow-strip__node--done .flow-strip__node-label {
  color: var(--text-secondary);
}

.cs-console .flow-strip__node--active .flow-strip__node-idx {
  background: var(--status-warn);
  color: #fff;
  box-shadow: 0 0 0 3px var(--status-warn-bg);
}

.cs-console .flow-strip__node--active .flow-strip__node-label {
  color: var(--text-primary);
  font-weight: 600;
}

.cs-console .flow-strip__line {
  background: var(--bg-sunken);
  border-radius: 1px;
  flex: 1;
  min-width: 12px;
  height: 2px;
  margin: -10px 4px 0;
}

.cs-console .flow-strip__line--done {
  background: var(--status-success);
}

.cs-console .stepup-card {
  background: var(--bg-panel);
  width: 100%;
  max-width: 640px;
  box-shadow: 0 8px 24px rgba(15, 19, 28, .08),0 0 0 1px var(--border-soft);
  border-radius: 10px;
  padding: 24px 28px 20px;
}

.cs-console .stepup-card__head {
  align-items: flex-start;
  gap: 14px;
  margin-bottom: 14px;
  display: flex;
}

.cs-console .stepup-card__icon {
  background: var(--status-failed-bg);
  width: 44px;
  height: 44px;
  color: var(--status-failed);
  border-radius: 10px;
  flex-shrink: 0;
  place-items: center;
  display: grid;
}

.cs-console .stepup-card__title {
  font-size: var(--fs-18);
  color: var(--text-primary);
  letter-spacing: -.01em;
  font-weight: 600;
}

.cs-console .stepup-card__sub {
  font-size: var(--fs-13);
  color: var(--text-tertiary);
  margin-top: 3px;
}

.cs-console .stepup-methods {
  gap: 6px;
  margin-top: 4px;
  display: grid;
}

.cs-console .stepup-method {
  background: var(--bg-canvas);
  cursor: pointer;
  text-align: left;
  width: 100%;
  font: inherit;
  border: 0;
  border-radius: 8px;
  align-items: center;
  gap: 12px;
  padding: 12px 14px;
  display: flex;
  box-shadow: 0 0 0 1px rgba(0, 0, 0, 0);
}

.cs-console .stepup-method:hover {
  background: var(--bg-hover);
  box-shadow: 0 0 0 1px var(--border);
}

.cs-console .stepup-method--recommended {
  box-shadow: 0 0 0 1.5px var(--accent);
  background: var(--accent-soft);
}

.cs-console .stepup-method--recommended:hover {
  background: var(--accent-soft);
}

.cs-console .stepup-method--disabled {
  opacity: .55;
  cursor: not-allowed;
}

.cs-console .stepup-method--disabled:hover {
  background: var(--bg-canvas);
  box-shadow: 0 0 0 1px rgba(0, 0, 0, 0);
}

.cs-console .stepup-method__icon {
  background: var(--bg-sunken);
  width: 32px;
  height: 32px;
  color: var(--text-secondary);
  border-radius: 8px;
  flex-shrink: 0;
  place-items: center;
  display: grid;
}

.cs-console .stepup-method--recommended .stepup-method__icon {
  background: var(--accent);
  color: #fff;
}

.cs-console .stepup-method__title {
  font-size: var(--fs-13);
  color: var(--text-primary);
  font-weight: 600;
}

.cs-console .stepup-card__footer {
  border-top: 1px solid var(--border-soft);
  flex-wrap: wrap;
  justify-content: space-between;
  align-items: center;
  gap: 12px;
  margin-top: 18px;
  padding-top: 14px;
  display: flex;
}
