:root {
  --bg: #f5f7fb;
  --panel: #ffffff;
  --panel-soft: #eef3ff;
  --border: #d7deeb;
  --text: #1f2937;
  --muted: #6b7280;
  --accent: #3b82f6;
  --sidebar-width: 280px;
  --sidebar-resize-bar-width: 28px;
}

* {
  box-sizing: border-box;
}

html {
  height: 100%;
}

body {
  margin: 0;
  height: 100%;
  font-family: Inter, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Arial, sans-serif;
  background: var(--bg);
  color: var(--text);
}

/* Агент / workspace: без скролла документа */
html:not(:has(#app-root.app-landing-view)),
body:not(:has(#app-root.app-landing-view)) {
  overflow: hidden;
}

/* Лендинг /: скролл всей страницы как раньше */
html:has(#app-root.app-landing-view),
body:has(#app-root.app-landing-view) {
  height: auto;
  min-height: 100%;
  overflow-x: hidden;
  overflow-y: auto;
}

body.app-booting,
body.app-locked {
  overflow: hidden;
}

.app-connection-lost {
  position: fixed;
  top: 0;
  left: 0;
  right: 0;
  z-index: 10100;
  padding: 10px 16px;
  border-bottom: 1px solid #fecaca;
  background: linear-gradient(180deg, #fef2f2 0%, #fff7ed 100%);
  color: #7f1d1d;
  box-shadow: 0 8px 24px rgba(127, 29, 29, 0.12);
}

.app-connection-lost.hidden {
  display: none;
}

.app-connection-lost-inner {
  display: flex;
  align-items: center;
  gap: 12px;
  width: min(1200px, 100%);
  margin: 0 auto;
}

.app-connection-lost-icon {
  flex: 0 0 auto;
  font-size: 18px;
  line-height: 1;
  animation: app-connection-lost-pulse 1.6s ease-in-out infinite;
}

@keyframes app-connection-lost-pulse {
  0%,
  100% {
    opacity: 1;
    transform: scale(1);
  }

  50% {
    opacity: 0.55;
    transform: scale(0.94);
  }
}

.app-connection-lost-copy {
  display: flex;
  flex-direction: column;
  gap: 2px;
  min-width: 0;
  flex: 1 1 auto;
}

.app-connection-lost-title {
  font-size: 14px;
  font-weight: 700;
  color: #991b1b;
}

.app-connection-lost-detail {
  font-size: 13px;
  line-height: 1.45;
  color: #9a3412;
}

.app-connection-lost-detail code {
  font-size: 12px;
  padding: 1px 5px;
  border-radius: 4px;
  background: rgba(255, 255, 255, 0.72);
  border: 1px solid #fecaca;
}

.app-connection-lost-actions {
  display: flex;
  align-items: center;
  gap: 8px;
  flex: 0 0 auto;
}

.app-connection-lost-retry {
  border: 1px solid #fca5a5;
  border-radius: 999px;
  background: #fff;
  color: #991b1b;
  font-size: 13px;
  font-weight: 600;
  padding: 6px 14px;
  cursor: pointer;
}

.app-connection-lost-retry:hover {
  background: #fff1f2;
}

.app-connection-lost-retry:disabled {
  opacity: 0.65;
  cursor: wait;
}

.app-connection-lost-dismiss {
  width: 30px;
  height: 30px;
  border: 0;
  border-radius: 999px;
  background: transparent;
  color: #9a3412;
  font-size: 20px;
  line-height: 1;
  cursor: pointer;
}

.app-connection-lost-dismiss:hover {
  background: rgba(255, 255, 255, 0.72);
}

.app-connection-lost[data-state="offline"] {
  border-bottom-color: #fde68a;
  background: linear-gradient(180deg, #fffbeb 0%, #fff7ed 100%);
  color: #92400e;
}

.app-connection-lost[data-state="offline"] .app-connection-lost-title {
  color: #92400e;
}

.app-connection-lost[data-state="offline"] .app-connection-lost-detail {
  color: #a16207;
}

.workspace-idle-screensaver {
  position: fixed;
  inset: 0;
  z-index: 9995;
  display: flex;
  align-items: center;
  justify-content: center;
  padding: 28px;
}

.workspace-idle-screensaver.hidden {
  display: none;
}

body.workspace-idle-screensaver-active {
  overflow: hidden;
}

.workspace-idle-screensaver-bg {
  position: absolute;
  inset: 0;
  overflow: hidden;
  background:
    radial-gradient(ellipse 80% 60% at 20% 15%, rgba(56, 189, 248, 0.22), transparent 58%),
    radial-gradient(ellipse 70% 55% at 82% 22%, rgba(167, 139, 250, 0.28), transparent 55%),
    radial-gradient(ellipse 90% 70% at 50% 100%, rgba(99, 102, 241, 0.18), transparent 62%),
    linear-gradient(160deg, #020617 0%, #0f172a 42%, #1e1b4b 100%);
}

.workspace-idle-screensaver-grid {
  position: absolute;
  inset: -20%;
  opacity: 0.14;
  background-image:
    linear-gradient(rgba(148, 163, 184, 0.35) 1px, transparent 1px),
    linear-gradient(90deg, rgba(148, 163, 184, 0.35) 1px, transparent 1px);
  background-size: 48px 48px;
  mask-image: radial-gradient(ellipse 70% 60% at 50% 45%, #000 20%, transparent 72%);
  animation: workspace-idle-screensaver-grid-drift 28s linear infinite;
}

.workspace-idle-screensaver-aurora {
  position: absolute;
  width: 70vmax;
  height: 70vmax;
  border-radius: 50%;
  filter: blur(72px);
  opacity: 0.55;
  mix-blend-mode: screen;
  animation: workspace-idle-screensaver-aurora 18s ease-in-out infinite;
}

.workspace-idle-screensaver-aurora--a {
  top: -25%;
  left: -15%;
  background: radial-gradient(circle, rgba(56, 189, 248, 0.75), transparent 68%);
  animation-duration: 22s;
}

.workspace-idle-screensaver-aurora--b {
  bottom: -30%;
  right: -10%;
  background: radial-gradient(circle, rgba(192, 132, 252, 0.7), transparent 70%);
  animation-duration: 26s;
  animation-delay: -6s;
}

.workspace-idle-screensaver-panel {
  position: relative;
  z-index: 1;
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 10px;
  max-width: 420px;
  width: 100%;
  padding: 36px 32px 30px;
  text-align: center;
  border-radius: 22px;
  border: 1px solid rgba(148, 163, 184, 0.28);
  background: rgba(15, 23, 42, 0.72);
  box-shadow:
    0 28px 80px rgba(2, 6, 23, 0.55),
    inset 0 1px 0 rgba(248, 250, 252, 0.06);
  backdrop-filter: blur(14px);
}

.workspace-idle-screensaver-eyebrow {
  margin: 0;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 0.45em;
  font-size: 12px;
  font-weight: 700;
  line-height: 1;
}

.workspace-idle-screensaver-eyebrow-clover {
  font-size: 1.35em;
  line-height: 1;
  filter: drop-shadow(0 2px 6px rgba(34, 197, 94, 0.35));
}

.workspace-idle-screensaver-eyebrow-label {
  letter-spacing: 0.14em;
  text-transform: uppercase;
  color: rgba(226, 232, 240, 0.92);
}

.workspace-idle-screensaver-clock {
  margin: 4px 0 0;
  font-size: clamp(2.75rem, 8vw, 3.5rem);
  font-weight: 800;
  letter-spacing: -0.04em;
  line-height: 1;
  color: #f8fafc;
  font-variant-numeric: tabular-nums;
}

.workspace-idle-screensaver-title {
  margin: 8px 0 0;
  font-size: 1.25rem;
  font-weight: 700;
  color: #e2e8f0;
}

.workspace-idle-screensaver-lead {
  margin: 0;
  font-size: 14px;
  line-height: 1.55;
  color: rgba(203, 213, 225, 0.82);
}

.workspace-idle-screensaver-continue {
  margin-top: 14px;
  min-width: 180px;
  padding: 12px 22px;
  border: none;
  border-radius: 999px;
  font-size: 15px;
  font-weight: 700;
  color: #0f172a;
  cursor: pointer;
  background: linear-gradient(135deg, #e2e8f0 0%, #a5b4fc 48%, #38bdf8 100%);
  box-shadow: 0 12px 32px rgba(56, 189, 248, 0.35);
  transition: transform 0.15s ease, box-shadow 0.15s ease;
}

.workspace-idle-screensaver-continue:hover {
  transform: translateY(-1px);
  box-shadow: 0 16px 40px rgba(129, 140, 248, 0.45);
}

.workspace-idle-screensaver-continue:focus-visible {
  outline: 2px solid #38bdf8;
  outline-offset: 3px;
}

.workspace-idle-screensaver-breaks {
  margin: 10px 0 0;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  gap: 6px;
  font-size: 13px;
  line-height: 1;
  color: rgba(203, 213, 225, 0.78);
}

.workspace-idle-screensaver-breaks-label {
  font-weight: 500;
}

.workspace-idle-screensaver-breaks-badge {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-width: 26px;
  height: 26px;
  padding: 0 7px;
  border-radius: 999px;
  font-size: 13px;
  font-weight: 800;
  font-variant-numeric: tabular-nums;
  color: #fff;
  background: linear-gradient(180deg, #f87171 0%, #dc2626 100%);
  box-shadow:
    0 0 0 1px rgba(127, 29, 29, 0.45),
    0 4px 14px rgba(220, 38, 38, 0.45);
}

@keyframes workspace-idle-screensaver-aurora {
  0%,
  100% {
    transform: translate(0, 0) scale(1);
  }
  50% {
    transform: translate(4%, 3%) scale(1.06);
  }
}

@keyframes workspace-idle-screensaver-grid-drift {
  0% {
    transform: translate(0, 0);
  }
  100% {
    transform: translate(48px, 48px);
  }
}

.app-lock {
  position: fixed;
  inset: 0;
  z-index: 10001;
  display: flex;
  align-items: center;
  justify-content: center;
  padding: 24px;
}

.app-lock.hidden {
  display: none;
}

.app-lock-bg {
  position: absolute;
  inset: 0;
  background:
    radial-gradient(ellipse 70% 55% at 12% 8%, rgba(99, 102, 241, 0.24), transparent 60%),
    radial-gradient(ellipse 65% 50% at 88% 18%, rgba(59, 130, 246, 0.2), transparent 55%),
    linear-gradient(165deg, #0f172a 0%, #1e1b4b 52%, #0f172a 100%);
}

.app-lock-panel {
  position: relative;
  z-index: 1;
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 12px;
  width: min(400px, 100%);
}

.app-lock-inner {
  position: relative;
  z-index: 1;
  width: 100%;
  padding: 28px 26px 22px;
  border: 1px solid rgba(148, 163, 184, 0.28);
  border-radius: 18px;
  background: rgba(15, 23, 42, 0.88);
  box-shadow: 0 24px 64px rgba(2, 6, 23, 0.45);
  backdrop-filter: blur(10px);
}

.app-lock-brand {
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  gap: 10px;
  margin-bottom: 8px;
}

.app-lock-logo {
  width: 48px;
  height: 48px;
  flex-shrink: 0;
  border-radius: 12px;
  display: block;
  box-shadow: 0 8px 24px rgba(99, 102, 241, 0.35);
}

.app-lock-title {
  margin: 0;
  font-size: 1.375rem;
  font-weight: 800;
  letter-spacing: -0.02em;
  color: #f8fafc;
}

.app-lock-lead {
  margin: 0 0 18px;
  text-align: center;
  font-size: 14px;
  line-height: 1.5;
  color: rgba(226, 232, 240, 0.78);
}

.app-lock-form {
  display: flex;
  flex-direction: column;
  gap: 12px;
}

.app-lock-field {
  display: flex;
  flex-direction: column;
  gap: 6px;
}

.app-lock-field.hidden {
  display: none;
}

.app-lock-label {
  font-size: 12px;
  font-weight: 600;
  color: rgba(226, 232, 240, 0.72);
}

.app-lock-input {
  width: 100%;
  padding: 10px 12px;
  border: 1px solid rgba(148, 163, 184, 0.35);
  border-radius: 10px;
  background: rgba(15, 23, 42, 0.65);
  color: #f8fafc;
  font-size: 14px;
}

.app-lock-input:focus {
  outline: none;
  border-color: #818cf8;
  box-shadow: 0 0 0 3px rgba(99, 102, 241, 0.22);
}

.app-lock-error {
  margin: 0;
  font-size: 13px;
  color: #fca5a5;
}

.app-lock-error.hidden {
  display: none;
}

.app-lock-remember {
  display: flex;
  align-items: center;
  gap: 10px;
  margin: 0;
  font-size: 13px;
  line-height: 1.35;
  color: rgba(226, 232, 240, 0.78);
  cursor: pointer;
  user-select: none;
}

.app-lock-remember.hidden {
  display: none;
}

.app-lock-remember-input {
  position: absolute;
  width: 20px;
  height: 20px;
  margin: 0;
  opacity: 0;
  cursor: pointer;
  z-index: 1;
}

.app-lock-remember-check {
  position: relative;
  flex: 0 0 20px;
  width: 20px;
  height: 20px;
  border-radius: 6px;
  border: 1.5px solid rgba(148, 163, 184, 0.55);
  background: rgba(15, 23, 42, 0.55);
  box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.06);
  transition:
    border-color 0.15s ease,
    background 0.15s ease,
    box-shadow 0.15s ease,
    transform 0.12s ease;
}

.app-lock-remember-check::after {
  content: "";
  position: absolute;
  left: 6px;
  top: 2px;
  width: 5px;
  height: 10px;
  border: solid transparent;
  border-width: 0 2px 2px 0;
  transform: rotate(45deg) scale(0.6);
  opacity: 0;
  transition: opacity 0.12s ease, transform 0.12s ease;
}

.app-lock-remember:hover .app-lock-remember-check {
  border-color: rgba(129, 140, 248, 0.75);
  background: rgba(30, 41, 59, 0.75);
}

.app-lock-remember-input:checked + .app-lock-remember-check {
  border-color: #818cf8;
  background: linear-gradient(145deg, #6366f1, #4f46e5);
  box-shadow: 0 2px 8px rgba(99, 102, 241, 0.45);
}

.app-lock-remember-input:checked + .app-lock-remember-check::after {
  border-color: #fff;
  opacity: 1;
  transform: rotate(45deg) scale(1);
}

.app-lock-remember-input:focus-visible + .app-lock-remember-check {
  box-shadow: 0 0 0 3px rgba(99, 102, 241, 0.35);
}

.app-lock-remember-text {
  flex: 1 1 auto;
  padding-top: 1px;
}

.app-lock-submit {
  margin-top: 4px;
  padding: 10px 14px;
  border: 0;
  border-radius: 10px;
  background: linear-gradient(135deg, #6366f1, #3b82f6);
  color: #fff;
  font-size: 14px;
  font-weight: 700;
  cursor: pointer;
  transition: opacity 0.15s ease, transform 0.15s ease;
}

.app-lock-submit:hover {
  opacity: 0.94;
}

.app-lock-submit:active {
  transform: scale(0.99);
}

.app-lock-submit:disabled {
  opacity: 0.72;
  cursor: wait;
}

.app-lock-biometric-btn {
  width: 100%;
  margin-top: 14px;
  padding: 10px 14px;
  border: 1px dashed rgba(148, 163, 184, 0.35);
  border-radius: 10px;
  background: rgba(15, 23, 42, 0.45);
  color: rgba(148, 163, 184, 0.85);
  font-size: 13px;
  font-weight: 600;
  cursor: not-allowed;
}

.app-lock-biometric-btn:disabled {
  opacity: 1;
}

.app-lock-biometric-btn.hidden {
  display: none;
}

.app-lock-auth-links {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
  margin-top: 2px;
}

.app-lock-auth-link {
  padding: 0;
  border: 0;
  background: none;
  color: rgba(148, 163, 184, 0.92);
  font-size: 12px;
  font-weight: 600;
  line-height: 1.4;
  cursor: pointer;
  text-decoration: underline;
  text-underline-offset: 2px;
  transition: color 0.15s ease;
}

.app-lock-auth-link:hover:not(:disabled) {
  color: #e2e8f0;
}

.app-lock-auth-link:disabled {
  opacity: 0.45;
  cursor: not-allowed;
  text-decoration: none;
}

.app-lock-scanner {
  margin-top: 14px;
  padding: 14px;
  border-radius: 12px;
  border: 1px solid rgba(96, 165, 250, 0.28);
  background: rgba(30, 58, 138, 0.18);
}

.app-lock-scanner.hidden {
  display: none;
}

.app-lock-scanner-head {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 10px;
  margin-bottom: 8px;
}

.app-lock-scanner-title-wrap {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  min-width: 0;
}

.app-lock-scanner-glyph {
  width: 18px;
  height: 18px;
  color: #93c5fd;
  flex: 0 0 18px;
}

.app-lock-scanner-title {
  font-size: 13px;
  color: #dbeafe;
}

.app-lock-scanner-badge {
  padding: 3px 8px;
  border-radius: 999px;
  background: rgba(15, 23, 42, 0.55);
  border: 1px solid rgba(147, 197, 253, 0.28);
  font-size: 10px;
  font-weight: 700;
  letter-spacing: 0.03em;
  color: #bfdbfe;
  white-space: nowrap;
}

.app-lock-scanner-lead {
  margin: 0 0 8px;
  font-size: 11px;
  line-height: 1.45;
  color: rgba(191, 219, 254, 0.88);
}

.app-lock-scanner-status {
  margin: 0 0 10px;
  font-size: 12px;
  font-weight: 600;
  color: #e0f2fe;
}

.app-lock-scanner-progress {
  margin: 0 0 10px;
  font-size: 11px;
  color: #93c5fd;
}

.app-lock-scanner-progress.hidden {
  display: none;
}

.app-lock-scanner-action {
  width: 100%;
  padding: 11px 14px;
  border: 0;
  border-radius: 10px;
  background: linear-gradient(135deg, #3b82f6, #2563eb);
  color: #fff;
  font-size: 14px;
  font-weight: 700;
  cursor: pointer;
  transition: opacity 0.15s ease, transform 0.15s ease;
}

.app-lock-scanner-action:hover {
  opacity: 0.96;
}

.app-lock-scanner-action:disabled {
  opacity: 0.72;
  cursor: wait;
}

.app-lock-scanner-footnote {
  margin: 10px 0 0;
  font-size: 10px;
  line-height: 1.45;
  color: rgba(148, 163, 184, 0.88);
  text-align: center;
}

.app-lock-scanner-footnote code {
  font-size: 9px;
  color: rgba(226, 232, 240, 0.88);
}

.app-lock-scanner.is-scanning {
  animation: app-lock-scanner-pulse 0.8s ease-in-out infinite;
}

@keyframes app-lock-scanner-pulse {
  0%, 100% { box-shadow: 0 0 0 0 rgba(59, 130, 246, 0.28); }
  50% { box-shadow: 0 0 0 4px rgba(59, 130, 246, 0.14); }
}

.app-lock-bio-hint {
  margin: 14px 0 0;
  padding: 10px 12px;
  border-radius: 10px;
  border: 1px solid rgba(34, 197, 94, 0.28);
  background: rgba(22, 163, 74, 0.12);
  font-size: 11px;
  line-height: 1.55;
  color: rgba(226, 232, 240, 0.88);
  text-align: center;
}

.app-lock-bio-hint strong {
  display: block;
  margin-bottom: 4px;
  font-size: 12px;
  color: #bbf7d0;
}

.app-lock-bio-hint em {
  font-style: normal;
  color: #86efac;
  font-weight: 600;
}

.app-lock-bio-legend {
  display: flex;
  align-items: flex-start;
  justify-content: center;
  gap: 8px;
  margin-top: 18px;
  padding-top: 16px;
}

.app-lock-bio-legend-item {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 6px;
  min-width: 0;
  flex: 1 1 0;
}

.app-lock-bio-legend-item--active {
  opacity: 1;
}

.app-lock-bio-legend-item--soon {
  opacity: 0.72;
}

.app-lock-bio-legend-item--soon .app-lock-bio-legend-icon {
  box-shadow: none;
  border: 1px dashed rgba(148, 163, 184, 0.35);
}

.app-lock-bio-legend-icon {
  width: 48px;
  height: 48px;
  border-radius: 13px;
  display: grid;
  place-items: center;
  color: #fff;
  box-shadow: 0 8px 18px rgba(2, 6, 23, 0.22);
}

.app-lock-bio-legend-icon svg {
  width: 26px;
  height: 26px;
  display: block;
}

.app-lock-bio-legend-icon--touch {
  background: linear-gradient(145deg, #fb7185, #e11d48);
}

.app-lock-bio-legend-icon--face {
  background: linear-gradient(145deg, #4ade80, #16a34a);
}

.app-lock-bio-legend-icon--optic {
  background: linear-gradient(145deg, #fb923c, #ea580c);
}

.app-lock-bio-legend-icon--qr {
  background: linear-gradient(145deg, #38bdf8, #0284c7);
}

.app-lock-bio-legend-name {
  font-size: 10px;
  font-weight: 700;
  letter-spacing: 0.02em;
  color: rgba(248, 250, 252, 0.94);
  text-align: center;
}

.app-lock-bio-legend-device {
  font-size: 9px;
  line-height: 1.25;
  color: rgba(148, 163, 184, 0.9);
  text-align: center;
}

.app-lock-footnote {
  margin: 16px 0 0;
  text-align: center;
  font-size: 12px;
  line-height: 1.45;
  color: rgba(148, 163, 184, 0.82);
}

.app-lock-version-wrap {
  display: flex;
  justify-content: center;
  margin: 0;
}

.app-lock-footnote code {
  font-size: 11px;
  color: rgba(226, 232, 240, 0.88);
}

.app-splash {
  position: fixed;
  inset: 0;
  z-index: 10000;
  display: flex;
  align-items: center;
  justify-content: center;
  padding: 24px;
  transition: opacity 0.45s ease, visibility 0.45s ease;
}

.app-splash--hide {
  opacity: 0;
  visibility: hidden;
  pointer-events: none;
}

.app-splash-bg {
  position: absolute;
  inset: 0;
  background:
    radial-gradient(ellipse 70% 55% at 12% 8%, rgba(99, 102, 241, 0.24), transparent 60%),
    radial-gradient(ellipse 65% 50% at 88% 18%, rgba(59, 130, 246, 0.2), transparent 55%),
    radial-gradient(ellipse 55% 45% at 72% 88%, rgba(167, 139, 250, 0.18), transparent 50%),
    linear-gradient(160deg, #eef2ff 0%, #f8fafc 42%, #f0f9ff 100%);
}

.app-splash-bg::before {
  content: "";
  position: absolute;
  inset: 0;
  opacity: 0.45;
  background-image:
    linear-gradient(rgba(148, 163, 184, 0.12) 1px, transparent 1px),
    linear-gradient(90deg, rgba(148, 163, 184, 0.12) 1px, transparent 1px);
  background-size: 28px 28px;
  mask-image: radial-gradient(ellipse 85% 75% at 50% 45%, #000 20%, transparent 100%);
}

.app-splash-inner {
  position: relative;
  z-index: 1;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  gap: 10px;
  width: min(320px, 100%);
  margin: 0 auto;
  text-align: center;
  animation: app-splash-enter 0.55s cubic-bezier(0.22, 1, 0.36, 1) both;
}

.app-splash-graphic {
  position: relative;
  width: 96px;
  height: 80px;
  margin: 0 auto 6px;
}

.app-splash-node {
  position: absolute;
  display: flex;
  align-items: center;
  justify-content: center;
}

.app-splash-node--root {
  top: 0;
  left: 50%;
  transform: translateX(-50%);
}

.app-splash-node--left {
  left: 50%;
  bottom: 0;
  transform: translateX(calc(-50% - 30px));
}

.app-splash-node--right {
  left: 50%;
  bottom: 0;
  transform: translateX(calc(-50% + 30px));
}

.app-splash-node-core {
  display: block;
  border-radius: 999px;
  background: linear-gradient(145deg, #60a5fa, #6366f1);
  box-shadow:
    0 0 0 4px rgba(255, 255, 255, 0.92),
    0 8px 20px rgba(59, 130, 246, 0.28);
}

.app-splash-node--root .app-splash-node-core {
  width: 18px;
  height: 18px;
  animation: app-splash-pulse 1.6s ease-in-out infinite;
}

.app-splash-node--child .app-splash-node-core {
  width: 12px;
  height: 12px;
  opacity: 0.92;
}

.app-splash-node--left .app-splash-node-core {
  animation: app-splash-pulse 1.6s ease-in-out 0.35s infinite;
}

.app-splash-node--right .app-splash-node-core {
  animation: app-splash-pulse 1.6s ease-in-out 0.7s infinite;
}

.app-splash-branch {
  position: absolute;
  height: 2px;
  border-radius: 999px;
  background: linear-gradient(90deg, rgba(99, 102, 241, 0.15), rgba(59, 130, 246, 0.75), rgba(99, 102, 241, 0.15));
  background-size: 200% 100%;
  transform-origin: center top;
  animation: app-splash-branch-flow 1.4s ease-in-out infinite;
}

.app-splash-branch--left {
  top: 16px;
  left: 50%;
  width: 42px;
  transform: rotate(42deg);
  transform-origin: 0 50%;
}

.app-splash-branch--right {
  top: 16px;
  left: 50%;
  width: 42px;
  transform: rotate(-42deg);
  transform-origin: 0 50%;
}

.app-splash-tagline {
  margin: 10px 0 0;
  width: 100%;
  font-size: 13px;
  font-weight: 500;
  line-height: 1.4;
  color: #6b7280;
  letter-spacing: 0.01em;
}

.app-splash-brand {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 8px;
  width: 100%;
}

.app-splash-icon {
  font-size: 22px;
  line-height: 1;
  animation: app-splash-icon-float 2.4s ease-in-out infinite;
}

.app-splash-title {
  font-size: 22px;
  font-weight: 700;
  letter-spacing: -0.02em;
  color: #1e293b;
}

.app-splash-version {
  margin: 6px 0 0;
  width: 100%;
  font-size: 11px;
  font-weight: 400;
  line-height: 1.35;
  color: #94a3b8;
}

.app-splash-version .app-project-version {
  font-weight: 500;
  color: #a8b4c4;
  font-variant-numeric: tabular-nums;
}

.app-splash-track {
  width: 132px;
  height: 3px;
  margin: 10px auto 0;
  border-radius: 999px;
  background: rgba(148, 163, 184, 0.22);
  overflow: hidden;
}

.app-splash-track-bar {
  width: 42%;
  height: 100%;
  border-radius: inherit;
  background: linear-gradient(90deg, #93c5fd, #6366f1, #93c5fd);
  background-size: 200% 100%;
  animation: app-splash-track 1.1s ease-in-out infinite;
}

@keyframes app-splash-enter {
  from {
    opacity: 0;
    transform: translateY(10px) scale(0.98);
  }
  to {
    opacity: 1;
    transform: translateY(0) scale(1);
  }
}

@keyframes app-splash-pulse {
  0%,
  100% {
    transform: scale(1);
    box-shadow:
      0 0 0 4px rgba(255, 255, 255, 0.92),
      0 8px 20px rgba(59, 130, 246, 0.22);
  }
  50% {
    transform: scale(1.12);
    box-shadow:
      0 0 0 4px rgba(255, 255, 255, 0.96),
      0 10px 24px rgba(99, 102, 241, 0.36);
  }
}

@keyframes app-splash-branch-flow {
  0%,
  100% {
    opacity: 0.45;
    background-position: 100% 0;
  }
  50% {
    opacity: 1;
    background-position: 0 0;
  }
}

@keyframes app-splash-icon-float {
  0%,
  100% {
    transform: translateY(0);
  }
  50% {
    transform: translateY(-3px);
  }
}

@keyframes app-splash-track {
  0% {
    transform: translateX(-120%);
    background-position: 0 0;
  }
  100% {
    transform: translateX(280%);
    background-position: 100% 0;
  }
}

@media (prefers-reduced-motion: reduce) {
  .app-splash-inner,
  .app-splash-node-core,
  .app-splash-branch,
  .app-splash-icon,
  .app-splash-track-bar {
    animation: none !important;
  }

  .app-splash {
    transition: opacity 0.2s ease, visibility 0.2s ease;
  }
}

.app {
  display: grid;
  grid-template-columns: var(--sidebar-width) var(--sidebar-resize-bar-width) 1fr;
  grid-template-rows: auto minmax(0, 1fr) auto;
  height: 100dvh;
  height: 100vh;
  min-height: 100vh;
  max-height: 100dvh;
  max-height: 100vh;
  overflow: hidden;
}

/* Скрываем полосы только в сайдбаре; home-pane и workspace — видимый thin-scroll */
.sidebar,
.sidebar * {
  scrollbar-width: none !important;
  -ms-overflow-style: none !important;
}

.sidebar::-webkit-scrollbar,
.sidebar *::-webkit-scrollbar {
  display: none !important;
  width: 0 !important;
  height: 0 !important;
  background: transparent !important;
}

.home-pane,
.agent-canvas-pane,
.workspace-pane,
.workspace-pane .doc-slab-content,
.workspace-pane .doc-aside-panel-scroll,
.workspace-pane .node-overview,
.workspace-pane .workspace-scroll-host,
.workspace-pane .file-content-preview,
.workspace-pane .editor-code-wrap,
.workspace-pane .editor-wysiwyg-wrap,
.workspace-pane .storage-slot-tree,
.workspace-pane .storage-slot-tree-list,
.workspace-pane .media-section-tree,
.workspace-pane .media-section-tree-list {
  scrollbar-width: thin;
  scrollbar-color: rgba(71, 85, 105, 0.72) rgba(148, 163, 184, 0.18);
}

.home-pane::-webkit-scrollbar,
.agent-canvas-pane::-webkit-scrollbar,
.workspace-pane::-webkit-scrollbar,
.workspace-pane .doc-slab-content::-webkit-scrollbar,
.workspace-pane .doc-aside-panel-scroll::-webkit-scrollbar,
.workspace-pane .node-overview::-webkit-scrollbar,
.workspace-pane .workspace-scroll-host::-webkit-scrollbar,
.workspace-pane .file-content-preview::-webkit-scrollbar,
.workspace-pane .editor-code-wrap::-webkit-scrollbar,
.workspace-pane .editor-wysiwyg-wrap::-webkit-scrollbar,
.workspace-pane .storage-slot-tree::-webkit-scrollbar,
.workspace-pane .storage-slot-tree-list::-webkit-scrollbar,
.workspace-pane .media-section-tree::-webkit-scrollbar,
.workspace-pane .media-section-tree-list::-webkit-scrollbar {
  width: 8px;
  height: 8px;
}

.home-pane::-webkit-scrollbar-thumb,
.agent-canvas-pane::-webkit-scrollbar-thumb,
.workspace-pane::-webkit-scrollbar-thumb,
.workspace-pane .doc-slab-content::-webkit-scrollbar-thumb,
.workspace-pane .doc-aside-panel-scroll::-webkit-scrollbar-thumb,
.workspace-pane .node-overview::-webkit-scrollbar-thumb,
.workspace-pane .workspace-scroll-host::-webkit-scrollbar-thumb,
.workspace-pane .file-content-preview::-webkit-scrollbar-thumb,
.workspace-pane .editor-code-wrap::-webkit-scrollbar-thumb,
.workspace-pane .editor-wysiwyg-wrap::-webkit-scrollbar-thumb,
.workspace-pane .storage-slot-tree::-webkit-scrollbar-thumb,
.workspace-pane .storage-slot-tree-list::-webkit-scrollbar-thumb,
.workspace-pane .media-section-tree::-webkit-scrollbar-thumb,
.workspace-pane .media-section-tree-list::-webkit-scrollbar-thumb {
  background: rgba(71, 85, 105, 0.58);
  border-radius: 999px;
  border: 2px solid rgba(248, 250, 252, 0.88);
  background-clip: padding-box;
}

.home-pane::-webkit-scrollbar-thumb:hover,
.agent-canvas-pane::-webkit-scrollbar-thumb:hover,
.workspace-pane::-webkit-scrollbar-thumb:hover,
.workspace-pane .doc-slab-content::-webkit-scrollbar-thumb:hover,
.workspace-pane .doc-aside-panel-scroll::-webkit-scrollbar-thumb:hover,
.workspace-pane .node-overview::-webkit-scrollbar-thumb:hover,
.workspace-pane .workspace-scroll-host::-webkit-scrollbar-thumb:hover,
.workspace-pane .file-content-preview::-webkit-scrollbar-thumb:hover,
.workspace-pane .editor-code-wrap::-webkit-scrollbar-thumb:hover,
.workspace-pane .editor-wysiwyg-wrap::-webkit-scrollbar-thumb:hover,
.workspace-pane .storage-slot-tree::-webkit-scrollbar-thumb:hover,
.workspace-pane .storage-slot-tree-list::-webkit-scrollbar-thumb:hover,
.workspace-pane .media-section-tree::-webkit-scrollbar-thumb:hover,
.workspace-pane .media-section-tree-list::-webkit-scrollbar-thumb:hover {
  background: rgba(51, 65, 85, 0.78);
  background-clip: padding-box;
}

.app.home-view .workspace-pane {
  display: none;
}

.app.home-view.app-home-discuss-open {
  grid-template-columns:
    var(--sidebar-width)
    var(--sidebar-resize-bar-width)
    minmax(0, 1fr)
    var(--discuss-panel-width, 280px);
}

.app.home-view.app-home-discuss-open .agent-canvas-stack:not(.app-landing-stack) {
  grid-column: 3;
  min-width: 0;
}

.app.home-view.app-home-discuss-open .workspace-pane {
  display: flex !important;
  grid-column: 4;
  grid-row: 2 / 3;
  min-width: 0;
  min-height: 0;
  border-right: 0;
  background: transparent;
}

.app.not-found-view .workspace-pane {
  display: none;
}

.agent-canvas-stack {
  grid-row: 2 / 3;
  grid-column: 3 / -1;
  position: relative;
  min-width: 0;
  min-height: 0;
  display: none;
  flex-direction: column;
  align-items: stretch;
  overflow: hidden;
  box-sizing: border-box;
}

.app.home-view .agent-canvas-stack:not(.app-landing-stack) {
  display: flex;
}

.app.app-landing-view .app-landing-stack {
  display: flex;
  grid-column: 1 / -1;
}

.agent-canvas-stack > .agent-canvas-pane,
.agent-canvas-stack > .app-landing-pane {
  grid-row: auto;
  grid-column: auto;
  flex: 1 1 auto;
  min-height: 0;
}

.agent-canvas-pane {
  grid-row: 2 / 3;
  grid-column: 3 / -1;
  position: relative;
  min-height: 0;
  overflow: auto;
  display: none;
  flex-direction: column;
  align-items: stretch;
  justify-content: flex-start;
  padding: 16px 18px 24px;
  box-sizing: border-box;
}

.agent-canvas-stack > .agent-canvas-pane {
  grid-row: auto;
  grid-column: auto;
}

.app.home-view .agent-canvas-pane:not(.hidden) {
  display: flex;
}

/* Full-screen 404: only the not-found pane, no chrome */
.app.not-found-view {
  grid-template-columns: 1fr;
  grid-template-rows: 1fr;
  overflow: hidden;
}

.app.not-found-view .app-header,
.app.not-found-view .app-footer,
.app.not-found-view #app-footer,
.app.not-found-view .content-search-wrap,
.app.not-found-view .sidebar-shell,
.app.not-found-view .sidebar,
.app.not-found-view .sidebar-resize-bar,
.app.not-found-view .workspace-pane {
  display: none !important;
}

.app.not-found-view .agent-canvas-pane:not(#not-found-pane) {
  display: none !important;
}

.app.not-found-view .agent-canvas-stack:not(.app-landing-stack) {
  display: flex;
  grid-row: 1 / -1;
  grid-column: 1 / -1;
  min-height: 100%;
  height: 100%;
}

.app.not-found-view #not-found-pane.agent-canvas-pane:not(.hidden) {
  display: flex;
  grid-row: auto;
  grid-column: auto;
  flex: 1 1 auto;
  min-height: 0;
  height: auto;
  padding: 0;
  overflow: hidden;
}

.home-pane {
  flex: 1 1 auto;
  min-height: 0;
  align-items: center;
  justify-content: flex-start;
  padding: 32px 24px 40px;
  overflow-x: hidden;
  overflow-y: auto;
  overscroll-behavior: contain;
  -webkit-overflow-scrolling: touch;
}

.home-pane-2 {
  align-items: stretch;
  justify-content: flex-start;
  background: linear-gradient(180deg, #f8fafc 0%, #fff 100%);
}

.home-pane-3 {
  align-items: stretch;
  justify-content: flex-start;
  background: linear-gradient(180deg, #eff6ff 0%, #fff 100%);
}

.home3-content {
  width: 100%;
  margin: 0;
  padding: 0 4px 48px;
  box-sizing: border-box;
  flex: 0 0 auto;
  min-height: 0;
}

.app.app-landing-view {
  grid-template-columns: 1fr;
  grid-template-rows: auto auto auto;
  overflow-x: hidden;
  overflow-y: visible;
  max-width: 100vw;
  height: auto;
  min-height: 100vh;
  max-height: none;
}

.app.app-landing-view .content-search-wrap {
  display: none;
}

.app.app-landing-view .sidebar-shell,
.app.app-landing-view .sidebar,
.app.app-landing-view .sidebar-resize-bar {
  display: none !important;
}

.app.app-landing-view .app-footer-ideas-wrap,
.app.app-landing-view .app-footer-journal-wrap,
.app.app-landing-view .app-footer-voice-cmd-wrap {
  display: none !important;
}

.app-landing-pane {
  min-height: 0;
  min-width: 0;
  overflow: visible;
  display: none;
  flex-direction: column;
  align-items: stretch;
  padding: 0;
  background: transparent;
  position: relative;
}

.app-landing-stack {
  grid-row: 2 / 3;
  grid-column: 1 / -1;
}

/* Workspace mode: не крутить бесконечные landing-анимации в фоне */
.app-landing-pane.hidden,
.app-landing-pane.hidden *,
.app:not(.app-landing-view) .app-landing-pane,
.app:not(.app-landing-view) .app-landing-pane * {
  animation-play-state: paused !important;
}

.app-landing-pane--grid {
  background: transparent;
  color: #0f172a;
}

.app-landing-pane--grid.is-landing-bg-sky {
  color: #e2e8f0;
}

.app-landing-pane--grid.is-landing-bg-sky .app-landing-focus-page-title {
  color: #f8fafc;
}

.app-landing-pane--grid.is-landing-bg-sky .app-landing-focus-page-subtitle {
  color: rgba(148, 163, 184, 0.92);
}

.app-landing-pane--grid.is-landing-bg-sky .app-landing-focus-agent-section {
  border-color: rgba(148, 163, 184, 0.28);
  background: rgba(15, 23, 42, 0.55);
  box-shadow: 0 8px 28px rgba(2, 6, 23, 0.35);
}

.app-landing-pane--grid.is-landing-bg-sky .app-landing-focus-agent-name {
  color: #f8fafc;
}

.app-landing-pane--grid.is-landing-bg-sky .app-landing-focus-agent-hint {
  color: rgba(148, 163, 184, 0.88);
}

.app-landing-pane--grid.is-landing-bg-sky .app-landing-focus-agent-count {
  color: #c7d2fe;
  background: rgba(99, 102, 241, 0.22);
  border-color: rgba(129, 140, 248, 0.35);
}

.app-landing-pane--grid.is-landing-bg-sky .app-landing-focus-card {
  border-color: rgba(148, 163, 184, 0.28);
  background: linear-gradient(165deg, rgba(15, 23, 42, 0.88), rgba(49, 46, 129, 0.38));
  box-shadow: 0 8px 24px rgba(2, 6, 23, 0.32);
}

.app-landing-pane--grid.is-landing-bg-sky .app-landing-focus-card:hover {
  border-color: rgba(199, 210, 254, 0.45);
  box-shadow:
    0 12px 32px rgba(99, 102, 241, 0.28),
    0 0 0 1px rgba(199, 210, 254, 0.15);
}

.app-landing-pane--grid.is-landing-bg-sky .app-landing-focus-card-title {
  color: #f8fafc;
}

.app-landing-pane--grid.is-landing-bg-sky .app-landing-focus-card-path {
  color: rgba(148, 163, 184, 0.88);
}

.app-landing-pane--grid.is-landing-bg-sky .app-landing-focus-empty-wrap {
  border-color: rgba(148, 163, 184, 0.32);
  background: rgba(15, 23, 42, 0.45);
}

.app-landing-pane--grid.is-landing-bg-sky .app-landing-focus-empty {
  color: rgba(226, 232, 240, 0.92);
}

.app-landing-pane--grid.is-landing-bg-sky .app-landing-focus-empty-hint {
  color: rgba(148, 163, 184, 0.88);
}

.app.app-landing-view .app-landing-pane:not(.hidden) {
  display: flex;
  position: relative;
  z-index: 2;
  min-height: auto;
}

.app.app-landing-view .workspace-pane,
.app.app-landing-view .agent-canvas-pane {
  display: none !important;
}

.app.app-landing-view.app-landing-discuss-open {
  grid-template-columns: minmax(0, 1fr) var(--discuss-panel-width, 280px);
}

.app.app-landing-view.app-landing-discuss-open .app-landing-stack {
  grid-column: 1;
  min-width: 0;
}

.app.app-landing-view.app-landing-discuss-open .workspace-pane {
  display: flex !important;
  grid-column: 2;
  grid-row: 2 / 3;
  min-width: 0;
  min-height: 0;
  border-right: 0;
  background: transparent;
}

.app.app-landing-view.app-landing-discuss-open .workspace-pane .workspace-scroll-chrome-store,
.app.home-view.app-home-discuss-open .workspace-pane .workspace-scroll-chrome-store {
  display: none !important;
}

.app.app-landing-view.app-landing-discuss-open .workspace-pane .workspace-body > :not(#discuss-aside),
.app.home-view.app-home-discuss-open .workspace-pane .workspace-body > :not(#discuss-aside) {
  display: none !important;
}

.app.app-landing-view.app-landing-discuss-open .workspace-pane .workspace-body,
.app.home-view.app-home-discuss-open .workspace-pane .workspace-body {
  min-height: 100%;
}

.app.app-landing-view.app-landing-discuss-open .workspace-pane .discuss-aside,
.app.home-view.app-home-discuss-open .workspace-pane .discuss-aside {
  flex: 1 1 auto;
  width: 100%;
  max-width: none;
  min-width: 0;
}

.app-landing-hero {
  position: relative;
  overflow: hidden;
  min-height: clamp(220px, 32vh, 320px);
  display: flex;
  align-items: center;
  justify-content: center;
  background:
    radial-gradient(ellipse 80% 60% at 50% 120%, rgba(30, 27, 75, 0.9), transparent 70%),
    linear-gradient(180deg, #030712 0%, #0f172a 42%, #1e1b4b 100%);
}

.app-landing-sky {
  position: absolute;
  inset: 0;
  pointer-events: none;
  background: linear-gradient(180deg, #030712 0%, #0f172a 42%, #1e1b4b 100%);
}

.app-landing-pane.is-landing-bg-light .app-landing-nebula,
.app-landing-pane.is-landing-bg-light .app-landing-stars,
.app-landing-pane.is-landing-bg-light .app-landing-meteors {
  display: none;
}

.app-landing-pane.is-landing-bg-light .app-landing-sky {
  background: linear-gradient(180deg, #f0f9ff 0%, #e0f2fe 38%, #f8fafc 100%);
}

.app-landing-nebula {
  position: absolute;
  inset: 0;
  opacity: 0.85;
  background:
    radial-gradient(ellipse 55% 45% at 18% 35%, rgba(99, 102, 241, 0.35), transparent 60%),
    radial-gradient(ellipse 45% 40% at 82% 28%, rgba(59, 130, 246, 0.28), transparent 55%),
    radial-gradient(ellipse 50% 35% at 62% 78%, rgba(167, 139, 250, 0.22), transparent 50%);
}

.app-landing-stars {
  position: absolute;
  inset: 0;
  background-repeat: repeat;
}

.app-landing-stars--far {
  background-image:
    radial-gradient(1px 1px at 20px 30px, rgba(255, 255, 255, 0.55), transparent),
    radial-gradient(1px 1px at 140px 80px, rgba(255, 255, 255, 0.35), transparent),
    radial-gradient(1px 1px at 260px 160px, rgba(255, 255, 255, 0.45), transparent),
    radial-gradient(1px 1px at 380px 40px, rgba(255, 255, 255, 0.3), transparent);
  background-size: 400px 200px;
  animation: app-landing-twinkle 8s ease-in-out infinite alternate;
}

.app-landing-stars--mid {
  background-image:
    radial-gradient(1.5px 1.5px at 60px 90px, rgba(255, 255, 255, 0.75), transparent),
    radial-gradient(1.5px 1.5px at 180px 30px, rgba(255, 255, 255, 0.5), transparent),
    radial-gradient(1px 1px at 300px 120px, rgba(255, 255, 255, 0.65), transparent),
    radial-gradient(1.5px 1.5px at 420px 70px, rgba(255, 255, 255, 0.4), transparent);
  background-size: 480px 180px;
  animation: app-landing-twinkle 5s ease-in-out infinite alternate-reverse;
}

.app-landing-stars--near {
  background-image:
    radial-gradient(2px 2px at 40px 50px, rgba(255, 255, 255, 0.9), transparent),
    radial-gradient(2px 2px at 160px 140px, rgba(255, 255, 255, 0.7), transparent),
    radial-gradient(1.5px 1.5px at 280px 60px, rgba(255, 255, 255, 0.85), transparent),
    radial-gradient(2px 2px at 360px 110px, rgba(255, 255, 255, 0.6), transparent);
  background-size: 420px 220px;
  animation: app-landing-twinkle 3.5s ease-in-out infinite alternate;
}

.app-landing-meteors {
  position: absolute;
  inset: 0;
  overflow: hidden;
}

.app-landing-meteor {
  position: absolute;
  top: 0;
  left: 0;
  width: 140px;
  height: 2px;
  border-radius: 999px;
  background: linear-gradient(90deg, rgba(255, 255, 255, 0), rgba(255, 255, 255, 0.95) 55%, rgba(199, 210, 254, 0.4));
  box-shadow: 0 0 8px rgba(199, 210, 254, 0.8);
  opacity: 0;
  transform: rotate(-32deg);
  animation: app-landing-meteor 7s linear infinite;
}

.app-landing-meteor:nth-child(1) {
  top: 12%;
  left: 68%;
  animation-delay: 0.5s;
  animation-duration: 5.5s;
}

.app-landing-meteor:nth-child(2) {
  top: 28%;
  left: 42%;
  animation-delay: 2.8s;
  animation-duration: 6.2s;
}

.app-landing-meteor:nth-child(3) {
  top: 8%;
  left: 22%;
  animation-delay: 5.1s;
  animation-duration: 5s;
}

.app-landing-meteor:nth-child(4) {
  top: 38%;
  left: 78%;
  animation-delay: 7.4s;
  animation-duration: 6.8s;
}

@keyframes app-landing-twinkle {
  from { opacity: 0.55; }
  to { opacity: 1; }
}

@keyframes app-landing-meteor {
  0% {
    opacity: 0;
    transform: translate3d(0, 0, 0) rotate(-32deg);
  }
  6% {
    opacity: 1;
  }
  18% {
    opacity: 0;
    transform: translate3d(-320px, 320px, 0) rotate(-32deg);
  }
  100% {
    opacity: 0;
    transform: translate3d(-320px, 320px, 0) rotate(-32deg);
  }
}

.app-landing-hero-inner {
  position: relative;
  z-index: 1;
  width: min(1080px, 100%);
  padding: 32px 48px;
  text-align: center;
}

.app-landing-hero-eyebrow {
  margin: 0 0 10px;
  font-size: 11px;
  font-weight: 600;
  letter-spacing: 0.14em;
  text-transform: uppercase;
  color: rgba(199, 210, 254, 0.85);
}

.app-landing-hero-title {
  margin: 0 0 10px;
  font-size: clamp(2rem, 5vw, 3rem);
  font-weight: 800;
  letter-spacing: -0.03em;
  line-height: 1.05;
  background: linear-gradient(135deg, #fff 0%, #c7d2fe 45%, #93c5fd 100%);
  -webkit-background-clip: text;
  background-clip: text;
  color: transparent;
}

.app-landing-hero-lead {
  margin: 0 auto;
  max-width: 520px;
  font-size: 15px;
  line-height: 1.6;
  color: rgba(226, 232, 240, 0.82);
}

.app-landing-hero-tagline {
  margin: 4px auto 0;
  max-width: 520px;
  font-size: 13px;
  line-height: 1.5;
  color: rgba(203, 213, 225, 0.72);
}

.app-landing-body {
  flex: 1;
  min-width: 0;
  padding: 32px 48px 56px;
  overflow-x: hidden;
  position: relative;
  z-index: 1;
}


.app-landing-pane.is-screensaver .app-landing-body {
  position: relative;
  z-index: 1;
  flex: 1;
  min-height: calc(100vh - 56px);
  padding: 20px 28px 28px;
  background: transparent;
}

.app-landing-pane.is-screensaver .app-landing-inner {
  width: min(1280px, 100%);
  min-height: calc(100vh - 120px);
  gap: 16px;
}

.agent-focus-panel {
  display: flex;
  flex-direction: column;
  gap: 14px;
  min-width: 0;
  width: 100%;
}

.agent-focus-panel.hidden {
  display: none;
}

.agent-focus-head {
  display: flex;
  flex-direction: column;
  gap: 4px;
}

.agent-focus-head--compact {
  flex-direction: row;
  align-items: baseline;
  justify-content: space-between;
  gap: 8px;
}

.agent-focus-title {
  margin: 0;
  font-size: 1.125rem;
  font-weight: 700;
  color: #312e81;
  letter-spacing: -0.02em;
}

.agent-focus-sub {
  margin: 0;
  font-size: 13px;
  line-height: 1.5;
  color: #64748b;
}

.agent-focus-sub code {
  font-size: 12px;
}

.agent-focus-panel--landing,
.app-landing-focus,
.app-landing-focus-strip {
  display: flex;
  flex-direction: column;
  gap: 12px;
  padding: 0;
  border: 0;
  border-radius: 0;
  background: transparent;
  box-shadow: none;
  min-width: 0;
  max-width: 100%;
  overflow: hidden;
  box-sizing: border-box;
}

.app-landing-main-topics {
  position: relative;
  z-index: 35;
  min-width: 0;
  padding: 0;
  border: 0;
  background: transparent;
  box-shadow: none;
}

.app-landing-orbit-focus-panel {
  position: relative;
  z-index: 4;
  flex: 0 0 auto;
  margin: 0;
  padding: 0;
  border: 0;
  background: transparent;
  overflow: hidden;
}

.app-landing-orbit-focus-panel-inner {
  box-sizing: border-box;
  min-height: 0;
  padding: 10px 12px 12px;
  border: 0;
  border-radius: 16px;
  background: rgba(255, 255, 255, 0.28);
  backdrop-filter: blur(8px);
}

.app-landing-orbit-stack {
  display: flex;
  flex-direction: column;
  gap: 0;
  flex: 1;
  min-width: 0;
}

.app-landing-orbit-stack.hidden {
  display: none;
}

.app-landing-orbit-stack.has-focus-panel {
  border: 1px solid rgba(148, 163, 184, 0.26);
  border-radius: 16px;
  overflow: hidden;
  box-shadow: 0 10px 28px rgba(15, 23, 42, 0.06);
}

.app-landing-orbit-stack.has-focus-panel .app-landing-orbit {
  border-bottom-left-radius: 0;
  border-bottom-right-radius: 0;
  border: 0;
  box-shadow: none;
}

.app-landing-orbit-stack.has-focus-panel .app-landing-orbit-focus-panel-inner {
  border-top: 1px solid rgba(148, 163, 184, 0.1);
  border-top-left-radius: 0;
  border-top-right-radius: 0;
}

.app-landing-orbit-focus-panel-toolbar,
.app-landing-main-topics-head {
  display: flex;
  align-items: center;
  justify-content: stretch;
  gap: 10px;
  margin: 0 0 8px;
  width: 100%;
  min-height: 36px;
  min-width: 0;
}

.app-landing-orbit-focus-panel-title {
  flex: 0 0 auto;
  padding-right: 10px;
  margin-right: 2px;
  border-right: 1px solid rgba(148, 163, 184, 0.28);
  font-size: 11px;
  font-weight: 700;
  letter-spacing: 0.04em;
  text-transform: uppercase;
  color: #64748b;
  white-space: nowrap;
  line-height: 1.2;
}

.app-landing-orbit-focus-panel .app-landing-main-topics-search {
  width: 100%;
  max-width: none;
  margin: 0;
}

.app-landing-main-topics-search {
  display: flex;
  align-items: center;
  gap: 8px;
  flex: 1 1 auto;
  min-width: 0;
  padding: 0 10px 0 12px;
  border-radius: 999px;
  border: 1px solid rgba(148, 163, 184, 0.28);
  background: rgba(255, 255, 255, 0.72);
  box-shadow: 0 4px 14px rgba(15, 23, 42, 0.05);
  transition:
    border-color 0.18s ease,
    box-shadow 0.18s ease,
    background 0.18s ease;
}

.app-landing-main-topics-search-count {
  flex: 0 0 auto;
  min-width: 22px;
  margin-left: 2px;
  padding: 2px 0 2px 10px;
  border-left: 1px solid rgba(148, 163, 184, 0.28);
  color: #4f46e5;
  font-size: 11px;
  font-weight: 700;
  font-variant-numeric: tabular-nums;
  line-height: 1.3;
  text-align: center;
  white-space: nowrap;
}

.app-landing-main-topics-search-count.hidden {
  display: none;
}

.app-landing-main-topics-search:focus-within {
  border-color: rgba(99, 102, 241, 0.45);
  background: rgba(255, 255, 255, 0.92);
  box-shadow:
    0 0 0 3px rgba(99, 102, 241, 0.12),
    0 6px 18px rgba(99, 102, 241, 0.12);
}

.app-landing-main-topics-search-icon {
  flex: 0 0 auto;
  font-size: 14px;
  line-height: 1;
  color: #94a3b8;
}

.app-landing-main-topics-search-input {
  flex: 1 1 auto;
  width: 100%;
  min-width: 0;
  border: 0;
  background: transparent;
  color: #0f172a;
  padding: 7px 0;
  font-size: 12px;
}

.app-landing-main-topics-search-input::placeholder {
  color: #94a3b8;
}

.app-landing-main-topics-search-input:focus {
  outline: none;
}

.app-landing-main-topics-search-input::-webkit-search-cancel-button {
  -webkit-appearance: none;
  appearance: none;
  display: none;
}

.app-landing-main-topics-search-clear {
  flex: 0 0 auto;
  width: 20px;
  height: 20px;
  margin-right: -2px;
  border: 0;
  border-radius: 999px;
  background: rgba(148, 163, 184, 0.28);
  color: #475569;
  font-size: 15px;
  line-height: 1;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  cursor: pointer;
  padding: 0;
  transition: background 0.16s ease, color 0.16s ease;
}

.app-landing-main-topics-search-clear:hover,
.app-landing-main-topics-search-clear:focus-visible {
  background: rgba(99, 102, 241, 0.18);
  color: #4338ca;
}

.app-landing-main-topics-search-clear.hidden {
  display: none;
}

.app-landing-main-topics-carousel {
  position: relative;
  display: flex;
  align-items: center;
  gap: 4px;
  min-width: 0;
  overflow: visible;
}

.app-landing-main-topics-nav {
  flex: 0 0 auto;
  width: 28px;
  height: 28px;
  border: 1px solid rgba(148, 163, 184, 0.28);
  border-radius: 999px;
  background: rgba(255, 255, 255, 0.82);
  color: #475569;
  font-size: 18px;
  line-height: 1;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  cursor: pointer;
  box-shadow: 0 4px 12px rgba(15, 23, 42, 0.08);
  transition:
    transform 0.16s ease,
    border-color 0.16s ease,
    background 0.16s ease,
    opacity 0.16s ease;
}

.app-landing-main-topics-nav:hover,
.app-landing-main-topics-nav:focus-visible {
  border-color: rgba(99, 102, 241, 0.45);
  background: #fff;
  color: #4338ca;
  transform: scale(1.05);
}

.app-landing-main-topics-nav:disabled,
.app-landing-main-topics-nav.hidden {
  opacity: 0;
  pointer-events: none;
}

.app-landing-main-topics-board {
  display: block;
  width: 100%;
  min-width: 0;
}

.app-landing-main-topics-board .app-landing-main-topics-scroller {
  display: block;
  overflow: visible;
  padding-inline: 0;
}

.app-landing-orbit-focus-panel:has(.app-landing-main-topics-board) {
  overflow: visible;
}

.app-landing-main-topics-board .app-landing-main-topics-nav {
  display: none !important;
}

.app-landing-orbit-focus-panel .app-landing-main-topics-scroller {
  flex: 1 1 auto;
  min-width: 0;
  min-height: 0;
  width: 100%;
  padding: 0;
  overflow: hidden;
}

.app-landing-orbit-focus-panel .app-landing-main-topics-board {
  margin-inline: -12px;
  width: calc(100% + 24px);
}

.app-landing-orbit-focus-panel .app-landing-main-topics-track--board {
  --board-cell-light: #f8fafc;
  --board-cell-dark: #cbd5e1;
  --board-frame: rgba(71, 85, 105, 0.42);
  display: grid;
  grid-template-columns: repeat(var(--board-cols, 12), minmax(0, 1fr));
  grid-template-rows: repeat(var(--board-rows, 3), var(--board-cell-size, 106px));
  grid-auto-flow: row;
  gap: 0;
  width: 100%;
  max-width: 100%;
  margin: 0;
  padding: 0;
  box-sizing: border-box;
  border-top: 2px solid var(--board-frame);
  box-shadow: inset 0 0 0 1px rgba(255, 255, 255, 0.45);
}

.app-landing-main-topics-track--board .app-landing-main-topic-card,
.app-landing-main-topics-track--board .app-landing-board-cell--empty {
  width: 100%;
  max-width: none;
  height: var(--board-cell-size, 106px);
  min-height: 0;
  margin: 0;
  border: 0;
  border-radius: 0;
  background: var(--board-cell-light);
  box-shadow: inset -1px -1px 0 rgba(71, 85, 105, 0.22);
  box-sizing: border-box;
  transform: none;
}

.app-landing-main-topics-track--board .app-landing-main-topic-card {
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  gap: 1px;
  padding: 3px 4px 2px;
  scroll-snap-align: unset;
  cursor: pointer;
  overflow: hidden;
  text-align: center;
  z-index: 1;
}

.app-landing-main-topics-track--board .app-landing-main-topic-card-stage {
  flex: 1 1 auto;
  display: flex;
  align-items: center;
  justify-content: center;
  width: 100%;
  min-height: 0;
  max-height: calc(var(--board-cell-size, 106px) * 0.54);
  padding: 0;
}

.app-landing-main-topics-track--board .app-landing-main-topic-card-window {
  position: relative;
  flex: 0 0 auto;
  width: min(calc(var(--board-cell-size, 106px) - 28px), 52px);
  height: min(calc(var(--board-cell-size, 106px) - 28px), 52px);
  max-width: 100%;
  aspect-ratio: 1;
  border: 2px solid color-mix(in srgb, var(--orbit-attention-color, #818cf8) 78%, #ffffff);
  border-radius: 10px;
  background: color-mix(in srgb, var(--orbit-attention-color, #818cf8) 48%, rgba(15, 23, 42, 0.28));
  box-shadow:
    0 6px 16px color-mix(in srgb, var(--orbit-attention-color, #818cf8) 28%, transparent),
    inset 0 0 0 1px rgba(255, 255, 255, 0.14);
  overflow: hidden;
  transition:
    transform 0.2s ease,
    border-color 0.2s ease,
    box-shadow 0.2s ease;
}

.app-landing-main-topics-track--board .app-landing-main-topic-card-id-badge {
  position: absolute;
  top: 2px;
  right: 2px;
  z-index: 3;
  max-width: 46%;
  padding: 1px 5px;
  border: 1px solid rgba(250, 204, 21, 0.72);
  border-radius: 6px;
  background: rgba(15, 23, 42, 0.94);
  color: #fef9c3;
  font-family: ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", monospace;
  font-size: 8px;
  font-weight: 700;
  line-height: 1.25;
  pointer-events: none;
  box-shadow: 0 0 0 1px rgba(15, 23, 42, 0.45);
}

.app-landing-main-topics-track--board .app-landing-main-topic-card-foot {
  flex: 0 0 auto;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: flex-end;
  width: 100%;
  min-width: 0;
  max-height: calc(var(--board-cell-size, 106px) * 0.42);
  margin: 0;
  padding: 0 2px 1px;
  pointer-events: none;
  box-sizing: border-box;
}

.app-landing-main-topics-track--board .app-landing-main-topic-card-label {
  display: -webkit-box;
  width: auto;
  max-width: min(200px, calc(var(--board-cell-size, 106px) + 108px));
  box-sizing: border-box;
  padding: 3px 8px;
  border: 1px solid rgba(255, 255, 255, 0.92);
  border-radius: 10px;
  background: rgba(248, 250, 252, 0.96);
  color: #334155;
  font-size: 11px;
  font-weight: 600;
  line-height: 1.2;
  text-align: center;
  overflow: hidden;
  text-overflow: ellipsis;
  -webkit-line-clamp: 2;
  -webkit-box-orient: vertical;
  word-break: break-word;
  overflow-wrap: anywhere;
  pointer-events: none;
  box-shadow:
    0 4px 14px rgba(2, 6, 23, 0.22),
    inset 0 0 0 1px rgba(255, 255, 255, 0.35);
}

.app-landing-main-topics-track--board .app-landing-main-topic-card:hover .app-landing-main-topic-card-window,
.app-landing-main-topics-track--board .app-landing-main-topic-card:focus-visible .app-landing-main-topic-card-window,
.app-landing-main-topics-track--board
  .app-landing-main-topic-card.is-storage-slot-highlighted
  .app-landing-main-topic-card-window {
  transform: scale(1.04);
  border-color: color-mix(
    in srgb,
    var(--landing-storage-slot-color, var(--orbit-attention-color, #818cf8)) 82%,
    #ffffff
  );
  box-shadow:
    0 0 0 2px color-mix(in srgb, var(--landing-storage-slot-color, #6366f1) 45%, #ffffff),
    0 0 18px color-mix(in srgb, var(--landing-storage-slot-color, #6366f1) 55%, transparent),
    0 6px 16px rgba(15, 23, 42, 0.22);
}

.app-landing-main-topics-track--board .app-landing-main-topic-card:hover .app-landing-main-topic-card-window:not(:has(img)),
.app-landing-main-topics-track--board .app-landing-main-topic-card:focus-visible .app-landing-main-topic-card-window:not(:has(img)),
.app-landing-main-topics-track--board
  .app-landing-main-topic-card.is-storage-slot-highlighted
  .app-landing-main-topic-card-window:not(:has(.app-landing-main-topic-card-media img)) {
  background: color-mix(
    in srgb,
    var(--landing-storage-slot-color, var(--orbit-attention-color, #818cf8)) 52%,
    rgba(15, 23, 42, 0.28)
  );
}

.app-landing-main-topics-track--board .app-landing-main-topic-card:hover .app-landing-main-topic-card-media:not(:has(img)),
.app-landing-main-topics-track--board .app-landing-main-topic-card:focus-visible .app-landing-main-topic-card-media:not(:has(img)),
.app-landing-main-topics-track--board
  .app-landing-main-topic-card.is-storage-slot-highlighted
  .app-landing-main-topic-card-media:not(:has(img)) {
  background: linear-gradient(
    145deg,
    color-mix(in srgb, var(--landing-storage-slot-color, var(--orbit-attention-color, #818cf8)) 82%, #0f172a),
    var(--landing-storage-slot-color, var(--orbit-attention-color, #818cf8))
  );
}

.app-landing-main-topics-track--board .app-landing-main-topic-card-window:has(.app-landing-main-topic-card-media img) {
  background: #ffffff;
}

.app-landing-main-topics-track--board .app-landing-main-topic-card.is-active .app-landing-main-topic-card-window {
  border-color: #facc15;
  box-shadow:
    0 0 0 3px rgba(250, 204, 21, 0.22),
    0 0 16px rgba(250, 204, 21, 0.28),
    0 6px 16px rgba(15, 23, 42, 0.2);
}

.app-landing-main-topics-track--board .app-landing-board-cell--empty {
  pointer-events: none;
  position: relative;
}

.app-landing-main-topics-track--board .app-landing-board-cell--empty::after {
  content: "";
  position: absolute;
  inset: 18%;
  border-radius: 4px;
  border: 1px dashed rgba(100, 116, 139, 0.16);
  opacity: 0.85;
}

.app-landing-main-topics-track--board .is-board-cell-dark {
  background: var(--board-cell-dark);
}

.app-landing-main-topics-track--board .is-board-cell-light {
  background: var(--board-cell-light);
}

.app-landing-main-topics-track--board .app-landing-main-topic-card.is-active {
  background: rgba(238, 242, 255, 0.96);
  box-shadow: inset 0 0 0 2px rgba(99, 102, 241, 0.5), inset -1px -1px 0 rgba(71, 85, 105, 0.22);
  z-index: 1;
}

.app-landing-main-topics-track--board .app-landing-main-topic-card-media {
  width: 100%;
  height: 100%;
  border: 0;
  border-radius: 8px;
  box-shadow: none;
  background: #ffffff;
}

.app-landing-main-topics-track--board .app-landing-main-topic-card-media:not(:has(img)) {
  background: linear-gradient(
    145deg,
    color-mix(in srgb, var(--orbit-attention-color, #818cf8) 82%, #0f172a),
    var(--orbit-attention-color, #818cf8)
  );
}

.app-landing-main-topics-track--board .app-landing-main-topic-card.is-attention-dimmed {
  opacity: 0.42;
  filter: grayscale(0.35);
}

.app-landing-main-topics-track--board .app-landing-main-topic-card.is-storage-slot-dimmed {
  opacity: 0.36;
  filter: grayscale(0.45);
}

.app-landing-main-topics-track--board .app-landing-main-topic-card.is-storage-slot-highlighted {
  z-index: 2;
}

.app-landing-main-topics-track--board .app-landing-main-topic-card.is-attention-highlighted .app-landing-main-topic-card-window {
  box-shadow:
    0 0 0 2px color-mix(in srgb, var(--orbit-attention-color, #818cf8) 55%, #ffffff),
    0 0 16px color-mix(in srgb, var(--orbit-attention-color, #818cf8) 55%, transparent),
    0 6px 16px color-mix(in srgb, var(--orbit-attention-color, #818cf8) 28%, transparent);
}

.app-landing-main-topics-track--board .app-landing-main-topic-card-media::before {
  display: none;
}

.app-landing-main-topics-track--board .app-landing-main-topic-card-media img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  border-radius: 8px;
  background: #ffffff;
}

.app-landing-main-topics-track--board .app-landing-main-topic-card-emoji,
.app-landing-main-topics-track--board .app-landing-main-topic-card-fallback {
  font-size: clamp(14px, 2.5vw, 18px);
}

.app-landing-main-topics-track--board .app-landing-main-topic-card-path {
  width: 100%;
  font-size: 7px;
  line-height: 1.15;
  color: #64748b;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
}

.app-landing-main-topics-track--board .app-landing-main-topic-card.is-active .app-landing-main-topic-card-label {
  border-color: rgba(255, 255, 255, 0.95);
  background: rgba(255, 251, 235, 0.98);
  color: #b45309;
  box-shadow:
    0 4px 14px rgba(245, 158, 11, 0.22),
    inset 0 0 0 1px rgba(255, 255, 255, 0.45);
}

.app-landing-main-topics-track--board .app-landing-main-topic-card.is-registry-off .app-landing-main-topic-card-label {
  background: rgba(248, 250, 252, 0.82);
  border-color: rgba(226, 232, 240, 0.95);
  color: #64748b;
}

.app-landing-main-topics-track--board .app-landing-main-topic-card--skeleton .app-landing-main-topic-card-window {
  border-color: rgba(148, 163, 184, 0.25);
  background: rgba(241, 245, 249, 0.65);
}

.app-landing-main-topics-track--board .app-landing-main-topic-skeleton-media {
  display: block;
  width: 100%;
  height: 100%;
  border-radius: 8px;
}

.app-landing-main-topics-track--board .app-landing-main-topics-empty {
  grid-column: 1 / -1;
  width: 100%;
}

.app-landing-main-topics.hidden {
  display: none;
}

.app-landing-main-topics-scroller {
  display: flex;
  justify-content: center;
  min-width: 0;
  overflow-x: auto;
  overflow-y: visible;
  padding: 6px 0 8px;
  scrollbar-width: thin;
}

.app-landing-main-topics-scroller::-webkit-scrollbar {
  height: 5px;
}

.app-landing-main-topics-scroller::-webkit-scrollbar-thumb {
  border-radius: 999px;
  background: rgba(148, 163, 184, 0.35);
}

.app-landing-main-topics-track {
  display: inline-flex;
  align-items: flex-start;
  justify-content: center;
  flex-wrap: wrap;
  gap: 18px 22px;
  min-width: min-content;
  max-width: 100%;
  margin: 0 auto;
  padding: 4px 6px;
}

.app-landing-main-topic-card {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 7px;
  flex: 0 0 auto;
  width: 84px;
  padding: 4px 0;
  border: 0;
  border-radius: 0;
  background: transparent;
  text-align: center;
  cursor: pointer;
  scroll-snap-align: center;
  position: relative;
  z-index: 1;
}

.app-landing-main-topic-card:hover {
  z-index: 2;
}

.app-landing-main-topic-card.is-active .app-landing-main-topic-card-media {
  transform: scale(1.06);
  box-shadow:
    0 0 0 2px rgba(129, 140, 248, 0.85),
    0 10px 28px rgba(99, 102, 241, 0.28);
}

.app-landing-main-topic-card.is-registry-off {
  opacity: 0.7;
}

.app-landing-main-topic-card-media {
  position: relative;
  flex: 0 0 auto;
  width: 58px;
  height: 58px;
  border-radius: 999px;
  overflow: visible;
  background: radial-gradient(circle at 30% 20%, #eef2ff 0%, #dbeafe 55%, #c7d2fe 100%);
  border: 2px solid rgba(255, 255, 255, 0.92);
  box-shadow:
    0 8px 22px rgba(99, 102, 241, 0.2),
    inset 0 1px 0 rgba(255, 255, 255, 0.65);
  display: flex;
  align-items: center;
  justify-content: center;
  transition:
    box-shadow 0.22s ease,
    transform 0.22s ease;
}

.app-landing-main-topic-card-media::before {
  content: "";
  position: absolute;
  inset: -4px;
  border-radius: 999px;
  border: 2px solid transparent;
  opacity: 0;
  transform: scale(0.94);
  transition: opacity 0.18s ease, border-color 0.18s ease, transform 0.18s ease;
  pointer-events: none;
}

.app-landing-main-topic-card:hover .app-landing-main-topic-card-media,
.app-landing-main-topic-card:focus-visible .app-landing-main-topic-card-media {
  transform: scale(1.1);
  box-shadow:
    0 10px 28px rgba(99, 102, 241, 0.28),
    inset 0 1px 0 rgba(255, 255, 255, 0.75);
}

.app-landing-main-topic-card:hover .app-landing-main-topic-card-media::before,
.app-landing-main-topic-card:focus-visible .app-landing-main-topic-card-media::before {
  opacity: 1;
  transform: scale(1);
  border-color: rgba(250, 204, 21, 0.95);
  box-shadow: 0 0 0 1px rgba(234, 179, 8, 0.35);
}

.app-landing-main-topic-card-media img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  border-radius: 999px;
}

.app-landing-main-topic-card-media .node-cover-icon--in-focus-card,
.app-landing-main-topic-card-fallback,
.app-landing-main-topic-card-emoji {
  border-radius: 999px;
}

.app-landing-main-topic-card-fallback {
  font-size: 14px;
  font-weight: 700;
  color: #4338ca;
}

.app-landing-main-topic-card-emoji {
  font-size: 26px;
  line-height: 1;
}

.app-landing-main-topic-card-copy {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 2px;
  width: 100%;
  min-width: 0;
}

.app-landing-main-topic-card-title {
  width: 100%;
  font-size: 11px;
  font-weight: 600;
  line-height: 1.3;
  color: #1e293b;
  display: -webkit-box;
  -webkit-line-clamp: 2;
  -webkit-box-orient: vertical;
  overflow: hidden;
}

.app-landing-main-topic-card-agent,
.app-landing-main-topic-card-path {
  width: 100%;
  font-size: 9px;
  line-height: 1.2;
  color: #94a3b8;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
}

.app-landing-main-topics-empty {
  flex: 0 0 auto;
  min-width: 180px;
  padding: 10px 14px;
  border-radius: 12px;
  background: rgba(255, 255, 255, 0.55);
  color: #64748b;
  font-size: 12px;
  line-height: 1.4;
  text-align: center;
}

.app-landing-orbit-focus-panel.is-loading .app-landing-main-topics-carousel {
  pointer-events: none;
}

.app-landing-orbit-focus-panel.is-loading .app-landing-main-topics-search-input,
.app-landing-orbit-focus-panel.is-loading .app-landing-main-topics-search-icon,
.app-landing-orbit-focus-panel.is-loading .app-landing-main-topics-search-clear,
.app-landing-orbit-focus-panel.is-loading .app-landing-main-topics-search-count,
.app-landing-orbit-focus-panel.is-loading .app-landing-orbit-focus-panel-title {
  opacity: 0;
  pointer-events: none;
}

.app-landing-orbit-focus-panel.is-loading .app-landing-main-topics-search {
  position: relative;
  overflow: hidden;
  pointer-events: none;
}

.app-landing-orbit-focus-panel.is-loading .app-landing-main-topics-search::after {
  content: "";
  position: absolute;
  inset: 0;
  border-radius: inherit;
  background: rgba(148, 163, 184, 0.16);
}

.app-landing-orbit-focus-panel.is-loading .app-landing-main-topics-search::before {
  content: "";
  position: absolute;
  inset: 0;
  transform: translateX(-100%);
  border-radius: inherit;
  background: linear-gradient(
    90deg,
    transparent 0%,
    rgba(255, 255, 255, 0.08) 42%,
    rgba(255, 255, 255, 0.24) 50%,
    rgba(255, 255, 255, 0.08) 58%,
    transparent 100%
  );
  animation: app-landing-flow-shimmer 1.35s ease-in-out infinite;
}

.app-landing-main-topic-card--skeleton {
  pointer-events: none;
  cursor: default;
  animation: app-landing-main-topics-skeleton-enter 0.42s ease both;
  animation-delay: var(--main-topics-skeleton-delay, 0s);
}

.app-landing-main-topic-card--skeleton:hover {
  transform: none;
}

.app-landing-main-topic-skeleton-media,
.app-landing-main-topic-skeleton-line {
  position: relative;
  display: block;
  overflow: hidden;
  background: rgba(148, 163, 184, 0.16);
}

.app-landing-main-topic-skeleton-media {
  width: 58px;
  height: 58px;
  border-radius: 999px;
  border: 2px solid rgba(255, 255, 255, 0.55);
  box-shadow: 0 8px 20px rgba(99, 102, 241, 0.12);
}

.app-landing-main-topic-skeleton-line {
  height: 10px;
  border-radius: 999px;
}

.app-landing-main-topic-skeleton-line--title {
  width: 72%;
  height: 11px;
}

.app-landing-main-topic-skeleton-line--agent {
  width: 56%;
  height: 8px;
  opacity: 0.85;
}

.app-landing-main-topic-skeleton-media::after,
.app-landing-main-topic-skeleton-line::after {
  content: "";
  position: absolute;
  inset: 0;
  transform: translateX(-100%);
  background: linear-gradient(
    90deg,
    transparent 0%,
    rgba(255, 255, 255, 0.08) 42%,
    rgba(255, 255, 255, 0.22) 50%,
    rgba(255, 255, 255, 0.08) 58%,
    transparent 100%
  );
  animation: app-landing-flow-shimmer 1.35s ease-in-out infinite;
  animation-delay: var(--main-topics-skeleton-delay, 0s);
}

@keyframes app-landing-main-topics-skeleton-enter {
  from {
    opacity: 0;
    transform: translateY(10px);
  }

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

.app-landing-focus-head {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: 12px;
}

.app-landing-focus-head-copy {
  display: flex;
  flex-direction: column;
  gap: 2px;
  min-width: 0;
}

.app-landing-focus-title {
  margin: 0;
  font-size: 12px;
  font-weight: 700;
  letter-spacing: 0.04em;
  text-transform: uppercase;
  color: #475569;
}

.app-landing-focus-sub {
  margin: 0;
  font-size: 12px;
  line-height: 1.4;
  color: #94a3b8;
}

.app-landing-focus-head-actions {
  display: flex;
  align-items: center;
  gap: 8px;
  flex-shrink: 0;
}

.app-landing-focus-count {
  min-width: 1.5em;
  padding: 2px 8px;
  border-radius: 999px;
  font-size: 11px;
  font-weight: 700;
  line-height: 1.4;
  text-align: center;
  color: #4338ca;
  background: rgba(99, 102, 241, 0.1);
}

.app-landing-focus-count.hidden {
  display: none;
}

.app-landing-focus-filters-btn {
  padding: 5px 10px;
  border: 1px solid #e2e8f0;
  border-radius: 999px;
  background: #fff;
  color: #64748b;
  font-size: 12px;
  font-weight: 600;
  cursor: pointer;
  transition: border-color 0.15s ease, color 0.15s ease, background 0.15s ease;
}

.app-landing-focus-filters-btn:hover,
.app-landing-focus-filters-btn.is-active {
  border-color: #c7d2fe;
  background: #eef2ff;
  color: #4338ca;
}

.app-landing-focus-filters-btn.hidden {
  display: none;
}

.app-landing-focus-toolbar {
  display: none;
  flex-direction: column;
  gap: 8px;
  padding: 10px 12px;
  border: 1px solid #e2e8f0;
  border-radius: 12px;
  background: #f8fafc;
}

.app-landing-focus-toolbar:not(.hidden).is-open {
  display: flex;
}

.app-landing-focus-toolbar-count {
  font-size: 11px;
  font-weight: 600;
  color: #64748b;
}

.app-landing-focus-toolbar-controls {
  display: flex;
  align-items: center;
  gap: 8px;
  flex-wrap: wrap;
}

.app-landing-focus-grid,
.app-landing-focus-strip-track {
  min-width: 0;
}

.app-landing-focus-grid {
  display: grid;
  grid-template-columns: repeat(auto-fill, minmax(168px, 1fr));
  gap: 10px;
}

.app-landing-focus-empty {
  margin: 0;
  grid-column: 1 / -1;
  padding: 12px 0;
  font-size: 13px;
  color: #64748b;
}

.app-landing-focus-tile {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  gap: 10px;
  width: 100%;
  padding: 12px;
  border: 1px solid #e2e8f0;
  border-radius: 14px;
  background: #fff;
  text-align: left;
  cursor: pointer;
  transition: border-color 0.15s ease, box-shadow 0.15s ease, transform 0.15s ease;
}

.app-landing-focus-tile--strip {
  flex: 0 0 auto;
  flex-direction: row;
  align-items: center;
  gap: 10px;
  width: min(240px, 72vw);
  min-width: 180px;
  padding: 8px 10px;
  border-radius: 12px;
  scroll-snap-align: start;
}

.app-landing-focus-tile--strip .app-landing-focus-tile-media {
  width: 34px;
  height: 34px;
  border-radius: 8px;
}

.app-landing-focus-tile--strip .app-landing-focus-tile-title {
  -webkit-line-clamp: 1;
}

.app-landing-focus-tile--strip .app-landing-focus-tile-status {
  display: none;
}

.app-landing-focus-tile:hover {
  border-color: #c7d2fe;
  box-shadow: 0 8px 20px rgba(99, 102, 241, 0.08);
  transform: translateY(-1px);
}

.app-landing-focus-tile.is-active {
  border-color: #818cf8;
  box-shadow: 0 0 0 2px rgba(99, 102, 241, 0.14);
}

.app-landing-focus-tile.is-registry-off {
  opacity: 0.72;
}

.app-landing-focus-tile-media {
  flex-shrink: 0;
  width: 40px;
  height: 40px;
  border-radius: 10px;
  overflow: hidden;
  background: linear-gradient(145deg, #e0e7ff, #dbeafe);
  display: flex;
  align-items: center;
  justify-content: center;
}

.app-landing-focus-tile-media img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}

.app-landing-focus-tile-fallback {
  font-size: 12px;
  font-weight: 700;
  color: #4338ca;
}

.app-landing-focus-tile-emoji {
  font-size: 22px;
  line-height: 1;
}

.app-landing-focus-tile-copy {
  display: flex;
  flex-direction: column;
  gap: 3px;
  min-width: 0;
  width: 100%;
}

.app-landing-focus-tile-title {
  font-size: 13px;
  font-weight: 700;
  line-height: 1.25;
  color: #0f172a;
  display: -webkit-box;
  -webkit-line-clamp: 2;
  -webkit-box-orient: vertical;
  overflow: hidden;
}

.app-landing-focus-tile-meta {
  font-size: 11px;
  line-height: 1.25;
  color: #64748b;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
}

.app-landing-focus-tile-status {
  font-size: 11px;
  line-height: 1.25;
  color: #475569;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
}

.app-landing-agent-tile {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 8px;
  width: 100%;
  padding: 12px 10px;
  border: 1px solid transparent;
  border-radius: 16px;
  background: #fff;
  text-align: center;
  cursor: pointer;
  transition: border-color 0.15s ease, box-shadow 0.15s ease, transform 0.15s ease;
}

.app-landing-agent-tile:hover {
  border-color: #e2e8f0;
  box-shadow: 0 10px 24px rgba(15, 23, 42, 0.07);
  transform: translateY(-2px);
}

.app-landing-agent-tile.is-registry-off {
  opacity: 0.68;
}

.app-landing-agent-tile.is-orchestrator {
  border-color: rgba(245, 158, 11, 0.35);
  background: linear-gradient(180deg, #fff 0%, #fffbeb 100%);
}

.app-landing-agent-tile-media {
  width: 56px;
  height: 56px;
  border-radius: 16px;
  overflow: hidden;
  background: #eef2ff;
  display: flex;
  align-items: center;
  justify-content: center;
}

.app-landing-agent-tile-media img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}

.app-landing-agent-tile-fallback {
  font-size: 14px;
  font-weight: 700;
  color: #4338ca;
}

.app-landing-agent-tile-emoji {
  font-size: 28px;
  line-height: 1;
}

.app-landing-agent-tile-name {
  font-size: 13px;
  font-weight: 600;
  line-height: 1.25;
  color: #0f172a;
  display: -webkit-box;
  -webkit-line-clamp: 2;
  -webkit-box-orient: vertical;
  overflow: hidden;
}

.app-landing-group-section.is-display-only {
  padding: 0;
  border: 0;
  background: transparent;
  box-shadow: none;
  gap: 10px;
}

.app-landing-group-section.is-display-only .app-landing-group-head {
  padding: 0;
  min-height: 0;
}

.app-landing-group-section.is-display-only .app-landing-group-title-badge {
  margin: 0;
  padding: 0;
  border: 0;
  background: transparent;
  box-shadow: none;
  font-size: 12px;
  font-weight: 700;
  letter-spacing: 0.05em;
  text-transform: uppercase;
  color: #64748b;
}

.app-landing-group-agents.is-tile-grid {
  grid-template-columns: repeat(auto-fill, minmax(112px, 1fr));
  gap: 10px;
}

.app-landing-group-section.is-display-only .app-landing-group-agent-wrap {
  min-width: 0;
}

.app-landing-orchestrator-section.is-display-only {
  padding: 0 0 4px;
  border: 0;
  background: transparent;
}

.app-landing-orchestrator-section .app-landing-orchestrator-title-badge {
  font-size: 12px;
  font-weight: 700;
  letter-spacing: 0.05em;
  text-transform: uppercase;
  color: #64748b;
  background: transparent;
  border: 0;
  padding: 0;
}

.agent-focus-panel--landing .agent-focus-title {
  font-size: 13px;
  font-weight: 700;
  letter-spacing: 0.06em;
  text-transform: uppercase;
  color: #4338ca;
}

.agent-focus-panel--landing .agent-focus-sub {
  font-size: 11px;
  line-height: 1.35;
  color: #94a3b8;
}

.agent-focus-head-main {
  display: flex;
  flex-direction: column;
  gap: 1px;
  min-width: 0;
}

.agent-focus-count {
  flex-shrink: 0;
  min-width: 1.5em;
  padding: 2px 8px;
  border-radius: 999px;
  font-size: 11px;
  font-weight: 700;
  line-height: 1.4;
  text-align: center;
  color: #4338ca;
  background: rgba(99, 102, 241, 0.1);
}

.agent-focus-count.hidden {
  display: none;
}

.agent-focus-toolbar {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: 12px;
  margin-top: 10px;
  margin-bottom: 8px;
  min-width: 0;
  flex-wrap: wrap;
}

.agent-focus-toolbar.hidden {
  display: none;
}

.agent-focus-toolbar-count {
  flex-shrink: 0;
  font-size: 11px;
  font-weight: 600;
  color: #64748b;
  white-space: nowrap;
}

.agent-focus-toolbar-controls {
  display: flex;
  align-items: center;
  gap: 8px;
  flex: 1 1 320px;
  min-width: 0;
  justify-content: flex-end;
  flex-wrap: wrap;
}

.agent-focus-toolbar-field {
  display: flex;
  align-items: center;
  gap: 6px;
  min-width: 0;
}

.agent-focus-toolbar-label {
  font-size: 11px;
  font-weight: 600;
  color: #64748b;
  white-space: nowrap;
}

.agent-focus-toolbar-select {
  min-width: 0;
  width: min(140px, 100%);
  max-width: 140px;
  padding: 5px 8px;
  border: 1px solid #e2e8f0;
  border-radius: 8px;
  background: #fff;
  font-size: 12px;
  color: #334155;
}

.agent-focus-toolbar-select:focus {
  outline: none;
  border-color: #6366f1;
}

.agent-focus-toolbar-field--types {
  position: relative;
}

.agent-focus-type-filter {
  position: relative;
  min-width: 0;
}

.agent-focus-type-filter-btn {
  min-width: 0;
  width: min(160px, 100%);
  max-width: 160px;
  padding: 5px 8px;
  border: 1px solid #e2e8f0;
  border-radius: 8px;
  background: #fff;
  font-size: 12px;
  color: #334155;
  text-align: left;
  cursor: pointer;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
}

.agent-focus-type-filter-btn:hover {
  border-color: #c7d2fe;
  background: #f8fafc;
}

.agent-focus-type-filter-btn:focus-visible {
  outline: none;
  border-color: #6366f1;
}

.agent-focus-type-filter-panel {
  position: absolute;
  top: calc(100% + 4px);
  right: 0;
  z-index: 30;
  min-width: 0;
  width: min(280px, calc(100vw - 32px));
  max-width: 280px;
  padding: 8px;
  border: 1px solid #e2e8f0;
  border-radius: 10px;
  background: #fff;
  box-shadow: 0 10px 24px rgba(15, 23, 42, 0.12);
}

.agent-focus-type-filter-panel.hidden {
  display: none;
}

.agent-focus-type-filter-panel-head {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 8px;
  margin-bottom: 6px;
  padding-bottom: 6px;
  border-bottom: 1px solid #eef2f7;
}

.agent-focus-type-filter-panel-title {
  font-size: 11px;
  font-weight: 700;
  color: #64748b;
  text-transform: uppercase;
  letter-spacing: 0.04em;
}

.agent-focus-type-filter-reset-btn {
  padding: 2px 8px;
  border: none;
  border-radius: 6px;
  background: transparent;
  font-size: 11px;
  font-weight: 600;
  color: #6366f1;
  cursor: pointer;
}

.agent-focus-type-filter-reset-btn:hover {
  background: rgba(99, 102, 241, 0.08);
}

.agent-focus-type-filter-panel-list {
  display: flex;
  flex-direction: column;
  gap: 2px;
  max-height: 220px;
  overflow: auto;
}

.agent-focus-type-filter-option {
  display: flex;
  align-items: center;
  gap: 8px;
  padding: 6px 8px;
  border-radius: 8px;
  font-size: 12px;
  color: #334155;
  cursor: pointer;
}

.agent-focus-type-filter-option:hover {
  background: #f8fafc;
}

.agent-focus-type-filter-option input {
  flex-shrink: 0;
  margin: 0;
}

.agent-focus-type-filter-option span {
  min-width: 0;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.agent-focus-type-filter-empty {
  margin: 0;
  padding: 8px;
  font-size: 12px;
  color: #94a3b8;
}

.agent-focus-toolbar-sort-dir {
  width: 32px;
  height: 32px;
  padding: 0;
  border: 1px solid #e2e8f0;
  border-radius: 8px;
  background: #fff;
  font-size: 14px;
  line-height: 1;
  color: #334155;
  cursor: pointer;
  flex-shrink: 0;
}

.agent-focus-toolbar-sort-dir:hover {
  border-color: #c7d2fe;
  background: #f8fafc;
}

.agent-focus-toolbar-sort-dir:focus-visible {
  outline: 2px solid rgba(99, 102, 241, 0.45);
  outline-offset: 1px;
}

.agent-focus-table-empty {
  padding: 20px 12px;
  text-align: center;
  color: #64748b;
  font-size: 13px;
  white-space: normal;
  max-width: none !important;
}

.agent-focus-table-wrap {
  width: 100%;
  max-width: 100%;
  overflow: hidden;
  border: 1px solid #e2e8f0;
  border-radius: 10px;
  background: #fff;
  min-width: 0;
  box-sizing: border-box;
  contain: inline-size;
}

.agent-focus-table-scroll {
  overflow-x: hidden;
  width: 100%;
  max-width: 100%;
  min-width: 0;
}

.agent-focus-table {
  width: 100%;
  max-width: 100%;
  min-width: 0;
  table-layout: fixed;
  border-collapse: collapse;
  font-size: 12px;
}

.agent-focus-table thead {
  position: sticky;
  top: 0;
  z-index: 1;
  background: #f8fafc;
  box-shadow: inset 0 -1px 0 #e2e8f0;
}

.agent-focus-table th {
  padding: 8px 10px;
  text-align: left;
  font-size: 10px;
  font-weight: 700;
  letter-spacing: 0.06em;
  text-transform: uppercase;
  color: #64748b;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
  max-width: 0;
}

.agent-focus-table td {
  padding: 8px 10px;
  border-top: 1px solid #eef2f7;
  vertical-align: middle;
  color: #0f172a;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
  max-width: 0;
}

.agent-focus-table-cell {
  overflow: hidden;
  max-width: 0;
}

.agent-focus-table-row {
  cursor: pointer;
  transition: background 0.15s ease;
}

.agent-focus-table-row:hover {
  background: rgba(99, 102, 241, 0.05);
}

.agent-focus-table-row.is-registry-off {
  opacity: 0.72;
}

.agent-focus-table-row:focus-visible {
  outline: 2px solid rgba(99, 102, 241, 0.45);
  outline-offset: -2px;
}

.agent-focus-table-entity {
  display: flex;
  align-items: center;
  gap: 10px;
  min-width: 0;
  max-width: 100%;
}

.agent-focus-table-entity-copy {
  display: flex;
  flex-direction: column;
  gap: 2px;
  min-width: 0;
}

.agent-focus-table-entity-title {
  font-size: 13px;
  font-weight: 600;
  line-height: 1.25;
  color: #0f172a;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
}

.agent-focus-table-entity-sub {
  font-size: 10px;
  line-height: 1.25;
  color: #64748b;
  font-family: ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, monospace;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
}

.agent-focus-table-thumb {
  flex-shrink: 0;
  width: 36px;
  height: 36px;
  border-radius: 10px;
  overflow: hidden;
  background: linear-gradient(145deg, #e0e7ff, #dbeafe);
  display: flex;
  align-items: center;
  justify-content: center;
}

.agent-focus-table-thumb img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}

.agent-focus-table-fallback {
  font-size: 11px;
  font-weight: 700;
  color: #4338ca;
}

.agent-focus-table-emoji {
  font-size: 18px;
  line-height: 1;
}

.agent-focus-table-value {
  max-width: 100%;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
}

.agent-focus-table-value[data-field="awn-color"] {
  display: flex;
  align-items: center;
  gap: 6px;
  min-width: 0;
}

.agent-focus-table-value-text {
  min-width: 0;
  overflow: hidden;
  text-overflow: ellipsis;
}

.agent-focus-table-value[data-field="awn-color"] .agent-focus-prop-color {
  margin-right: 0;
  flex-shrink: 0;
}

.agent-focus-table-value[data-field="awn-description"] {
  white-space: normal;
  display: -webkit-box;
  -webkit-line-clamp: 2;
  -webkit-box-orient: vertical;
  overflow: hidden;
}

.agent-focus-list--strip {
  display: flex;
  flex-wrap: wrap;
  align-content: flex-start;
  gap: 8px;
  max-height: 132px;
  overflow: auto;
  padding: 2px 1px 1px;
}

.agent-focus-chip--landing {
  flex: 0 1 auto;
  width: auto;
  max-width: min(240px, 100%);
  padding: 7px 10px;
  align-items: flex-start;
}

.agent-focus-chip-body {
  display: flex;
  flex-direction: column;
  gap: 1px;
  min-width: 0;
}

.agent-focus-chip--landing .agent-focus-chip-name {
  font-size: 12px;
  line-height: 1.25;
}

.agent-focus-chip-agent {
  font-size: 10px;
  line-height: 1.25;
  color: #64748b;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
}

.agent-focus-panel--home {
  width: 100%;
  padding: 10px 12px 12px;
  border: 1px solid rgba(148, 163, 184, 0.28);
  border-radius: 12px;
  background: rgba(255, 255, 255, 0.88);
  box-shadow: none;
  text-align: left;
}

.agent-focus-panel--home .agent-focus-title {
  font-size: 12px;
  font-weight: 700;
  letter-spacing: 0.06em;
  text-transform: uppercase;
  color: #4338ca;
}

.agent-focus-head--home-simple {
  margin: 0 0 8px;
}

.agent-focus-list--home {
  gap: 6px;
}

.agent-focus-item--home-simple {
  gap: 0;
  padding: 0;
  border: 0;
  border-radius: 0;
  background: transparent;
  box-shadow: none;
}

.agent-focus-item--home-simple .agent-focus-item-head {
  gap: 10px;
  padding: 8px 10px;
  border: 1px solid #e2e8f0;
  border-radius: 8px;
  background: #fff;
}

.agent-focus-item--home-simple.is-active .agent-focus-item-head {
  border-color: rgba(99, 102, 241, 0.45);
  background: rgba(238, 242, 255, 0.72);
}

.agent-focus-item--home-simple .agent-focus-item-media {
  width: 32px;
  height: 32px;
  border-radius: 8px;
}

.agent-focus-item--home-simple .agent-focus-item-name {
  font-size: 13px;
  font-weight: 600;
}

.agent-focus-panel--home .agent-focus-item {
  background: transparent;
}

.agent-focus-panel--sidebar {
  gap: 0;
  padding: 0;
  background: rgba(248, 250, 252, 0.92);
  flex-shrink: 0;
  min-height: 0;
}

/* Разделитель между аккордеонами; верх блока — только border-top у .menu-sidebar-bottom */
.menu-sidebar-bottom > .agent-focus-panel--sidebar + .agent-focus-panel--sidebar {
  border-top: 1px solid rgba(148, 163, 184, 0.18);
}

.sidebar-focus-toggle {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 8px;
  width: 100%;
  margin: 0;
  padding: 8px 12px;
  border: 0;
  background: transparent;
  text-align: left;
  cursor: pointer;
  box-sizing: border-box;
}

.sidebar-focus-toggle:hover,
.sidebar-focus-toggle:focus-visible {
  background: rgba(241, 245, 249, 0.92);
}

.sidebar-focus-toggle:focus-visible {
  outline: 2px solid rgba(99, 102, 241, 0.35);
  outline-offset: -2px;
}

.sidebar-focus-toggle-main {
  display: inline-flex;
  align-items: center;
  gap: 6px;
  min-width: 0;
}

.sidebar-focus-chevron {
  flex-shrink: 0;
  width: 7px;
  height: 7px;
  border-right: 2px solid #64748b;
  border-bottom: 2px solid #64748b;
  transform: rotate(-45deg);
  transition: transform 0.15s ease;
  margin-top: -2px;
}

.sidebar-focus-accordion:not(.is-collapsed) .sidebar-focus-chevron {
  transform: rotate(45deg);
  margin-top: -4px;
}

.sidebar-focus-accordion.is-collapsed {
  padding-bottom: 0;
}

.sidebar-focus-list-shell {
  position: relative;
  min-width: 0;
  flex: 0 0 auto;
  max-height: 132px;
  overflow-x: hidden;
  overflow-y: auto;
  padding: 0 10px 8px 12px;
  box-sizing: border-box;
}

.agent-focus-panel--sidebar .agent-focus-list--compact {
  padding: 2px 1px 1px;
  box-sizing: border-box;
}

.agent-focus-panel--sidebar .agent-focus-count {
  font-variant-numeric: tabular-nums;
}

.agent-focus-panel--sidebar .agent-focus-title {
  font-size: 11px;
  font-weight: 700;
  letter-spacing: 0.08em;
  text-transform: uppercase;
  color: #4338ca;
}

.agent-focus-panel--sidebar .agent-focus-head-main--inline {
  flex-direction: row;
  align-items: baseline;
  flex-wrap: nowrap;
  gap: 4px;
  min-width: 0;
}

.agent-focus-panel--sidebar .agent-focus-sub--inline {
  font-size: 10px;
  font-weight: 500;
  letter-spacing: 0;
  text-transform: none;
  color: #94a3b8;
  white-space: nowrap;
}

.agent-focus-empty {
  margin: 0;
  padding: 8px 10px;
  font-size: 11px;
  line-height: 1.45;
  color: #94a3b8;
  border: 1px dashed #e2e8f0;
  border-radius: 10px;
  background: rgba(248, 250, 252, 0.85);
}

.agent-focus-list {
  display: flex;
  flex-direction: column;
  gap: 12px;
}

.agent-focus-list--compact {
  gap: 6px;
}

.agent-focus-item {
  display: flex;
  flex-direction: column;
  gap: 12px;
  padding: 14px 16px;
  border: 1px solid #e2e8f0;
  border-radius: 12px;
  background: #fff;
  box-shadow: 0 1px 2px rgba(15, 23, 42, 0.04);
}

.agent-focus-panel--home .agent-focus-item {
  background: rgba(255, 255, 255, 0.92);
}

.agent-focus-item-head {
  display: flex;
  align-items: center;
  gap: 12px;
  width: 100%;
  padding: 0;
  border: 0;
  background: transparent;
  text-align: left;
  cursor: pointer;
  border-radius: 8px;
  transition: background 0.15s ease;
}

.agent-focus-item-head:hover {
  background: rgba(99, 102, 241, 0.06);
}

.agent-focus-item-head.is-registry-off {
  opacity: 0.72;
}

.agent-focus-item-head:focus-visible {
  outline: 2px solid rgba(99, 102, 241, 0.45);
  outline-offset: 2px;
}

.agent-focus-item-media {
  flex-shrink: 0;
  width: 48px;
  height: 48px;
  border-radius: 12px;
  overflow: hidden;
  background: linear-gradient(145deg, #e0e7ff, #dbeafe);
  display: flex;
  align-items: center;
  justify-content: center;
}

.agent-focus-item-media img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}

.agent-focus-item-fallback {
  font-size: 14px;
  font-weight: 700;
  color: #4338ca;
}

.agent-focus-item-emoji {
  font-size: 26px;
  line-height: 1;
}

.agent-focus-item-title-wrap {
  display: flex;
  flex-direction: column;
  gap: 2px;
  min-width: 0;
}

.agent-focus-item-name-row {
  display: flex;
  align-items: center;
  gap: 8px;
  min-width: 0;
}

.agent-focus-item-name {
  font-size: 15px;
  font-weight: 700;
  color: #0f172a;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
}

.agent-focus-item-meta {
  font-size: 12px;
  color: #64748b;
  font-family: ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, monospace;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
}

.agent-focus-props {
  display: grid;
  grid-template-columns: repeat(auto-fill, minmax(220px, 1fr));
  gap: 8px 16px;
  margin: 0;
}

.agent-focus-prop {
  display: grid;
  grid-template-columns: minmax(88px, auto) 1fr;
  gap: 8px;
  align-items: start;
  margin: 0;
}

.agent-focus-prop-key {
  margin: 0;
  font-size: 11px;
  font-weight: 600;
  letter-spacing: 0.04em;
  text-transform: uppercase;
  color: #64748b;
}

.agent-focus-prop-value {
  margin: 0;
  font-size: 13px;
  line-height: 1.45;
  color: #0f172a;
  word-break: break-word;
}

.agent-focus-prop-color {
  display: inline-block;
  width: 12px;
  height: 12px;
  margin-right: 6px;
  border-radius: 999px;
  border: 1px solid rgba(15, 23, 42, 0.12);
  vertical-align: -1px;
}

.agent-focus-chip {
  display: flex;
  align-items: center;
  gap: 8px;
  width: 100%;
  padding: 8px 10px;
  border: 1px solid #e2e8f0;
  border-radius: 10px;
  background: #fff;
  text-align: left;
  cursor: pointer;
  transition: border-color 0.15s ease, background 0.15s ease, box-shadow 0.15s ease;
}

.agent-focus-chip:hover {
  border-color: rgba(99, 102, 241, 0.35);
  background: rgba(238, 242, 255, 0.72);
  box-shadow: 0 1px 2px rgba(99, 102, 241, 0.08);
}

.agent-focus-chip.is-registry-off {
  opacity: 0.72;
}

.agent-focus-chip:focus-visible {
  outline: 2px solid rgba(99, 102, 241, 0.45);
  outline-offset: 2px;
}

.agent-focus-chip.is-active {
  border-color: #93c5fd;
  background: rgba(219, 234, 254, 0.88);
  box-shadow: 0 0 0 2px rgba(59, 130, 246, 0.12);
}

.agent-focus-chip.is-active .agent-focus-chip-name {
  color: #1e3a8a;
}

.agent-focus-chip.is-active:hover {
  border-color: #60a5fa;
  background: rgba(219, 234, 254, 0.96);
}

.agent-focus-item.is-active {
  border-color: #93c5fd;
  box-shadow: 0 0 0 2px rgba(59, 130, 246, 0.12);
}

.agent-focus-chip-name {
  min-width: 0;
  font-size: 13px;
  font-weight: 600;
  color: #0f172a;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
}

.agent-focus-chip-row {
  display: flex;
  align-items: stretch;
  gap: 4px;
}

.sidebar-focus-list-shell .agent-focus-chip-row:first-child {
  margin-top: 4px;
}

.agent-focus-chip-row .agent-focus-chip {
  flex: 1;
  min-width: 0;
}

.agent-focus-chip-remove {
  flex-shrink: 0;
  width: 32px;
  padding: 0;
  border: 1px solid #e2e8f0;
  border-radius: 10px;
  background: #fff;
  color: #94a3b8;
  cursor: pointer;
  font-size: 18px;
  line-height: 1;
  transition: color 0.15s ease, border-color 0.15s ease, background 0.15s ease, opacity 0.15s ease;
}

.agent-focus-chip-row:hover .agent-focus-chip-remove,
.agent-focus-chip-remove:focus-visible {
  color: #64748b;
  border-color: #cbd5e1;
}

.agent-focus-chip-remove:hover {
  color: #b91c1c;
  border-color: #fecaca;
  background: #fef2f2;
}

.agent-focus-chip-remove:focus-visible {
  outline: 2px solid rgba(99, 102, 241, 0.45);
  outline-offset: 2px;
}

.app-landing-inner {
  width: min(1080px, 100%);
  max-width: 100%;
  min-width: 0;
  margin: 0 auto;
  display: flex;
  flex-direction: column;
  gap: 22px;
  box-sizing: border-box;
  min-height: calc(100vh - 120px);
}

.app-landing-inner:has(.app-landing-attention:not(.hidden)) {
  gap: 16px;
}

.app-landing-dock {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 14px;
  flex-wrap: wrap;
  position: relative;
  z-index: 40;
  min-height: 56px;
}

.app-landing-dock .app-landing-search {
  flex: 1 1 420px;
  min-width: min(100%, 320px);
}

.app-landing-dock-actions {
  display: flex;
  align-items: center;
  gap: 8px;
  flex: 0 0 auto;
  flex-wrap: wrap;
}

.app-landing-dock-actions .app-landing-manage-btn {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-height: 34px;
  box-sizing: border-box;
}

.app-landing-dock-actions .app-landing-view-toggle,
.app-landing-dock-actions .app-landing-bg-toggle {
  align-self: center;
}

.app-landing-dock-actions .app-landing-view-toggle-btn,
.app-landing-dock-actions .app-landing-bg-toggle-btn {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-height: 26px;
  box-sizing: border-box;
}

.app-landing-pane--hub.is-landing-bg-sky {
  background: transparent;
  color: #e2e8f0;
  min-height: calc(100vh - 56px);
}

.app-landing-pane--flow.is-landing-bg-sky {
  background: transparent;
  color: #e2e8f0;
  min-height: calc(100vh - 56px);
}

.app-landing-pane--hub.is-landing-bg-light,
.app-landing-pane--flow.is-landing-bg-light {
  background: transparent;
  color: #0f172a;
  min-height: calc(100vh - 56px);
}

.app-landing-flow {
  position: relative;
  z-index: 1;
  flex: 1 1 auto;
  min-height: 0;
}

.app-landing-flow-grid {
  display: grid;
  grid-template-columns: repeat(auto-fill, minmax(240px, 1fr));
  gap: 14px;
  align-content: start;
}

.app-landing-flow-grid--timeline {
  display: flex;
  flex-direction: column;
  gap: 32px;
  max-width: min(960px, 100%);
  width: 100%;
  margin: 0 auto;
  padding: 4px 0 36px;
}

.app-landing-flow-grid--timeline .app-landing-flow-empty-wrap,
.app-landing-flow-grid--timeline .app-landing-flow-empty {
  max-width: none;
}

.app-landing-flow-day-group + .app-landing-flow-day-group {
  margin-top: 10px;
  padding-top: 8px;
}

.app-landing-flow-day-label {
  display: flex;
  align-items: center;
  gap: 14px;
  margin: 22px 0 16px;
  padding: 0;
  font: inherit;
}

.app-landing-flow-day-group:first-child .app-landing-flow-day-label {
  margin-top: 0;
}

.app-landing-flow-day-label::before {
  content: "";
  flex: 0 0 84px;
  height: 3px;
  border-radius: 999px;
  background: linear-gradient(90deg, rgba(99, 102, 241, 0.12), rgba(129, 140, 248, 0.58));
  box-shadow: 0 0 14px rgba(99, 102, 241, 0.22);
}

.app-landing-flow-day-label-text {
  flex: 0 0 auto;
  padding: 5px 14px;
  border-radius: 999px;
  font-size: 10px;
  font-weight: 800;
  letter-spacing: 0.12em;
  text-transform: uppercase;
  color: #e0e7ff;
  border: 1px solid rgba(129, 140, 248, 0.42);
  background: linear-gradient(145deg, rgba(49, 46, 129, 0.72), rgba(15, 23, 42, 0.78));
  box-shadow:
    0 4px 16px rgba(2, 6, 23, 0.3),
    inset 0 1px 0 rgba(255, 255, 255, 0.08);
}

.app-landing-flow-day-label::after {
  content: "";
  flex: 1;
  min-width: 20px;
  height: 1px;
  border-radius: 999px;
  background: linear-gradient(
    90deg,
    rgba(129, 140, 248, 0.52) 0%,
    rgba(148, 163, 184, 0.22) 65%,
    transparent 100%
  );
}

.app-landing-flow-day-items {
  display: flex;
  flex-direction: column;
  gap: 12px;
}

.app-landing-flow-timeline-entry {
  display: grid;
  grid-template-columns: 84px minmax(0, 1fr);
  gap: 10px;
  align-items: start;
}

.app-landing-flow-time-row {
  display: grid;
  grid-template-columns: repeat(auto-fill, minmax(220px, 1fr));
  gap: 10px;
  align-content: start;
  min-width: 0;
  width: 100%;
}

.app-landing-flow-timeline-rail {
  position: relative;
  display: grid;
  grid-template-columns: 1fr 22px;
  grid-template-rows: auto 1fr;
  align-items: start;
  min-height: 100%;
  padding-top: 6px;
}

.app-landing-flow-timeline-rail::before {
  content: "";
  position: absolute;
  top: 18px;
  bottom: 0;
  right: 10px;
  width: 3px;
  border-radius: 999px;
  background: linear-gradient(
    180deg,
    rgba(129, 140, 248, 0.55) 0%,
    rgba(99, 102, 241, 0.28) 35%,
    rgba(148, 163, 184, 0.12) 100%
  );
  box-shadow: 0 0 16px rgba(99, 102, 241, 0.22);
  pointer-events: none;
}

.app-landing-flow-timeline-time {
  grid-column: 1 / -1;
  grid-row: 1;
  justify-self: end;
  max-width: calc(100% - 4px);
  margin-right: 26px;
  padding: 5px 9px;
  font-size: 10px;
  font-weight: 700;
  line-height: 1.25;
  letter-spacing: 0.02em;
  text-align: center;
  color: #e0e7ff;
  white-space: nowrap;
  border-radius: 999px;
  border: 1px solid rgba(129, 140, 248, 0.42);
  background:
    linear-gradient(145deg, rgba(30, 27, 75, 0.82), rgba(15, 23, 42, 0.72));
  box-shadow:
    0 4px 14px rgba(2, 6, 23, 0.35),
    inset 0 1px 0 rgba(255, 255, 255, 0.08);
}

.app-landing-flow-timeline-dot {
  grid-column: 2;
  grid-row: 1;
  width: 12px;
  height: 12px;
  margin-top: 22px;
  justify-self: center;
  border-radius: 999px;
  background: radial-gradient(circle at 32% 28%, #eef2ff 0%, #a5b4fc 38%, #6366f1 72%, #4338ca 100%);
  box-shadow:
    0 0 0 3px rgba(99, 102, 241, 0.28),
    0 0 16px rgba(129, 140, 248, 0.55);
  z-index: 2;
  animation: app-landing-flow-timeline-dot-pulse 3s ease-in-out infinite;
}

.app-landing-flow-timeline-line {
  grid-column: 2;
  grid-row: 2;
  width: 3px;
  justify-self: center;
  margin-top: 10px;
  min-height: 20px;
  border-radius: 999px;
  background: transparent;
  z-index: 1;
}

.app-landing-flow-timeline-entry.is-last-in-day .app-landing-flow-timeline-rail::before {
  bottom: 50%;
  mask-image: linear-gradient(180deg, #000 0%, transparent 100%);
}

.app-landing-flow-timeline-entry.is-last-in-day .app-landing-flow-timeline-line {
  visibility: hidden;
  min-height: 0;
  margin-top: 0;
}

.app-landing-flow-timeline-entry--skeleton .app-landing-flow-timeline-dot {
  animation: none;
  background: rgba(148, 163, 184, 0.35);
  box-shadow: none;
}

.app-landing-flow-timeline-entry--skeleton .app-landing-flow-timeline-rail::before {
  opacity: 0.35;
}

.app-landing-flow-card--timeline {
  flex-direction: row;
  align-items: stretch;
  min-height: 96px;
}

.app-landing-flow-card--timeline .app-landing-flow-card-media {
  flex: 0 0 128px;
  width: 128px;
  aspect-ratio: auto;
  align-self: stretch;
  min-height: 96px;
  border-radius: 16px 0 0 16px;
}

.app-landing-flow-card--timeline .app-landing-flow-card-body {
  flex: 1;
  justify-content: center;
  padding: 12px 14px 12px 12px;
}

.app-landing-flow-card--timeline .app-landing-flow-card-title {
  -webkit-line-clamp: 2;
}

.app-landing-flow-card--timeline.app-landing-flow-card--compact.app-landing-flow-card--grid-tile {
  flex-direction: row;
  align-items: stretch;
  width: 100%;
  min-height: 76px;
  border-radius: 12px;
}

.app-landing-flow-card--timeline.app-landing-flow-card--compact.app-landing-flow-card--grid-tile
  .app-landing-flow-card-media {
  flex: 0 0 52px;
  width: 52px;
  min-height: 76px;
  height: auto;
  aspect-ratio: auto;
  align-self: stretch;
  border-radius: 12px 0 0 12px;
}

.app-landing-flow-card--timeline.app-landing-flow-card--compact.app-landing-flow-card--grid-tile
  .app-landing-flow-card-fallback,
.app-landing-flow-card--timeline.app-landing-flow-card--compact.app-landing-flow-card--grid-tile
  .app-landing-flow-card-emoji {
  font-size: 1.15rem;
}

.app-landing-flow-card--timeline.app-landing-flow-card--compact.app-landing-flow-card--grid-tile
  .app-landing-flow-card-media--photo-only img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}

.app-landing-flow-card--timeline.app-landing-flow-card--compact.app-landing-flow-card--grid-tile.app-landing-flow-card--no-media {
  min-height: 0;
}

.app-landing-flow-card--timeline.app-landing-flow-card--compact.app-landing-flow-card--grid-tile.app-landing-flow-card--no-media
  .app-landing-flow-card-body {
  padding: 10px 12px;
}

.app-landing-flow-card--timeline.app-landing-flow-card--compact.app-landing-flow-card--grid-tile
  .app-landing-flow-card-body {
  flex: 1;
  justify-content: center;
  gap: 4px;
  padding: 8px 10px 8px 8px;
  min-width: 0;
}

.app-landing-flow-card--timeline.app-landing-flow-card--compact.app-landing-flow-card--grid-tile
  .app-landing-flow-card-title {
  font-size: 12px;
  font-weight: 650;
  line-height: 1.35;
  -webkit-line-clamp: 2;
}

.app-landing-flow-card--timeline.app-landing-flow-card--compact.app-landing-flow-card--grid-tile
  .app-landing-flow-card-path {
  display: block;
  width: 100%;
  font-size: 10px;
  line-height: 1.25;
  color: #64748b;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
}

.app-landing-focus-card-tag--id {
  font-variant-numeric: tabular-nums;
}

.app-landing-flow-card--timeline.app-landing-flow-card--compact.app-landing-flow-card--grid-tile
  .app-landing-flow-card-meta {
  gap: 4px;
}

.app-landing-flow-card--timeline.app-landing-flow-card--compact.app-landing-flow-card--grid-tile
  .app-landing-flow-card-agent-avatar {
  width: 18px;
  height: 18px;
  font-size: 8px;
}

.app-landing-flow-card--timeline.app-landing-flow-card--compact.app-landing-flow-card--grid-tile
  .app-landing-flow-card-agent-name {
  font-size: 10px;
}

.app-landing-flow-card--timeline.app-landing-flow-card--compact.app-landing-flow-card--grid-tile:hover {
  transform: translateY(-2px);
  border-color: rgba(165, 180, 252, 0.78);
  background:
    linear-gradient(105deg, rgba(49, 46, 129, 0.72), rgba(79, 70, 229, 0.48)),
    linear-gradient(165deg, rgba(15, 23, 42, 0.92), rgba(30, 27, 75, 0.55));
  box-shadow:
    0 10px 28px rgba(99, 102, 241, 0.38),
    0 0 0 1px rgba(199, 210, 254, 0.28),
    inset 0 1px 0 rgba(255, 255, 255, 0.1);
}

.app-landing-flow-card--timeline.app-landing-flow-card--compact.app-landing-flow-card--grid-tile:hover
  .app-landing-flow-card-media {
  background:
    radial-gradient(ellipse 80% 70% at 50% 20%, rgba(199, 210, 254, 0.32), transparent 65%),
    rgba(67, 56, 202, 0.28);
}

.app-landing-flow-card {
  position: relative;
  display: flex;
  flex-direction: column;
  gap: 0;
  width: 100%;
  padding: 0;
  pointer-events: auto;
  cursor: pointer;
  border: 1px solid rgba(148, 163, 184, 0.22);
  border-radius: 16px;
  background:
    linear-gradient(165deg, rgba(15, 23, 42, 0.88), rgba(49, 46, 129, 0.38));
  box-shadow:
    0 14px 32px rgba(2, 6, 23, 0.32),
    inset 0 1px 0 rgba(255, 255, 255, 0.06);
  color: inherit;
  text-align: left;
  cursor: pointer;
  overflow: hidden;
  transition:
    transform 0.18s ease,
    border-color 0.18s ease,
    box-shadow 0.18s ease,
    opacity 0.18s ease;
}

.app-landing-flow-card:hover {
  transform: translateY(-2px);
  border-color: rgba(199, 210, 254, 0.42);
  box-shadow:
    0 18px 40px rgba(2, 6, 23, 0.42),
    0 0 0 1px rgba(199, 210, 254, 0.12);
}

.app-landing-flow-card.is-active {
  border-color: rgba(250, 204, 21, 0.72);
  box-shadow:
    0 0 0 1px rgba(250, 204, 21, 0.28),
    0 16px 36px rgba(2, 6, 23, 0.38);
}

.app-landing-flow-card.is-registry-off {
  opacity: 0.62;
}

.app-landing-flow-card.is-attention-dimmed {
  opacity: 0.38;
}

.app-landing-flow-card-id-badge {
  position: absolute;
  top: 6px;
  right: 6px;
  z-index: 4;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-width: 20px;
  height: 20px;
  padding: 0 5px;
  border: 1px solid rgba(250, 204, 21, 0.78);
  border-radius: 999px;
  background: rgba(15, 23, 42, 0.92);
  color: #fef9c3;
  font-family: ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", monospace;
  font-size: 9px;
  font-weight: 700;
  line-height: 1;
  pointer-events: none;
  box-shadow:
    0 0 0 2px rgba(255, 255, 255, 0.85),
    0 3px 10px rgba(15, 23, 42, 0.28);
}

.app-landing-flow-card--timeline.app-landing-flow-card--compact.app-landing-flow-card--grid-tile
  .app-landing-flow-card-id-badge {
  top: 4px;
  right: 4px;
  min-width: 18px;
  height: 18px;
  font-size: 8px;
}

.app-landing-flow-card.has-awn-id .app-landing-flow-card-title {
  padding-right: 26px;
}

.app-landing-flow-card--timeline.app-landing-flow-card--compact.app-landing-flow-card--grid-tile.has-awn-id
  .app-landing-flow-card-title {
  padding-right: 22px;
}

.app-landing-flow-card.is-attention-highlighted {
  border-color: rgba(250, 204, 21, 0.65);
  opacity: 1;
}

.app-landing-flow-card-media {
  position: relative;
  display: flex;
  align-items: center;
  justify-content: center;
  aspect-ratio: 16 / 10;
  background:
    radial-gradient(ellipse 80% 70% at 50% 20%, rgba(129, 140, 248, 0.22), transparent 65%),
    rgba(15, 23, 42, 0.55);
  overflow: hidden;
}

.app-landing-flow-card-media img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}

.app-landing-flow-card-fallback,
.app-landing-flow-card-emoji {
  font-size: 2rem;
  line-height: 1;
}

.app-landing-flow-card-media-empty {
  display: block;
  width: 52px;
  height: 52px;
  border-radius: 14px;
  border: 1px dashed rgba(148, 163, 184, 0.28);
  background: rgba(148, 163, 184, 0.08);
  box-sizing: border-box;
}

.app-landing-flow-card-body {
  display: flex;
  flex-direction: column;
  gap: 10px;
  padding: 12px 14px 14px;
  min-width: 0;
}

.app-landing-flow-card-title {
  display: -webkit-box;
  -webkit-line-clamp: 2;
  -webkit-box-orient: vertical;
  overflow: hidden;
  font-size: 14px;
  font-weight: 650;
  line-height: 1.35;
  color: #f8fafc;
}

.app-landing-flow-card-meta {
  display: flex;
  flex-direction: column;
  gap: 8px;
  min-width: 0;
}

.app-landing-flow-card-agent {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  min-width: 0;
  max-width: 100%;
}

.app-landing-flow-card-agent-avatar {
  flex-shrink: 0;
  display: flex;
  align-items: center;
  justify-content: center;
  width: 22px;
  height: 22px;
  border-radius: 999px;
  background: linear-gradient(145deg, #60a5fa, #6366f1);
  overflow: hidden;
  font-size: 10px;
  font-weight: 700;
  color: #fff;
}

.app-landing-flow-card-agent-avatar img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}

.app-landing-flow-card-agent-name {
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
  font-size: 12px;
  color: rgba(203, 213, 225, 0.82);
}

.app-landing-flow-card-updated {
  font-size: 11px;
  color: rgba(148, 163, 184, 0.92);
  white-space: nowrap;
}

.app-landing-flow-card-tags {
  display: flex;
  flex-wrap: wrap;
  gap: 6px;
}

.app-landing-flow-card-tag {
  padding: 2px 8px;
  border-radius: 999px;
  font-size: 10px;
  font-weight: 600;
  letter-spacing: 0.02em;
}

.app-landing-flow-card-tag--status {
  background: rgba(34, 197, 94, 0.16);
  color: #86efac;
}

.app-landing-flow-card-tag--type {
  background: rgba(129, 140, 248, 0.18);
  color: #c7d2fe;
}

.app-landing-flow-empty-wrap {
  grid-column: 1 / -1;
  display: flex;
  flex-direction: column;
  gap: 8px;
  padding: 36px 20px;
  border: 1px dashed rgba(148, 163, 184, 0.32);
  border-radius: 16px;
  text-align: center;
}

.app-landing-flow-empty {
  margin: 0;
  font-size: 15px;
  color: rgba(226, 232, 240, 0.9);
}

.app-landing-flow-empty-hint {
  margin: 0;
  font-size: 13px;
  line-height: 1.5;
  color: rgba(148, 163, 184, 0.88);
  max-width: 42ch;
  align-self: center;
}

.app-landing-flow-grid.is-loading {
  pointer-events: none;
}

.app-landing-flow-card--skeleton {
  pointer-events: none;
  cursor: default;
  animation: app-landing-flow-skeleton-enter 0.42s ease both;
  animation-delay: var(--flow-skeleton-delay, 0s);
}

.app-landing-flow-card--skeleton:hover {
  transform: none;
}

.app-landing-flow-skeleton-block,
.app-landing-flow-skeleton-line {
  position: relative;
  display: block;
  overflow: hidden;
  border-radius: 8px;
  background: rgba(148, 163, 184, 0.14);
}

.app-landing-flow-card-media.app-landing-flow-skeleton-block {
  aspect-ratio: 16 / 10;
  border-radius: 0;
  background: rgba(148, 163, 184, 0.1);
}

.app-landing-flow-skeleton-line {
  height: 12px;
}

.app-landing-flow-skeleton-line--title {
  height: 16px;
  width: 78%;
}

.app-landing-flow-skeleton-line--meta {
  width: 52%;
}

.app-landing-flow-skeleton-line--agent {
  width: 64%;
  height: 22px;
  border-radius: 999px;
}

.app-landing-flow-skeleton-block::after,
.app-landing-flow-skeleton-line::after {
  content: "";
  position: absolute;
  inset: 0;
  transform: translateX(-100%);
  background: linear-gradient(
    90deg,
    transparent 0%,
    rgba(255, 255, 255, 0.08) 42%,
    rgba(255, 255, 255, 0.22) 50%,
    rgba(255, 255, 255, 0.08) 58%,
    transparent 100%
  );
  animation: app-landing-flow-shimmer 1.35s ease-in-out infinite;
  animation-delay: var(--flow-skeleton-delay, 0s);
}

.app-landing-view-toggle-btn.is-loading {
  display: inline-flex;
  align-items: center;
  gap: 5px;
}

.app-landing-view-toggle-btn.is-loading::before {
  content: "";
  flex: 0 0 8px;
  width: 8px;
  height: 8px;
  border: 1.5px solid currentColor;
  border-top-color: transparent;
  border-radius: 50%;
  opacity: 0.75;
  animation: app-landing-flow-tab-spin 0.65s linear infinite;
}

@keyframes app-landing-flow-timeline-dot-pulse {
  0%,
  100% {
    transform: scale(1);
    box-shadow:
      0 0 0 3px rgba(99, 102, 241, 0.26),
      0 0 12px rgba(129, 140, 248, 0.45);
  }

  50% {
    transform: scale(1.08);
    box-shadow:
      0 0 0 5px rgba(99, 102, 241, 0.14),
      0 0 22px rgba(167, 139, 250, 0.62);
  }
}

@media (prefers-reduced-motion: reduce) {
  .app-landing-flow-timeline-dot {
    animation: none;
  }
}

@keyframes app-landing-flow-shimmer {
  100% {
    transform: translateX(100%);
  }
}

@keyframes app-landing-flow-skeleton-enter {
  from {
    opacity: 0;
    transform: translateY(12px);
  }

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

@keyframes app-landing-flow-tab-spin {
  to {
    transform: rotate(360deg);
  }
}

.app-landing-pane--flow.is-landing-bg-sky .app-landing-search-bar {
  border-color: rgba(148, 163, 184, 0.28);
  background: rgba(15, 23, 42, 0.55);
}

.app-landing-pane--flow.is-landing-bg-sky .app-landing-search-agents-btn {
  border-right-color: rgba(148, 163, 184, 0.28);
  background-color: rgba(30, 41, 59, 0.72);
  color: rgba(226, 232, 240, 0.92);
}

.app-landing-pane--flow.is-landing-bg-sky .content-search-scope,
.app-landing-pane--flow.is-landing-bg-sky .content-search-input {
  background: transparent;
  color: #f8fafc;
}

.app-landing-pane--flow.is-landing-bg-sky .content-search-scope {
  border-right-color: rgba(148, 163, 184, 0.28);
  color: rgba(226, 232, 240, 0.88);
}

.app-landing-pane--flow.is-landing-bg-sky .content-search-input::placeholder {
  color: rgba(148, 163, 184, 0.72);
}

@media (max-width: 560px) {
  .app-landing-flow-grid {
    grid-template-columns: 1fr;
  }

  .app-landing-flow-timeline-entry {
    grid-template-columns: 64px minmax(0, 1fr);
  }

  .app-landing-flow-day-label::before {
    flex-basis: 64px;
  }

  .app-landing-flow-timeline-rail {
    grid-template-columns: 1fr 18px;
  }

  .app-landing-flow-timeline-time {
    margin-right: 20px;
    padding: 4px 7px;
    font-size: 9px;
  }

  .app-landing-flow-time-row {
    grid-template-columns: 1fr;
  }

  .app-landing-focus-grid {
    grid-template-columns: 1fr;
  }
}

.app-landing-backdrop {
  position: absolute;
  inset: 0;
  z-index: 0;
  overflow: hidden;
  pointer-events: none;
}

.app-landing-backdrop .app-landing-sky {
  position: absolute;
  inset: 0;
}

.app-landing-backdrop .app-landing-nebula,
.app-landing-backdrop .app-landing-stars,
.app-landing-backdrop .app-landing-meteors {
  position: absolute;
  inset: 0;
}

.app-landing-hub-page {
  position: relative;
  z-index: 1;
  display: flex;
  flex-direction: column;
  gap: 20px;
  width: min(1120px, 100%);
  max-width: 100%;
  min-height: calc(100vh - 56px);
  margin: 0 auto;
  padding: 28px 40px 48px;
  box-sizing: border-box;
}

.app-landing-hub-header {
  display: flex;
  flex-direction: column;
  gap: 16px;
}

.app-landing-hub-brand {
  display: flex;
  flex-direction: column;
  gap: 6px;
}

.app-landing-hub-eyebrow {
  margin: 0;
  font-size: 11px;
  font-weight: 600;
  letter-spacing: 0.14em;
  text-transform: uppercase;
  color: rgba(199, 210, 254, 0.78);
}

.app-landing-hub-title {
  margin: 0;
  font-size: clamp(1.75rem, 4vw, 2.35rem);
  font-weight: 800;
  letter-spacing: -0.03em;
  line-height: 1.05;
  background: linear-gradient(135deg, #fff 0%, #c7d2fe 42%, #93c5fd 100%);
  -webkit-background-clip: text;
  background-clip: text;
  color: transparent;
}

.app-landing-hub-lead {
  margin: 0;
  max-width: 42em;
  font-size: 14px;
  line-height: 1.55;
  color: rgba(226, 232, 240, 0.76);
}

.app-landing-hub-toolbar {
  display: flex;
  align-items: flex-start;
  gap: 12px;
  flex-wrap: wrap;
}

.app-landing-hub-toolbar .app-landing-search {
  flex: 1 1 420px;
  min-width: min(100%, 300px);
}

.app-landing-hub-actions {
  display: flex;
  align-items: center;
  gap: 8px;
  flex-wrap: wrap;
}

.app-landing-hub-action-btn {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-height: 38px;
  padding: 8px 14px;
  border: 1px solid rgba(148, 163, 184, 0.32);
  border-radius: 10px;
  background: rgba(15, 23, 42, 0.62);
  color: rgba(226, 232, 240, 0.92);
  font-size: 13px;
  font-weight: 600;
  cursor: pointer;
  backdrop-filter: blur(8px);
  transition: border-color 0.15s ease, background 0.15s ease;
}

.app-landing-hub-action-btn:hover,
.app-landing-hub-action-btn.is-active {
  border-color: rgba(199, 210, 254, 0.55);
  background: rgba(30, 27, 75, 0.78);
}

.app-landing-hub-action-btn--primary {
  border-color: rgba(129, 140, 248, 0.55);
  background: linear-gradient(135deg, rgba(99, 102, 241, 0.92), rgba(59, 130, 246, 0.88));
  color: #fff;
}

.app-landing-hub-action-btn--primary:hover {
  border-color: rgba(199, 210, 254, 0.72);
  background: linear-gradient(135deg, rgba(79, 70, 229, 0.96), rgba(37, 99, 235, 0.92));
}

.app-landing-pane--hub.is-landing-bg-sky .app-landing-search-bar {
  border-color: rgba(148, 163, 184, 0.28);
  background: rgba(15, 23, 42, 0.72);
  backdrop-filter: blur(10px);
}

.app-landing-pane--hub.is-landing-bg-sky .app-landing-search-agents-btn {
  border-right-color: rgba(148, 163, 184, 0.28);
  background-color: rgba(30, 41, 59, 0.82);
  color: rgba(226, 232, 240, 0.92);
}

.app-landing-pane--hub.is-landing-bg-sky .content-search-scope,
.app-landing-pane--hub.is-landing-bg-sky .content-search-input {
  background: transparent;
  color: #f8fafc;
}

.app-landing-pane--hub.is-landing-bg-sky .content-search-scope {
  border-right-color: rgba(148, 163, 184, 0.28);
}

.app-landing-pane--hub.is-landing-bg-sky .content-search-input::placeholder {
  color: rgba(148, 163, 184, 0.72);
}

.app-landing-hub-filters {
  padding: 12px 14px;
  border: 1px solid rgba(148, 163, 184, 0.22);
  border-radius: 12px;
  background: rgba(15, 23, 42, 0.72);
  backdrop-filter: blur(10px);
}

.app-landing-hub-filters.hidden {
  display: none;
}

.app-landing-hub {
  display: flex;
  flex-direction: column;
  gap: 14px;
}

.app-landing-hub-section {
  display: flex;
  flex-direction: column;
  gap: 10px;
}

.app-landing-hub-section-title {
  margin: 0;
  padding: 0 4px;
  font-size: 12px;
  font-weight: 700;
  letter-spacing: 0.08em;
  text-transform: uppercase;
  color: rgba(199, 210, 254, 0.72);
}

.app-landing-hub-row {
  display: grid;
  grid-template-columns: minmax(180px, 240px) minmax(0, 1fr);
  align-items: center;
  gap: 12px 18px;
  padding: 14px 16px;
  border: 1px solid rgba(148, 163, 184, 0.22);
  border-radius: 16px;
  background:
    linear-gradient(135deg, rgba(15, 23, 42, 0.82), rgba(30, 27, 75, 0.52));
  box-shadow:
    0 14px 36px rgba(2, 6, 23, 0.28),
    inset 0 1px 0 rgba(255, 255, 255, 0.05);
  backdrop-filter: blur(10px);
}

.app-landing-hub-row.is-orchestrator {
  border-color: rgba(245, 158, 11, 0.42);
  background:
    linear-gradient(135deg, rgba(15, 23, 42, 0.88), rgba(69, 26, 3, 0.42));
}

.app-landing-hub-row.is-registry-off {
  opacity: 0.68;
}

.app-landing-hub-agent {
  display: flex;
  align-items: center;
  gap: 12px;
  width: 100%;
  padding: 0;
  border: 0;
  background: transparent;
  color: inherit;
  text-align: left;
  cursor: pointer;
}

.app-landing-hub-node {
  position: relative;
  flex-shrink: 0;
  display: flex;
  align-items: center;
  justify-content: center;
  width: 46px;
  height: 46px;
  border-radius: 999px;
  background: linear-gradient(145deg, #60a5fa, #6366f1);
  box-shadow:
    0 0 0 4px rgba(255, 255, 255, 0.08),
    0 8px 20px rgba(59, 130, 246, 0.28);
  overflow: hidden;
}

.app-landing-hub-node img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}

.app-landing-hub-node-emoji,
.app-landing-hub-node-initials {
  font-size: 18px;
  font-weight: 700;
  color: #fff;
}

.app-landing-hub-agent-copy {
  display: flex;
  flex-direction: column;
  gap: 2px;
  min-width: 0;
}

.app-landing-hub-agent-name {
  font-size: 15px;
  font-weight: 700;
  color: #f8fafc;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
}

.app-landing-hub-agent-hint {
  font-size: 11px;
  color: rgba(148, 163, 184, 0.88);
}

.app-landing-hub-branches {
  display: flex;
  align-items: center;
  gap: 10px;
  min-width: 0;
}

.app-landing-hub-stem {
  flex-shrink: 0;
  width: 28px;
  height: 2px;
  border-radius: 999px;
  background: linear-gradient(90deg, rgba(99, 102, 241, 0.15), rgba(59, 130, 246, 0.75));
}

.app-landing-hub-twigs {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 8px;
  min-width: 0;
}

.app-landing-hub-twig {
  display: inline-flex;
  align-items: center;
  gap: 7px;
  max-width: min(220px, 100%);
  padding: 6px 11px 6px 8px;
  border: 1px solid rgba(147, 197, 253, 0.34);
  border-radius: 999px;
  background: rgba(15, 23, 42, 0.72);
  color: rgba(226, 232, 240, 0.94);
  font-size: 12px;
  font-weight: 600;
  cursor: pointer;
  transition: border-color 0.15s ease, transform 0.15s ease;
}

.app-landing-hub-twig:hover,
.app-landing-hub-twig:focus-visible {
  border-color: rgba(191, 219, 254, 0.72);
  transform: translateY(-1px);
  outline: none;
}

.app-landing-hub-twig.is-active {
  border-color: rgba(250, 204, 21, 0.72);
  color: #fef9c3;
}

.app-landing-hub-twig-dot {
  flex-shrink: 0;
  width: 8px;
  height: 8px;
  border-radius: 999px;
  background: linear-gradient(145deg, #93c5fd, #6366f1);
  box-shadow: 0 0 8px rgba(96, 165, 250, 0.55);
}

.app-landing-hub-twig.is-active .app-landing-hub-twig-dot {
  background: linear-gradient(145deg, #fde047, #f59e0b);
}

.app-landing-hub-twig-label {
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.app-landing-hub-twig-status {
  flex-shrink: 0;
  font-size: 10px;
  opacity: 0.82;
}

.app-landing-hub-more {
  display: inline-flex;
  align-items: center;
  padding: 5px 9px;
  border: 1px dashed rgba(148, 163, 184, 0.42);
  border-radius: 999px;
  font-size: 11px;
  font-weight: 600;
  color: rgba(191, 219, 254, 0.88);
}

.app-landing-hub-empty {
  font-size: 12px;
  color: rgba(148, 163, 184, 0.78);
  font-style: italic;
}

.app-landing-hub-page-empty {
  margin: 0;
  padding: 28px 20px;
  border: 1px dashed rgba(148, 163, 184, 0.32);
  border-radius: 14px;
  text-align: center;
  color: rgba(203, 213, 225, 0.82);
}

.app-landing-pane--hub .app-landing-groups {
  padding: 4px 0 0;
}

.app-landing-pane--hub .app-landing-groups-note,
.app-landing-pane--hub .app-landing-group-empty {
  color: rgba(203, 213, 225, 0.78);
}

.app-landing-pane--hub .app-landing-groups-note code {
  color: #c7d2fe;
}

@media (max-width: 760px) {
  .app-landing-hub-page {
    padding: 20px 16px 36px;
  }

  .app-landing-hub-row {
    grid-template-columns: 1fr;
    gap: 12px;
  }

  .app-landing-hub-branches {
    padding-left: 58px;
  }

  .app-landing-hub-stem {
    display: none;
  }
}

.app-landing-search {
  display: flex;
  flex-direction: column;
  gap: 0;
}

.app-landing-search-bar-wrap {
  position: relative;
}

.app-landing-search-bar {
  width: 100%;
  min-height: 36px;
  align-items: stretch;
}

.app-landing-search-bar .content-search-scope,
.app-landing-search-bar .content-search-input,
.app-landing-search-bar .app-landing-search-agents-btn {
  min-height: 36px;
  box-sizing: border-box;
}

.app-landing-search-bar .content-search-scope {
  flex: 0 0 auto;
  width: auto;
  min-width: 112px;
  max-width: 132px;
  padding-top: 0;
  padding-bottom: 0;
  line-height: 36px;
}

.app-landing-search-bar .content-search-input {
  flex: 1 1 auto;
  min-width: 0;
  padding: 0 12px;
  line-height: 36px;
  font-size: 13px;
}

.app-landing-search-bar .app-landing-search-agents-btn {
  height: auto;
  min-height: 36px;
  border-left: 1px solid var(--border);
}

.app-landing-search-bar--disabled {
  opacity: 0.68;
  cursor: not-allowed;
}

.app-landing-search-bar--disabled:focus-within {
  border-color: var(--border);
  background: #f8fafc;
  box-shadow: none;
}

.app-landing-search-bar--disabled .content-search-scope,
.app-landing-search-bar--disabled .content-search-input,
.app-landing-search-bar--disabled .app-landing-search-agents-btn {
  cursor: not-allowed;
}

.app-landing-search-bar--disabled .content-search-scope:disabled,
.app-landing-search-bar--disabled .content-search-input:disabled,
.app-landing-search-bar--disabled .app-landing-search-agents-btn:disabled {
  opacity: 1;
  color: #94a3b8;
}

.app-landing-search-bar--disabled .content-search-input:disabled::placeholder {
  color: #94a3b8;
}

.app-landing-search-agents-wrap {
  position: relative;
  flex: 0 0 auto;
}

.app-landing-search-agents-btn {
  display: inline-flex;
  align-items: center;
  max-width: 220px;
  min-width: 112px;
  height: 100%;
  border: 0;
  border-left: 1px solid var(--border);
  border-right: 0;
  background: #eef3ff;
  color: #334155;
  padding: 8px 28px 8px 12px;
  font-size: 12px;
  font-weight: 600;
  cursor: pointer;
  appearance: none;
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 20 20' fill='%2364748b'%3E%3Cpath fill-rule='evenodd' d='M5.23 7.21a.75.75 0 011.06.02L10 10.94l3.71-3.71a.75.75 0 111.06 1.06l-4.24 4.25a.75.75 0 01-1.06 0L5.21 8.29a.75.75 0 01.02-1.08z'/%3E%3C/svg%3E");
  background-repeat: no-repeat;
  background-position: right 8px center;
  background-size: 14px;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
}

.app-landing-search-agents-btn:hover,
.app-landing-search-agents-btn.is-open {
  background-color: #dbeafe;
}

.app-landing-search-agents-btn:focus {
  outline: none;
}

.app-landing-search-agents-btn:focus-visible {
  box-shadow: inset 0 0 0 2px rgba(59, 130, 246, 0.35);
}

.app-landing-search-agents-panel {
  position: absolute;
  z-index: 120;
  top: calc(100% + 6px);
  right: 0;
  left: auto;
  left: 0;
  width: min(320px, calc(100vw - 48px));
  max-height: min(320px, 42vh);
  overflow: auto;
  padding: 8px;
  border: 1px solid #cbd5e1;
  border-radius: 12px;
  background: #fff;
  box-shadow: 0 12px 32px rgba(15, 23, 42, 0.12);
}

.app-landing-search-agents-panel.hidden {
  display: none;
}

.app-landing-search-agents-panel-toolbar {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 6px 10px;
  padding: 2px 4px 8px;
  border-bottom: 1px solid #f1f5f9;
  margin-bottom: 6px;
}

.app-landing-search-agents-list {
  display: flex;
  flex-direction: column;
  gap: 2px;
}

.app-landing-search-agent-option {
  display: flex;
  align-items: flex-start;
  gap: 8px;
  padding: 7px 8px;
  border-radius: 8px;
  font-size: 13px;
  color: #334155;
  cursor: pointer;
  user-select: none;
  transition: background 0.15s ease;
}

.app-landing-search-agent-option:hover {
  background: #f8fafc;
}

.app-landing-search-agent-option.is-inactive {
  opacity: 0.72;
}

.app-landing-search-agent-option input {
  margin: 2px 0 0;
  accent-color: #3b82f6;
  cursor: pointer;
  flex: 0 0 auto;
}

.app-landing-search-agent-option-copy {
  display: flex;
  flex-direction: column;
  gap: 1px;
  min-width: 0;
}

.app-landing-search-link-btn {
  padding: 0;
  border: 0;
  background: none;
  color: #3b82f6;
  font-size: 12px;
  font-weight: 600;
  cursor: pointer;
}

.app-landing-search-link-btn:hover {
  text-decoration: underline;
}

.app-landing-search-agent-name {
  font-weight: 600;
  line-height: 1.25;
}

.app-landing-search-agent-id {
  font-size: 11px;
  color: #94a3b8;
  line-height: 1.25;
}

.app-landing-search-empty-agents {
  margin: 0;
  padding: 8px;
  font-size: 13px;
  color: #64748b;
}

.app-landing-search-results {
  position: absolute;
  z-index: 40;
  top: calc(100% + 6px);
  left: 0;
  right: 0;
  max-height: min(420px, 50vh);
  overflow: auto;
  border: 1px solid #cbd5e1;
  border-radius: 10px;
  background: #fff;
  box-shadow: 0 12px 32px rgba(15, 23, 42, 0.12);
}

.app-landing-search-results.hidden {
  display: none;
}

.app-landing-search-results .content-search-empty,
.app-landing-search-results .content-search-hint {
  padding: 14px 16px;
  font-size: 13px;
  color: #64748b;
}

.app-landing-search-results .content-search-item {
  border-bottom: 1px solid #f1f5f9;
}

.app-landing-search-results .content-search-item:last-child {
  border-bottom: 0;
}

.app-landing-platform {
  display: flex;
  flex-wrap: wrap;
  align-items: flex-start;
  justify-content: space-between;
  gap: 12px 20px;
  margin-top: 8px;
  padding: 16px 18px;
  border: 1px solid #dbeafe;
  border-radius: 12px;
  background: linear-gradient(135deg, #f8fbff 0%, #f0f9ff 100%);
}

.app-landing-platform.hidden {
  display: none;
}

.app-landing-platform-head {
  flex: 1 1 240px;
  min-width: 0;
}

.app-landing-platform-title {
  margin: 0 0 4px;
  font-size: 16px;
  font-weight: 700;
  color: #0f172a;
}

.app-landing-platform-lead {
  margin: 0;
  font-size: 13px;
  line-height: 1.45;
  color: #475569;
}

.app-landing-platform-actions {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
  align-items: center;
}

.app-landing-platform-open-btn {
  padding: 8px 14px;
  border-radius: 8px;
  font-size: 13px;
  font-weight: 600;
  cursor: pointer;
  transition: background 0.15s ease, border-color 0.15s ease;
  border: 1px solid #2563eb;
  background: #2563eb;
  color: #fff;
}

.app-landing-platform-open-btn:hover {
  background: #1d4ed8;
  border-color: #1d4ed8;
}

.app-landing-platform-hero {
  flex-basis: 100%;
  width: 100%;
  position: relative;
  display: grid;
  grid-template-columns: minmax(0, 1fr) min(480px, 52%);
  gap: 12px 18px;
  align-items: start;
  min-height: 0;
  padding: 16px 20px;
  border-radius: 16px;
  background: linear-gradient(180deg, #070b14 0%, #0f172a 55%, #111827 100%);
  overflow: visible;
  isolation: isolate;
  box-shadow: 0 18px 48px rgba(2, 6, 23, 0.28);
}

.app-landing-platform-learning {
  flex-basis: 100%;
  width: 100%;
  padding: 18px 20px 20px;
  border-radius: 14px;
  border: 1px solid #c7d2fe;
  background:
    radial-gradient(ellipse 80% 60% at 8% 0%, rgba(199, 210, 254, 0.45), transparent 55%),
    radial-gradient(ellipse 70% 50% at 92% 100%, rgba(186, 230, 253, 0.35), transparent 50%),
    linear-gradient(165deg, #ffffff 0%, #f8fafc 48%, #f0f9ff 100%);
  box-shadow: 0 10px 28px rgba(15, 23, 42, 0.06);
}

.app-landing-platform-learning-eyebrow {
  display: inline-block;
  margin-bottom: 6px;
  padding: 3px 10px;
  border-radius: 999px;
  font-size: 10px;
  font-weight: 700;
  letter-spacing: 0.06em;
  text-transform: uppercase;
  color: #4338ca;
  background: rgba(99, 102, 241, 0.12);
  border: 1px solid rgba(99, 102, 241, 0.22);
}

.app-landing-platform-learning-intro {
  max-width: 52ch;
}

.app-landing-platform-learning-title {
  margin: 0 0 6px;
  font-size: 20px;
  font-weight: 800;
  letter-spacing: -0.02em;
  color: #0f172a;
}

.app-landing-platform-learning-lead {
  margin: 0;
  font-size: 13px;
  line-height: 1.5;
  color: #475569;
}

.app-landing-platform-learning-body {
  display: grid;
  grid-template-columns: minmax(260px, 380px) minmax(0, 1fr);
  gap: 16px 24px;
  align-items: start;
}

.app-landing-platform-learning-column {
  display: flex;
  flex-direction: column;
  gap: 12px;
  min-width: 0;
}

.app-landing-platform-learning-column-head {
  padding: 0 2px;
}

.app-landing-platform-learning-column-title {
  margin: 0 0 4px;
  font-size: 15px;
  font-weight: 700;
  letter-spacing: -0.01em;
  color: #0f172a;
}

.app-landing-platform-learning-column-lead {
  margin: 0;
  font-size: 12px;
  line-height: 1.45;
  color: #64748b;
}

.app-landing-platform-learning-aside {
  display: flex;
  flex-direction: column;
  min-width: 0;
}

.app-landing-platform-learning-sphere-field {
  position: relative;
  flex: 1 1 auto;
  display: flex;
  flex-direction: column;
  width: 100%;
  padding: 18px 16px 16px;
  border: 1px solid rgba(148, 163, 184, 0.28);
  border-radius: 20px;
  background: linear-gradient(
    165deg,
    rgba(255, 255, 255, 0.72) 0%,
    rgba(248, 250, 252, 0.55) 48%,
    rgba(238, 242, 255, 0.45) 100%
  );
  overflow: hidden;
  box-shadow:
    0 12px 32px rgba(15, 23, 42, 0.06),
    inset 0 1px 0 rgba(255, 255, 255, 0.9);
}

.app-landing-platform-learning-sphere-journey {
  position: relative;
  z-index: 1;
  display: flex;
  flex-direction: column;
  gap: 18px;
  width: 100%;
}

.app-landing-platform-learning-sphere-intro {
  padding: 0 4px 2px;
  text-align: left;
  align-self: stretch;
}

.app-landing-platform-learning-sphere-bg {
  position: absolute;
  inset: 0;
  pointer-events: none;
  overflow: hidden;
}

.app-landing-platform-learning-sphere-mist {
  position: absolute;
  border-radius: 50%;
  filter: blur(28px);
  opacity: 0.55;
  animation: app-landing-learning-sphere-mist 14s ease-in-out infinite;
}

.app-landing-platform-learning-sphere-mist--1 {
  width: 160px;
  height: 160px;
  top: 0;
  right: 5%;
  background: rgba(129, 140, 248, 0.22);
}

.app-landing-platform-learning-sphere-mist--2 {
  width: 200px;
  height: 200px;
  bottom: -20px;
  left: -5%;
  background: rgba(56, 189, 248, 0.16);
  animation-delay: -4s;
}

.app-landing-platform-learning-sphere-mist--3 {
  width: 120px;
  height: 120px;
  top: 48%;
  left: 42%;
  background: rgba(167, 139, 250, 0.14);
  animation-delay: -7s;
}

@keyframes app-landing-learning-sphere-mist {
  0%,
  100% {
    transform: translate(0, 0) scale(1);
  }

  50% {
    transform: translate(8px, -6px) scale(1.06);
  }
}

.app-landing-platform-learning-sphere-prompt {
  position: relative;
  z-index: 2;
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 8px;
  width: 100%;
  margin: 0;
  padding: 0 8px 4px;
  text-align: center;
  background: none;
  border: none;
  box-shadow: none;
}

.app-landing-platform-learning-sphere-prompt-cloud {
  flex: 0 0 auto;
  display: flex;
  align-items: center;
  justify-content: center;
  width: auto;
  font-size: 32px;
  line-height: 1;
  filter: drop-shadow(0 8px 14px rgba(56, 189, 248, 0.28));
  animation: app-landing-learning-sphere-cloud-bob 4.5s ease-in-out infinite;
}

.app-landing-platform-learning-sphere-prompt-copy {
  position: relative;
  min-width: 0;
  max-width: 420px;
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 4px;
  padding: 0;
  border-radius: 0;
  background: none;
  backdrop-filter: none;
  -webkit-backdrop-filter: none;
  box-shadow: none;
}

.app-landing-platform-learning-sphere-prompt-copy::before {
  display: none;
}

.app-landing-platform-learning-sphere-prompt::after {
  display: none;
}

@keyframes app-landing-learning-sphere-prompt-float {
  0%,
  100% {
    transform: translateY(0);
  }

  50% {
    transform: translateY(-3px);
  }
}

@keyframes app-landing-learning-sphere-cloud-bob {
  0%,
  100% {
    transform: translateY(0) scale(1);
  }

  50% {
    transform: translateY(-5px) scale(1.04);
  }
}

.app-landing-platform-learning-sphere-prompt-title {
  margin: 0;
  font-size: clamp(15px, 1.6vw, 17px);
  font-weight: 800;
  letter-spacing: -0.02em;
  line-height: 1.25;
  background: linear-gradient(120deg, #312e81 0%, #4338ca 45%, #0369a1 100%);
  -webkit-background-clip: text;
  background-clip: text;
  color: transparent;
}

.app-landing-platform-learning-sphere-prompt-subtitle {
  margin: 0;
  font-size: 12px;
  font-weight: 500;
  line-height: 1.35;
  color: #64748b;
}

.app-landing-platform-learning-sphere-prompt-hint {
  margin: 0;
  font-size: 12px;
  line-height: 1.4;
  color: #475569;
  max-width: none;
}

.app-landing-platform-learning-sphere-prompt-hint::before {
  content: "·";
  margin-right: 8px;
  color: #94a3b8;
  font-weight: 700;
}

.app-landing-platform-learning-sphere-orbs {
  position: relative;
  z-index: 1;
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 10px;
  align-items: stretch;
  padding-top: 14px;
}

.app-landing-platform-learning-sphere-orbs::before {
  content: "";
  position: absolute;
  top: 0;
  left: 8%;
  right: 8%;
  height: 1px;
  background: linear-gradient(
    90deg,
    transparent 0%,
    rgba(165, 180, 252, 0.55) 20%,
    rgba(165, 180, 252, 0.55) 80%,
    transparent 100%
  );
  pointer-events: none;
}

.app-landing-platform-learning-sphere-unit {
  --unit-delay: 0s;
  --orb-tint: #c7d2fe;
  --orb-deep: #818cf8;
  position: relative;
  z-index: 2;
  display: grid;
  grid-template-columns: auto minmax(0, 1fr);
  grid-template-rows: auto auto;
  grid-template-areas:
    "orb caption"
    "orb caption";
  column-gap: 10px;
  align-items: start;
  width: auto;
  padding: 12px 10px 11px;
  border-radius: 14px;
  border: 1px solid rgba(148, 163, 184, 0.2);
  background: rgba(255, 255, 255, 0.58);
  text-align: left;
  transition: border-color 0.2s ease, background 0.2s ease, box-shadow 0.2s ease;
}

.app-landing-platform-learning-sphere-unit:hover {
  border-color: rgba(129, 140, 248, 0.35);
  background: rgba(255, 255, 255, 0.82);
  box-shadow: 0 8px 22px rgba(99, 102, 241, 0.1);
}

.app-landing-platform-learning-sphere-unit:not(:last-child)::after {
  display: none;
}

.app-landing-platform-learning-sphere-step {
  position: absolute;
  top: 6px;
  left: 6px;
  z-index: 3;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 18px;
  height: 18px;
  margin: 0;
  border-radius: 50%;
  font-size: 10px;
  font-weight: 800;
  color: #fff;
  background: var(--orb-deep);
  box-shadow: 0 2px 6px rgba(15, 23, 42, 0.15);
}

.app-landing-platform-learning-sphere-unit-caption {
  grid-area: caption;
  width: auto;
  margin: 0;
  padding: 0;
  border-radius: 0;
  background: none;
  backdrop-filter: none;
  -webkit-backdrop-filter: none;
  box-shadow: none;
  transition: none;
}

.app-landing-platform-learning-sphere-unit:hover .app-landing-platform-learning-sphere-unit-caption {
  background: none;
  box-shadow: none;
}

.app-landing-platform-learning-sphere-unit.is-tone-sky {
  --orb-tint: #bae6fd;
  --orb-deep: #38bdf8;
}

.app-landing-platform-learning-sphere-unit.is-tone-emerald {
  --orb-tint: #a7f3d0;
  --orb-deep: #34d399;
}

.app-landing-platform-learning-sphere-unit.is-tone-amber {
  --orb-tint: #fde68a;
  --orb-deep: #fbbf24;
}

@keyframes app-landing-learning-sphere-unit-float {
  0%,
  100% {
    transform: translateY(0);
  }

  50% {
    transform: translateY(-4px);
  }
}

.app-landing-platform-learning-sphere-orb {
  grid-area: orb;
  position: relative;
  flex: 0 0 auto;
  display: flex;
  align-items: center;
  justify-content: center;
  width: 48px;
  height: 48px;
  margin: 2px 0 0 4px;
  border-radius: 50%;
  background: radial-gradient(circle at 32% 26%, #ffffff 0%, var(--orb-tint) 40%, var(--orb-deep) 100%);
  box-shadow:
    inset -5px -8px 14px rgba(15, 23, 42, 0.08),
    inset 3px 3px 10px rgba(255, 255, 255, 0.85),
    0 12px 28px rgba(99, 102, 241, 0.22);
  transition: transform 0.2s ease, box-shadow 0.2s ease;
  animation: app-landing-learning-sphere-unit-float 5.5s ease-in-out infinite;
  animation-delay: var(--unit-delay);
}

.app-landing-platform-learning-sphere-unit:hover .app-landing-platform-learning-sphere-orb {
  transform: scale(1.06);
  box-shadow:
    inset -5px -8px 14px rgba(15, 23, 42, 0.08),
    inset 3px 3px 10px rgba(255, 255, 255, 0.85),
    0 16px 32px rgba(99, 102, 241, 0.28);
}

.app-landing-platform-learning-sphere-orb-icon {
  font-size: 22px;
  line-height: 1;
  filter: drop-shadow(0 1px 2px rgba(15, 23, 42, 0.12));
}

.app-landing-platform-learning-sphere-unit-label {
  margin: 0 0 4px;
  font-size: 12px;
  font-weight: 700;
  line-height: 1.3;
  color: #1e293b;
}

.app-landing-platform-learning-sphere-unit-detail {
  margin: 0;
  font-size: 11px;
  line-height: 1.45;
  color: #64748b;
  min-height: calc(2 * 1.45em);
}

@media (prefers-reduced-motion: reduce) {
  .app-landing-platform-learning-sphere-mist,
  .app-landing-platform-learning-sphere-prompt-cloud,
  .app-landing-platform-learning-sphere-orb {
    animation: none !important;
  }
}

.app-landing-platform-learning-orbit-wrap {
  display: flex;
  justify-content: center;
  align-items: center;
  min-width: 0;
}

.app-landing-platform-learning-orbit {
  --orbit-radius: clamp(118px, 28vw, 148px);
  position: relative;
  width: min(100%, 340px);
  aspect-ratio: 1;
  margin: 0 auto;
}

.app-landing-platform-learning-orbit-ring {
  position: absolute;
  inset: 12%;
  border-radius: 50%;
  border: 1px dashed rgba(99, 102, 241, 0.35);
  background: radial-gradient(circle at 50% 50%, rgba(255, 255, 255, 0.9) 0%, rgba(224, 231, 255, 0.35) 55%, transparent 72%);
  pointer-events: none;
}

.app-landing-platform-learning-orbit-ring::before {
  content: "";
  position: absolute;
  inset: 18%;
  border-radius: 50%;
  border: 1px solid rgba(148, 163, 184, 0.2);
}

.app-landing-platform-learning-hub {
  position: absolute;
  left: 50%;
  top: 50%;
  z-index: 2;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  gap: 4px;
  width: 92px;
  height: 92px;
  padding: 8px;
  border-radius: 50%;
  text-align: center;
  font-size: 10px;
  line-height: 1.25;
  color: #334155;
  background: linear-gradient(145deg, #ffffff 0%, #eef2ff 100%);
  border: 2px solid #6366f1;
  box-shadow:
    0 0 0 6px rgba(99, 102, 241, 0.12),
    0 12px 24px rgba(79, 70, 229, 0.18);
  transform: translate(-50%, -50%);
}

.app-landing-platform-learning-hub-icon {
  font-size: 18px;
  color: #4f46e5;
  line-height: 1;
}

.app-landing-platform-learning-hub-label strong {
  display: block;
  font-size: 11px;
  font-weight: 800;
  color: #1e1b4b;
}

.app-landing-platform-learning-source {
  --source-angle: 0deg;
  position: absolute;
  left: 50%;
  top: 50%;
  z-index: 1;
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 2px;
  width: 88px;
  margin-left: -44px;
  margin-top: -28px;
  text-align: center;
  transform: rotate(var(--source-angle)) translateY(calc(-1 * var(--orbit-radius))) rotate(calc(-1 * var(--source-angle)));
}

.app-landing-platform-learning-source-icon {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 36px;
  height: 36px;
  border-radius: 12px;
  font-size: 17px;
  background: #fff;
  border: 1px solid #e2e8f0;
  box-shadow: 0 4px 12px rgba(15, 23, 42, 0.08);
}

.app-landing-platform-learning-source-label {
  font-size: 10px;
  font-weight: 700;
  line-height: 1.2;
  color: #1e293b;
}

.app-landing-platform-learning-source-hint {
  font-size: 9px;
  line-height: 1.25;
  color: #64748b;
  max-width: 92px;
}

.app-landing-platform-learning-source.is-featured .app-landing-platform-learning-source-icon {
  border-color: #2563eb;
  background: linear-gradient(145deg, #eff6ff 0%, #dbeafe 100%);
  box-shadow:
    0 0 0 3px rgba(37, 99, 235, 0.15),
    0 6px 16px rgba(37, 99, 235, 0.22);
}

.app-landing-platform-learning-source.is-featured .app-landing-platform-learning-source-label {
  color: #1d4ed8;
}

.app-landing-platform-hero-nebula {
  position: absolute;
  inset: 0;
  z-index: 0;
  pointer-events: none;
  background:
    radial-gradient(ellipse 55% 50% at 12% 28%, rgba(99, 102, 241, 0.34), transparent 62%),
    radial-gradient(ellipse 48% 42% at 88% 22%, rgba(59, 130, 246, 0.26), transparent 58%),
    radial-gradient(ellipse 42% 38% at 72% 82%, rgba(167, 139, 250, 0.2), transparent 54%),
    radial-gradient(ellipse 36% 32% at 28% 78%, rgba(37, 99, 235, 0.16), transparent 52%);
}

.app-landing-platform-hero-stars {
  position: absolute;
  inset: 0;
  z-index: 0;
  pointer-events: none;
  background-image:
    radial-gradient(1px 1px at 20px 30px, rgba(255, 255, 255, 0.55), transparent),
    radial-gradient(1px 1px at 140px 80px, rgba(255, 255, 255, 0.35), transparent),
    radial-gradient(1px 1px at 260px 160px, rgba(255, 255, 255, 0.45), transparent),
    radial-gradient(1.5px 1.5px at 60px 90px, rgba(255, 255, 255, 0.75), transparent),
    radial-gradient(1px 1px at 300px 120px, rgba(255, 255, 255, 0.65), transparent),
    radial-gradient(2px 2px at 40px 50px, rgba(255, 255, 255, 0.9), transparent);
  background-size: 420px 220px;
  animation: app-landing-platform-agent-stars-twinkle 6s ease-in-out infinite alternate;
  opacity: 0.8;
}

.app-landing-platform-hero-body {
  position: relative;
  z-index: 1;
  display: flex;
  flex-direction: column;
  gap: 14px;
  min-width: 0;
}

.app-landing-platform-hero-copy {
  min-width: 0;
}

.app-landing-platform-hero-eyebrow {
  display: inline-flex;
  margin-bottom: 8px;
  padding: 3px 10px;
  border-radius: 999px;
  border: 1px solid rgba(125, 211, 252, 0.28);
  background: rgba(15, 23, 42, 0.55);
  color: rgba(186, 230, 253, 0.92);
  font-size: 10px;
  font-weight: 700;
  letter-spacing: 0.06em;
  text-transform: uppercase;
}

.app-landing-platform-hero-title {
  margin: 0 0 6px;
  font-size: clamp(20px, 2.4vw, 26px);
  font-weight: 700;
  line-height: 1.15;
  color: #f8fafc;
}

.app-landing-platform-hero-lead {
  margin: 0;
  max-width: 52ch;
  font-size: 13px;
  line-height: 1.5;
  color: rgba(203, 213, 225, 0.88);
}

.app-landing-platform-hero-aside {
  margin: 8px 0 0;
  max-width: 48ch;
  font-size: 11px;
  line-height: 1.45;
  letter-spacing: 0.02em;
  color: rgba(125, 211, 252, 0.78);
}

.app-landing-platform-hero-pills {
  display: flex;
  flex-wrap: wrap;
  gap: 6px;
  margin-top: 12px;
}

.app-landing-platform-hero-pill {
  padding: 4px 9px;
  border-radius: 999px;
  border: 1px solid rgba(148, 163, 184, 0.28);
  background: rgba(15, 23, 42, 0.55);
  color: #cbd5e1;
  font-size: 10px;
  font-weight: 600;
}

.app-landing-platform-hero-visual {
  position: relative;
  z-index: 1;
  display: flex;
  align-items: flex-start;
  justify-content: center;
  align-self: start;
  min-height: 0;
  padding: 0;
  overflow: visible;
}

.app-landing-platform-agent-scene {
  position: relative;
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  align-items: center;
  gap: 10px 16px;
  width: 100%;
  padding: 0;
  overflow: visible;
}

.app-landing-platform-agent-copy {
  position: relative;
  z-index: 2;
  display: flex;
  flex-direction: column;
  align-items: flex-end;
  justify-content: flex-start;
  gap: 8px;
  width: 100%;
  min-width: 0;
  text-align: right;
}

.app-landing-platform-agent-aside {
  position: relative;
  z-index: 2;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: flex-start;
  gap: 0;
  flex-shrink: 0;
}

.app-landing-platform-agent-scene-caption {
  flex-shrink: 0;
  margin: 2px 0 0;
  padding: 6px 12px;
  border-radius: 999px;
  border: 1px solid rgba(125, 211, 252, 0.32);
  background: rgba(15, 23, 42, 0.78);
  box-shadow: 0 6px 18px rgba(2, 6, 23, 0.28);
  text-align: right;
  font-size: clamp(10px, 0.95vw, 12px);
  font-weight: 600;
  letter-spacing: 0.02em;
  line-height: 1.4;
  color: rgba(186, 230, 253, 0.96);
  white-space: nowrap;
}

.app-landing-platform-agent-figure {
  position: relative;
  z-index: 2;
  display: flex;
  flex: 0 0 auto;
  flex-direction: column;
  align-items: center;
  justify-content: flex-start;
  width: 126px;
  height: 156px;
  margin-top: 12px;
}

.app-landing-platform-agent-figure .app-landing-platform-mascot {
  transform: scale(1.22);
  transform-origin: top center;
}

.app-landing-platform-hero-brand-eyebrow {
  margin: 0;
  font-size: clamp(12px, 1.35vw, 16px);
  font-weight: 700;
  letter-spacing: 0.12em;
  text-transform: uppercase;
  color: #93c5fd;
  white-space: nowrap;
}

.app-landing-platform-hero-brand-title {
  margin: 0;
  display: inline-flex;
  align-items: center;
  justify-content: flex-end;
  gap: 0.28em;
  width: 100%;
  font-size: clamp(34px, 4.8vw, 52px);
  font-weight: 800;
  letter-spacing: -0.03em;
  line-height: 1.12;
  white-space: nowrap;
}

.app-landing-platform-hero-brand-clover {
  font-size: 0.9em;
  line-height: 1;
}

.app-landing-platform-hero-brand-label {
  display: inline-block;
  padding: 0.06em 0;
  background: linear-gradient(135deg, #f8fafc 0%, #bfdbfe 45%, #c4b5fd 100%);
  -webkit-background-clip: text;
  background-clip: text;
  color: transparent;
  -webkit-box-decoration-break: clone;
  box-decoration-break: clone;
}

.app-landing-platform-hero-brand-tags {
  list-style: none;
  margin: 0;
  padding: 0;
  display: flex;
  flex-wrap: nowrap;
  align-items: center;
  justify-content: flex-end;
  gap: 6px;
  max-width: none;
  width: 100%;
}

.app-landing-platform-hero-brand-tag {
  display: inline-flex;
  align-items: center;
  gap: 3px;
  padding: 4px 9px 4px 7px;
  border-radius: 999px;
  border: 1px solid rgba(148, 163, 184, 0.28);
  background: rgba(15, 23, 42, 0.62);
  color: #e2e8f0;
  font-size: clamp(9px, 0.95vw, 11px);
  font-weight: 600;
  line-height: 1.2;
  white-space: nowrap;
}

.app-landing-platform-hero-brand-tag-hash {
  font-weight: 800;
  color: #a5b4fc;
}

.app-landing-platform-hero-brand-tag:nth-child(2) {
  color: #ddd6fe;
}

.app-landing-platform-hero-brand-tag:nth-child(2) .app-landing-platform-hero-brand-tag-hash {
  color: #c4b5fd;
}

.app-landing-platform-hero-brand-tag:nth-child(3) {
  color: #bae6fd;
}

.app-landing-platform-hero-brand-tag:nth-child(3) .app-landing-platform-hero-brand-tag-hash {
  color: #7dd3fc;
}

.app-landing-platform-mascot {
  position: relative;
  width: 104px;
  height: 128px;
}

.app-landing-platform-mascot-glow {
  position: absolute;
  left: 50%;
  bottom: 4px;
  width: 76px;
  height: 20px;
  transform: translateX(-50%);
  border-radius: 999px;
  background: radial-gradient(ellipse, rgba(96, 165, 250, 0.34), transparent 70%);
  animation: app-landing-platform-mascot-glow 2s ease-in-out infinite;
}

.app-landing-platform-mascot-shell {
  position: relative;
  z-index: 1;
  display: flex;
  flex-direction: column;
  align-items: center;
  animation: app-landing-platform-mascot-hop 2.2s ease-in-out infinite;
}

.app-landing-platform-mascot-antenna {
  width: 3px;
  height: 10px;
  margin-bottom: -2px;
  border-radius: 999px;
  background: #64748b;
}

.app-landing-platform-mascot-antenna::after {
  content: "";
  display: block;
  width: 8px;
  height: 8px;
  margin: -1px 0 0 -2.5px;
  border-radius: 999px;
  background: linear-gradient(145deg, #fde047, #facc15);
  box-shadow: 0 0 12px rgba(250, 204, 21, 0.55);
  animation: app-landing-platform-mascot-pulse 1.4s ease-in-out infinite;
}

.app-landing-platform-mascot-screen {
  width: 68px;
  height: 50px;
  padding: 8px 6px 6px;
  border: 2px solid #334155;
  border-radius: 16px 16px 12px 12px;
  background: linear-gradient(180deg, #dbeafe 0%, #bfdbfe 100%);
  box-shadow:
    inset 0 -3px 0 rgba(59, 130, 246, 0.12),
    0 5px 0 #1e293b,
    0 8px 18px rgba(59, 130, 246, 0.2);
}

.app-landing-platform-mascot-face {
  position: relative;
  width: 100%;
  height: 100%;
}

.app-landing-platform-mascot-eye {
  position: absolute;
  top: 8px;
  width: 7px;
  height: 9px;
  border-radius: 2px;
  background: #0f172a;
  animation: app-landing-platform-mascot-blink 4.2s ease-in-out infinite;
}

.app-landing-platform-mascot-eye--left {
  left: 14px;
}

.app-landing-platform-mascot-eye--right {
  right: 14px;
}

.app-landing-platform-mascot-smile {
  position: absolute;
  left: 50%;
  bottom: 6px;
  width: 16px;
  height: 8px;
  transform: translateX(-50%);
  border: 2px solid #0f172a;
  border-top: 0;
  border-radius: 0 0 10px 10px;
  background: transparent;
}

.app-landing-platform-mascot-body {
  display: flex;
  align-items: flex-start;
  justify-content: center;
  gap: 3px;
  margin-top: 6px;
}

.app-landing-platform-mascot-torso {
  display: grid;
  place-items: center;
  width: 30px;
  height: 24px;
  border: 2px solid #1e293b;
  border-radius: 6px;
  background: linear-gradient(180deg, #312e81, #1e3a8a);
  color: #e0e7ff;
  font-size: 11px;
  font-weight: 800;
  line-height: 1;
  box-shadow: inset 0 2px 0 rgba(255, 255, 255, 0.16);
}

.app-landing-platform-mascot-arm {
  width: 10px;
  height: 18px;
  margin-top: 3px;
  border: 2px solid #1e293b;
  border-radius: 4px;
  background: #facc15;
  transform-origin: top center;
}

.app-landing-platform-mascot-arm--left {
  animation: app-landing-platform-mascot-wave-left 1.8s ease-in-out infinite;
}

.app-landing-platform-mascot-arm--right {
  animation: app-landing-platform-mascot-wave-right 1.8s ease-in-out infinite;
}

.app-landing-platform-mascot-feet {
  display: flex;
  gap: 8px;
  margin-top: 2px;
}

.app-landing-platform-mascot-feet span {
  width: 16px;
  height: 8px;
  border: 2px solid #1e293b;
  border-radius: 4px 4px 7px 7px;
  background: #fde047;
}

.app-landing-platform-readme {
  flex-basis: 100%;
  width: 100%;
  margin-top: 4px;
  padding: 14px 16px;
  border: 1px solid #e2e8f0;
  border-radius: 10px;
  background: #fff;
}

.app-landing-platform-readme-body {
  font-size: 13px;
  line-height: 1.5;
  color: #334155;
}

.app-landing-platform-readme-body h1 {
  margin: 0 0 10px;
  font-size: 20px;
  line-height: 1.2;
  color: #0f172a;
}

.app-landing-platform-readme-body h2 {
  margin: 16px 0 8px;
  font-size: 14px;
  line-height: 1.3;
  color: #0f172a;
}

.app-landing-platform-readme-body p,
.app-landing-platform-readme-body ul,
.app-landing-platform-readme-body ol {
  margin: 0 0 10px;
}

.app-landing-platform-readme-body table {
  width: 100%;
  margin: 0 0 12px;
  border-collapse: collapse;
  font-size: 12px;
}

.app-landing-platform-readme-body th,
.app-landing-platform-readme-body td {
  padding: 6px 8px;
  border: 1px solid #e2e8f0;
  text-align: left;
  vertical-align: top;
}

.app-landing-platform-readme-body th {
  background: #f8fafc;
  font-weight: 600;
}

.app-landing-platform-readme-body a {
  color: #2563eb;
}

.app-landing-platform-readme-body a:hover {
  color: #1d4ed8;
  text-decoration: underline;
}

.app-landing-platform-readme-body code {
  font-size: 0.92em;
}

.app-landing-platform-visual {
  flex-basis: 100%;
  width: 100%;
  position: relative;
  min-height: clamp(200px, 26vw, 280px);
  margin-top: 8px;
  border-radius: 12px;
  background: #0b1220;
  border: 1px solid rgba(96, 165, 250, 0.28);
  overflow: hidden;
  isolation: isolate;
}

.app-landing-platform-system-map-visual {
  min-height: clamp(420px, 48vw, 520px);
}

.app-landing-platform-catalog-visual {
  min-height: clamp(200px, 26vw, 280px);
}

.app-landing-system-map {
  position: absolute;
  inset: 0;
  z-index: 1;
}

.app-landing-system-map-badge {
  position: absolute;
  top: 12px;
  left: 14px;
  z-index: 4;
  padding: 4px 10px;
  border-radius: 999px;
  border: 1px solid rgba(125, 211, 252, 0.28);
  background: rgba(15, 23, 42, 0.82);
  color: rgba(224, 242, 254, 0.82);
  font-size: 10px;
  font-weight: 700;
  letter-spacing: 0.06em;
  text-transform: uppercase;
  backdrop-filter: blur(4px);
}

.app-landing-system-map-diagram {
  position: absolute;
  inset: 34px 10px 52px;
  display: flex;
  flex-direction: column;
  align-items: stretch;
  gap: 10px;
  min-height: 0;
}

.app-landing-system-map-footer {
  position: absolute;
  right: 14px;
  bottom: 12px;
  left: 14px;
  z-index: 4;
  display: flex;
  justify-content: center;
}

.app-landing-system-map-draft-btn {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  padding: 8px 14px;
  border-radius: 10px;
  border: 1px solid rgba(125, 211, 252, 0.42);
  background: linear-gradient(135deg, rgba(37, 99, 235, 0.92) 0%, rgba(29, 78, 216, 0.98) 100%);
  color: #eff6ff;
  font-size: 12px;
  font-weight: 700;
  text-decoration: none;
  box-shadow: 0 8px 20px rgba(37, 99, 235, 0.28);
  transition:
    transform 0.16s ease,
    box-shadow 0.16s ease,
    border-color 0.16s ease;
}

.app-landing-system-map-draft-btn:hover {
  transform: translateY(-1px);
  border-color: rgba(191, 219, 254, 0.65);
  box-shadow: 0 12px 26px rgba(37, 99, 235, 0.36);
}

.app-landing-system-map-svg {
  position: absolute;
  inset: 0;
  z-index: 0;
  overflow: visible;
  pointer-events: none;
}

.app-landing-system-map-link {
  fill: none;
  stroke: rgba(125, 211, 252, 0.42);
  stroke-width: 1.5;
  stroke-linecap: round;
  stroke-linejoin: round;
}

.app-landing-system-map-root,
.app-landing-system-map-columns,
.app-landing-system-map-column,
.app-landing-system-map-chain,
.app-landing-system-map-row,
.app-landing-system-map-fork,
.app-landing-system-map-fork-main,
.app-landing-system-map-fork-side,
.app-landing-system-map-group,
.app-landing-system-map-stack {
  position: relative;
  z-index: 1;
}

.app-landing-system-map-root {
  display: flex;
  justify-content: center;
  flex: 0 0 auto;
}

.app-landing-system-map-columns {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 8px;
  flex: 1 1 auto;
  min-height: 0;
  align-items: start;
}

.app-landing-system-map-column {
  min-width: 0;
}

.app-landing-system-map-chain {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 10px;
}

.app-landing-system-map-row {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  gap: 6px;
  width: 100%;
}

.app-landing-system-map-fork {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 10px;
  width: 100%;
}

.app-landing-system-map-fork-main {
  flex: 0 0 auto;
}

.app-landing-system-map-fork-side {
  display: flex;
  flex-direction: column;
  gap: 6px;
  flex: 0 0 auto;
  padding-left: 8px;
  border-left: 1px dashed rgba(167, 139, 250, 0.35);
}

.app-landing-system-map-group {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 8px;
  width: 100%;
}

.app-landing-system-map-stack {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 6px;
  width: 100%;
  padding-top: 4px;
  border-top: 1px dashed rgba(52, 211, 153, 0.32);
}

.app-landing-system-map-node {
  display: inline-flex;
  flex-direction: column;
  align-items: center;
  gap: 3px;
  max-width: 100%;
  padding: 7px 10px;
  border-radius: 10px;
  border: 1px solid rgba(148, 163, 184, 0.34);
  background: rgba(15, 23, 42, 0.82);
  box-shadow:
    0 8px 20px rgba(2, 6, 23, 0.28),
    inset 0 1px 0 rgba(255, 255, 255, 0.05);
  text-align: center;
}

.app-landing-system-map-node.is-hub {
  padding: 10px 14px;
  border-radius: 14px;
  border-color: rgba(250, 204, 21, 0.62);
  box-shadow:
    0 0 0 3px rgba(250, 204, 21, 0.12),
    0 10px 28px rgba(2, 6, 23, 0.35);
}

.app-landing-system-map-node.is-pillar {
  border-width: 1.5px;
  font-weight: 700;
}

.app-landing-system-map-node.is-leaf {
  padding: 5px 8px;
  border-radius: 8px;
  font-size: 10px;
}

.app-landing-system-map-node.is-tone-blue {
  border-color: rgba(96, 165, 250, 0.45);
  background: linear-gradient(180deg, rgba(30, 58, 138, 0.55), rgba(15, 23, 42, 0.88));
}

.app-landing-system-map-node.is-tone-violet {
  border-color: rgba(167, 139, 250, 0.45);
  background: linear-gradient(180deg, rgba(76, 29, 149, 0.5), rgba(15, 23, 42, 0.88));
}

.app-landing-system-map-node.is-tone-emerald {
  border-color: rgba(52, 211, 153, 0.45);
  background: linear-gradient(180deg, rgba(6, 78, 59, 0.5), rgba(15, 23, 42, 0.88));
}

.app-landing-system-map-node.is-tone-amber {
  border-color: rgba(251, 191, 36, 0.45);
  background: linear-gradient(180deg, rgba(120, 53, 15, 0.5), rgba(15, 23, 42, 0.88));
}

.app-landing-system-map-node.is-tone-gold {
  border-color: rgba(250, 204, 21, 0.55);
  background:
    radial-gradient(circle at 35% 20%, rgba(255, 255, 255, 0.12), transparent 55%),
    linear-gradient(180deg, rgba(49, 46, 129, 0.72), rgba(15, 23, 42, 0.9));
}

.app-landing-system-map-node-icon {
  font-size: 14px;
  line-height: 1;
}

.app-landing-system-map-node.is-hub .app-landing-system-map-node-icon {
  font-size: 18px;
}

.app-landing-system-map-node-label {
  font-size: 11px;
  font-weight: 600;
  line-height: 1.25;
  color: #e2e8f0;
}

.app-landing-system-map-node.is-hub .app-landing-system-map-node-label {
  font-size: 12px;
  color: #fef9c3;
}

.app-landing-system-map-node.is-leaf .app-landing-system-map-node-label {
  font-size: 10px;
  color: #cbd5e1;
}

.app-landing-system-map-node-meta {
  padding: 1px 7px;
  border-radius: 999px;
  border: 1px solid rgba(148, 163, 184, 0.28);
  background: rgba(2, 6, 23, 0.45);
  color: #94a3b8;
  font-size: 9px;
  font-weight: 600;
  line-height: 1.2;
}

@media (max-width: 980px) {
  .app-landing-system-map-columns {
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 12px 10px;
  }

  .app-landing-platform-system-map-visual {
    min-height: clamp(560px, 72vw, 720px);
  }

  .app-landing-platform-hero {
    grid-template-columns: 1fr;
  }

  .app-landing-platform-learning-body {
    grid-template-columns: 1fr;
  }

  .app-landing-platform-learning-orbit-wrap {
    justify-content: center;
  }

  .app-landing-platform-learning-sphere-orbs {
    grid-template-columns: 1fr;
    gap: 8px;
  }

  .app-landing-platform-learning-sphere-field {
    padding: 16px 14px 14px;
  }

  .app-landing-platform-learning-orbit {
    width: min(100%, 300px);
    --orbit-radius: 108px;
    margin: 0 auto;
  }

  .app-landing-platform-agent-scene {
    grid-template-columns: 1fr;
    gap: 12px;
    padding: 0;
  }

  .app-landing-platform-agent-copy {
    align-items: center;
    text-align: center;
  }

  .app-landing-platform-hero-brand-title {
    justify-content: center;
    white-space: normal;
  }

  .app-landing-platform-hero-brand-eyebrow {
    white-space: normal;
  }

  .app-landing-platform-hero-brand-tags {
    flex-wrap: wrap;
    justify-content: center;
  }

  .app-landing-platform-agent-scene-caption {
    text-align: center;
    white-space: normal;
    max-width: 100%;
  }
}

@media (max-width: 560px) {
  .app-landing-system-map-columns {
    grid-template-columns: 1fr;
  }

  .app-landing-platform-learning-orbit {
    --orbit-radius: 96px;
    width: min(100%, 280px);
  }
}

.app-landing-platform-visual-bg {
  position: absolute;
  inset: 0;
  pointer-events: none;
}

.app-landing-platform-grid {
  position: absolute;
  inset: -50% -20%;
  background-image:
    linear-gradient(rgba(56, 189, 248, 0.07) 1px, transparent 1px),
    linear-gradient(90deg, rgba(56, 189, 248, 0.07) 1px, transparent 1px);
  background-size: 42px 42px;
  transform: perspective(480px) rotateX(58deg);
  transform-origin: center 80%;
  animation: app-landing-platform-grid-drift 18s linear infinite;
  opacity: 0.55;
}

.app-landing-platform-glow {
  position: absolute;
  width: 42%;
  height: 120%;
  top: -10%;
  border-radius: 50%;
  filter: blur(48px);
  opacity: 0.45;
  animation: app-landing-platform-glow-pulse 6s ease-in-out infinite;
}

.app-landing-platform-glow--left {
  left: -8%;
  background: radial-gradient(circle, rgba(37, 99, 235, 0.55), transparent 70%);
}

.app-landing-platform-glow--right {
  right: -8%;
  background: radial-gradient(circle, rgba(6, 182, 212, 0.45), transparent 70%);
  animation-delay: -3s;
}

.app-landing-platform-scan {
  position: absolute;
  inset: 0;
  background: linear-gradient(
    180deg,
    transparent 0%,
    rgba(56, 189, 248, 0.06) 48%,
    rgba(56, 189, 248, 0.14) 50%,
    rgba(56, 189, 248, 0.06) 52%,
    transparent 100%
  );
  background-size: 100% 220%;
  animation: app-landing-platform-scan-sweep 5.5s ease-in-out infinite;
  opacity: 0.7;
}

.app-landing-platform-scene {
  position: absolute;
  inset: 0;
}

.app-landing-platform-lane {
  position: absolute;
  left: 0;
  right: 0;
  top: calc(18% + var(--lane-i, 0) * 14%);
  height: 1px;
  background: linear-gradient(
    90deg,
    transparent 0%,
    rgba(96, 165, 250, 0.15) 12%,
    rgba(96, 165, 250, 0.35) 50%,
    rgba(96, 165, 250, 0.15) 88%,
    transparent 100%
  );
}

.app-landing-platform-packet {
  position: absolute;
  top: -3px;
  width: 28px;
  height: 7px;
  border-radius: 999px;
  background: linear-gradient(90deg, transparent, rgba(125, 211, 252, 0.95), transparent);
  box-shadow: 0 0 12px rgba(56, 189, 248, 0.65);
  animation: app-landing-platform-packet-flow calc(5s + var(--lane-i, 0) * 0.8s) linear infinite;
  animation-delay: calc(var(--packet-i, 0) * -1.6s - var(--lane-i, 0) * 0.4s);
  opacity: 0;
}

.app-landing-platform-hub {
  position: absolute;
  top: 50%;
  left: 50%;
  width: min(220px, 38%);
  height: min(220px, 72%);
  aspect-ratio: 1;
  transform: translate(-50%, -50%);
}

.app-landing-platform-core {
  position: absolute;
  top: 50%;
  left: 50%;
  width: 26px;
  height: 26px;
  margin: -13px 0 0 -13px;
  border-radius: 50%;
  background: radial-gradient(circle at 35% 35%, #93c5fd, #2563eb 55%, #1e3a8a);
  box-shadow:
    0 0 28px rgba(37, 99, 235, 0.65),
    0 0 64px rgba(37, 99, 235, 0.35);
  animation: app-landing-platform-core-pulse 2.8s ease-in-out infinite;
}

.app-landing-platform-orbit-ring {
  position: absolute;
  inset: 8%;
  border: 1px dashed rgba(125, 211, 252, 0.35);
  border-radius: 50%;
  animation: app-landing-platform-ring-spin 22s linear infinite;
}

.app-landing-platform-orbit {
  position: absolute;
  inset: 0;
  animation: app-landing-platform-orbit-spin var(--orbit-dur, 10s) linear infinite;
}

.app-landing-platform-orbit--1 {
  --orbit-dur: 8s;
}

.app-landing-platform-orbit--2 {
  --orbit-dur: 12s;
  inset: 14%;
  animation-direction: reverse;
}

.app-landing-platform-orbit--3 {
  --orbit-dur: 16s;
  inset: 28%;
}

.app-landing-platform-orbit--4 {
  --orbit-dur: 20s;
  inset: 42%;
  animation-direction: reverse;
}

.app-landing-platform-dot {
  position: absolute;
  top: 0;
  left: 50%;
  width: 9px;
  height: 9px;
  margin-left: -4.5px;
  border-radius: 50%;
  background: #6366f1;
  box-shadow: 0 0 14px rgba(99, 102, 241, 0.75);
}

.app-landing-platform-dot--violet {
  width: 8px;
  height: 8px;
  margin-left: -4px;
  background: #a78bfa;
  box-shadow: 0 0 14px rgba(167, 139, 250, 0.75);
}

.app-landing-platform-dot--cyan {
  width: 7px;
  height: 7px;
  margin-left: -3.5px;
  background: #22d3ee;
  box-shadow: 0 0 14px rgba(34, 211, 238, 0.75);
}

.app-landing-platform-dot--amber {
  width: 6px;
  height: 6px;
  margin-left: -3px;
  background: #fbbf24;
  box-shadow: 0 0 12px rgba(251, 191, 36, 0.7);
}

.app-landing-platform-spark {
  position: absolute;
  top: 50%;
  left: 50%;
  width: 4px;
  height: 4px;
  margin: -2px 0 0 -2px;
  border-radius: 50%;
  background: rgba(125, 211, 252, 0.85);
  animation: app-landing-platform-spark-float 4.5s ease-in-out infinite;
  animation-delay: calc(var(--spark-i, 0) * -0.55s);
}

.app-landing-platform-chip {
  position: absolute;
  padding: 4px 10px;
  border-radius: 999px;
  font-size: 10px;
  font-weight: 700;
  letter-spacing: 0.02em;
  color: rgba(224, 242, 254, 0.92);
  border: 1px solid rgba(125, 211, 252, 0.35);
  background: rgba(15, 23, 42, 0.72);
  backdrop-filter: blur(4px);
  animation: app-landing-platform-chip-float 5s ease-in-out infinite;
  animation-delay: calc(var(--chip-i, 0) * -0.9s);
  white-space: nowrap;
}

.app-landing-platform-chip:nth-child(7) {
  top: 16%;
  left: 10%;
}

.app-landing-platform-chip:nth-child(8) {
  top: 44%;
  left: 8%;
}

.app-landing-platform-chip:nth-child(9) {
  bottom: 20%;
  left: 12%;
}

.app-landing-platform-chip:nth-child(10) {
  top: 16%;
  right: 10%;
}

.app-landing-platform-chip:nth-child(11) {
  top: 44%;
  right: 8%;
}

.app-landing-platform-chip:nth-child(12) {
  bottom: 20%;
  right: 12%;
}

.app-landing-platform-chip:nth-child(13) {
  bottom: 34%;
  left: 44%;
}

@keyframes app-landing-platform-grid-drift {
  from {
    background-position: 0 0;
  }
  to {
    background-position: 42px 42px;
  }
}

@keyframes app-landing-platform-glow-pulse {
  0%,
  100% {
    opacity: 0.35;
    transform: scale(1);
  }
  50% {
    opacity: 0.55;
    transform: scale(1.06);
  }
}

@keyframes app-landing-platform-scan-sweep {
  0%,
  100% {
    background-position: 0 -120%;
  }
  50% {
    background-position: 0 120%;
  }
}

@keyframes app-landing-platform-packet-flow {
  0% {
    left: -8%;
    opacity: 0;
  }
  8% {
    opacity: 1;
  }
  92% {
    opacity: 1;
  }
  100% {
    left: 108%;
    opacity: 0;
  }
}

@keyframes app-landing-platform-chip-float {
  0%,
  100% {
    transform: translateY(0);
  }
  50% {
    transform: translateY(-4px);
  }
}

@keyframes app-landing-platform-core-pulse {
  0%,
  100% {
    transform: scale(1);
    box-shadow:
      0 0 28px rgba(37, 99, 235, 0.65),
      0 0 64px rgba(37, 99, 235, 0.35);
  }
  50% {
    transform: scale(1.12);
    box-shadow:
      0 0 36px rgba(37, 99, 235, 0.85),
      0 0 80px rgba(37, 99, 235, 0.45);
  }
}

@keyframes app-landing-platform-orbit-spin {
  to {
    transform: rotate(360deg);
  }
}

@keyframes app-landing-platform-ring-spin {
  to {
    transform: rotate(-360deg);
  }
}

@keyframes app-landing-platform-spark-float {
  0%,
  100% {
    opacity: 0;
    transform: rotate(calc(var(--spark-i, 0) * 45deg)) translateY(-46%) scale(0.5);
  }
  35%,
  65% {
    opacity: 0.9;
  }
  50% {
    transform: rotate(calc(var(--spark-i, 0) * 45deg + 180deg)) translateY(-52%) scale(1);
  }
}

@keyframes app-landing-platform-agent-stars-twinkle {
  from {
    opacity: 0.45;
  }
  to {
    opacity: 0.9;
  }
}

@keyframes app-landing-platform-mascot-hop {
  0%,
  100% {
    transform: translateY(0);
  }
  50% {
    transform: translateY(-4px);
  }
}

@keyframes app-landing-platform-mascot-glow {
  0%,
  100% {
    opacity: 0.65;
    transform: translateX(-50%) scale(0.92);
  }
  50% {
    opacity: 1;
    transform: translateX(-50%) scale(1.05);
  }
}

@keyframes app-landing-platform-mascot-pulse {
  0%,
  100% {
    transform: scale(1);
    box-shadow: 0 0 12px rgba(250, 204, 21, 0.55);
  }
  50% {
    transform: scale(1.12);
    box-shadow: 0 0 18px rgba(250, 204, 21, 0.8);
  }
}

@keyframes app-landing-platform-mascot-blink {
  0%,
  44%,
  48%,
  100% {
    transform: scaleY(1);
  }
  46% {
    transform: scaleY(0.12);
  }
}

@keyframes app-landing-platform-mascot-wave-left {
  0%,
  100% {
    transform: rotate(8deg);
  }
  50% {
    transform: rotate(-14deg);
  }
}

@keyframes app-landing-platform-mascot-wave-right {
  0%,
  100% {
    transform: rotate(-8deg);
  }
  50% {
    transform: rotate(14deg);
  }
}

@media (prefers-reduced-motion: reduce) {
  .app-landing-platform-grid,
  .app-landing-platform-glow,
  .app-landing-platform-scan,
  .app-landing-platform-packet,
  .app-landing-platform-core,
  .app-landing-platform-orbit-ring,
  .app-landing-platform-orbit,
  .app-landing-platform-spark,
  .app-landing-platform-chip,
  .app-landing-platform-hero-stars,
  .app-landing-platform-mascot-shell,
  .app-landing-platform-mascot-glow,
  .app-landing-platform-mascot-antenna::after,
  .app-landing-platform-mascot-eye,
  .app-landing-platform-mascot-arm {
    animation: none !important;
  }
}

.app-landing-platform-sections {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(180px, 1fr));
  gap: 12px;
  flex-basis: 100%;
  width: 100%;
  margin-top: 4px;
}

.app-landing-platform-section {
  padding: 10px 12px;
  border: 1px solid #e2e8f0;
  border-radius: 10px;
  background: #fff;
}

.app-landing-platform-section-title {
  margin: 0 0 8px;
  font-size: 12px;
  font-weight: 700;
  letter-spacing: 0.02em;
  text-transform: uppercase;
  color: #64748b;
}

.app-landing-platform-section-items {
  display: flex;
  flex-direction: column;
  gap: 4px;
}

.app-landing-platform-link {
  padding: 4px 0;
  border: 0;
  background: transparent;
  text-align: left;
  font-size: 13px;
  color: #2563eb;
  cursor: pointer;
}

.app-landing-platform-link:hover {
  color: #1d4ed8;
  text-decoration: underline;
}

.app-landing-header {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: 16px;
  padding-bottom: 0;
  border-bottom: 0;
}

.app-landing-header-actions {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  justify-content: flex-end;
  gap: 10px;
}

.app-landing-view-toggle {
  display: inline-flex;
  padding: 3px;
  border: 1px solid #cbd5e1;
  border-radius: 999px;
  background: #f1f5f9;
}

.app-landing-view-toggle-btn {
  padding: 6px 12px;
  border: 0;
  border-radius: 999px;
  background: transparent;
  color: #64748b;
  font-size: 12px;
  font-weight: 600;
  cursor: pointer;
  transition: background 0.15s ease, color 0.15s ease, box-shadow 0.15s ease;
}

.app-landing-view-toggle-btn.is-active {
  background: #fff;
  color: #0f172a;
  box-shadow: 0 1px 4px rgba(15, 23, 42, 0.08);
}

.app-landing-view-toggle-btn:focus-visible {
  outline: 2px solid #6366f1;
  outline-offset: 2px;
}

.app-landing-bg-toggle {
  display: inline-flex;
  padding: 3px;
  border: 1px solid #cbd5e1;
  border-radius: 999px;
  background: #f1f5f9;
}

.app-landing-bg-toggle-btn {
  padding: 6px 10px;
  border: 0;
  border-radius: 999px;
  background: transparent;
  color: #64748b;
  font-size: 11px;
  font-weight: 600;
  cursor: pointer;
  transition: background 0.15s ease, color 0.15s ease, box-shadow 0.15s ease;
  white-space: nowrap;
}

.app-landing-bg-toggle-btn.is-active {
  background: #fff;
  color: #0f172a;
  box-shadow: 0 1px 4px rgba(15, 23, 42, 0.08);
}

.app-landing-bg-toggle-btn:focus-visible {
  outline: 2px solid #6366f1;
  outline-offset: 2px;
}

.app-landing-header-copy {
  min-width: 0;
}

.app-landing-title {
  margin: 0 0 6px;
  font-size: clamp(1.5rem, 2.4vw, 1.875rem);
  font-weight: 700;
  color: #0f172a;
  letter-spacing: -0.03em;
}

.app-landing-sub {
  margin: 0;
  font-size: 14px;
  line-height: 1.5;
  color: #64748b;
  max-width: 42ch;
}

.app-landing-manage-btn {
  flex-shrink: 0;
  padding: 7px 12px;
  border: 1px solid #cbd5e1;
  border-radius: 8px;
  background: #fff;
  color: #475569;
  font-size: 13px;
  font-weight: 600;
  cursor: pointer;
  transition: border-color 0.15s ease, background 0.15s ease;
}

.app-landing-manage-btn:hover {
  border-color: #94a3b8;
  background: #fff;
}

.app-landing-agents {
  display: grid;
  grid-template-columns: repeat(auto-fill, minmax(112px, 1fr));
  gap: 12px;
}

.app-landing-agents.is-grouped-layout {
  display: flex;
  flex-direction: column;
  gap: 24px;
}

.app-landing-agents:not(.is-grouped-layout) .app-landing-orchestrator-section {
  grid-column: 1 / -1;
  margin-bottom: 4px;
}

.app-landing-manage-btn.is-active {
  border-color: #6366f1;
  background: #eef2ff;
  color: #4338ca;
}

.app-landing-settings-btn {
  min-width: 7.25rem;
  text-align: center;
}

.app-landing-pane--settings .app-landing-platform {
  display: none;
}

.app-landing-create-agent-btn {
  border-color: #c7d2fe;
  color: #4338ca;
}

.app-landing-create-agent-btn:hover {
  border-color: #818cf8;
  background: #eef2ff;
}

.app-landing-groups {
  display: flex;
  flex-direction: column;
  gap: 16px;
}

.app-landing-groups-toolbar {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  justify-content: space-between;
  gap: 10px;
}

.app-landing-groups-note {
  margin: 0;
  font-size: 13px;
  color: #64748b;
}

.app-landing-groups-create-btn {
  padding: 7px 12px;
  border: 1px solid #cbd5e1;
  border-radius: 8px;
  background: #fff;
  color: #475569;
  font-size: 13px;
  font-weight: 600;
  cursor: pointer;
  transition: border-color 0.15s ease, background 0.15s ease;
}

.app-landing-groups-create-btn:hover {
  border-color: #94a3b8;
  background: #f8fafc;
}

.app-landing-groups-content {
  display: flex;
  flex-direction: column;
  gap: 18px;
}

.app-landing-group-section {
  position: relative;
  isolation: isolate;
  overflow: hidden;
  padding: 14px;
  border: 1px solid #e2e8f0;
  border-radius: 14px;
  background: #fff;
  display: flex;
  flex-direction: column;
  gap: 12px;
}

.app-landing-group-section.has-background::before,
.app-landing-group-section.has-background::after {
  content: "";
  position: absolute;
  inset: 0;
  pointer-events: none;
  border-radius: inherit;
}

.app-landing-group-section.has-background::before {
  z-index: 0;
  background-image: var(--group-bg-image);
  background-size: cover;
  background-position: center;
  opacity: 0.82;
}

.app-landing-group-section.has-background::after {
  z-index: 1;
}

.app-landing-group-section.has-background.is-group-appearance-light::after {
  background: rgba(255, 255, 255, 0.46);
}

.app-landing-group-section.has-background.is-group-appearance-dark::after {
  background: rgba(15, 23, 42, 0.36);
}

.app-landing-group-section.has-background > * {
  position: relative;
  z-index: 2;
}

.app-landing-group-section.has-background.is-group-appearance-dark .app-landing-group-title-input {
  border-color: rgba(148, 163, 184, 0.35);
  background: rgba(15, 23, 42, 0.45);
  color: #f8fafc;
}

.app-landing-group-section.has-background.is-group-appearance-dark .app-landing-group-title-input:focus {
  border-color: #93c5fd;
  box-shadow: 0 0 0 2px rgba(147, 197, 253, 0.18);
}

.app-landing-group-section.has-background.is-group-appearance-dark .app-landing-group-count {
  color: #e2e8f0;
}

.app-landing-group-section.has-background.is-group-appearance-dark .app-landing-group-add-select {
  border-color: rgba(148, 163, 184, 0.35);
  background: rgba(15, 23, 42, 0.45);
  color: #f8fafc;
}

.app-landing-group-section.has-background.is-group-appearance-dark .app-landing-group-bg-open-btn,
.app-landing-group-section.has-background.is-group-appearance-dark .app-landing-group-appearance-btn {
  border-color: rgba(147, 197, 253, 0.45);
  background: rgba(15, 23, 42, 0.45);
  color: #dbeafe;
}

.app-landing-group-section.has-background.is-group-appearance-dark .app-landing-group-bg-open-btn:hover,
.app-landing-group-section.has-background.is-group-appearance-dark .app-landing-group-appearance-btn:hover {
  background: rgba(30, 41, 59, 0.72);
}

.app-landing-group-section.has-background.is-group-appearance-dark .app-landing-group-delete-btn {
  border-color: rgba(248, 113, 113, 0.45);
  background: rgba(15, 23, 42, 0.45);
  color: #fecaca;
}

.app-landing-group-section.has-background.is-group-appearance-dark .app-landing-group-delete-btn:hover {
  background: rgba(127, 29, 29, 0.35);
}

.app-landing-group-section.has-background.is-group-appearance-dark .app-landing-group-empty {
  border-color: rgba(148, 163, 184, 0.35);
  background: rgba(15, 23, 42, 0.35);
  color: #e2e8f0;
}

.app-landing-group-section.has-background.is-group-appearance-dark .menu-sort-handle {
  color: #cbd5e1;
}

.app-landing-group-section.has-background.is-group-appearance-dark .menu-sort-handle:hover {
  background: rgba(15, 23, 42, 0.45);
  color: #f8fafc;
}

.app-landing-group-section.has-background.is-group-appearance-dark.is-readonly .app-landing-group-title-input {
  color: #f8fafc;
}

.app-landing-group-section.is-display-only .app-landing-group-head {
  width: 100%;
}

.app-landing-group-title-badge {
  display: flex;
  align-items: center;
  justify-content: flex-start;
  width: 100%;
  box-sizing: border-box;
  margin: 0;
  padding: 8px 14px;
  border: 1px solid #c7d2fe;
  border-radius: 10px;
  background: #eef2ff;
  box-shadow:
    0 1px 2px rgba(15, 23, 42, 0.06),
    inset 0 1px 0 rgba(255, 255, 255, 0.85);
  color: #3730a3;
  font-size: 14px;
  font-weight: 700;
  letter-spacing: 0.01em;
  line-height: 1.2;
  text-align: left;
}

.app-landing-group-section.has-background.is-group-appearance-light .app-landing-group-title-badge {
  border-color: rgba(99, 102, 241, 0.35);
  background: rgba(255, 255, 255, 0.9);
  color: #312e81;
}

.app-landing-group-section.has-background.is-group-appearance-dark .app-landing-group-title-badge {
  border-color: rgba(148, 163, 184, 0.5);
  background: rgba(15, 23, 42, 0.78);
  box-shadow:
    0 2px 8px rgba(0, 0, 0, 0.22),
    inset 0 1px 0 rgba(255, 255, 255, 0.08);
  color: #f8fafc;
}

.app-landing-orchestrator-section {
  border: none;
  background: transparent;
  padding: 0 0 6px;
  gap: 12px;
}

.app-landing-orchestrator-head {
  justify-content: center;
}

.app-landing-orchestrator-title-badge {
  width: auto;
  min-width: min(320px, 100%);
  max-width: 100%;
  justify-content: center;
  text-align: center;
  border-color: rgba(245, 158, 11, 0.45);
  background: linear-gradient(165deg, #fffbeb 0%, #fef3c7 100%);
  color: #b45309;
  box-shadow:
    0 1px 2px rgba(180, 83, 9, 0.08),
    inset 0 1px 0 rgba(255, 255, 255, 0.85);
}

.app-landing-orchestrator-agents,
.app-landing-orchestrator-section .app-landing-group-agents {
  display: flex;
  justify-content: center;
  width: 100%;
}

.app-landing-orchestrator-agent-wrap {
  width: min(320px, 100%);
  flex: 0 1 auto;
}

.app-landing-orchestrator-agent-wrap .app-landing-agent-card {
  width: 100%;
}

.app-landing-group-appearance-btn {
  padding: 6px 10px;
  border: 1px solid #cbd5e1;
  border-radius: 8px;
  background: #fff;
  color: #334155;
  font-size: 12px;
  font-weight: 600;
  cursor: pointer;
  white-space: nowrap;
}

.app-landing-group-appearance-btn:hover {
  background: #f8fafc;
}

.app-landing-group-section.is-dragging {
  opacity: 0.55;
}

.app-landing-group-sort-handle {
  flex: 0 0 18px;
  align-self: center;
}

.app-landing-group-bg-open-btn {
  padding: 6px 10px;
  border: 1px solid #bfdbfe;
  border-radius: 8px;
  background: #fff;
  color: #1d4ed8;
  font-size: 12px;
  font-weight: 600;
  cursor: pointer;
  white-space: nowrap;
}

.app-landing-group-bg-open-btn:hover {
  background: #eff6ff;
}

.app-landing-group-bg-open-btn:disabled {
  opacity: 0.45;
  filter: blur(0.4px);
  cursor: not-allowed;
  pointer-events: none;
  background: #f8fafc;
  border-color: #e2e8f0;
  color: #94a3b8;
}

.app-landing-group-bg-open-btn:disabled:hover {
  background: #f8fafc;
}

.app-landing-group-bg-modal-card {
  width: min(520px, calc(100vw - 32px));
}

.app-landing-group-bg-modal-upload {
  margin: 0 0 4px;
}

.app-landing-group-bg-modal-upload .preview-upload-zone {
  min-height: 120px;
  max-height: min(220px, 34vh);
}

.app-landing-group-head {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 10px;
  margin-bottom: 0;
}

.app-landing-group-title-input {
  flex: 1 1 180px;
  min-width: 0;
  padding: 7px 10px;
  border: 1px solid #cbd5e1;
  border-radius: 8px;
  background: #fff;
  color: #0f172a;
  font-size: 15px;
  font-weight: 600;
}

.app-landing-group-title-input:focus {
  outline: none;
  border-color: #6366f1;
  box-shadow: 0 0 0 2px rgba(99, 102, 241, 0.12);
}

.app-landing-group-count {
  font-size: 12px;
  color: #64748b;
  white-space: nowrap;
}

.app-landing-group-add-wrap {
  display: inline-flex;
  align-items: center;
  gap: 6px;
}

.app-landing-group-add-select {
  min-width: 160px;
  padding: 6px 8px;
  border: 1px solid #cbd5e1;
  border-radius: 8px;
  background: #fff;
  color: #334155;
  font-size: 13px;
}

.app-landing-group-delete-btn {
  padding: 6px 10px;
  border: 1px solid #fecaca;
  border-radius: 8px;
  background: #fff;
  color: #dc2626;
  font-size: 12px;
  font-weight: 600;
  cursor: pointer;
}

.app-landing-group-delete-btn:hover {
  background: #fef2f2;
}

.app-landing-group-agents {
  display: grid;
  grid-template-columns: repeat(auto-fill, minmax(240px, 1fr));
  gap: 12px;
}

.app-landing-group-agents.app-landing-orchestrator-agents {
  display: flex;
  justify-content: center;
  width: 100%;
}

.app-landing-group-agent-wrap {
  position: relative;
}

.app-landing-group-agent-wrap.is-dragging {
  opacity: 0.55;
}

.app-landing-group-agent-wrap--sortable .app-landing-agent-card {
  padding-left: 30px;
}

.app-landing-group-agent-remove {
  position: absolute;
  top: 8px;
  right: 8px;
  z-index: 2;
  width: 24px;
  height: 24px;
  border: 1px solid #e2e8f0;
  border-radius: 999px;
  background: rgba(255, 255, 255, 0.92);
  color: #64748b;
  font-size: 14px;
  line-height: 1;
  cursor: pointer;
}

.app-landing-group-agent-remove:hover {
  color: #dc2626;
  border-color: #fecaca;
  background: #fff;
}

.app-landing-group-empty {
  margin: 0;
  padding: 10px 12px;
  border: 1px dashed #cbd5e1;
  border-radius: 10px;
  font-size: 13px;
  color: #64748b;
  background: #f8fafc;
}

.app-landing-groups-loading,
.app-landing-groups-error {
  margin: 0;
  font-size: 14px;
  color: #64748b;
}

.app-landing-groups-error {
  color: #dc2626;
}

.app-landing-orbit {
  position: relative;
  flex: 1;
  min-height: clamp(440px, 60vh, 760px);
  border: 1px solid rgba(148, 163, 184, 0.26);
  border-radius: 16px;
  overflow: hidden;
  box-shadow:
    inset 0 0 0 1px rgba(255, 255, 255, 0.35),
    0 10px 28px rgba(15, 23, 42, 0.06);
}

.app-landing-orbit-stack.has-focus-panel .app-landing-orbit {
  border: 0;
  border-radius: 0;
  box-shadow: none;
}

.app-landing-orbit-ambience {
  position: absolute;
  inset: 0;
  z-index: 0;
  overflow: hidden;
  border-radius: inherit;
  pointer-events: none;
  opacity: 0;
  transition: opacity 0.35s ease;
}

.app-landing-orbit-stage > .app-landing-orbit-ambience {
  z-index: 0;
}

.app-landing-pane.is-landing-bg-light .app-landing-orbit-ambience {
  opacity: 1;
}

.app-landing-orbit-ambience-grid {
  position: absolute;
  inset: 0;
  background-image: radial-gradient(rgba(148, 163, 184, 0.2) 1px, transparent 1px);
  background-size: 26px 26px;
  mask-image: radial-gradient(ellipse 88% 78% at var(--orbit-center-x, 50%) var(--orbit-center-y, 50%), #000 0%, transparent 74%);
  opacity: 0.5;
}

.app-landing-orbit-ambience-radar {
  position: absolute;
  left: var(--orbit-center-x, 50%);
  top: var(--orbit-center-y, 50%);
  width: 0;
  height: 0;
}

.app-landing-orbit-ambience-ring {
  position: absolute;
  left: 0;
  top: 0;
  width: 72px;
  height: 72px;
  margin: -36px 0 0 -36px;
  border-style: solid;
  border-color: rgba(59, 130, 246, 0.42);
  border-radius: 50%;
  background: transparent;
  box-shadow: 0 0 18px rgba(59, 130, 246, 0.1);
  animation: app-landing-orbit-ambience-ping 14s ease-out infinite;
}

.app-landing-orbit-ambience-ring:nth-child(2) {
  animation-delay: 2.8s;
}

.app-landing-orbit-ambience-ring:nth-child(3) {
  animation-delay: 5.6s;
}

.app-landing-orbit-ambience-ring:nth-child(4) {
  animation-delay: 8.4s;
}

.app-landing-orbit-ambience-ring:nth-child(5) {
  animation-delay: 11.2s;
}

.app-landing-orbit-ambience-sweep {
  position: absolute;
  left: 0;
  top: 0;
  width: min(140vmax, 1600px);
  height: min(140vmax, 1600px);
  margin-top: calc(min(70vmax, 800px) * -1);
  margin-left: calc(min(70vmax, 800px) * -1);
  border-radius: 50%;
  background: conic-gradient(
    from 0deg at 50% 50%,
    transparent 0deg,
    rgba(59, 130, 246, 0.14) 24deg,
    rgba(96, 165, 250, 0.05) 40deg,
    transparent 56deg
  );
  animation: app-landing-orbit-radar-sweep 16s linear infinite;
}

.app-landing-orbit-sea-waves {
  position: absolute;
  left: 0;
  right: 0;
  bottom: 0;
  height: 48%;
  z-index: 1;
  overflow: hidden;
  pointer-events: none;
  mask-image: linear-gradient(180deg, transparent 0%, #000 18%, #000 100%);
}

.app-landing-orbit-sea-wave {
  position: absolute;
  left: -35%;
  width: 170%;
  height: 54%;
  border-radius: 42% 58% 46% 54%;
  transform-origin: 50% 62%;
  will-change: transform, border-radius;
  overflow: hidden;
}

.app-landing-orbit-sea-wave::after {
  content: "";
  position: absolute;
  inset: 0;
  background: linear-gradient(
    115deg,
    transparent 0%,
    rgba(255, 255, 255, 0.18) 42%,
    rgba(255, 255, 255, 0.42) 50%,
    rgba(255, 255, 255, 0.16) 58%,
    transparent 100%
  );
  background-size: 220% 100%;
  animation: app-landing-orbit-sea-shimmer-pass 5.5s ease-in-out infinite;
}

.app-landing-orbit-sea-wave--1 {
  bottom: -24%;
  background: rgba(186, 230, 253, 0.52);
  animation: app-landing-orbit-sea-wave-1 7.5s ease-in-out infinite;
}

.app-landing-orbit-sea-wave--1::after {
  animation-duration: 6.2s;
}

.app-landing-orbit-sea-wave--2 {
  bottom: -12%;
  background: rgba(125, 211, 252, 0.4);
  animation: app-landing-orbit-sea-wave-2 9s ease-in-out infinite;
  animation-delay: -2s;
}

.app-landing-orbit-sea-wave--2::after {
  animation-duration: 7.4s;
  animation-delay: -1.2s;
}

.app-landing-orbit-sea-wave--3 {
  bottom: 0;
  background: rgba(186, 230, 253, 0.48);
  animation: app-landing-orbit-sea-wave-3 6.5s ease-in-out infinite;
  animation-delay: -3.5s;
}

.app-landing-orbit-sea-wave--3::after {
  animation-duration: 5.8s;
  animation-delay: -2.4s;
}

.app-landing-orbit-sea-wave--4 {
  bottom: 10%;
  height: 38%;
  background: rgba(240, 249, 255, 0.78);
  animation: app-landing-orbit-sea-wave-4 8.5s ease-in-out infinite;
  animation-delay: -1.8s;
}

.app-landing-orbit-sea-wave--4::after {
  opacity: 0.75;
  animation-duration: 4.8s;
}

.app-landing-orbit-sea-foam {
  position: absolute;
  left: 0;
  right: 0;
  bottom: 0;
  height: 32%;
  background: linear-gradient(180deg, rgba(255, 255, 255, 0) 0%, rgba(255, 255, 255, 0.68) 100%);
  animation: app-landing-orbit-sea-foam 4.5s ease-in-out infinite;
}

.app-landing-orbit-sea-shimmer {
  position: absolute;
  left: -40%;
  right: -40%;
  bottom: 8%;
  height: 22%;
  background: linear-gradient(
    90deg,
    transparent 0%,
    rgba(255, 255, 255, 0.28) 48%,
    transparent 100%
  );
  filter: blur(10px);
  animation: app-landing-orbit-sea-shimmer-sweep 9s linear infinite;
}

@keyframes app-landing-orbit-ambience-ping {
  0% {
    width: 72px;
    height: 72px;
    margin: -36px 0 0 -36px;
    border-width: 6px;
    opacity: 0.58;
  }

  55% {
    opacity: 0.2;
  }

  100% {
    width: 1280px;
    height: 1280px;
    margin: -640px 0 0 -640px;
    border-width: 1px;
    opacity: 0;
  }
}

@keyframes app-landing-orbit-radar-sweep {
  to {
    transform: rotate(360deg);
  }
}

@keyframes app-landing-orbit-sea-wave-1 {
  0%,
  100% {
    transform: translate3d(-8%, 3%, 0) rotate(-2deg) scale(1.03, 1);
    border-radius: 40% 60% 44% 56%;
  }

  33% {
    transform: translate3d(5%, -4%, 0) rotate(1.6deg) scale(1.06, 0.97);
    border-radius: 52% 48% 58% 42%;
  }

  66% {
    transform: translate3d(-4%, -1%, 0) rotate(-0.8deg) scale(1.02, 1.02);
    border-radius: 46% 54% 48% 52%;
  }
}

@keyframes app-landing-orbit-sea-wave-2 {
  0%,
  100% {
    transform: translate3d(7%, 2%, 0) rotate(1.8deg) scale(1.02, 1.01);
    border-radius: 48% 52% 42% 58%;
  }

  40% {
    transform: translate3d(-6%, -5%, 0) rotate(-1.4deg) scale(1.05, 0.98);
    border-radius: 56% 44% 54% 46%;
  }

  75% {
    transform: translate3d(3%, -2%, 0) rotate(0.6deg) scale(1.01, 1.03);
    border-radius: 44% 56% 50% 50%;
  }
}

@keyframes app-landing-orbit-sea-wave-3 {
  0%,
  100% {
    transform: translate3d(-5%, 1%, 0) rotate(-1.2deg) scale(1.01, 1);
    border-radius: 50% 50% 46% 54%;
  }

  45% {
    transform: translate3d(8%, -3%, 0) rotate(1.4deg) scale(1.04, 0.99);
    border-radius: 42% 58% 52% 48%;
  }

  80% {
    transform: translate3d(-3%, 2%, 0) rotate(-0.5deg) scale(1.02, 1.01);
    border-radius: 54% 46% 44% 56%;
  }
}

@keyframes app-landing-orbit-sea-wave-4 {
  0%,
  100% {
    transform: translate3d(6%, 0, 0) rotate(1deg) scale(1.02, 1);
    border-radius: 46% 54% 50% 50%;
  }

  50% {
    transform: translate3d(-7%, -2%, 0) rotate(-1.2deg) scale(1.05, 0.98);
    border-radius: 58% 42% 46% 54%;
  }
}

@keyframes app-landing-orbit-sea-shimmer-pass {
  0% {
    background-position: 180% 0;
  }

  100% {
    background-position: -80% 0;
  }
}

@keyframes app-landing-orbit-sea-shimmer-sweep {
  0% {
    transform: translate3d(-12%, 0, 0);
    opacity: 0.35;
  }

  50% {
    opacity: 0.75;
  }

  100% {
    transform: translate3d(12%, 0, 0);
    opacity: 0.35;
  }
}

@keyframes app-landing-orbit-sea-foam {
  0%,
  100% {
    opacity: 0.68;
    transform: translate3d(0, 0, 0);
  }

  50% {
    opacity: 0.96;
    transform: translate3d(0, -3%, 0);
  }
}

@media (prefers-reduced-motion: reduce) {
  .app-landing-orbit-ambience-ring {
    animation: none;
    width: 420px;
    height: 420px;
    margin: -210px 0 0 -210px;
    border-width: 3px;
    opacity: 0.16;
  }

  .app-landing-orbit-ambience-ring:nth-child(2) {
    width: 620px;
    height: 620px;
    margin: -310px 0 0 -310px;
    border-width: 2px;
  }

  .app-landing-orbit-ambience-ring:nth-child(3) {
    width: 820px;
    height: 820px;
    margin: -410px 0 0 -410px;
    border-width: 1.5px;
  }

  .app-landing-orbit-ambience-ring:nth-child(4) {
    width: 1020px;
    height: 1020px;
    margin: -510px 0 0 -510px;
    border-width: 1px;
  }

  .app-landing-orbit-ambience-ring:nth-child(5) {
    width: 1220px;
    height: 1220px;
    margin: -610px 0 0 -610px;
    border-width: 1px;
    opacity: 0.1;
  }

  .app-landing-orbit-ambience-sweep,
  .app-landing-orbit-sea-wave,
  .app-landing-orbit-sea-wave::after,
  .app-landing-orbit-sea-foam,
  .app-landing-orbit-sea-shimmer {
    animation: none !important;
  }
}

.app-landing-orbit-links {
  position: absolute;
  inset: 0;
  z-index: 0;
  width: 100%;
  height: 100%;
  pointer-events: none;
}

.app-landing-orbit-link {
  stroke: rgba(148, 163, 184, 0.28);
  stroke-width: 0.14;
  stroke-linecap: round;
  stroke-dasharray: 0.55 0.45;
  animation:
    app-landing-orbit-link-pulse 5s ease-in-out infinite,
    app-landing-orbit-link-flow 14s linear infinite;
}

.app-landing-orbit-link.is-active {
  stroke: rgba(250, 204, 21, 0.42);
  stroke-width: 0.18;
}

.app-landing-orbit-focus-link {
  stroke: rgba(96, 165, 250, 0.34);
  stroke-width: 0.1;
  stroke-linecap: round;
  stroke-dasharray: 0.35 0.65;
  animation: app-landing-orbit-focus-link-flow 10s linear infinite;
  transition:
    stroke 0.18s ease,
    stroke-width 0.18s ease,
    opacity 0.18s ease;
}

.app-landing-orbit-focus-link.is-dimmed {
  stroke: rgba(96, 165, 250, 0.14);
  stroke-width: 0.08;
  opacity: 0.72;
}

.app-landing-orbit-focus-link.is-highlighted {
  stroke: rgba(96, 165, 250, 0.42);
  stroke-width: 0.12;
  opacity: 1;
}

.app-landing-orbit-twigs {
  position: absolute;
  inset: 0;
  z-index: 1;
  pointer-events: none;
  opacity: 0;
  visibility: hidden;
  transition: opacity 0.18s ease, visibility 0.18s ease;
}

.app-landing-orbit-twigs.is-visible {
  opacity: 1;
  visibility: visible;
  pointer-events: auto;
}

/* Orbit direct-open: twigs на hover и dive-дерево отложены (ORBIT_BUBBLE_OPENS_WORKSPACE) */
.app-landing-inner.is-orbit-direct-open #app-landing-orbit-twigs,
.app-landing-inner.is-orbit-direct-open #app-landing-orbit-focus-links,
.app-landing-inner.is-orbit-direct-open #app-landing-orbit-dive {
  display: none !important;
}

.app-landing-orbit-focus-links {
  position: absolute;
  inset: 0;
  z-index: 2;
  width: 100%;
  height: 100%;
  pointer-events: none;
  opacity: 0;
  visibility: hidden;
  transition: opacity 0.18s ease, visibility 0.18s ease;
}

.app-landing-orbit-focus-links.is-visible {
  opacity: 1;
  visibility: visible;
}

.app-landing-orbit-twig {
  position: absolute;
  left: var(--twig-x, 50%);
  top: var(--twig-y, 50%);
  transform: translate(-50%, -50%);
  max-width: min(148px, 28vw);
  padding: 5px 10px 5px 9px;
  border: 1px solid rgba(147, 197, 253, 0.38);
  border-radius: 999px;
  background:
    radial-gradient(circle at 0% 50%, rgba(59, 130, 246, 0.55), rgba(59, 130, 246, 0) 38%),
    linear-gradient(135deg, rgba(15, 23, 42, 0.88), rgba(30, 58, 138, 0.72));
  box-shadow:
    0 0 0 3px rgba(255, 255, 255, 0.04),
    0 6px 18px rgba(2, 6, 23, 0.38);
  color: rgba(226, 232, 240, 0.94);
  font-size: 11px;
  font-weight: 600;
  line-height: 1.25;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
  cursor: pointer;
  pointer-events: auto;
  transition:
    border-color 0.18s ease,
    box-shadow 0.18s ease,
    transform 0.18s ease,
    opacity 0.18s ease,
    filter 0.18s ease;
}

.app-landing-orbit-twig.is-dimmed {
  opacity: 0.34;
  filter: saturate(0.5);
  border-color: rgba(147, 197, 253, 0.2);
  box-shadow:
    0 0 0 2px rgba(255, 255, 255, 0.02),
    0 3px 10px rgba(2, 6, 23, 0.22);
}

.app-landing-orbit-twig.is-highlighted {
  opacity: 1;
  filter: none;
}

.app-landing-orbit-twig::before {
  content: "";
  display: inline-block;
  width: 6px;
  height: 6px;
  margin-right: 6px;
  border-radius: 999px;
  vertical-align: middle;
  background: linear-gradient(145deg, #93c5fd, #6366f1);
  box-shadow: 0 0 8px rgba(96, 165, 250, 0.65);
}

.app-landing-orbit-twig:hover,
.app-landing-orbit-twig:focus-visible {
  z-index: 10;
  border-color: rgba(191, 219, 254, 0.72);
  box-shadow:
    0 0 0 3px rgba(96, 165, 250, 0.22),
    0 10px 24px rgba(2, 6, 23, 0.48);
  transform: translate(-50%, -50%) scale(1.04);
  outline: none;
}

.app-landing-orbit-twig.is-active {
  border-color: rgba(250, 204, 21, 0.72);
  color: #fef9c3;
  box-shadow:
    0 0 0 3px rgba(250, 204, 21, 0.18),
    0 8px 22px rgba(2, 6, 23, 0.42);
}

.app-landing-orbit-twig.is-active::before {
  background: linear-gradient(145deg, #fde047, #f59e0b);
  box-shadow: 0 0 10px rgba(250, 204, 21, 0.75);
}

.app-landing-orbit-twig--more {
  min-width: 36px;
  padding-inline: 10px;
  border-style: dashed;
  color: rgba(191, 219, 254, 0.88);
  font-size: 10px;
  letter-spacing: 0.04em;
}

.app-landing-orbit-twig--more::before {
  display: none;
}

@keyframes app-landing-orbit-focus-link-flow {
  0% {
    stroke-dashoffset: 0;
  }
  100% {
    stroke-dashoffset: -2;
  }
}

.app-landing-orbit-hub {
  position: absolute;
  left: var(--orbit-center-x, 50%);
  top: var(--orbit-center-y, 50%);
  z-index: 0;
  transform: translate(-50%, -50%);
  width: min(300px, 78vw);
  pointer-events: none;
}

.app-landing-orbit-hub-aura {
  position: absolute;
  left: 50%;
  top: 50%;
  width: min(280px, 72vw);
  aspect-ratio: 1;
  transform: translate(-50%, -50%);
  pointer-events: none;
}

.app-landing-orbit-hub-ring {
  position: absolute;
  inset: 0;
  border-radius: 50%;
  border: 1px solid rgba(199, 210, 254, 0.28);
  box-shadow:
    0 0 32px rgba(99, 102, 241, 0.18),
    inset 0 0 24px rgba(99, 102, 241, 0.08);
}

.app-landing-orbit-hub-ring--outer {
  animation: app-landing-orbit-hub-pulse 5.5s ease-in-out infinite;
}

.app-landing-orbit-hub-ring--inner {
  inset: 14%;
  border-color: rgba(147, 197, 253, 0.22);
  animation: app-landing-orbit-hub-pulse 5.5s ease-in-out infinite reverse;
  animation-delay: -1.2s;
}

.app-landing-orbit-hub-glow {
  position: absolute;
  inset: 22%;
  border-radius: 50%;
  background: radial-gradient(circle at 50% 42%, rgba(99, 102, 241, 0.28), rgba(15, 23, 42, 0) 68%);
  filter: blur(8px);
  animation: app-landing-orbit-hub-glow 6s ease-in-out infinite;
}

.app-landing-orbit-hub-copy {
  position: relative;
  z-index: 1;
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 8px;
  padding: 22px 20px 20px;
  border-radius: 20px;
  border: 1px solid rgba(148, 163, 184, 0.22);
  background:
    radial-gradient(ellipse 90% 70% at 50% 0%, rgba(99, 102, 241, 0.14), transparent 58%),
    linear-gradient(165deg, rgba(15, 23, 42, 0.72), rgba(30, 27, 75, 0.58));
  box-shadow:
    0 18px 48px rgba(2, 6, 23, 0.42),
    inset 0 1px 0 rgba(255, 255, 255, 0.08);
  backdrop-filter: blur(10px);
  text-align: center;
}

.app-landing-orbit-hub-mark {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 38px;
  height: 38px;
  margin-bottom: 2px;
  border-radius: 999px;
  border: 1px solid rgba(199, 210, 254, 0.34);
  background:
    radial-gradient(circle at 35% 28%, rgba(255, 255, 255, 0.18), transparent 52%),
    linear-gradient(145deg, rgba(81, 73, 243, 0.92), rgba(46, 141, 253, 0.88));
  box-shadow:
    0 0 0 4px rgba(99, 102, 241, 0.12),
    0 8px 18px rgba(46, 79, 255, 0.28),
    inset 0 1px 0 rgba(255, 255, 255, 0.22);
}

.app-landing-orbit-hub-mark-icon {
  display: block;
  width: 22px;
  height: 22px;
  border-radius: 6px;
  filter: drop-shadow(0 1px 2px rgba(15, 23, 42, 0.18));
}

.app-landing-orbit-hub-eyebrow {
  margin: 0;
  font-size: 10px;
  font-weight: 600;
  letter-spacing: 0.16em;
  text-transform: uppercase;
  color: rgba(199, 210, 254, 0.78);
}

.app-landing-orbit-hub-title {
  margin: 0;
  font-size: clamp(1.35rem, 3.2vw, 1.75rem);
  font-weight: 800;
  letter-spacing: -0.03em;
  line-height: 1.05;
  background: linear-gradient(135deg, #fff 0%, #c7d2fe 42%, #93c5fd 100%);
  -webkit-background-clip: text;
  background-clip: text;
  color: transparent;
}

.app-landing-orbit-hub-lead {
  margin: 0;
  max-width: 22em;
  font-size: 12px;
  line-height: 1.55;
  color: rgba(226, 232, 240, 0.76);
}

.app-landing-orbit-hub-tagline {
  margin: 0;
  max-width: 22em;
  font-size: 11px;
  line-height: 1.45;
  color: rgba(203, 213, 225, 0.68);
}

.app-landing-orbit-map-panel,
.app-landing-orbit-bubbles {
  position: absolute;
  inset: 0;
  z-index: 3;
  width: 100%;
  min-height: clamp(360px, 52vh, 640px);
  border-radius: 16px;
  overflow: hidden;
}

.app-landing-orbit-stack.has-focus-panel .app-landing-orbit-map-panel,
.app-landing-orbit-stack.has-focus-panel .app-landing-orbit-bubbles {
  border-radius: 0;
}

.app-landing-orbit-agents {
  position: relative;
  flex: 1 1 auto;
  width: 100%;
  min-height: 0;
  height: 100%;
  z-index: 1;
}

.app-landing-orbit-fallback-list {
  position: relative;
  z-index: 4;
  display: flex;
  flex-wrap: wrap;
  gap: 14px;
  justify-content: center;
  align-content: center;
  align-items: flex-start;
  padding: 72px 20px 24px;
  min-height: 100%;
  box-sizing: border-box;
  pointer-events: auto;
}

.app-landing-orbit-fallback-item {
  flex: 0 1 140px;
  max-width: 160px;
}

.app-landing-hub-fallback-list {
  display: flex;
  flex-direction: column;
  gap: 12px;
  padding: 12px 0;
}

.app-landing-hub-row-fallback {
  padding: 4px 0;
}

.app-landing-orbit-stage {
  --orbit-center-x: 50%;
  --orbit-center-y: 50%;
  position: absolute;
  inset: 0;
}

.app-landing-orbit-agent-bubbles {
  position: absolute;
  inset: 0;
  z-index: 3;
}

.app-landing-orbit-item {
  position: absolute;
  left: var(--orbit-x, 50%);
  top: var(--orbit-y, 50%);
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 5px;
  width: max-content;
  max-width: min(200px, calc(var(--orbit-size, 72px) + 108px));
  --orbit-anchor-y: calc(var(--orbit-size, 72px) * 0.5);
  transform: translate(-50%, calc(-1 * var(--orbit-anchor-y)));
  animation: app-landing-orbit-drift var(--orbit-duration, 8s) ease-in-out infinite;
  animation-delay: var(--orbit-delay, 0s);
  z-index: 3;
}

.app-landing-orbit-item:hover {
  z-index: 20;
}

.app-landing-orbit-item.is-attention-highlighted {
  z-index: 24;
}

.app-landing-orbit-item.is-attention-dimmed {
  opacity: 0.58;
}

.app-landing-orbit-item.is-attention-dimmed .app-landing-orbit-bubble {
  filter: grayscale(0.35);
}

.app-landing-orbit-bubble {
  position: relative;
  width: var(--orbit-size, 72px);
  height: var(--orbit-size, 72px);
  flex: 0 0 auto;
  padding: 0;
  border: 3px solid rgba(148, 163, 184, 0.55);
  border-radius: 50%;
  background: rgba(15, 23, 42, 0.35);
  box-shadow:
    0 10px 28px rgba(2, 6, 23, 0.35),
    inset 0 0 0 1px rgba(255, 255, 255, 0.08);
  cursor: pointer;
  overflow: hidden;
  transition:
    transform 0.25s ease,
    border-color 0.25s ease,
    box-shadow 0.25s ease;
}

.app-landing-orbit-bubble.is-active {
  border-color: #facc15;
  box-shadow:
    0 0 0 4px rgba(250, 204, 21, 0.28),
    0 0 24px rgba(250, 204, 21, 0.35),
    0 12px 32px rgba(2, 6, 23, 0.4);
}

.app-landing-orbit-bubble.is-inactive {
  opacity: 0.78;
  filter: grayscale(0.25);
}

.app-landing-orbit-bubble:hover,
.app-landing-orbit-bubble:focus-visible {
  transform: scale(1.14);
  outline: none;
}

.app-landing-orbit-bubble-avatar {
  position: relative;
  display: flex;
  align-items: center;
  justify-content: center;
  width: 100%;
  height: 100%;
  border-radius: 50%;
  overflow: hidden;
  background: linear-gradient(145deg, #312e81, #1e3a8a);
  color: #e0e7ff;
  font-size: clamp(14px, 2.2vw, 20px);
  font-weight: 700;
  letter-spacing: 0.04em;
}

.app-landing-orbit-bubble-avatar img {
  position: relative;
  z-index: 0;
  width: 100%;
  height: 100%;
  object-fit: cover;
  transition: opacity 0.22s ease;
}

.app-landing-orbit-bubble.has-awn-id,
.app-landing-orbit-bubble.is-orchestrator {
  overflow: visible;
}

.app-landing-orbit-bubble-awn-id-badge {
  position: absolute;
  top: -2px;
  right: -2px;
  z-index: 8;
  max-width: calc(var(--orbit-size, 72px) * 0.72);
  padding: 2px 6px;
  border: 1px solid rgba(250, 204, 21, 0.72);
  border-radius: 7px;
  background: rgba(15, 23, 42, 0.94);
  color: #fef9c3;
  font-family: ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", monospace;
  font-size: 9px;
  font-weight: 700;
  line-height: 1.25;
  letter-spacing: 0.02em;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
  pointer-events: none;
  box-shadow:
    0 0 0 2px rgba(15, 23, 42, 0.55),
    0 3px 10px rgba(2, 6, 23, 0.5);
}

.app-landing-orbit-bubble-avatar.is-preview-loading {
  background: #f1f5f9;
}

.app-landing-orbit-bubble-avatar.is-preview-loading img {
  opacity: 0;
}

.app-landing-orbit-bubble-avatar.is-preview-loading::before {
  content: "";
  position: absolute;
  inset: 18%;
  z-index: 1;
  border: 2px solid rgba(148, 163, 184, 0.28);
  border-top-color: #6366f1;
  border-radius: 50%;
  animation: app-landing-orbit-avatar-spin 0.72s linear infinite;
}

.app-landing-orbit-bubble-avatar.is-preview-loading::after {
  content: "";
  position: absolute;
  inset: 0;
  z-index: 0;
  border-radius: 50%;
  background: linear-gradient(
    110deg,
    rgba(241, 245, 249, 0.2) 0%,
    rgba(255, 255, 255, 0.72) 45%,
    rgba(241, 245, 249, 0.2) 90%
  );
  background-size: 200% 100%;
  animation: app-landing-orbit-avatar-shimmer 1.35s ease-in-out infinite;
}

.app-landing-pane.is-landing-bg-light .app-landing-orbit-bubble-avatar.is-preview-loading {
  background: #fff;
}

.app-landing-pane.is-landing-bg-light .app-landing-orbit-bubble-avatar.is-preview-loading::after {
  background: linear-gradient(
    110deg,
    rgba(226, 232, 240, 0.15) 0%,
    rgba(255, 255, 255, 0.95) 45%,
    rgba(226, 232, 240, 0.15) 90%
  );
  background-size: 200% 100%;
}

@keyframes app-landing-orbit-avatar-spin {
  to {
    transform: rotate(360deg);
  }
}

@keyframes app-landing-orbit-avatar-shimmer {
  0% {
    background-position: 200% 0;
  }

  100% {
    background-position: -200% 0;
  }
}

.app-landing-orbit-bubble-emoji {
  font-size: clamp(22px, 3.2vw, 30px);
  line-height: 1;
}

.app-landing-orbit-bubble-initials {
  font-size: clamp(14px, 2.2vw, 20px);
  font-weight: 700;
  letter-spacing: 0.04em;
}

.app-landing-orbit-bubble-meta {
  display: flex;
  flex-direction: column;
  gap: 2px;
  width: 100%;
  max-width: min(200px, calc(var(--orbit-size, 72px) + 108px));
  padding: 5px 7px;
  border: 1px solid rgba(148, 163, 184, 0.38);
  border-radius: 10px;
  background: rgba(15, 23, 42, 0.78);
  box-shadow: 0 6px 18px rgba(2, 6, 23, 0.28);
  backdrop-filter: blur(8px);
  pointer-events: none;
}

.app-landing-orbit-bubble-meta-row {
  display: flex;
  align-items: baseline;
  justify-content: space-between;
  gap: 6px;
  min-width: 0;
  font-size: 10px;
  line-height: 1.25;
}

.app-landing-orbit-bubble-meta-row.hidden {
  display: none;
}

.app-landing-orbit-bubble-meta-label {
  flex: 0 0 auto;
  color: rgba(148, 163, 184, 0.92);
  font-size: 9px;
  font-weight: 600;
  letter-spacing: 0.04em;
  text-transform: uppercase;
}

.app-landing-orbit-bubble-meta-value {
  min-width: 0;
  color: #e2e8f0;
  font-weight: 600;
  text-align: right;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.app-landing-orbit-bubble-meta-value.is-mono {
  font-family: ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", monospace;
  font-size: 9px;
  font-weight: 500;
}

.app-landing-orbit-bubble-meta-row.is-status .app-landing-orbit-bubble-meta-value {
  font-size: 10px;
}

.app-landing-orbit-bubble-meta-row.is-git.is-clean .app-landing-orbit-bubble-meta-value {
  color: #86efac;
}

.app-landing-orbit-bubble-meta-row.is-git.is-dirty .app-landing-orbit-bubble-meta-value {
  color: #fde68a;
}

.app-landing-orbit-bubble-meta-row.is-git.is-missing .app-landing-orbit-bubble-meta-value {
  color: #94a3b8;
}

.app-landing-orbit-bubble-meta-row.is-git.is-loading .app-landing-orbit-bubble-meta-value {
  opacity: 0.55;
}

.app-landing-orbit-bubble-label {
  display: inline-block;
  width: auto;
  max-width: min(200px, calc(var(--orbit-size, 72px) + 108px));
  padding: 3px 8px;
  border: 1px solid rgba(255, 255, 255, 0.92);
  border-radius: 999px;
  background: rgba(248, 250, 252, 0.96);
  color: #334155;
  font-size: 11px;
  font-weight: 600;
  line-height: 1.2;
  text-align: center;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
  pointer-events: none;
  box-shadow:
    0 4px 14px rgba(2, 6, 23, 0.22),
    inset 0 0 0 1px rgba(255, 255, 255, 0.35);
}

.app-landing-orbit-bubble.is-inactive + .app-landing-orbit-bubble-label {
  background: rgba(248, 250, 252, 0.82);
  border-color: rgba(226, 232, 240, 0.95);
  color: #64748b;
}

.app-landing-orbit-item--orchestrator {
  z-index: 12;
}

.app-landing-orbit-bubble.is-orchestrator {
  border-color: rgba(245, 158, 11, 0.72);
  background: rgba(15, 23, 42, 0.42);
}

.app-landing-orbit-bubble.is-orchestrator.is-active {
  border-color: rgba(251, 191, 36, 0.95);
  box-shadow:
    0 0 0 5px rgba(245, 158, 11, 0.3),
    0 0 32px rgba(245, 158, 11, 0.48),
    0 12px 32px rgba(2, 6, 23, 0.42);
}

.app-landing-orbit-bubble.is-orchestrator.is-inactive {
  border-color: rgba(245, 158, 11, 0.42);
  opacity: 0.82;
}

.app-landing-orbit-orchestrator-badge {
  position: absolute;
  bottom: -6px;
  left: 50%;
  z-index: 7;
  transform: translateX(-50%);
  padding: 2px 8px;
  border: 1px solid rgba(245, 158, 11, 0.55);
  border-radius: 999px;
  background: #fef3c7;
  color: #b45309;
  font-size: 9px;
  font-weight: 700;
  letter-spacing: 0.05em;
  line-height: 1.2;
  text-transform: uppercase;
  white-space: nowrap;
  pointer-events: none;
  box-shadow: 0 4px 12px rgba(2, 6, 23, 0.28);
}

.app-landing-orbit-bubble.is-orchestrator .app-landing-orbit-bubble-avatar {
  overflow: hidden;
  border-radius: 50%;
}

.app-landing-orbit-bubble-label.is-orchestrator {
  border-color: rgba(245, 158, 11, 0.62);
  background: rgba(255, 251, 235, 0.96);
  color: #b45309;
}

.app-landing-orbit-bubble-attention {
  width: min(calc(var(--orbit-size, 72px) + 40px), 100%);
  pointer-events: none;
}

.app-landing-orbit-bubble-attention-track {
  height: 5px;
  box-shadow: inset 0 0 0 1px rgba(148, 163, 184, 0.12);
}

.app-landing-orbit-item.is-attention-highlighted .app-landing-orbit-bubble-attention-track {
  box-shadow:
    0 0 0 1px var(--orbit-attention-color, rgba(129, 140, 248, 0.55)),
    0 0 12px color-mix(in srgb, var(--orbit-attention-color, #818cf8) 42%, transparent);
}

.app-landing-orbit-create-btn {
  position: absolute;
  right: 18px;
  bottom: 18px;
  z-index: 12;
  width: 48px;
  height: 48px;
  border: 2px dashed rgba(199, 210, 254, 0.75);
  border-radius: 50%;
  background: rgba(15, 23, 42, 0.55);
  color: #c7d2fe;
  font-size: 28px;
  font-weight: 300;
  line-height: 1;
  cursor: pointer;
  backdrop-filter: blur(6px);
  transition: border-color 0.15s ease, background 0.15s ease, transform 0.15s ease;
}

.app-landing-orbit-attention {
  position: absolute;
  left: 18px;
  right: 78px;
  bottom: 18px;
  z-index: 8;
  padding: 8px 10px;
  border: 1px solid rgba(148, 163, 184, 0.24);
  border-radius: 999px;
  background: rgba(15, 23, 42, 0.72);
  box-shadow: 0 10px 28px rgba(2, 6, 23, 0.28);
  backdrop-filter: blur(10px);
}

.app-landing-orbit-attention-stack {
  display: flex;
  width: 100%;
  height: 12px;
  overflow: visible;
  border-radius: 999px;
  background: rgba(148, 163, 184, 0.18);
}

.app-landing-orbit-attention-stack-segment {
  display: block;
  height: 100%;
  min-width: 2px;
  padding: 0;
  border: 0;
  cursor: pointer;
  transition:
    transform 0.2s ease,
    filter 0.2s ease,
    opacity 0.2s ease,
    box-shadow 0.2s ease;
}

.app-landing-orbit-attention-stack-segment.is-highlighted {
  transform: scaleY(1.35);
  filter: saturate(1.2) brightness(1.08);
  box-shadow:
    0 0 0 1px rgba(255, 255, 255, 0.28),
    0 0 16px color-mix(in srgb, var(--orbit-attention-color, #818cf8) 55%, transparent);
  z-index: 1;
}

.app-landing-orbit-attention-stack-segment.is-dimmed {
  opacity: 0.34;
  filter: saturate(0.65);
}

.app-landing-orbit-attention-stack-segment:focus-visible {
  outline: 2px solid rgba(199, 210, 254, 0.85);
  outline-offset: 2px;
}

.app-landing-orbit-attention-track {
  height: 6px;
  border-radius: 999px;
  background: rgba(148, 163, 184, 0.16);
  overflow: hidden;
}

.app-landing-orbit-attention-fill {
  display: block;
  height: 100%;
  border-radius: inherit;
}

.app-landing-orbit-create-btn:hover {
  border-color: #a5b4fc;
  background: rgba(30, 27, 75, 0.72);
  transform: scale(1.06);
}

.app-landing-orbit-empty {
  position: absolute;
  inset: 0;
  display: flex;
  align-items: center;
  justify-content: center;
  margin: 0;
  padding: 24px;
  text-align: center;
  color: rgba(226, 232, 240, 0.82);
  font-size: 14px;
}

/* Orbit dive — провал в базу знаний агента */
.app-landing-inner.is-orbit-dive-open {
  gap: 10px;
}

.app-landing-inner.is-orbit-dive-open .app-landing-orbit-dive {
  width: 100%;
}

.app-landing-orbit-dive.is-open {
  grid-template-rows: 1fr;
  opacity: 1;
  margin-top: 0;
  flex: 1;
  min-height: clamp(360px, 52vh, 640px);
}

.app-landing-orbit-dive.hidden:not(.is-open) {
  display: none;
}

.app-landing-orbit-dive:not(.hidden) {
  display: grid;
}

.app-landing-orbit-dive {
  display: grid;
  grid-template-rows: 0fr;
  opacity: 0;
  transition:
    grid-template-rows 0.55s cubic-bezier(0.22, 1, 0.36, 1),
    opacity 0.4s ease;
}

.app-landing-orbit-dive-inner {
  overflow: visible;
  min-height: 0;
  width: 100%;
  max-width: 100%;
  height: 100%;
  display: flex;
  flex-direction: column;
  margin: 0;
  border-radius: 16px;
  border: 1px solid rgba(96, 165, 250, 0.28);
  background: #020617;
  box-shadow:
    0 28px 80px rgba(2, 6, 23, 0.55),
    inset 0 1px 0 rgba(255, 255, 255, 0.06);
}

.app-landing-orbit-dive-toolbar {
  position: relative;
  z-index: 3;
  display: grid;
  grid-template-columns: auto 1fr auto;
  align-items: center;
  gap: 12px;
  padding: 12px 16px;
  border-bottom: 1px solid rgba(96, 165, 250, 0.14);
  background: linear-gradient(180deg, rgba(15, 23, 42, 0.92), rgba(15, 23, 42, 0.72));
  backdrop-filter: blur(8px);
}

.app-landing-orbit-dive-back,
.app-landing-orbit-dive-open {
  border: 1px solid rgba(96, 165, 250, 0.34);
  border-radius: 999px;
  background: rgba(15, 23, 42, 0.72);
  color: rgba(226, 232, 240, 0.94);
  font-size: 12px;
  font-weight: 600;
  line-height: 1;
  padding: 8px 14px;
  cursor: pointer;
  white-space: nowrap;
}

.app-landing-orbit-dive-open {
  border-color: rgba(250, 204, 21, 0.42);
  color: #fef9c3;
}

.app-landing-orbit-dive-toolbar-copy {
  min-width: 0;
  text-align: center;
}

.app-landing-orbit-dive-eyebrow {
  margin: 0;
  font-size: 10px;
  font-weight: 700;
  letter-spacing: 0.14em;
  text-transform: uppercase;
  color: rgba(147, 197, 253, 0.72);
}

.app-landing-orbit-dive-title {
  margin: 2px 0 0;
  font-size: clamp(1.05rem, 2.4vw, 1.35rem);
  font-weight: 700;
  color: rgba(248, 250, 252, 0.96);
}

.app-landing-orbit-dive-stats {
  margin: 4px 0 0;
  font-size: 11px;
  color: rgba(148, 163, 184, 0.88);
}

.app-landing-orbit-dive-stage {
  position: relative;
  flex: 1;
  min-height: clamp(320px, 48vh, 580px);
  overflow: visible;
  display: flex;
  justify-content: stretch;
  background:
    radial-gradient(ellipse 90% 45% at 50% 0%, rgba(59, 130, 246, 0.24), transparent 72%),
    radial-gradient(ellipse 55% 35% at 50% 55%, rgba(99, 102, 241, 0.12), transparent 65%),
    linear-gradient(180deg, #020617 0%, #0f172a 42%, #020617 100%);
}

.app-landing-orbit-dive-nebula,
.app-landing-orbit-dive-stars {
  position: absolute;
  inset: 0;
  pointer-events: none;
}

.app-landing-orbit-dive-nebula {
  background:
    radial-gradient(circle at 50% 8%, rgba(96, 165, 250, 0.2), transparent 30%),
    radial-gradient(circle at 50% 42%, rgba(129, 140, 248, 0.12), transparent 28%),
    radial-gradient(circle at 50% 78%, rgba(56, 189, 248, 0.1), transparent 26%);
  animation: app-landing-orbit-dive-nebula 14s ease-in-out infinite alternate;
}

.app-landing-orbit-dive-stars {
  opacity: 0.55;
  background-image:
    radial-gradient(circle, rgba(255, 255, 255, 0.95) 0.6px, transparent 0.7px),
    radial-gradient(circle, rgba(191, 219, 254, 0.75) 0.5px, transparent 0.6px);
  background-size: 120px 120px, 180px 180px;
  background-position: 0 0, 40px 60px;
}

.app-landing-orbit-dive-links {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  pointer-events: none;
  z-index: 1;
}

.app-landing-orbit-dive-link {
  fill: none;
  stroke: rgba(96, 165, 250, 0.22);
  stroke-width: 1.2;
  stroke-linecap: round;
  transition: stroke 0.2s ease, opacity 0.2s ease;
}

.app-landing-orbit-dive-link.is-trunk {
  stroke: rgba(250, 204, 21, 0.48);
  stroke-width: 2;
  stroke-dasharray: none;
  filter: drop-shadow(0 0 4px rgba(250, 204, 21, 0.35));
}

.app-landing-orbit-dive-link.is-leaf {
  stroke: rgba(96, 165, 250, 0.28);
  stroke-dasharray: 3 5;
  animation: app-landing-orbit-dive-link-flow 16s linear infinite;
}

.app-landing-orbit-dive-link.is-mesh {
  stroke: rgba(129, 140, 248, 0.12);
  stroke-width: 0.8;
  stroke-dasharray: 2 8;
}

.app-landing-orbit-dive-link.is-highlighted {
  stroke: rgba(191, 219, 254, 0.82);
  stroke-width: 2.2;
  opacity: 1;
}

.app-landing-orbit-dive-link.is-dimmed {
  opacity: 0.08;
}

.app-landing-orbit-dive-canvas {
  position: relative;
  z-index: 2;
  width: 100%;
  min-height: 0;
  padding: 8px clamp(16px, 4vw, 48px) 64px;
  box-sizing: border-box;
  overflow: hidden;
}

.app-landing-orbit-dive-canvas-bg {
  position: absolute;
  inset: 0;
  z-index: 0;
  pointer-events: none;
  overflow: hidden;
}

.app-landing-orbit-dive-canvas-bg::after {
  content: "";
  position: absolute;
  inset: 0;
  z-index: 1;
  background:
    linear-gradient(180deg, rgba(2, 6, 23, 0.62) 0%, rgba(15, 23, 42, 0.28) 42%, rgba(2, 6, 23, 0.68) 100%),
    radial-gradient(ellipse 80% 50% at 50% 18%, rgba(59, 130, 246, 0.12), transparent 70%);
}

.app-landing-orbit-dive-canvas-bg-slide {
  position: absolute;
  inset: 0;
  background-size: cover;
  background-position: center top;
  background-repeat: no-repeat;
  opacity: 0;
  animation: app-landing-orbit-dive-bg-cycle 18s ease-in-out infinite;
}

.app-landing-orbit-dive-canvas-bg-slide.is-1 {
  background-image: url("/editor/assets/orbit-dive-bg/orbit-dive-bg-1.png");
  animation-delay: 0s;
}

.app-landing-orbit-dive-canvas-bg-slide.is-2 {
  background-image: url("/editor/assets/orbit-dive-bg/orbit-dive-bg-2.png");
  animation-delay: 6s;
}

.app-landing-orbit-dive-canvas-bg-slide.is-3 {
  background-image: url("/editor/assets/orbit-dive-bg/orbit-dive-bg-3.png");
  animation-delay: 12s;
}

@keyframes app-landing-orbit-dive-bg-cycle {
  0% {
    opacity: 0;
  }

  4% {
    opacity: 0.52;
  }

  28% {
    opacity: 0.52;
  }

  33.33% {
    opacity: 0;
  }

  100% {
    opacity: 0;
  }
}

.app-landing-orbit-dive-graph-node {
  position: absolute;
  left: var(--dive-x, 50%);
  top: var(--dive-y, 50%);
  transform: translate(-50%, -50%);
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 6px;
  animation: app-landing-orbit-dive-node-in 0.65s ease both;
  animation-delay: calc(var(--dive-delay, 0) * 45ms);
  transition:
    opacity 0.22s ease,
    filter 0.22s ease,
    transform 0.22s ease;
  z-index: 2;
}

.app-landing-orbit-dive-graph-node--shape-tile,
.app-landing-orbit-dive-graph-node--shape-wide-tile {
  width: var(--dive-w, 108px);
  gap: 0;
}

.app-landing-orbit-dive-graph-node--root {
  width: var(--dive-size, 98px);
  border: none;
  background: transparent;
  padding: 0;
  cursor: default;
  z-index: 4;
}

.app-landing-orbit-dive-graph-node--section {
  border: none;
  background: transparent;
  padding: 0;
  cursor: default;
  z-index: 3;
}

.app-landing-orbit-dive-graph-node--topic {
  border: none;
  background: transparent;
  padding: 0;
  cursor: pointer;
}

.app-landing-orbit-dive-graph-node--shape-circle.app-landing-orbit-dive-graph-node--topic {
  width: var(--dive-size, 54px);
}

.app-landing-orbit-dive-graph-node--shape-circle.app-landing-orbit-dive-graph-node--section {
  width: var(--dive-size, 70px);
  height: var(--dive-size, 70px);
}

.app-landing-orbit-dive-node-body.is-circle {
  position: relative;
  width: 100%;
  height: 100%;
  display: grid;
  place-items: center;
}

.app-landing-orbit-dive-graph-node--root .app-landing-orbit-dive-node-body.is-circle {
  width: var(--dive-size, 98px);
  height: var(--dive-size, 98px);
}

.app-landing-orbit-dive-preview-mount {
  position: relative;
  z-index: 1;
  width: 100%;
  height: 100%;
  border-radius: 999px;
  border: 2px solid rgba(147, 197, 253, 0.58);
  background:
    radial-gradient(circle at 30% 25%, rgba(255, 255, 255, 0.2), transparent 42%),
    linear-gradient(145deg, rgba(30, 58, 138, 0.92), rgba(15, 23, 42, 0.96));
  box-shadow:
    0 0 0 3px rgba(96, 165, 250, 0.12),
    0 0 24px rgba(59, 130, 246, 0.32);
  overflow: hidden;
  display: grid;
  place-items: center;
}

.app-landing-orbit-dive-graph-node--root .app-landing-orbit-dive-preview-mount {
  border-color: rgba(250, 204, 21, 0.72);
  box-shadow:
    0 0 0 5px rgba(250, 204, 21, 0.12),
    0 0 42px rgba(59, 130, 246, 0.45);
}

.app-landing-orbit-dive-node-body.is-section .app-landing-orbit-dive-preview-mount {
  width: 58%;
  height: 58%;
  border-color: rgba(129, 140, 248, 0.62);
}

.app-landing-orbit-dive-preview-mount.is-square {
  border-radius: 10px;
}

.app-landing-orbit-dive-preview-mount img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}

.app-landing-orbit-dive-preview-mount .app-landing-orbit-dive-graph-emoji {
  font-size: calc(var(--dive-size, 54px) * 0.4);
  line-height: 1;
}

.app-landing-orbit-dive-preview-mount .node-cover-icon--in-dive-orb {
  width: 58%;
  height: 58%;
  background-size: contain;
}

.app-landing-orbit-dive-node-label {
  position: static;
  transform: none;
  max-width: min(168px, calc(var(--dive-size, 54px) * 2.6));
  font-size: 11px;
  font-weight: 600;
  line-height: 1.25;
  text-align: center;
  color: rgba(226, 232, 240, 0.94);
  display: -webkit-box;
  -webkit-line-clamp: 2;
  -webkit-box-orient: vertical;
  overflow: hidden;
  pointer-events: none;
}

.app-landing-orbit-dive-node-label--root {
  max-width: 180px;
  font-size: 12px;
  color: rgba(248, 250, 252, 0.96);
}

.app-landing-orbit-dive-node-label--section {
  color: rgba(191, 219, 254, 0.92);
}

.app-landing-orbit-dive-node-label--topic {
  max-width: 140px;
  font-size: 10px;
}

.app-landing-orbit-dive-tile {
  width: 100%;
  display: flex;
  flex-direction: column;
  border-radius: 14px;
  border: 1px solid rgba(96, 165, 250, 0.34);
  background:
    linear-gradient(180deg, rgba(30, 41, 59, 0.92), rgba(15, 23, 42, 0.96));
  box-shadow:
    0 0 0 1px rgba(147, 197, 253, 0.08),
    0 12px 28px rgba(2, 6, 23, 0.42);
  overflow: hidden;
  transition: transform 0.2s ease, border-color 0.2s ease, box-shadow 0.2s ease;
}

.app-landing-orbit-dive-graph-node--section .app-landing-orbit-dive-tile {
  border-color: rgba(129, 140, 248, 0.42);
}

.app-landing-orbit-dive-tile-preview {
  position: relative;
  min-height: 52px;
  flex: 1;
  display: grid;
  place-items: center;
  background:
    radial-gradient(circle at 50% 20%, rgba(96, 165, 250, 0.18), transparent 55%),
    rgba(15, 23, 42, 0.65);
  border-bottom: 1px solid rgba(96, 165, 250, 0.14);
}

.app-landing-orbit-dive-tile--wide .app-landing-orbit-dive-tile-preview {
  min-height: 44px;
}

.app-landing-orbit-dive-tile-preview .app-landing-orbit-dive-preview-mount {
  width: 72%;
  height: 72%;
  min-height: 36px;
  border-radius: 10px;
  border-width: 1px;
}

.app-landing-orbit-dive-tile .app-landing-orbit-dive-node-label {
  padding: 7px 10px 9px;
  max-width: none;
  width: 100%;
  -webkit-line-clamp: 3;
}

.app-landing-orbit-dive-graph-node--topic.is-active .app-landing-orbit-dive-tile,
.app-landing-orbit-dive-graph-node--topic.is-active .app-landing-orbit-dive-preview-mount {
  border-color: rgba(250, 204, 21, 0.72);
  box-shadow:
    0 0 0 3px rgba(250, 204, 21, 0.14),
    0 0 24px rgba(250, 204, 21, 0.24);
}

.app-landing-orbit-dive-graph-node--topic:hover .app-landing-orbit-dive-tile,
.app-landing-orbit-dive-graph-node--topic:focus-visible .app-landing-orbit-dive-tile,
.app-landing-orbit-dive-graph-node--topic:hover .app-landing-orbit-dive-node-body.is-topic .app-landing-orbit-dive-preview-mount,
.app-landing-orbit-dive-graph-node--topic:focus-visible .app-landing-orbit-dive-node-body.is-topic .app-landing-orbit-dive-preview-mount {
  transform: scale(1.05);
}

.app-landing-orbit-dive-graph-node--topic:hover .app-landing-orbit-dive-tile,
.app-landing-orbit-dive-graph-node--topic:focus-visible .app-landing-orbit-dive-tile {
  border-color: rgba(191, 219, 254, 0.55);
}

.app-landing-orbit-dive-graph-aura {
  position: absolute;
  inset: -18%;
  border-radius: 999px;
  background: radial-gradient(circle, rgba(250, 204, 21, 0.28), transparent 68%);
  animation: app-landing-orbit-dive-pulse 4.5s ease-in-out infinite;
}

.app-landing-orbit-dive-graph-ring {
  position: absolute;
  inset: 0;
  border-radius: 999px;
  border: 1px solid rgba(129, 140, 248, 0.55);
  box-shadow:
    0 0 24px rgba(99, 102, 241, 0.35),
    inset 0 0 18px rgba(59, 130, 246, 0.22);
  animation: app-landing-orbit-dive-pulse 5.5s ease-in-out infinite reverse;
}

.app-landing-orbit-dive-graph-node.is-dimmed {
  opacity: 0.16;
  filter: saturate(0.35) blur(0.4px);
}

.app-landing-orbit-dive-graph-node.is-highlighted {
  z-index: 12;
}

.app-landing-orbit-dive-node-body.is-section {
  position: relative;
}

.app-landing-orbit-dive-node-body.is-section .app-landing-orbit-dive-graph-ring {
  position: absolute;
  inset: 0;
}

.app-landing-orbit-dive-graph-node--topic .app-landing-orbit-dive-node-body.is-topic {
  animation: app-landing-orbit-dive-float 7s ease-in-out infinite;
  animation-delay: calc(var(--dive-delay, 0) * -120ms);
}

.app-landing-orbit-dive-graph-halo {
  position: absolute;
  inset: -8%;
  border-radius: 999px;
  background: radial-gradient(circle, rgba(96, 165, 250, 0.24), transparent 70%);
}

.app-landing-orbit-dive-graph-orb {
  position: relative;
  z-index: 1;
  width: 100%;
  height: 100%;
  border-radius: 999px;
  border: 2px solid rgba(250, 204, 21, 0.72);
  background:
    radial-gradient(circle at 30% 25%, rgba(255, 255, 255, 0.22), transparent 42%),
    linear-gradient(145deg, rgba(30, 58, 138, 0.92), rgba(15, 23, 42, 0.96));
  box-shadow:
    0 0 0 5px rgba(250, 204, 21, 0.12),
    0 0 42px rgba(59, 130, 246, 0.45),
    0 16px 36px rgba(2, 6, 23, 0.48);
  overflow: hidden;
  display: grid;
  place-items: center;
}

.app-landing-orbit-dive-graph-orb--topic {
  border-color: rgba(147, 197, 253, 0.62);
  box-shadow:
    0 0 0 3px rgba(96, 165, 250, 0.14),
    0 0 24px rgba(59, 130, 246, 0.32),
    0 10px 24px rgba(2, 6, 23, 0.42);
  animation: app-landing-orbit-dive-float 7s ease-in-out infinite;
  animation-delay: calc(var(--dive-delay, 0) * -120ms);
}

.app-landing-orbit-dive-graph-node--topic.is-active .app-landing-orbit-dive-graph-orb--topic {
  border-color: rgba(250, 204, 21, 0.82);
  box-shadow:
    0 0 0 4px rgba(250, 204, 21, 0.18),
    0 0 28px rgba(250, 204, 21, 0.35);
}

.app-landing-orbit-dive-graph-node--topic:hover .app-landing-orbit-dive-graph-orb--topic,
.app-landing-orbit-dive-graph-node--topic:focus-visible .app-landing-orbit-dive-graph-orb--topic {
  transform: scale(1.08);
}

.app-landing-orbit-dive-graph-orb img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}

.app-landing-orbit-dive-graph-emoji {
  font-size: calc(var(--dive-size, 58px) * 0.42);
  line-height: 1;
}

.app-landing-orbit-dive-graph-orb .node-cover-icon--in-dive-orb {
  width: 58%;
  height: 58%;
  background-size: contain;
  opacity: 0.94;
}

.app-landing-orbit-dive-graph-orb .node-cover-icon--agent-root.node-cover-icon--in-dive-orb {
  width: auto;
  height: auto;
  font-size: calc(var(--dive-size, 112px) * 0.38);
  background-image: none;
  opacity: 1;
}

.app-landing-orbit-dive-graph-section-core {
  position: relative;
  z-index: 1;
  width: 54%;
  height: 54%;
  display: grid;
  place-items: center;
}

.app-landing-orbit-dive-graph-section-core .node-cover-icon--in-dive-orb {
  width: 100%;
  height: 100%;
  background-size: 72%;
  opacity: 1;
}

.app-landing-orbit-dive-graph-caption {
  position: absolute;
  left: 50%;
  bottom: calc(-1 * max(16px, var(--dive-size, 58px) * 0.26));
  transform: translateX(-50%);
  max-width: min(140px, calc(var(--dive-size, 58px) * 2.4));
  font-size: 10px;
  font-weight: 600;
  line-height: 1.25;
  text-align: center;
  color: rgba(203, 213, 225, 0.9);
  white-space: normal;
  display: -webkit-box;
  -webkit-line-clamp: 2;
  -webkit-box-orient: vertical;
  overflow: hidden;
  pointer-events: none;
}

.app-landing-orbit-dive-graph-caption--root {
  bottom: -22px;
  max-width: 160px;
  font-size: 12px;
  color: rgba(248, 250, 252, 0.94);
}

.app-landing-orbit-dive-graph-caption--section {
  bottom: -20px;
  max-width: 120px;
  color: rgba(191, 219, 254, 0.88);
}

.app-landing-orbit-dive-empty {
  position: absolute;
  inset: 0;
  display: grid;
  place-items: center;
  margin: 0;
  padding: 24px;
  text-align: center;
  color: rgba(203, 213, 225, 0.78);
  font-size: 14px;
}

/* Section-rails layout — ствол root/sections, темы на боковых рельсах */
.app-landing-orbit-dive-root-wrap {
  position: absolute;
  left: var(--dive-x, 50%);
  top: var(--dive-y, 6%);
  transform: translate(-50%, -50%);
  z-index: 3;
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 8px;
  animation: app-landing-orbit-dive-node-in 0.65s ease both;
}

.app-landing-orbit-dive-root-wrap .app-landing-orbit-dive-graph-orb {
  width: var(--dive-size, 92px);
  height: var(--dive-size, 92px);
}

.app-landing-orbit-dive-root-wrap .app-landing-orbit-dive-graph-caption--root {
  position: static;
  transform: none;
  bottom: auto;
  margin-top: 4px;
}

.app-landing-orbit-dive-section-block {
  position: absolute;
  left: 50%;
  top: var(--dive-y, 22%);
  transform: translate(-50%, -50%);
  z-index: 2;
  width: 100%;
  max-width: min(980px, 100%);
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto minmax(0, 1fr);
  align-items: center;
  gap: clamp(16px, 4vw, 56px);
  animation: app-landing-orbit-dive-node-in 0.65s ease both;
  animation-delay: calc(var(--dive-delay, 0) * 45ms);
  transition: opacity 0.22s ease, filter 0.22s ease;
}

.app-landing-orbit-dive-section-block.is-dimmed {
  opacity: 0.18;
  filter: saturate(0.35) blur(0.4px);
}

.app-landing-orbit-dive-section-block.is-highlighted {
  z-index: 12;
}

.app-landing-orbit-dive-rail {
  display: flex;
  flex-direction: column;
  gap: 10px;
  min-width: 0;
}

.app-landing-orbit-dive-rail.is-left {
  align-items: flex-end;
  padding-right: clamp(4px, 1.5vw, 16px);
}

.app-landing-orbit-dive-rail.is-right {
  align-items: flex-start;
  padding-left: clamp(4px, 1.5vw, 16px);
}

.app-landing-orbit-dive-section-center {
  position: relative;
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 6px;
  flex-shrink: 0;
}

.app-landing-orbit-dive-section-center .app-landing-orbit-dive-graph-ring {
  width: var(--dive-size, 68px);
  height: var(--dive-size, 68px);
}

.app-landing-orbit-dive-section-center .app-landing-orbit-dive-graph-caption--section {
  position: static;
  transform: none;
  bottom: auto;
  margin-top: 2px;
  max-width: 130px;
  font-size: 11px;
}

.app-landing-orbit-dive-rail-topic {
  display: inline-flex;
  align-items: center;
  gap: 10px;
  width: fit-content;
  max-width: min(240px, 100%);
  padding: 6px 14px 6px 6px;
  border-radius: 999px;
  border: 1px solid rgba(96, 165, 250, 0.28);
  background: rgba(15, 23, 42, 0.78);
  color: rgba(203, 213, 225, 0.92);
  font-size: 11px;
  font-weight: 600;
  line-height: 1.25;
  cursor: pointer;
  text-align: left;
  transition:
    border-color 0.2s ease,
    background 0.2s ease,
    transform 0.2s ease,
    opacity 0.22s ease,
    filter 0.22s ease;
}

.app-landing-orbit-dive-rail-topic.is-dimmed {
  opacity: 0.18;
  filter: saturate(0.35) blur(0.4px);
}

.app-landing-orbit-dive-rail-topic.is-highlighted {
  z-index: 12;
  border-color: rgba(191, 219, 254, 0.72);
  background: rgba(30, 58, 138, 0.55);
}

.app-landing-orbit-dive-rail-topic.is-active {
  border-color: rgba(250, 204, 21, 0.62);
  box-shadow: 0 0 16px rgba(250, 204, 21, 0.18);
}

.app-landing-orbit-dive-rail-topic:hover,
.app-landing-orbit-dive-rail-topic:focus-visible {
  border-color: rgba(147, 197, 253, 0.55);
  transform: translateY(-1px);
}

.app-landing-orbit-dive-rail-mini-orb {
  width: 32px;
  height: 32px;
  border-radius: 999px;
  flex-shrink: 0;
  display: grid;
  place-items: center;
  overflow: hidden;
  border: 1px solid rgba(147, 197, 253, 0.42);
  background:
    radial-gradient(circle at 30% 25%, rgba(255, 255, 255, 0.16), transparent 42%),
    #0f172a;
}

.app-landing-orbit-dive-rail-mini-orb img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}

.app-landing-orbit-dive-rail-mini-orb .app-landing-orbit-dive-graph-emoji {
  font-size: 13px;
}

.app-landing-orbit-dive-rail-mini-orb .node-cover-icon--in-dive-orb {
  width: 62%;
  height: 62%;
  background-size: contain;
}

.app-landing-orbit-dive-rail-label {
  overflow: hidden;
  display: -webkit-box;
  -webkit-line-clamp: 2;
  -webkit-box-orient: vertical;
  word-break: break-word;
}

.app-landing-pane.is-landing-bg-light .app-landing-orbit-dive-tile {
  background: linear-gradient(180deg, rgba(255, 255, 255, 0.95), rgba(241, 245, 249, 0.92));
  border-color: rgba(148, 163, 184, 0.38);
}

.app-landing-pane.is-landing-bg-light .app-landing-orbit-dive-node-label {
  color: #334155;
}

.app-landing-pane.is-landing-bg-light .app-landing-orbit-dive-rail-topic {
  background: rgba(255, 255, 255, 0.88);
  border-color: rgba(148, 163, 184, 0.38);
  color: #334155;
}

.app-landing-pane.is-landing-bg-light .app-landing-orbit-dive-rail-mini-orb {
  background: #f8fafc;
  border-color: rgba(148, 163, 184, 0.42);
}

.app-landing-pane.is-landing-bg-light .app-landing-orbit-dive-inner {
  background: #f8fafc;
  border-color: rgba(148, 163, 184, 0.34);
}

.app-landing-pane.is-landing-bg-light .app-landing-orbit-dive-stage {
  background:
    radial-gradient(ellipse 55% 40% at 50% 0%, rgba(191, 219, 254, 0.55), transparent 70%),
    linear-gradient(180deg, #f8fafc 0%, #eef2ff 50%, #f8fafc 100%);
}

.app-landing-pane.is-landing-bg-light .app-landing-orbit-dive-title {
  color: #0f172a;
}

.app-landing-pane.is-landing-bg-light .app-landing-orbit-dive-stats,
.app-landing-pane.is-landing-bg-light .app-landing-orbit-dive-eyebrow {
  color: #64748b;
}

@keyframes app-landing-orbit-dive-nebula {
  from { opacity: 0.75; transform: scale(1); }
  to { opacity: 1; transform: scale(1.04); }
}

@keyframes app-landing-orbit-dive-pulse {
  0%, 100% { opacity: 0.65; transform: scale(1); }
  50% { opacity: 1; transform: scale(1.06); }
}

@keyframes app-landing-orbit-dive-float {
  0%, 100% { transform: translateY(0); }
  50% { transform: translateY(-4px); }
}

@keyframes app-landing-orbit-dive-node-in {
  from { opacity: 0; transform: translate(-50%, -50%) scale(0.72); }
  to { opacity: 1; transform: translate(-50%, -50%) scale(1); }
}

@keyframes app-landing-orbit-dive-link-flow {
  to { stroke-dashoffset: -24; }
}

@media (max-width: 720px) {
  .app-landing-orbit-dive-section-block {
    gap: 12px;
  }

  .app-landing-orbit-dive-rail-topic {
    max-width: min(180px, 100%);
    font-size: 10px;
  }

  .app-landing-orbit-dive-toolbar {
    grid-template-columns: 1fr;
  }

  .app-landing-orbit-dive-toolbar-copy {
    order: -1;
  }

  .app-landing-orbit-dive-open,
  .app-landing-orbit-dive-back {
    width: 100%;
    text-align: center;
  }
}

@keyframes app-landing-orbit-drift {
  0%,
  100% {
    transform: translate(-50%, calc(-1 * var(--orbit-anchor-y, 36px))) translate(0, 0);
  }
  25% {
    transform: translate(-50%, calc(-1 * var(--orbit-anchor-y, 36px)))
      translate(var(--orbit-float-x, 12px), calc(var(--orbit-float-y, 14px) * -1));
  }
  50% {
    transform: translate(-50%, calc(-1 * var(--orbit-anchor-y, 36px)))
      translate(calc(var(--orbit-float-x, 12px) * -0.65), calc(var(--orbit-float-y, 14px) * 0.75));
  }
  75% {
    transform: translate(-50%, calc(-1 * var(--orbit-anchor-y, 36px)))
      translate(calc(var(--orbit-float-x, 12px) * 0.35), calc(var(--orbit-float-y, 14px) * -0.45));
  }
}

@keyframes app-landing-orbit-link-pulse {
  0%,
  100% {
    opacity: 0.45;
  }
  50% {
    opacity: 0.9;
  }
}

@keyframes app-landing-orbit-link-flow {
  to {
    stroke-dashoffset: -2;
  }
}

@keyframes app-landing-orbit-hub-pulse {
  0%,
  100% {
    transform: scale(1);
    opacity: 0.72;
  }
  50% {
    transform: scale(1.05);
    opacity: 1;
  }
}

@keyframes app-landing-orbit-hub-glow {
  0%,
  100% {
    opacity: 0.55;
    transform: scale(0.96);
  }
  50% {
    opacity: 0.95;
    transform: scale(1.04);
  }
}

.app-landing-pane.is-screensaver.is-landing-bg-sky {
  background: transparent;
}

.app-landing-pane.is-screensaver .app-landing-hero {
  position: absolute;
  inset: 0;
  min-height: 100%;
  z-index: 0;
}

.app-landing-pane.is-screensaver .app-landing-body {
  position: relative;
  z-index: 1;
  flex: 1;
  min-height: calc(100vh - 56px);
  padding: 20px 28px 28px;
  background: transparent;
}

.app-landing-pane.is-screensaver .app-landing-inner {
  width: min(1280px, 100%);
  min-height: calc(100vh - 120px);
  gap: 16px;
}

.app-landing-pane.is-screensaver.is-landing-bg-sky .app-landing-dock {
  position: relative;
  z-index: 4;
  padding: 10px 12px;
  border-radius: 16px;
  border: 1px solid rgba(148, 163, 184, 0.22);
  background:
    linear-gradient(165deg, rgba(15, 23, 42, 0.82), rgba(30, 27, 75, 0.58));
  box-shadow:
    0 16px 40px rgba(2, 6, 23, 0.38),
    inset 0 1px 0 rgba(255, 255, 255, 0.06);
  backdrop-filter: blur(12px);
}

.app-landing-pane.is-screensaver.is-landing-bg-light .app-landing-dock {
  position: relative;
  z-index: 4;
  padding: 10px 12px;
  border-radius: 16px;
  border: 1px solid #cbd5e1;
  background: rgba(255, 255, 255, 0.94);
  box-shadow:
    0 12px 32px rgba(15, 23, 42, 0.08),
    inset 0 1px 0 rgba(255, 255, 255, 1);
  backdrop-filter: blur(12px);
}

.app-landing-pane.is-screensaver.is-landing-bg-sky .app-landing-search-bar {
  border-color: rgba(148, 163, 184, 0.28);
  background: rgba(15, 23, 42, 0.55);
}

.app-landing-pane.is-screensaver.is-landing-bg-light .app-landing-search-bar {
  border-color: #cbd5e1;
  background: #f8fafc;
}

.app-landing-attention {
  flex-shrink: 0;
  margin-top: auto;
  padding: 8px 10px;
  border: 1px solid rgba(148, 163, 184, 0.24);
  border-radius: 999px;
  background: rgba(15, 23, 42, 0.72);
  box-shadow: 0 10px 28px rgba(2, 6, 23, 0.28);
  backdrop-filter: blur(10px);
}

.app-landing-pane--grid .app-landing-attention {
  display: none;
}

.app-landing-agents--list {
  display: flex;
  flex-direction: column;
  gap: 10px;
}

.app-landing-agents--focus {
  display: flex;
  flex-direction: column;
  gap: 22px;
  max-width: min(960px, 100%);
  width: 100%;
  margin: 0 auto;
  padding: 6px 0 28px;
}

.app-landing-focus-page-head {
  display: flex;
  flex-direction: column;
  gap: 4px;
  padding: 0 2px 4px;
}

.app-landing-focus-page-title {
  margin: 0;
  font-size: 20px;
  font-weight: 750;
  letter-spacing: -0.02em;
  color: #0f172a;
}

.app-landing-focus-page-subtitle {
  margin: 0;
  font-size: 13px;
  color: #64748b;
}

.app-landing-focus-agent-section {
  display: flex;
  flex-direction: column;
  gap: 12px;
  padding: 14px 14px 16px;
  border: 1px solid #e2e8f0;
  border-radius: 16px;
  background: rgba(255, 255, 255, 0.92);
  box-shadow: 0 4px 20px rgba(15, 23, 42, 0.06);
}

.app-landing-focus-agent-section.is-orchestrator {
  border-color: rgba(245, 158, 11, 0.45);
  box-shadow:
    0 4px 20px rgba(15, 23, 42, 0.06),
    0 0 0 1px rgba(245, 158, 11, 0.12);
}

.app-landing-focus-agent-head {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
}

.app-landing-focus-agent-btn {
  display: flex;
  align-items: center;
  gap: 10px;
  min-width: 0;
  padding: 0;
  border: 0;
  background: transparent;
  cursor: pointer;
  text-align: left;
  border-radius: 10px;
  transition: opacity 0.15s ease;
}

.app-landing-focus-agent-btn:hover {
  opacity: 0.88;
}

.app-landing-focus-agent-avatar {
  flex-shrink: 0;
  display: flex;
  align-items: center;
  justify-content: center;
  width: 36px;
  height: 36px;
  border-radius: 11px;
  overflow: hidden;
  background: linear-gradient(145deg, #e0e7ff, #dbeafe);
}

.app-landing-focus-agent-avatar img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}

.app-landing-focus-agent-copy {
  display: flex;
  flex-direction: column;
  gap: 1px;
  min-width: 0;
}

.app-landing-focus-agent-name {
  font-size: 14px;
  font-weight: 700;
  color: #0f172a;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.app-landing-focus-agent-hint {
  font-size: 11px;
  color: #64748b;
}

.app-landing-focus-agent-count {
  flex-shrink: 0;
  min-width: 26px;
  padding: 4px 9px;
  border-radius: 999px;
  font-size: 11px;
  font-weight: 700;
  text-align: center;
  color: #4338ca;
  background: #eef2ff;
  border: 1px solid rgba(99, 102, 241, 0.2);
}

.app-landing-focus-grid {
  display: grid;
  grid-template-columns: repeat(auto-fill, minmax(200px, 1fr));
  gap: 10px;
}

.app-landing-focus-card {
  position: relative;
  display: flex;
  flex-direction: column;
  width: 100%;
  padding: 0;
  border: 1px solid #e2e8f0;
  border-radius: 14px;
  background: #fff;
  box-shadow: 0 2px 10px rgba(15, 23, 42, 0.05);
  color: inherit;
  text-align: left;
  cursor: pointer;
  overflow: hidden;
  transition:
    transform 0.16s ease,
    border-color 0.16s ease,
    box-shadow 0.16s ease;
}

.app-landing-focus-card.has-awn-id .app-landing-focus-card-title {
  padding-right: 30px;
}

.app-landing-focus-card-id-badge {
  position: absolute;
  top: 6px;
  right: 6px;
  z-index: 5;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-width: 22px;
  height: 22px;
  padding: 0 5px;
  border: 1px solid rgba(250, 204, 21, 0.78);
  border-radius: 999px;
  background: rgba(15, 23, 42, 0.92);
  color: #fef9c3;
  font-family: ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", monospace;
  font-size: 10px;
  font-weight: 700;
  line-height: 1;
  letter-spacing: 0.01em;
  pointer-events: none;
  box-shadow:
    0 0 0 2px rgba(255, 255, 255, 0.85),
    0 3px 10px rgba(15, 23, 42, 0.28);
}

.app-landing-focus-card:hover {
  transform: translateY(-2px);
  border-color: #a5b4fc;
  box-shadow:
    0 10px 28px rgba(99, 102, 241, 0.14),
    0 0 0 1px rgba(99, 102, 241, 0.12);
}

.app-landing-focus-card.is-active {
  border-color: rgba(245, 158, 11, 0.72);
  box-shadow:
    0 0 0 1px rgba(245, 158, 11, 0.28),
    0 8px 22px rgba(15, 23, 42, 0.08);
}

.app-landing-focus-card-media {
  display: flex;
  align-items: center;
  justify-content: center;
  aspect-ratio: 16 / 10;
  max-height: 96px;
  background: linear-gradient(145deg, #f1f5f9, #e2e8f0);
  overflow: hidden;
}

.app-landing-focus-card-media img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}

.app-landing-focus-card-body {
  position: relative;
  display: flex;
  flex-direction: column;
  gap: 6px;
  padding: 10px 11px 11px;
  min-width: 0;
}

.app-landing-focus-card-badge {
  position: absolute;
  top: 8px;
  right: 8px;
  font-size: 11px;
  line-height: 1;
  color: #6366f1;
  opacity: 0.85;
}

.app-landing-focus-card--no-media .app-landing-focus-card-badge {
  position: static;
  align-self: flex-start;
  margin-bottom: 2px;
}

.app-landing-focus-card-title {
  display: -webkit-box;
  -webkit-line-clamp: 2;
  -webkit-box-orient: vertical;
  overflow: hidden;
  padding-right: 14px;
  font-size: 13px;
  font-weight: 650;
  line-height: 1.35;
  color: #0f172a;
}

.app-landing-focus-card--no-media .app-landing-focus-card-title {
  padding-right: 0;
}

.app-landing-focus-card-meta {
  display: flex;
  flex-direction: column;
  gap: 6px;
  min-width: 0;
}

.app-landing-focus-card-path {
  font-size: 10px;
  color: #94a3b8;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.app-landing-focus-card-tags {
  display: flex;
  flex-wrap: wrap;
  gap: 4px;
}

.app-landing-focus-card-tag {
  padding: 2px 7px;
  border-radius: 999px;
  font-size: 9px;
  font-weight: 650;
  letter-spacing: 0.02em;
}

.app-landing-focus-card-tag--status {
  background: rgba(34, 197, 94, 0.12);
  color: #15803d;
}

.app-landing-focus-card-tag--type {
  background: rgba(99, 102, 241, 0.12);
  color: #4338ca;
}

.app-landing-focus-empty-wrap {
  display: flex;
  flex-direction: column;
  gap: 8px;
  padding: 36px 20px;
  border: 1px dashed #cbd5e1;
  border-radius: 16px;
  text-align: center;
  background: rgba(255, 255, 255, 0.85);
}

.app-landing-focus-empty {
  margin: 0;
  font-size: 15px;
  font-weight: 600;
  color: #334155;
}

.app-landing-focus-empty-hint {
  margin: 0;
  font-size: 13px;
  line-height: 1.5;
  color: #64748b;
  max-width: 42ch;
  align-self: center;
}

.app-landing-hub-row--list {
  background: #fff;
  border-color: #e2e8f0;
  box-shadow: 0 2px 10px rgba(15, 23, 42, 0.05);
}

.app-landing-hub-row--list .app-landing-hub-agent-name {
  color: #0f172a;
}

.app-landing-hub-row--list .app-landing-hub-agent-hint {
  color: #64748b;
}

.app-landing-hub-row--list .app-landing-hub-twig {
  background: #f8fafc;
  border-color: #cbd5e1;
  color: #334155;
}

.app-landing-list-empty {
  margin: 0;
  padding: 28px 20px;
  border: 1px dashed #cbd5e1;
  border-radius: 14px;
  text-align: center;
  color: #64748b;
  background: #fff;
}

.app-landing-pane.is-screensaver.is-landing-bg-sky .app-landing-search-agents-btn {
  border-right-color: rgba(148, 163, 184, 0.28);
  background-color: rgba(30, 41, 59, 0.72);
  color: rgba(226, 232, 240, 0.92);
}

.app-landing-pane.is-screensaver.is-landing-bg-light .app-landing-search-agents-btn {
  border-right-color: #cbd5e1;
  background-color: #f1f5f9;
  color: #334155;
}

.app-landing-pane.is-screensaver.is-landing-bg-sky .content-search-scope,
.app-landing-pane.is-screensaver.is-landing-bg-sky .content-search-input {
  background: transparent;
  color: #f8fafc;
}

.app-landing-pane.is-screensaver.is-landing-bg-sky .content-search-scope {
  border-right-color: rgba(148, 163, 184, 0.28);
  color: rgba(226, 232, 240, 0.88);
}

.app-landing-pane.is-screensaver.is-landing-bg-sky .content-search-input::placeholder {
  color: rgba(148, 163, 184, 0.72);
}

.app-landing-pane.is-screensaver.is-landing-bg-light .content-search-scope,
.app-landing-pane.is-screensaver.is-landing-bg-light .content-search-input {
  background: transparent;
  color: #0f172a;
}

.app-landing-pane.is-screensaver.is-landing-bg-light .content-search-scope {
  border-right-color: #cbd5e1;
  color: #475569;
}

.app-landing-pane.is-screensaver.is-landing-bg-light .content-search-input::placeholder {
  color: #94a3b8;
}

.app-landing-pane.is-screensaver .agent-focus-panel--landing {
  display: none;
}

.app-landing-pane.is-screensaver.is-landing-bg-sky .app-landing-main-topic-card-media {
  border-color: rgba(226, 232, 240, 0.35);
  background: radial-gradient(circle at 30% 20%, rgba(99, 102, 241, 0.35) 0%, rgba(30, 27, 75, 0.85) 70%);
  box-shadow:
    0 10px 26px rgba(2, 6, 23, 0.35),
    inset 0 1px 0 rgba(255, 255, 255, 0.12);
}

.app-landing-pane.is-screensaver.is-landing-bg-sky .app-landing-main-topics-track--board {
  --board-cell-light: rgba(51, 65, 85, 0.72);
  --board-cell-dark: rgba(30, 41, 59, 0.88);
  --board-frame: rgba(148, 163, 184, 0.32);
  border-top-color: var(--board-frame);
}

.app-landing-pane.is-screensaver.is-landing-bg-sky
  .app-landing-main-topics-track--board
  .app-landing-main-topic-card,
.app-landing-pane.is-screensaver.is-landing-bg-sky
  .app-landing-main-topics-track--board
  .app-landing-board-cell--empty {
  box-shadow: inset -1px -1px 0 rgba(15, 23, 42, 0.65);
}

.app-landing-pane.is-screensaver.is-landing-bg-sky
  .app-landing-main-topics-track--board
  .app-landing-board-cell--empty::after {
  border-color: rgba(148, 163, 184, 0.14);
}

.app-landing-pane.is-screensaver.is-landing-bg-sky
  .app-landing-main-topics-track--board
  .app-landing-main-topic-card.is-active {
  background: rgba(49, 46, 129, 0.72);
  box-shadow: inset 0 0 0 2px rgba(165, 180, 252, 0.55), inset -1px -1px 0 rgba(15, 23, 42, 0.55);
}

.app-landing-pane.is-screensaver.is-landing-bg-sky .app-landing-orbit-stack.has-focus-panel {
  border-color: rgba(148, 163, 184, 0.18);
  box-shadow: inset 0 0 0 1px rgba(148, 163, 184, 0.1);
}

.app-landing-pane.is-screensaver.is-landing-bg-sky .app-landing-main-topic-card-title {
  color: #f1f5f9;
  text-shadow: 0 1px 10px rgba(2, 6, 23, 0.45);
}

.app-landing-pane.is-screensaver.is-landing-bg-sky .app-landing-main-topic-card-agent,
.app-landing-pane.is-screensaver.is-landing-bg-sky .app-landing-main-topic-card-path {
  color: rgba(203, 213, 225, 0.62);
}

.app-landing-pane.is-screensaver.is-landing-bg-sky
  .app-landing-main-topics-track--board
  .app-landing-main-topic-card-window {
  border-color: rgba(148, 163, 184, 0.45);
  background: rgba(15, 23, 42, 0.55);
}

.app-landing-pane.is-screensaver.is-landing-bg-sky
  .app-landing-main-topics-track--board
  .app-landing-main-topic-card-label {
  border-color: rgba(255, 255, 255, 0.14);
  background: rgba(15, 23, 42, 0.82);
  color: #f1f5f9;
  box-shadow:
    0 4px 14px rgba(2, 6, 23, 0.35),
    inset 0 0 0 1px rgba(255, 255, 255, 0.08);
}

.app-landing-pane.is-screensaver.is-landing-bg-light
  .app-landing-main-topics-track--board
  .app-landing-main-topic-card-label {
  border-color: #e2e8f0;
  background: #fff;
  color: #334155;
  box-shadow:
    0 4px 12px rgba(15, 23, 42, 0.08),
    inset 0 0 0 1px rgba(255, 255, 255, 0.85);
}

.app-landing-pane.is-screensaver.is-landing-bg-sky .app-landing-main-topic-card.is-active .app-landing-main-topic-card-media {
  box-shadow:
    0 0 0 2px rgba(196, 181, 253, 0.9),
    0 12px 30px rgba(99, 102, 241, 0.35);
}

.app-landing-pane.is-screensaver.is-landing-bg-sky .app-landing-main-topic-card:hover .app-landing-main-topic-card-media::before {
  border-color: rgba(253, 224, 71, 0.98);
  box-shadow: 0 0 0 1px rgba(250, 204, 21, 0.45);
}

.app-landing-pane.is-screensaver.is-landing-bg-sky .app-landing-orbit-stack.has-focus-panel .app-landing-orbit {
  border-color: rgba(148, 163, 184, 0.18);
  box-shadow: none;
}

.app-landing-pane.is-screensaver.is-landing-bg-sky .app-landing-orbit-focus-panel-inner {
  background: rgba(15, 23, 42, 0.28);
}

.app-landing-pane.is-screensaver.is-landing-bg-sky .app-landing-orbit-focus-panel-title {
  color: rgba(226, 232, 240, 0.72);
}

.app-landing-pane.is-screensaver.is-landing-bg-sky .app-landing-main-topics-search-count {
  color: #c7d2fe;
  border-left-color: rgba(148, 163, 184, 0.28);
}

.app-landing-pane.is-screensaver.is-landing-bg-sky .app-landing-orbit-focus-panel-title {
  color: rgba(203, 213, 225, 0.78);
  border-right-color: rgba(148, 163, 184, 0.28);
}

.app-landing-pane.is-screensaver.is-landing-bg-sky .app-landing-main-topics-search {
  border-color: rgba(148, 163, 184, 0.32);
  background: rgba(15, 23, 42, 0.42);
}

.app-landing-pane.is-screensaver.is-landing-bg-sky .app-landing-main-topics-search-input {
  color: #f8fafc;
}

.app-landing-pane.is-screensaver.is-landing-bg-sky .app-landing-main-topics-search-input::placeholder,
.app-landing-pane.is-screensaver.is-landing-bg-sky .app-landing-main-topics-search-icon,
.app-landing-pane.is-screensaver.is-landing-bg-sky .app-landing-main-topics-search-count {
  color: rgba(226, 232, 240, 0.62);
}

.app-landing-pane.is-screensaver.is-landing-bg-sky .app-landing-main-topics-nav {
  border-color: rgba(148, 163, 184, 0.32);
  background: rgba(15, 23, 42, 0.5);
  color: #e2e8f0;
}

.app-landing-pane.is-screensaver.is-landing-bg-light .app-landing-main-topics-search {
  background: rgba(255, 255, 255, 0.88);
}

.app-landing-pane.is-screensaver.is-landing-bg-sky .app-landing-main-topic-skeleton-media,
.app-landing-pane.is-screensaver.is-landing-bg-sky .app-landing-main-topic-skeleton-line {
  background: rgba(148, 163, 184, 0.2);
  border-color: rgba(255, 255, 255, 0.18);
}

.app-landing-pane.is-screensaver.is-landing-bg-sky .app-landing-orbit-focus-panel.is-loading .app-landing-main-topics-search::after {
  background: rgba(148, 163, 184, 0.22);
}

.app-landing-pane.is-screensaver.is-landing-bg-light .app-landing-orbit-stack.has-focus-panel .app-landing-orbit {
  border-color: rgba(148, 163, 184, 0.14);
  box-shadow: none;
}

.app-landing-pane.is-screensaver.is-landing-bg-light .app-landing-orbit-focus-panel-inner {
  background: rgba(255, 255, 255, 0.42);
}

.app-landing-pane.is-screensaver.is-landing-bg-light .app-landing-main-topic-card-title {
  color: #0f172a;
}

.app-landing-pane.is-screensaver.is-landing-bg-sky .app-landing-header {
  border-bottom-color: rgba(148, 163, 184, 0.22);
}

.app-landing-pane.is-screensaver.is-landing-bg-sky .app-landing-title {
  color: #f8fafc;
}

.app-landing-pane.is-screensaver.is-landing-bg-sky .app-landing-sub {
  color: rgba(226, 232, 240, 0.72);
}

.app-landing-pane.is-screensaver.is-landing-bg-sky .app-landing-manage-btn {
  border-color: rgba(148, 163, 184, 0.35);
  background: rgba(15, 23, 42, 0.55);
  color: #e2e8f0;
  backdrop-filter: blur(6px);
}

.app-landing-pane.is-screensaver.is-landing-bg-sky .app-landing-manage-btn:hover {
  border-color: rgba(199, 210, 254, 0.55);
  background: rgba(30, 27, 75, 0.72);
}

.app-landing-pane.is-screensaver.is-landing-bg-sky .app-landing-view-toggle,
.app-landing-pane.is-screensaver.is-landing-bg-sky .app-landing-bg-toggle {
  border-color: rgba(148, 163, 184, 0.35);
  background: rgba(15, 23, 42, 0.45);
  backdrop-filter: blur(6px);
}

.app-landing-pane.is-screensaver.is-landing-bg-sky .app-landing-view-toggle-btn,
.app-landing-pane.is-screensaver.is-landing-bg-sky .app-landing-bg-toggle-btn {
  color: rgba(226, 232, 240, 0.72);
}

.app-landing-pane.is-screensaver.is-landing-bg-sky .app-landing-view-toggle-btn.is-active,
.app-landing-pane.is-screensaver.is-landing-bg-sky .app-landing-bg-toggle-btn.is-active {
  background: rgba(250, 204, 21, 0.92);
  color: #422006;
}

.app-landing-pane.is-screensaver.is-landing-bg-light .app-landing-manage-btn {
  border-color: #cbd5e1;
  background: #fff;
  color: #334155;
}

.app-landing-pane.is-screensaver.is-landing-bg-light .app-landing-manage-btn:hover {
  border-color: #93c5fd;
  background: #f0f9ff;
  color: #0c4a6e;
}

.app-landing-pane.is-screensaver.is-landing-bg-light .app-landing-view-toggle,
.app-landing-pane.is-screensaver.is-landing-bg-light .app-landing-bg-toggle {
  border-color: #cbd5e1;
  background: #f1f5f9;
}

.app-landing-pane.is-screensaver.is-landing-bg-light .app-landing-view-toggle-btn,
.app-landing-pane.is-screensaver.is-landing-bg-light .app-landing-bg-toggle-btn {
  color: #64748b;
}

.app-landing-pane.is-screensaver.is-landing-bg-light .app-landing-view-toggle-btn.is-active,
.app-landing-pane.is-screensaver.is-landing-bg-light .app-landing-bg-toggle-btn.is-active {
  background: #fff;
  color: #0369a1;
  box-shadow: 0 1px 4px rgba(14, 165, 233, 0.14);
}

.app-landing-pane.is-screensaver .app-landing-hero-inner {
  opacity: 0;
  visibility: hidden;
  pointer-events: none;
}

.app-landing-pane.is-screensaver.is-landing-bg-sky .app-landing-orbit-hub-copy {
  padding: 26px 24px 22px;
  border-color: rgba(199, 210, 254, 0.28);
  background:
    radial-gradient(ellipse 95% 75% at 50% 0%, rgba(129, 140, 248, 0.2), transparent 60%),
    linear-gradient(165deg, rgba(15, 23, 42, 0.82), rgba(49, 46, 129, 0.52));
  box-shadow:
    0 24px 56px rgba(2, 6, 23, 0.5),
    0 0 0 1px rgba(255, 255, 255, 0.04),
    inset 0 1px 0 rgba(255, 255, 255, 0.1);
}

.app-landing-pane.is-screensaver.is-landing-bg-sky .app-landing-orbit-hub-title {
  font-size: clamp(1.5rem, 3.6vw, 2rem);
}

.app-landing-pane.is-screensaver.is-landing-bg-sky .app-landing-orbit-hub-lead {
  font-size: 13px;
  color: rgba(226, 232, 240, 0.84);
}

.app-landing-pane.is-screensaver.is-landing-bg-sky .app-landing-orbit-hub-tagline {
  font-size: 12px;
  color: rgba(203, 213, 225, 0.78);
}

.app-landing-pane.is-screensaver.is-landing-bg-sky .app-landing-orbit {
  min-height: calc(100vh - 220px);
}

.app-landing-pane.is-screensaver.is-landing-bg-sky .app-landing-orbit-map-panel,
.app-landing-pane.is-screensaver.is-landing-bg-sky .app-landing-orbit-bubbles {
  min-height: calc(100vh - 220px);
  background:
    radial-gradient(ellipse 70% 55% at 50% 100%, rgba(30, 27, 75, 0.55), transparent 70%),
    radial-gradient(ellipse 45% 40% at 18% 22%, rgba(99, 102, 241, 0.18), transparent 60%),
    radial-gradient(ellipse 40% 35% at 82% 28%, rgba(59, 130, 246, 0.14), transparent 55%);
}

.app-landing-pane.is-screensaver.is-landing-bg-sky .app-landing-orbit-stack:not(.has-focus-panel) .app-landing-orbit-map-panel,
.app-landing-pane.is-screensaver.is-landing-bg-sky .app-landing-orbit-stack:not(.has-focus-panel) .app-landing-orbit-bubbles {
  border-radius: 20px;
  box-shadow: inset 0 0 0 1px rgba(148, 163, 184, 0.12);
}

.app-landing-pane.is-screensaver.is-landing-bg-sky .app-landing-orbit-stack.has-focus-panel .app-landing-orbit {
  border-radius: 20px 20px 0 0;
  background:
    radial-gradient(ellipse 70% 55% at 50% 100%, rgba(30, 27, 75, 0.55), transparent 70%),
    radial-gradient(ellipse 45% 40% at 18% 22%, rgba(99, 102, 241, 0.18), transparent 60%),
    radial-gradient(ellipse 40% 35% at 82% 28%, rgba(59, 130, 246, 0.14), transparent 55%);
}

.app-landing-pane.is-screensaver.is-landing-bg-sky .app-landing-orbit-stack.has-focus-panel .app-landing-orbit-focus-panel-inner {
  border-radius: 0 0 20px 20px;
  border-top-color: rgba(148, 163, 184, 0.14);
}

.app-landing-pane.is-screensaver.is-landing-bg-sky .app-landing-orbit-dive.is-open {
  min-height: calc(100vh - 220px);
}

.app-landing-pane.is-screensaver.is-landing-bg-sky .app-landing-orbit-dive-inner {
  border-radius: 20px;
  box-shadow: inset 0 0 0 1px rgba(148, 163, 184, 0.12);
}

.app-landing-pane.is-screensaver.is-landing-bg-sky .app-landing-orbit-dive-stage {
  background:
    radial-gradient(ellipse 70% 55% at 50% 100%, rgba(30, 27, 75, 0.55), transparent 70%),
    radial-gradient(ellipse 45% 40% at 18% 22%, rgba(99, 102, 241, 0.18), transparent 60%),
    radial-gradient(ellipse 40% 35% at 82% 28%, rgba(59, 130, 246, 0.14), transparent 55%);
}

.app-landing-pane.is-screensaver.is-landing-bg-light .app-landing-orbit {
  min-height: calc(100vh - 220px);
}

.app-landing-pane.is-screensaver.is-landing-bg-light .app-landing-orbit-map-panel,
.app-landing-pane.is-screensaver.is-landing-bg-light .app-landing-orbit-bubbles {
  min-height: calc(100vh - 220px);
  background:
    radial-gradient(ellipse 70% 50% at 50% 0%, rgba(248, 250, 252, 0.9), transparent 72%),
    #fff;
}

.app-landing-pane.is-screensaver.is-landing-bg-light .app-landing-orbit-stack:not(.has-focus-panel) .app-landing-orbit-map-panel,
.app-landing-pane.is-screensaver.is-landing-bg-light .app-landing-orbit-stack:not(.has-focus-panel) .app-landing-orbit-bubbles {
  border-radius: 20px;
  box-shadow: inset 0 0 0 1px #e2e8f0;
}

.app-landing-pane.is-screensaver.is-landing-bg-light .app-landing-orbit-stack.has-focus-panel .app-landing-orbit {
  border-radius: 20px 20px 0 0;
  background:
    radial-gradient(ellipse 70% 50% at 50% 0%, rgba(248, 250, 252, 0.9), transparent 72%),
    #fff;
}

.app-landing-pane.is-screensaver.is-landing-bg-light .app-landing-orbit-stack.has-focus-panel .app-landing-orbit-focus-panel-inner {
  border-radius: 0 0 20px 20px;
  border-top-color: rgba(148, 163, 184, 0.12);
}

.app-landing-pane.is-screensaver.is-landing-bg-light .app-landing-orbit-dive.is-open {
  min-height: calc(100vh - 220px);
}

.app-landing-pane.is-screensaver.is-landing-bg-light .app-landing-orbit-dive-inner {
  border-radius: 20px;
  box-shadow: inset 0 0 0 1px rgba(148, 163, 184, 0.18);
}

.app-landing-pane.is-screensaver.is-landing-bg-light .app-landing-orbit-dive-stage {
  background:
    radial-gradient(ellipse 70% 50% at 50% 0%, rgba(248, 250, 252, 0.9), transparent 72%),
    #fff;
}

.app-landing-pane.is-screensaver.is-landing-bg-light .app-landing-orbit-hub-copy {
  border-color: rgba(148, 163, 184, 0.28);
  background:
    radial-gradient(ellipse 95% 75% at 50% 0%, rgba(147, 197, 253, 0.35), transparent 60%),
    linear-gradient(165deg, rgba(255, 255, 255, 0.92), rgba(224, 242, 254, 0.78));
  box-shadow:
    0 16px 40px rgba(15, 23, 42, 0.08),
    inset 0 1px 0 rgba(255, 255, 255, 0.85);
}

.app-landing-pane.is-screensaver.is-landing-bg-light .app-landing-orbit-hub-eyebrow {
  color: rgba(79, 70, 229, 0.78);
}

.app-landing-pane.is-screensaver.is-landing-bg-light .app-landing-orbit-hub-mark {
  border-color: rgba(129, 140, 248, 0.42);
  box-shadow:
    0 0 0 4px rgba(99, 102, 241, 0.1),
    0 6px 14px rgba(79, 70, 229, 0.18),
    inset 0 1px 0 rgba(255, 255, 255, 0.34);
}

.app-landing-pane.is-screensaver.is-landing-bg-light .app-landing-orbit-hub-title {
  font-size: clamp(1.5rem, 3.6vw, 2rem);
  background: linear-gradient(135deg, #0f172a 0%, #4338ca 45%, #2563eb 100%);
  -webkit-background-clip: text;
  background-clip: text;
  color: transparent;
}

.app-landing-pane.is-screensaver.is-landing-bg-light .app-landing-orbit-hub-lead {
  color: #334155;
}

.app-landing-pane.is-screensaver.is-landing-bg-light .app-landing-orbit-hub-tagline {
  color: #64748b;
}

.app-landing-pane.is-screensaver.is-landing-bg-light .app-landing-orbit-hub-ring {
  border-color: rgba(129, 140, 248, 0.3);
  box-shadow:
    0 0 24px rgba(99, 102, 241, 0.12),
    inset 0 0 20px rgba(147, 197, 253, 0.1);
}

.app-landing-pane.is-screensaver.is-landing-bg-light .app-landing-orbit-hub-ring--inner {
  border-color: rgba(147, 197, 253, 0.38);
}

.app-landing-pane.is-screensaver.is-landing-bg-light .app-landing-orbit-hub-glow {
  background: radial-gradient(circle at 50% 42%, rgba(147, 197, 253, 0.38), rgba(255, 255, 255, 0) 68%);
}

.app-landing-pane.is-screensaver.is-landing-bg-light .app-landing-orbit-bubble {
  border-color: #e2e8f0;
  background: #fff;
  box-shadow:
    0 8px 20px rgba(15, 23, 42, 0.08),
    inset 0 0 0 1px #fff;
}

.app-landing-pane.is-screensaver.is-landing-bg-light .app-landing-orbit-bubble.is-active {
  border-color: #6366f1;
  box-shadow:
    0 0 0 4px rgba(99, 102, 241, 0.14),
    0 0 20px rgba(99, 102, 241, 0.2),
    0 12px 28px rgba(15, 23, 42, 0.1);
}

.app-landing-pane.is-screensaver.is-landing-bg-light .app-landing-orbit-bubble.is-inactive {
  opacity: 0.72;
  filter: grayscale(0.12);
}

.app-landing-pane.is-screensaver.is-landing-bg-light .app-landing-orbit-bubble-avatar {
  background: #fff;
  color: #1e3a8a;
}

.app-landing-pane.is-screensaver.is-landing-bg-light .app-landing-orbit-bubble-awn-id-badge {
  border-color: rgba(99, 102, 241, 0.45);
  background: rgba(255, 255, 255, 0.94);
  color: #4338ca;
  box-shadow: 0 2px 8px rgba(15, 23, 42, 0.12);
}

.app-landing-pane.is-screensaver.is-landing-bg-light .app-landing-orbit-bubble-label {
  border-color: #e2e8f0;
  background: #fff;
  color: #334155;
  box-shadow:
    0 4px 12px rgba(15, 23, 42, 0.08),
    inset 0 0 0 1px rgba(255, 255, 255, 0.85);
}

.app-landing-pane.is-screensaver.is-landing-bg-light .app-landing-orbit-bubble-meta {
  border-color: #e2e8f0;
  background: rgba(255, 255, 255, 0.94);
  box-shadow: 0 4px 14px rgba(15, 23, 42, 0.08);
}

.app-landing-pane.is-screensaver.is-landing-bg-light .app-landing-orbit-bubble-meta-label {
  color: #64748b;
}

.app-landing-pane.is-screensaver.is-landing-bg-light .app-landing-orbit-bubble-meta-value {
  color: #334155;
}

.app-landing-pane.is-screensaver.is-landing-bg-light .app-landing-orbit-bubble-meta-row.is-git.is-clean .app-landing-orbit-bubble-meta-value {
  color: #15803d;
}

.app-landing-pane.is-screensaver.is-landing-bg-light .app-landing-orbit-bubble-meta-row.is-git.is-dirty .app-landing-orbit-bubble-meta-value {
  color: #b45309;
}

.app-landing-pane.is-screensaver.is-landing-bg-light .app-landing-orbit-bubble.is-inactive + .app-landing-orbit-bubble-label {
  background: #fff;
  border-color: #e2e8f0;
  color: #64748b;
}

.app-landing-pane.is-screensaver.is-landing-bg-light .app-landing-orbit-bubble.is-orchestrator {
  border-color: rgba(245, 158, 11, 0.62);
  background: #fff;
}

.app-landing-pane.is-screensaver.is-landing-bg-light .app-landing-orbit-bubble.is-orchestrator.is-active {
  border-color: rgba(245, 158, 11, 0.88);
  box-shadow:
    0 0 0 4px rgba(245, 158, 11, 0.16),
    0 0 22px rgba(245, 158, 11, 0.24),
    0 12px 28px rgba(15, 23, 42, 0.08);
}

.app-landing-pane.is-screensaver.is-landing-bg-light .app-landing-orbit-link {
  stroke: rgba(100, 116, 139, 0.34);
}

.app-landing-pane.is-screensaver.is-landing-bg-light .app-landing-orbit-link.is-active {
  stroke: rgba(99, 102, 241, 0.48);
}

.app-landing-pane.is-screensaver.is-landing-bg-light .app-landing-orbit-create-btn {
  border-color: rgba(99, 102, 241, 0.42);
  background: rgba(255, 255, 255, 0.94);
  color: #4338ca;
}

.app-landing-pane.is-screensaver.is-landing-bg-light .app-landing-orbit-create-btn:hover {
  border-color: #6366f1;
  background: #eef2ff;
}

.app-landing-pane.is-screensaver.is-landing-bg-light .app-landing-orbit-attention {
  border-color: #cbd5e1;
  background: rgba(255, 255, 255, 0.92);
  box-shadow: 0 8px 20px rgba(15, 23, 42, 0.08);
}

.app-landing-pane.is-screensaver.is-landing-bg-light .app-landing-orbit-attention-stack {
  background: rgba(148, 163, 184, 0.24);
}

.app-landing-pane.is-landing-bg-light .app-landing-attention {
  border-color: rgba(148, 163, 184, 0.35);
  background: rgba(255, 255, 255, 0.82);
  box-shadow: 0 8px 24px rgba(15, 23, 42, 0.08);
}

.app-landing-pane.is-screensaver.is-landing-bg-light .app-landing-hub-row {
  background: #fff;
  border-color: #e2e8f0;
  box-shadow: 0 2px 10px rgba(15, 23, 42, 0.05);
}

.app-landing-pane.is-screensaver.is-landing-bg-light .app-landing-hub-row .app-landing-hub-agent-name {
  color: #0f172a;
}

.app-landing-pane.is-screensaver.is-landing-bg-light .app-landing-hub-row .app-landing-hub-agent-hint {
  color: #64748b;
}

.app-landing-pane.is-screensaver.is-landing-bg-light .app-landing-hub-section-title {
  color: #64748b;
}

.app-landing-pane.is-screensaver.is-landing-bg-light .app-landing-hub-twig {
  background: #f8fafc;
  border-color: #cbd5e1;
  color: #334155;
}

.app-landing-pane.is-screensaver.is-landing-bg-light .app-landing-hub-empty {
  color: #94a3b8;
}

.app-landing-pane.is-screensaver.is-landing-bg-light .app-landing-flow-day-label::before {
  background: linear-gradient(90deg, rgba(99, 102, 241, 0.08), rgba(59, 130, 246, 0.45));
  box-shadow: 0 0 10px rgba(59, 130, 246, 0.12);
}

.app-landing-pane.is-screensaver.is-landing-bg-light .app-landing-flow-day-label-text {
  color: #3730a3;
  border-color: rgba(99, 102, 241, 0.32);
  background: linear-gradient(145deg, #eef2ff, #f8fafc);
  box-shadow:
    0 2px 12px rgba(99, 102, 241, 0.1),
    inset 0 1px 0 rgba(255, 255, 255, 0.9);
}

.app-landing-pane.is-screensaver.is-landing-bg-light .app-landing-flow-day-label::after {
  background: linear-gradient(
    90deg,
    rgba(59, 130, 246, 0.35) 0%,
    rgba(203, 213, 225, 0.85) 70%,
    transparent 100%
  );
}

.app-landing-pane.is-screensaver.is-landing-bg-light .app-landing-flow-timeline-rail::before {
  background: linear-gradient(
    180deg,
    rgba(59, 130, 246, 0.45) 0%,
    rgba(99, 102, 241, 0.22) 40%,
    rgba(203, 213, 225, 0.65) 100%
  );
  box-shadow: 0 0 12px rgba(59, 130, 246, 0.15);
}

.app-landing-pane.is-screensaver.is-landing-bg-light .app-landing-flow-timeline-time {
  color: #3730a3;
  border-color: rgba(99, 102, 241, 0.35);
  background: linear-gradient(145deg, #eef2ff, #f8fafc);
  box-shadow:
    0 2px 10px rgba(99, 102, 241, 0.12),
    inset 0 1px 0 rgba(255, 255, 255, 0.85);
}

.app-landing-pane.is-screensaver.is-landing-bg-light .app-landing-flow-timeline-dot {
  background: radial-gradient(circle at 32% 28%, #fff 0%, #93c5fd 40%, #3b82f6 100%);
  box-shadow:
    0 0 0 3px rgba(59, 130, 246, 0.2),
    0 0 14px rgba(59, 130, 246, 0.35);
}

.app-landing-pane.is-screensaver.is-landing-bg-light
  .app-landing-flow-timeline-entry--skeleton
  .app-landing-flow-timeline-dot {
  animation: none;
}

.app-landing-pane.is-screensaver.is-landing-bg-light .app-landing-flow-card {
  background: #fff;
  border-color: #e2e8f0;
  box-shadow: 0 2px 12px rgba(15, 23, 42, 0.06);
  color: #0f172a;
}

.app-landing-pane.is-screensaver.is-landing-bg-light .app-landing-flow-card:hover {
  border-color: #93c5fd;
  box-shadow: 0 8px 24px rgba(15, 23, 42, 0.08);
}

.app-landing-pane.is-screensaver.is-landing-bg-light
  .app-landing-flow-card--timeline.app-landing-flow-card--compact.app-landing-flow-card--grid-tile:hover {
  border-color: #6366f1;
  background: linear-gradient(102deg, #eef2ff 0%, #e0e7ff 48%, #f8fafc 100%);
  box-shadow:
    0 10px 28px rgba(99, 102, 241, 0.2),
    0 0 0 1px rgba(99, 102, 241, 0.22);
}

.app-landing-pane.is-screensaver.is-landing-bg-light .app-landing-flow-card-title {
  color: #0f172a;
}

.app-landing-pane.is-screensaver.is-landing-bg-light .app-landing-flow-card-agent-name {
  color: #64748b;
}

.app-landing-pane.is-screensaver.is-landing-bg-light .app-landing-flow-card-media {
  background:
    radial-gradient(ellipse 80% 70% at 50% 20%, rgba(147, 197, 253, 0.35), transparent 65%),
    #f1f5f9;
}

.app-landing-pane.is-screensaver.is-landing-bg-light .app-landing-flow-card-media-empty {
  border-color: rgba(100, 116, 139, 0.24);
  background: rgba(148, 163, 184, 0.12);
}

.app-landing-pane.is-screensaver.is-landing-bg-light .app-landing-flow-empty,
.app-landing-pane.is-screensaver.is-landing-bg-light .app-landing-flow-empty-hint {
  color: #64748b;
}

.app-landing-pane.is-screensaver.is-landing-bg-light .app-landing-flow-empty-wrap {
  border-color: #cbd5e1;
  background: rgba(255, 255, 255, 0.72);
}

.app-landing-pane.is-screensaver.is-landing-bg-light .app-landing-flow-empty {
  color: #334155;
}

.app-landing-pane.is-screensaver.is-landing-bg-light .app-landing-flow-card--skeleton:hover {
  border-color: #e2e8f0;
  box-shadow: 0 2px 12px rgba(15, 23, 42, 0.06);
}

.app-landing-pane.is-screensaver.is-landing-bg-light .app-landing-flow-skeleton-block,
.app-landing-pane.is-screensaver.is-landing-bg-light .app-landing-flow-skeleton-line {
  background: rgba(148, 163, 184, 0.18);
}

.app-landing-pane.is-screensaver.is-landing-bg-light .app-landing-flow-skeleton-block::after,
.app-landing-pane.is-screensaver.is-landing-bg-light .app-landing-flow-skeleton-line::after {
  background: linear-gradient(
    90deg,
    transparent 0%,
    rgba(255, 255, 255, 0.35) 45%,
    rgba(255, 255, 255, 0.75) 50%,
    rgba(255, 255, 255, 0.35) 55%,
    transparent 100%
  );
}

.app-landing-pane.is-landing-bg-sky .app-landing-dock {
  padding: 10px 12px;
  border-radius: 16px;
  border: 1px solid rgba(148, 163, 184, 0.22);
  background:
    linear-gradient(165deg, rgba(15, 23, 42, 0.82), rgba(30, 27, 75, 0.58));
  box-shadow:
    0 16px 40px rgba(2, 6, 23, 0.38),
    inset 0 1px 0 rgba(255, 255, 255, 0.06);
  backdrop-filter: blur(12px);
}

.app-landing-pane.is-landing-bg-sky .app-landing-search-bar {
  border-color: rgba(148, 163, 184, 0.28);
  background: rgba(15, 23, 42, 0.55);
}

.app-landing-pane.is-landing-bg-sky .app-landing-search-agents-btn {
  border-right-color: rgba(148, 163, 184, 0.28);
  background-color: rgba(30, 41, 59, 0.72);
  color: rgba(226, 232, 240, 0.92);
}

.app-landing-pane.is-landing-bg-sky .content-search-scope,
.app-landing-pane.is-landing-bg-sky .content-search-input {
  background: transparent;
  color: #f8fafc;
}

.app-landing-pane.is-landing-bg-sky .content-search-scope {
  border-right-color: rgba(148, 163, 184, 0.28);
  color: rgba(226, 232, 240, 0.88);
}

.app-landing-pane.is-landing-bg-sky .content-search-input::placeholder {
  color: rgba(148, 163, 184, 0.72);
}

.app-landing-pane.is-landing-bg-sky .app-landing-search-bar--disabled:focus-within,
.app-landing-pane.is-landing-bg-light .app-landing-search-bar--disabled:focus-within {
  border-color: rgba(148, 163, 184, 0.28);
  box-shadow: none;
}

.app-landing-pane.is-landing-bg-sky .app-landing-search-bar--disabled .content-search-scope:disabled,
.app-landing-pane.is-landing-bg-sky .app-landing-search-bar--disabled .content-search-input:disabled,
.app-landing-pane.is-landing-bg-sky .app-landing-search-bar--disabled .app-landing-search-agents-btn:disabled {
  color: rgba(148, 163, 184, 0.78);
}

.app-landing-pane.is-landing-bg-sky .app-landing-search-bar--disabled .content-search-input:disabled::placeholder {
  color: rgba(148, 163, 184, 0.62);
}

.app-landing-pane.is-landing-bg-sky .app-landing-manage-btn {
  border-color: rgba(148, 163, 184, 0.35);
  background: rgba(15, 23, 42, 0.55);
  color: #e2e8f0;
  backdrop-filter: blur(6px);
}

.app-landing-pane.is-landing-bg-sky .app-landing-manage-btn:hover {
  border-color: rgba(199, 210, 254, 0.55);
  background: rgba(30, 27, 75, 0.72);
}

.app-landing-pane.is-landing-bg-sky .app-landing-view-toggle,
.app-landing-pane.is-landing-bg-sky .app-landing-bg-toggle {
  border-color: rgba(148, 163, 184, 0.35);
  background: rgba(15, 23, 42, 0.45);
  backdrop-filter: blur(6px);
}

.app-landing-pane.is-landing-bg-sky .app-landing-view-toggle-btn,
.app-landing-pane.is-landing-bg-sky .app-landing-bg-toggle-btn {
  color: rgba(226, 232, 240, 0.72);
}

.app-landing-pane.is-landing-bg-sky .app-landing-view-toggle-btn.is-active,
.app-landing-pane.is-landing-bg-sky .app-landing-bg-toggle-btn.is-active {
  background: rgba(250, 204, 21, 0.92);
  color: #422006;
}

.app-landing-pane.is-landing-bg-light .app-landing-dock {
  padding: 10px 12px;
  border-radius: 16px;
  border: 1px solid #cbd5e1;
  background: rgba(255, 255, 255, 0.94);
  box-shadow:
    0 12px 32px rgba(15, 23, 42, 0.08),
    inset 0 1px 0 rgba(255, 255, 255, 1);
  backdrop-filter: blur(12px);
}

.app-landing-pane.is-landing-bg-light .app-landing-search-bar {
  border-color: rgba(148, 163, 184, 0.32);
  background: rgba(248, 250, 252, 0.92);
}

.app-landing-pane.is-landing-bg-light .app-landing-search-agents-btn {
  border-right-color: rgba(148, 163, 184, 0.28);
  background-color: rgba(241, 245, 249, 0.95);
  color: #334155;
}

.app-landing-pane.is-landing-bg-light .content-search-scope,
.app-landing-pane.is-landing-bg-light .content-search-input {
  background: transparent;
  color: #0f172a;
}

.app-landing-pane.is-landing-bg-light .content-search-scope {
  border-right-color: rgba(148, 163, 184, 0.28);
  color: #475569;
}

.app-landing-pane.is-landing-bg-light .content-search-input::placeholder {
  color: #94a3b8;
}

.app-landing-pane.is-landing-bg-light .app-landing-manage-btn {
  border-color: rgba(148, 163, 184, 0.34);
  background: rgba(255, 255, 255, 0.92);
  color: #334155;
}

.app-landing-pane.is-landing-bg-light .app-landing-manage-btn:hover {
  border-color: rgba(56, 189, 248, 0.45);
  background: #f0f9ff;
  color: #0c4a6e;
}

.app-landing-pane.is-landing-bg-light .app-landing-view-toggle,
.app-landing-pane.is-landing-bg-light .app-landing-bg-toggle {
  border-color: rgba(148, 163, 184, 0.34);
  background: rgba(241, 245, 249, 0.92);
}

.app-landing-pane.is-landing-bg-light .app-landing-view-toggle-btn,
.app-landing-pane.is-landing-bg-light .app-landing-bg-toggle-btn {
  color: #64748b;
}

.app-landing-pane.is-landing-bg-light .app-landing-view-toggle-btn.is-active,
.app-landing-pane.is-landing-bg-light .app-landing-bg-toggle-btn.is-active {
  background: #fff;
  color: #0369a1;
  box-shadow: 0 1px 4px rgba(14, 165, 233, 0.14);
}

.app-landing-pane.is-landing-bg-light:not(.is-screensaver) .app-landing-orbit-hub-copy {
  border-color: rgba(148, 163, 184, 0.28);
  background:
    radial-gradient(ellipse 95% 75% at 50% 0%, rgba(147, 197, 253, 0.35), transparent 60%),
    linear-gradient(165deg, rgba(255, 255, 255, 0.96), rgba(224, 242, 254, 0.82));
  box-shadow:
    0 16px 40px rgba(15, 23, 42, 0.08),
    inset 0 1px 0 rgba(255, 255, 255, 0.9);
}

.app-landing-pane.is-landing-bg-light:not(.is-screensaver) .app-landing-orbit-hub-eyebrow {
  color: rgba(79, 70, 229, 0.78);
}

.app-landing-pane.is-landing-bg-light:not(.is-screensaver) .app-landing-orbit-hub-mark {
  border-color: rgba(129, 140, 248, 0.42);
  box-shadow:
    0 0 0 4px rgba(99, 102, 241, 0.1),
    0 6px 14px rgba(79, 70, 229, 0.18),
    inset 0 1px 0 rgba(255, 255, 255, 0.34);
}

.app-landing-pane.is-landing-bg-light:not(.is-screensaver) .app-landing-orbit-hub-title {
  background: linear-gradient(135deg, #0f172a 0%, #4338ca 45%, #2563eb 100%);
  -webkit-background-clip: text;
  background-clip: text;
  color: transparent;
}

.app-landing-pane.is-landing-bg-light:not(.is-screensaver) .app-landing-orbit-hub-lead {
  color: #334155;
}

.app-landing-pane.is-landing-bg-light:not(.is-screensaver) .app-landing-orbit-hub-tagline {
  color: #64748b;
}

.app-landing-pane.is-landing-bg-light .app-landing-orbit-bubble {
  border-color: #e2e8f0;
  background: #fff;
  box-shadow:
    0 8px 20px rgba(15, 23, 42, 0.08),
    inset 0 0 0 1px #fff;
}

.app-landing-pane.is-landing-bg-light .app-landing-orbit-bubble.is-active {
  border-color: #6366f1;
  box-shadow:
    0 0 0 4px rgba(99, 102, 241, 0.14),
    0 0 20px rgba(99, 102, 241, 0.2),
    0 12px 28px rgba(15, 23, 42, 0.1);
}

.app-landing-pane.is-landing-bg-light .app-landing-orbit-bubble-avatar {
  background: #fff;
  color: #1e3a8a;
}

.app-landing-pane.is-landing-bg-light .app-landing-orbit-bubble-label {
  border-color: #e2e8f0;
  background: #fff;
  color: #334155;
  box-shadow:
    0 4px 12px rgba(15, 23, 42, 0.08),
    inset 0 0 0 1px rgba(255, 255, 255, 0.85);
}

.app-landing-pane.is-landing-bg-light:not(.is-screensaver) .app-landing-platform {
  border-color: rgba(147, 197, 253, 0.45);
  background: linear-gradient(135deg, rgba(255, 255, 255, 0.96) 0%, rgba(240, 249, 255, 0.94) 100%);
  box-shadow: 0 10px 28px rgba(15, 23, 42, 0.05);
}

.app-landing-agent-card {
  display: flex;
  align-items: center;
  gap: 14px;
  width: 100%;
  padding: 14px 16px;
  border: 1px solid #e2e8f0;
  border-radius: 12px;
  background: #fff;
  text-align: left;
  cursor: pointer;
  transition: border-color 0.15s ease, box-shadow 0.15s ease;
}

.app-landing-agent-card:hover {
  border-color: #94a3b8;
  box-shadow: 0 4px 14px rgba(15, 23, 42, 0.06);
}

.app-landing-agent-card.is-registry-off {
  opacity: 0.72;
}

.app-landing-agent-card.is-registry-off:hover {
  border-color: #e2e8f0;
  box-shadow: none;
}

.app-landing-agent-card.is-orchestrator {
  border-color: rgba(245, 158, 11, 0.45);
  background: linear-gradient(165deg, #fff 0%, #fffbeb 100%);
  box-shadow: 0 0 0 1px rgba(245, 158, 11, 0.12);
}

.app-landing-agent-card.is-orchestrator:hover {
  border-color: rgba(245, 158, 11, 0.65);
  box-shadow: 0 4px 14px rgba(245, 158, 11, 0.12);
}

.app-landing-agent-orchestrator-badge {
  flex-shrink: 0;
  padding: 1px 6px;
  border-radius: 999px;
  font-size: 9px;
  font-weight: 700;
  letter-spacing: 0.04em;
  text-transform: uppercase;
  color: #b45309;
  background: rgba(245, 158, 11, 0.14);
}

.app-landing-agent-card--create {
  border-style: dashed;
  border-color: #c7d2fe;
  background: #fafbff;
}

.app-landing-agent-card--create:hover {
  border-color: #818cf8;
  background: #f5f7ff;
  box-shadow: 0 4px 14px rgba(99, 102, 241, 0.1);
}

.app-landing-agent-card--create .app-landing-agent-card-media {
  background: #eef2ff;
}

.app-landing-agent-card-create-icon {
  font-size: 28px;
  font-weight: 300;
  line-height: 1;
  color: #6366f1;
}

.app-landing-agent-card-create-sub {
  color: #64748b !important;
  font-family: inherit;
  font-weight: 500;
}

.app-landing-agent-card:focus-visible {
  outline: 2px solid #6366f1;
  outline-offset: 2px;
}

.app-landing-agent-card-media {
  flex-shrink: 0;
  width: 52px;
  height: 52px;
  border-radius: 10px;
  overflow: hidden;
  background: #eef2ff;
  display: flex;
  align-items: center;
  justify-content: center;
}

.app-landing-agent-card-media img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}

.app-landing-agent-card-fallback {
  font-size: 15px;
  font-weight: 700;
  color: #4338ca;
  letter-spacing: 0.02em;
}

.app-landing-agent-card-emoji {
  font-size: 30px;
  line-height: 1;
}

.app-landing-agent-card-body {
  min-width: 0;
  flex: 1;
  display: flex;
  flex-direction: column;
  gap: 3px;
}

.app-landing-agent-card-name-row {
  display: flex;
  align-items: center;
  gap: 8px;
  min-width: 0;
}

.app-landing-agent-dot {
  flex-shrink: 0;
  width: 8px;
  height: 8px;
  border-radius: 999px;
}

.app-landing-agent-dot.is-disabled {
  background: #cbd5e1;
  box-shadow: inset 0 0 0 1px rgba(148, 163, 184, 0.45);
}

.app-landing-agent-card-name {
  min-width: 0;
  flex: 1;
  font-size: 15px;
  font-weight: 600;
  color: #0f172a;
  line-height: 1.3;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.app-landing-agent-card-id {
  font-size: 12px;
  font-weight: 500;
  color: #6366f1;
  font-family: ui-monospace, SFMono-Regular, Menlo, monospace;
}

.app-landing-agent-card-path {
  font-size: 11px;
  color: #94a3b8;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.app-landing-empty {
  margin: 0;
  padding: 32px 20px;
  text-align: center;
  color: #64748b;
  font-size: 14px;
  line-height: 1.5;
  border: 1px dashed #cbd5e1;
  border-radius: 12px;
  background: #fff;
}

.app-landing-hint {
  margin: 0;
  font-size: 13px;
  color: #64748b;
}

.app-landing-hint.is-alert {
  color: #b45309;
}

.app-landing-hint.hidden {
  display: none;
}

@media (prefers-reduced-motion: reduce) {
  .app-landing-stars--far,
  .app-landing-stars--mid,
  .app-landing-stars--near {
    animation: none;
    opacity: 0.85;
  }

  .app-landing-meteor {
    display: none;
  }

  .app-landing-orbit-item {
    animation: none;
    will-change: auto;
  }

  .app-landing-orbit-hub-ring--outer,
  .app-landing-orbit-hub-ring--inner,
  .app-landing-orbit-hub-glow {
    animation: none;
  }
}

@media (max-width: 640px) {
  .app-landing-hero-inner {
    padding: 28px 20px;
  }

  .app-landing-body {
    padding: 24px 20px 40px;
  }

  .app-landing-header {
    flex-direction: column;
    align-items: stretch;
  }

  .app-landing-header-actions {
    justify-content: space-between;
  }

  .app-landing-pane.is-screensaver .app-landing-body {
    padding: 16px 14px 20px;
  }

  .app-landing-pane.is-screensaver .app-landing-dock {
    flex-direction: column;
    align-items: stretch;
  }

  .app-landing-pane.is-screensaver .app-landing-dock-actions {
    justify-content: space-between;
  }

  .app-landing-pane.is-screensaver .app-landing-orbit {
    min-height: calc(100vh - 260px);
  }
}

.menu-no-agent-placeholder {
  padding: 20px 14px;
  font-size: 13px;
  line-height: 1.5;
  text-align: center;
  color: #64748b;
}

.menu-no-agent-placeholder.hidden {
  display: none;
}

.agent-graph-pane {
  align-items: stretch;
  justify-content: flex-start;
  background:
    radial-gradient(ellipse 70% 55% at 12% 8%, rgba(88, 28, 135, 0.18), transparent 55%),
    radial-gradient(ellipse 60% 50% at 88% 92%, rgba(37, 99, 235, 0.14), transparent 52%),
    linear-gradient(165deg, #060a14 0%, #0c1220 50%, #070b14 100%);
  padding: 16px 18px 24px;
}

.agent-graph-pane .agent-canvas-head {
  width: 100%;
  margin: 0 0 12px;
  padding: 0 4px;
}

.agent-graph-head {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 16px;
}

.agent-graph-head-actions {
  display: flex;
  align-items: center;
  gap: 8px;
  flex-shrink: 0;
}

.agent-graph-head-copy {
  min-width: 0;
}

.agent-graph-setting {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  margin: 0;
  padding: 6px 10px;
  border: 1px solid rgba(148, 163, 184, 0.22);
  border-radius: 8px;
  background: rgba(15, 23, 42, 0.72);
  color: #e5e7eb;
  font-size: 12px;
  line-height: 1.2;
  white-space: nowrap;
  cursor: pointer;
  user-select: none;
}

.agent-graph-setting:hover {
  border-color: rgba(165, 180, 252, 0.45);
  background: rgba(30, 41, 59, 0.82);
}

.agent-graph-setting input {
  width: 14px;
  height: 14px;
  margin: 0;
  accent-color: #a5b4fc;
}

.agent-graph-pane .agent-canvas-title {
  color: #f3f4f6;
}

.agent-graph-pane .agent-canvas-eyebrow {
  color: #a5b4fc;
}

.agent-visualization-pane .agent-rmm-head-actions {
  flex: 1 1 auto;
  flex-shrink: 1;
  min-width: 0;
  flex-wrap: wrap;
  justify-content: flex-end;
  row-gap: 8px;
  max-width: 100%;
}

.agent-visualization-pane .agent-rmm-mode-tabs {
  display: flex;
  flex-wrap: wrap;
  gap: 6px;
  justify-content: flex-end;
  width: max-content;
  max-width: 100%;
}

.agent-visualization-pane .agent-rmm-mode {
  border: 1px solid rgba(148, 163, 184, 0.22);
  background: rgba(15, 23, 42, 0.72);
  color: #e5e7eb;
  border-radius: 999px;
  padding: 6px 12px;
  font-size: 12px;
  cursor: pointer;
}

.agent-visualization-pane .agent-rmm-mode.is-active {
  border-color: rgba(165, 180, 252, 0.55);
  background: rgba(49, 46, 129, 0.5);
  color: #eef2ff;
}

.agent-visualization-pane .agent-rmm-depth-label {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  margin: 0;
  padding: 6px 10px;
  border: 1px solid rgba(148, 163, 184, 0.22);
  border-radius: 8px;
  background: rgba(15, 23, 42, 0.72);
  color: #cbd5e1;
  font-size: 12px;
  line-height: 1.2;
  white-space: nowrap;
}

.agent-visualization-pane .agent-rmm-depth-label select {
  font-size: 12px;
  padding: 2px 6px;
  border-radius: 6px;
  border: 1px solid rgba(148, 163, 184, 0.28);
  background: rgba(2, 6, 23, 0.65);
  color: #f1f5f9;
}

.agent-visualization-pane .agent-rmm-preview-setting.hidden {
  display: none;
}

.agent-visualization-pane .agent-rmm-content {
  position: relative;
  display: flex;
  flex-direction: column;
}

.agent-visualization-pane .agent-rmm-view-chrome {
  position: absolute;
  inset: 10px;
  z-index: 5;
  pointer-events: none;
}

.agent-visualization-pane .agent-rmm-depth-on-canvas {
  position: absolute;
  top: 0;
  right: 0;
  pointer-events: auto;
  box-shadow: 0 8px 24px rgba(2, 6, 23, 0.35);
}

.agent-visualization-pane .agent-rmm-view-chrome-filters {
  display: inline-flex;
  flex-direction: row;
  align-items: center;
  gap: 10px;
}

.agent-visualization-pane .agent-rmm-view-chrome-settings-selects {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  flex-wrap: wrap;
  justify-content: flex-end;
}

.agent-visualization-pane .agent-rmm-content:has(#agent-rmm-graph-chrome:not(.hidden)) .agent-rmm-depth-on-canvas {
  right: 40px;
}

.agent-visualization-pane .agent-rmm-placeholder-scroll {
  display: flex;
  align-items: center;
  justify-content: center;
  min-height: 12rem;
}

.agent-visualization-pane .agent-rmm-depth-stub-hint {
  margin: 0;
  max-width: 22rem;
  padding: 12px 16px;
  text-align: center;
  font-size: 13px;
  line-height: 1.45;
  color: #94a3b8;
  border: 1px dashed rgba(148, 163, 184, 0.35);
  border-radius: 10px;
  background: rgba(15, 23, 42, 0.45);
}

.agent-visualization-pane.agent-rmm-subview-live .agent-rmm-mockup-links {
  display: none;
}

.agent-visualization-pane.agent-rmm-subview-live .agent-rmm-view-chrome {
  display: none;
}

.agent-rmm-live-shell {
  display: flex;
  flex-direction: column;
  min-height: 100%;
  height: 100%;
  color: hsl(205 12% 90%);
  font-size: 12px;
  line-height: 1.45;
  font-family: ui-monospace, Menlo, monospace;
  background: hsl(205 22% 6%);
}

.agent-rmm-live-bar {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 10px 16px;
  padding: 6px 12px 10px;
  font-size: 10px;
  letter-spacing: 0.12em;
  text-transform: uppercase;
  color: #94a3b8;
  border-bottom: 1px solid rgba(148, 163, 184, 0.14);
}

.agent-rmm-live-bar-dot {
  width: 7px;
  height: 7px;
  border-radius: 50%;
  background: #4ade80;
  box-shadow: 0 0 10px rgba(74, 222, 128, 0.45);
}

.agent-rmm-live-bar-sys b {
  color: #f1f5f9;
  font-weight: 600;
}

.agent-rmm-live-bar-meta {
  margin-left: auto;
  font-size: 9px;
  letter-spacing: 0.08em;
  opacity: 0.85;
}

.agent-rmm-live-grid {
  flex: 1;
  min-height: 0;
  display: grid;
  grid-template-columns: minmax(0, 220px) minmax(0, 1fr) minmax(0, 260px);
  align-items: stretch;
}

.agent-rmm-live-col {
  min-width: 0;
  min-height: 0;
  display: flex;
  flex-direction: column;
  padding: 12px 14px 14px;
}

.agent-rmm-live-col--left {
  border-right: 1px solid rgba(148, 163, 184, 0.12);
}

.agent-rmm-live-col--right {
  border-left: 1px solid rgba(148, 163, 184, 0.12);
}

.agent-rmm-live-col--center {
  padding: 0;
  position: relative;
  display: flex;
  flex-direction: column;
  min-height: 0;
}

.agent-rmm-live-clock {
  margin-bottom: 14px;
}

.agent-rmm-live-clock-time {
  font-size: 28px;
  font-weight: 700;
  font-variant-numeric: tabular-nums;
  color: #f07a2e;
  line-height: 1.1;
}

.agent-rmm-live-clock-date {
  margin-top: 4px;
  font-size: 10px;
  letter-spacing: 0.1em;
  text-transform: uppercase;
  color: #94a3b8;
}

.agent-rmm-live-metrics {
  display: grid;
  gap: 10px;
  margin: 0 0 16px;
}

.agent-rmm-live-metric {
  display: grid;
  grid-template-columns: 1fr auto;
  gap: 8px;
  align-items: baseline;
}

.agent-rmm-live-metric dt {
  margin: 0;
  font-size: 10px;
  letter-spacing: 0.08em;
  text-transform: uppercase;
  color: #94a3b8;
}

.agent-rmm-live-metric dd {
  margin: 0;
  font-size: 14px;
  font-weight: 600;
  color: #f8fafc;
  font-variant-numeric: tabular-nums;
}

.agent-rmm-live-subhead {
  margin: 0 0 8px;
  font-size: 10px;
  font-weight: 700;
  letter-spacing: 0.16em;
  text-transform: uppercase;
  color: #cbd5e1;
}

.agent-rmm-live-areas {
  list-style: none;
  margin: 0;
  padding: 0;
  display: grid;
  gap: 6px;
}

.agent-rmm-live-areas li {
  padding: 5px 8px;
  border-radius: 8px;
  border: 1px solid rgba(148, 163, 184, 0.12);
  background: rgba(15, 23, 42, 0.55);
  font-size: 11px;
  color: #e2e8f0;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
}

.agent-rmm-live-graph-host {
  flex: 1;
  min-height: 320px;
  height: 100%;
  position: relative;
}

.agent-rmm-live-graph-host--solo {
  min-height: min(70vh, 640px);
  height: 100%;
  flex: 1;
}

.agent-rmm-live-brain {
  display: flex;
  flex-direction: column;
  min-height: 100%;
  height: 100%;
  background: hsl(205 22% 6%);
}

.agent-rmm-live-brain-toolbar {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 6px;
  padding: 8px 10px;
  border-bottom: 1px solid rgba(255, 255, 255, 0.07);
  font-size: 9px;
  letter-spacing: 0.14em;
  text-transform: uppercase;
  color: #788790;
}

.agent-rmm-live-brain-toolbar-label {
  margin-right: 4px;
}

.agent-rmm-live-brain-view,
.agent-rmm-live-brain-fit {
  border: 1px solid rgba(255, 255, 255, 0.12);
  background: hsl(205 25% 9%);
  color: #a3b0b8;
  border-radius: 4px;
  padding: 4px 10px;
  font: inherit;
  font-size: 9px;
  letter-spacing: 0.12em;
  text-transform: uppercase;
  cursor: pointer;
}

.agent-rmm-live-brain-view.is-active,
.agent-rmm-live-brain-fit:hover,
.agent-rmm-live-brain-view:hover {
  border-color: rgba(240, 122, 46, 0.55);
  color: #f07a2e;
}

.agent-rmm-live-brain-view.is-active {
  background: rgba(240, 122, 46, 0.12);
}

.agent-rmm-live-brain-legend {
  display: flex;
  flex-wrap: wrap;
  gap: 4px;
  margin-left: auto;
  max-width: min(52vw, 420px);
  justify-content: flex-end;
}

.agent-rmm-live-brain-legend-chip {
  border: 1px solid color-mix(in srgb, var(--area-color) 55%, transparent);
  background: color-mix(in srgb, var(--area-color) 14%, hsl(205 25% 9%));
  color: #e2e8f0;
  border-radius: 999px;
  padding: 3px 8px;
  font: inherit;
  font-size: 8px;
  letter-spacing: 0.06em;
  cursor: pointer;
  max-width: 120px;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.agent-rmm-live-brain-legend-chip.is-active {
  border-color: #f07a2e;
  box-shadow: 0 0 0 1px rgba(240, 122, 46, 0.35);
}

.agent-rmm-live-brain-legend-chip.is-catalog {
  font-weight: 650;
  border-width: 1.5px;
}

.agent-rmm-live-brain-core {
  position: relative;
  flex: 1;
  min-height: 280px;
}

.agent-rmm-live-brain-canvas {
  display: block;
  width: 100%;
  height: 100%;
  min-height: 280px;
  touch-action: none;
  cursor: grab;
}

.agent-rmm-live-brain-canvas:active {
  cursor: grabbing;
}

.agent-rmm-live-brain-tip {
  position: absolute;
  z-index: 4;
  max-width: 220px;
  padding: 4px 8px;
  border-radius: 4px;
  border: 1px solid rgba(255, 255, 255, 0.12);
  background: hsl(205 25% 9%);
  color: #e2e8f0;
  font-size: 10px;
  pointer-events: none;
  box-shadow: 0 8px 24px rgba(0, 0, 0, 0.35);
}

.agent-rmm-live-brain-tip.hidden {
  display: none;
}

.agent-rmm-live-brain-empty {
  margin: 0;
  padding: 2rem 1rem;
  text-align: center;
  color: #788790;
  font-size: 12px;
}

.agent-visualization-pane.agent-rmm-subview-live .agent-graph-content {
  background: hsl(205 22% 6%);
  border-color: rgba(255, 255, 255, 0.07);
  box-shadow: none;
}

.agent-rmm-live-stream-head {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 8px;
  margin-bottom: 8px;
}

.agent-rmm-live-stream-badge {
  font-size: 9px;
  letter-spacing: 0.12em;
  text-transform: uppercase;
  padding: 3px 8px;
  border-radius: 999px;
  border: 1px solid rgba(165, 180, 252, 0.35);
  color: #c7d2fe;
  background: rgba(49, 46, 129, 0.35);
}

.agent-rmm-live-stream-host {
  flex: 1;
  min-height: 0;
  overflow: auto;
}

.agent-rmm-live-stream-host .workspace-journal-panel {
  border: none;
  background: transparent;
  padding: 0;
}

.agent-rmm-live-stream-host .workspace-journal-list {
  gap: 8px;
}

.agent-rmm-live-stream-host .workspace-journal-item {
  padding: 8px 10px;
  border-radius: 10px;
  border: 1px solid rgba(148, 163, 184, 0.14);
  background: rgba(15, 23, 42, 0.65);
}

.agent-rmm-live-stream-empty {
  margin: 0;
  font-size: 12px;
  color: #94a3b8;
}

@media (max-width: 1100px) {
  .agent-rmm-live-grid {
    grid-template-columns: 1fr;
    grid-template-rows: auto minmax(280px, 1fr) auto;
  }

  .agent-rmm-live-col--left,
  .agent-rmm-live-col--right {
    border: none;
    border-bottom: 1px solid rgba(148, 163, 184, 0.12);
  }

  .agent-rmm-live-stream-host {
    max-height: 220px;
  }
}

.agent-visualization-pane .agent-rmm-host {
  flex: 1;
  min-height: 0;
  height: auto;
  margin: 0;
  border: none;
  border-radius: 0;
  background: transparent;
  position: relative;
}

.agent-rmm-loading {
  position: absolute;
  inset: 0;
  z-index: 5;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  gap: 16px;
  padding: 24px;
  pointer-events: none;
  background: radial-gradient(ellipse 70% 55% at 50% 42%, rgba(30, 41, 59, 0.55) 0%, rgba(15, 23, 42, 0.88) 100%);
}

.agent-rmm-loading-visual {
  position: relative;
  width: 52px;
  height: 52px;
}

.agent-rmm-loading-ring {
  position: absolute;
  inset: 0;
  border-radius: 50%;
  border: 2px solid rgba(148, 163, 184, 0.18);
  border-top-color: rgba(56, 189, 248, 0.95);
  border-right-color: rgba(167, 139, 250, 0.85);
  animation: agent-rmm-loading-spin 0.85s cubic-bezier(0.45, 0.05, 0.25, 0.95) infinite;
  box-shadow: 0 0 24px rgba(56, 189, 248, 0.22);
}

.agent-rmm-loading-core {
  position: absolute;
  inset: 14px;
  border-radius: 50%;
  background: radial-gradient(circle at 35% 30%, #e0f2fe 0%, #6366f1 42%, #312e81 100%);
  opacity: 0.92;
  animation: agent-rmm-loading-pulse 1.6s ease-in-out infinite;
}

.agent-rmm-loading-text {
  margin: 0;
  font-size: 13px;
  font-weight: 600;
  letter-spacing: 0.02em;
  color: rgba(226, 232, 240, 0.88);
  text-align: center;
}

@keyframes agent-rmm-loading-spin {
  to {
    transform: rotate(360deg);
  }
}

@keyframes agent-rmm-loading-pulse {
  0%,
  100% {
    transform: scale(0.92);
    opacity: 0.78;
  }
  50% {
    transform: scale(1);
    opacity: 1;
  }
}

.agent-visualization-pane .agent-rmm-detail {
  position: absolute;
  top: 10px;
  left: 10px;
  right: 10px;
  z-index: 4;
  margin: 0;
  padding: 10px 12px;
  border-radius: 10px;
  border: 1px solid rgba(165, 180, 252, 0.35);
  background: rgba(15, 23, 42, 0.92);
  color: #e2e8f0;
  font-size: 13px;
  line-height: 1.45;
  box-shadow: 0 12px 28px rgba(2, 6, 23, 0.45);
}

.agent-visualization-pane .agent-rmm-detail strong {
  color: #f8fafc;
}

.agent-visualization-pane .agent-rmm-content .external-graph-wrap,
.agent-visualization-pane .agent-rmm-content .node-graph-wrap,
.agent-visualization-pane .agent-rmm-content .agent-rmm-live-graph-host,
.agent-visualization-pane .agent-rmm-content .node-navigation-elements-nav-mindmap-shell,
.agent-visualization-pane .agent-rmm-content .node-navigation-elements-nav-mindmap-host,
.agent-visualization-pane .agent-rmm-content .node-mindmap-wrap {
  flex: 1;
  min-height: 100%;
  height: 100%;
}

.agent-visualization-pane .agent-rmm-roadmap-scroll {
  background: linear-gradient(180deg, rgba(15, 23, 42, 0.35), rgba(2, 6, 23, 0.2));
}

.agent-rmm-corner-panels {
  position: absolute;
  right: 12px;
  bottom: 12px;
  top: auto;
  z-index: 6;
  display: flex;
  flex-direction: column;
  align-items: stretch;
  gap: 8px;
  width: min(300px, calc(100% - 24px));
  max-height: min(72vh, 520px);
  pointer-events: none;
}

.agent-rmm-corner-panels > * {
  pointer-events: auto;
  flex-shrink: 0;
  min-height: 0;
}

.agent-rmm-view-notes-stack {
  width: 100%;
  max-height: min(44vh, 300px);
  display: flex;
  flex-direction: column;
  min-height: 0;
}

.agent-rmm-view-notes-stack .agent-rmm-view-notes:not(.hidden) {
  flex: 1 1 auto;
  min-height: 0;
}

.agent-rmm-view-notes {
  display: flex;
  flex-direction: column;
  width: 100%;
  max-height: min(44vh, 300px);
  border: 1px solid rgba(56, 189, 248, 0.5);
  border-radius: 12px;
  background: linear-gradient(165deg, rgba(224, 242, 254, 0.98), rgba(186, 230, 253, 0.95));
  color: #0c4a6e;
  box-shadow:
    0 14px 36px rgba(14, 116, 144, 0.22),
    inset 0 0 0 1px rgba(255, 255, 255, 0.65);
  overflow: hidden;
}

.agent-rmm-view-notes.is-collapsed .agent-rmm-view-notes-body {
  display: none;
}

.agent-rmm-view-notes-head {
  display: flex;
  align-items: center;
  gap: 8px;
  padding: 8px 10px;
  border-bottom: 1px solid rgba(56, 189, 248, 0.28);
  font-size: 11px;
  line-height: 1.2;
  flex-shrink: 0;
}

.agent-rmm-view-notes-head strong,
.agent-rmm-view-notes-title {
  flex: 1;
  min-width: 0;
  font-size: 11px;
  font-weight: 700;
  color: #0369a1;
}

.agent-rmm-view-notes-badge {
  flex-shrink: 0;
  padding: 2px 6px;
  border-radius: 999px;
  background: rgba(14, 165, 233, 0.2);
  color: #0369a1;
  font-size: 9px;
  font-weight: 700;
  letter-spacing: 0.04em;
  text-transform: uppercase;
}

.agent-rmm-view-notes-collapse {
  flex-shrink: 0;
  width: 22px;
  height: 22px;
  border: 1px solid rgba(56, 189, 248, 0.45);
  border-radius: 6px;
  background: rgba(255, 255, 255, 0.72);
  color: #0369a1;
  font-size: 14px;
  line-height: 1;
  cursor: pointer;
}

.agent-rmm-view-notes-collapse:hover {
  background: #fff;
}

.agent-rmm-view-notes-body {
  padding: 8px 10px 10px;
  overflow: auto;
  font-size: 11px;
  line-height: 1.48;
}

.agent-rmm-view-notes-body p {
  margin: 0 0 8px;
}

.agent-rmm-view-notes-body p:last-child {
  margin-bottom: 0;
}

.agent-rmm-scratch-notes {
  display: flex;
  flex-direction: column;
  width: 100%;
  max-height: min(44vh, 300px);
  border: 1px solid rgba(244, 63, 94, 0.45);
  border-radius: 12px;
  background: linear-gradient(165deg, rgba(255, 228, 230, 0.97), rgba(254, 205, 211, 0.94));
  color: #9f1239;
  box-shadow:
    0 14px 36px rgba(190, 18, 60, 0.28),
    inset 0 0 0 1px rgba(255, 255, 255, 0.55);
  overflow: hidden;
}

.agent-rmm-scratch-notes.is-collapsed .agent-rmm-scratch-notes-body {
  display: none;
}

.agent-rmm-scratch-notes-head {
  display: flex;
  align-items: center;
  gap: 8px;
  padding: 8px 10px;
  border-bottom: 1px solid rgba(244, 63, 94, 0.22);
  font-size: 11px;
  line-height: 1.2;
  flex-shrink: 0;
}

.agent-rmm-scratch-notes-head strong,
.agent-rmm-scratch-notes-title {
  flex: 1;
  min-width: 0;
  font-size: 11px;
  font-weight: 700;
  color: #be123c;
}

.agent-rmm-scratch-notes-badge {
  flex-shrink: 0;
  padding: 2px 6px;
  border-radius: 999px;
  background: rgba(244, 63, 94, 0.18);
  color: #be123c;
  font-size: 9px;
  font-weight: 700;
  letter-spacing: 0.04em;
  text-transform: uppercase;
}

.agent-rmm-scratch-notes-collapse {
  flex-shrink: 0;
  width: 22px;
  height: 22px;
  border: 1px solid rgba(244, 63, 94, 0.35);
  border-radius: 6px;
  background: rgba(255, 255, 255, 0.65);
  color: #be123c;
  font-size: 14px;
  line-height: 1;
  cursor: pointer;
}

.agent-rmm-scratch-notes-collapse:hover {
  background: #fff;
}

.agent-rmm-scratch-notes-body {
  padding: 8px 10px 10px;
  overflow: auto;
  font-size: 11px;
  line-height: 1.48;
}

.agent-rmm-scratch-notes-body p {
  margin: 0 0 8px;
}

.agent-rmm-scratch-notes-body p:last-child {
  margin-bottom: 0;
}

.agent-schema-pane {
  align-items: stretch;
  justify-content: flex-start;
  background:
    radial-gradient(ellipse 60% 45% at 10% 0%, rgba(99, 102, 241, 0.08), transparent 55%),
    linear-gradient(180deg, #f8fafc 0%, #fff 100%);
}

.agent-roadmap-map-prose {
  margin: 0;
  padding: 18px 20px 22px;
  border: 1px solid var(--border);
  border-radius: 14px;
  background: rgba(255, 255, 255, 0.88);
  box-shadow: 0 10px 28px rgba(15, 23, 42, 0.05);
  font-size: 14px;
  line-height: 1.65;
  color: #334155;
}

.agent-roadmap-map-prose p {
  margin: 0 0 14px;
}

.agent-roadmap-map-prose p:last-child {
  margin-bottom: 0;
}

.agent-rmm-toolbar {
  display: flex;
  flex-wrap: wrap;
  gap: 10px 14px;
  align-items: center;
  margin-bottom: 10px;
}

.agent-rmm-atlas-scroll {
  display: flex;
  flex-direction: column;
  gap: 12px;
  max-height: min(70vh, 640px);
  overflow: auto;
  padding: 4px 2px 12px;
}

.agent-rmm-atlas-head {
  padding: 0 4px;
}

.agent-rmm-atlas-title {
  margin: 0;
  font-size: 14px;
  font-weight: 700;
  color: #0f172a;
}

.agent-rmm-atlas-title code {
  font-size: 12px;
}

.agent-rmm-atlas-meta {
  margin: 4px 0 0;
  font-size: 11px;
  color: #64748b;
}

.agent-rmm-atlas-empty {
  margin: 0;
  padding: 12px;
  font-size: 12px;
  line-height: 1.45;
  color: #64748b;
  border: 1px dashed #cbd5e1;
  border-radius: 10px;
  background: #f8fafc;
}

.agent-rmm-atlas-list {
  display: flex;
  flex-direction: column;
  gap: 6px;
}

.agent-rmm-atlas-row {
  display: flex;
  align-items: flex-start;
  gap: 10px;
  width: 100%;
  padding: 10px 12px;
  border: 1px solid #e2e8f0;
  border-radius: 10px;
  background: #fff;
  text-align: left;
  cursor: pointer;
  transition: border-color 0.12s ease, box-shadow 0.12s ease;
}

.agent-rmm-atlas-row:hover {
  border-color: #94a3b8;
  box-shadow: 0 2px 8px rgba(15, 23, 42, 0.06);
}

.agent-rmm-atlas-row-icon {
  flex: 0 0 auto;
  font-size: 18px;
  line-height: 1;
}

.agent-rmm-atlas-row-copy {
  flex: 1 1 auto;
  min-width: 0;
}

.agent-rmm-atlas-row-title {
  display: block;
  font-size: 13px;
  font-weight: 700;
  color: #0f172a;
  line-height: 1.25;
}

.agent-rmm-atlas-row-meta {
  display: block;
  margin-top: 3px;
  font-size: 10px;
  color: #64748b;
  line-height: 1.35;
  word-break: break-all;
}

.agent-rmm-atlas-preview-wrap {
  gap: 12px;
}

.agent-rmm-atlas-preview-toolbar {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 10px 14px;
  padding: 4px 2px 8px;
  border-bottom: 1px solid #e2e8f0;
}

.agent-rmm-atlas-preview-back,
.agent-rmm-atlas-preview-open-editor {
  flex: 0 0 auto;
  padding: 5px 10px;
  font-size: 11px;
  border-radius: 8px;
  border: 1px solid #cbd5e1;
  background: #fff;
  color: #334155;
  cursor: pointer;
}

.agent-rmm-atlas-preview-back:hover,
.agent-rmm-atlas-preview-open-editor:hover {
  border-color: #94a3b8;
  background: #f8fafc;
}

.agent-rmm-atlas-preview-heading {
  flex: 1 1 200px;
  min-width: 0;
  display: flex;
  flex-direction: column;
  gap: 2px;
}

.agent-rmm-atlas-preview-title {
  font-size: 14px;
  font-weight: 700;
  color: #0f172a;
  line-height: 1.25;
}

.agent-rmm-atlas-preview-meta {
  font-size: 10px;
  color: #64748b;
  line-height: 1.35;
  word-break: break-all;
}

.agent-rmm-atlas-preview {
  flex: 1 1 auto;
  min-height: 0;
  padding: 8px 4px 16px;
}

.agent-rmm-atlas-preview-body {
  max-width: none;
}

.agent-rmm-atlas-kinds-scroll {
  gap: 16px;
}

.agent-rmm-atlas-kinds-section {
  margin: 0;
}

.agent-rmm-atlas-kinds-section-title {
  margin: 0 0 8px;
  padding: 0 4px;
  font-size: 13px;
  font-weight: 800;
  color: #0f172a;
  letter-spacing: 0.02em;
}

.agent-rmm-atlas-kinds-grid {
  display: grid;
  grid-template-columns: repeat(auto-fill, minmax(200px, 1fr));
  gap: 8px;
}

.agent-rmm-atlas-kind-card {
  padding: 10px 12px;
  border: 1px solid #e2e8f0;
  border-radius: 10px;
  background: linear-gradient(180deg, #fff 0%, #f8fafc 100%);
}

.agent-rmm-atlas-kind-card-head {
  display: flex;
  align-items: center;
  gap: 8px;
  margin-bottom: 6px;
}

.agent-rmm-atlas-kind-icon {
  font-size: 18px;
  line-height: 1;
}

.agent-rmm-atlas-kind-id code {
  font-size: 10px;
  font-weight: 700;
  color: #6366f1;
}

.agent-rmm-atlas-kind-label {
  margin: 0 0 4px;
  font-size: 12px;
  font-weight: 700;
  color: #1e293b;
  line-height: 1.25;
}

.agent-rmm-atlas-kind-desc {
  margin: 0 0 6px;
  font-size: 10px;
  line-height: 1.35;
  color: #64748b;
}

.agent-rmm-atlas-kind-meta {
  margin: 0;
  font-size: 9px;
  color: #94a3b8;
  line-height: 1.3;
}

.agent-rmm-atlas-kind-meta code {
  font-size: 9px;
}

.agent-rmm-mode-tabs {
  display: flex;
  flex-wrap: wrap;
  gap: 6px;
}

.agent-rmm-mode {
  border: 1px solid var(--border);
  background: #fff;
  color: #334155;
  border-radius: 999px;
  padding: 6px 12px;
  font-size: 12px;
  cursor: pointer;
}

.agent-rmm-mode.is-active {
  border-color: #6366f1;
  background: #eef2ff;
  color: #312e81;
}

.agent-rmm-depth-label {
  font-size: 12px;
  color: #64748b;
  display: flex;
  align-items: center;
  gap: 6px;
}

.agent-rmm-depth-label select {
  font-size: 12px;
  padding: 4px 8px;
  border-radius: 8px;
  border: 1px solid var(--border);
}

.agent-rmm-lead {
  margin: 0 0 10px;
  font-size: 12px;
  color: #64748b;
}

.agent-rmm-detail {
  margin-bottom: 10px;
  padding: 10px 12px;
  border-radius: 10px;
  border: 1px solid #c7d2fe;
  background: #eef2ff;
  font-size: 13px;
  line-height: 1.45;
}

.agent-rmm-detail strong {
  display: block;
  margin-bottom: 4px;
}

.agent-rmm-host {
  min-height: 420px;
  height: min(56vh, 620px);
  border: 1px solid var(--border);
  border-radius: 14px;
  overflow: hidden;
  background: #0f172a;
  position: relative;
  margin-bottom: 14px;
}

.agent-roadmap-map-content .agent-roadmap-map-prose {
  margin-top: 0;
}

.agent-rmm-host .external-graph-wrap,
.agent-rmm-host .node-graph-wrap {
  height: 100%;
  min-height: 400px;
}

.agent-rmm-host .node-navigation-elements-nav-mindmap-shell,
.agent-rmm-host .node-navigation-elements-nav-mindmap-host,
.agent-rmm-host .node-mindmap-wrap {
  height: 100%;
  min-height: 400px;
}

.agent-rmm-roadmap-scroll {
  display: flex;
  gap: 12px;
  padding: 16px;
  overflow: auto;
  height: 100%;
  align-items: flex-start;
  background: linear-gradient(180deg, #f8fafc, #fff);
}

.agent-rmm-roadmap-topic {
  flex: 0 0 220px;
  display: flex;
  flex-direction: column;
  gap: 8px;
}

.agent-rmm-roadmap-topic-title {
  font-size: 11px;
  font-weight: 700;
  text-transform: uppercase;
  letter-spacing: 0.06em;
  color: #64748b;
}

.agent-rmm-roadmap-stage {
  text-align: left;
  border-radius: 10px;
  border: 1px solid #cbd5e1;
  background: #fff;
  padding: 10px;
  cursor: pointer;
}

.agent-rmm-roadmap-stage.is-done { border-color: #22c55e; background: #f0fdf4; }
.agent-rmm-roadmap-stage.is-progress { border-color: #f59e0b; background: #fffbeb; }
.agent-rmm-roadmap-stage.is-todo { border-color: #94a3b8; }

.agent-rmm-roadmap-stage-title {
  display: block;
  font-size: 13px;
  font-weight: 600;
  color: #0f172a;
}

.agent-rmm-roadmap-stage-desc {
  display: block;
  margin-top: 4px;
  font-size: 11px;
  color: #64748b;
  line-height: 1.4;
}

.agent-rmm-zoom.hidden {
  display: none;
}

.agent-table-pane {
  align-items: stretch;
  justify-content: flex-start;
  background: linear-gradient(180deg, #f8fafc 0%, #fff 100%);
}

.agent-map3-pane,
.agent-git-pane,
.agent-large-files-pane,
.agent-short-links-pane,
.agent-broken-links-pane,
.agent-run-scripts-pane,
.agent-todo-list-pane,
.agent-mcp-methods-pane,
.agent-runtime-registry-pane,
.agent-tool-pane,
.agent-awn-types-pane,
.agent-timeline-pane {
  align-items: stretch;
  justify-content: flex-start;
  background:
    radial-gradient(ellipse 45% 35% at 88% 0%, rgba(14, 165, 233, 0.1), transparent 55%),
    linear-gradient(180deg, #f0f9ff 0%, #f8fafc 48%, #eef2ff 100%);
}

.agent-table-head,
.agent-timeline-head,
.agent-storage-head,
.agent-git-head,
.agent-large-files-head,
.agent-broken-links-head,
.agent-runtime-registry-head {
  /* layout inherited from .agent-canvas-head */
}

.agent-table-stats,
.agent-timeline-stats {
  display: flex;
  flex-wrap: wrap;
  gap: 8px 14px;
  align-items: center;
}

.agent-table-stat,
.agent-timeline-stat {
  font-size: 13px;
  color: #64748b;
  padding: 6px 10px;
  border-radius: 8px;
  background: rgba(255, 255, 255, 0.7);
  border: 1px solid rgba(148, 163, 184, 0.25);
}

.agent-table-stat strong,
.agent-timeline-stat strong {
  color: #0f172a;
}

.agent-table-toolbar {
  width: 100%;
  margin: 0 0 12px;
  padding: 0 4px;
  box-sizing: border-box;
}

.agent-table-search {
  width: 100%;
  max-width: 420px;
  padding: 10px 14px;
  border-radius: 10px;
  border: 1px solid rgba(148, 163, 184, 0.45);
  font-size: 14px;
  background: #fff;
}

.agent-timeline-content {
  width: 100%;
  margin: 0;
  padding: 0 8px 48px;
  box-sizing: border-box;
}

.agent-activity-board {
  display: flex;
  flex-direction: column;
  gap: 4px;
  padding-bottom: 16px;
}

.agent-timeline-pane .agent-activity-board {
  gap: 1.25rem;
}

.agent-timeline-era {
  display: flex;
  flex-direction: column;
  gap: 0.35rem;
}

.agent-timeline-era-list {
  --tl-axis: 14px;
  --tl-gutter: 2.25rem;
  position: relative;
  display: flex;
  flex-direction: column;
  gap: 0.5rem;
  padding: 0.15rem 0 0.25rem var(--tl-gutter);
}

.agent-timeline-era-list::before {
  content: "";
  position: absolute;
  left: calc(var(--tl-axis) - 1px);
  top: 0.35rem;
  bottom: 0.35rem;
  width: 2px;
  border-radius: 2px;
  background: linear-gradient(180deg, #0ea5e9 0%, #6366f1 55%, #a78bfa 100%);
  opacity: 0.8;
}

.agent-timeline-pane .agent-timeline-feed-row {
  position: relative;
  display: grid;
  grid-template-columns: 6.25rem minmax(0, 1fr);
  gap: 0.65rem 1rem;
  align-items: start;
  border: 1px solid rgba(148, 163, 184, 0.28);
  transition:
    border-color 0.15s ease,
    box-shadow 0.15s ease,
    transform 0.15s ease;
}

.agent-timeline-pane .agent-timeline-feed-row::after {
  --tl-dot-r: 5px;
  content: "";
  position: absolute;
  left: calc(var(--tl-axis) - var(--tl-gutter) - var(--tl-dot-r));
  top: 50%;
  width: calc(var(--tl-dot-r) * 2);
  height: calc(var(--tl-dot-r) * 2);
  border-radius: 50%;
  background: #6366f1;
  border: 2px solid #fff;
  box-shadow: 0 0 0 2px rgba(99, 102, 241, 0.28);
  transform: translateY(-50%);
  box-sizing: border-box;
}

.agent-timeline-pane .agent-timeline-feed-row.is-latest::after {
  --tl-dot-r: 6px;
  background: #4f46e5;
  box-shadow: 0 0 0 4px rgba(99, 102, 241, 0.22);
}

.agent-timeline-pane .agent-timeline-feed-row:hover,
.agent-timeline-pane .agent-timeline-feed-row:focus-visible {
  border-color: rgba(99, 102, 241, 0.4);
  box-shadow: 0 4px 16px rgba(99, 102, 241, 0.12);
  transform: translateY(-1px);
}

.agent-timeline-feed-when {
  display: flex;
  flex-direction: column;
  gap: 0.2rem;
  padding-top: 0.2rem;
  min-width: 0;
}

.agent-timeline-feed-when-main {
  font-size: 12px;
  font-weight: 700;
  color: #475569;
  white-space: nowrap;
}

.agent-timeline-feed-when-sub {
  font-size: 10px;
  color: #94a3b8;
  line-height: 1.3;
}

.agent-timeline-feed-main {
  min-width: 0;
}

.agent-timeline-feed-lead {
  display: grid;
  grid-template-columns: 40px minmax(0, 1fr);
  gap: 12px;
  align-items: start;
}

.agent-activity-list {
  display: flex;
  flex-direction: column;
  gap: 2px;
}

.agent-activity-day {
  position: sticky;
  top: 0;
  z-index: 2;
  margin: 16px 0 8px;
  padding: 6px 0;
  font-size: 12px;
  font-weight: 800;
  letter-spacing: 0.06em;
  text-transform: uppercase;
  color: #64748b;
  border-bottom: 1px solid rgba(148, 163, 184, 0.28);
  background: rgba(248, 250, 252, 0.95);
  backdrop-filter: blur(6px);
}

.agent-activity-day:first-child {
  margin-top: 0;
}

.agent-activity-row {
  display: grid;
  grid-template-columns: 44px minmax(0, 1fr) auto;
  gap: 12px 16px;
  align-items: center;
  width: 100%;
  margin: 0;
  padding: 12px 14px;
  border: 1px solid transparent;
  border-radius: 12px;
  background: #fff;
  text-align: left;
  cursor: pointer;
  transition:
    background 0.15s ease,
    border-color 0.15s ease,
    box-shadow 0.15s ease;
}

.agent-activity-row:hover,
.agent-activity-row:focus-visible {
  border-color: rgba(148, 163, 184, 0.35);
  background: #f8fafc;
  box-shadow: 0 2px 10px rgba(15, 23, 42, 0.05);
  outline: none;
}

.agent-activity-row.is-latest {
  border-color: rgba(99, 102, 241, 0.4);
  background: linear-gradient(90deg, rgba(99, 102, 241, 0.07) 0%, #fff 28%);
  box-shadow: 0 4px 16px rgba(99, 102, 241, 0.1);
}

.agent-activity-icon {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 40px;
  height: 40px;
  border-radius: 10px;
  font-size: 11px;
  font-weight: 800;
  letter-spacing: 0.02em;
  text-transform: uppercase;
  color: #475569;
  background: #e2e8f0;
  flex-shrink: 0;
}

.agent-activity-thumb {
  width: 40px;
  height: 40px;
  border-radius: 10px;
  object-fit: cover;
  border: 1px solid rgba(148, 163, 184, 0.35);
  background: #f1f5f9;
  flex-shrink: 0;
}

.agent-activity-icon.is-manifest {
  background: rgba(99, 102, 241, 0.16);
  color: #4338ca;
}

.agent-activity-icon.is-internal {
  background: rgba(14, 165, 233, 0.16);
  color: #0369a1;
}

.agent-activity-icon.is-external,
.agent-activity-icon.is-tabular,
.agent-activity-icon.is-configs,
.agent-activity-icon.is-scripts {
  background: rgba(14, 165, 233, 0.16);
  color: #0369a1;
}

.agent-activity-icon.is-node-preview,
.agent-activity-icon.is-media {
  background: rgba(139, 92, 246, 0.16);
  color: #6d28d9;
}

.agent-activity-icon.is-inbox,
.agent-activity-icon.is-artefacts,
.agent-activity-icon.is-quick-notes,
.agent-activity-icon.is-references {
  background: rgba(245, 158, 11, 0.16);
  color: #b45309;
}

.agent-activity-icon.is-todo,
.agent-activity-icon.is-env {
  background: rgba(100, 116, 139, 0.16);
  color: #475569;
}

.agent-activity-body {
  display: flex;
  flex-direction: column;
  gap: 3px;
  min-width: 0;
}

.agent-activity-top {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 8px;
}

.agent-activity-topic {
  font-size: 14px;
  font-weight: 700;
  color: #0f172a;
  line-height: 1.35;
}

.agent-activity-kind {
  font-size: 10px;
  font-weight: 800;
  letter-spacing: 0.05em;
  text-transform: uppercase;
  padding: 2px 7px;
  border-radius: 999px;
  background: #e2e8f0;
  color: #64748b;
}

.agent-activity-kind.is-manifest {
  background: rgba(99, 102, 241, 0.14);
  color: #4338ca;
}

.agent-activity-kind.is-internal {
  background: rgba(14, 165, 233, 0.14);
  color: #0369a1;
}

.agent-activity-kind.is-external,
.agent-activity-kind.is-tabular,
.agent-activity-kind.is-configs,
.agent-activity-kind.is-scripts {
  background: rgba(14, 165, 233, 0.14);
  color: #0369a1;
}

.agent-activity-kind.is-node-preview,
.agent-activity-kind.is-media {
  background: rgba(139, 92, 246, 0.14);
  color: #6d28d9;
}

.agent-activity-kind.is-inbox,
.agent-activity-kind.is-artefacts,
.agent-activity-kind.is-quick-notes,
.agent-activity-kind.is-references {
  background: rgba(245, 158, 11, 0.14);
  color: #b45309;
}

.agent-activity-kind.is-todo,
.agent-activity-kind.is-env {
  background: rgba(100, 116, 139, 0.14);
  color: #475569;
}

.agent-activity-file {
  font-size: 12px;
  color: #64748b;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
}

.agent-activity-meta {
  display: flex;
  flex-direction: column;
  align-items: flex-end;
  gap: 6px;
  flex-shrink: 0;
}

.agent-activity-time {
  font-size: 12px;
  font-weight: 600;
  color: #6366f1;
  font-variant-numeric: tabular-nums;
  white-space: nowrap;
}

.agent-activity-latest {
  font-size: 10px;
  font-weight: 800;
  letter-spacing: 0.05em;
  text-transform: uppercase;
  padding: 2px 7px;
  border-radius: 999px;
  background: rgba(99, 102, 241, 0.14);
  color: #4338ca;
}

@media (max-width: 720px) {
  .agent-activity-row {
    grid-template-columns: 36px minmax(0, 1fr);
    grid-template-rows: auto auto;
  }

  .agent-timeline-pane .agent-timeline-feed-row {
    grid-template-columns: minmax(0, 1fr);
  }

  .agent-timeline-feed-when {
    flex-direction: row;
    flex-wrap: wrap;
    align-items: baseline;
    gap: 0.35rem 0.5rem;
    padding-top: 0;
  }

  .agent-activity-meta {
    grid-column: 2;
    flex-direction: row;
    align-items: center;
    justify-content: flex-start;
  }
}

.agent-table-content {
  width: 100%;
  margin: 0;
  padding: 0 4px 48px;
  box-sizing: border-box;
}

.agent-table-wrap {
  overflow-x: auto;
  border-radius: 12px;
  border: 1px solid rgba(148, 163, 184, 0.3);
  background: #fff;
  box-shadow: 0 1px 3px rgba(15, 23, 42, 0.06);
}

.agent-table {
  width: 100%;
  border-collapse: collapse;
  font-size: 13px;
}

.agent-table th,
.agent-table td {
  padding: 10px 12px;
  text-align: left;
  border-bottom: 1px solid rgba(226, 232, 240, 0.9);
  vertical-align: middle;
}

.agent-table th {
  position: sticky;
  top: 0;
  z-index: 1;
  background: #f8fafc;
  font-weight: 600;
  color: #475569;
  white-space: nowrap;
}

.agent-table-sort {
  appearance: none;
  border: none;
  background: transparent;
  font: inherit;
  font-weight: 600;
  color: inherit;
  cursor: pointer;
  padding: 0;
}

.agent-table-sort:hover {
  color: #4f46e5;
}

.agent-table-row {
  cursor: pointer;
  transition: background 0.12s ease;
}

.agent-table-row:hover,
.agent-table-row:focus-visible {
  background: rgba(99, 102, 241, 0.06);
  outline: none;
}

.agent-table-cell--mono code {
  font-size: 11px;
  color: #334155;
  word-break: break-all;
}

.agent-table-cell--mono code.is-missing {
  color: #b45309;
}

.agent-table-title-inner {
  display: flex;
  align-items: center;
  gap: 10px;
  min-width: 140px;
}

.agent-table-thumb {
  width: 36px;
  height: 36px;
  border-radius: 8px;
  object-fit: cover;
  flex-shrink: 0;
  background: #f1f5f9;
}

.agent-table-thumb--empty {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  font-size: 16px;
  color: #94a3b8;
}

.agent-table-label {
  font-weight: 600;
  color: #0f172a;
}

.agent-table-kind {
  display: inline-block;
  padding: 2px 8px;
  border-radius: 999px;
  font-size: 11px;
  background: #e2e8f0;
  color: #475569;
}

.agent-table-kind.is-area {
  background: rgba(99, 102, 241, 0.12);
  color: #4338ca;
}

.agent-table-cell--num {
  text-align: center;
  font-variant-numeric: tabular-nums;
}

.agent-table-cell--tags {
  display: flex;
  flex-wrap: wrap;
  gap: 4px;
  max-width: 180px;
}

.agent-table-tag {
  font-size: 11px;
  padding: 2px 6px;
  border-radius: 6px;
  background: #f1f5f9;
  color: #475569;
}

.agent-table-cell--date {
  white-space: nowrap;
  color: #64748b;
  font-size: 12px;
}

.agent-timeline-list {
  display: flex;
  flex-direction: column;
  gap: 24px;
}

.agent-timeline-day-title {
  margin: 0 0 10px;
  font-size: 14px;
  font-weight: 700;
  color: #475569;
  letter-spacing: 0.02em;
}

.agent-timeline-day-events {
  display: flex;
  flex-direction: column;
  gap: 8px;
}

.agent-timeline-item {
  display: grid;
  grid-template-columns: 148px 1fr;
  gap: 14px;
  align-items: start;
  width: 100%;
  text-align: left;
  padding: 12px 14px;
  border-radius: 12px;
  border: 1px solid rgba(148, 163, 184, 0.28);
  background: #fff;
  cursor: pointer;
  transition:
    border-color 0.12s ease,
    box-shadow 0.12s ease;
}

.agent-timeline-item:hover,
.agent-timeline-item:focus-visible {
  border-color: rgba(99, 102, 241, 0.45);
  box-shadow: 0 2px 8px rgba(99, 102, 241, 0.1);
  outline: none;
}

.agent-timeline-time {
  font-size: 12px;
  color: #64748b;
  white-space: nowrap;
}

.agent-timeline-top {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 8px;
  margin-bottom: 4px;
}

.agent-timeline-file-kind {
  font-size: 11px;
  font-weight: 600;
  padding: 2px 8px;
  border-radius: 999px;
  background: #e2e8f0;
  color: #475569;
}

.agent-timeline-file-kind.is-manifest {
  background: rgba(99, 102, 241, 0.12);
  color: #4338ca;
}

.agent-timeline-file-kind.is-preview,
.agent-timeline-file-kind.is-media {
  background: rgba(14, 165, 233, 0.12);
  color: #0369a1;
}

.agent-timeline-file-label {
  font-size: 13px;
  font-weight: 600;
  color: #0f172a;
}

.agent-timeline-node {
  display: block;
  font-size: 14px;
  color: #334155;
  margin-bottom: 4px;
}

.agent-timeline-path {
  display: block;
  font-size: 11px;
  color: #64748b;
  word-break: break-all;
}

@media (max-width: 720px) {
  .agent-timeline-item {
    grid-template-columns: 1fr;
    gap: 6px;
  }
}

.agent-timeline-axis-pane {
  align-items: stretch;
  justify-content: flex-start;
  background: linear-gradient(180deg, #f0f9ff 0%, #fff 48%);
}

.agent-timeline-axis-head {
  display: flex;
  flex-wrap: wrap;
  align-items: flex-start;
  justify-content: space-between;
  gap: 12px 20px;
}

.agent-timeline-axis-stats {
  display: flex;
  flex-wrap: wrap;
  gap: 8px 14px;
  align-items: center;
}

.agent-timeline-axis-stat {
  font-size: 13px;
  color: #64748b;
  padding: 6px 10px;
  border-radius: 8px;
  background: rgba(255, 255, 255, 0.75);
  border: 1px solid rgba(148, 163, 184, 0.25);
}

.agent-timeline-axis-stat strong {
  color: #0f172a;
}

.agent-timeline-axis-content {
  width: min(1200px, 100%);
  margin: 0 auto;
  padding: 0 22px 28px;
  flex: 1;
  min-height: 0;
}

.agent-timeline-axis-board {
  display: flex;
  flex-direction: column;
  gap: 12px;
}

.agent-timeline-axis-ruler {
  position: relative;
  height: 44px;
  min-width: 960px;
  border-bottom: 1px solid rgba(148, 163, 184, 0.35);
}

.agent-timeline-axis-tick {
  position: absolute;
  bottom: 0;
  transform: translateX(-50%);
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 4px;
}

.agent-timeline-axis-tick::before {
  content: "";
  width: 1px;
  height: 10px;
  background: #94a3b8;
}

.agent-timeline-axis-tick-label {
  font-size: 11px;
  color: #64748b;
  white-space: nowrap;
}

.agent-timeline-axis-track-wrap {
  position: relative;
  min-width: 960px;
  padding: 8px 0 16px;
  overflow-x: auto;
}

.agent-timeline-axis-spine {
  position: absolute;
  left: 0;
  right: 0;
  top: 28px;
  height: 3px;
  border-radius: 999px;
  background: linear-gradient(90deg, #cbd5e1 0%, #6366f1 55%, #0ea5e9 100%);
}

.agent-timeline-axis-markers {
  position: relative;
  min-width: 960px;
}

.agent-timeline-axis-marker {
  position: absolute;
  transform: translateX(-50%);
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 6px;
  padding: 0;
  border: none;
  background: transparent;
  cursor: pointer;
  max-width: 200px;
  text-align: center;
}

.agent-timeline-axis-marker:hover .agent-timeline-axis-card,
.agent-timeline-axis-marker:focus-visible .agent-timeline-axis-card {
  border-color: rgba(99, 102, 241, 0.55);
  box-shadow: 0 4px 14px rgba(99, 102, 241, 0.15);
  outline: none;
}

.agent-timeline-axis-dot {
  width: 12px;
  height: 12px;
  border-radius: 999px;
  border: 2px solid #fff;
  background: #64748b;
  box-shadow: 0 1px 4px rgba(15, 23, 42, 0.2);
  flex-shrink: 0;
}

.agent-timeline-axis-dot.is-manifest {
  background: #6366f1;
}

.agent-timeline-axis-dot.is-content,
.agent-timeline-axis-dot.is-config {
  background: #0ea5e9;
}

.agent-timeline-axis-dot.is-preview,
.agent-timeline-axis-dot.is-media {
  background: #14b8a6;
}

.agent-timeline-axis-card {
  display: flex;
  flex-direction: column;
  gap: 2px;
  padding: 6px 8px;
  border-radius: 8px;
  border: 1px solid rgba(148, 163, 184, 0.35);
  background: #fff;
  transition:
    border-color 0.12s ease,
    box-shadow 0.12s ease;
}

.agent-timeline-axis-kind {
  font-size: 10px;
  font-weight: 700;
  text-transform: uppercase;
  letter-spacing: 0.04em;
  color: #64748b;
}

.agent-timeline-axis-kind.is-manifest {
  color: #4338ca;
}

.agent-timeline-axis-title {
  font-size: 12px;
  font-weight: 600;
  color: #0f172a;
  line-height: 1.25;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
  max-width: 180px;
}

.agent-timeline-axis-when {
  font-size: 10px;
  color: #64748b;
}

.agent-timeline-axis-hint {
  margin: 0;
  font-size: 12px;
  color: #64748b;
}

.agent-timeline-vertical-pane {
  align-items: stretch;
  justify-content: flex-start;
  background: linear-gradient(180deg, #f5f3ff 0%, #fff 42%);
}

.agent-timeline-vertical-head {
  display: flex;
  flex-wrap: wrap;
  align-items: flex-start;
  justify-content: space-between;
  gap: 12px 20px;
}

.agent-timeline-vertical-stats {
  display: flex;
  flex-wrap: wrap;
  gap: 8px 14px;
}

.agent-timeline-v-stat {
  font-size: 13px;
  color: #64748b;
  padding: 6px 10px;
  border-radius: 8px;
  background: rgba(255, 255, 255, 0.75);
  border: 1px solid rgba(148, 163, 184, 0.25);
}

.agent-timeline-v-stat strong {
  color: #0f172a;
}

.agent-timeline-vertical-content {
  width: min(720px, 100%);
  margin: 0 auto;
  padding: 0 22px 28px;
  flex: 1;
  min-height: 0;
  overflow: auto;
}

.agent-timeline-v-board {
  display: flex;
  flex-direction: column;
  gap: 12px;
}

.agent-timeline-v-track {
  position: relative;
  padding-left: 8px;
}

.agent-timeline-v-spine {
  position: absolute;
  left: 132px;
  top: 8px;
  bottom: 8px;
  width: 3px;
  border-radius: 999px;
  background: linear-gradient(180deg, #a5b4fc 0%, #6366f1 45%, #0ea5e9 100%);
  pointer-events: none;
}

.agent-timeline-v-list {
  position: relative;
  z-index: 1;
  display: flex;
  flex-direction: column;
  gap: 0;
}

.agent-timeline-v-day {
  margin: 18px 0 8px 0;
  padding-left: 0;
  font-size: 13px;
  font-weight: 700;
  color: #475569;
  letter-spacing: 0.02em;
}

.agent-timeline-v-day:first-child {
  margin-top: 0;
}

.agent-timeline-v-row {
  display: grid;
  grid-template-columns: 120px 28px 1fr;
  gap: 12px;
  align-items: start;
  padding: 10px 0;
}

.agent-timeline-v-time {
  font-size: 11px;
  font-weight: 600;
  color: #6366f1;
  font-variant-numeric: tabular-nums;
  text-align: right;
  padding-top: 10px;
  line-height: 1.35;
}

.agent-timeline-v-axis {
  display: flex;
  justify-content: center;
  padding-top: 8px;
}

.agent-timeline-v-dot {
  width: 14px;
  height: 14px;
  border-radius: 999px;
  border: 3px solid #fff;
  background: #64748b;
  box-shadow: 0 1px 4px rgba(15, 23, 42, 0.18);
  flex-shrink: 0;
}

.agent-timeline-v-dot.is-manifest {
  background: #6366f1;
}

.agent-timeline-v-dot.is-content,
.agent-timeline-v-dot.is-config {
  background: #0ea5e9;
}

.agent-timeline-v-dot.is-preview,
.agent-timeline-v-dot.is-media {
  background: #14b8a6;
}

.agent-timeline-v-card {
  display: flex;
  flex-direction: column;
  gap: 4px;
  width: 100%;
  padding: 10px 12px;
  text-align: left;
  border-radius: 12px;
  border: 1px solid rgba(148, 163, 184, 0.35);
  background: #fff;
  box-shadow: 0 1px 3px rgba(15, 23, 42, 0.06);
  cursor: pointer;
  transition:
    border-color 0.12s ease,
    box-shadow 0.12s ease;
}

.agent-timeline-v-card:hover,
.agent-timeline-v-card:focus-visible {
  border-color: rgba(99, 102, 241, 0.55);
  box-shadow: 0 4px 14px rgba(99, 102, 241, 0.12);
  outline: none;
}

.agent-timeline-v-kind {
  font-size: 10px;
  font-weight: 700;
  text-transform: uppercase;
  letter-spacing: 0.04em;
  color: #64748b;
}

.agent-timeline-v-kind.is-manifest {
  color: #4338ca;
}

.agent-timeline-v-file {
  font-size: 12px;
  color: #475569;
}

.agent-timeline-v-title {
  font-size: 14px;
  font-weight: 600;
  color: #0f172a;
  line-height: 1.35;
}

.agent-timeline-v-hint {
  margin: 0;
  font-size: 12px;
  color: #64748b;
}

@media (max-width: 640px) {
  .agent-timeline-v-spine {
    left: 20px;
  }

  .agent-timeline-v-row {
    grid-template-columns: 1fr;
    gap: 8px;
    padding-left: 28px;
  }

  .agent-timeline-v-time {
    text-align: left;
    padding-top: 0;
  }

  .agent-timeline-v-axis {
    position: absolute;
    left: 0;
    top: 4px;
    padding: 0;
  }
}

.agent-storage-pane {
  align-items: stretch;
  justify-content: flex-start;
  background:
    radial-gradient(ellipse 55% 40% at 90% 0%, rgba(14, 165, 233, 0.07), transparent 55%),
    linear-gradient(180deg, #f8fafc 0%, #fff 100%);
}

.agent-storage-head {
  /* layout inherited from .agent-canvas-head */
}

.agent-storage-head-copy {
  min-width: 0;
}

.agent-storage-stats {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
  flex-shrink: 0;
}

.agent-storage-stat {
  padding: 6px 10px;
  border: 1px solid var(--border);
  border-radius: 8px;
  background: var(--panel);
  font-size: 11px;
  font-weight: 600;
  color: #64748b;
}

.agent-storage-stat strong {
  color: #1e293b;
}

.agent-storage-content {
  width: 100%;
  margin: 0;
  padding: 0 4px 28px;
  flex: 1;
  min-height: 0;
  overflow: auto;
  display: flex;
  flex-direction: column;
  gap: 16px;
  box-sizing: border-box;
}

.agent-storage-container {
  border: 1px solid var(--border);
  border-radius: 12px;
  background: var(--panel);
  overflow: hidden;
}

.agent-storage-container-head {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  justify-content: space-between;
  gap: 8px 12px;
  padding: 10px 14px;
  border-bottom: 1px solid var(--border);
  background: #f8fafc;
}

.agent-storage-container-title {
  margin: 0;
  font-size: 13px;
  font-weight: 700;
  color: #1e293b;
}

.agent-storage-container-path {
  font-size: 11px;
  font-weight: 600;
  color: #64748b;
  font-family: ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, monospace;
}

.agent-storage-root-note {
  margin: 0;
  padding: 8px 14px;
  font-size: 11px;
  line-height: 1.4;
  color: #64748b;
  border-bottom: 1px solid var(--border);
  background: #fffbeb;
}

.agent-storage-root-note code {
  font-size: 10px;
}

.agent-storage-slot-list {
  display: flex;
  flex-direction: column;
}

.agent-storage-slot {
  padding: 12px 14px;
  border-bottom: 1px solid var(--border);
}

.agent-storage-slot:last-child {
  border-bottom: 0;
}

.agent-storage-slot-head {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 6px 10px;
  margin-bottom: 8px;
}

.agent-storage-slot-kind {
  font-size: 10px;
  font-weight: 700;
  letter-spacing: 0.04em;
  text-transform: uppercase;
  padding: 2px 6px;
  border-radius: 6px;
  background: #e2e8f0;
  color: #475569;
}

.agent-storage-slot-kind.is-area {
  background: #dbeafe;
  color: #1d4ed8;
}

.agent-storage-slot-title {
  margin: 0;
  font-size: 13px;
  font-weight: 700;
  color: #1e293b;
}

.agent-storage-slot-path {
  font-size: 11px;
  font-weight: 600;
  color: #64748b;
  font-family: ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, monospace;
  word-break: break-all;
}

.agent-storage-slot-open {
  margin-left: auto;
  border: 1px solid var(--border);
  border-radius: 8px;
  background: #fff;
  color: #475569;
  font-size: 11px;
  font-weight: 600;
  padding: 4px 10px;
  cursor: pointer;
}

.agent-storage-slot-open:hover {
  border-color: #93c5fd;
  color: #1d4ed8;
  background: #eff6ff;
}

.agent-storage-slot-missing {
  margin: 0 0 8px;
  font-size: 11px;
  color: #b45309;
}

.agent-storage-layers {
  display: flex;
  flex-wrap: wrap;
  gap: 6px;
}

.agent-storage-layer {
  display: inline-flex;
  align-items: center;
  gap: 4px;
  padding: 4px 8px;
  border-radius: 8px;
  border: 1px solid #e2e8f0;
  background: #f8fafc;
  font-size: 10px;
  font-weight: 600;
  color: #94a3b8;
}

.agent-storage-layer.is-present {
  border-color: #bbf7d0;
  background: #f0fdf4;
  color: #166534;
}

.agent-storage-layer-count {
  opacity: 0.85;
}

.agent-storage-orphans {
  padding: 10px 14px;
  font-size: 11px;
  color: #64748b;
  border-top: 1px dashed var(--border);
  background: #fafafa;
}

.agent-storage-orphans code {
  font-size: 10px;
}

.agent-vault-pane {
  --vault-bg: #0f1115;
  --vault-panel: #171a21;
  --vault-panel-2: #1f2430;
  --vault-text: #e8ecf1;
  --vault-muted: #a2acb9;
  --vault-accent: #6ea8fe;
  --vault-border: #2b3240;
  --vault-ok: #4fd18b;
  display: flex;
  flex-direction: column;
  align-items: stretch;
  justify-content: flex-start;
  background: linear-gradient(180deg, #0d1016 0%, #121722 100%);
  color: var(--vault-text);
}

.agent-vault-head {
  margin-bottom: 12px;
}

.agent-vault-pane .agent-canvas-eyebrow {
  color: var(--vault-accent);
}

.agent-vault-pane .agent-canvas-title {
  color: var(--vault-text);
}

.agent-vault-pane .agent-canvas-lead {
  color: var(--vault-muted);
}

.agent-vault-stats {
  flex-shrink: 0;
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
  justify-content: flex-end;
}

.agent-vault-pane .agent-workspace-stat,
.agent-vault-pane .agent-vault-stat {
  border: 1px solid var(--vault-border);
  background: var(--vault-panel);
  color: var(--vault-muted);
}

.agent-vault-pane .agent-workspace-stat strong,
.agent-vault-pane .agent-vault-stat strong {
  color: var(--vault-text);
}

.agent-vault-toolbar {
  display: grid;
  grid-template-columns: minmax(220px, 1fr) minmax(280px, auto);
  gap: 14px 18px;
  align-items: start;
  margin: 0 0 16px;
  padding: 0 4px;
  box-sizing: border-box;
}

.agent-vault-search-wrap {
  min-width: 0;
}

.agent-vault-search {
  width: 100%;
  background: var(--vault-panel);
  border: 1px solid var(--vault-border);
  border-radius: 10px;
  color: var(--vault-text);
  padding: 12px 14px;
  font-size: 14px;
  outline: none;
}

.agent-vault-search::placeholder {
  color: #7b8798;
}

.agent-vault-search:focus {
  border-color: rgba(110, 168, 254, 0.55);
  box-shadow: 0 0 0 3px rgba(110, 168, 254, 0.12);
}

.agent-vault-filters {
  display: grid;
  grid-template-columns: repeat(2, minmax(140px, 1fr));
  gap: 10px 12px;
  min-width: 0;
  align-self: end;
}

.agent-vault-select {
  width: 100%;
  min-width: 0;
  background: var(--vault-panel);
  border: 1px solid var(--vault-border);
  border-radius: 10px;
  color: var(--vault-muted);
  padding: 10px 12px;
  font-size: 13px;
  outline: none;
  cursor: not-allowed;
  opacity: 0.72;
}

.agent-vault-select:disabled {
  color: var(--vault-muted);
}

.agent-vault-grid {
  display: grid;
  grid-template-columns: repeat(auto-fill, minmax(230px, 1fr));
  gap: 12px;
  align-content: start;
  width: 100%;
  padding: 0 4px 48px;
  box-sizing: border-box;
}

.agent-vault-empty {
  margin: 8px 4px 0;
  color: var(--vault-muted);
  border: 1px dashed var(--vault-border);
  border-radius: 12px;
  padding: 16px;
  text-align: center;
}

.agent-vault-card {
  position: relative;
}

.agent-vault-kind {
  position: absolute;
  top: 10px;
  left: 10px;
  z-index: 2;
  padding: 3px 8px;
  border-radius: 999px;
  font-size: 10px;
  font-weight: 700;
  letter-spacing: 0.04em;
  text-transform: uppercase;
  border: 1px solid transparent;
  pointer-events: none;
}

.agent-vault-kind.is-folder {
  background: rgba(250, 204, 21, 0.18);
  color: #fde68a;
  border-color: rgba(250, 204, 21, 0.35);
}

.agent-vault-kind.is-file {
  background: rgba(156, 163, 175, 0.16);
  color: #d1d5db;
  border-color: rgba(156, 163, 175, 0.35);
}

.agent-vault-pane .menu-card--gallery {
  min-height: 196px;
  border-color: var(--vault-border);
  background: var(--vault-panel);
  box-shadow: none;
}

.agent-vault-pane .menu-card--gallery:hover,
.agent-vault-pane .menu-card--gallery:focus-within,
.agent-vault-pane .menu-card--gallery.active {
  border-color: #3b4b65;
  background: var(--vault-panel-2);
  transform: translateY(-2px);
}

.agent-vault-pane .menu-card--gallery .menu-card-foot {
  display: flex;
  flex-direction: column;
  gap: 6px;
  margin-top: auto;
  background: var(--vault-panel-2);
  border-top: 1px solid var(--vault-border);
}

.agent-vault-pane .menu-card--gallery .menu-card-title {
  color: var(--vault-text);
}

.agent-vault-pane .menu-card--gallery .menu-card-cover {
  background: #121722;
}

.agent-vault-card-foot-row {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 4px 6px;
  min-width: 0;
}

.agent-vault-card-meta {
  min-width: 0;
  flex: 1 1 auto;
  font-size: 10px;
  line-height: 1.35;
  color: var(--vault-muted);
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.agent-vault-card-category {
  display: inline-flex;
  flex: 0 0 auto;
  padding: 2px 7px;
  border-radius: 999px;
  font-size: 10px;
  font-weight: 600;
  line-height: 1.3;
  color: var(--vault-ok);
  background: rgba(79, 209, 139, 0.1);
  border: 1px solid rgba(79, 209, 139, 0.22);
}

.agent-vault-card-tags {
  display: flex;
  flex-wrap: wrap;
  gap: 4px;
  margin-top: 6px;
}

.agent-vault-card-tag {
  padding: 2px 7px;
  border-radius: 999px;
  background: rgba(110, 168, 254, 0.12);
  color: #9ec5fe;
  font-size: 10px;
  line-height: 1.3;
}

@media (max-width: 960px) {
  .agent-vault-toolbar {
    grid-template-columns: 1fr;
  }

  .agent-canvas-head {
    flex-direction: column;
    align-items: stretch;
  }

  .agent-canvas-head-aside,
  .agent-workspace-stats {
    justify-content: flex-start;
  }
}

.agent-canvas-head {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: 16px;
  width: 100%;
  max-width: none;
  margin: 0 0 12px;
  padding: 0 4px;
  flex-shrink: 0;
  box-sizing: border-box;
}

.agent-canvas-head--compact {
  margin-bottom: 12px;
}

.agent-canvas-head-copy {
  min-width: 0;
  flex: 1 1 auto;
}

.agent-canvas-head-aside {
  flex-shrink: 0;
  display: flex;
  flex-wrap: wrap;
  gap: 8px 10px;
  justify-content: flex-end;
  align-items: flex-start;
}

.agent-workspace-stats {
  flex-shrink: 0;
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
  justify-content: flex-end;
  align-items: center;
}

/* ── Unified workspace tool panes (Git, Реестр, Large files, Broken links) ── */

.agent-tool-pane {
  display: flex;
  flex-direction: column;
  align-items: stretch;
  /* scroll stays on .agent-canvas-pane — do not override overflow here */
}

.agent-tool-head {
  margin-bottom: 10px;
}

.agent-tool-toolbar {
  padding: 0 4px 10px;
}

.agent-tool-info {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: 16px;
  flex-wrap: wrap;
  margin: 0 4px 14px;
  padding: 14px 16px;
  border-radius: 12px;
  border: 1px solid color-mix(in srgb, var(--panel-border, #cbd5e1) 65%, transparent);
  background: color-mix(in srgb, var(--panel-border, #cbd5e1) 12%, var(--panel-bg, #fff));
}

.agent-tool-info-copy {
  flex: 1 1 280px;
  min-width: 0;
}

.agent-tool-info-title {
  margin: 0 0 6px;
  font-size: 1rem;
  font-weight: 650;
  color: var(--text, #0f172a);
}

.agent-tool-info-desc {
  margin: 0;
  font-size: 0.88rem;
  line-height: 1.45;
  color: var(--text-muted, #64748b);
}

.agent-tool-info.agent-git-info {
  flex-direction: column;
  align-items: stretch;
  gap: 12px;
}

.agent-git-info-header {
  display: flex;
  flex-wrap: wrap;
  align-items: flex-start;
  justify-content: space-between;
  gap: 10px 16px;
  width: 100%;
}

.agent-git-info-status {
  flex: 1 1 12rem;
  min-width: 0;
}

.agent-git-info-stats {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  justify-content: flex-end;
  gap: 8px;
  flex: 1 1 auto;
  margin-left: auto;
}

.agent-git-info-extensions {
  width: 100%;
  padding-top: 10px;
  border-top: 1px solid color-mix(in srgb, var(--panel-border, #cbd5e1) 55%, transparent);
}

.agent-git-info-extensions.hidden {
  display: none;
}

.agent-git-upstream-label {
  font-family: ui-monospace, SFMono-Regular, Menlo, monospace;
  font-size: 0.82rem;
  line-height: 1.45;
  color: #475569;
  white-space: nowrap;
}

.agent-git-upstream-label.hidden {
  display: none;
}

.agent-git-hint.agent-git-reference {
  margin: 0 4px 14px;
  padding: 14px 16px 16px;
  border-radius: 12px;
  border: 1px solid rgba(99, 102, 241, 0.22);
  border-left: 4px solid #6366f1;
  background: linear-gradient(135deg, rgba(238, 242, 255, 0.95) 0%, rgba(248, 250, 252, 0.98) 55%);
  box-shadow: 0 1px 0 rgba(15, 23, 42, 0.04);
}

.agent-git-reference-head {
  display: flex;
  align-items: center;
  gap: 10px;
  margin: 0 0 10px;
}

.agent-git-reference-icon {
  flex-shrink: 0;
  display: grid;
  place-items: center;
  width: 28px;
  height: 28px;
  border-radius: 8px;
  color: #4338ca;
  background: rgba(99, 102, 241, 0.14);
}

.agent-git-reference-icon svg {
  width: 18px;
  height: 18px;
}

.agent-git-reference-title {
  margin: 0;
  font-size: 0.88rem;
  font-weight: 650;
  line-height: 1.3;
  color: #312e81;
  letter-spacing: 0.01em;
}

.agent-git-reference-body p {
  margin: 0 0 8px;
  font-size: 12px;
  line-height: 1.55;
  color: #475569;
}

.agent-git-reference-body p:last-child {
  margin-bottom: 0;
}

.agent-tool-info-mcp {
  margin: 6px 0 0;
  font-size: 0.78rem;
  line-height: 1.35;
  color: var(--muted, #94a3b8);
  font-family: ui-monospace, SFMono-Regular, Menlo, monospace;
}

.agent-tool-body {
  width: 100%;
  margin: 0;
  padding: 0 4px 48px;
  box-sizing: border-box;
  overflow: visible;
  flex: 0 0 auto;
  min-height: 0;
}

.agent-tool-shell {
  display: flex;
  flex-direction: column;
  gap: 12px;
}

.agent-tool-loading,
.agent-tool-empty,
.agent-large-files-empty,
.agent-broken-links-empty,
.agent-git-empty,
.agent-runtime-registry-empty {
  margin: 0;
  padding: 8px 4px;
  font-size: 14px;
  line-height: 1.5;
  color: var(--muted, #64748b);
}

.agent-tool-empty.is-alert,
.agent-large-files-empty.is-alert,
.agent-broken-links-empty.is-alert,
.agent-git-empty.is-alert,
.agent-runtime-registry-empty.is-alert {
  color: #dc2626;
}

.agent-tool-empty-card,
.agent-runtime-registry-empty-card,
.agent-large-files-empty-state,
.agent-broken-links-empty-state,
.agent-git-empty-state {
  margin: 4px;
  padding: 20px 22px;
  border-radius: 12px;
  border: 1px dashed color-mix(in srgb, var(--panel-border, #cbd5e1) 80%, transparent);
  background: color-mix(in srgb, var(--panel-bg, #fff) 96%, transparent);
}

.agent-tool-empty-title,
.agent-runtime-registry-empty-title,
.agent-large-files-empty-title,
.agent-broken-links-empty-title,
.agent-git-empty-title {
  margin: 0 0 8px;
  font-size: 1rem;
  font-weight: 650;
  color: var(--text, #0f172a);
}

.agent-tool-empty-text,
.agent-runtime-registry-empty-text,
.agent-large-files-empty-text,
.agent-broken-links-empty-text,
.agent-git-empty-text {
  margin: 0;
  font-size: 0.9rem;
  line-height: 1.5;
  color: var(--text-muted, #64748b);
}

.agent-tool-list {
  list-style: none;
  margin: 0;
  padding: 0;
  display: flex;
  flex-direction: column;
  gap: 6px;
}

@media (max-width: 720px) {
  .agent-tool-info {
    flex-direction: column;
  }

  .agent-workspace-stats {
    justify-content: flex-start;
  }
}

.agent-workspace-stat,
.agent-map3-stat,
.agent-map2-stat,
.agent-table-stat,
.agent-timeline-stat,
.agent-timeline-axis-stat,
.agent-timeline-vertical-stat,
.agent-storage-stat,
.agent-vault-stat,
.agent-git-stat-chip,
.agent-large-files-stat-chip,
.agent-broken-links-stat-chip {
  display: inline-flex;
  align-items: center;
  gap: 4px;
  padding: 6px 10px;
  border-radius: 999px;
  border: 1px solid rgba(148, 163, 184, 0.35);
  background: rgba(255, 255, 255, 0.88);
  font-size: 11px;
  font-weight: 600;
  color: #475569;
  white-space: nowrap;
}

.agent-workspace-stat strong,
.agent-map3-stat strong,
.agent-map2-stat strong,
.agent-table-stat strong,
.agent-timeline-stat strong,
.agent-timeline-axis-stat strong,
.agent-timeline-vertical-stat strong,
.agent-storage-stat strong,
.agent-vault-stat strong,
.agent-git-stat-chip strong,
.agent-large-files-stat-chip strong,
.agent-broken-links-stat-chip strong {
  color: #0f172a;
  font-weight: 700;
}

.agent-workspace-stat--ok,
.agent-map3-stat--ok,
.agent-git-stat-chip.is-clean {
  color: #047857;
  border-color: rgba(52, 211, 153, 0.45);
  background: rgba(240, 253, 244, 0.95);
}

.agent-workspace-stat--soft,
.agent-map2-stat--soft {
  color: #7c3aed;
  border-color: rgba(167, 139, 250, 0.45);
  background: rgba(245, 243, 255, 0.9);
}

.agent-workspace-stat--warn,
.agent-git-stat-chip.is-dirty,
.agent-large-files-stat-chip.is-total,
.agent-broken-links-stat-chip.is-total {
  color: #c2410c;
  border-color: rgba(251, 146, 60, 0.45);
  background: rgba(255, 247, 237, 0.95);
}

.agent-workspace-stat--branch,
.agent-workspace-stat--upstream {
  color: #1d4ed8;
  border-color: rgba(96, 165, 250, 0.45);
  background: rgba(239, 246, 255, 0.95);
}

.agent-workspace-stat--branch strong,
.agent-workspace-stat--upstream strong {
  color: #1e3a8a;
}

.agent-git-toolbar-branch {
  display: inline-flex;
  align-items: center;
  gap: 6px;
  flex-shrink: 0;
}

.agent-git-toolbar-branch-label {
  font-size: 11px;
  font-weight: 700;
  color: #475569;
  white-space: nowrap;
  font-family: ui-monospace, SFMono-Regular, Menlo, monospace;
}

.agent-git-toolbar-branch-select {
  box-sizing: border-box;
  height: 28px;
  min-width: 5.5rem;
  max-width: 9rem;
  padding: 0 1.75rem 0 10px;
  border-radius: 999px;
  border: 1px solid rgba(148, 163, 184, 0.35);
  background: rgba(255, 255, 255, 0.88);
  color: #4338ca;
  font-size: 11px;
  font-weight: 700;
  font-family: inherit;
  line-height: 1;
  cursor: default;
  appearance: none;
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 24 24' fill='none'%3E%3Cpath d='M6 9l6 6 6-6' stroke='%234338ca' stroke-width='2.25' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E");
  background-repeat: no-repeat;
  background-position: right 8px center;
}

.agent-git-toolbar-branch-select:disabled {
  opacity: 0.55;
  color: #64748b;
  background-color: rgba(241, 245, 249, 0.95);
}

.agent-git-save-btn,
.agent-git-push-btn,
.agent-git-pull-btn,
.agent-git-lfs-btn {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 6px;
  line-height: 1;
}

.agent-git-action-btn-icon {
  display: inline-flex;
  flex: 0 0 14px;
  align-items: center;
  justify-content: center;
  width: 14px;
  height: 14px;
}

.agent-git-action-btn-icon svg {
  display: block;
  width: 14px;
  height: 14px;
}

.agent-git-action-btn-label {
  line-height: 1.1;
}

.agent-git-save-btn {
  padding: 6px 12px;
  border-radius: 999px;
  border: 1px solid rgba(79, 70, 229, 0.45);
  background: linear-gradient(180deg, rgba(99, 102, 241, 0.95), rgba(79, 70, 229, 0.95));
  color: #fff;
  font-size: 11px;
  font-weight: 700;
  cursor: pointer;
  white-space: nowrap;
  transition: opacity 0.15s ease, filter 0.15s ease;
}

.agent-git-save-btn:hover:not(:disabled) {
  filter: brightness(1.05);
}

.agent-git-save-btn:disabled {
  opacity: 0.45;
  cursor: not-allowed;
}

.agent-git-push-btn {
  padding: 6px 12px;
  border-radius: 999px;
  border: 1px solid rgba(22, 163, 74, 0.5);
  background: linear-gradient(180deg, rgba(34, 197, 94, 0.95), rgba(22, 163, 74, 0.95));
  color: #fff;
  font-size: 11px;
  font-weight: 700;
  cursor: pointer;
  white-space: nowrap;
  transition: opacity 0.15s ease, filter 0.15s ease;
}

.agent-git-push-btn:hover:not(:disabled) {
  filter: brightness(1.05);
}

.agent-git-push-btn:disabled {
  opacity: 0.45;
  cursor: not-allowed;
}

.agent-git-push-btn.is-busy {
  opacity: 0.82;
  cursor: wait;
}

.agent-git-pull-btn {
  padding: 6px 12px;
  border-radius: 999px;
  border: 1px solid rgba(37, 99, 235, 0.45);
  background: linear-gradient(180deg, rgba(59, 130, 246, 0.95), rgba(37, 99, 235, 0.95));
  color: #fff;
  font-size: 11px;
  font-weight: 700;
  cursor: pointer;
  white-space: nowrap;
  transition: opacity 0.15s ease, filter 0.15s ease;
}

.agent-git-pull-btn:hover:not(:disabled) {
  filter: brightness(1.05);
}

.agent-git-pull-btn:disabled {
  opacity: 0.45;
  cursor: not-allowed;
}

.agent-git-pull-btn.is-busy {
  opacity: 0.82;
  cursor: wait;
}

.agent-git-lfs-btn {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 4px;
  padding: 6px 10px;
  border-radius: 999px;
  border: 1px solid rgba(220, 38, 38, 0.55);
  background: linear-gradient(180deg, rgba(239, 68, 68, 0.96), rgba(220, 38, 38, 0.96));
  color: #fff;
  font-size: 11px;
  font-weight: 800;
  cursor: pointer;
  white-space: nowrap;
  transition: opacity 0.15s ease, filter 0.15s ease;
}

.agent-git-lfs-btn:hover {
  filter: brightness(1.06);
}

.agent-git-lfs-btn-mark {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 14px;
  height: 14px;
  border-radius: 50%;
  background: rgba(255, 255, 255, 0.22);
  font-size: 11px;
  line-height: 1;
  font-weight: 900;
}

.agent-git-lfs-modal-card {
  width: min(640px, calc(100vw - 32px));
  max-height: min(88vh, 820px);
  display: flex;
  flex-direction: column;
  padding: 18px 20px 16px;
}

.agent-git-lfs-modal-head {
  display: flex;
  align-items: flex-start;
  gap: 12px;
  margin-bottom: 12px;
}

.agent-git-lfs-modal-icon {
  flex-shrink: 0;
  display: grid;
  place-items: center;
  width: 32px;
  height: 32px;
  border-radius: 10px;
  background: #fee2e2;
  color: #b91c1c;
  font-size: 18px;
  font-weight: 900;
  line-height: 1;
}

.agent-git-lfs-modal-title {
  margin: 0;
  font-size: 1.05rem;
  font-weight: 800;
  color: #0f172a;
}

.agent-git-lfs-modal-subtitle {
  margin: 2px 0 0;
  font-size: 11px;
  color: #64748b;
}

.agent-git-lfs-modal-body {
  flex: 1 1 auto;
  min-height: 0;
  overflow: auto;
  margin: 0 0 14px;
  padding-right: 4px;
  font-size: 12px;
  line-height: 1.55;
  color: #334155;
}

.agent-git-lfs-modal-body h4 {
  margin: 14px 0 6px;
  font-size: 12px;
  font-weight: 700;
  color: #0f172a;
}

.agent-git-lfs-modal-body h4:first-child {
  margin-top: 0;
}

.agent-git-lfs-modal-body p {
  margin: 0 0 8px;
}

.agent-git-lfs-modal-body ul,
.agent-git-lfs-modal-body ol {
  margin: 0 0 8px;
  padding-left: 1.2rem;
}

.agent-git-lfs-modal-body li {
  margin: 0 0 4px;
}

.agent-git-lfs-modal-body code {
  font-size: 11px;
}

.agent-git-lfs-modal-actions {
  justify-content: flex-end;
}

.agent-git-commit-modal-card {
  width: min(520px, calc(100vw - 32px));
  max-height: min(90vh, 720px);
  display: flex;
  flex-direction: column;
  gap: 12px;
  padding: 18px 20px 16px;
  overflow: hidden;
  border-radius: 16px;
  box-shadow: 0 24px 48px rgba(15, 23, 42, 0.18);
}

.agent-git-commit-modal-head {
  display: flex;
  flex-direction: column;
  gap: 6px;
}

.agent-git-commit-modal-title {
  margin: 0;
  font-size: 16px;
  font-weight: 650;
}

.agent-git-commit-modal-lead {
  margin: 0;
  font-size: 12px;
  line-height: 1.45;
  color: var(--muted);
}

.agent-git-commit-result-modal-card {
  width: min(560px, calc(100vw - 32px));
  max-height: min(88vh, 640px);
  display: flex;
  flex-direction: column;
  gap: 10px;
  padding: 18px 20px 16px;
  overflow: hidden;
  border-radius: 16px;
  box-shadow: 0 24px 48px rgba(15, 23, 42, 0.18);
}

.agent-git-commit-result-modal-card.is-success {
  border-top: 3px solid #16a34a;
}

.agent-git-commit-result-modal-card.is-error {
  border-top: 3px solid #dc2626;
}

.agent-git-commit-result-head {
  display: flex;
  flex-direction: column;
  gap: 6px;
}

.agent-git-commit-result-title {
  margin: 0;
  font-size: 16px;
  font-weight: 650;
}

.agent-git-commit-result-summary {
  margin: 0;
  font-size: 13px;
  line-height: 1.45;
  color: var(--text);
}

.agent-git-commit-result-details {
  margin: 0;
  flex: 1;
  min-height: 120px;
  max-height: min(50vh, 360px);
  overflow: auto;
  padding: 10px 12px;
  font-size: 11px;
  line-height: 1.45;
  font-family: ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, monospace;
  white-space: pre-wrap;
  word-break: break-word;
  color: var(--text);
  background: color-mix(in srgb, var(--bg) 92%, #0f172a 8%);
  border: 1px solid var(--border);
  border-radius: 8px;
}

.agent-git-commit-result-details:empty {
  display: none;
}

.agent-git-commit-result-actions {
  justify-content: flex-end;
}

.agent-git-commit-batch-limit-note {
  margin: 0;
  padding: 8px 10px;
  font-size: 12px;
  line-height: 1.4;
  color: var(--text);
  background: color-mix(in srgb, var(--accent, #3b82f6) 6%, var(--panel, #fff));
  border: 1px solid color-mix(in srgb, var(--accent, #3b82f6) 18%, var(--border));
  border-radius: 8px;
  display: flex;
  flex-direction: column;
  gap: 6px;
}

.agent-git-commit-batch-limit-note.hidden {
  display: none;
}

.agent-git-commit-limit-line {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 8px;
}

.agent-git-commit-limit-text {
  color: var(--muted);
  font-size: 12px;
}

.agent-git-commit-limit-badge {
  display: inline-flex;
  align-items: center;
  padding: 2px 8px;
  border-radius: 999px;
  border: 1px solid rgba(220, 38, 38, 0.45);
  background: rgba(254, 226, 226, 0.95);
  color: #b91c1c;
  font-size: 11px;
  font-weight: 700;
  font-variant-numeric: tabular-nums;
  line-height: 1.35;
}

.agent-git-commit-limit-hint {
  margin: 0;
  font-size: 11px;
  line-height: 1.4;
  color: var(--muted);
}

.agent-git-commit-batch-list {
  display: flex;
  flex-direction: column;
  gap: 4px;
  max-height: 240px;
  overflow: auto;
  scrollbar-gutter: stable;
  padding: 2px 10px 2px 0;
}

.agent-git-commit-batch-option {
  display: flex;
  align-items: center;
  gap: 8px;
  padding: 7px 12px;
  border: 1px solid var(--border);
  border-radius: 8px;
  cursor: pointer;
  font-size: 13px;
  line-height: 1.3;
}

.agent-git-commit-batch-option:has(input:disabled) {
  opacity: 0.55;
  cursor: not-allowed;
}

.agent-git-commit-batch-option input {
  margin: 0;
  flex-shrink: 0;
  align-self: center;
}

.agent-git-commit-batch-option-body {
  display: grid;
  flex: 1;
  grid-template-columns: minmax(0, 1fr) auto;
  align-items: center;
  column-gap: 16px;
  min-width: 0;
}

.agent-git-commit-batch-option-title {
  font-weight: 600;
  min-width: 0;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
  line-height: 1.3;
}

.agent-git-commit-batch-option-meta {
  flex-shrink: 0;
  justify-self: end;
  padding-right: 2px;
  font-size: 12px;
  line-height: 1.3;
  font-variant-numeric: tabular-nums;
  color: var(--muted);
  text-align: right;
}

.agent-git-commit-batch-option:not(.is-empty) .agent-git-commit-batch-option-meta {
  color: var(--text);
  font-weight: 500;
}

.agent-git-commit-batch-option.is-over-limit {
  border-color: color-mix(in srgb, var(--danger, #dc2626) 55%, var(--border));
  background: color-mix(in srgb, var(--danger, #dc2626) 6%, transparent);
}

.agent-git-commit-batch-option.is-over-limit .agent-git-commit-batch-option-meta {
  color: var(--danger, #dc2626);
  font-weight: 600;
}

.agent-git-commit-modal-field {
  display: flex;
  flex-direction: column;
  gap: 6px;
}

.agent-git-commit-modal-field-label {
  font-size: 12px;
  font-weight: 600;
}

.agent-git-commit-message-note {
  width: 100%;
  min-height: 72px;
  resize: vertical;
  font: inherit;
  font-size: 13px;
  padding: 8px 10px;
  border-radius: 8px;
  border: 1px solid var(--border);
  background: var(--panel-elevated, var(--panel));
}

.agent-git-commit-preview-wrap {
  display: flex;
  flex-direction: column;
  gap: 6px;
}

.agent-git-commit-preview-label {
  font-size: 11px;
  font-weight: 600;
  color: var(--muted);
  text-transform: uppercase;
  letter-spacing: 0.04em;
}

.agent-git-commit-message-preview {
  margin: 0;
  padding: 10px 12px;
  border-radius: 8px;
  border: 1px dashed var(--border);
  background: rgba(148, 163, 184, 0.08);
  font-size: 12px;
  line-height: 1.45;
  white-space: pre-wrap;
  word-break: break-word;
  max-height: 120px;
  overflow: auto;
}

.agent-git-commit-modal-actions,
.agent-git-diff-modal-actions {
  display: flex;
  flex-shrink: 0;
  align-items: center;
  justify-content: flex-end;
  flex-wrap: wrap;
  gap: 10px;
  margin-top: 4px;
  padding-top: 14px;
  border-top: 1px solid rgba(148, 163, 184, 0.28);
}

.agent-git-commit-modal-actions .ghost-btn,
.agent-git-commit-modal-actions .save-btn,
.agent-git-diff-modal-actions .ghost-btn,
.agent-git-diff-modal-actions .save-btn {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-height: 36px;
  padding: 0 16px;
  font-size: 13px;
  font-weight: 600;
  font-family: inherit;
  line-height: 1.2;
  border-radius: 8px;
  white-space: nowrap;
  cursor: pointer;
  transition:
    background 0.15s ease,
    border-color 0.15s ease,
    color 0.15s ease;
}

.agent-git-commit-modal-actions .ghost-btn {
  border: 1px solid var(--border, #cbd5e1);
  background: #fff;
  color: var(--text, #0f172a);
}

.agent-git-commit-modal-actions .ghost-btn:hover:not(:disabled) {
  background: #f8fafc;
  border-color: #94a3b8;
}

.agent-git-commit-modal-actions .ghost-btn:focus-visible {
  outline: 2px solid rgba(59, 130, 246, 0.45);
  outline-offset: 2px;
}

.agent-git-commit-modal-actions .save-btn {
  min-width: 7.5rem;
}

.agent-git-commit-modal-actions .save-btn:disabled,
.agent-git-commit-modal-actions .ghost-btn:disabled,
.agent-git-diff-modal-actions .save-btn:disabled,
.agent-git-diff-modal-actions .ghost-btn:disabled {
  opacity: 0.55;
  cursor: not-allowed;
}

.agent-git-diff-modal-card {
  width: min(920px, calc(100vw - 32px));
  max-height: min(90vh, 820px);
  display: flex;
  flex-direction: column;
  gap: 12px;
  padding: 18px 20px 16px;
  overflow: hidden;
  border-radius: 16px;
  box-shadow: 0 24px 48px rgba(15, 23, 42, 0.18);
}

.agent-git-diff-modal-head {
  display: flex;
  flex-direction: column;
  gap: 4px;
  min-width: 0;
}

.agent-git-diff-modal-title {
  margin: 0;
  font-size: 16px;
  font-weight: 650;
}

.agent-git-diff-modal-path {
  margin: 0;
  font-size: 12px;
  color: var(--muted);
  word-break: break-all;
}

.agent-git-diff-modal-body {
  margin: 0;
  flex: 1 1 auto;
  min-height: 120px;
  max-height: min(60vh, 520px);
  overflow: auto;
  padding: 0;
  border-radius: 8px;
  border: 1px solid #30363d;
  background: #0d1117;
  color: #e6edf3;
  font-family: ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, monospace;
  font-size: 11px;
  line-height: 1.45;
  tab-size: 2;
}

.agent-git-diff-modal-body:not(.is-colored) {
  padding: 12px 14px;
  white-space: pre-wrap;
  word-break: break-word;
}

.agent-git-diff-line {
  display: block;
  padding: 0 12px;
  white-space: pre;
  min-height: 1.45em;
}

.agent-git-diff-line--context {
  color: #e6edf3;
}

.agent-git-diff-line--meta {
  color: #8b949e;
}

.agent-git-diff-line--hunk {
  color: #79c0ff;
  background: rgba(56, 139, 253, 0.1);
}

.agent-git-diff-line--file-old {
  color: #ff7b72;
}

.agent-git-diff-line--file-new {
  color: #7ee787;
}

.agent-git-diff-line--add {
  color: #aff5b4;
  background: rgba(46, 160, 67, 0.2);
}

.agent-git-diff-line--remove {
  color: #ffdcd7;
  background: rgba(248, 81, 73, 0.15);
}

.agent-git-diff-line--notice {
  color: #d2a8ff;
  background: rgba(163, 113, 247, 0.12);
  font-style: italic;
}

.agent-git-diff-modal-actions {
  justify-content: flex-end;
}

.agent-git-logs-btn {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 28px;
  height: 28px;
  padding: 0;
  border-radius: 8px;
  border: 1px solid var(--border);
  background: var(--bg);
  color: var(--muted);
  cursor: pointer;
}

.agent-git-logs-btn:hover:not(:disabled) {
  color: var(--text);
  border-color: color-mix(in srgb, var(--accent, #3b82f6) 35%, var(--border));
}

.agent-git-logs-btn-icon {
  display: flex;
  align-items: center;
  justify-content: center;
  line-height: 0;
}

.agent-git-logs-modal-card {
  width: min(720px, calc(100vw - 32px));
  max-height: min(88vh, 720px);
  display: flex;
  flex-direction: column;
  gap: 10px;
  padding: 18px 20px 16px;
  overflow: hidden;
}

.agent-git-logs-modal-head {
  display: flex;
  flex-direction: column;
  gap: 6px;
}

.agent-git-logs-modal-title {
  margin: 0;
  font-size: 16px;
  font-weight: 650;
}

.agent-git-logs-modal-lead {
  margin: 0;
  font-size: 12px;
  line-height: 1.45;
  color: var(--muted);
}

.agent-git-logs-content {
  margin: 0;
  flex: 1;
  min-height: 200px;
  max-height: min(60vh, 480px);
  overflow: auto;
  padding: 10px 12px;
  font-size: 11px;
  line-height: 1.45;
  font-family: ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, monospace;
  white-space: pre-wrap;
  word-break: break-word;
  color: var(--text);
  background: color-mix(in srgb, var(--bg) 92%, #0f172a 8%);
  border: 1px solid var(--border);
  border-radius: 8px;
}

.agent-git-logs-modal-actions {
  justify-content: flex-end;
  gap: 8px;
}

.agent-git-settings-btn {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 0;
  width: 28px;
  min-width: 28px;
  height: 28px;
  padding: 0;
  border-radius: 8px;
  line-height: 1;
  vertical-align: middle;
}

.agent-git-settings-btn-icon {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 14px;
  height: 14px;
  flex: 0 0 14px;
}

.agent-git-settings-btn-icon svg {
  display: block;
  width: 14px;
  height: 14px;
}

.agent-git-refresh-btn.agent-workspace-refresh-btn {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 28px;
  min-width: 28px;
  height: 28px;
  padding: 0;
  border-radius: 8px;
}

.agent-git-refresh-icon {
  width: 14px;
  height: 14px;
  flex-shrink: 0;
  display: block;
}

.agent-git-settings-btn.is-open {
  background: rgba(99, 102, 241, 0.08);
  border-color: rgba(99, 102, 241, 0.45);
  color: #4338ca;
}

.agent-git-settings-panel {
  margin: 0 0 12px;
  padding: 0 4px;
}

.agent-git-settings-panel.hidden {
  display: none;
}

.agent-git-settings-card {
  padding: 12px 14px;
  border-radius: 12px;
  border: 1px solid rgba(148, 163, 184, 0.28);
  background: rgba(248, 250, 252, 0.95);
}

.agent-git-settings-divider {
  margin: 14px 0 12px;
  border-top: 1px solid color-mix(in srgb, var(--panel-border, #cbd5e1) 65%, transparent);
}

.agent-git-settings-subtitle {
  margin: 0 0 10px;
  font-size: 0.82rem;
  font-weight: 650;
  color: #334155;
}

.agent-git-settings-hint {
  display: block;
  margin-top: 4px;
  font-size: 10px;
  line-height: 1.4;
  color: #94a3b8;
}

.agent-git-settings-hint--block {
  margin: 0 0 10px;
  font-size: 11px;
  line-height: 1.45;
}

.agent-git-settings-hint code {
  font-size: 10px;
}

.agent-git-settings-columns--disabled .agent-git-settings-input:disabled {
  opacity: 0.72;
  cursor: not-allowed;
  color: #94a3b8;
  background: #f8fafc;
}

.agent-git-settings-lead {
  margin: 0 0 10px;
  font-size: 12px;
  line-height: 1.45;
  color: #64748b;
}

.agent-git-settings-columns {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 10px 12px;
  margin-bottom: 10px;
}

.agent-git-settings-columns .agent-git-settings-field {
  margin-bottom: 0;
  min-width: 0;
}

.agent-git-settings-field {
  display: flex;
  flex-direction: column;
  gap: 4px;
  margin-bottom: 10px;
}

.agent-git-settings-label {
  font-size: 11px;
  font-weight: 700;
  color: #475569;
}

.agent-git-settings-input {
  width: 100%;
  box-sizing: border-box;
  padding: 7px 10px;
  border-radius: 8px;
  border: 1px solid rgba(148, 163, 184, 0.45);
  font-size: 12px;
  font-family: inherit;
}

.agent-git-settings-input.is-readonly,
.agent-git-settings-input:read-only {
  background: rgba(241, 245, 249, 0.95);
  color: #64748b;
  cursor: default;
}

.agent-git-branch-select {
  cursor: default;
}

.agent-git-branch-select:disabled {
  background: rgba(241, 245, 249, 0.95);
  color: #64748b;
  opacity: 1;
}

.agent-sensitive-input {
  position: relative;
  display: block;
}

.agent-sensitive-input .agent-git-settings-input {
  padding-right: 2.5rem;
}

.agent-sensitive-toggle {
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  width: 2.25rem;
  margin: 0;
  padding: 0;
  border: 0;
  border-radius: 0 8px 8px 0;
  background: transparent;
  color: #64748b;
  cursor: pointer;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  pointer-events: auto;
}

.agent-sensitive-icon {
  width: 16px;
  height: 16px;
  display: block;
}

.agent-sensitive-toggle[aria-pressed="false"] .agent-sensitive-icon--hide,
.agent-sensitive-toggle[aria-pressed="true"] .agent-sensitive-icon--show {
  display: none;
}

.agent-sensitive-toggle:hover {
  color: #4338ca;
  background: rgba(99, 102, 241, 0.08);
}

.agent-sensitive-toggle[aria-pressed="true"] {
  color: #4338ca;
}

.is-privacy-mode .agent-sensitive-input:not(.is-revealed) input[data-sensitive],
.is-privacy-mode .agent-sensitive-input:not(.is-revealed) input.is-sensitive-masked {
  filter: none;
  color: transparent;
  text-shadow: 0 0 5px rgba(51, 65, 85, 0.92);
  caret-color: transparent;
  -webkit-user-select: none;
  user-select: none;
  pointer-events: none;
}

.is-privacy-mode .agent-sensitive-input.is-revealed [data-sensitive],
.is-privacy-mode .agent-sensitive-input.is-revealed input.is-sensitive-masked {
  filter: none;
  color: inherit;
  text-shadow: none;
  caret-color: auto;
  -webkit-user-select: text;
  user-select: text;
  pointer-events: auto;
}

.is-privacy-mode .agent-sensitive-toggle {
  filter: none;
  pointer-events: auto;
}

html:not(.is-privacy-mode) .agent-sensitive-toggle {
  display: none;
}

html:not(.is-privacy-mode) .agent-sensitive-input .agent-git-settings-input {
  padding-right: 10px;
}

.is-privacy-mode .agent-sensitive-input:not(.is-revealed) input[data-sensitive] {
  filter: none !important;
}

.agent-git-settings-row {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
  margin-bottom: 8px;
}

.agent-git-settings-action {
  padding: 6px 12px;
  border-radius: 999px;
  border: 1px solid rgba(148, 163, 184, 0.35);
  background: #fff;
  color: #334155;
  font-size: 11px;
  font-weight: 700;
  cursor: pointer;
}

.agent-git-settings-action.is-primary {
  border-color: rgba(79, 70, 229, 0.45);
  background: rgba(99, 102, 241, 0.12);
  color: #4338ca;
}

.agent-git-settings-action:disabled {
  opacity: 0.45;
  cursor: not-allowed;
}

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

.agent-workspace-refresh-btn,
.agent-timeline-refresh-btn,
.agent-git-refresh-btn,
.agent-large-files-refresh-btn,
.agent-broken-links-refresh-btn {
  padding: 6px 12px;
  border-radius: 999px;
  border: 1px solid rgba(148, 163, 184, 0.35);
  background: rgba(255, 255, 255, 0.88);
  color: #4338ca;
  font-size: 11px;
  font-weight: 700;
  cursor: pointer;
  white-space: nowrap;
  transition:
    background 0.15s ease,
    border-color 0.15s ease,
    opacity 0.15s ease;
}

.agent-workspace-refresh-btn:hover:not(:disabled),
.agent-timeline-refresh-btn:hover:not(:disabled),
.agent-git-refresh-btn:hover:not(:disabled),
.agent-git-logs-btn:hover:not(:disabled),
.agent-git-settings-btn:hover:not(:disabled),
.agent-large-files-refresh-btn:hover:not(:disabled),
.agent-broken-links-refresh-btn:hover:not(:disabled) {
  background: rgba(99, 102, 241, 0.08);
  border-color: rgba(99, 102, 241, 0.45);
}

.agent-workspace-refresh-btn:disabled,
.agent-timeline-refresh-btn:disabled {
  opacity: 0.55;
  cursor: wait;
}

.agent-canvas-eyebrow {
  margin: 0 0 6px;
  font-size: 11px;
  font-weight: 700;
  letter-spacing: 0.08em;
  text-transform: uppercase;
  color: #6366f1;
}

.agent-canvas-title {
  margin: 0;
  font-size: clamp(1.35rem, 2.5vw, 1.75rem);
  font-weight: 800;
  letter-spacing: -0.02em;
  color: #0f172a;
}

.agent-canvas-lead {
  margin: 8px 0 0;
  max-width: 720px;
  font-size: 13px;
  line-height: 1.55;
  color: #64748b;
}

.agent-canvas-lead code {
  font-size: 12px;
}

.agent-schema-content {
  width: 100%;
  margin: 0;
  padding: 0 4px 28px;
  flex: 1;
  min-height: 0;
  box-sizing: border-box;
}

.agent-schema-tree {
  border: 1px solid var(--border);
  border-radius: 14px;
  background: rgba(255, 255, 255, 0.88);
  box-shadow: 0 10px 28px rgba(15, 23, 42, 0.05);
  padding: 16px 18px 18px;
}

.agent-schema-branch-list {
  list-style: none;
  margin: 0;
  padding: 0;
}

.agent-schema-branch-list--root {
  padding-left: 2px;
}

.agent-schema-branch-list:not(.agent-schema-branch-list--root) {
  position: relative;
  margin: 2px 0 6px 12px;
  padding-left: 20px;
}

.agent-schema-branch-list:not(.agent-schema-branch-list--root)::before {
  content: "";
  position: absolute;
  left: 0;
  top: 17px;
  bottom: 17px;
  width: 2px;
  border-radius: 2px;
  background: linear-gradient(180deg, #b8c5d4 0%, #cbd5e1 50%, #b8c5d4 100%);
  pointer-events: none;
}

.agent-schema-branch-list:not(.agent-schema-branch-list--root):has(> :only-child)::before {
  display: none;
}

.agent-schema-item {
  position: relative;
  list-style: none;
}

.agent-schema-branch-list:not(.agent-schema-branch-list--root) > .agent-schema-item::before {
  content: "";
  position: absolute;
  left: -20px;
  top: 17px;
  width: 16px;
  border-top: 2px solid #cbd5e1;
  pointer-events: none;
}

.agent-schema-branch-list:not(.agent-schema-branch-list--root) > .agent-schema-item::after {
  content: "";
  position: absolute;
  left: -25px;
  top: 13px;
  width: 8px;
  height: 8px;
  border-radius: 50%;
  background: #fff;
  border: 2px solid #94a3b8;
  box-sizing: border-box;
  pointer-events: none;
  z-index: 1;
  transition: border-color 0.15s ease, background-color 0.15s ease;
}

.agent-schema-branch-list:not(.agent-schema-branch-list--root) > .agent-schema-item.is-area::after {
  border-color: #ca8a04;
  background: #fef9c3;
}

.agent-schema-branch-list:not(.agent-schema-branch-list--root) > .agent-schema-item.is-topic::after {
  border-color: #3b82f6;
  background: #eff6ff;
}

.agent-schema-item:hover::before,
.agent-schema-item:has(.agent-schema-node:focus-visible)::before {
  border-top-color: #7c93a8;
}

.agent-schema-item:hover::after,
.agent-schema-item:has(.agent-schema-node:focus-visible)::after {
  border-color: #64748b;
  background: #fff;
}

.agent-schema-item.is-area:hover::after,
.agent-schema-item.is-area:has(.agent-schema-node:focus-visible)::after {
  border-color: #a16207;
  background: #fef9c3;
}

.agent-schema-item.is-topic:hover::after,
.agent-schema-item.is-topic:has(.agent-schema-node:focus-visible)::after {
  border-color: #2563eb;
  background: #eff6ff;
}

.agent-schema-node {
  display: flex;
  align-items: center;
  gap: 10px;
  width: 100%;
  border: 0;
  border-radius: 8px;
  background: transparent;
  color: var(--text);
  font: inherit;
  font-size: 13px;
  font-weight: 500;
  text-align: left;
  padding: 7px 10px;
  cursor: pointer;
  transition: background 0.15s ease, color 0.15s ease;
}

.agent-schema-node:hover,
.agent-schema-node:focus-visible {
  background: #eff6ff;
  color: #1e3a8a;
  outline: none;
}

.agent-schema-node.is-folder {
  font-weight: 600;
}

.agent-schema-node-kind {
  flex-shrink: 0;
  padding: 2px 8px;
  border-radius: 999px;
  font-size: 10px;
  font-weight: 700;
  letter-spacing: 0.04em;
  text-transform: uppercase;
}

.agent-schema-node.is-area .agent-schema-node-kind {
  background: rgba(250, 204, 21, 0.18);
  color: #a16207;
}

.agent-schema-node.is-topic .agent-schema-node-kind {
  background: rgba(59, 130, 246, 0.12);
  color: #1d4ed8;
}

.agent-schema-node-label {
  flex: 1;
  min-width: 0;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.agent-schema-node-path {
  flex-shrink: 1;
  min-width: 0;
  max-width: 34%;
  font-size: 10px;
  font-family: ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, monospace;
  color: #94a3b8;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.agent-schema-node-size {
  flex-shrink: 0;
  margin-left: auto;
  padding: 2px 8px;
  border-radius: 999px;
  font-size: 11px;
  font-weight: 700;
  font-family: ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, monospace;
  font-variant-numeric: tabular-nums;
  color: #1d4ed8;
  background: rgba(59, 130, 246, 0.1);
}

.agent-schema-node-size.is-area-sum {
  color: #a16207;
  background: rgba(250, 204, 21, 0.18);
}

.agent-schema-node-size.is-missing {
  color: #94a3b8;
  background: rgba(148, 163, 184, 0.12);
}

.agent-schema-shell {
  display: flex;
  flex-direction: column;
  gap: 16px;
  padding-bottom: 24px;
}

.agent-schema-size-chart {
  border: 1px solid var(--border);
  border-radius: 14px;
  background: rgba(255, 255, 255, 0.88);
  box-shadow: 0 10px 28px rgba(15, 23, 42, 0.05);
  padding: 16px 18px 18px;
  margin-bottom: 8px;
}

.agent-schema-size-chart--loading {
  opacity: 0.72;
}

.agent-schema-size-chart-head {
  margin-bottom: 12px;
}

.agent-schema-size-chart-title {
  margin: 0;
  font-size: 14px;
  font-weight: 700;
  color: var(--text);
}

.agent-schema-size-chart-note {
  margin: 4px 0 0;
  font-size: 12px;
  color: var(--muted);
}

.agent-schema-size-chart-empty {
  margin: 0;
  font-size: 13px;
  color: var(--muted);
}

.agent-schema-size-chart-empty.is-alert {
  color: #b91c1c;
}

.agent-schema-size-chart-list {
  display: flex;
  flex-direction: column;
  gap: 8px;
}

.agent-schema-size-chart-row {
  display: grid;
  grid-template-columns: minmax(120px, 180px) minmax(0, 1fr) auto;
  align-items: center;
  gap: 10px;
}

.agent-schema-size-chart-label {
  min-width: 0;
  font-size: 12px;
  font-weight: 600;
  color: var(--text);
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.agent-schema-size-chart-bar-track {
  height: 10px;
  border-radius: 999px;
  background: rgba(148, 163, 184, 0.18);
  overflow: hidden;
}

.agent-schema-size-chart-bar-fill {
  height: 100%;
  border-radius: inherit;
  background: linear-gradient(90deg, #60a5fa 0%, #2563eb 100%);
}

.agent-schema-size-chart-value {
  flex-shrink: 0;
  font-size: 11px;
  font-weight: 700;
  font-family: ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, monospace;
  font-variant-numeric: tabular-nums;
  color: #1e3a8a;
  white-space: nowrap;
}

.agent-schema-empty {
  padding: 24px 16px;
  text-align: center;
  font-size: 13px;
  color: var(--muted);
}

.agent-awn-types-pane {
  box-sizing: border-box;
}

.agent-awn-types-content {
  width: 100%;
  margin: 0;
  display: flex;
  flex-direction: column;
  gap: 16px;
  padding: 0 4px 48px;
  box-sizing: border-box;
  flex: 0 0 auto;
  min-height: 0;
}

.agent-awn-types-note {
  border: 1px solid rgba(59, 130, 246, 0.2);
  border-radius: 12px;
  background: rgba(239, 246, 255, 0.72);
  padding: 12px 16px;
  font-size: 13px;
  line-height: 1.5;
  color: #1e3a8a;
}

.agent-awn-types-note-title {
  margin: 0 0 8px;
  font-size: 14px;
  font-weight: 700;
  color: #1e3a8a;
}

.agent-awn-types-note p {
  margin: 8px 0 0;
}

.agent-awn-types-note p:last-child {
  margin-bottom: 0;
}

.agent-awn-types-note strong {
  font-weight: 600;
}

.agent-awn-types-section {
  border: 1px solid var(--border);
  border-radius: 14px;
  background: rgba(255, 255, 255, 0.9);
  box-shadow: 0 10px 28px rgba(15, 23, 42, 0.05);
  overflow: hidden;
}

.agent-awn-types-section--browser {
  margin-top: 0;
}

.agent-awn-types-section-head {
  padding: 14px 16px 10px;
  border-bottom: 1px solid rgba(148, 163, 184, 0.2);
}

.agent-awn-types-section-title {
  margin: 0;
  font-size: 15px;
  font-weight: 700;
  color: var(--text);
}

.agent-awn-types-section-sub {
  margin: 4px 0 0;
  font-size: 12px;
  color: var(--muted);
}

.agent-awn-blocks-group {
  padding: 12px 16px 4px;
}

.agent-awn-blocks-group + .agent-awn-blocks-group {
  border-top: 1px solid rgba(148, 163, 184, 0.15);
}

.agent-awn-blocks-group-title {
  margin: 0 0 8px;
  font-size: 13px;
  font-weight: 600;
  color: var(--text);
}

.agent-awn-types-browser {
  display: grid;
  grid-template-columns: minmax(200px, 240px) minmax(0, 1fr);
  min-height: 320px;
}

.agent-awn-types-nav {
  display: flex;
  flex-direction: column;
  gap: 12px;
  padding: 8px 10px 14px;
  border-right: 1px solid rgba(148, 163, 184, 0.2);
  background: rgba(248, 250, 252, 0.65);
  overflow-y: auto;
}

.agent-awn-types-search-wrap {
  position: relative;
  padding: 0 2px;
  flex-shrink: 0;
}

.agent-awn-types-search {
  width: 100%;
  box-sizing: border-box;
  padding: 6px 36px 6px 10px;
  border: 1px solid #cbd5e1;
  border-radius: 7px;
  font-size: 13px;
  background: #fff;
  color: #1e293b;
  outline: none;
  transition: border-color 0.15s;
}

.agent-awn-types-search:focus {
  border-color: #6366f1;
  box-shadow: 0 0 0 2px rgba(99, 102, 241, 0.15);
}

.agent-awn-types-search-count {
  position: absolute;
  right: 8px;
  top: 50%;
  transform: translateY(-50%);
  min-width: 20px;
  height: 20px;
  padding: 0 5px;
  border-radius: 10px;
  background: #e2e8f0;
  color: #475569;
  font-size: 11px;
  font-weight: 600;
  line-height: 20px;
  text-align: center;
  pointer-events: none;
}

.agent-awn-type-nav-row {
  display: flex;
  align-items: center;
  gap: 5px;
  flex-wrap: nowrap;
  min-width: 0;
}

.agent-awn-types-nav-group-label {
  padding: 0 8px 6px;
  font-size: 10px;
  font-weight: 700;
  letter-spacing: 0.06em;
  text-transform: uppercase;
  color: #64748b;
}

.agent-awn-type-nav-kind {
  display: inline-block;
  padding: 1px 5px;
  border-radius: 4px;
  border: 1px solid #cbd5e1;
  background: #f1f5f9;
  color: #475569;
  font-size: 10px;
  font-weight: 600;
  letter-spacing: 0.02em;
  flex-shrink: 0;
  line-height: 1.4;
}

.agent-awn-type-nav-kind--base     { background: #e0e7ff; color: #3730a3; border-color: #a5b4fc; }
.agent-awn-type-nav-kind--entity   { background: #ede9fe; color: #5b21b6; border-color: #c4b5fd; }
.agent-awn-type-nav-kind--type     { background: #dcfce7; color: #166534; border-color: #86efac; }
.agent-awn-type-nav-kind--slot     { background: #ccfbf1; color: #0f766e; border-color: #5eead4; }
.agent-awn-type-nav-kind--field    { background: #fef9c3; color: #854d0e; border-color: #fde047; }
.agent-awn-type-nav-kind--view     { background: #dbeafe; color: #1e40af; border-color: #93c5fd; }
.agent-awn-type-nav-kind--taxonomy { background: #ffe4e6; color: #9f1239; border-color: #fda4af; }
.agent-awn-type-nav-kind--block    { background: #fce7f3; color: #9d174d; border-color: #f9a8d4; }
.agent-awn-type-nav-kind--mixin    { background: #f1f5f9; color: #475569; border-color: #cbd5e1; }
.agent-awn-type-nav-kind--meta     { background: #f0fdf4; color: #15803d; border-color: #86efac; }
.agent-awn-type-nav-kind--preset   { background: #fff7ed; color: #c2410c; border-color: #fb923c; }
.agent-awn-type-nav-kind--data-container { background: #e0f2fe; color: #0369a1; border-color: #7dd3fc; }
.agent-awn-type-nav-kind--data-element   { background: #f0f9ff; color: #0c4a6e; border-color: #bae6fd; }

.agent-awn-types-nav-list {
  display: flex;
  flex-direction: column;
  gap: 4px;
}

.agent-awn-type-nav-item {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  gap: 2px;
  width: 100%;
  padding: 7px 10px;
  border: 1px solid transparent;
  border-radius: 10px;
  background: transparent;
  font: inherit;
  text-align: left;
  cursor: pointer;
  transition: border-color 0.15s ease, background 0.15s ease;
}

.agent-awn-type-nav-item:hover {
  border-color: rgba(59, 130, 246, 0.25);
  background: rgba(255, 255, 255, 0.85);
}

.agent-awn-type-nav-item.is-active {
  border-color: rgba(59, 130, 246, 0.45);
  background: #fff;
  box-shadow: 0 1px 4px rgba(15, 23, 42, 0.06);
}

.agent-awn-type-nav-id {
  font-family: ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, monospace;
  font-size: 12px;
  font-weight: 700;
  color: #0f172a;
  line-height: 1.3;
}

.agent-awn-type-nav-item.is-active .agent-awn-type-nav-id {
  color: #1d4ed8;
}

.agent-awn-type-nav-name {
  font-size: 11px;
  color: #64748b;
  line-height: 1.3;
}

.agent-awn-types-detail-host {
  padding: 16px 18px 18px;
  overflow-x: auto;
}

.agent-awn-type-detail-head {
  margin-bottom: 12px;
  padding-bottom: 12px;
  border-bottom: 1px solid rgba(148, 163, 184, 0.2);
}

.agent-awn-type-detail-title-row {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 8px;
}

.agent-awn-type-detail-title {
  margin: 0;
  font-size: 16px;
  font-weight: 700;
  color: #0f172a;
}

.agent-awn-type-detail-id {
  margin: 6px 0 0;
  font-size: 12px;
  color: #64748b;
}

.agent-awn-type-detail-id code {
  font-size: 12px;
}

.agent-awn-type-detail-meta {
  display: flex;
  flex-direction: column;
  gap: 6px;
  margin-bottom: 14px;
  font-size: 12px;
  line-height: 1.5;
  color: #475569;
}

.agent-awn-type-detail-meta p {
  margin: 0;
}

.agent-awn-type-detail-desc {
  font-size: 13px;
  color: #334155;
}

.agent-awn-type-detail-line code {
  font-size: 11px;
}

.agent-awn-type-detail-empty,
.agent-awn-types-empty {
  margin: 0;
  padding: 14px 16px 16px;
  font-size: 12px;
  color: var(--muted);
}

.agent-awn-type-fields-table-wrap {
  overflow-x: auto;
}

.agent-awn-type-badge {
  display: inline-flex;
  align-items: center;
  border-radius: 999px;
  padding: 2px 8px;
  font-size: 10px;
  font-weight: 700;
  letter-spacing: 0.03em;
  text-transform: uppercase;
}

.agent-awn-type-badge--base {
  background: #e2e8f0;
  color: #334155;
}

.agent-awn-type-badge--mixin {
  background: #f1f5f9;
  color: #475569;
}

.agent-awn-type-badge--type {
  background: #dbeafe;
  color: #1d4ed8;
}

.agent-awn-type-field-flags {
  display: inline-flex;
  flex-wrap: wrap;
  gap: 4px;
}

.agent-awn-type-field-flag {
  display: inline-flex;
  align-items: center;
  border-radius: 999px;
  padding: 1px 6px;
  font-size: 10px;
  font-weight: 700;
  letter-spacing: 0.02em;
  text-transform: uppercase;
}

.agent-awn-type-field-flag--required {
  background: #fee2e2;
  color: #b91c1c;
}

.agent-awn-type-field-flag--locked {
  background: #e2e8f0;
  color: #475569;
}

@media (max-width: 720px) {
  .agent-awn-types-browser {
    grid-template-columns: 1fr;
  }

  .agent-awn-types-nav {
    border-right: none;
    border-bottom: 1px solid rgba(148, 163, 184, 0.2);
    max-height: 220px;
  }
}

.agent-awn-field-registry-table {
  width: 100%;
  border-collapse: collapse;
  font-size: 12px;
}

.agent-awn-field-registry-table th:first-child,
.agent-awn-field-registry-table td:first-child {
  white-space: nowrap;
}

.agent-awn-field-registry-table th,
.agent-awn-field-registry-table td {
  padding: 8px 12px;
  text-align: left;
  border-bottom: 1px solid rgba(148, 163, 184, 0.18);
  vertical-align: top;
}

.agent-awn-field-registry-table th {
  font-size: 11px;
  font-weight: 700;
  text-transform: uppercase;
  letter-spacing: 0.04em;
  color: #64748b;
  background: rgba(248, 250, 252, 0.9);
}

.agent-awn-field-registry-table code {
  font-size: 11px;
}

.agent-awn-field-registry-table td.meta-applies-universal {
  color: #64748b;
  font-style: italic;
}

.agent-awn-field-registry-table td.meta-applies-scoped {
  color: #4338ca;
  font-weight: 600;
}

.doc-slab-content:has(> .doc-slab-main > .topic-schema-panel:not(.hidden)),
.doc-slab-content:has(> .doc-slab-main > .node-config-panel:not(.hidden)) {
  padding: 12px 16px 0;
}

.doc-slab-content .doc-slab-main > .node-config-panel:not(.hidden) {
  flex: 1;
  min-height: 0;
  overflow: auto;
}

.doc-slab-content .doc-slab-main > .topic-schema-panel:not(.hidden) {
  flex: none;
  min-height: auto;
  overflow: visible;
}

.node-config-panel {
  display: flex;
  flex-direction: column;
  gap: 8px;
  padding: 0 0 12px;
}

.node-config-head {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: 8px;
}

.node-config-title {
  margin: 0;
  font-size: 14px;
  font-weight: 700;
}

.node-config-lead {
  margin: 2px 0 0;
  font-size: 10px;
  line-height: 1.35;
  color: var(--muted);
}

.project-settings-scope-nav {
  display: flex;
  flex-wrap: wrap;
  gap: 6px;
  padding: 2px 0 4px;
}

.project-settings-page {
  display: none;
  flex: 1;
  min-height: 0;
  overflow: auto;
  padding: 0 4px 20px;
  box-sizing: border-box;
}

.agent-project-settings-pane .project-settings-loading {
  display: flex;
  justify-content: flex-start;
  padding: 10px 0 4px;
}

.agent-project-settings-pane .project-settings-loading.hidden {
  display: none;
}

.app.project-settings-view .content.doc-stack > :not(#workspace-path-header):not(#project-settings-page) {
  display: none !important;
}

.app.workspace-tool-module-view #workspace-path-header.is-workspace-tool-module {
  display: none;
}

.agent-project-settings-pane .project-settings-page:not(.hidden) {
  display: flex;
  flex-direction: column;
  flex: 0 0 auto;
  min-width: 0;
  width: 100%;
  overflow: visible;
}

.agent-project-settings-pane .project-settings-head {
  display: none;
}

.agent-project-settings-pane .project-settings-head-legend-row {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 8px 14px;
  margin-bottom: 6px;
}

.agent-project-settings-pane .project-settings-head-legend-row .agent-canvas-eyebrow {
  margin: 0;
}

.agent-project-settings-pane .project-settings-scope-legend-mount {
  flex: 1 1 auto;
  min-width: 0;
}

.agent-project-settings-pane .project-settings-scope-legend-mount .project-settings-scope-filters.is-legend {
  margin: 0;
  padding: 0;
  border-bottom: none;
}

.agent-project-settings-pane.agent-canvas-pane {
  scroll-behavior: smooth;
}

.agent-project-settings-pane .agent-project-settings-mount {
  flex: 0 0 auto;
  overflow: visible;
}

.agent-project-settings-mount {
  padding-top: 0;
}

.agent-journal-pane {
  min-height: 0;
}

.agent-journal-pane.agent-tool-pane {
  display: flex;
  flex-direction: column;
}

.agent-journal-pane .agent-journal-content {
  flex: 0 0 auto;
  min-height: 0;
  display: flex;
  flex-direction: column;
  padding-bottom: 12px;
  overflow: visible;
}

.agent-journal-pane .workspace-journal-host--canvas {
  flex: 0 0 auto;
  min-height: 0;
  display: flex;
  flex-direction: column;
}

.agent-journal-pane .workspace-journal-panel {
  flex: 0 0 auto;
  min-height: 0;
  max-height: none;
  overflow: visible;
}

.agent-journal-pane .workspace-journal-list {
  flex: 0 0 auto;
  min-height: 0;
  overflow: visible;
  padding: 14px 16px 18px;
  gap: 12px;
}

.agent-journal-pane .workspace-journal-item {
  padding: 14px 16px;
}

.agent-journal-pane .workspace-journal-panel {
  border-radius: 16px;
}

.agent-journal-info {
  align-items: center;
}

.agent-journal-info-main {
  flex: 1 1 240px;
  min-width: 0;
}

.agent-journal-summary {
  margin: 4px 0 0;
  font-size: 0.82rem;
  line-height: 1.4;
  color: var(--muted, #94a3b8);
}

.agent-journal-controls {
  flex: 0 0 auto;
  display: flex;
  align-items: center;
  gap: 10px;
}

.agent-journal-filter-field {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  margin: 0;
}

.agent-journal-filter-label {
  font-size: 12px;
  font-weight: 600;
  color: #64748b;
  white-space: nowrap;
}

.agent-journal-controls .workspace-journal-filter {
  min-width: 148px;
}

.agent-journal-controls #agent-journal-period-filter {
  min-width: 148px;
}

.agent-recycler-pane {
  min-height: 0;
  box-sizing: border-box;
}

.agent-recycler-pane.agent-tool-pane {
  display: flex;
  flex-direction: column;
}

.agent-recycler-content {
  flex: 0 0 auto;
  min-height: 0;
  overflow: visible;
  padding: 0 4px 48px;
}

.agent-recycler-list {
  display: flex;
  flex-direction: column;
  gap: 12px;
}

.agent-recycler-item {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  grid-template-areas:
    "head actions"
    "path actions"
    "meta actions";
  column-gap: 20px;
  row-gap: 4px;
  align-items: start;
  border: 1px solid rgba(148, 163, 184, 0.35);
  border-radius: 12px;
  padding: 14px 16px;
  background: rgba(15, 23, 42, 0.02);
}

.agent-recycler-item-head {
  grid-area: head;
  display: flex;
  align-items: center;
  gap: 10px;
  flex-wrap: wrap;
  min-width: 0;
}

.agent-recycler-marker {
  font-size: 0.78rem;
  padding: 2px 6px;
  border-radius: 6px;
  background: rgba(100, 116, 139, 0.12);
  flex-shrink: 0;
}

.agent-recycler-title {
  min-width: 0;
  word-break: break-word;
}

.agent-recycler-path,
.agent-recycler-meta-line {
  margin: 0;
  font-size: 0.82rem;
  line-height: 1.45;
  color: var(--muted, #64748b);
  word-break: break-all;
}

.agent-recycler-path {
  grid-area: path;
  padding-top: 2px;
}

.agent-recycler-meta-line {
  grid-area: meta;
  padding-top: 2px;
}

.agent-recycler-actions {
  grid-area: actions;
  margin: 0;
  display: flex;
  align-items: center;
  justify-content: flex-end;
  align-self: center;
  flex-shrink: 0;
}

.agent-recycler-restore-btn {
  font-size: 0.82rem;
  padding: 6px 14px;
  border-radius: 8px;
  border: 1px solid rgba(59, 130, 246, 0.45);
  background: rgba(59, 130, 246, 0.08);
  cursor: pointer;
  white-space: nowrap;
}

@media (max-width: 720px) {
  .agent-recycler-item {
    grid-template-columns: 1fr;
    grid-template-areas:
      "head"
      "path"
      "meta"
      "actions";
    row-gap: 6px;
  }

  .agent-recycler-actions {
    align-self: stretch;
    justify-content: flex-end;
    padding-top: 4px;
  }
}

.agent-recycler-summary {
  margin: 0;
  font-size: 0.82rem;
  color: var(--muted, #94a3b8);
}

.agent-recycler-head-summary {
  padding: 0 4px;
  font-size: 11px;
  font-weight: 600;
  white-space: nowrap;
}

.agent-canvas-head-aside .agent-workspace-refresh-btn.is-danger {
  border-color: rgba(239, 68, 68, 0.45);
  color: #b91c1c;
}

.workspace-tool-pane {
  display: flex;
  flex-direction: column;
  align-items: stretch;
  gap: 0;
  min-width: 0;
  max-width: 100%;
}

.workspace-tool-pane-head {
  display: flex;
  flex-direction: column;
  gap: 0;
  margin-bottom: 4px;
}

.workspace-tool-toolbar {
  padding: 0 4px 10px;
}

.folder-browse-toolbar-row {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 8px;
}

.node-overview.is-workspace-tool-module .node-overview-content,
.node-overview.is-folder-browse .node-overview-content:has(.workspace-tool-pane) {
  padding: 8px var(--doc-content-gutter, 16px) 0;
}

.workspace-tool-pane .folder-browse-tool-body {
  padding-top: 0;
}

#project-settings-page .project-settings-head {
  display: none;
}

.project-settings-layout {
  display: grid;
  grid-template-columns: minmax(168px, 220px) minmax(0, 1fr);
  gap: 16px 20px;
  align-items: start;
  min-height: 0;
}

.project-settings-sidebar {
  position: sticky;
  top: 0;
  align-self: start;
  display: flex;
  flex-direction: column;
  gap: 6px;
  min-height: 0;
  padding: 8px 10px;
  border: 1px solid rgba(148, 163, 184, 0.32);
  border-radius: 10px;
  background: rgba(248, 250, 252, 0.92);
  box-sizing: border-box;
}

.project-settings-search-wrap {
  width: 100%;
  min-width: 0;
  flex: 0 0 auto;
}

.project-settings-search-wrap .menu-search-bar {
  min-height: 30px;
  height: 30px;
  padding: 0 8px;
  border-color: rgba(148, 163, 184, 0.55);
  background: rgba(255, 255, 255, 0.96);
  border-radius: 6px;
}

.project-settings-search-wrap .menu-search-bar:focus-within {
  border-color: #6366f1;
  box-shadow: 0 0 0 2px rgba(99, 102, 241, 0.14);
}

.project-settings-search-wrap .menu-search-input {
  font-size: 12px;
  padding: 4px 0;
}

.project-settings-search-wrap .menu-search-icon {
  color: #64748b;
}

.project-settings-scope-search-empty {
  margin: 0;
  padding: 8px 6px 2px;
  font-size: 12px;
  color: var(--muted);
}

.project-settings-scope-list {
  display: flex;
  flex-direction: column;
  gap: 8px;
  flex: 0 0 auto;
  overflow: visible;
  padding-right: 2px;
}

.project-settings-scope-group {
  display: flex;
  flex-direction: column;
  gap: 4px;
}

.project-settings-scope-group + .project-settings-scope-group {
  margin-top: 10px;
  padding-top: 10px;
  border-top: 1px solid rgba(148, 163, 184, 0.28);
}

.project-settings-scope-group-title {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 8px;
  font-size: 10px;
  font-weight: 600;
  color: var(--muted);
  padding: 0 6px;
}

.project-settings-scope-group-title-label {
  flex: 1 1 auto;
  min-width: 0;
}

.project-settings-scope-group-env-btn {
  display: inline-flex;
  align-items: center;
  gap: 4px;
  margin: 0;
  padding: 2px 6px 2px 4px;
  border: 1px solid rgba(148, 163, 184, 0.35);
  border-radius: 999px;
  background: rgba(255, 255, 255, 0.92);
  color: var(--muted);
  font: inherit;
  font-size: 10px;
  line-height: 1.2;
  cursor: pointer;
  flex: 0 0 auto;
  appearance: none;
  transition: border-color 0.15s ease, background 0.15s ease, color 0.15s ease;
}

.project-settings-scope-group-env-btn:hover {
  border-color: rgba(245, 158, 11, 0.55);
  color: var(--text);
  background: rgba(255, 251, 235, 0.95);
}

.project-settings-scope-group-env-btn:has(.project-settings-scope-marker.is-env-kind.has-value) {
  border-color: rgba(245, 158, 11, 0.55);
  color: #92400e;
  background: rgba(255, 251, 235, 0.98);
}

.project-settings-scope-group-title.has-env-action {
  padding-right: 4px;
}

.project-settings-scope-group.is-scope-platform-global .project-settings-scope-group-title,
.project-settings-scope-group.is-scope-platform-local .project-settings-scope-group-title,
.project-settings-scope-group.is-scope-integrations-settings .project-settings-scope-group-title,
.project-settings-scope-group.is-scope-user-settings .project-settings-scope-group-title,
.project-settings-scope-group.is-scope-workspace .project-settings-scope-group-title {
  font-size: 10px;
  font-weight: 700;
  letter-spacing: 0.03em;
  text-transform: uppercase;
  padding: 6px 8px;
  border-radius: 6px;
}

.project-settings-scope-group.is-scope-platform-global .project-settings-scope-group-title {
  background: rgba(99, 102, 241, 0.12);
  color: rgb(79, 70, 229);
}

.project-settings-scope-group.is-scope-platform-local .project-settings-scope-group-title {
  background: rgba(34, 197, 94, 0.12);
  color: rgb(22, 101, 52);
}

.project-settings-scope-group.is-scope-integrations-settings .project-settings-scope-group-title {
  background: rgba(139, 92, 246, 0.14);
  color: rgb(109, 40, 217);
}

.project-settings-scope-group.is-scope-user-settings .project-settings-scope-group-title {
  background: rgba(245, 158, 11, 0.14);
  color: rgb(180, 83, 9);
}

.project-settings-scope-group.is-scope-workspace .project-settings-scope-group-title {
  background: rgba(14, 165, 233, 0.12);
  color: rgb(3, 105, 161);
}

.project-settings-scope-group.is-scope-tree .project-settings-scope-group-title,
.project-settings-scope-group.is-scope-iblock .project-settings-scope-group-title {
  font-size: 10px;
  font-weight: 700;
  letter-spacing: 0.04em;
  text-transform: uppercase;
  color: color-mix(in srgb, var(--muted) 88%, var(--text));
}

.project-settings-scope-filters {
  display: flex;
  flex-direction: row;
  flex-wrap: wrap;
  align-items: center;
  gap: 6px;
  margin-bottom: 2px;
  padding: 0 2px 8px;
  border-bottom: 1px solid rgba(148, 163, 184, 0.22);
  flex: 0 0 auto;
}

.project-settings-scope-filters.is-legend .project-settings-scope-filter:not(.is-clickable) {
  cursor: default;
  pointer-events: none;
}

.project-settings-scope-filters.is-legend .project-settings-scope-filter.is-clickable:hover {
  border-color: rgba(245, 158, 11, 0.55);
  color: var(--text);
}

.project-settings-scope-filter {
  display: inline-flex;
  align-items: center;
  gap: 5px;
  padding: 4px 8px 4px 6px;
  border: 1px solid rgba(148, 163, 184, 0.35);
  border-radius: 999px;
  background: rgba(255, 255, 255, 0.96);
  font-size: 10px;
  line-height: 1.2;
  color: var(--muted);
  cursor: pointer;
  user-select: none;
  white-space: nowrap;
  transition: border-color 0.15s ease, background 0.15s ease, color 0.15s ease;
}

.project-settings-scope-filter:hover {
  border-color: rgba(99, 102, 241, 0.45);
  color: var(--text);
}

.project-settings-scope-filters.is-legend .project-settings-scope-filter:hover {
  border-color: rgba(148, 163, 184, 0.35);
  color: var(--muted);
}

.project-settings-scope-filter-input {
  width: 12px;
  height: 12px;
  margin: 0;
  flex: 0 0 auto;
  accent-color: #6366f1;
  cursor: pointer;
}

.project-settings-scope-filter:has(.project-settings-scope-filter-input:checked) {
  border-color: rgba(99, 102, 241, 0.45);
  background: rgba(99, 102, 241, 0.08);
  color: var(--text);
}

.project-settings-scope-status {
  display: inline-flex;
  align-items: center;
  gap: 6px;
  flex: 0 0 auto;
  margin-left: auto;
}

.project-settings-scope-markers {
  display: inline-flex;
  align-items: center;
  gap: 4px;
  flex: 0 0 auto;
  flex-shrink: 0;
}

.project-settings-scope-marker {
  width: 8px;
  height: 8px;
  border-radius: 999px;
  flex: 0 0 auto;
  background: transparent;
  border: 1px solid rgba(148, 163, 184, 0.55);
}

.project-settings-scope-marker.is-config-kind.has-value,
.project-settings-scope-filter.is-local .project-settings-scope-marker.is-config-kind.has-value {
  background: rgb(34, 197, 94);
  border-color: rgb(22, 163, 74);
  box-shadow: 0 0 0 1px rgba(34, 197, 94, 0.18);
}

.project-settings-scope-marker.is-schema-kind.has-value,
.project-settings-scope-filter.is-schema .project-settings-scope-marker.is-schema-kind.has-value {
  background: rgb(139, 92, 246);
  border-color: rgb(124, 58, 237);
  box-shadow: 0 0 0 1px rgba(139, 92, 246, 0.18);
}

.project-settings-scope-marker.is-env-kind.has-value,
.project-settings-scope-filter.is-env .project-settings-scope-marker.is-env-kind.has-value {
  background: rgb(245, 158, 11);
  border-color: rgb(217, 119, 6);
  box-shadow: 0 0 0 1px rgba(245, 158, 11, 0.18);
}

.project-settings-scope-marker.is-iblock-kind.has-value {
  background: rgba(14, 165, 233, 0.95);
  border-color: rgba(2, 132, 199, 0.95);
  box-shadow: 0 0 0 1px rgba(14, 165, 233, 0.18);
}

.project-settings-scope-badge.is-iblock-badge {
  background: rgba(14, 165, 233, 0.12);
  color: #0369a1;
}

.project-settings-scope-item.is-iblock-stub {
  color: color-mix(in srgb, var(--text) 88%, var(--muted));
}

.project-settings-scope-item.is-iblock-stub.is-active {
  color: var(--text);
}

.project-settings-scope-item.is-settings-group-tab {
  padding-left: 14px;
  font-size: 11px;
}

.project-settings-scope-item.is-settings-group-tab.is-active {
  font-weight: 600;
}

.project-settings-scope-badge.is-group-tab-badge {
  flex: 0 0 auto;
  min-width: 18px;
  height: 18px;
  padding: 0 5px;
  border-radius: 999px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  background: rgba(148, 163, 184, 0.18);
  color: color-mix(in srgb, var(--text) 70%, var(--muted));
  font-size: 10px;
  font-weight: 700;
  line-height: 1;
}

.project-settings-scope-item.is-settings-group-tab.is-active .project-settings-scope-badge.is-group-tab-badge {
  background: rgba(59, 130, 246, 0.16);
  color: rgb(37, 99, 235);
}

.project-settings-scope-item {
  appearance: none;
  border: 0;
  border-radius: 8px;
  background: transparent;
  color: var(--text);
  font-size: 12px;
  line-height: 1.25;
  padding: 7px 8px;
  text-align: left;
  cursor: pointer;
  display: flex;
  align-items: center;
  gap: 8px;
  width: 100%;
  min-width: 0;
}

.project-settings-scope-label {
  flex: 1 1 auto;
  min-width: 0;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.project-settings-scope-hint {
  flex: 0 0 auto;
  font-size: 10px;
  color: color-mix(in srgb, var(--text) 58%, var(--muted));
  white-space: nowrap;
}

.project-settings-actions {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  justify-content: space-between;
  gap: 8px;
  margin-top: 12px;
}

.project-settings-actions--env {
  margin-top: 10px;
}

.project-settings-btn {
  appearance: none;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-height: 32px;
  border-radius: 8px;
  font: inherit;
  font-size: 12px;
  font-weight: 600;
  line-height: 1.2;
  padding: 7px 14px;
  cursor: pointer;
  transition:
    background 0.15s ease,
    border-color 0.15s ease,
    color 0.15s ease,
    box-shadow 0.15s ease,
    opacity 0.15s ease;
}

.project-settings-btn--primary {
  border: 1px solid #93c5fd;
  background: linear-gradient(180deg, #eff6ff 0%, #dbeafe 100%);
  color: #1e3a8a;
  box-shadow: 0 1px 0 rgba(255, 255, 255, 0.65) inset;
}

.project-settings-btn--primary:hover:not(:disabled) {
  background: linear-gradient(180deg, #dbeafe 0%, #bfdbfe 100%);
  border-color: #60a5fa;
}

.project-settings-btn--primary.is-dirty:not(:disabled) {
  border-color: #3b82f6;
  box-shadow: 0 0 0 3px rgba(59, 130, 246, 0.14);
}

.project-settings-btn--secondary {
  border: 1px solid rgba(148, 163, 184, 0.45);
  background: #fff;
  color: #475569;
}

.project-settings-btn--secondary:hover:not(:disabled) {
  background: #f8fafc;
  border-color: rgba(100, 116, 139, 0.55);
  color: #334155;
}

.project-settings-btn--secondary.is-active {
  background: #f1f5f9;
  border-color: rgba(59, 130, 246, 0.45);
  color: #1d4ed8;
}

.project-settings-btn:disabled {
  opacity: 0.48;
  cursor: not-allowed;
  box-shadow: none;
}

.project-settings-btn:focus-visible {
  outline: none;
  box-shadow: 0 0 0 3px rgba(59, 130, 246, 0.18);
}

.agent-project-settings-pane .project-settings-btn {
  min-height: 34px;
  padding: 8px 16px;
  font-size: 13px;
  border-radius: 9px;
}

.agent-project-settings-pane .project-settings-actions {
  gap: 10px;
  margin-top: 14px;
}

.agent-project-settings-pane .project-settings-actions--env {
  margin-top: 12px;
}

.project-settings-group-tabs {
  display: flex;
  flex-wrap: wrap;
  gap: 6px;
  margin: 4px 0 10px;
}

.project-settings-group-tab {
  appearance: none;
  border: 1px solid rgba(148, 163, 184, 0.42);
  border-radius: 999px;
  background: #fff;
  color: #475569;
  font: inherit;
  font-size: 12px;
  font-weight: 600;
  line-height: 1.2;
  padding: 6px 12px;
  cursor: pointer;
  transition:
    background 0.15s ease,
    border-color 0.15s ease,
    color 0.15s ease,
    box-shadow 0.15s ease;
}

.project-settings-group-tab:hover {
  background: #f8fafc;
  border-color: rgba(100, 116, 139, 0.55);
  color: #334155;
}

.project-settings-group-tab.is-active {
  background: linear-gradient(180deg, #eff6ff 0%, #dbeafe 100%);
  border-color: #93c5fd;
  color: #1e3a8a;
  box-shadow: 0 1px 0 rgba(255, 255, 255, 0.7) inset;
}

.project-settings-group-tab:focus-visible {
  outline: none;
  box-shadow: 0 0 0 3px rgba(59, 130, 246, 0.16);
}

.node-config-settings-group {
  border: 1px solid color-mix(in srgb, var(--border) 80%, transparent);
  border-radius: 10px;
  overflow: hidden;
  margin-bottom: 12px;
}

.node-config-settings-group-title {
  margin: 0;
  padding: 8px 12px;
  font-size: 12px;
  font-weight: 700;
  letter-spacing: 0.02em;
  text-transform: uppercase;
  color: color-mix(in srgb, var(--text) 72%, var(--muted));
  background: color-mix(in srgb, var(--surface-2, var(--bg)) 88%, var(--muted));
  border-bottom: 1px solid color-mix(in srgb, var(--border) 70%, transparent);
}

.node-config-settings-group-body {
  display: flex;
  flex-direction: column;
  gap: 8px;
  padding: 10px 12px 12px;
}

.project-settings-scope-badges {
  display: inline-flex;
  align-items: center;
  gap: 4px;
  flex: 0 0 auto;
}

.project-settings-scope-badge {
  flex: 0 0 auto;
  min-width: 18px;
  padding: 1px 6px;
  border-radius: 999px;
  background: rgba(34, 197, 94, 0.14);
  color: rgba(22, 101, 52, 0.95);
  font-size: 10px;
  font-weight: 700;
  line-height: 1.3;
  text-align: center;
}

.project-settings-scope-item.is-empty-scope {
  color: color-mix(in srgb, var(--text) 72%, var(--muted));
}

.project-settings-scope-item:hover {
  background: rgba(59, 130, 246, 0.08);
}

.project-settings-scope-item.is-active {
  background: rgba(59, 130, 246, 0.12);
  font-weight: 600;
  box-shadow: inset 3px 0 0 rgba(59, 130, 246, 0.82);
}

.project-settings-scope-item.is-active.is-empty-scope {
  background: rgba(148, 163, 184, 0.16);
  box-shadow: inset 3px 0 0 rgba(100, 116, 139, 0.65);
}

.project-settings-scope-item.is-active .project-settings-scope-marker.has-value {
  box-shadow: 0 0 0 1.5px #fff;
}

.project-settings-scope-item.is-active .project-settings-scope-marker.is-config-kind.has-value {
  box-shadow: 0 0 0 1.5px #fff, 0 0 0 1px rgba(34, 197, 94, 0.18);
}

.project-settings-scope-item.is-active .project-settings-scope-marker.is-schema-kind.has-value {
  box-shadow: 0 0 0 1.5px #fff, 0 0 0 1px rgba(139, 92, 246, 0.18);
}

.project-settings-scope-item.is-active .project-settings-scope-marker.is-env-kind.has-value {
  box-shadow: 0 0 0 1.5px #fff, 0 0 0 1px rgba(245, 158, 11, 0.18);
}

.project-settings-scope-section {
  display: flex;
  flex-direction: column;
  gap: 6px;
}

.project-settings-scope-section + .project-settings-scope-section {
  margin-top: 4px;
  padding-top: 8px;
  border-top: 1px solid rgba(148, 163, 184, 0.18);
}

.project-settings-scope-section-title {
  font-size: 10px;
  font-weight: 700;
  letter-spacing: 0.04em;
  text-transform: uppercase;
  color: var(--muted);
  padding: 0 6px;
}

.project-settings-scope-badge.is-schema-badge {
  background: rgba(139, 92, 246, 0.14);
  color: rgb(109, 40, 217);
}

.project-settings-scope-badge.is-env-badge {
  background: rgba(245, 158, 11, 0.16);
  color: rgba(146, 64, 14, 0.95);
}

.project-settings-env-wrap {
  display: flex;
  flex-direction: column;
  gap: 10px;
}

.project-settings-env-wrap.is-editing {
  gap: 12px;
}

.project-settings-env-input {
  flex: 1 1 auto;
  width: 100%;
  min-height: 280px;
  box-sizing: border-box;
  border: 1px solid rgba(148, 163, 184, 0.35);
  border-radius: 10px;
  background: #0f172a;
  color: #e2e8f0;
  padding: 14px 16px;
  font-family: ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", monospace;
  font-size: 13px;
  line-height: 1.45;
  resize: vertical;
}

.project-settings-env-input:focus {
  outline: none;
  border-color: rgba(59, 130, 246, 0.65);
  box-shadow: 0 0 0 3px rgba(59, 130, 246, 0.12);
}

.project-settings-main {
  min-width: 0;
  display: flex;
  flex-direction: column;
  gap: 12px;
}

.project-settings-head {
  display: flex;
  flex-direction: column;
  gap: 6px;
}

.project-settings-title {
  margin: 0;
  font-size: 18px;
  line-height: 1.25;
}

.project-settings-lead {
  margin: 0;
  font-size: 12px;
  line-height: 1.45;
  color: var(--muted);
}

.project-settings-blocks {
  display: flex;
  flex-direction: column;
  gap: 18px;
}

.project-settings-block {
  display: flex;
  flex-direction: column;
  gap: 8px;
  max-width: 760px;
}

.project-settings-block + .project-settings-block {
  padding-top: 16px;
  border-top: 1px solid rgba(148, 163, 184, 0.22);
}

.project-settings-page--env-only {
  overflow: visible;
}

.project-settings-page--env-only .project-settings-block--env {
  padding-top: 0;
  border-top: 0;
  max-width: none;
}

.project-settings-block-title {
  margin: 0;
  font-size: 12px;
  font-weight: 700;
  letter-spacing: 0.03em;
  text-transform: uppercase;
  color: var(--muted);
}

.project-settings-block-lead {
  margin: 0;
  font-size: 12px;
  line-height: 1.45;
  color: var(--muted);
}

.project-settings-group-description-lead {
  margin: 0 0 14px;
  padding: 10px 12px;
  border-radius: 8px;
  background: rgba(245, 158, 11, 0.1);
  border: 1px solid rgba(245, 158, 11, 0.22);
  font-size: 12px;
  line-height: 1.45;
  color: color-mix(in srgb, var(--text) 82%, #92400e);
}

.project-settings-block-lead.project-settings-group-description-lead {
  margin: 8px 0 14px;
}

.node-config-field-row.is-readonly .node-config-field-label {
  color: var(--muted);
}

.node-config-field-row.is-readonly .props-form-value-wrap input,
.node-config-field-row.is-readonly .props-form-value-wrap textarea,
.node-config-field-row.is-readonly .props-form-value-wrap select {
  cursor: default;
  opacity: 0.88;
}

.platform-maintenance-overlay {
  position: fixed;
  inset: 0;
  z-index: 100000;
  display: grid;
  place-items: center;
  padding: 24px;
  background: color-mix(in srgb, var(--bg) 72%, transparent);
  backdrop-filter: blur(4px);
}

.platform-maintenance-card {
  max-width: 420px;
  padding: 20px 22px;
  border-radius: 12px;
  border: 1px solid var(--border);
  background: var(--surface);
  box-shadow: 0 12px 40px rgba(0, 0, 0, 0.18);
}

.platform-maintenance-card h2 {
  margin: 0 0 8px;
  font-size: 18px;
}

.platform-maintenance-card p {
  margin: 0;
  font-size: 13px;
  line-height: 1.5;
  color: var(--muted);
}

.project-settings-block--env.is-env-focused {
  outline: 2px solid rgba(245, 158, 11, 0.45);
  outline-offset: 2px;
  border-radius: 10px;
  transition: outline-color 0.2s ease;
}

.project-settings-scope-filter.is-clickable {
  margin: 0;
  appearance: none;
  -webkit-appearance: none;
}

.project-settings-scope-filters.is-legend .project-settings-scope-filter.is-clickable {
  display: inline-flex;
  align-items: center;
  gap: 5px;
  margin: 0;
  padding: 4px 8px 4px 6px;
  border: 1px solid rgba(148, 163, 184, 0.35);
  border-radius: 999px;
  background: rgba(255, 255, 255, 0.96);
  color: var(--muted);
  font-family: inherit;
  font-size: 10px;
  font-weight: 400;
  line-height: 1.2;
  text-align: left;
  white-space: nowrap;
  cursor: pointer;
  pointer-events: auto;
  box-sizing: border-box;
  flex-shrink: 0;
  vertical-align: middle;
}

.project-settings-block--env .project-settings-env-wrap.is-editing .project-settings-env-input {
  min-height: 220px;
}

.project-settings-fields {
  max-width: none;
}

.project-settings-fields .props-form-value-wrap--enum-checkbox .props-form-enum-checkbox-list {
  flex-direction: column;
  flex-wrap: nowrap;
  align-items: flex-start;
  gap: 6px;
}

.project-settings-fields .props-form-enum-checkbox-label {
  display: flex;
  align-items: center;
  gap: 6px;
  white-space: normal;
}

.project-settings-empty {
  margin: 0;
  font-size: 12px;
  color: var(--muted);
}

.project-settings-scope-btn {
  appearance: none;
  border: 1px solid rgba(148, 163, 184, 0.45);
  border-radius: 999px;
  background: #fff;
  color: var(--text);
  font-size: 11px;
  line-height: 1.2;
  padding: 4px 10px;
  cursor: pointer;
}

.project-settings-scope-btn:hover {
  border-color: rgba(59, 130, 246, 0.55);
}

.project-settings-scope-btn.is-active {
  border-color: rgba(34, 197, 94, 0.65);
  background: rgba(240, 253, 244, 0.95);
  font-weight: 600;
}

.node-config-fields {
  display: flex;
  flex-direction: column;
  border: 1px solid rgba(148, 163, 184, 0.28);
  border-radius: 8px;
  background: #fff;
  overflow: hidden;
}

.node-config-fields.has-settings-subgroups {
  gap: 8px;
  padding: 0;
  border: 0;
  background: transparent;
  overflow: visible;
}

.node-settings-subgroup-accordion {
  border: 1px solid rgba(148, 163, 184, 0.28);
  border-radius: 8px;
  background: #fff;
  overflow: hidden;
}

.node-settings-subgroup-accordion.is-disabled {
  border-color: rgba(148, 163, 184, 0.18);
  background: rgba(248, 250, 252, 0.72);
}

.node-settings-subgroup-accordion.is-disabled > .node-settings-subgroup-accordion-summary {
  cursor: not-allowed;
  opacity: 0.52;
  pointer-events: none;
  background: rgba(241, 245, 249, 0.72);
}

.node-settings-subgroup-accordion.is-disabled > .node-settings-subgroup-accordion-summary .node-settings-subgroup-accordion-title,
.node-settings-subgroup-accordion.is-disabled > .node-settings-subgroup-accordion-summary .node-settings-subgroup-accordion-hint {
  color: #94a3b8;
}

.node-settings-subgroup-accordion.is-disabled > .node-settings-subgroup-accordion-summary .node-settings-subgroup-accordion-count {
  background: rgba(148, 163, 184, 0.1);
  color: #94a3b8;
}

.node-settings-subgroup-accordion.is-disabled > .node-settings-subgroup-accordion-summary .node-settings-subgroup-accordion-chevron {
  opacity: 0.35;
}

.node-settings-subgroup-accordion.is-disabled > .node-settings-subgroup-accordion-body {
  display: none;
}

.node-config-fields.has-settings-subgroups > .node-settings-subgroup-accordion + .node-settings-subgroup-accordion {
  margin-top: 0;
}

.node-settings-subgroup-accordion-summary {
  display: flex;
  align-items: center;
  gap: 10px;
  padding: 8px 12px;
  cursor: pointer;
  list-style: none;
  user-select: none;
  background: rgba(248, 250, 252, 0.96);
}

.node-settings-subgroup-accordion-summary::-webkit-details-marker {
  display: none;
}

.node-settings-subgroup-accordion-chevron {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  flex: 0 0 auto;
  width: 22px;
  height: 22px;
  margin-left: 2px;
  border: 1px solid rgba(148, 163, 184, 0.35);
  border-radius: 6px;
  background: rgba(255, 255, 255, 0.92);
  color: #64748b;
}

.node-settings-subgroup-accordion-summary:hover .node-settings-subgroup-accordion-chevron {
  color: #334155;
  border-color: rgba(99, 102, 241, 0.35);
  background: #fff;
}

.node-settings-subgroup-accordion-chevron .nav-book-toc-folder-chevron {
  width: 6px;
  height: 6px;
  margin-top: -2px;
  transform: rotate(-45deg);
}

.node-settings-subgroup-accordion[open] > .node-settings-subgroup-accordion-summary .nav-book-toc-folder-chevron {
  transform: rotate(45deg);
  margin-top: -4px;
}

.node-settings-subgroup-accordion[open] > .node-settings-subgroup-accordion-summary .node-settings-subgroup-accordion-chevron {
  color: #4f46e5;
  border-color: rgba(99, 102, 241, 0.4);
  background: rgba(238, 242, 255, 0.95);
}

.node-settings-subgroup-accordion-summary:hover {
  background: rgba(241, 245, 249, 0.98);
}

.node-settings-subgroup-accordion-summary-main {
  display: flex;
  flex-direction: column;
  gap: 2px;
  min-width: 0;
  flex: 1 1 auto;
}

.node-settings-subgroup-accordion-title {
  font-size: 12px;
  font-weight: 700;
  color: var(--text);
}

.node-settings-subgroup-accordion-hint {
  font-size: 11px;
  line-height: 1.35;
  color: var(--muted);
}

.node-settings-subgroup-accordion-count {
  flex: 0 0 auto;
  min-width: 20px;
  padding: 1px 7px;
  border-radius: 999px;
  background: rgba(148, 163, 184, 0.16);
  color: var(--muted);
  font-size: 10px;
  line-height: 1.5;
  text-align: center;
}

.node-settings-subgroup-accordion-body {
  display: flex;
  flex-direction: column;
  border-top: 1px solid rgba(148, 163, 184, 0.14);
  background: #fff;
}

.node-settings-subgroup-accordion-body .node-config-field-row--compact:first-child {
  border-top: 0;
}

.node-config-field-row--compact {
  display: grid;
  grid-template-columns: minmax(110px, 0.82fr) minmax(0, 1.18fr);
  align-items: center;
  gap: 6px 10px;
  padding: 5px 10px;
  min-height: 32px;
  border-top: 1px solid rgba(148, 163, 184, 0.14);
}

.node-config-field-row--compact:first-child {
  border-top: 0;
}

.node-config-field-row--compact.is-tall {
  grid-template-columns: minmax(0, 1fr);
  align-items: stretch;
  padding-top: 8px;
  padding-bottom: 8px;
  gap: 6px;
}

.node-config-field-row--compact.is-tall .node-config-field-head,
.node-config-field-row--compact.is-tall .node-config-field-value {
  width: 100%;
  min-width: 0;
}

.node-config-field-row--compact.has-field-description {
  align-items: start;
  padding-top: 8px;
  padding-bottom: 6px;
}

.node-config-field-description {
  grid-column: 1 / -1;
  margin: 0 0 4px;
  padding: 8px 10px;
  border-radius: 8px;
  border: 1px solid rgba(148, 163, 184, 0.22);
  background: linear-gradient(180deg, rgba(248, 250, 252, 0.98) 0%, rgba(241, 245, 249, 0.92) 100%);
  box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.75);
}

.node-config-field-description-text {
  margin: 0;
  font-size: 11px;
  line-height: 1.5;
  color: #64748b;
  white-space: pre-wrap;
}

.project-settings-fields .node-config-field-description {
  border-left: 3px solid rgba(59, 130, 246, 0.42);
}

.node-config-field-head {
  min-width: 0;
}

.node-config-field-label-wrap {
  display: flex;
  align-items: center;
  gap: 5px;
  min-width: 0;
  flex-wrap: wrap;
}

.node-config-field-label {
  font-size: 12px;
  font-weight: 500;
  line-height: 1.25;
  color: #334155;
}

.node-config-field-label.has-field-icon {
  display: inline-flex;
  align-items: center;
  gap: 4px;
}

.node-config-field-label.is-required::after {
  content: " *";
  color: #dc2626;
  font-weight: 700;
}

.node-config-field-key {
  display: inline-block;
  padding: 1px 5px;
  border-radius: 4px;
  border: 1px solid rgba(148, 163, 184, 0.24);
  background: #f8fafc;
  font-family: ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", monospace;
  font-size: 9px;
  font-weight: 600;
  line-height: 1.3;
  color: #94a3b8;
}

.node-config-field-value {
  min-width: 0;
  width: 100%;
}

.node-config-field-value .props-form-value-wrap {
  width: 100%;
}

.node-config-field-value input.props-form-value,
.node-config-field-value select.props-form-value,
.node-config-field-value textarea.props-form-value {
  width: 100%;
  min-width: 0;
  padding: 5px 8px;
  border: 1px solid rgba(148, 163, 184, 0.32);
  border-radius: 6px;
  background: #fff;
  color: var(--text);
  font-size: 12px;
  line-height: 1.3;
  transition: border-color 0.15s ease, box-shadow 0.15s ease;
}

.node-config-field-value input.props-form-value:focus,
.node-config-field-value select.props-form-value:focus,
.node-config-field-value textarea.props-form-value:focus {
  outline: none;
  border-color: #93c5fd;
  box-shadow: 0 0 0 2px rgba(59, 130, 246, 0.1);
}

.node-config-field-row--compact.is-tall textarea.props-form-value--textarea {
  min-height: 120px;
  max-height: min(42vh, 360px);
  resize: vertical;
  line-height: 1.45;
  font-family: ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", monospace;
  font-size: 11px;
  box-sizing: border-box;
}

.node-config-field-row--compact.is-tall textarea.props-form-value--code {
  min-height: 140px;
}

.node-config-field-row--compact.is-tall .props-form-value-wrap--boolean {
  padding: 2px 0;
}

.project-settings-fields .node-config-field-row--compact:not(.is-tall) .node-config-field-value input.props-form-value,
.project-settings-fields .node-config-field-row--compact:not(.is-tall) .node-config-field-value select.props-form-value {
  min-height: 30px;
  box-sizing: border-box;
}

.node-config-field-value .props-form-value-wrap--boolean {
  padding: 0;
}

.node-config-field-value .props-form-bool-label {
  display: inline-flex;
  align-items: center;
  gap: 6px;
  font-size: 12px;
  color: #334155;
  cursor: pointer;
}

.node-config-field-value .props-form-picker {
  display: flex;
  flex-direction: column;
  gap: 6px;
}

.node-config-field-value .props-form-file-list {
  margin-top: 0;
}

.node-config-field-row:not(.node-config-field-row--compact) {
  border: 1px solid rgba(148, 163, 184, 0.28);
  border-radius: 8px;
  background: #fff;
}

.node-config-field-compact {
  display: grid;
  grid-template-columns: auto minmax(120px, 0.9fr) minmax(120px, 0.75fr) minmax(140px, 1.2fr) auto;
  gap: 6px;
  align-items: center;
  padding: 6px 8px;
}

.node-config-field-sort {
  display: flex;
  flex-direction: column;
  gap: 2px;
}

.node-config-sort-btn,
.node-config-field-remove {
  border: 1px solid var(--border);
  border-radius: 6px;
  background: #fff;
  color: var(--text);
  font: inherit;
  font-size: 11px;
  line-height: 1;
  padding: 3px 6px;
  cursor: pointer;
}

.node-config-sort-btn:hover:not(:disabled),
.node-config-field-remove:hover {
  border-color: #93c5fd;
  background: #eff6ff;
}

.node-config-sort-btn:disabled {
  opacity: 0.35;
  cursor: default;
}

.node-config-field-remove {
  width: 28px;
  height: 28px;
  padding: 0;
  font-size: 16px;
  color: #64748b;
}

.node-config-value-wrap {
  min-width: 0;
}

.node-config-inline-input--value {
  width: 100%;
}

.node-config-value-bool {
  width: 16px;
  height: 16px;
}

.node-config-null-value {
  font-size: 11px;
  color: var(--muted);
}

.node-config-fields.props-form-fields {
  display: flex;
  flex-direction: column;
  gap: 12px;
}

.node-config-empty,
.node-config-error {
  margin: 0;
  font-size: 12px;
  color: var(--muted);
}

.props-form-file-list {
  display: flex;
  flex-direction: column;
  gap: 6px;
  margin-top: 8px;
}

.props-form-file-item {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 8px;
  padding: 6px 8px;
  border-radius: 6px;
  background: var(--surface-muted, rgba(127, 127, 127, 0.08));
}

.props-form-file-item-name {
  font-size: 12px;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.props-form-file-item-actions {
  display: flex;
  gap: 4px;
  flex-shrink: 0;
}

.props-form-file-upload {
  margin-top: 8px;
  padding: 8px 10px;
  border: 1px dashed var(--border-color, rgba(127, 127, 127, 0.35));
  border-radius: 6px;
  text-align: center;
  cursor: pointer;
  font-size: 12px;
}

.props-form-file-upload.is-uploading {
  opacity: 0.6;
  pointer-events: none;
}

.node-config-error {
  color: #b91c1c;
}

.node-config-footer {
  display: flex;
  align-items: center;
  gap: 8px;
  padding-top: 8px;
  margin-top: 2px;
  border-top: 1px solid rgba(148, 163, 184, 0.22);
}

.node-config-add-btn {
  flex-shrink: 0;
  border: 1px solid #93c5fd;
  border-radius: 7px;
  background: #eff6ff;
  color: #1d4ed8;
  font: inherit;
  font-size: 11px;
  font-weight: 600;
  padding: 5px 11px;
  cursor: pointer;
}

.node-config-add-btn:hover {
  background: #dbeafe;
}

.topic-schema-panel {
  display: flex;
  flex-direction: column;
  gap: 10px;
  padding: 0 0 16px;
  border: 0;
  border-radius: 0;
  background: transparent;
  box-shadow: none;
}

.topic-schema-head {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: 12px;
}

.topic-schema-title {
  margin: 0;
  font-size: 15px;
  font-weight: 700;
}

.topic-schema-lead {
  margin: 4px 0 0;
  font-size: 11px;
  line-height: 1.4;
  color: var(--muted);
}

.topic-schema-lead-hint {
  display: block;
  margin-top: 4px;
  color: #15803d;
}

.topic-schema-add-area {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 6px;
  padding-top: 4px;
}

.topic-schema-panel:has(.topic-schema-field-row) .topic-schema-add-area {
  margin-top: 2px;
  padding-top: 10px;
  border-top: 1px solid rgba(148, 163, 184, 0.22);
}

.topic-schema-footer {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  justify-content: flex-start;
  gap: 8px;
  width: 100%;
}

.topic-schema-add-btn {
  flex-shrink: 0;
  border: 1px solid #93c5fd;
  border-radius: 7px;
  background: #eff6ff;
  color: #1d4ed8;
  font: inherit;
  font-size: 11px;
  font-weight: 600;
  padding: 5px 11px;
  cursor: pointer;
}

.topic-schema-add-btn:hover {
  background: #dbeafe;
}

.topic-schema-add-section-btn {
  flex-shrink: 0;
  border: 1px solid rgba(99, 102, 241, 0.35);
  border-radius: 7px;
  background: linear-gradient(180deg, #eef2ff, #e0e7ff);
  color: #4338ca;
  font: inherit;
  font-size: 11px;
  font-weight: 700;
  padding: 5px 11px;
  cursor: pointer;
}

.topic-schema-add-section-btn:hover {
  background: #e0e7ff;
  border-color: rgba(99, 102, 241, 0.5);
}

.topic-schema-add-section-btn.is-active {
  background: linear-gradient(180deg, #ddd6fe, #c7d2fe);
  border-color: rgba(79, 70, 229, 0.55);
  color: #312e81;
  box-shadow: inset 0 0 0 1px rgba(79, 70, 229, 0.18);
}

.topic-schema-add-section-btn:disabled,
.topic-schema-add-section-btn.is-disabled {
  opacity: 0.45;
  cursor: not-allowed;
  background: #f1f5f9;
  border-color: #cbd5e1;
  color: #94a3b8;
  box-shadow: none;
}

.topic-schema-pending-group-hint-wrap {
  display: inline-flex;
  align-items: center;
  gap: 6px;
  flex: 1 1 auto;
  min-width: 0;
}

.topic-schema-pending-group-hint {
  flex: 1 1 auto;
  min-width: 0;
  font-size: 11px;
  font-weight: 600;
  text-align: left;
}

.topic-schema-pending-group-hint.is-active {
  color: #4338ca;
}

.topic-schema-pending-group-hint.is-default {
  color: #64748b;
  font-weight: 500;
}

.topic-schema-pending-group-reset {
  flex-shrink: 0;
  width: 20px;
  height: 20px;
  border: 1px solid rgba(99, 102, 241, 0.35);
  border-radius: 5px;
  background: #fff;
  color: #6366f1;
  font: inherit;
  font-size: 14px;
  line-height: 1;
  padding: 0;
  cursor: pointer;
}

.topic-schema-pending-group-reset:hover {
  background: #eef2ff;
  border-color: rgba(99, 102, 241, 0.55);
}

.topic-schema-pending-group-editor {
  display: flex;
  align-items: center;
  gap: 6px;
  flex: 1 1 220px;
  min-width: 0;
}

.topic-schema-pending-group-input {
  flex: 1 1 auto;
  min-width: 120px;
}

.topic-schema-pending-group-apply,
.topic-schema-pending-group-clear,
.topic-schema-pending-group-cancel {
  flex-shrink: 0;
  border: 1px solid rgba(99, 102, 241, 0.35);
  border-radius: 6px;
  background: #fff;
  color: #4338ca;
  font: inherit;
  font-size: 11px;
  font-weight: 600;
  padding: 4px 8px;
  cursor: pointer;
}

.topic-schema-pending-group-apply {
  background: linear-gradient(180deg, #eef2ff, #e0e7ff);
}

.topic-schema-pending-group-clear {
  color: #64748b;
  border-color: rgba(148, 163, 184, 0.4);
}

.topic-schema-pending-group-cancel {
  width: 24px;
  padding: 0;
  line-height: 1;
  font-size: 14px;
}

.topic-schema-pending-group-apply:hover,
.topic-schema-pending-group-clear:hover,
.topic-schema-pending-group-cancel:hover {
  background: #eef2ff;
}

.topic-schema-group-header {
  display: flex;
  align-items: center;
  gap: 10px;
  margin: 10px 0 4px;
  padding: 6px 2px;
}

.topic-schema-group-header-actions {
  display: inline-flex;
  align-items: center;
  gap: 4px;
  flex: 0 0 auto;
}

.topic-schema-group-sort-btn,
.topic-schema-group-rename-btn {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 22px;
  height: 22px;
  padding: 0;
  border: 1px solid rgba(148, 163, 184, 0.38);
  border-radius: 6px;
  background: #fff;
  color: #475569;
  font: inherit;
  font-size: 11px;
  line-height: 1;
  cursor: pointer;
}

.topic-schema-group-sort-btn:hover:not(:disabled),
.topic-schema-group-rename-btn:hover {
  border-color: rgba(99, 102, 241, 0.45);
  background: #eef2ff;
  color: #4338ca;
}

.topic-schema-group-sort-btn:disabled {
  opacity: 0.35;
  cursor: default;
}

.topic-schema-group-header::before,
.topic-schema-group-header::after {
  content: "";
  flex: 1 1 auto;
  height: 1px;
  background: linear-gradient(90deg, transparent, rgba(99, 102, 241, 0.35));
}

.topic-schema-group-header::after {
  background: linear-gradient(90deg, rgba(99, 102, 241, 0.35), transparent);
}

.topic-schema-group-header-label {
  flex: 0 0 auto;
  padding: 2px 10px;
  border-radius: 999px;
  border: 1px solid rgba(99, 102, 241, 0.28);
  background: rgba(238, 242, 255, 0.9);
  font-size: 10px;
  font-weight: 800;
  letter-spacing: 0.07em;
  text-transform: uppercase;
  color: #4338ca;
}

.topic-schema-group-header-label.is-hidden-during-rename {
  display: none;
}

.topic-schema-group-rename-editor {
  display: flex;
  align-items: center;
  gap: 6px;
  flex: 1 1 auto;
  min-width: 0;
}

.topic-schema-group-rename-input {
  flex: 1 1 auto;
  min-width: 120px;
}

.topic-schema-group-rename-apply,
.topic-schema-group-rename-cancel {
  flex-shrink: 0;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-width: 24px;
  height: 24px;
  padding: 0 8px;
  border: 1px solid rgba(99, 102, 241, 0.35);
  border-radius: 6px;
  background: #fff;
  color: #4338ca;
  font: inherit;
  font-size: 11px;
  font-weight: 600;
  cursor: pointer;
}

.topic-schema-group-rename-apply {
  background: linear-gradient(180deg, #eef2ff, #e0e7ff);
}

.topic-schema-group-rename-apply:hover,
.topic-schema-group-rename-cancel:hover {
  background: #eef2ff;
}

.topic-schema-group-header:first-child {
  margin-top: 0;
}

.topic-schema-target-tabs {
  display: flex;
  flex-direction: column;
  gap: 10px;
}

.topic-schema-target-tab-group {
  display: flex;
  flex-direction: column;
  gap: 6px;
}

.topic-schema-target-tab-group-label {
  font-size: 10px;
  font-weight: 700;
  letter-spacing: 0.06em;
  text-transform: uppercase;
  color: #64748b;
}

.topic-schema-target-tab-group-body {
  display: flex;
  flex-direction: column;
  gap: 5px;
}

.topic-schema-target-tab-row {
  display: grid;
  grid-template-columns: minmax(96px, 132px) minmax(0, 1fr);
  align-items: center;
  gap: 8px 10px;
}

.topic-schema-target-tab-row--core {
  grid-template-columns: 1fr;
}

.topic-schema-target-slot-label {
  font-size: 11px;
  font-weight: 600;
  color: #334155;
  line-height: 1.25;
}

.topic-schema-target-slot-tabs {
  display: flex;
  flex-wrap: wrap;
  gap: 5px;
  min-width: 0;
}

.topic-schema-target-tab {
  display: inline-flex;
  align-items: center;
  gap: 5px;
  border: 1px solid var(--border);
  border-radius: 999px;
  background: #fff;
  color: var(--text);
  font: inherit;
  font-size: 11px;
  padding: 4px 10px;
  cursor: pointer;
  white-space: nowrap;
  min-width: 0;
}

.topic-schema-target-tab-row--core .topic-schema-target-tab {
  width: 100%;
}

.topic-schema-target-tab-label {
  flex: 1 1 auto;
  min-width: 0;
  line-height: 1.2;
  text-align: left;
}

.topic-schema-target-tab-count {
  flex: 0 0 auto;
  margin-left: auto;
  padding-left: 8px;
  font-size: 10px;
  font-weight: 600;
  font-variant-numeric: tabular-nums;
  color: #64748b;
}

.topic-schema-target-tab:not(.is-configured) .topic-schema-target-tab-count {
  color: #94a3b8;
}

.topic-schema-target-tab.is-active .topic-schema-target-tab-count {
  color: #2563eb;
}

.topic-schema-target-tab-mark {
  width: 6px;
  height: 6px;
  border-radius: 999px;
  flex-shrink: 0;
}

.topic-schema-target-tab-mark.is-empty,
.topic-schema-target-tab:not(.is-configured) .topic-schema-target-tab-mark {
  background: #94a3b8;
  box-shadow: none;
}

.topic-schema-target-tab-mark.is-filled,
.topic-schema-target-tab.is-configured .topic-schema-target-tab-mark {
  background: #22c55e;
  box-shadow: 0 0 0 2px rgba(34, 197, 94, 0.18);
}

.topic-schema-target-tab--default:not(.is-active) {
  border-color: #cbd5e1;
  background: #f8fafc;
}

.topic-schema-target-tab.is-active {
  border-color: #2563eb;
  background: #eff6ff;
  color: #1d4ed8;
  font-weight: 600;
  box-shadow: inset 0 0 0 1px rgba(37, 99, 235, 0.12);
}

.topic-schema-target-group-mark {
  display: inline-block;
  width: 6px;
  height: 6px;
  margin-right: 6px;
  border-radius: 999px;
  vertical-align: middle;
  transform: translateY(-1px);
}

.topic-schema-target-group-mark.is-empty {
  background: #94a3b8;
}

.topic-schema-target-group-mark.is-filled {
  background: #22c55e;
  box-shadow: 0 0 0 2px rgba(34, 197, 94, 0.18);
}

.topic-schema-target-tab-row.is-configured .topic-schema-target-slot-label {
  color: #334155;
}

.topic-schema-target-tab--slot-meta {
  opacity: 0.82;
  font-size: 10px;
}

.topic-schema-target-tab--slot-sidecar {
  opacity: 0.82;
  font-size: 10px;
  font-style: italic;
}

.storage-slot-tree-row .storage-slot-schema-btn {
  align-self: center;
  margin-right: 2px;
}

.storage-slot-tree-row .storage-slot-edit-btn {
  align-self: center;
  margin-right: 2px;
  flex: 0 0 auto;
  width: auto;
  min-width: 0;
  height: 22px;
  padding: 0 6px;
  font-size: 10px;
  font-weight: 600;
  white-space: nowrap;
  opacity: 0;
}

.storage-slot-tree-row .storage-slot-shared-btn {
  align-self: center;
  margin-right: 2px;
  color: #166534;
}

.storage-slot-tree-row:hover .storage-slot-schema-btn,
.storage-slot-tree-row:has(.storage-slot-tree-item.is-active) .storage-slot-schema-btn,
.storage-slot-tree-row:hover .storage-slot-edit-btn,
.storage-slot-tree-row:has(.storage-slot-tree-item.is-active) .storage-slot-edit-btn,
.storage-slot-tree-row:hover .storage-slot-shared-btn,
.storage-slot-tree-row:has(.storage-slot-tree-item.is-active) .storage-slot-shared-btn {
  opacity: 1;
}

.storage-slot-tree-item--shared-mount {
  cursor: pointer;
}

.storage-slot-tree-item--shared-mount .media-section-tree-count {
  color: #166534;
  background: rgba(34, 197, 94, 0.14);
}

.data-hub-shared-context-banner {
  display: flex;
  align-items: center;
  justify-content: flex-end;
  gap: 10px;
  margin: 0 0 10px;
  padding: 0;
  border: 0;
  background: transparent;
}

.data-hub-shared-context-back {
  border: 1px solid rgba(22, 101, 52, 0.18);
  border-radius: 999px;
  background: #fff;
  color: #166534;
  font-size: 11px;
  font-weight: 600;
  padding: 4px 10px;
  cursor: pointer;
}

.data-hub-shared-context-back:hover {
  background: #dcfce7;
}

.topic-schema-base-card {
  border: 1px dashed rgba(148, 163, 184, 0.4);
  border-radius: 8px;
  padding: 8px 10px;
  background: rgba(248, 250, 252, 0.88);
}

.topic-schema-base-title {
  margin: 0 0 4px;
  font-size: 10px;
  font-weight: 700;
  text-transform: uppercase;
  letter-spacing: 0.04em;
  color: #64748b;
}

.topic-schema-base-fields {
  margin: 0;
  font-size: 11px;
  line-height: 1.45;
  color: #475569;
}

.topic-schema-custom-title {
  margin: 0.65rem 0 0.35rem;
  font-size: 10px;
  font-weight: 700;
  text-transform: uppercase;
  letter-spacing: 0.04em;
  color: #64748b;
}

.topic-schema-fields {
  display: flex;
  flex-direction: column;
  gap: 6px;
}

.topic-schema-field-row {
  display: flex;
  flex-direction: column;
  gap: 0;
  border: 1px solid rgba(148, 163, 184, 0.24);
  border-radius: 8px;
  background: #fff;
  overflow: hidden;
}

.topic-schema-field-row.is-settings-open {
  border-color: rgba(96, 165, 250, 0.45);
}

.topic-schema-field-row.is-configured:not(.is-settings-open) {
  border-color: rgba(74, 222, 128, 0.55);
  background: linear-gradient(180deg, #ffffff 0%, #f7fef9 100%);
}

.topic-schema-field-row.is-configured.is-settings-open {
  border-color: rgba(34, 197, 94, 0.55);
  box-shadow: inset 0 0 0 1px rgba(34, 197, 94, 0.12);
}

.topic-schema-field-compact {
  display: grid;
  grid-template-columns: auto minmax(88px, 0.75fr) minmax(92px, 0.9fr) minmax(108px, 1fr) minmax(120px, 1.2fr) auto auto;
  gap: 6px;
  align-items: center;
  padding: 5px 6px;
}

.topic-schema-inline-select--group {
  font-size: 10px;
  color: #475569;
}

.topic-schema-field-sort {
  display: flex;
  flex-direction: column;
  gap: 1px;
}

.topic-schema-sort-btn {
  width: 20px;
  height: 16px;
  border: 1px solid rgba(148, 163, 184, 0.32);
  border-radius: 4px;
  background: #f8fafc;
  color: #64748b;
  font-size: 10px;
  line-height: 1;
  padding: 0;
  cursor: pointer;
}

.topic-schema-sort-btn:hover:not(:disabled) {
  background: #eff6ff;
  color: #1d4ed8;
  border-color: #93c5fd;
}

.topic-schema-sort-btn:disabled {
  opacity: 0.35;
  cursor: default;
}

.topic-schema-inline-input,
.topic-schema-inline-select,
.topic-schema-setting input:not([type="checkbox"]),
.topic-schema-setting select,
.topic-schema-setting textarea {
  width: 100%;
  min-width: 0;
  border: 1px solid rgba(148, 163, 184, 0.32);
  border-radius: 6px;
  padding: 4px 7px;
  font: inherit;
  font-size: 11px;
  color: var(--text);
  background: #fff;
  box-sizing: border-box;
}

.topic-schema-inline-input:focus,
.topic-schema-inline-select:focus,
.topic-schema-setting input:not([type="checkbox"]):focus,
.topic-schema-setting select:focus,
.topic-schema-setting textarea:focus {
  outline: none;
  border-color: #60a5fa;
  box-shadow: 0 0 0 2px rgba(59, 130, 246, 0.12);
}

.topic-schema-settings-toggle {
  display: inline-flex;
  align-items: center;
  gap: 5px;
  border: 1px solid rgba(148, 163, 184, 0.32);
  border-radius: 6px;
  background: #f8fafc;
  color: #475569;
  font: inherit;
  font-size: 10px;
  font-weight: 600;
  line-height: 1.2;
  padding: 4px 7px;
  white-space: nowrap;
  cursor: pointer;
}

.topic-schema-settings-toggle-label {
  line-height: 1;
}

.topic-schema-settings-toggle-chevron {
  display: inline-block;
  width: 6px;
  height: 6px;
  border-right: 1.5px solid currentColor;
  border-bottom: 1.5px solid currentColor;
  transform: rotate(-45deg);
  transition: transform 0.15s ease;
  margin-top: -1px;
  flex-shrink: 0;
}

.topic-schema-settings-toggle.is-expanded .topic-schema-settings-toggle-chevron {
  transform: rotate(45deg);
  margin-top: -2px;
}

.topic-schema-field-row.is-settings-open .topic-schema-settings-toggle {
  border-color: #93c5fd;
  background: #eff6ff;
  color: #1d4ed8;
}

.topic-schema-settings-toggle:hover {
  background: #eff6ff;
  color: #1d4ed8;
}

.topic-schema-settings-toggle.is-configured {
  border-color: #86efac;
  background: #f0fdf4;
  color: #166534;
}

.topic-schema-field-row.is-settings-open .topic-schema-settings-toggle.is-configured {
  border-color: #4ade80;
  background: #dcfce7;
  color: #14532d;
}

.topic-schema-setting {
  display: flex;
  flex-direction: column;
  gap: 3px;
  font-size: 10px;
  font-weight: 600;
  color: #64748b;
}

.topic-schema-setting-label {
  line-height: 1.2;
}

.topic-schema-field-settings {
  display: grid;
  grid-template-columns: repeat(auto-fill, minmax(140px, 1fr));
  gap: 6px;
  padding: 8px 8px 10px;
  border-top: 1px dashed rgba(148, 163, 184, 0.28);
  background: rgba(248, 250, 252, 0.65);
}

.topic-schema-field-settings.is-empty,
.topic-schema-field-settings.is-collapsed {
  display: none;
}

.topic-schema-setting textarea {
  resize: vertical;
  min-height: 44px;
}

.topic-schema-setting input[type="checkbox"] {
  width: 14px;
  height: 14px;
  margin-top: 1px;
}

.topic-schema-field-remove {
  border: 0;
  border-radius: 6px;
  background: transparent;
  color: #94a3b8;
  font-size: 16px;
  line-height: 1;
  width: 24px;
  height: 24px;
  padding: 0;
  cursor: pointer;
}

.topic-schema-field-remove:hover {
  color: #dc2626;
  background: #fef2f2;
}

.topic-schema-enum-options {
  display: flex;
  flex-direction: column;
  gap: 8px;
  width: 100%;
}

.topic-schema-enum-options-hint {
  margin: 0;
  font-size: 11px;
  color: var(--muted);
}

.topic-schema-enum-options-list {
  display: flex;
  flex-direction: column;
  gap: 6px;
}

.topic-schema-enum-options-row {
  display: grid;
  grid-template-columns: minmax(88px, 0.9fr) minmax(120px, 1.4fr);
  gap: 6px;
}

.topic-schema-enum-options-add {
  align-self: flex-start;
  border: 1px dashed #cbd5e1;
  border-radius: 8px;
  background: #f8fafc;
  color: #475569;
  font-size: 12px;
  padding: 4px 10px;
  cursor: pointer;
}

.props-form-value-wrap--radio .props-form-radio-list,
.props-form-value-wrap--enum-checkbox .props-form-enum-checkbox-list {
  display: flex;
  flex-wrap: wrap;
  gap: 8px 14px;
}

.props-form-radio-label,
.props-form-enum-checkbox-label {
  display: inline-flex;
  align-items: center;
  gap: 6px;
  font-size: 13px;
  color: #334155;
}

.props-form-value--select-multiple {
  min-height: 88px;
}

.topic-schema-empty {
  margin: 0;
  font-size: 12px;
  color: var(--muted);
  text-align: center;
  padding: 4px 0 0;
}

.agent-graph-content {
  flex: 1;
  min-height: 420px;
  width: 100%;
  border: 1px solid rgba(148, 163, 184, 0.18);
  border-radius: 14px;
  background: #070b14;
  box-shadow:
    inset 0 0 0 1px rgba(255, 255, 255, 0.04),
    0 16px 40px rgba(2, 6, 23, 0.45);
  overflow: hidden;
}

.agent-graph-content .external-graph-wrap {
  min-height: 100%;
  height: 100%;
  border: none;
  border-radius: 14px;
}

.agent-map-pane {
  background: #0b1220;
}

.agent-map-pane .agent-canvas-eyebrow {
  color: #818cf8;
}

.agent-map-pane .agent-canvas-title {
  color: #f8fafc;
}

.agent-map-pane .agent-canvas-lead {
  color: #94a3b8;
}

.agent-map-stage {
  position: relative;
  flex: 1;
  min-height: min(680px, calc(100vh - 180px));
  border-radius: 16px;
  overflow: hidden;
  background:
    radial-gradient(ellipse 55% 45% at 50% 42%, rgba(56, 189, 248, 0.14), transparent 60%),
    radial-gradient(ellipse 40% 35% at 18% 78%, rgba(99, 102, 241, 0.12), transparent 55%),
    radial-gradient(ellipse 35% 30% at 82% 22%, rgba(167, 139, 250, 0.1), transparent 50%),
    linear-gradient(165deg, #0f172a 0%, #111827 45%, #0b1220 100%);
  box-shadow:
    inset 0 0 0 1px rgba(148, 163, 184, 0.12),
    0 20px 50px rgba(2, 6, 23, 0.35);
}

.agent-map-links {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  pointer-events: none;
  z-index: 1;
}

.agent-map-link {
  stroke: rgba(148, 163, 184, 0.45);
  stroke-width: 1.5;
  stroke-dasharray: 6 5;
}

.agent-map-zones {
  position: relative;
  z-index: 2;
  display: grid;
  grid-template-columns: minmax(0, 1fr) minmax(140px, 180px) minmax(0, 1fr);
  grid-template-rows: auto minmax(120px, 1fr) auto;
  grid-template-areas:
    "zone-core zone-memory zone-projects"
    ". . ."
    "zone-registry . zone-nodes";
  gap: 14px 16px;
  min-height: inherit;
  padding: 18px;
  box-sizing: border-box;
}

.agent-map-zone {
  display: flex;
  flex-direction: column;
  min-width: 0;
  border-radius: 12px;
  border: 1px solid rgba(148, 163, 184, 0.22);
  background: rgba(15, 23, 42, 0.72);
  backdrop-filter: blur(8px);
  box-shadow: 0 8px 24px rgba(2, 6, 23, 0.35);
  overflow: hidden;
}

.agent-map-zone--core { grid-area: zone-core; align-self: start; }
.agent-map-zone--memory { grid-area: zone-memory; align-self: start; }
.agent-map-zone--projects { grid-area: zone-projects; align-self: start; }
.agent-map-zone--registry { grid-area: zone-registry; align-self: end; }
.agent-map-zone--nodes { grid-area: zone-nodes; align-self: end; }

.agent-map-zone-head {
  display: flex;
  align-items: center;
  gap: 8px;
  padding: 8px 10px;
  border-bottom: 1px solid rgba(148, 163, 184, 0.14);
  background: rgba(30, 41, 59, 0.55);
}

.agent-map-zone-icon {
  font-size: 14px;
  line-height: 1;
}

.agent-map-zone-title {
  font-size: 11px;
  font-weight: 700;
  letter-spacing: 0.07em;
  text-transform: uppercase;
  color: #cbd5e1;
}

.agent-map-zone-body {
  display: flex;
  flex-direction: column;
  gap: 6px;
  padding: 8px;
  max-height: 180px;
  overflow: auto;
}

.agent-map-tile {
  display: flex;
  flex-direction: column;
  gap: 2px;
  width: 100%;
  padding: 7px 8px;
  border: 1px solid rgba(100, 116, 139, 0.28);
  border-radius: 8px;
  background: rgba(15, 23, 42, 0.85);
  color: #e2e8f0;
  font: inherit;
  text-align: left;
  cursor: pointer;
  transition: border-color 0.15s ease, background 0.15s ease, transform 0.15s ease;
}

.agent-map-tile:hover,
.agent-map-tile:focus-visible {
  border-color: rgba(96, 165, 250, 0.65);
  background: rgba(30, 58, 138, 0.35);
  outline: none;
  transform: translateY(-1px);
}

.agent-map-tile.is-active {
  border-color: rgba(74, 222, 128, 0.55);
  background: rgba(6, 78, 59, 0.28);
}

.agent-map-tile-label {
  font-size: 12px;
  font-weight: 600;
  line-height: 1.3;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.agent-map-tile-sub {
  font-size: 10px;
  font-family: ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, monospace;
  color: #94a3b8;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.agent-map-zone-empty {
  padding: 10px 8px;
  font-size: 11px;
  color: #64748b;
}

.agent-map-hub {
  position: absolute;
  left: 50%;
  top: 54%;
  z-index: 3;
  transform: translate(-50%, -50%);
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 6px;
  width: 148px;
  padding: 14px 12px;
  border-radius: 999px;
  border: 1px solid rgba(125, 211, 252, 0.35);
  background: radial-gradient(circle at 50% 30%, rgba(56, 189, 248, 0.25), rgba(15, 23, 42, 0.92) 65%);
  box-shadow:
    0 0 40px rgba(56, 189, 248, 0.18),
    0 12px 32px rgba(2, 6, 23, 0.45);
  pointer-events: none;
}

.agent-map-hub-avatar {
  width: 52px;
  height: 52px;
  border-radius: 50%;
  display: grid;
  place-items: center;
  font-size: 26px;
  background: rgba(15, 23, 42, 0.65);
  border: 1px solid rgba(148, 163, 184, 0.25);
  overflow: hidden;
}

.agent-map-hub-avatar img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}

.agent-map-hub-title {
  font-size: 13px;
  font-weight: 700;
  color: #f8fafc;
  text-align: center;
  line-height: 1.25;
}

.agent-map-hub-sub {
  font-size: 10px;
  color: #94a3b8;
  text-transform: uppercase;
  letter-spacing: 0.06em;
}

@media (max-width: 900px) {
  .agent-map-zones {
    grid-template-columns: 1fr;
    grid-template-areas:
      "zone-core"
      "zone-memory"
      "zone-projects"
      "zone-registry"
      "zone-nodes";
  }

  .agent-map-hub {
    display: none;
  }

  .agent-map-links {
    display: none;
  }
}

.agent-map2-pane {
  align-items: stretch;
  justify-content: flex-start;
  background:
    radial-gradient(ellipse 50% 40% at 12% 0%, rgba(56, 189, 248, 0.08), transparent 55%),
    linear-gradient(180deg, #f8fafc 0%, #eef2ff 100%);
}

.agent-map2-head {
  align-items: center;
}

.agent-map2-head-copy {
  min-width: 0;
}

.agent-map2-head-actions {
  display: flex;
  align-items: center;
  flex-wrap: wrap;
  gap: 8px;
  justify-content: flex-end;
}

.agent-map2-stats {
  justify-content: flex-end;
}

.agent-map2-legend--inline {
  display: inline-flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 8px 12px;
  margin: 0;
  padding: 6px 10px;
  border-radius: 8px;
  border: 1px solid rgba(148, 163, 184, 0.28);
  background: rgba(255, 255, 255, 0.88);
}

.agent-map2-legend--inline .agent-map2-legend-item {
  font-size: 11px;
  color: #475569;
}

.agent-map2-legend {
  display: flex;
  flex-direction: column;
  gap: 8px;
  width: 100%;
  padding: 10px 12px;
  border-radius: 10px;
  border: 1px solid rgba(148, 163, 184, 0.28);
  background: rgba(255, 255, 255, 0.88);
  box-shadow: 0 4px 14px rgba(15, 23, 42, 0.05);
}

.agent-map2-legend-item {
  display: flex;
  align-items: center;
  gap: 10px;
  font-size: 11px;
  line-height: 1.35;
  color: #334155;
}

.agent-map2-legend-line {
  flex-shrink: 0;
  width: 24px;
  height: 0;
  border-top-width: 3px;
  border-top-style: solid;
}

.agent-map2-legend-line--hard {
  border-top-color: #38bdf8;
}

.agent-map2-legend-line--soft {
  border-top-color: #a78bfa;
  border-top-style: dashed;
}

.agent-map2-legend-note {
  padding-top: 8px;
  border-top: 1px dashed rgba(148, 163, 184, 0.35);
  font-size: 10px;
  line-height: 1.4;
  color: #64748b;
}

.agent-map2-content {
  flex: 1;
  min-height: 420px;
  width: 100%;
  border: 1px solid rgba(148, 163, 184, 0.18);
  border-radius: 14px;
  background: #070b14;
  box-shadow:
    inset 0 0 0 1px rgba(255, 255, 255, 0.04),
    0 16px 40px rgba(2, 6, 23, 0.18);
  overflow: hidden;
}

.agent-map2-viewport {
  width: 100%;
  height: 100%;
  min-height: min(720px, calc(100vh - 170px));
  overflow: hidden;
  cursor: grab;
  touch-action: none;
  background:
    radial-gradient(circle at 50% 0%, rgba(56, 189, 248, 0.08), transparent 42%),
    linear-gradient(180deg, #0f172a 0%, #111827 100%);
}

.agent-map2-viewport.is-panning {
  cursor: grabbing;
}

.agent-map2-canvas {
  position: relative;
  transform-origin: 0 0;
  will-change: transform;
}

.agent-map2-links {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  pointer-events: none;
  overflow: visible;
}

.agent-map2-link--hard {
  fill: none;
  stroke: rgba(56, 189, 248, 0.72);
  stroke-width: 2;
}

.agent-map2-link--soft {
  fill: none;
  stroke: rgba(167, 139, 250, 0.82);
  stroke-width: 1.75;
  stroke-dasharray: 7 6;
}

.agent-map2-nodes {
  position: relative;
  z-index: 1;
}

.agent-map2-node {
  position: absolute;
  display: flex;
  flex-direction: column;
  gap: 3px;
  width: 136px;
  padding: 8px 9px;
  border-radius: 10px;
  border: 1.5px solid rgba(148, 163, 184, 0.45);
  background: rgba(15, 23, 42, 0.92);
  color: #e2e8f0;
  font: inherit;
  text-align: left;
  cursor: pointer;
  box-shadow: 0 8px 20px rgba(2, 6, 23, 0.35);
  transition: transform 0.15s ease, border-color 0.15s ease, box-shadow 0.15s ease;
}

.agent-map2-node:hover,
.agent-map2-node:focus-visible {
  transform: translateY(-2px);
  outline: none;
  box-shadow: 0 12px 28px rgba(2, 6, 23, 0.45);
}

.agent-map2-node--folder {
  border-color: rgba(250, 204, 21, 0.75);
  background: rgba(30, 27, 10, 0.92);
}

.agent-map2-node--folder:hover,
.agent-map2-node--folder:focus-visible {
  border-color: rgba(253, 224, 71, 0.95);
}

.agent-map2-node--file {
  border-color: rgba(156, 163, 175, 0.75);
}

.agent-map2-node--file:hover,
.agent-map2-node--file:focus-visible {
  border-color: rgba(209, 213, 219, 0.95);
}

.agent-map2-node--group {
  border-style: dashed;
  border-color: rgba(250, 204, 21, 0.45);
  cursor: default;
}

.agent-map2-node:disabled {
  opacity: 0.78;
  cursor: default;
  transform: none;
  box-shadow: 0 8px 20px rgba(2, 6, 23, 0.25);
}

.agent-map2-node--root {
  border-color: rgba(56, 189, 248, 0.75);
  background: rgba(8, 47, 73, 0.55);
}

.agent-map2-node-kind {
  font-size: 9px;
  font-weight: 700;
  letter-spacing: 0.08em;
  text-transform: uppercase;
  color: #94a3b8;
}

.agent-map2-node--folder .agent-map2-node-kind {
  color: #fde047;
}

.agent-map2-node-label {
  font-size: 12px;
  font-weight: 600;
  line-height: 1.25;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.agent-map2-node-sub {
  font-size: 9px;
  font-family: ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, monospace;
  color: #64748b;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.agent-map2-node-preview {
  width: 100%;
  height: 44px;
  margin-bottom: 2px;
  border-radius: 6px;
  object-fit: cover;
  background: rgba(15, 23, 42, 0.65);
}

.agent-map2-empty {
  display: grid;
  place-items: center;
  min-height: 240px;
  padding: 24px;
  color: #94a3b8;
  font-size: 13px;
}

@media (max-width: 900px) {
  .agent-map2-head {
    flex-direction: column;
    align-items: stretch;
  }

  .agent-map2-head-actions {
    justify-content: flex-start;
  }

  .agent-map2-stats {
    justify-content: flex-start;
  }
}

.agent-map3-viewport {
  width: 100%;
  flex: 1;
  min-height: min(720px, calc(100vh - 170px));
  overflow: auto;
  border-radius: 14px;
  border: 1px solid rgba(148, 163, 184, 0.28);
  background: rgba(255, 255, 255, 0.72);
  box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.9);
}

.agent-map3-board {
  display: flex;
  flex-direction: column;
  gap: 14px;
  padding: 16px;
  min-width: min(100%, 640px);
}

.agent-map3-empty {
  display: grid;
  place-items: center;
  min-height: 240px;
  padding: 24px;
  color: #94a3b8;
  font-size: 13px;
  text-align: center;
}

.agent-map3-lane {
  border: 1px solid rgba(148, 163, 184, 0.32);
  border-radius: 14px;
  background: #fff;
  box-shadow: 0 6px 20px rgba(15, 23, 42, 0.05);
  overflow: hidden;
}

.agent-map3-lane-head {
  display: flex;
  flex-wrap: wrap;
  align-items: baseline;
  justify-content: space-between;
  gap: 6px 12px;
  padding: 10px 14px;
  border-bottom: 1px solid rgba(148, 163, 184, 0.2);
  background: linear-gradient(180deg, #f8fafc 0%, #f1f5f9 100%);
}

.agent-map3-lane-title {
  margin: 0;
  font-size: 14px;
  font-weight: 800;
  color: #0f172a;
}

.agent-map3-lane-storage {
  font-size: 11px;
  font-weight: 600;
  color: #64748b;
  font-family: ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, monospace;
}

.agent-map3-lane-warn {
  margin: 0;
  padding: 8px 14px;
  font-size: 11px;
  line-height: 1.4;
  color: #b45309;
  background: #fffbeb;
  border-bottom: 1px solid #fde68a;
}

.agent-map3-track {
  display: flex;
  flex-wrap: wrap;
  align-items: stretch;
  gap: 12px 16px;
  padding: 14px;
}

.agent-map3-hub {
  flex: 0 0 auto;
  position: relative;
}

.agent-map3-track.has-topics .agent-map3-hub::after {
  content: "";
  position: absolute;
  top: 50%;
  right: -16px;
  width: 16px;
  height: 2px;
  background: linear-gradient(90deg, #38bdf8, #93c5fd);
  transform: translateY(-50%);
  pointer-events: none;
}

.agent-map3-topics {
  display: flex;
  flex-wrap: wrap;
  align-items: stretch;
  gap: 10px;
  flex: 1 1 280px;
  min-width: 0;
  padding-left: 8px;
  border-left: 2px dashed rgba(56, 189, 248, 0.35);
}

.agent-map3-topic-wrap {
  flex: 0 1 auto;
}

.agent-map3-slot {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  gap: 4px;
  min-width: 132px;
  max-width: 200px;
  padding: 10px 12px;
  border: 1px solid rgba(148, 163, 184, 0.4);
  border-radius: 12px;
  background: #fff;
  color: inherit;
  text-align: left;
  cursor: pointer;
  transition: border-color 0.15s ease, box-shadow 0.15s ease, transform 0.15s ease;
}

.agent-map3-slot:hover,
.agent-map3-slot:focus-visible {
  border-color: #60a5fa;
  box-shadow: 0 8px 20px rgba(37, 99, 235, 0.12);
  transform: translateY(-1px);
  outline: none;
}

.agent-map3-slot.is-area {
  border-color: #93c5fd;
  background: linear-gradient(180deg, #eff6ff 0%, #fff 100%);
  min-width: 148px;
}

.agent-map3-slot.is-topic {
  border-color: #e2e8f0;
}

.agent-map3-slot.is-empty {
  border-style: dashed;
  background: #fafafa;
  opacity: 0.92;
}

.agent-map3-slot-kind {
  font-size: 9px;
  font-weight: 700;
  letter-spacing: 0.05em;
  text-transform: uppercase;
  color: #64748b;
}

.agent-map3-slot.is-area .agent-map3-slot-kind {
  color: #1d4ed8;
}

.agent-map3-slot-title {
  font-size: 13px;
  font-weight: 700;
  line-height: 1.25;
  color: #0f172a;
}

.agent-map3-slot-path {
  font-size: 10px;
  font-weight: 600;
  color: #94a3b8;
  font-family: ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, monospace;
}

.agent-map3-layer-dots {
  display: flex;
  gap: 5px;
  margin-top: 2px;
}

.agent-map3-layer-dot {
  width: 8px;
  height: 8px;
  border-radius: 999px;
  background: #e2e8f0;
  box-shadow: inset 0 0 0 1px rgba(148, 163, 184, 0.35);
}

.agent-map3-layer-dot.is-on {
  background: #22c55e;
  box-shadow: 0 0 0 1px rgba(34, 197, 94, 0.35);
}

.agent-map3-slot-meta {
  font-size: 10px;
  font-weight: 600;
  color: #64748b;
}

.agent-map3-lane-empty,
.agent-map3-orphans {
  margin: 0;
  padding: 8px 14px 12px;
  font-size: 11px;
  color: #64748b;
}

.agent-map3-orphans code {
  font-size: 10px;
}

@media (max-width: 900px) {
  .agent-map3-head {
    flex-direction: column;
  }

  .agent-map3-stats {
    justify-content: flex-start;
  }

  .agent-map3-hub::after {
    display: none;
  }

  .agent-map3-topics {
    border-left: 0;
    padding-left: 0;
    width: 100%;
  }
}

.agent-dashboard-stats {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 12px;
  width: 100%;
}

.agent-dashboard-stat {
  padding: 14px 16px;
  border-radius: 14px;
  border: 1px solid rgba(255, 255, 255, 0.75);
  background: rgba(255, 255, 255, 0.72);
  backdrop-filter: blur(10px);
  box-shadow: 0 8px 24px rgba(59, 130, 246, 0.06);
  text-align: left;
}

.agent-dashboard-stat-value {
  display: block;
  font-size: 28px;
  font-weight: 800;
  line-height: 1;
  color: #1e3a8a;
  letter-spacing: -0.03em;
}

.agent-dashboard-stat-label {
  display: block;
  margin-top: 6px;
  font-size: 12px;
  font-weight: 600;
  color: #64748b;
}

@media (max-width: 860px) {
  .agent-dashboard-stats {
    grid-template-columns: 1fr;
  }
}

.home-dashboard-idea {
  width: 100%;
  display: flex;
  flex-direction: column;
  gap: 16px;
  text-align: left;
}

.home-dashboard-idea-head {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: 16px;
}

.home-dashboard-idea-copy {
  min-width: 0;
}

.home-dashboard-idea-eyebrow {
  margin: 0 0 6px;
  font-size: 11px;
  font-weight: 700;
  letter-spacing: 0.08em;
  text-transform: uppercase;
  color: #6366f1;
}

.home-dashboard-idea-title {
  margin: 0 0 8px;
  font-size: 22px;
  font-weight: 800;
  letter-spacing: -0.02em;
  color: #1e3a8a;
}

.home-dashboard-idea-lead {
  margin: 0;
  max-width: 52ch;
  font-size: 14px;
  line-height: 1.55;
  color: #64748b;
}

.home-dashboard-idea-badge {
  flex: 0 0 auto;
  padding: 6px 10px;
  border-radius: 999px;
  border: 1px dashed rgba(99, 102, 241, 0.35);
  background: rgba(238, 242, 255, 0.72);
  font-size: 11px;
  font-weight: 700;
  letter-spacing: 0.04em;
  text-transform: uppercase;
  color: #4338ca;
}

.home-dashboard-idea-stats {
  margin: 0;
}

.home-dashboard-idea-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 14px;
}

.home-dashboard-widget {
  padding: 16px;
  border-radius: 16px;
  border: 1px solid rgba(255, 255, 255, 0.75);
  background: rgba(255, 255, 255, 0.72);
  backdrop-filter: blur(10px);
  box-shadow:
    0 1px 2px rgba(15, 23, 42, 0.04),
    0 12px 32px rgba(59, 130, 246, 0.06);
}

.home-dashboard-widget--wide {
  grid-column: 1 / -1;
}

.home-dashboard-widget-head {
  margin-bottom: 14px;
}

.home-dashboard-widget-title {
  margin: 0;
  font-size: 14px;
  font-weight: 700;
  color: #1e293b;
}

.home-dashboard-widget-note {
  margin: 4px 0 0;
  font-size: 11px;
  font-weight: 600;
  color: #94a3b8;
}

.home-dashboard-widget-body {
  min-height: 0;
}

.home-dashboard-bars {
  display: flex;
  flex-direction: column;
  gap: 12px;
}

.home-dashboard-bar-row {
  display: grid;
  grid-template-columns: minmax(0, 1fr) minmax(0, 2fr) auto;
  gap: 10px;
  align-items: center;
}

.home-dashboard-bar-label {
  font-size: 12px;
  font-weight: 600;
  color: #475569;
}

.home-dashboard-bar-track {
  height: 10px;
  border-radius: 999px;
  background: rgba(226, 232, 240, 0.9);
  overflow: hidden;
}

.home-dashboard-bar-fill {
  display: block;
  height: 100%;
  border-radius: inherit;
  transition: width 0.35s ease;
}

.home-dashboard-bar-fill--blue {
  background: linear-gradient(90deg, #3b82f6, #60a5fa);
}

.home-dashboard-bar-fill--violet {
  background: linear-gradient(90deg, #7c3aed, #a78bfa);
}

.home-dashboard-bar-fill--slate {
  background: linear-gradient(90deg, #64748b, #94a3b8);
}

.home-dashboard-bar-value {
  font-size: 13px;
  font-weight: 700;
  color: #1e3a8a;
  font-variant-numeric: tabular-nums;
}

.home-dashboard-donut-wrap {
  display: flex;
  align-items: center;
  gap: 16px;
}

.home-dashboard-donut {
  flex: 0 0 88px;
  width: 88px;
  height: 88px;
  border-radius: 50%;
  background: conic-gradient(#3b82f6 0 42%, #8b5cf6 42% 72%, #e2e8f0 72% 100%);
  -webkit-mask: radial-gradient(circle at center, transparent 52%, #000 53%);
  mask: radial-gradient(circle at center, transparent 52%, #000 53%);
}

.home-dashboard-donut-legend {
  margin: 0;
  padding: 0;
  list-style: none;
  display: flex;
  flex-direction: column;
  gap: 8px;
  font-size: 12px;
  color: #475569;
}

.home-dashboard-donut-legend li {
  display: flex;
  align-items: center;
  gap: 8px;
}

.home-dashboard-legend-dot {
  width: 8px;
  height: 8px;
  border-radius: 50%;
  flex: 0 0 8px;
}

.home-dashboard-legend-dot--blue {
  background: #3b82f6;
}

.home-dashboard-legend-dot--violet {
  background: #8b5cf6;
}

.home-dashboard-legend-dot--slate {
  background: #cbd5e1;
}

.home-dashboard-legend-value {
  margin-left: auto;
  font-weight: 700;
  color: #334155;
  font-variant-numeric: tabular-nums;
}

.home-dashboard-sparkline-wrap {
  display: flex;
  flex-direction: column;
  gap: 10px;
}

.home-dashboard-sparkline {
  display: block;
  width: 100%;
  height: auto;
}

.home-dashboard-sparkline-area {
  fill: rgba(59, 130, 246, 0.12);
}

.home-dashboard-sparkline-line {
  fill: none;
  stroke: #3b82f6;
  stroke-width: 2.5;
  stroke-linecap: round;
  stroke-linejoin: round;
}

.home-dashboard-sparkline-caption {
  margin: 0;
  font-size: 11px;
  line-height: 1.45;
  color: #94a3b8;
}

.home-dashboard-roadmap {
  margin: 0;
  padding: 0;
  list-style: none;
  display: flex;
  flex-direction: column;
  gap: 10px;
}

.home-dashboard-roadmap-item {
  position: relative;
  padding-left: 18px;
  font-size: 13px;
  line-height: 1.45;
  color: #475569;
}

.home-dashboard-roadmap-item::before {
  content: "";
  position: absolute;
  left: 0;
  top: 0.55em;
  width: 7px;
  height: 7px;
  border-radius: 50%;
  background: linear-gradient(135deg, #6366f1, #3b82f6);
  opacity: 0.55;
}

@media (max-width: 860px) {
  .home-dashboard-idea-head {
    flex-direction: column;
  }

  .home-dashboard-idea-grid {
    grid-template-columns: 1fr;
  }

  .home-dashboard-widget--wide {
    grid-column: auto;
  }

  .home-dashboard-donut-wrap {
    flex-direction: column;
    align-items: flex-start;
  }

  .home-dashboard-bar-row {
    grid-template-columns: 1fr;
    gap: 6px;
  }

  .home-dashboard-bar-value {
    justify-self: start;
  }
}

.agent-git-pane {
  box-sizing: border-box;
}

.agent-git-content {
  display: flex;
  flex-direction: column;
  gap: 16px;
  overflow: visible;
}

.agent-git-shell {
  display: flex;
  flex-direction: column;
  gap: 18px;
}

.agent-git-changes-mount {
  display: flex;
  flex-direction: column;
  gap: 12px;
  min-width: 0;
}

.agent-git-change-search-wrap {
  width: 100%;
  max-width: none;
  margin: 0 0 4px;
}

.agent-git-search-bar {
  min-height: 39px;
  padding: 0 12px;
  border-radius: 10px;
  border: 1px solid rgba(148, 163, 184, 0.45);
  background: #fff;
}

.agent-git-search-bar:focus-within {
  outline: 2px solid rgba(59, 130, 246, 0.35);
  outline-offset: 1px;
  border-color: #93c5fd;
  box-shadow: none;
}

.agent-git-search-bar .agent-git-change-search,
.agent-git-search-bar .agent-git-commit-search {
  flex: 1 1 auto;
  min-width: 0;
  width: 100%;
  box-sizing: border-box;
  padding: 9px 0;
  border: none;
  border-radius: 0;
  font-size: 14px;
  font-family: inherit;
  background: transparent;
}

.agent-git-search-bar .agent-git-change-search:focus,
.agent-git-search-bar .agent-git-commit-search:focus {
  outline: none;
  border: none;
  box-shadow: none;
}

.agent-git-search-icon {
  flex: 0 0 auto;
  margin-left: 4px;
  color: #94a3b8;
  pointer-events: none;
}

.agent-git-search-bar:focus-within .agent-git-search-icon {
  color: #64748b;
}

.agent-git-change-search-empty {
  margin: 0;
  padding: 10px 12px;
  border-radius: 8px;
  background: #f8fafc;
  border: 1px dashed rgba(148, 163, 184, 0.45);
  font-size: 13px;
  color: #64748b;
}

.agent-git-change-search-empty.hidden,
.agent-git-group--changes.hidden,
.agent-git-change-item.hidden {
  display: none;
}

.agent-git-commits-mount {
  display: flex;
  flex-direction: column;
  gap: 12px;
  min-width: 0;
}

.agent-git-commit-search-wrap {
  width: 100%;
  max-width: none;
}

.agent-git-commit-search-empty {
  margin: 0;
  padding: 10px 12px;
  border-radius: 8px;
  background: #f8fafc;
  border: 1px dashed rgba(148, 163, 184, 0.45);
  font-size: 13px;
  color: #64748b;
}

.agent-git-commit-search-empty.hidden,
.agent-git-group--commits.hidden,
.agent-git-commit-row.hidden {
  display: none;
}

.agent-git-meta-bar {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: 12px;
  width: 100%;
  box-sizing: border-box;
}

.agent-git-meta-primary {
  flex: 1 1 auto;
  min-width: 0;
  display: flex;
  flex-direction: column;
  gap: 6px;
}

.agent-git-meta-status {
  margin: 0;
  font-size: 0.88rem;
  line-height: 1.45;
  color: var(--text-muted, #64748b);
}

.agent-git-extensions-legend {
  min-width: 0;
  display: flex;
  flex-direction: column;
  gap: 8px;
}

.agent-git-extensions-table-wrap {
  width: 100%;
  min-width: 0;
  overflow-x: auto;
  border: 1px solid var(--border, #e2e8f0);
  border-radius: 8px;
  background: var(--panel, #fff);
}

.agent-git-extensions-table {
  width: 100%;
  border-collapse: collapse;
  border-spacing: 0;
  table-layout: auto;
  font-size: 12px;
  line-height: 1.45;
  text-align: left;
}

.agent-git-extensions-table thead th {
  padding: 8px 10px;
  text-align: left;
  vertical-align: bottom;
  font-size: 10px;
  font-weight: 700;
  letter-spacing: 0.06em;
  text-transform: uppercase;
  color: #64748b;
  background: #f8fafc;
  border-bottom: 1px solid #e2e8f0;
}

.agent-git-extensions-table tbody th,
.agent-git-extensions-table tbody td {
  padding: 8px 10px;
  text-align: left;
  vertical-align: top;
  border-top: 1px solid #eef2f7;
  color: #0f172a;
}

.agent-git-extensions-table tbody tr:first-child th,
.agent-git-extensions-table tbody tr:first-child td {
  border-top: none;
}

.agent-git-extensions-type {
  width: 1%;
  white-space: nowrap;
  font-weight: 600;
  font-size: 12px;
  line-height: 1.45;
  color: #334155;
  text-transform: none;
  letter-spacing: normal;
  background: #fafbfc;
}

.agent-git-extensions-cell {
  width: auto;
  min-width: 0;
}

.agent-git-extensions-table .agent-git-extensions-limit-col {
  width: 1%;
  white-space: nowrap;
}

.agent-git-extensions-table .agent-git-extensions-count-col {
  width: 1%;
  white-space: nowrap;
  text-align: left;
}

.agent-git-extensions-count {
  width: 1%;
  white-space: nowrap;
  text-align: left;
  font-variant-numeric: tabular-nums;
  font-weight: 600;
  font-size: 12px;
  color: #0f172a;
}

.agent-git-extensions-count.is-zero {
  font-weight: 500;
  color: #94a3b8;
}

.agent-git-extensions-count.is-alert {
  color: #b91c1c;
}

.agent-git-extensions-row.is-out-of-batch th,
.agent-git-extensions-row.is-out-of-batch td {
  background: #fef2f2;
  border-top-color: #fecaca;
}

.agent-git-extensions-row.is-out-of-batch .agent-git-extensions-type {
  background: #fee2e2;
  color: #991b1b;
}

.agent-git-extensions-row.is-out-of-batch .agent-git-ext-tag {
  border-color: rgba(239, 68, 68, 0.45);
  background: #fff1f2;
  color: #b91c1c;
}

.agent-git-extensions-row.is-empty-folders th,
.agent-git-extensions-row.is-empty-folders td {
  background: #fffbeb;
  border-top-color: #fde68a;
}

.agent-git-extensions-row.is-empty-folders .agent-git-extensions-type {
  background: #fef3c7;
  color: #92400e;
}

.agent-git-extensions-row.is-empty-folders .agent-git-folder-hint-tag {
  border-color: rgba(217, 119, 6, 0.4);
  background: #fffbeb;
  color: #92400e;
  font-family: ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, monospace;
  font-size: 10px;
  max-width: 100%;
  overflow: hidden;
  text-overflow: ellipsis;
}

.agent-git-folder-hint-more {
  display: inline-flex;
  align-items: center;
  font-size: 10px;
  color: #b45309;
  padding: 2px 6px;
}

.agent-git-extensions-count.is-hint {
  color: #b45309;
}

.agent-git-extensions-limit {
  width: 1%;
  white-space: nowrap;
  font-variant-numeric: tabular-nums;
  color: #475569;
}

.agent-git-extensions-table .agent-git-extensions-list {
  display: flex;
  flex-wrap: wrap;
  align-items: flex-start;
  gap: 4px 5px;
  margin: 0;
  padding: 0;
  text-align: left;
  min-width: 0;
}

.agent-git-extensions-batch {
  display: flex;
  flex-direction: column;
  gap: 4px;
  min-width: 0;
}

.agent-git-extensions-batch-title {
  font-size: 10px;
  font-weight: 600;
  letter-spacing: 0.02em;
  text-transform: uppercase;
  color: #64748b;
}

.agent-git-extensions-list {
  display: flex;
  flex-wrap: wrap;
  gap: 4px 5px;
  min-width: 0;
  justify-content: flex-start;
}

.agent-git-extensions-extras {
  margin: 0;
  font-size: 10px;
  line-height: 1.4;
  color: #94a3b8;
}

.agent-git-ext-tag {
  display: inline-flex;
  align-items: center;
  margin: 0;
  padding: 2px 8px;
  border-radius: 999px;
  border: 1px solid rgba(99, 102, 241, 0.35);
  background: rgba(238, 242, 255, 0.92);
  color: #4338ca;
  font-size: 10px;
  font-weight: 700;
  font-family: ui-monospace, SFMono-Regular, Menlo, monospace;
  line-height: 1.45;
  user-select: none;
}

.agent-git-ext-tag.is-active {
  border-color: rgba(22, 163, 74, 0.55);
  background: rgba(220, 252, 231, 0.96);
  color: #15803d;
  box-shadow: 0 0 0 1px rgba(22, 163, 74, 0.14);
}

.agent-git-filter {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 6px 8px;
  min-width: 0;
}

.agent-git-filter-label {
  flex-shrink: 0;
  font-size: 0.88rem;
  line-height: 1.45;
  color: var(--text-muted, #64748b);
}

.agent-git-filter-chips {
  display: flex;
  flex-wrap: wrap;
  gap: 4px;
  min-width: 0;
}

.agent-git-filter-chip {
  margin: 0;
  padding: 2px 8px;
  border-radius: 999px;
  border: 1px solid rgba(148, 163, 184, 0.45);
  background: rgba(255, 255, 255, 0.55);
  color: #94a3b8;
  font-size: 10px;
  font-weight: 700;
  font-family: ui-monospace, SFMono-Regular, Menlo, monospace;
  line-height: 1.45;
  cursor: pointer;
  transition:
    background 0.12s ease,
    border-color 0.12s ease,
    color 0.12s ease;
}

.agent-git-filter-chip:hover {
  border-color: rgba(99, 102, 241, 0.45);
  color: #64748b;
}

.agent-git-filter-chip.is-active {
  border-color: rgba(99, 102, 241, 0.55);
  background: rgba(99, 102, 241, 0.14);
  color: #4338ca;
}

.agent-git-filter-chip:focus-visible {
  outline: 2px solid rgba(99, 102, 241, 0.45);
  outline-offset: 1px;
}

.agent-git-filter-extras {
  margin: 0;
  font-size: 10px;
  line-height: 1.35;
  color: #94a3b8;
}

.agent-git-meta-aside {
  flex: 0 0 auto;
  margin-left: auto;
  text-align: right;
  white-space: nowrap;
  font-family: ui-monospace, SFMono-Regular, Menlo, monospace;
  font-size: 0.82rem;
  color: #475569;
}

.agent-git-meta-aside.hidden {
  display: none;
}

.agent-git-meta-line {
  margin: 0;
  font-size: 13px;
  color: #334155;
}

.agent-git-meta-line.is-muted {
  color: #64748b;
  font-size: 12px;
}

.agent-git-clean-banner {
  margin: 0;
  padding: 12px 14px;
  border-radius: 10px;
  border: 1px solid #bbf7d0;
  background: #f0fdf4;
  color: #166534;
  font-size: 13px;
}

.live-file-update-banner {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 14px;
  margin: 0 0 8px;
  padding: 10px 12px;
  border-radius: 12px;
  border: 1px solid #dbeafe;
  border-left: 4px solid #3b82f6;
  background: #f8fbff;
  color: #0f172a;
  font-size: 13px;
  box-shadow: 0 1px 2px rgba(15, 23, 42, 0.04);
}

.live-file-update-banner.is-external {
  border-color: #fde68a;
  border-left-color: #f59e0b;
  background: #fffdf7;
}

.live-file-update-banner.is-dirty {
  border-left-color: #ef4444;
}

.live-file-update-banner.is-diff-open {
  margin-bottom: 0;
  border-bottom-left-radius: 0;
  border-bottom-right-radius: 0;
  border-bottom-color: transparent;
}

.live-file-update-banner.hidden {
  display: none;
}

.live-file-update-banner-main {
  display: flex;
  align-items: flex-start;
  gap: 10px;
  min-width: 0;
  flex: 1 1 auto;
}

.live-file-update-banner-copy {
  display: flex;
  flex-direction: column;
  gap: 3px;
  min-width: 0;
}

.live-file-update-banner-head {
  display: flex;
  align-items: center;
  flex-wrap: wrap;
  gap: 8px;
}

.live-file-update-banner-title {
  font-size: 13px;
  font-weight: 600;
  color: #0f172a;
}

.live-file-update-banner-path {
  font-size: 12px;
  color: #64748b;
  line-height: 1.35;
  word-break: break-word;
}

.live-file-update-banner-stats {
  display: inline-flex;
  align-items: center;
  gap: 6px;
}

.live-file-update-banner-stats.hidden {
  display: none;
}

.live-file-update-stat {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-width: 2.2em;
  padding: 1px 7px;
  border-radius: 999px;
  font-size: 11px;
  font-weight: 700;
  line-height: 1.5;
  letter-spacing: 0.01em;
}

.live-file-update-stat--add {
  background: #dcfce7;
  color: #166534;
}

.live-file-update-stat--remove {
  background: #fee2e2;
  color: #991b1b;
}

.live-file-update-banner-detail {
  color: #64748b;
  line-height: 1.4;
  font-size: 12px;
}

.live-file-update-banner-detail.hidden {
  display: none;
}

.live-file-update-banner-actions {
  display: flex;
  flex-wrap: wrap;
  gap: 6px;
  flex: 0 0 auto;
  justify-content: flex-end;
}

.live-file-update-btn {
  border: 1px solid #cbd5e1;
  background: #fff;
  color: #0f172a;
  border-radius: 8px;
  padding: 6px 10px;
  font-size: 12px;
  cursor: pointer;
  white-space: nowrap;
}

.live-file-update-btn:hover {
  background: #f8fafc;
}

.live-file-update-btn.is-active {
  border-color: #93c5fd;
  background: #eff6ff;
  color: #1d4ed8;
}

.live-file-update-btn--primary {
  border-color: #2563eb;
  background: #2563eb;
  color: #fff;
}

.live-file-update-btn--primary:hover {
  background: #1d4ed8;
}

.live-file-update-btn--ghost {
  border-color: transparent;
  background: transparent;
  color: #64748b;
}

.live-file-update-btn--ghost:hover {
  background: rgba(15, 23, 42, 0.04);
  color: #334155;
}

.live-file-update-btn--ack {
  border-color: #cbd5e1;
  background: #fff;
  color: #334155;
  font-weight: 600;
}

.live-file-update-btn--ack:hover {
  background: #f8fafc;
  border-color: #94a3b8;
  color: #0f172a;
}

.live-file-diff-panel {
  margin: 0 0 10px;
  border: 1px solid #dbeafe;
  border-top: 0;
  border-radius: 0 0 12px 12px;
  background: #fff;
  overflow: hidden;
  box-shadow: 0 1px 2px rgba(15, 23, 42, 0.04);
}

.live-file-update-banner:not(.is-diff-open) + .live-file-diff-panel:not(.hidden) {
  margin-top: -2px;
  border-top: 1px solid #dbeafe;
  border-radius: 12px;
}

.live-file-diff-panel.hidden {
  display: none;
}

.live-file-diff-panel-head {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 8px;
  padding: 8px 12px;
  border-bottom: 1px solid #e2e8f0;
  background: #f8fafc;
}

.live-file-diff-panel-head-copy {
  display: flex;
  align-items: baseline;
  gap: 8px;
  min-width: 0;
}

.live-file-diff-panel-kicker {
  flex: 0 0 auto;
  font-size: 10px;
  font-weight: 700;
  letter-spacing: 0.08em;
  text-transform: uppercase;
  color: #64748b;
}

.live-file-diff-panel-title {
  font-size: 12px;
  font-weight: 600;
  color: #334155;
  word-break: break-word;
}

.live-file-diff-panel-close {
  border: 0;
  background: transparent;
  color: #64748b;
  font-size: 18px;
  line-height: 1;
  cursor: pointer;
  padding: 0 4px;
}

.live-file-diff-panel-close:hover {
  color: #334155;
}

.live-file-diff-panel-body {
  margin: 0;
  max-height: 240px;
  overflow: auto;
  padding: 8px 10px;
  font-family: ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", monospace;
  font-size: 12px;
  line-height: 1.45;
  white-space: normal;
  word-break: break-word;
}

.live-file-diff-note {
  padding: 6px 8px;
  border-radius: 8px;
  background: #f8fafc;
  color: #64748b;
  font-size: 12px;
}

.live-file-diff-line {
  display: flex;
  align-items: flex-start;
  gap: 8px;
  padding: 3px 8px;
  border-radius: 6px;
}

.live-file-diff-line + .live-file-diff-line {
  margin-top: 2px;
}

.live-file-diff-line-prefix {
  flex: 0 0 auto;
  width: 1.1em;
  font-weight: 700;
}

.live-file-diff-line-text {
  flex: 1 1 auto;
  min-width: 0;
  white-space: pre-wrap;
}

.live-file-diff-line--add {
  background: #ecfdf5;
  color: #047857;
}

.live-file-diff-line--add .live-file-diff-line-prefix {
  color: #059669;
}

.live-file-diff-line--remove {
  background: #fef2f2;
  color: #991b1b;
}

.live-file-diff-line--remove .live-file-diff-line-text {
  text-decoration: line-through;
  opacity: 0.92;
}

.live-file-diff-line--remove .live-file-diff-line-prefix {
  color: #dc2626;
}

.editor-surface.is-live-diff-active .file-content-preview .live-diff-add {
  background: rgba(16, 185, 129, 0.14);
  border-radius: 4px;
  padding: 0 2px;
}

.editor-surface.is-live-diff-active .file-content-preview .live-diff-remove {
  background: rgba(239, 68, 68, 0.1);
  border-radius: 4px;
  padding: 0 2px;
  text-decoration: line-through;
}

.live-diff-inline-root {
  display: flex;
  flex-direction: column;
  gap: 4px;
}

.live-diff-md-chunk {
  margin: 0;
}

.live-diff-inline-row {
  border-radius: 8px;
  padding: 6px 10px;
  font-size: inherit;
  line-height: 1.55;
  white-space: pre-wrap;
  word-break: break-word;
}

.live-diff-inline-row--add {
  background: #ecfdf5;
  border-left: 3px solid #10b981;
  color: #065f46;
}

.live-diff-inline-row--add .live-diff-inline-content > :first-child {
  margin-top: 0;
}

.live-diff-inline-row--add .live-diff-inline-content > :last-child {
  margin-bottom: 0;
}

.live-diff-inline-row--remove {
  background: #fef2f2;
  border-left: 3px solid #ef4444;
  color: #991b1b;
  text-decoration: line-through;
  opacity: 0.9;
}

.live-sync-wysiwyg-diff-removed {
  margin: 0 0 8px;
  border: 1px solid #fecaca;
  border-radius: 8px;
  background: #fff5f5;
  overflow: hidden;
}

.live-sync-wysiwyg-diff-removed.hidden {
  display: none;
}

.live-sync-wysiwyg-diff-removed-title {
  padding: 6px 10px;
  font-size: 11px;
  font-weight: 600;
  color: #991b1b;
  border-bottom: 1px solid #fecaca;
  background: #fef2f2;
}

.live-sync-wysiwyg-diff-removed-line {
  padding: 4px 10px;
  font-size: 12px;
  line-height: 1.45;
  color: #991b1b;
  text-decoration: line-through;
  white-space: pre-wrap;
  word-break: break-word;
}

.live-sync-wysiwyg-diff-removed-line + .live-sync-wysiwyg-diff-removed-line {
  border-top: 1px dashed #fecaca;
}

.editor-surface.is-live-diff-active .toastui-editor-contents .live-diff-wysiwyg-add,
.editor-surface.is-live-diff-active .ProseMirror .live-diff-wysiwyg-add {
  background: rgba(16, 185, 129, 0.16);
  border-radius: 4px;
  box-shadow: inset 0 0 0 1px rgba(16, 185, 129, 0.28);
}

.editor-surface.is-live-diff-panel-open .toastui-editor-contents .live-diff-wysiwyg-add,
.editor-surface.is-live-diff-panel-open .ProseMirror .live-diff-wysiwyg-add,
.editor-surface.is-live-diff-panel-open .file-content-preview .live-diff-embedded-block-add {
  box-shadow: inset 0 0 0 1px rgba(16, 185, 129, 0.35);
}

.editor-code-wrap.is-live-diff-source .live-diff-gutter-line {
  display: block;
}

.editor-code-wrap.is-live-diff-source .live-diff-gutter-line.live-diff-gutter-add {
  color: #047857;
  font-weight: 600;
}

.editor-code-wrap.is-live-diff-source .live-diff-gutter-line.live-diff-gutter-remove {
  color: #b91c1c;
  font-weight: 600;
  text-decoration: line-through;
}

.file-content-preview .live-diff-inline-root .live-diff-inline-row--add mark,
.file-content-preview .live-diff-inline-root .live-diff-inline-row--add .live-diff-wysiwyg-add {
  background: rgba(16, 185, 129, 0.22);
}

.node-navigation-preview .live-diff-inline-root .live-diff-inline-row--add {
  background: #ecfdf5;
}

.node-navigation-preview .live-diff-inline-root .live-diff-inline-row--remove {
  background: #fef2f2;
}

.node-navigation-preview.live-diff-embedded-active .live-diff-embedded-row--add,
.node-navigation-preview .live-diff-embedded-row--add {
  background: rgba(16, 185, 129, 0.16);
  border-left: 3px solid #10b981;
  border-radius: 4px;
  padding: 2px 8px;
  margin: 2px 0;
}

.node-navigation-preview.live-diff-embedded-active .live-diff-embedded-row--remove,
.node-navigation-preview .live-diff-embedded-row--remove {
  background: rgba(239, 68, 68, 0.1);
  border-left: 3px solid #ef4444;
  border-radius: 4px;
  padding: 2px 8px;
  margin: 2px 0;
  color: #991b1b;
  text-decoration: line-through;
}

.node-navigation-preview .live-diff-embedded-chunk > :first-child {
  margin-top: 0;
}

.node-navigation-preview .live-diff-embedded-chunk > :last-child {
  margin-bottom: 0;
}

.node-navigation-preview .live-diff-embedded-block-add {
  background: rgba(16, 185, 129, 0.2);
  border-radius: 4px;
  box-shadow: inset 0 0 0 1px rgba(16, 185, 129, 0.35);
}

.node-navigation-preview .live-diff-embedded-inline-remove {
  display: block;
  background: rgba(239, 68, 68, 0.1);
  color: #991b1b;
  text-decoration: line-through;
  border-radius: 4px;
  padding: 1px 6px;
  margin: 2px 0;
  font-size: 0.95em;
}

.file-content-preview.live-diff-embedded-active .live-diff-embedded-block-add,
.file-content-preview .live-diff-embedded-block-add {
  background: rgba(16, 185, 129, 0.18);
  border-radius: 4px;
  box-shadow: inset 0 0 0 1px rgba(16, 185, 129, 0.3);
}

.file-content-preview .live-diff-embedded-inline-remove {
  display: block;
  background: rgba(239, 68, 68, 0.1);
  color: #991b1b;
  text-decoration: line-through;
  border-radius: 4px;
  padding: 2px 8px;
  margin: 3px 0;
}

#node-overview-block.is-live-diff-active .file-content-preview .live-diff-preview-changed,
.editor-surface.is-live-diff-active .file-content-preview .live-diff-preview-changed,
.node-navigation-preview .live-diff-preview-changed {
  background: rgba(16, 185, 129, 0.18);
  border-radius: 4px;
  box-shadow: inset 0 0 0 1px rgba(16, 185, 129, 0.32);
}

#node-overview-block.is-live-diff-active .file-content-preview .live-diff-preview-removed,
.editor-surface.is-live-diff-active .file-content-preview .live-diff-preview-removed,
.node-navigation-preview .live-diff-preview-removed {
  background: rgba(239, 68, 68, 0.12);
  color: #991b1b;
  text-decoration: line-through;
  border-radius: 4px;
  box-shadow: inset 0 0 0 1px rgba(239, 68, 68, 0.28);
  padding: 0 4px;
}

ul .live-diff-preview-removed,
ol .live-diff-preview-removed {
  display: list-item;
  margin: 2px 0;
}

.live-diff-preview-root {
  display: flex;
  flex-direction: column;
  gap: 0;
}

.live-diff-preview-root > ul,
.live-diff-preview-root > ol {
  margin: 0.5em 0;
  padding-left: 1.5em;
}

.live-diff-preview-chunk > :first-child {
  margin-top: 0;
}

.live-diff-preview-chunk > :last-child {
  margin-bottom: 0;
}

.agent-git-group-title {
  margin: 0 0 10px;
  font-size: 13px;
  font-weight: 600;
  color: #0f172a;
}

.agent-git-change-list,
.agent-git-commit-list {
  list-style: none;
  margin: 0;
  padding: 0;
  display: flex;
  flex-direction: column;
  gap: 6px;
}

.agent-git-change-item {
  min-width: 0;
}

.agent-git-change-view-btn {
  flex: 0 0 auto;
  align-self: center;
  margin: 0;
  padding: 5px 10px;
  font-size: 11px;
  font-weight: 600;
  font-family: inherit;
  line-height: 1.2;
  border-radius: 6px;
  border: 1px solid #cbd5e1;
  background: #fff;
  color: #334155;
  cursor: pointer;
  white-space: nowrap;
}

.agent-git-change-view-btn:hover {
  border-color: #94a3b8;
  background: #f8fafc;
}

.agent-git-change-view-btn:focus-visible {
  outline: 2px solid rgba(59, 130, 246, 0.45);
  outline-offset: 1px;
}

.agent-git-change-meta {
  flex: 0 0 auto;
  align-self: center;
  display: flex;
  flex-direction: column;
  align-items: flex-end;
  gap: 2px;
  max-width: min(220px, 36%);
  min-width: 0;
  padding: 0 4px;
}

.agent-git-change-size {
  font-size: 11px;
  font-weight: 600;
  color: #64748b;
  white-space: nowrap;
}

.agent-git-change-size.is-commit-blocked-size {
  color: #dc2626;
  font-weight: 700;
  cursor: help;
}

.agent-git-change-size.is-commit-blocked-size:hover {
  text-decoration: line-through;
  text-decoration-color: rgba(220, 38, 38, 0.85);
}

.agent-git-change-row.is-out-of-batch {
  border-color: #fca5a5;
  background: #fff1f2;
}

.agent-git-change-row.is-commit-blocked {
  border-color: #f87171;
  background: #fef2f2;
}

.agent-git-change-row.is-commit-blocked:hover {
  border-color: #ef4444;
  background: #fee2e2;
}

.agent-git-change-row.is-commit-blocked.is-out-of-batch {
  border-color: #f87171;
  background: #fef2f2;
}

.agent-git-change-row {
  flex: 1 1 auto;
  min-width: 0;
  width: 100%;
  display: flex;
  align-items: center;
  gap: 8px;
  padding: 6px 8px 6px 10px;
  border: 1px solid var(--border);
  border-radius: 8px;
  background: var(--panel);
  box-sizing: border-box;
}

.agent-git-change-row:hover {
  border-color: #cbd5e1;
  background: #f8fafc;
}

.agent-git-change-open {
  flex: 1 1 auto;
  min-width: 0;
  display: flex;
  align-items: center;
  gap: 10px;
  margin: 0;
  padding: 2px 4px 2px 0;
  border: 0;
  background: transparent;
  cursor: pointer;
  text-align: left;
  font: inherit;
  color: inherit;
}

.agent-git-change-open:hover {
  background: transparent;
}

.agent-git-change-open:focus-visible {
  outline: 2px solid rgba(59, 130, 246, 0.45);
  outline-offset: 1px;
  border-radius: 6px;
}

.agent-git-change-badge {
  flex: 0 0 auto;
  font-size: 11px;
  font-weight: 600;
  padding: 2px 8px;
  border-radius: 999px;
  background: #f1f5f9;
  color: #475569;
}

.agent-git-change-row.is-staged .agent-git-change-badge {
  background: #dbeafe;
  color: #1d4ed8;
}

.agent-git-change-row.is-modified .agent-git-change-badge {
  background: #ffedd5;
  color: #c2410c;
}

.agent-git-change-row.is-untracked .agent-git-change-badge {
  background: #f3e8ff;
  color: #7c3aed;
}

.agent-git-change-row.is-deleted .agent-git-change-badge {
  background: #fee2e2;
  color: #b91c1c;
}

.agent-git-change-path {
  min-width: 0;
  font-size: 12px;
  color: #334155;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.agent-git-commit-row {
  display: grid;
  grid-template-columns: auto 72px minmax(0, 1fr) auto auto;
  gap: 10px;
  align-items: center;
  padding: 8px 10px;
  border: 1px solid var(--border);
  border-radius: 8px;
  background: var(--panel);
  font-size: 12px;
}

.agent-git-commit-picker {
  display: flex;
  align-items: center;
  justify-content: center;
  flex-shrink: 0;
  width: 20px;
}

.agent-git-commit-radio {
  margin: 0;
  width: 14px;
  height: 14px;
  accent-color: #6366f1;
  cursor: not-allowed;
  opacity: 0.55;
}

.agent-git-commit-radio:disabled {
  cursor: not-allowed;
}

.agent-git-commit-hash {
  font-family: ui-monospace, SFMono-Regular, Menlo, monospace;
  color: #64748b;
}

.agent-git-commit-subject {
  color: #0f172a;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.agent-git-commit-files {
  color: #64748b;
  white-space: nowrap;
  font-variant-numeric: tabular-nums;
}

.agent-git-commit-files.is-empty {
  color: #cbd5e1;
}

.agent-git-commit-meta {
  color: #94a3b8;
  white-space: nowrap;
}

.agent-git-empty,
.agent-git-empty-state {
  margin: 0;
  color: #64748b;
  font-size: 13px;
}

.agent-git-empty.is-alert {
  color: #b91c1c;
}

.agent-git-empty-title {
  margin: 0 0 8px;
  font-size: 15px;
  font-weight: 600;
  color: #0f172a;
}

.agent-git-empty-text {
  margin: 0;
  line-height: 1.5;
}

@media (max-width: 900px) {
  .agent-git-head {
    flex-direction: column;
  }

  .agent-git-head-actions {
    align-items: flex-start;
  }

  .agent-git-commit-row {
    grid-template-columns: auto 1fr;
    gap: 4px 10px;
  }

  .agent-git-commit-hash {
    grid-column: 2;
  }

  .agent-git-commit-subject {
    grid-column: 1 / -1;
  }

  .agent-git-commit-files {
    grid-column: 1 / -1;
  }

  .agent-git-commit-meta {
    grid-column: 1 / -1;
  }
}

.home-pane-bg {
  position: absolute;
  inset: 0;
  pointer-events: none;
  background:
    radial-gradient(ellipse 70% 55% at 12% 8%, rgba(99, 102, 241, 0.22), transparent 60%),
    radial-gradient(ellipse 65% 50% at 88% 18%, rgba(59, 130, 246, 0.18), transparent 55%),
    radial-gradient(ellipse 55% 45% at 72% 88%, rgba(167, 139, 250, 0.16), transparent 50%),
    radial-gradient(ellipse 40% 35% at 28% 72%, rgba(14, 165, 233, 0.1), transparent 45%),
    linear-gradient(160deg, #eef2ff 0%, #f8fafc 42%, #f0f9ff 100%);
}

.home-pane-bg::before {
  content: "";
  position: absolute;
  inset: 0;
  opacity: 0.45;
  background-image:
    linear-gradient(rgba(148, 163, 184, 0.12) 1px, transparent 1px),
    linear-gradient(90deg, rgba(148, 163, 184, 0.12) 1px, transparent 1px);
  background-size: 28px 28px;
  mask-image: radial-gradient(ellipse 85% 75% at 50% 45%, #000 20%, transparent 100%);
}

.home-pane-inner {
  position: relative;
  z-index: 1;
  flex: 0 0 auto;
  width: min(920px, 100%);
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 28px;
  text-align: center;
}

.home-pane-stack {
  width: 100%;
  display: flex;
  flex-direction: column;
  gap: 14px;
}

.home-hero {
  display: flex;
  flex-direction: column;
  align-items: center;
  max-width: 640px;
}

.home-welcome {
  margin: 0 0 12px;
  font-family: Georgia, "Iowan Old Style", "Palatino Linotype", Palatino, ui-serif, serif;
  font-size: clamp(1.35rem, 3.2vw, 1.65rem);
  font-weight: 400;
  font-style: italic;
  letter-spacing: 0.02em;
  line-height: 1.2;
  color: #1e293b;
  text-shadow: 0 1px 0 rgba(255, 255, 255, 0.65);
}

.home-eyebrow {
  margin: 0 0 10px;
  font-size: 12px;
  font-weight: 600;
  letter-spacing: 0.08em;
  text-transform: uppercase;
  color: #6366f1;
}

.home-title {
  margin: 0 0 12px;
  display: inline-flex;
  align-items: center;
  gap: 0.32em;
  font-size: clamp(2rem, 5vw, 3rem);
  font-weight: 800;
  letter-spacing: -0.03em;
  line-height: 1.05;
}

.home-title-label {
  background: linear-gradient(135deg, #1e3a8a 0%, #4338ca 45%, #2563eb 100%);
  -webkit-background-clip: text;
  background-clip: text;
  color: transparent;
}

.home-title-clover {
  font-size: 0.88em;
  line-height: 1;
}

.home-lead {
  margin: 0;
  font-size: 16px;
  line-height: 1.65;
  color: #475569;
}

.home-quote {
  margin: 16px 0 0;
  font-size: 14px;
  font-style: italic;
  color: #64748b;
}

.home-cards {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 14px;
  width: 100%;
}

.home-card {
  padding: 18px 16px;
  border-radius: 16px;
  border: 1px solid rgba(255, 255, 255, 0.75);
  background: rgba(255, 255, 255, 0.72);
  backdrop-filter: blur(10px);
  box-shadow:
    0 1px 2px rgba(15, 23, 42, 0.04),
    0 12px 32px rgba(59, 130, 246, 0.08);
  text-align: left;
}

.home-card-icon {
  display: inline-flex;
  width: 40px;
  height: 40px;
  align-items: center;
  justify-content: center;
  border-radius: 12px;
  background: #eef2ff;
  font-size: 20px;
  margin-bottom: 10px;
}

.home-card-title {
  margin: 0 0 6px;
  font-size: 15px;
  font-weight: 700;
  color: var(--text);
}

.home-card-text {
  margin: 0;
  font-size: 13px;
  line-height: 1.5;
  color: var(--muted);
}

.home-workspace-manifest {
  width: 100%;
  margin: 0;
}

.home-focus-section {
  width: 100%;
  margin: 0;
  padding: 0;
  text-align: left;
}

.home-focus-section.hidden {
  display: none;
}

.home-focus-graph {
  position: relative;
  display: flex;
  align-items: stretch;
  gap: 0;
  min-height: 52px;
  padding: 10px 12px;
  border: 1px solid rgba(148, 163, 184, 0.28);
  border-radius: 12px;
  background: rgba(255, 255, 255, 0.88);
  box-sizing: border-box;
}

.home-focus-graph-hub {
  flex: 0 0 40px;
  width: 40px;
  height: 40px;
  align-self: center;
  display: flex;
  align-items: center;
  justify-content: center;
  border: 2px solid #c7d2fe;
  border-radius: 50%;
  background: linear-gradient(145deg, #eef2ff, #e0e7ff);
  color: #4338ca;
  font-size: 16px;
  line-height: 1;
  box-shadow: 0 0 0 4px rgba(99, 102, 241, 0.08);
}

.home-focus-graph-rail {
  position: relative;
  flex: 1 1 auto;
  min-width: 0;
  display: flex;
  align-items: center;
  margin-left: 10px;
  padding-left: 10px;
  border-left: 2px solid #e2e8f0;
}

.home-focus-graph-svg {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  overflow: visible;
  pointer-events: none;
}

.home-focus-graph-svg line {
  stroke: #c7d2fe;
  stroke-width: 1.5;
}

.home-focus-graph-nodes {
  position: relative;
  z-index: 1;
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 8px;
  width: 100%;
  padding: 2px 0;
}

.home-focus-graph-node {
  display: inline-flex;
  align-items: center;
  gap: 6px;
  margin: 0;
  padding: 5px 10px;
  border: 1px solid #e2e8f0;
  border-radius: 999px;
  background: #fff;
  color: #1e293b;
  font-size: 12px;
  font-weight: 600;
  line-height: 1.2;
  cursor: pointer;
  transition:
    border-color 0.15s ease,
    background 0.15s ease,
    box-shadow 0.15s ease;
}

.home-focus-graph-node--has-preview {
  padding: 3px 10px 3px 3px;
}

.home-focus-graph-node-media {
  flex-shrink: 0;
  width: 22px;
  height: 22px;
  border-radius: 50%;
  overflow: hidden;
  background: linear-gradient(145deg, #e0e7ff, #dbeafe);
}

.home-focus-graph-node-media img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}

.home-focus-graph-node-label {
  min-width: 0;
}

.home-focus-graph-node:hover,
.home-focus-graph-node:focus-visible {
  border-color: rgba(99, 102, 241, 0.45);
  background: rgba(238, 242, 255, 0.72);
}

.home-focus-graph-node:focus-visible {
  outline: 2px solid rgba(99, 102, 241, 0.35);
  outline-offset: 2px;
}

.home-focus-graph-node.is-active {
  border-color: rgba(99, 102, 241, 0.55);
  background: rgba(224, 231, 255, 0.92);
  box-shadow: 0 0 0 2px rgba(99, 102, 241, 0.12);
}

.home-workspace-manifest-card {
  width: 100%;
  box-sizing: border-box;
  padding: 16px 18px;
  border-radius: 16px;
  border: 1px solid rgba(148, 163, 184, 0.28);
  background: linear-gradient(145deg, rgba(255, 255, 255, 0.94) 0%, rgba(248, 250, 252, 0.88) 100%);
  box-shadow:
    0 1px 2px rgba(15, 23, 42, 0.04),
    0 10px 28px rgba(59, 130, 246, 0.07);
  text-align: left;
}

.home-workspace-manifest-card--loading {
  font-size: 13px;
  color: var(--muted);
}

.home-workspace-manifest-head {
  display: flex;
  align-items: center;
  gap: 14px;
}

.home-workspace-manifest-copy {
  flex: 1 1 auto;
  min-width: 0;
}

.home-workspace-manifest-icon {
  flex-shrink: 0;
  width: 48px;
  height: 48px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  border-radius: 14px;
  background: linear-gradient(145deg, #eef2ff, #e0e7ff);
  font-size: 24px;
  line-height: 1;
  box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.85);
}

.home-workspace-manifest-title {
  margin: 0;
  font-size: 18px;
  font-weight: 700;
  letter-spacing: -0.02em;
  line-height: 1.25;
  color: #0f172a;
}

.home-workspace-manifest-description {
  margin: 4px 0 0;
  font-size: 13px;
  line-height: 1.5;
  color: #64748b;
}

.home-workspace-manifest-body {
  margin-top: 12px;
  padding: 12px 14px;
  border-radius: 12px;
  background: rgba(241, 245, 249, 0.72);
  border: 1px solid rgba(148, 163, 184, 0.18);
  font-size: 13px;
  line-height: 1.55;
  color: #334155;
  max-height: min(42vh, 320px);
  overflow: auto;
}

.home-workspace-manifest-body.markdown-preview > :first-child {
  margin-top: 0;
}

.home-workspace-manifest-body.markdown-preview > :last-child {
  margin-bottom: 0;
}

.home-hint {
  margin: 0;
  font-size: 13px;
  font-weight: 600;
  color: #64748b;
  padding: 8px 16px;
  border-radius: 999px;
  background: rgba(255, 255, 255, 0.65);
  border: 1px solid rgba(203, 213, 225, 0.8);
}

.home-hint.is-alert {
  color: #b45309;
  background: rgba(255, 251, 235, 0.85);
  border-color: #fcd34d;
}

.home2-content {
  width: 100%;
  margin: 0;
  padding: 0 4px 48px;
  box-sizing: border-box;
}

.home2-shell {
  width: 100%;
  max-width: none;
  margin: 0;
  display: flex;
  flex-direction: column;
  gap: 16px;
}

.home2-header {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: 16px;
  padding: 18px 20px;
  border: 1px solid #e2e8f0;
  border-radius: 16px;
  background: #fff;
  box-shadow: 0 1px 3px rgba(15, 23, 42, 0.04);
}

.home2-identity {
  display: flex;
  align-items: center;
  gap: 16px;
  min-width: 0;
}

.home2-avatar {
  flex-shrink: 0;
  width: 64px;
  height: 64px;
  border-radius: 14px;
  overflow: hidden;
  display: flex;
  align-items: center;
  justify-content: center;
  background: linear-gradient(145deg, #312e81, #1e3a8a);
  color: #e0e7ff;
  font-size: 20px;
  font-weight: 700;
  letter-spacing: 0.04em;
}

.home2-avatar img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}

.home2-identity-copy {
  min-width: 0;
}

.home2-title {
  margin: 0 0 4px;
  font-size: 1.375rem;
  font-weight: 800;
  letter-spacing: -0.02em;
  color: #0f172a;
}

.home2-meta {
  margin: 0;
  font-size: 12px;
  color: #64748b;
  word-break: break-word;
}

.home2-comment {
  margin: 8px 0 0;
  font-size: 13px;
  line-height: 1.5;
  color: #475569;
}

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

.home2-stat {
  padding: 14px 16px;
  border-radius: 14px;
  border: 1px solid #e2e8f0;
  background: #fff;
  box-shadow: 0 1px 2px rgba(15, 23, 42, 0.03);
}

.home2-stat-value {
  display: block;
  font-size: 26px;
  font-weight: 800;
  line-height: 1;
  color: #1e3a8a;
  letter-spacing: -0.03em;
}

.home2-stat-label {
  display: block;
  margin-top: 6px;
  font-size: 12px;
  font-weight: 600;
  color: #64748b;
}

.home2-section {
  display: flex;
  flex-direction: column;
  gap: 12px;
}

.home2-section-title {
  margin: 0;
  font-size: 13px;
  font-weight: 700;
  letter-spacing: 0.04em;
  text-transform: uppercase;
  color: #64748b;
}

.home2-topics-grid {
  display: grid;
  grid-template-columns: repeat(auto-fill, minmax(220px, 1fr));
  gap: 12px;
}

.home2-topic-card {
  display: flex;
  align-items: center;
  gap: 12px;
  width: 100%;
  padding: 12px 14px;
  border: 1px solid #e2e8f0;
  border-radius: 12px;
  background: #fff;
  text-align: left;
  cursor: pointer;
  transition: border-color 0.15s ease, box-shadow 0.15s ease, transform 0.15s ease;
}

.home2-topic-card:hover {
  border-color: #93c5fd;
  box-shadow: 0 4px 14px rgba(59, 130, 246, 0.08);
  transform: translateY(-1px);
}

.home2-topic-card-media {
  flex-shrink: 0;
  width: 44px;
  height: 44px;
  border-radius: 10px;
  overflow: hidden;
  background: #eef2ff;
  display: flex;
  align-items: center;
  justify-content: center;
}

.home2-topic-card-media img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}

.home2-topic-card-fallback {
  font-size: 13px;
  font-weight: 700;
  color: #4338ca;
}

.home2-topic-card-body {
  min-width: 0;
  display: flex;
  flex-direction: column;
  gap: 2px;
}

.home2-topic-card-title {
  font-size: 14px;
  font-weight: 700;
  color: #0f172a;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
}

.home2-topic-card-path {
  font-size: 11px;
  color: #94a3b8;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
}

.home2-empty {
  margin: 0;
  padding: 16px 18px;
  border-radius: 12px;
  border: 1px dashed #cbd5e1;
  background: #fff;
  font-size: 13px;
  color: #64748b;
}

.home2-hint {
  margin: 0;
  font-size: 12px;
  color: #94a3b8;
  text-align: center;
}

@media (max-width: 760px) {
  .home2-stats {
    grid-template-columns: 1fr;
  }

  .home2-header {
    flex-direction: column;
  }
}

.home-mascot-block {
  display: flex;
  flex-direction: column;
  align-items: center;
  margin: 12px 0 18px;
}

.home-mascot {
  position: relative;
  width: 112px;
  height: 132px;
  margin: 0 auto;
}

.home-mascot-glow {
  position: absolute;
  left: 50%;
  bottom: 8px;
  width: 88px;
  height: 24px;
  transform: translateX(-50%);
  border-radius: 999px;
  background: radial-gradient(ellipse, rgba(99, 102, 241, 0.28), transparent 70%);
  animation: home-mascot-glow 2s ease-in-out infinite;
}

.home-mascot-shell {
  position: relative;
  z-index: 1;
  display: flex;
  flex-direction: column;
  align-items: center;
  animation: home-mascot-hop 2.2s ease-in-out infinite;
}

.home-mascot-antenna {
  width: 4px;
  height: 12px;
  margin-bottom: -2px;
  border-radius: 999px;
  background: #475569;
}

.home-mascot-antenna::after {
  content: "";
  display: block;
  width: 10px;
  height: 10px;
  margin: -1px 0 0 -3px;
  border-radius: 999px;
  background: linear-gradient(145deg, #fde047, #facc15);
  box-shadow: 0 0 12px rgba(250, 204, 21, 0.55);
  animation: home-mascot-pulse 1.4s ease-in-out infinite;
}

.home-mascot-screen {
  width: 78px;
  height: 58px;
  padding: 10px 8px 8px;
  border: 3px solid #334155;
  border-radius: 18px 18px 14px 14px;
  background: linear-gradient(180deg, #dbeafe 0%, #bfdbfe 100%);
  box-shadow:
    inset 0 -4px 0 rgba(59, 130, 246, 0.12),
    0 6px 0 #1e293b,
    0 10px 20px rgba(59, 130, 246, 0.14);
}

.home-mascot-face {
  position: relative;
  width: 100%;
  height: 100%;
}

.home-mascot-eye {
  position: absolute;
  top: 10px;
  width: 8px;
  height: 10px;
  border-radius: 2px;
  background: #0f172a;
  animation: home-mascot-blink 4.2s ease-in-out infinite;
}

.home-mascot-eye--left {
  left: 16px;
}

.home-mascot-eye--right {
  right: 16px;
}

.home-mascot-smile {
  position: absolute;
  left: 50%;
  bottom: 8px;
  width: 18px;
  height: 9px;
  transform: translateX(-50%);
  border: 3px solid #0f172a;
  border-top: 0;
  border-radius: 0 0 12px 12px;
  background: transparent;
}

.home-mascot-body {
  display: flex;
  align-items: flex-start;
  justify-content: center;
  gap: 4px;
  margin-top: 8px;
}

.home-mascot-torso {
  width: 34px;
  height: 28px;
  border: 3px solid #1e293b;
  border-radius: 6px;
  background: linear-gradient(180deg, #6366f1, #4f46e5);
  box-shadow: inset 0 2px 0 rgba(255, 255, 255, 0.18);
}

.home-mascot-arm {
  width: 12px;
  height: 22px;
  margin-top: 4px;
  border: 3px solid #1e293b;
  border-radius: 4px;
  background: #facc15;
  transform-origin: top center;
}

.home-mascot-arm--left {
  animation: home-mascot-wave-left 1.8s ease-in-out infinite;
}

.home-mascot-arm--right {
  animation: home-mascot-wave-right 1.8s ease-in-out infinite;
}

.home-mascot-feet {
  display: flex;
  gap: 10px;
  margin-top: 2px;
}

.home-mascot-feet span {
  width: 18px;
  height: 10px;
  border: 3px solid #1e293b;
  border-radius: 4px 4px 8px 8px;
  background: #fde047;
}

.home-mascot-slogan {
  list-style: none;
  margin: 0 0 16px;
  padding: 0;
  display: flex;
  flex-wrap: wrap;
  flex-direction: row;
  align-items: center;
  justify-content: center;
  gap: 8px;
  max-width: 100%;
}

.home-mascot-slogan .home-hero-tag {
  display: inline-flex;
  align-items: center;
  gap: 3px;
  font-size: 12px;
  font-weight: 600;
  line-height: 1.2;
  color: #334155;
  letter-spacing: 0.01em;
  padding: 6px 12px 6px 10px;
  border: 1px solid rgba(226, 232, 240, 0.95);
  border-radius: 999px;
  background: rgba(255, 255, 255, 0.92);
  box-shadow: 0 1px 3px rgba(15, 23, 42, 0.06);
  white-space: nowrap;
}

.home-hero-tag-hash {
  font-weight: 800;
  color: #6366f1;
  letter-spacing: 0;
}

.home-mascot-slogan .home-hero-tag:nth-child(2) {
  color: #4338ca;
}

.home-mascot-slogan .home-hero-tag:nth-child(2) .home-hero-tag-hash {
  color: #4f46e5;
}

.home-mascot-slogan .home-hero-tag:nth-child(3) {
  color: #0369a1;
}

.home-mascot-slogan .home-hero-tag:nth-child(3) .home-hero-tag-hash {
  color: #0284c7;
}

@keyframes home-mascot-hop {
  0%,
  100% {
    transform: translateY(0);
  }
  50% {
    transform: translateY(-6px);
  }
}

@keyframes home-mascot-glow {
  0%,
  100% {
    opacity: 0.55;
    transform: translateX(-50%) scale(1);
  }
  50% {
    opacity: 1;
    transform: translateX(-50%) scale(1.08);
  }
}

@keyframes home-mascot-pulse {
  0%,
  100% {
    transform: scale(1);
  }
  50% {
    transform: scale(1.15);
  }
}

@keyframes home-mascot-blink {
  0%,
  44%,
  48%,
  100% {
    transform: scaleY(1);
  }
  46% {
    transform: scaleY(0.12);
  }
}

@keyframes home-mascot-wave-left {
  0%,
  100% {
    transform: rotate(8deg);
  }
  50% {
    transform: rotate(-18deg);
  }
}

@keyframes home-mascot-wave-right {
  0%,
  100% {
    transform: rotate(-8deg);
  }
  50% {
    transform: rotate(18deg);
  }
}

@media (prefers-reduced-motion: reduce) {
  .home-mascot-shell,
  .home-mascot-glow,
  .home-mascot-antenna::after,
  .home-mascot-eye,
  .home-mascot-arm {
    animation: none !important;
  }
}

@media (max-width: 860px) {
  .home-cards {
    grid-template-columns: 1fr;
  }
}

.workspace-pane {
  grid-column: 3;
  grid-row: 2;
  position: relative;
  min-width: 0;
  min-height: 0;
  overflow: hidden;
  border-right: 1px solid var(--border);
  display: flex;
  flex-direction: column;
  background: var(--panel);
}

.workspace-scroll-chrome-store {
  display: none;
}

.doc-slab-main > .workspace-scroll-host {
  flex: 1;
  min-height: 0;
  min-width: 0;
  position: relative;
  display: flex;
  flex-direction: column;
}

.workspace-scroll-host > .node-overview,
.workspace-scroll-host > .file-content-preview,
.workspace-scroll-host > .editor-code-wrap,
.workspace-scroll-host > .editor-wysiwyg-wrap {
  flex: 1;
  min-height: 0;
  min-width: 0;
}

.workspace-scroll-host > .workspace-scroll-chrome {
  position: absolute;
  inset: 0 0 auto 0;
  z-index: 25;
  pointer-events: none;
  opacity: 0;
  transition: opacity 0.2s ease;
}

.workspace-scroll-host > .workspace-scroll-chrome.is-active {
  opacity: 1;
}

.workspace-scroll-host > .scroll-top-btn--docked,
.discuss-messages-scroll-host > .scroll-top-btn--docked {
  position: absolute;
  right: calc(14px + var(--scroll-top-shift-x, 0px));
  bottom: calc(14px + var(--scroll-top-shift-y, 0px));
  z-index: 26;
  margin: 0;
}

.workspace-scroll-chrome {
  pointer-events: none;
  opacity: 0;
  transition: opacity 0.2s ease;
}

.workspace-scroll-chrome.is-active {
  opacity: 1;
}

.app-header {
  grid-column: 1 / -1;
  position: relative;
  z-index: 50;
  display: flex;
  align-items: center;
  gap: 12px;
  padding: 14px 20px;
  border-bottom: 1px solid var(--border);
  background: var(--panel);
  min-width: 0;
}

.app-header-brand {
  display: flex;
  align-items: center;
  gap: 12px;
  flex-shrink: 0;
  position: relative;
  z-index: 2;
}

.app-brand-mark {
  display: flex;
  align-items: center;
}

.app-home-heading {
  margin: 0;
  font-size: inherit;
  font-weight: inherit;
  line-height: inherit;
}

.app-home-link {
  display: inline-flex;
  align-items: center;
  gap: 6px;
  flex-shrink: 0;
  max-width: none;
  color: inherit;
  text-decoration: none;
  cursor: pointer;
  border-radius: 8px;
  padding: 2px 4px;
  margin: -2px -4px;
  white-space: nowrap;
  transition: color 0.15s ease, background 0.15s ease;
}

.app-home-link:hover {
  color: var(--accent);
}

.app-home-link.active {
  color: var(--accent);
}

.app-home-icon {
  font-size: 18px;
  line-height: 1;
  flex-shrink: 0;
}

.app-home-title,
.app-home-title-display,
.app-home-title-rotator,
.app-home-title-layer {
  pointer-events: none;
}

.app-home-title-display {
  display: inline-block;
  flex-shrink: 0;
  width: auto;
  max-width: none;
  font-size: 18px;
  font-weight: 700;
  line-height: 1.2;
  white-space: nowrap;
  color: inherit;
  border-radius: 6px;
  padding: 0 4px;
  margin: 0 -4px;
  transition:
    opacity 0.4s ease,
    transform 0.4s ease,
    background 0.15s ease;
}

.app-home-link:hover .app-home-title-display,
.app-home-link.active .app-home-title-display {
  background: rgba(59, 130, 246, 0.08);
}

.app-home-title-display.is-out {
  opacity: 0;
  transform: translateY(3px);
}

.app-home-title {
  position: relative;
  display: inline-block;
  flex-shrink: 0;
  width: auto;
  max-width: none;
  font-size: 18px;
  font-weight: 700;
  line-height: 1.2;
  white-space: nowrap;
  vertical-align: bottom;
}

.app-home-title-rotator {
  position: relative;
  display: inline-block;
  width: auto;
  height: 1.2em;
  overflow: hidden;
  vertical-align: bottom;
}

.app-home-title-layer {
  position: absolute;
  left: 0;
  top: 0;
  white-space: nowrap;
  opacity: 0;
  transform: translateY(0.35em);
  transition:
    opacity 0.55s cubic-bezier(0.4, 0, 0.2, 1),
    transform 0.55s cubic-bezier(0.4, 0, 0.2, 1);
  pointer-events: none;
}

.app-home-title-layer.is-visible {
  opacity: 1;
  transform: translateY(0);
}

.app-home-title-layer.is-primary {
  background: linear-gradient(120deg, #0f172a 0%, #1d4ed8 55%, #2563eb 100%);
  -webkit-background-clip: text;
  background-clip: text;
  color: transparent;
}

.app-home-title-layer:not(.is-primary) {
  color: #0f172a;
}

.app-home-link:hover .app-home-title-layer.is-primary.is-visible {
  background: linear-gradient(120deg, #1e3a8a 0%, #2563eb 50%, #3b82f6 100%);
  -webkit-background-clip: text;
  background-clip: text;
}

@media (prefers-reduced-motion: reduce) {
  .app-home-title-layer {
    transition: none;
    transform: none;
  }
}

.header-slogan-rotator {
  display: none;
  pointer-events: none;
  user-select: none;
}

.app.app-landing-view .header-tool-buttons .header-slogan-rotator {
  display: flex;
  align-items: center;
  gap: 8px;
  flex: 1 1 0;
  min-width: 0;
  max-width: 100%;
  margin-right: 6px;
  padding-right: 10px;
  border-right: 1px solid rgba(148, 163, 184, 0.28);
  overflow: hidden;
  transition: opacity 0.32s ease;
}

.app.app-landing-view .header-slogan-rotator.is-out {
  opacity: 0;
}

.header-slogan-mark {
  flex: 0 0 auto;
  width: 5px;
  height: 5px;
  border-radius: 50%;
  background: linear-gradient(135deg, #818cf8 0%, #38bdf8 100%);
  opacity: 0.55;
  box-shadow: 0 0 0 3px rgba(129, 140, 248, 0.1);
}

.header-slogan-rotator-display {
  display: block;
  flex: 1 1 auto;
  min-width: 0;
  max-width: 100%;
  overflow: hidden;
  font-size: 12px;
  font-weight: 500;
  line-height: 1.3;
  letter-spacing: 0.01em;
  text-align: left;
  white-space: nowrap;
  text-overflow: ellipsis;
  color: var(--muted);
}

.header-slogan-line {
  display: block;
  min-width: 0;
  max-width: 100%;
  overflow: hidden;
  white-space: nowrap;
  text-overflow: ellipsis;
}

.header-slogan-word {
  display: inline;
}

.header-slogan-char,
.header-slogan-sep {
  display: inline-block;
  opacity: 0;
  transform: translate3d(0, -1.15em, 0);
  animation: header-slogan-char-drop 0.52s cubic-bezier(0.22, 1.12, 0.36, 1) forwards;
  animation-delay: calc(var(--char-i, 0) * 38ms);
}

.header-slogan-sep {
  margin: 0 0.34em;
  font-weight: 400;
  color: #94a3b8;
  opacity: 0;
}

@keyframes header-slogan-char-drop {
  0% {
    opacity: 0;
    transform: translate3d(0, -1.15em, 0);
  }

  68% {
    opacity: 1;
    transform: translate3d(0, 0.08em, 0);
  }

  100% {
    opacity: 1;
    transform: translate3d(0, 0, 0);
  }
}

@media (max-width: 960px) {
  .header-slogan-rotator {
    display: none !important;
  }
}

@media (prefers-reduced-motion: reduce) {
  .header-slogan-char,
  .header-slogan-sep {
    animation: none !important;
    opacity: 1 !important;
    transform: none !important;
  }

  .app.app-landing-view .header-slogan-rotator.is-out {
    opacity: 1;
  }
}

.app-header-tools {
  display: flex;
  align-items: center;
  gap: 12px;
  margin-left: auto;
  flex: 1 1 auto;
  min-width: 0;
  justify-content: flex-end;
  overflow: visible;
}

.header-tool-buttons {
  display: flex;
  align-items: center;
  gap: 6px;
  flex: 0 0 auto;
  min-width: 0;
}

.app.app-landing-view .header-tool-buttons {
  flex: 1 1 0;
  max-width: 100%;
  overflow: visible;
  justify-content: flex-end;
}

.app:not(.app-landing-view) .header-welcome-wrap,
.app:not(.app-landing-view) .header-connect-wrap,
.app:not(.app-landing-view) .header-community-wrap {
  display: none;
}

.app.app-landing-view .header-tool-buttons > .header-focus-wrap,
.app.app-landing-view .header-tool-buttons > .header-index-wrap,
.app.app-landing-view .header-tool-buttons > .header-author-workspace-wrap,
.app.app-landing-view .header-tool-buttons > .header-notifications-wrap,
.app.app-landing-view .header-tool-buttons > .header-profile-wrap,
.app.app-landing-view .header-tool-buttons > .header-chat-wrap {
  display: none;
}

.header-welcome-wrap,
.header-connect-wrap,
.header-community-wrap {
  position: relative;
  display: flex;
  align-items: center;
  gap: 6px;
  flex-shrink: 0;
}

.header-tool-btn--connect {
  display: inline-flex;
  align-items: center;
  gap: 6px;
  min-width: 0;
  max-width: min(200px, 34vw);
  height: auto;
  min-height: 36px;
  padding: 0 12px;
  border-color: #e2e8f0;
  background: #fff;
  color: #334155;
  font-size: 12px;
  font-weight: 600;
  line-height: 1.2;
  white-space: nowrap;
  box-shadow: 0 1px 2px rgba(15, 23, 42, 0.04);
}

.header-tool-btn--connect:hover {
  border-color: #cbd5e1;
  background: #f8fafc;
  color: #0f172a;
}

.header-tool-btn--connect.is-open {
  border-color: #7dd3fc;
  background: #fff;
  box-shadow: 0 0 0 2px rgba(14, 165, 233, 0.14);
}

.header-connect-btn-icon {
  flex: 0 0 auto;
  font-size: 14px;
  line-height: 1;
}

.header-connect-btn-label {
  overflow: hidden;
  text-overflow: ellipsis;
}

.header-tool-btn--community {
  display: inline-flex;
  align-items: center;
  gap: 6px;
  min-width: 0;
  max-width: min(200px, 34vw);
  height: auto;
  min-height: 36px;
  padding: 0 12px;
  border-color: #e2e8f0;
  background: #fff;
  color: #334155;
  font-size: 12px;
  font-weight: 600;
  line-height: 1.2;
  white-space: nowrap;
  box-shadow: 0 1px 2px rgba(15, 23, 42, 0.04);
}

.header-tool-btn--community:hover {
  border-color: #cbd5e1;
  background: #f8fafc;
  color: #0f172a;
}

.header-tool-btn--community.is-open {
  border-color: #7dd3fc;
  background: #fff;
  box-shadow: 0 0 0 2px rgba(14, 165, 233, 0.14);
}

.header-community-btn-icon {
  flex: 0 0 auto;
  font-size: 14px;
  line-height: 1;
}

.header-community-btn-label {
  overflow: hidden;
  text-overflow: ellipsis;
}

.header-tool-btn--author,
.header-tool-btn--examples,
.header-tool-btn--settings,
.header-tool-btn--logout {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 36px;
  min-width: 36px;
  padding: 0;
  border-color: #e2e8f0;
  background: #fff;
  color: #334155;
  line-height: 1;
  letter-spacing: normal;
  box-shadow: 0 1px 2px rgba(15, 23, 42, 0.04);
}

.header-tool-btn--author:hover,
.header-tool-btn--examples:hover,
.header-tool-btn--settings:hover {
  border-color: #cbd5e1;
  background: #f8fafc;
  color: #0f172a;
}

.header-tool-btn--logout:hover {
  border-color: #fecaca;
  background: #fef2f2;
  color: #dc2626;
}

.header-logout-btn-icon {
  display: block;
  width: 18px;
  height: 18px;
  flex: 0 0 auto;
}

.header-tool-btn--settings.is-open {
  border-color: #93c5fd;
  background: #eff6ff;
  color: #1d4ed8;
}

.header-settings-btn-icon {
  display: block;
  width: 16px;
  height: 16px;
  flex: 0 0 auto;
}

.header-global-settings-modal-card {
  width: min(760px, calc(100vw - 32px));
  max-height: min(88vh, 920px);
  display: flex;
  flex-direction: column;
  gap: 12px;
  padding: 18px 20px 16px;
}

.header-global-settings-modal-head {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: 12px;
}

.header-global-settings-modal-subtitle {
  margin: 4px 0 0;
  font-size: 12px;
  line-height: 1.4;
  color: #64748b;
}

.header-global-settings-lead {
  margin: 0;
  font-size: 13px;
  line-height: 1.45;
  color: #475569;
}

.header-global-settings-group-tabs {
  flex: 0 0 auto;
}

.header-global-settings-modal-card .header-global-settings-group-lead {
  margin: 0;
  padding: 8px 10px;
  font-size: 12px;
  line-height: 1.4;
}

.header-global-settings-modal-card .header-global-settings-group-lead.project-settings-group-description-lead {
  margin: 0;
}

.header-global-settings-fields {
  flex: 1 1 auto;
  min-height: 180px;
  max-height: min(52vh, 560px);
  overflow-x: hidden;
  overflow-y: auto;
  padding-right: 4px;
}

.header-global-settings-fields.node-config-fields {
  overflow-x: hidden;
  overflow-y: auto;
}

.header-global-settings-fields .node-config-field-row--compact {
  display: flex;
  flex-direction: column;
  align-items: stretch;
  flex: 0 0 auto;
  gap: 8px;
  min-height: 0;
  height: auto;
  padding: 10px 12px;
  overflow: visible;
}

.header-global-settings-fields .node-config-field-row--compact.has-field-description {
  padding-top: 10px;
  padding-bottom: 10px;
}

.header-global-settings-fields .node-config-field-row--compact .node-config-field-description {
  grid-column: auto;
  width: 100%;
  margin: 0;
  box-sizing: border-box;
}

.header-global-settings-fields .node-config-field-row--compact .node-config-field-head,
.header-global-settings-fields .node-config-field-row--compact .node-config-field-value {
  width: 100%;
  min-width: 0;
}

.header-global-settings-fields .node-config-field-row--compact:not(.is-tall) .node-config-field-label-wrap {
  align-items: flex-start;
  gap: 4px 8px;
}

.header-global-settings-fields .node-config-field-row--compact:not(.is-tall) .node-config-field-key {
  flex-basis: 100%;
  margin-top: 1px;
}

.header-global-settings-fields .node-config-field-row--compact:not(.is-tall) .node-config-field-value .props-form-value-wrap--boolean {
  padding: 2px 0 0;
}

.header-global-settings-loading {
  padding: 18px 4px;
  font-size: 13px;
  color: #64748b;
}

.header-global-settings-actions {
  display: flex;
  justify-content: flex-end;
  gap: 8px;
  padding-top: 4px;
  border-top: 1px solid rgba(148, 163, 184, 0.2);
}

.header-author-btn-icon {
  display: block;
  width: 16px;
  height: 16px;
  flex: 0 0 auto;
}

.header-examples-btn-icon {
  flex: 0 0 auto;
  font-size: 16px;
  line-height: 1;
}

.header-community-popover {
  position: absolute;
  top: calc(100% + 8px);
  right: 0;
  z-index: 1100;
  width: min(420px, calc(100vw - 24px));
  max-height: min(80vh, 640px);
  overflow-y: auto;
  padding: 14px;
  border: 1px solid rgba(148, 163, 184, 0.24);
  border-radius: 14px;
  background: #fff;
  box-shadow: 0 18px 44px rgba(15, 23, 42, 0.16);
}

.header-community-popover.hidden {
  display: none;
}

.header-community-popover-head {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: 10px;
  margin-bottom: 12px;
}

.header-community-popover-title {
  margin: 0;
  font-size: 15px;
  font-weight: 700;
  line-height: 1.25;
  color: #0f172a;
}

.header-community-popover-subtitle {
  margin: 4px 0 0;
  font-size: 12px;
  line-height: 1.4;
  color: #64748b;
}

.header-community-popover-close {
  flex: 0 0 auto;
  width: 28px;
  height: 28px;
  border: 0;
  border-radius: 8px;
  background: transparent;
  color: #64748b;
  font-size: 20px;
  line-height: 1;
  cursor: pointer;
}

.header-community-popover-close:hover {
  background: #f1f5f9;
  color: #0f172a;
}

.header-community-figure {
  margin: 0;
}

.header-community-slideshow {
  position: relative;
  width: 100%;
  margin: 0 auto;
  aspect-ratio: 16 / 9;
  overflow: hidden;
  border-radius: 10px;
  border: 1px solid rgba(148, 163, 184, 0.2);
  background: #0f172a;
}

.header-community-slide {
  position: absolute;
  inset: 0;
  display: block;
  width: 100%;
  height: 100%;
  object-fit: cover;
  opacity: 0;
  animation: header-community-film 8s ease-in-out infinite;
}

.header-community-slide--1 {
  animation-name: header-community-film-a;
}

.header-community-slide--2 {
  animation-name: header-community-film-b;
}

@keyframes header-community-film-a {
  0%,
  42% {
    opacity: 1;
  }

  50%,
  92% {
    opacity: 0;
  }

  100% {
    opacity: 1;
  }
}

@keyframes header-community-film-b {
  0%,
  42% {
    opacity: 0;
  }

  50%,
  92% {
    opacity: 1;
  }

  100% {
    opacity: 0;
  }
}

@media (prefers-reduced-motion: reduce) {
  .header-community-slide {
    animation: none;
  }

  .header-community-slide--1 {
    opacity: 1;
  }

  .header-community-slide--2 {
    opacity: 0;
  }
}

.header-community-caption {
  margin: 12px 0 0;
  font-size: 13px;
  line-height: 1.5;
  color: #334155;
}

.header-author-modal-card {
  width: min(520px, 94vw);
  padding: 18px;
}

.header-author-modal-head {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: 12px;
  margin-bottom: 14px;
}

.header-author-modal-subtitle {
  margin: 4px 0 0;
  font-size: 12px;
  line-height: 1.45;
  color: #64748b;
}

.header-author-figure {
  margin: 0 0 14px;
}

.header-author-image {
  display: block;
  width: 100%;
  height: auto;
  border-radius: 12px;
  border: 1px solid rgba(148, 163, 184, 0.24);
}

.header-author-caption {
  margin: 10px 0 0;
  font-size: 13px;
  line-height: 1.5;
  color: #334155;
}

.header-author-links {
  display: flex;
  flex-direction: column;
  gap: 8px;
}

.header-author-github-link {
  display: flex;
  align-items: center;
  gap: 12px;
  padding: 12px 14px;
  border: 1px solid #e2e8f0;
  border-radius: 12px;
  background: #f8fafc;
  color: inherit;
  text-decoration: none;
  transition: border-color 0.15s ease, background 0.15s ease, transform 0.15s ease;
}

.header-author-github-link:hover {
  border-color: #cbd5e1;
  background: #fff;
  transform: translateY(-1px);
}

.header-author-github-icon {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 36px;
  height: 36px;
  border-radius: 10px;
  background: #0f172a;
  color: #fff;
  flex-shrink: 0;
}

.header-author-site-icon {
  background: #0ea5e9;
  font-size: 18px;
  line-height: 1;
}

.header-author-telegram-icon {
  background: #229ed9;
}

.header-author-youtube-icon {
  background: #ff0000;
}

.header-author-email-icon {
  background: #6366f1;
  font-size: 18px;
  line-height: 1;
}

.header-author-email-link {
  color: inherit;
}

.header-author-email-anchor {
  flex: 1;
  min-width: 0;
  color: inherit;
  text-decoration: none;
}

.header-author-email-anchor:hover .header-author-github-label {
  color: #0f172a;
}

.header-author-email-copy-btn {
  flex: 0 0 auto;
  margin-left: auto;
  padding: 6px 10px;
  border: 1px solid #cbd5e1;
  border-radius: 8px;
  background: #fff;
  color: #334155;
  font-size: 11px;
  font-weight: 600;
  line-height: 1.2;
  cursor: pointer;
  transition: border-color 0.15s ease, background 0.15s ease;
}

.header-author-email-copy-btn:hover {
  border-color: #94a3b8;
  background: #f8fafc;
}

.header-author-email-copy-btn:focus-visible {
  outline: 2px solid #6366f1;
  outline-offset: 2px;
}

.header-author-github-link.is-stub {
  cursor: default;
  opacity: 0.72;
  pointer-events: none;
}

.header-author-github-link.is-stub:hover {
  border-color: #e2e8f0;
  background: #f8fafc;
  transform: none;
}

.header-author-stub-badge {
  font-size: 11px;
  font-weight: 700;
  letter-spacing: 0.02em;
  text-transform: lowercase;
  color: #94a3b8;
}

.header-author-github-copy {
  display: flex;
  flex-direction: column;
  gap: 2px;
  min-width: 0;
}

.header-author-github-label {
  font-size: 13px;
  font-weight: 700;
  color: #0f172a;
}

.header-author-github-meta {
  font-size: 12px;
  color: #64748b;
  word-break: break-all;
}

.header-author-github-arrow {
  margin-left: auto;
  color: #94a3b8;
  font-size: 16px;
  line-height: 1;
}

.header-author-note {
  margin: 12px 0 0;
  font-size: 12px;
  line-height: 1.45;
  color: #64748b;
  text-align: center;
}

.header-guide-popover {
  position: absolute;
  top: calc(100% + 8px);
  right: 0;
  z-index: 1100;
  width: min(360px, calc(100vw - 24px));
  max-height: min(72vh, 520px);
  overflow-y: auto;
  padding: 14px;
  border: 1px solid rgba(148, 163, 184, 0.24);
  border-radius: 14px;
  background: #fff;
  box-shadow: 0 18px 44px rgba(15, 23, 42, 0.16);
}

.header-guide-popover.hidden {
  display: none;
}

.header-guide-popover-head {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: 10px;
  margin-bottom: 10px;
}

.header-guide-popover-title {
  margin: 0;
  font-size: 15px;
  font-weight: 700;
  line-height: 1.25;
  color: #0f172a;
}

.header-guide-popover-subtitle {
  margin: 4px 0 0;
  font-size: 12px;
  line-height: 1.4;
  color: #64748b;
}

.header-guide-popover-close {
  flex: 0 0 auto;
  width: 28px;
  height: 28px;
  border: 0;
  border-radius: 8px;
  background: transparent;
  color: #64748b;
  font-size: 20px;
  line-height: 1;
  cursor: pointer;
}

.header-guide-popover-close:hover {
  background: #f1f5f9;
  color: #0f172a;
}

.header-guide-steps {
  margin: 0 0 12px;
  padding-left: 1.15rem;
  font-size: 13px;
  line-height: 1.5;
  color: #334155;
}

.header-guide-steps li + li {
  margin-top: 10px;
}

.header-guide-steps li .header-guide-prompt {
  margin-top: 8px;
}

.header-guide-inline-btn {
  display: inline-flex;
  margin-top: 6px;
  padding: 4px 10px;
  border: 1px solid #bfdbfe;
  border-radius: 999px;
  background: #eff6ff;
  color: #1d4ed8;
  font-size: 11px;
  font-weight: 600;
  cursor: pointer;
}

.header-guide-inline-btn:hover {
  border-color: #93c5fd;
  background: #dbeafe;
}

.header-guide-prompt {
  display: flex;
  align-items: stretch;
  gap: 8px;
}

.header-guide-prompt-text {
  flex: 1 1 auto;
  min-width: 0;
  margin: 0;
  padding: 10px 12px;
  border: 1px solid #e2e8f0;
  border-radius: 10px;
  background: #f8fafc;
  color: #0f172a;
  font-family: ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace;
  font-size: 12px;
  line-height: 1.45;
  white-space: pre-wrap;
  word-break: break-word;
}

.header-guide-copy-btn {
  flex: 0 0 auto;
  align-self: flex-start;
  padding: 8px 12px;
  border: 1px solid #cbd5e1;
  border-radius: 10px;
  background: #fff;
  color: #334155;
  font-size: 12px;
  font-weight: 600;
  cursor: pointer;
}

.header-guide-copy-btn:hover {
  border-color: #94a3b8;
  background: #f8fafc;
}

.header-guide-hint {
  margin: 8px 0 0;
  font-size: 11px;
  line-height: 1.45;
  color: #64748b;
}

.header-guide-hint code {
  font-size: 10px;
}

.header-tool-btn--welcome {
  display: inline-flex;
  align-items: center;
  gap: 10px;
  min-width: 0;
  max-width: min(360px, 56vw);
  height: auto;
  min-height: 36px;
  padding: 4px 12px 4px 8px;
  border-color: #e2e8f0;
  background: #fff;
  color: #334155;
  font-size: 13px;
  font-weight: 500;
  line-height: 1.2;
  white-space: nowrap;
  box-shadow: 0 1px 2px rgba(15, 23, 42, 0.04);
}

.header-tool-btn--welcome:hover {
  border-color: #cbd5e1;
  background: #f8fafc;
  color: #0f172a;
}

.header-tool-btn--welcome.is-open {
  border-color: #a5b4fc;
  background: #fff;
  box-shadow: 0 0 0 2px rgba(99, 102, 241, 0.14);
}

.header-welcome-btn-logo {
  flex: 0 0 auto;
  width: 22px;
  height: 22px;
  border-radius: 6px;
  box-shadow: 0 1px 4px rgba(81, 73, 243, 0.18);
}

.header-welcome-btn-label {
  display: inline-flex;
  align-items: baseline;
  gap: 0.35em;
  min-width: 0;
  overflow: hidden;
  text-overflow: ellipsis;
}

.header-welcome-btn-lead {
  overflow: hidden;
  text-overflow: ellipsis;
  color: #64748b;
  font-weight: 500;
}

.header-welcome-btn-brand {
  flex-shrink: 0;
  font-weight: 700;
  letter-spacing: -0.01em;
  color: #4338ca;
}

.header-welcome-popover {
  position: absolute;
  top: calc(100% + 8px);
  right: 0;
  z-index: 1100;
  width: min(360px, calc(100vw - 24px));
  padding: 14px;
  border: 1px solid rgba(148, 163, 184, 0.24);
  border-radius: 14px;
  background: #fff;
  box-shadow: 0 18px 44px rgba(15, 23, 42, 0.16);
}

.header-welcome-popover.hidden {
  display: none;
}

.header-welcome-popover-head {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: 10px;
  margin-bottom: 10px;
}

.header-welcome-popover-title {
  margin: 0;
  color: #0f172a;
  font-size: 15px;
  font-weight: 800;
  line-height: 1.2;
}

.header-welcome-popover-subtitle {
  margin: 3px 0 0;
  color: #64748b;
  font-size: 11px;
  font-weight: 600;
  line-height: 1.3;
}

.header-welcome-popover-close {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 28px;
  height: 28px;
  border: 0;
  border-radius: 8px;
  background: transparent;
  color: #64748b;
  font-size: 20px;
  line-height: 1;
  cursor: pointer;
}

.header-welcome-popover-close:hover {
  background: #f1f5f9;
  color: #0f172a;
}

.header-welcome-lead {
  margin: 0 0 10px;
  color: #334155;
  font-size: 12px;
  line-height: 1.55;
}

.header-welcome-desktop {
  display: none;
  margin: 0 0 12px;
  padding: 10px 12px;
  border: 1px solid rgba(14, 165, 233, 0.22);
  border-radius: 10px;
  background: linear-gradient(180deg, rgba(224, 242, 254, 0.65) 0%, rgba(241, 245, 249, 0.9) 100%);
}

html.is-agent-cms-desktop .header-welcome-desktop {
  display: block;
}

html.is-agent-cms-desktop .header-welcome-desktop-warn.hidden {
  display: none;
}

html.has-desktop-workspace-warn .header-tool-btn--welcome {
  box-shadow: 0 0 0 2px rgba(245, 158, 11, 0.55);
}

.header-profile-desktop-hint-section,
.header-profile-desktop-hint-divider {
  display: none;
}

html.is-agent-cms-desktop .header-profile-menu-divider--after-main {
  display: none;
}

html.is-agent-cms-desktop .header-profile-desktop-hint-section,
html.is-agent-cms-desktop .header-profile-desktop-hint-divider {
  display: block;
}

.header-profile-desktop-hint-text {
  margin: 0;
  padding: 0 12px 8px;
  color: #64748b;
  font-size: 11px;
  line-height: 1.45;
}

.header-profile-desktop-hint-text code {
  font-size: 10px;
}

.header-profile-desktop-hint-section.is-warning .header-profile-desktop-hint-text {
  color: #92400e;
}

.header-welcome-desktop.is-warning {
  border-color: rgba(245, 158, 11, 0.45);
  background: linear-gradient(180deg, rgba(254, 243, 199, 0.75) 0%, rgba(255, 251, 235, 0.95) 100%);
}

.header-welcome-desktop-title {
  margin: 0 0 6px;
  color: #0f172a;
  font-size: 11px;
  font-weight: 800;
  letter-spacing: 0.02em;
  text-transform: uppercase;
}

.header-welcome-desktop-lead {
  margin: 0 0 8px;
  color: #334155;
  font-size: 11px;
  line-height: 1.5;
}

.header-welcome-desktop-steps {
  margin: 0;
  padding-left: 18px;
  color: #475569;
  font-size: 11px;
  line-height: 1.45;
}

.header-welcome-desktop-steps li + li {
  margin-top: 6px;
}

.header-welcome-desktop-steps code,
.header-welcome-desktop-lead code {
  font-size: 10px;
}

.header-welcome-desktop-warn {
  margin: 8px 0 0;
  color: #92400e;
  font-size: 11px;
  font-weight: 600;
  line-height: 1.45;
}

.header-welcome-steps {
  margin: 0 0 12px;
  padding-left: 18px;
  color: #475569;
  font-size: 12px;
  line-height: 1.5;
}

.header-welcome-steps li + li {
  margin-top: 4px;
}

.header-welcome-steps code {
  font-size: 11px;
}

.header-welcome-tree {
  display: flex;
  align-items: center;
  gap: 4px;
  margin-bottom: 12px;
  padding: 10px 8px;
  border: 1px solid rgba(148, 163, 184, 0.18);
  border-radius: 12px;
  background: linear-gradient(180deg, #f8fafc 0%, #f1f5f9 100%);
  overflow-x: auto;
}

.header-welcome-tree-node {
  display: flex;
  flex: 0 0 auto;
  flex-direction: column;
  align-items: center;
  gap: 2px;
  min-width: 58px;
  text-align: center;
}

.header-welcome-tree-icon {
  width: 28px;
  height: 28px;
  color: #0ea5e9;
}

.header-welcome-tree-label {
  color: #0f172a;
  font-size: 10px;
  font-weight: 800;
  line-height: 1.2;
}

.header-welcome-tree-hint {
  color: #64748b;
  font-size: 9px;
  font-weight: 600;
  line-height: 1.2;
}

.header-welcome-tree-arrow {
  flex: 0 0 auto;
  width: 14px;
  height: 12px;
  color: #94a3b8;
}

.header-welcome-create-btn {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 100%;
  min-height: 36px;
  border: 1px solid rgba(14, 165, 233, 0.28);
  border-radius: 10px;
  background: linear-gradient(180deg, #38bdf8 0%, #0ea5e9 100%);
  color: #fff;
  font: inherit;
  font-size: 12px;
  font-weight: 700;
  cursor: pointer;
  transition: filter 0.12s ease, transform 0.12s ease;
}

.header-welcome-create-btn:hover {
  filter: brightness(1.04);
  transform: translateY(-1px);
}

.header-welcome-popover .header-welcome-popover-footer {
  margin: 12px 0 0;
  border-radius: 12px;
}

.header-tool-btn {
  flex-shrink: 0;
  height: 36px;
  padding: 0 14px;
  border: 1px solid var(--border);
  border-radius: 999px;
  background: #f8fafc;
  color: #334155;
  font-size: 12px;
  font-weight: 700;
  letter-spacing: 0.06em;
  cursor: pointer;
  transition: border-color 0.15s ease, background 0.15s ease, color 0.15s ease;
}

a.header-tool-btn {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  text-decoration: none;
}

.header-tool-btn:hover {
  border-color: var(--accent);
  background: var(--panel);
  color: #1e3a8a;
}

.header-tool-btn--idea {
  border-color: #86efac;
  background: #ecfdf5;
  color: #166534;
}

.header-tool-btn--idea:hover {
  border-color: #22c55e;
  background: #d1fae5;
  color: #14532d;
}

.header-notifications-wrap {
  position: relative;
  flex-shrink: 0;
}

.header-notifications-icon {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  line-height: 1;
}

.header-tool-btn--notifications {
  position: relative;
  width: 43px;
  padding: 0;
  border-color: #fde68a;
  background: #fffbeb;
  color: #92400e;
  font-size: 16px;
  line-height: 1;
}

.header-tool-btn--notifications:hover {
  border-color: #fbbf24;
  background: #fef3c7;
  color: #78350f;
}

.header-chat-wrap {
  position: relative;
  display: inline-flex;
  align-items: center;
  gap: 4px;
  flex-shrink: 0;
}

.header-tool-btn--privacy {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 36px;
  min-width: 36px;
  padding: 0;
  border-color: #e2e8f0;
  background: #f8fafc;
  color: #64748b;
}

.header-tool-btn--privacy:hover {
  border-color: #cbd5e1;
  background: #f1f5f9;
  color: #475569;
}

.header-tool-btn--privacy.is-active {
  border-color: #94a3b8;
  background: #fff;
  color: #334155;
  box-shadow: 0 0 0 2px rgba(100, 116, 139, 0.14);
}

.header-privacy-icon {
  display: block;
  flex: none;
  pointer-events: none;
}

.header-tool-btn--privacy .header-privacy-icon--hide,
.header-tool-btn--privacy.is-active .header-privacy-icon--show {
  display: none;
}

.header-tool-btn--privacy.is-active .header-privacy-icon--hide {
  display: block;
}

.header-tool-btn--chat {
  display: inline-flex;
  align-items: center;
  gap: 6px;
  padding: 0 12px;
  border-color: #c7d2fe;
  background: #eef2ff;
  color: #4338ca;
  font-size: 12px;
  letter-spacing: 0.02em;
}

.header-tool-btn--chat:hover {
  border-color: #818cf8;
  background: #e0e7ff;
  color: #3730a3;
}

.header-tool-btn--chat.is-active {
  border-color: #6366f1;
  background: #fff;
  color: #312e81;
  box-shadow: 0 0 0 2px rgba(99, 102, 241, 0.16);
}

.header-focus-wrap {
  position: relative;
  flex-shrink: 0;
}

.header-tool-btn--focus {
  position: relative;
  display: inline-flex;
  align-items: center;
  gap: 6px;
  padding: 0 12px;
  border-color: #a7f3d0;
  background: #ecfdf5;
  color: #047857;
  font-size: 12px;
  letter-spacing: 0.02em;
}

.header-tool-btn--focus:hover {
  border-color: #34d399;
  background: #d1fae5;
  color: #065f46;
}

.header-tool-btn--focus.is-active,
.header-tool-btn--focus.has-count.is-active {
  border-color: #10b981;
  background: #fff;
  color: #064e3b;
  box-shadow: 0 0 0 2px rgba(16, 185, 129, 0.16);
}

.header-focus-icon {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  font-size: 14px;
  line-height: 1;
}

.header-focus-badge {
  position: absolute;
  top: -4px;
  right: -4px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-width: 16px;
  height: 16px;
  padding: 0 4px;
  border-radius: 999px;
  background: #10b981;
  color: #fff;
  font-size: 10px;
  font-weight: 700;
  line-height: 1;
  font-variant-numeric: tabular-nums;
}

.header-focus-badge.hidden {
  display: none;
}

.header-focus-popover {
  position: fixed;
  z-index: 1100;
  width: min(360px, calc(100vw - 24px));
  max-height: min(420px, calc(100vh - 24px));
  display: flex;
  flex-direction: column;
  padding: 12px 14px 14px;
  border: 1px solid var(--border);
  border-radius: 14px;
  background: var(--panel);
  box-shadow: 0 16px 40px rgba(15, 23, 42, 0.18);
}

.header-focus-popover.hidden {
  display: none;
}

.header-focus-popover-head {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: 10px;
  flex-shrink: 0;
  margin: -12px -14px 10px;
  padding: 10px 14px;
  border-bottom: 1px solid rgba(148, 163, 184, 0.18);
  border-radius: 14px 14px 0 0;
  background: linear-gradient(180deg, rgba(236, 253, 245, 0.92) 0%, rgba(248, 250, 252, 0.55) 100%);
}

.header-focus-popover-title-wrap {
  min-width: 0;
}

.header-focus-popover-title {
  margin: 0;
  color: #065f46;
  font-size: 14px;
  font-weight: 700;
  line-height: 1.2;
}

.header-focus-popover-subtitle {
  margin: 2px 0 0;
  color: #64748b;
  font-size: 11px;
  line-height: 1.3;
}

.header-focus-popover-close {
  flex-shrink: 0;
  width: 28px;
  height: 28px;
  border: 0;
  border-radius: 8px;
  background: transparent;
  color: #64748b;
  font-size: 20px;
  line-height: 1;
  cursor: pointer;
}

.header-focus-popover-close:hover {
  background: rgba(148, 163, 184, 0.14);
  color: #334155;
}

.header-focus-list-shell {
  position: relative;
  min-width: 0;
  flex: 1 1 auto;
  overflow-x: hidden;
  overflow-y: auto;
  padding: 0 2px 2px;
  box-sizing: border-box;
}

.header-focus-list-shell .agent-focus-list--compact {
  padding: 2px 1px 1px;
  box-sizing: border-box;
}

.header-focus-list-shell .agent-focus-chip-row:first-child {
  margin-top: 4px;
}

.header-index-wrap {
  position: relative;
  flex-shrink: 0;
}

.header-author-workspace-wrap {
  display: flex;
  align-items: center;
  flex-shrink: 0;
}

.header-tool-btn--index {
  position: relative;
  display: inline-flex;
  align-items: center;
  gap: 6px;
  padding: 0 12px;
  border-color: #fcd34d;
  background: linear-gradient(180deg, #fffbeb 0%, #fef3c7 100%);
  color: #b45309;
  font-size: 12px;
  letter-spacing: 0.02em;
}

.header-tool-btn--index:hover {
  border-color: #f59e0b;
  background: linear-gradient(180deg, #fef3c7 0%, #fde68a 100%);
  color: #92400e;
}

.header-tool-btn--index.is-active,
.header-tool-btn--index.has-alert.is-active {
  border-color: #f59e0b;
  background: #fff;
  color: #78350f;
  box-shadow: 0 0 0 2px rgba(245, 158, 11, 0.2);
}

.header-tool-btn--index.has-alert:not(.is-active) {
  border-color: #f97316;
  box-shadow: 0 0 0 1px rgba(249, 115, 22, 0.18);
}

.header-index-icon {
  display: block;
  width: 14px;
  height: 14px;
  flex: 0 0 auto;
}

.header-index-label {
  line-height: 1;
}

.header-index-alert-dot {
  position: absolute;
  top: -3px;
  right: -3px;
  width: 8px;
  height: 8px;
  border-radius: 999px;
  background: #ef4444;
  box-shadow: 0 0 0 2px #fff;
}

.header-index-alert-dot.hidden {
  display: none;
}

.header-index-popover {
  position: fixed;
  z-index: 1100;
  width: min(540px, calc(100vw - 24px));
  max-height: min(680px, calc(100vh - 24px));
  display: flex;
  flex-direction: column;
  padding: 0;
  border: 1px solid rgba(245, 158, 11, 0.28);
  border-radius: 14px;
  background: var(--panel);
  box-shadow: 0 18px 44px rgba(15, 23, 42, 0.2);
  overflow: hidden;
}

.header-index-popover.hidden {
  display: none;
}

.header-index-popover-head {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: 10px;
  flex-shrink: 0;
  padding: 12px 14px 10px;
  border-bottom: 1px solid rgba(245, 158, 11, 0.18);
  background: linear-gradient(180deg, rgba(255, 251, 235, 0.98) 0%, rgba(255, 255, 255, 0.92) 100%);
}

.header-index-popover-title-wrap {
  min-width: 0;
}

.header-index-popover-title {
  margin: 0;
  color: #92400e;
  font-size: 14px;
  font-weight: 700;
  line-height: 1.2;
}

.header-index-popover-subtitle {
  margin: 2px 0 0;
  color: #64748b;
  font-size: 11px;
  line-height: 1.35;
}

.header-index-stats {
  display: block;
  margin-top: 6px;
  font-size: 11px;
  font-weight: 600;
  line-height: 1.35;
  color: #64748b;
}

.header-index-stats.is-error {
  color: #b45309;
}

.header-index-id-uniqueness {
  display: block;
  margin-top: 4px;
  font-size: 11px;
  font-weight: 600;
  line-height: 1.35;
}

.header-index-id-uniqueness.is-ok {
  color: #16a34a;
}

.header-index-id-uniqueness.is-warning {
  color: #b45309;
}

.header-index-id-uniqueness.hidden {
  display: none;
}

.header-index-popover-close {
  flex-shrink: 0;
  width: 28px;
  height: 28px;
  border: 0;
  border-radius: 8px;
  background: transparent;
  color: #64748b;
  font-size: 20px;
  line-height: 1;
  cursor: pointer;
}

.header-index-popover-close:hover {
  background: rgba(148, 163, 184, 0.14);
  color: #334155;
}

.header-index-cache-bar {
  flex-shrink: 0;
  padding: 10px 12px 0;
  background: linear-gradient(180deg, #fffbeb 0%, #fff 100%);
}

.header-index-cache-reset-row {
  display: flex;
  align-items: stretch;
  gap: 6px;
  width: 100%;
}

.header-index-cache-reset-btn {
  display: flex;
  align-items: center;
  justify-content: center;
  flex: 1 1 auto;
  min-width: 0;
  min-height: 28px;
  padding: 0 12px;
  border: 1px solid rgba(244, 63, 94, 0.28);
  border-radius: 8px;
  background: #fff;
  color: #9f1239;
  font-size: 11px;
  font-weight: 700;
  line-height: 1.2;
  cursor: pointer;
  transition: background 0.15s ease, border-color 0.15s ease, color 0.15s ease, transform 0.15s ease;
}

.header-index-cache-reset-btn:hover:not(:disabled) {
  border-color: rgba(244, 63, 94, 0.48);
  background: #fff1f2;
  color: #881337;
}

.header-index-cache-reset-btn:active:not(:disabled) {
  transform: translateY(1px);
}

.header-index-cache-reset-btn:disabled,
.header-index-cache-reset-btn.is-loading {
  opacity: 0.52;
  cursor: not-allowed;
  pointer-events: none;
}

.header-index-cache-reset-hint-btn {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  flex: 0 0 auto;
  width: 28px;
  min-height: 28px;
  margin: 0;
  padding: 0;
  border: 1px solid rgba(148, 163, 184, 0.28);
  border-radius: 8px;
  background: #fff;
  color: #64748b;
  cursor: pointer;
  transition:
    background-color 0.15s ease,
    border-color 0.15s ease,
    color 0.15s ease;
}

.header-index-cache-reset-hint-btn:hover {
  border-color: rgba(100, 116, 139, 0.42);
  background: #f8fafc;
  color: #475569;
}

.header-index-cache-reset-hint-btn:focus {
  outline: none;
}

.header-index-cache-reset-hint-btn:focus-visible {
  box-shadow: 0 0 0 2px rgba(100, 116, 139, 0.28);
}

.header-index-cache-reset-hint-btn[aria-expanded="true"] {
  border-color: rgba(100, 116, 139, 0.48);
  background: #e2e8f0;
  color: #334155;
}

.header-index-cache-reset-hint-icon {
  display: block;
  width: 15px;
  height: 15px;
}

.header-index-flush-bar {
  display: flex;
  flex-wrap: wrap;
  gap: 6px;
  flex-shrink: 0;
  padding: 8px 12px 10px;
  border-bottom: 1px solid rgba(148, 163, 184, 0.16);
  background: linear-gradient(180deg, #fffbeb 0%, #fff 100%);
}

.header-index-flush-btn {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 5px;
  min-height: 28px;
  padding: 0 10px;
  border: 1px solid rgba(245, 158, 11, 0.28);
  border-radius: 8px;
  background: #fff;
  color: #92400e;
  font-size: 11px;
  font-weight: 700;
  line-height: 1.2;
  cursor: pointer;
  transition: background 0.15s ease, border-color 0.15s ease, transform 0.15s ease, box-shadow 0.15s ease;
}

.header-index-flush-btn:hover {
  border-color: rgba(245, 158, 11, 0.48);
  background: #fef3c7;
  color: #78350f;
}

.header-index-flush-btn:active {
  transform: translateY(1px);
}

.header-index-flush-btn:disabled,
.menu-static-action-btn:disabled,
.menu-static-action-btn.is-feature-disabled,
.header-index-flush-btn.is-feature-disabled {
  opacity: 0.52;
  cursor: not-allowed;
  pointer-events: none;
}

.menu-index-pipeline-options {
  display: flex;
  flex-wrap: wrap;
  gap: 6px 10px;
  margin-bottom: 8px;
}

.menu-index-pipeline-option {
  display: inline-flex;
  align-items: center;
  gap: 5px;
  font-size: 11px;
  line-height: 1.3;
  color: #475569;
  cursor: pointer;
  user-select: none;
}

.menu-index-pipeline-option.is-feature-disabled {
  opacity: 0.55;
  cursor: not-allowed;
}

.menu-index-pipeline-option input {
  margin: 0;
}

.menu-index-storage-mode-wrap {
  display: flex;
  align-items: center;
  gap: 8px;
  margin: 0 0 8px;
  font-size: 11px;
  color: #475569;
}

.menu-index-storage-mode-label {
  flex: 0 0 auto;
}

.menu-index-storage-mode-select {
  flex: 1 1 auto;
  min-width: 0;
  max-width: 100%;
  padding: 4px 8px;
  border: 1px solid rgba(148, 163, 184, 0.45);
  border-radius: 6px;
  background: #fff;
  color: #0f172a;
  font-size: 11px;
}

.menu-index-policy-hint {
  margin-top: 4px;
  color: #64748b;
  font-size: 10px;
}

.menu-index-layer-badge {
  flex: 0 0 auto;
  padding: 1px 6px;
  border-radius: 999px;
  font-size: 9px;
  font-weight: 700;
  line-height: 1.4;
  text-transform: uppercase;
  letter-spacing: 0.02em;
}

.menu-index-layer-badge.is-on {
  background: #dcfce7;
  color: #166534;
}

.menu-index-layer-badge.is-off {
  background: #f1f5f9;
  color: #64748b;
}

.menu-index-block.is-feature-disabled {
  opacity: 0.62;
}

.menu-index-block--link-experimental,
.menu-index-block--entity-experimental {
  margin-top: 8px;
  padding: 10px 12px;
  border: 1px solid rgba(220, 38, 38, 0.55);
  border-radius: 10px;
  background: rgba(254, 242, 242, 0.65);
  box-shadow: inset 0 0 0 1px rgba(254, 202, 202, 0.35);
}

.menu-index-block--entity-experimental {
  border-style: dashed;
}

.workspace-index-catalog-entity-actions {
  display: flex;
  flex-wrap: wrap;
  gap: 6px;
  margin-top: 8px;
}

.workspace-index-catalog-item--entity .entity-catalog-btn {
  font-size: 11px;
  padding: 4px 8px;
  min-height: 0;
}

.entity-registry-editor-card {
  display: flex;
  flex-direction: column;
  min-height: 0;
}

.entity-registry-editor-header {
  display: flex;
  justify-content: space-between;
  align-items: flex-start;
  gap: 12px;
  padding: 12px 16px;
  border-bottom: 1px solid var(--border-subtle, rgba(0, 0, 0, 0.08));
}

.entity-registry-editor-subtitle {
  margin: 4px 0 0;
  font-size: 12px;
  opacity: 0.75;
}

.entity-registry-editor-layout {
  display: grid;
  grid-template-columns: minmax(140px, 180px) minmax(0, 1fr) minmax(200px, 260px);
  gap: 0;
  flex: 1 1 auto;
  min-height: 240px;
  max-height: min(52vh, 480px);
  overflow: hidden;
}

.entity-registry-editor-types,
.entity-registry-editor-list-pane,
.entity-registry-editor-detail {
  padding: 10px 12px;
  overflow: auto;
  border-right: 1px solid var(--border-subtle, rgba(0, 0, 0, 0.08));
  min-height: 0;
}

.entity-registry-editor-list-pane {
  display: flex;
  flex-direction: column;
}

.entity-registry-editor-detail {
  border-right: none;
}

.entity-registry-editor-panel-head {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 8px;
  flex-wrap: nowrap;
  font-size: 12px;
  font-weight: 600;
  margin-bottom: 8px;
}

.entity-registry-editor-panel-title {
  flex: 1 1 auto;
  min-width: 0;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.entity-editor-tool-btn {
  flex: 0 0 auto;
  width: auto;
  margin: 0;
  padding: 4px 10px;
  border: 1px solid rgba(66, 133, 244, 0.35);
  border-radius: 6px;
  background: #fff;
  color: #1e3a5f;
  font-size: 11px;
  font-weight: 600;
  line-height: 1.25;
  white-space: nowrap;
  cursor: pointer;
  transition: border-color 0.15s ease, background 0.15s ease;
}

.entity-editor-tool-btn:hover:not(:disabled) {
  border-color: rgba(59, 130, 246, 0.55);
  background: rgba(59, 130, 246, 0.06);
}

.entity-editor-tool-btn--primary {
  border-color: rgba(59, 130, 246, 0.5);
  background: rgba(59, 130, 246, 0.12);
}

.entity-editor-tool-btn:disabled {
  opacity: 0.65;
  cursor: wait;
}

.entity-registry-editor-type-list {
  list-style: none;
  margin: 0;
  padding: 0;
  display: flex;
  flex-direction: column;
  gap: 4px;
}

.entity-editor-type-btn,
.entity-editor-object-row {
  width: 100%;
  text-align: left;
  border: 1px solid transparent;
  border-radius: 8px;
  padding: 8px 10px;
  background: transparent;
  cursor: pointer;
  font: inherit;
}

.entity-editor-type-btn.is-active,
.entity-editor-object-row.is-active {
  background: rgba(59, 130, 246, 0.12);
  border-color: rgba(59, 130, 246, 0.35);
}

.entity-editor-type-label {
  display: block;
  font-weight: 600;
  font-size: 13px;
}

.entity-editor-type-meta {
  display: block;
  font-size: 10px;
  opacity: 0.65;
  margin-top: 2px;
}

.entity-registry-editor-input {
  width: 100%;
  box-sizing: border-box;
  margin-bottom: 8px;
  padding: 6px 8px;
  font-size: 12px;
  border-radius: 6px;
  border: 1px solid var(--border-subtle, rgba(0, 0, 0, 0.15));
}

.entity-registry-editor-input--compact {
  margin-bottom: 6px;
}

.entity-registry-editor-object-list {
  display: flex;
  flex-direction: column;
  gap: 4px;
  flex: 1 1 auto;
  min-height: 80px;
  overflow: auto;
}

.entity-editor-object-row {
  display: flex;
  justify-content: space-between;
  align-items: center;
  gap: 8px;
  font-size: 13px;
}

.entity-editor-object-label {
  flex: 1 1 auto;
  min-width: 0;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.entity-editor-object-count {
  flex: 0 0 auto;
  font-size: 11px;
  font-variant-numeric: tabular-nums;
  opacity: 0.6;
}

.entity-registry-editor-hint {
  font-size: 11px;
  opacity: 0.7;
  line-height: 1.4;
  margin: 8px 0 0;
}

.entity-registry-editor-inline-form {
  margin: 0 0 8px;
  padding: 8px;
  border-radius: 8px;
  border: 1px dashed rgba(59, 130, 246, 0.35);
  background: rgba(59, 130, 246, 0.04);
}

.entity-registry-editor-inline-form.hidden {
  display: none;
}

.entity-registry-editor-inline-form-actions {
  display: flex;
  flex-wrap: wrap;
  gap: 6px;
  margin-top: 6px;
}

.entity-registry-editor-label {
  display: block;
  font-size: 11px;
  margin-bottom: 10px;
}

.entity-registry-editor-check {
  display: flex;
  align-items: center;
  gap: 6px;
  font-size: 12px;
  margin-bottom: 10px;
}

.entity-registry-editor-form-actions {
  display: flex;
  gap: 8px;
}

.entity-registry-editor-mentions {
  margin-top: 10px;
  font-size: 11px;
  max-height: 140px;
  overflow: auto;
}

.entity-editor-mention-row {
  margin-bottom: 6px;
  padding: 6px;
  border-radius: 6px;
  background: rgba(0, 0, 0, 0.04);
}

.entity-registry-editor-search-bar {
  display: grid;
  grid-template-columns: minmax(100px, 140px) minmax(120px, 1fr) minmax(140px, 1.4fr) auto;
  gap: 8px 10px;
  padding: 10px 12px;
  border-top: 1px solid var(--border-subtle, rgba(0, 0, 0, 0.08));
  align-items: end;
}

.entity-registry-editor-search-field {
  display: flex;
  flex-direction: column;
  gap: 4px;
  min-width: 0;
}

.entity-registry-editor-search-field--grow {
  min-width: 0;
}

.entity-registry-editor-field-caption {
  font-size: 10px;
  font-weight: 600;
  text-transform: uppercase;
  letter-spacing: 0.03em;
  opacity: 0.65;
}

.entity-registry-editor-search-bar .entity-registry-editor-input {
  margin-bottom: 0;
}

.entity-registry-editor-search-actions {
  display: flex;
  flex-wrap: wrap;
  gap: 6px;
  align-items: center;
  justify-content: flex-end;
}

.entity-registry-editor-search-results {
  padding: 0 12px 12px;
  max-height: min(140px, 22vh);
  overflow: auto;
  font-size: 12px;
  flex-shrink: 0;
}

.modal-card.entity-registry-editor-card .entity-registry-editor-search-bar,
.modal-card.entity-registry-editor-card .entity-registry-editor-search-results {
  flex-shrink: 0;
}

.entity-editor-search-hit {
  padding: 6px 0;
  border-bottom: 1px solid rgba(0, 0, 0, 0.06);
}

.entity-editor-search-hit code {
  display: block;
  font-size: 11px;
  margin-bottom: 2px;
}

.menu-index-experimental-notice {
  margin: 0;
  padding: 8px 10px;
  font-size: 11px;
  line-height: 1.45;
  color: #991b1b;
  border: 1px dashed rgba(220, 38, 38, 0.45);
  border-radius: 8px;
  background: rgba(255, 255, 255, 0.72);
}

.menu-index-experimental-notice code {
  font-size: 10px;
  color: #7f1d1d;
}

.header-index-flush-btn--all {
  border-color: rgba(234, 88, 12, 0.35);
  background: linear-gradient(180deg, #ffedd5 0%, #fed7aa 100%);
  color: #9a3412;
}

.header-index-flush-btn--all:hover {
  border-color: rgba(234, 88, 12, 0.55);
  background: linear-gradient(180deg, #fed7aa 0%, #fdba74 100%);
  box-shadow: 0 2px 8px rgba(234, 88, 12, 0.16);
}

.header-index-flush-icon {
  font-size: 12px;
  line-height: 1;
}

.header-index-popover-body {
  flex: 1 1 auto;
  min-height: 0;
  overflow-x: hidden;
  overflow-y: auto;
  overscroll-behavior: contain;
  padding: 10px 14px 14px;
  background: #fff;
}

.header-index-popover-body.menu-index-panel-body {
  border-top: 0;
}

.header-chat-icon {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  font-size: 15px;
  line-height: 1;
}

.header-chat-label {
  font-size: 12px;
  font-weight: 700;
  letter-spacing: 0.04em;
}

.header-tool-btn--notifications.has-unread {
  border-color: #f59e0b;
  box-shadow: 0 0 0 2px rgba(245, 158, 11, 0.18);
}

.header-notifications-badge {
  position: absolute;
  top: -4px;
  right: -4px;
  min-width: 16px;
  height: 16px;
  padding: 0 4px;
  border-radius: 999px;
  background: #ef4444;
  color: #fff;
  font-size: 10px;
  font-weight: 800;
  line-height: 16px;
  text-align: center;
  pointer-events: none;
}

.header-notifications-badge.hidden {
  display: none;
}

.workspace-notifications-popover {
  position: fixed;
  z-index: 1100;
  width: 392px;
  max-width: calc(100vw - 24px);
  max-height: min(680px, calc(100vh - 24px));
  display: flex;
  flex-direction: column;
  padding: 12px 14px 14px;
  border: 1px solid var(--border);
  border-radius: 14px;
  background: var(--panel);
  box-shadow: 0 16px 40px rgba(15, 23, 42, 0.18);
}

.workspace-notifications-popover.hidden {
  display: none;
}

.workspace-notifications-head {
  display: flex;
  flex-direction: column;
  gap: 6px;
  flex-shrink: 0;
  margin: -12px -14px 10px;
  padding: 10px 14px;
  border-bottom: 1px solid rgba(148, 163, 184, 0.18);
  border-radius: 14px 14px 0 0;
  background: linear-gradient(180deg, rgba(255, 251, 235, 0.92) 0%, rgba(248, 250, 252, 0.55) 100%);
}

.workspace-notifications-head-main {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 10px;
}

.workspace-notifications-brand {
  display: flex;
  align-items: center;
  gap: 8px;
  min-width: 0;
}

.workspace-notifications-brand-icon {
  flex-shrink: 0;
  width: 28px;
  height: 28px;
  border-radius: 9px;
  display: grid;
  place-items: center;
  font-size: 15px;
  line-height: 1;
  background: #fef3c7;
  border: 1px solid rgba(245, 158, 11, 0.22);
}

.workspace-notifications-title {
  margin: 0;
  font-size: 15px;
  font-weight: 800;
  letter-spacing: -0.01em;
  color: #0f172a;
}

.workspace-notifications-count-badge {
  flex-shrink: 0;
  min-width: 22px;
  height: 22px;
  padding: 0 7px;
  border-radius: 999px;
  background: #f59e0b;
  color: #fff;
  font-size: 11px;
  font-weight: 800;
  line-height: 22px;
  text-align: center;
  font-variant-numeric: tabular-nums;
}

.workspace-notifications-count-badge.hidden {
  display: none;
}

.workspace-notifications-count-badge.is-unread {
  background: #ef4444;
}

.workspace-notifications-meta {
  margin: 0;
  font-size: 11px;
  line-height: 1.3;
  color: #64748b;
  font-variant-numeric: tabular-nums;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
}

.workspace-notifications-meta[data-filter="mcp"] {
  color: #6d28d9;
}

.workspace-notifications-meta[data-filter="ui"] {
  color: #0369a1;
}

.workspace-notifications-meta[data-filter="notify"] {
  color: #be185d;
}

.workspace-notifications-note {
  margin: 0;
  font-size: 10px;
  line-height: 1.35;
  color: #b45309;
}

.workspace-notifications-note.hidden {
  display: none;
}

.workspace-notifications-close {
  border: none;
  background: rgba(255, 255, 255, 0.72);
  color: #64748b;
  font-size: 20px;
  line-height: 1;
  cursor: pointer;
  padding: 4px 8px;
  border-radius: 8px;
  border: 1px solid rgba(148, 163, 184, 0.18);
}

.workspace-notifications-close:hover {
  background: #fff;
  color: var(--text);
}

.workspace-notifications-toolbar {
  flex-shrink: 0;
  margin-bottom: 10px;
}

.workspace-notifications-filters {
  display: flex;
  flex-wrap: wrap;
  gap: 6px;
}

.workspace-notifications-filter {
  border: 1px solid #e2e8f0;
  border-radius: 999px;
  background: #f8fafc;
  color: #64748b;
  font-size: 11px;
  font-weight: 700;
  line-height: 1;
  padding: 6px 10px;
  cursor: pointer;
  transition: border-color 0.15s ease, background 0.15s ease, color 0.15s ease;
}

.workspace-notifications-filter:hover {
  border-color: #cbd5e1;
  background: #fff;
  color: #334155;
}

.workspace-notifications-filter.is-active {
  border-color: #6366f1;
  background: rgba(99, 102, 241, 0.12);
  color: #4338ca;
}

.workspace-notifications-list {
  display: flex;
  flex-direction: column;
  gap: 8px;
  flex: 1 1 auto;
  min-height: 0;
  max-height: min(480px, calc(100vh - 220px));
  overflow-x: hidden;
  overflow-y: auto;
  scrollbar-width: none;
  -ms-overflow-style: none;
}

.workspace-notifications-list::-webkit-scrollbar {
  width: 0;
  height: 0;
  display: none;
}

.header-tool-btn--notifications.is-muted {
  border-color: #e2e8f0;
  background: #f1f5f9;
  color: #94a3b8;
  box-shadow: none;
}

.header-tool-btn--notifications.is-muted:hover {
  border-color: #cbd5e1;
  background: #e2e8f0;
  color: #64748b;
}

.workspace-notifications-footer {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 10px;
  flex-shrink: 0;
  margin-top: 10px;
  padding-top: 10px;
  border-top: 1px solid rgba(148, 163, 184, 0.22);
}

.workspace-notifications-journal-btn,
.workspace-notifications-mute-btn {
  border: 1px solid #e2e8f0;
  border-radius: 8px;
  background: #f8fafc;
  color: #64748b;
  font-size: 11px;
  font-weight: 700;
  line-height: 1;
  padding: 7px 12px;
  cursor: pointer;
}

.workspace-notifications-mute-btn:hover {
  border-color: #cbd5e1;
  background: #fff;
  color: #334155;
}

.workspace-notifications-mute-btn.is-muted {
  border-color: #c7d2fe;
  background: rgba(99, 102, 241, 0.1);
  color: #4338ca;
}

.workspace-notifications-clear-btn {
  margin-left: auto;
  border: 1px solid #fecaca;
  border-radius: 8px;
  background: #fff1f2;
  color: #be123c;
  font-size: 11px;
  font-weight: 700;
  line-height: 1;
  padding: 7px 12px;
  cursor: pointer;
}

.workspace-notifications-clear-btn:hover:not(:disabled) {
  border-color: #fda4af;
  background: #ffe4e6;
}

.workspace-notifications-clear-btn:disabled {
  opacity: 0.45;
  cursor: default;
}

.workspace-notifications-empty {
  margin: 0;
  padding: 20px 10px;
  text-align: center;
  font-size: 12px;
  line-height: 1.5;
  color: #94a3b8;
}

.workspace-notifications-day {
  margin: 4px 0 2px;
  padding: 7px 8px;
  font-size: 11px;
  font-weight: 800;
  letter-spacing: 0.05em;
  text-transform: uppercase;
  color: #475569;
  border-radius: 8px;
  background: #f1f5f9;
  border: 1px solid rgba(148, 163, 184, 0.18);
}

.workspace-notifications-day:first-child {
  margin-top: 0;
}

.workspace-notification-row {
  display: grid;
  grid-template-columns: 34px minmax(0, 1fr) auto;
  gap: 10px 12px;
  align-items: start;
  width: 100%;
  padding: 10px 11px;
  border: 1px solid #e2e8f0;
  border-radius: 11px;
  background: #f8fafc;
  text-align: left;
  cursor: pointer;
  transition: border-color 0.15s ease, background 0.15s ease, box-shadow 0.15s ease;
}

.workspace-notification-row:hover {
  border-color: #cbd5e1;
  background: #fff;
  box-shadow: 0 2px 8px rgba(15, 23, 42, 0.06);
}

.workspace-notification-row.is-unread {
  border-color: #fcd34d;
  background: linear-gradient(135deg, #fffbeb 0%, #fff 100%);
  box-shadow: inset 3px 0 0 #f59e0b;
}

.workspace-notification-icon {
  flex-shrink: 0;
  width: 34px;
  height: 34px;
  border-radius: 9px;
  display: grid;
  place-items: center;
  font-size: 15px;
  background: #e2e8f0;
}

.workspace-notification-icon.is-create {
  background: #dcfce7;
}

.workspace-notification-icon.is-update {
  background: #dbeafe;
}

.workspace-notification-icon.is-delete {
  background: #fee2e2;
}

.workspace-notification-icon.is-move {
  background: #ede9fe;
}

.workspace-notification-icon.is-notify {
  background: #fce7f3;
}

.workspace-notification-icon.is-life,
.workspace-journal-item-icon.is-life {
  background: #fce7f3;
}

.workspace-notification-icon.is-action,
.workspace-journal-item-icon.is-action {
  background: #dbeafe;
}

.workspace-notification-icon.is-ui,
.workspace-journal-item-icon.is-ui {
  background: #dcfce7;
}

.workspace-notification-icon.is-system,
.workspace-journal-item-icon.is-system {
  background: #e2e8f0;
}

.workspace-notification-message {
  font-size: 11px;
  line-height: 1.4;
  color: #64748b;
  display: -webkit-box;
  -webkit-line-clamp: 3;
  -webkit-box-orient: vertical;
  overflow: hidden;
}

.workspace-notification-body {
  min-width: 0;
  display: flex;
  flex-direction: column;
  gap: 3px;
}

.workspace-notification-top {
  display: flex;
  align-items: flex-start;
  min-width: 0;
}

.workspace-notification-badges {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 5px;
  min-width: 0;
}

.workspace-notification-action {
  font-size: 11px;
  font-weight: 700;
  color: #0f172a;
}

.workspace-notification-source {
  flex-shrink: 0;
  font-size: 9px;
  font-weight: 800;
  letter-spacing: 0.05em;
  text-transform: uppercase;
  padding: 2px 6px;
  border-radius: 999px;
  background: #e2e8f0;
  color: #64748b;
}

.workspace-notification-source.is-mcp {
  background: rgba(124, 58, 237, 0.14);
  color: #6d28d9;
}

.workspace-notification-source.is-ui {
  background: rgba(14, 165, 233, 0.14);
  color: #0369a1;
}

.workspace-notification-source.is-api {
  background: rgba(16, 185, 129, 0.14);
  color: #047857;
}

.workspace-notification-source.is-external {
  background: rgba(245, 158, 11, 0.16);
  color: #b45309;
}

.workspace-notification-label {
  font-size: 13px;
  font-weight: 600;
  color: #1e293b;
  line-height: 1.3;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
}

.workspace-notification-topic {
  font-size: 11px;
  color: #64748b;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
}

.workspace-notification-path {
  font-size: 10px;
  font-family: ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, monospace;
  color: #94a3b8;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
}

.workspace-notification-meta {
  display: flex;
  flex-direction: column;
  align-items: flex-end;
  gap: 4px;
  flex-shrink: 0;
  padding-top: 1px;
}

.workspace-notification-num {
  font-size: 10px;
  font-weight: 800;
  letter-spacing: 0.03em;
  color: #94a3b8;
  font-variant-numeric: tabular-nums;
  white-space: nowrap;
}

.workspace-notification-row.is-unread .workspace-notification-num {
  color: #b45309;
}

.workspace-notification-time {
  font-size: 13px;
  font-weight: 700;
  color: #6366f1;
  font-variant-numeric: tabular-nums;
  white-space: nowrap;
  line-height: 1.2;
}

.workspace-notification-row.is-unread .workspace-notification-time {
  color: #d97706;
}

.workspace-notification-unread-dot {
  width: 7px;
  height: 7px;
  border-radius: 50%;
  background: #f59e0b;
  box-shadow: 0 0 0 2px rgba(245, 158, 11, 0.22);
}

.header-tool-btn--logout {
  border-color: #fecaca;
  background: #fef2f2;
  color: #991b1b;
}

.header-tool-btn--logout:hover {
  border-color: #f87171;
  background: #fee2e2;
  color: #7f1d1d;
}

.props-viz-maps-group {
  margin-top: 10px;
  padding-top: 10px;
  border-top: 1px dashed var(--border, #e2e8f0);
}

.doc-viz-maps-content .props-viz-maps-group {
  margin-top: 0;
  padding-top: 0;
  border-top: none;
}

.doc-viz-maps-empty {
  margin: 0;
  padding: 8px 4px;
  color: #64748b;
  font-size: 11px;
  line-height: 1.4;
}

.node-entry-overview-viz-maps-card {
  margin-top: 0;
}

.node-entry-overview-viz-maps-body.is-loading {
  opacity: 0.72;
}

.node-entry-overview-viz-maps-loading {
  margin: 0;
  padding: 8px 2px;
  color: #64748b;
  font-size: 11px;
}

.node-entry-overview-viz-maps-list {
  display: flex;
  flex-direction: column;
  gap: 6px;
}

.node-entry-overview-viz-map-row-wrap {
  display: flex;
  align-items: stretch;
  gap: 6px;
}

.node-entry-overview-viz-map-row-wrap .node-entry-overview-viz-map-row {
  flex: 1 1 auto;
  min-width: 0;
}

.node-entry-overview-viz-map-preview-btn,
.node-entry-overview-viz-map-delete-btn {
  flex: 0 0 auto;
  align-self: stretch;
  min-width: 40px;
  padding: 0 10px;
  font-size: 16px;
  line-height: 1;
}

.node-entry-overview-viz-map-delete-btn:hover,
.node-entry-overview-viz-map-delete-btn:focus-visible,
.entry-overview-viz-map-preview-delete:hover,
.entry-overview-viz-map-preview-delete:focus-visible {
  border-color: #fca5a5;
  background: #fef2f2;
  color: #b91c1c;
}

.node-entry-overview-viz-map-row {
  width: 100%;
  text-align: left;
  cursor: pointer;
  border: 1px solid #e2e8f0;
  background: #f8fafc;
}

.node-entry-overview-viz-map-row:hover,
.node-entry-overview-viz-map-row:focus-visible {
  border-color: #93c5fd;
  background: #eff6ff;
}

.node-entry-overview-viz-map-icon {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 28px;
  height: 28px;
  font-size: 16px;
  line-height: 1;
}

.node-navigation-memory-badge--viz {
  background: #dbeafe;
  color: #1e40af;
}

.node-entry-overview-viz-maps-head-actions {
  display: flex;
  flex-shrink: 0;
  align-items: center;
  gap: 6px;
}

.node-entry-overview-viz-maps-add-btn {
  min-width: 32px;
  padding: 0 10px;
  font-weight: 400;
}

.node-entry-overview-viz-maps-add-glyph {
  display: block;
  font-size: 17px;
  font-weight: 300;
  line-height: 1;
}

.entry-overview-viz-maps-create-popover {
  position: fixed;
  z-index: 12050;
  min-width: 200px;
  max-width: min(280px, calc(100vw - 16px));
  max-height: min(320px, calc(100vh - 16px));
  overflow: auto;
}

.entry-overview-viz-maps-create-popover-title {
  padding: 8px 12px 4px;
  font-size: 10px;
  font-weight: 700;
  letter-spacing: 0.04em;
  text-transform: uppercase;
  color: #64748b;
}

.entry-overview-viz-maps-create-popover .menu-context-menu-btn {
  text-align: left;
  white-space: normal;
}

.entry-overview-viz-map-preview-modal {
  z-index: 1120;
}

.entry-overview-viz-map-preview-card {
  width: min(80vw, 1400px);
  max-height: min(85vh, 960px);
  display: flex;
  flex-direction: column;
  padding: 0;
  overflow: hidden;
}

.entry-overview-viz-map-preview-head {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: 12px;
  padding: 14px 16px 10px;
  border-bottom: 1px solid var(--border, #e2e8f0);
  flex: 0 0 auto;
}

.entry-overview-viz-map-preview-title {
  margin: 0;
  font-size: 15px;
  font-weight: 700;
  line-height: 1.3;
  color: #0f172a;
}

.entry-overview-viz-map-preview-head-actions {
  display: flex;
  flex-shrink: 0;
  align-items: center;
  gap: 8px;
}

.entry-overview-viz-map-preview-close {
  min-width: 36px;
  padding: 0 10px;
  font-size: 22px;
  line-height: 1;
}

.entry-overview-viz-map-preview-body {
  flex: 1 1 auto;
  min-height: 120px;
  overflow: auto;
  padding: 12px 16px 18px;
}

.entry-overview-viz-map-preview-body.is-loading {
  display: flex;
  align-items: center;
  justify-content: center;
}

.entry-overview-viz-map-preview-loading,
.entry-overview-viz-map-preview-error {
  margin: 0;
  font-size: 13px;
  color: #64748b;
}

.entry-overview-viz-map-preview-error {
  color: #b91c1c;
}

.entry-overview-viz-map-preview-inner {
  max-width: none;
}

.entry-overview-viz-maps-create-loading,
.entry-overview-viz-maps-create-error {
  padding: 8px 12px;
  font-size: 11px;
  color: #64748b;
  list-style: none;
}

.props-viz-maps-hint {
  margin: 0 0 8px;
  color: #64748b;
  font-size: 10px;
  line-height: 1.35;
}

.props-viz-maps-list {
  display: flex;
  flex-direction: column;
  gap: 6px;
}

.props-viz-maps-row {
  display: flex;
  align-items: center;
  gap: 8px;
  padding: 6px 8px;
  border: 1px solid #e2e8f0;
  border-radius: 8px;
  background: #f8fafc;
}

.props-viz-maps-row-icon {
  flex: 0 0 auto;
  font-size: 16px;
  line-height: 1;
}

.props-viz-maps-row-copy {
  flex: 1 1 auto;
  min-width: 0;
}

.props-viz-maps-row-label {
  font-size: 11px;
  font-weight: 700;
  color: #0f172a;
  line-height: 1.2;
}

.props-viz-maps-row-meta {
  margin-top: 2px;
  font-size: 9px;
  color: #64748b;
  line-height: 1.25;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.props-viz-maps-row-actions {
  flex: 0 0 auto;
}

.props-viz-maps-btn {
  min-height: 26px;
  padding: 2px 8px;
  border: 1px solid #cbd5e1;
  border-radius: 6px;
  background: #fff;
  color: #334155;
  font: inherit;
  font-size: 10px;
  font-weight: 600;
  cursor: pointer;
}

.props-viz-maps-btn:hover {
  border-color: #94a3b8;
  background: #f1f5f9;
}

.props-viz-maps-btn--create {
  border-color: #bfdbfe;
  color: #1d4ed8;
}

.props-viz-maps-btn--delete {
  border-color: #fecaca;
  color: #b91c1c;
}

.props-viz-maps-btn--delete:hover {
  border-color: #fca5a5;
  background: #fef2f2;
}

.props-viz-maps-row-empty {
  color: #94a3b8;
  font-size: 11px;
}

.props-viz-maps-list--loading {
  gap: 10px;
}

.props-viz-maps-loading-status {
  display: flex;
  align-items: center;
  gap: 8px;
  margin: 0;
  padding: 2px 2px 4px;
  color: #64748b;
  font-size: 10px;
  font-weight: 600;
  letter-spacing: 0.01em;
}

.props-viz-maps-loading-spinner {
  flex: 0 0 auto;
  width: 14px;
  height: 14px;
  border: 2px solid #e2e8f0;
  border-top-color: #3b82f6;
  border-radius: 50%;
  animation: props-viz-maps-spin 0.75s linear infinite;
}

@keyframes props-viz-maps-spin {
  to {
    transform: rotate(360deg);
  }
}

.props-viz-maps-skeleton {
  display: flex;
  flex-direction: column;
  gap: 6px;
}

.props-viz-maps-skeleton-row {
  display: flex;
  align-items: center;
  gap: 8px;
  padding: 6px 8px;
  border: 1px solid #e8eef4;
  border-radius: 8px;
  background: linear-gradient(180deg, #f8fafc 0%, #f1f5f9 100%);
  animation: props-viz-maps-skeleton-enter 0.35s ease both;
  animation-delay: var(--viz-skeleton-delay, 0s);
}

@keyframes props-viz-maps-skeleton-enter {
  from {
    opacity: 0;
    transform: translateY(4px);
  }
  to {
    opacity: 1;
    transform: translateY(0);
  }
}

.props-viz-maps-skeleton-icon,
.props-viz-maps-skeleton-line,
.props-viz-maps-skeleton-btn {
  position: relative;
  overflow: hidden;
  border-radius: 6px;
  background: linear-gradient(90deg, #e2e8f0 0%, #f1f5f9 40%, #e2e8f0 80%);
  background-size: 200% 100%;
  animation: props-viz-maps-shimmer 1.25s ease-in-out infinite;
  animation-delay: var(--viz-skeleton-delay, 0s);
}

@keyframes props-viz-maps-shimmer {
  0% {
    background-position: 100% 0;
  }
  100% {
    background-position: -100% 0;
  }
}

.props-viz-maps-skeleton-icon {
  flex: 0 0 auto;
  width: 20px;
  height: 20px;
  border-radius: 6px;
}

.props-viz-maps-skeleton-copy {
  flex: 1 1 auto;
  display: flex;
  flex-direction: column;
  gap: 5px;
  min-width: 0;
}

.props-viz-maps-skeleton-line {
  display: block;
  height: 8px;
  border-radius: 4px;
}

.props-viz-maps-skeleton-line--title {
  width: 58%;
  max-width: 120px;
}

.props-viz-maps-skeleton-line--meta {
  width: 88%;
  max-width: 200px;
  height: 6px;
  opacity: 0.85;
}

.props-viz-maps-skeleton-btn {
  flex: 0 0 auto;
  width: 52px;
  height: 22px;
  border-radius: 6px;
}

.props-viz-maps-empty,
.props-viz-maps-error {
  margin: 4px 0 0;
  padding: 8px 10px;
  border-radius: 8px;
  font-size: 10px;
  line-height: 1.35;
}

.props-viz-maps-empty {
  color: #64748b;
  background: #f8fafc;
  border: 1px dashed #e2e8f0;
}

.props-viz-maps-error {
  color: #991b1b;
  background: #fef2f2;
  border: 1px solid #fecaca;
}

.header-profile-wrap,
.header-locale-wrap {
  position: relative;
  flex-shrink: 0;
}

.header-tool-btn--locale,
.header-ui-locale-btn {
  display: inline-flex;
  align-items: center;
  gap: 5px;
  width: auto;
  min-width: 0;
  height: 36px;
  padding: 3px 8px 3px 4px;
  border-color: #e2e8f0;
  background: linear-gradient(180deg, #ffffff 0%, #f8fafc 100%);
  color: #334155;
  box-shadow: 0 1px 2px rgba(15, 23, 42, 0.06);
  transition:
    border-color 0.15s ease,
    background 0.15s ease,
    color 0.15s ease,
    box-shadow 0.15s ease;
}

.header-ui-locale-btn.is-open {
  border-color: #94a3b8;
  background: #fff;
  box-shadow: 0 0 0 2px rgba(100, 116, 139, 0.18);
}

.header-ui-locale-btn:hover {
  border-color: #cbd5e1;
  background: linear-gradient(180deg, #ffffff 0%, #f1f5f9 100%);
  color: #0f172a;
}

.header-ui-locale-flag {
  flex: 0 0 26px;
  width: 26px;
  height: 26px;
  border-radius: 50%;
  overflow: hidden;
  box-shadow:
    inset 0 0 0 1px rgba(15, 23, 42, 0.08),
    0 1px 2px rgba(15, 23, 42, 0.12);
  background: center / cover no-repeat #e2e8f0;
}

.header-ui-locale-flag--en {
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 60 40'%3E%3Crect width='60' height='40' fill='%23b22234'/%3E%3Cg fill='%23fff'%3E%3Crect y='3.08' width='60' height='3.08'/%3E%3Crect y='9.23' width='60' height='3.08'/%3E%3Crect y='15.38' width='60' height='3.08'/%3E%3Crect y='21.54' width='60' height='3.08'/%3E%3Crect y='27.69' width='60' height='3.08'/%3E%3Crect y='33.85' width='60' height='3.08'/%3E%3C/g%3E%3Crect width='24' height='21.54' fill='%233c3b6e'/%3E%3C/svg%3E");
}

.header-ui-locale-flag--ru {
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 60 40'%3E%3Crect width='60' height='13.33' fill='%23fff'/%3E%3Crect y='13.33' width='60' height='13.34' fill='%230039a6'/%3E%3Crect y='26.67' width='60' height='13.33' fill='%23d52b1e'/%3E%3C/svg%3E");
}

.header-ui-locale-code {
  flex-shrink: 0;
  font-size: 11px;
  font-weight: 700;
  letter-spacing: 0.06em;
  line-height: 1;
  color: #475569;
}

.header-ui-locale-chevron {
  flex-shrink: 0;
  width: 12px;
  height: 12px;
  color: #64748b;
  opacity: 0.85;
  transition: transform 0.15s ease, opacity 0.15s ease;
}

.header-ui-locale-btn.is-open .header-ui-locale-chevron {
  transform: rotate(180deg);
  opacity: 1;
}

.header-ui-locale-menu {
  position: absolute;
  top: calc(100% + 8px);
  right: 0;
  z-index: 1100;
  width: min(248px, calc(100vw - 24px));
  padding: 8px;
  border: 1px solid var(--border);
  border-radius: 12px;
  background: var(--panel);
  box-shadow: 0 16px 40px rgba(15, 23, 42, 0.16);
}

.header-ui-locale-menu.hidden {
  display: none;
}

.header-ui-locale-menu-head {
  padding: 2px 8px 8px;
}

.header-ui-locale-menu-title {
  color: #0f172a;
  font-size: 12px;
  font-weight: 700;
  line-height: 1.3;
}

.header-ui-locale-menu-hint {
  margin: 4px 0 0;
  color: #64748b;
  font-size: 10px;
  line-height: 1.35;
}

.header-ui-locale-menu-item {
  display: flex;
  align-items: center;
  gap: 10px;
  width: 100%;
  min-width: 0;
  margin-top: 2px;
  padding: 8px 10px;
  border: 1px solid transparent;
  border-radius: 10px;
  background: transparent;
  color: #334155;
  font: inherit;
  text-align: left;
  cursor: pointer;
  transition:
    background 0.12s ease,
    border-color 0.12s ease,
    box-shadow 0.12s ease;
}

.header-ui-locale-menu-item:hover {
  background: #f8fafc;
  border-color: #e2e8f0;
}

.header-ui-locale-menu-item.is-active {
  background: linear-gradient(180deg, #ffffff 0%, #f1f5f9 100%);
  border-color: #cbd5e1;
  box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.9);
}

.header-ui-locale-menu-flag {
  flex: 0 0 32px;
  width: 32px;
  height: 32px;
  border-radius: 50%;
  overflow: hidden;
  box-shadow:
    inset 0 0 0 1px rgba(15, 23, 42, 0.1),
    0 2px 6px rgba(15, 23, 42, 0.1);
  background: center / cover no-repeat #e2e8f0;
}

.header-ui-locale-menu-flag--en {
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 60 40'%3E%3Crect width='60' height='40' fill='%23b22234'/%3E%3Cg fill='%23fff'%3E%3Crect y='3.08' width='60' height='3.08'/%3E%3Crect y='9.23' width='60' height='3.08'/%3E%3Crect y='15.38' width='60' height='3.08'/%3E%3Crect y='21.54' width='60' height='3.08'/%3E%3Crect y='27.69' width='60' height='3.08'/%3E%3Crect y='33.85' width='60' height='3.08'/%3E%3C/g%3E%3Crect width='24' height='21.54' fill='%233c3b6e'/%3E%3C/svg%3E");
}

.header-ui-locale-menu-flag--ru {
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 60 40'%3E%3Crect width='60' height='13.33' fill='%23fff'/%3E%3Crect y='13.33' width='60' height='13.34' fill='%230039a6'/%3E%3Crect y='26.67' width='60' height='13.33' fill='%23d52b1e'/%3E%3C/svg%3E");
}

.header-ui-locale-menu-copy {
  display: flex;
  flex: 1 1 auto;
  flex-direction: column;
  gap: 2px;
  min-width: 0;
}

.header-ui-locale-menu-label {
  font-size: 13px;
  font-weight: 700;
  line-height: 1.2;
  color: #0f172a;
}

.header-ui-locale-menu-meta {
  font-size: 10px;
  font-weight: 500;
  line-height: 1.2;
  color: #64748b;
}

.header-ui-locale-menu-check {
  flex-shrink: 0;
  width: 18px;
  color: #2563eb;
  font-size: 14px;
  font-weight: 700;
  line-height: 1;
  opacity: 0;
  transform: scale(0.85);
  transition: opacity 0.12s ease, transform 0.12s ease;
}

.header-ui-locale-menu-item.is-active .header-ui-locale-menu-check {
  opacity: 1;
  transform: scale(1);
}

.header-tool-btn--profile,
.header-user-profile-btn {
  display: inline-flex;
  align-items: center;
  gap: 3px;
  width: auto;
  min-width: 0;
  height: 36px;
  padding: 3px 8px 3px 3px;
  border-color: #bfdbfe;
  background: linear-gradient(180deg, #ffffff 0%, #eff6ff 100%);
  color: #1d4ed8;
  box-shadow: 0 1px 2px rgba(37, 99, 235, 0.08);
  transition:
    border-color 0.15s ease,
    background 0.15s ease,
    color 0.15s ease,
    box-shadow 0.15s ease,
    transform 0.12s ease;
}

.header-user-profile-btn.is-open {
  border-color: #3b82f6;
  background: #fff;
  color: #1d4ed8;
  box-shadow: 0 0 0 2px rgba(59, 130, 246, 0.2);
}

.header-user-profile-chevron {
  flex-shrink: 0;
  width: 12px;
  height: 12px;
  color: #3b82f6;
  opacity: 0.9;
  transition: transform 0.15s ease, opacity 0.15s ease;
}

.header-user-profile-btn.is-open .header-user-profile-chevron {
  transform: rotate(180deg);
  opacity: 1;
}

.header-user-profile-avatar {
  display: flex;
  align-items: center;
  justify-content: center;
  flex: 0 0 28px;
  width: 28px;
  height: 28px;
  border-radius: 50%;
  overflow: hidden;
  background: linear-gradient(135deg, #6366f1 0%, #2563eb 58%, #1d4ed8 100%);
  box-shadow:
    inset 0 1px 0 rgba(255, 255, 255, 0.28),
    0 1px 3px rgba(30, 64, 175, 0.22);
  color: #fff;
  font-size: 11px;
  font-weight: 700;
  letter-spacing: 0.04em;
}

.header-user-profile-avatar img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}

.header-user-profile-avatar-emoji {
  font-size: 14px;
  line-height: 1;
}

.header-user-profile-avatar-initials {
  font-size: 11px;
  font-weight: 700;
  letter-spacing: 0.04em;
}

.header-user-profile-btn:hover {
  border-color: #60a5fa;
  background: linear-gradient(180deg, #ffffff 0%, #dbeafe 100%);
  color: #1e40af;
  box-shadow: 0 2px 8px rgba(37, 99, 235, 0.14);
}

.header-user-profile-btn:hover .header-user-profile-chevron {
  opacity: 1;
}

.header-user-profile-avatar-icon {
  display: block;
  width: 15px;
  height: 15px;
  background: center / contain no-repeat url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='%23ffffff'%3E%3Cpath d='M12 12c2.21 0 4-1.79 4-4s-1.79-4-4-4-4 1.79-4 4 1.79 4 4 4zm0 2c-2.67 0-8 1.34-8 4v2h16v-2c0-2.66-5.33-4-8-4z'/%3E%3C/svg%3E");
}

.header-profile-menu {
  position: absolute;
  top: calc(100% + 8px);
  right: 0;
  z-index: 1100;
  width: min(240px, calc(100vw - 24px));
  padding: 8px;
  border: 1px solid var(--border);
  border-radius: 12px;
  background: var(--panel);
  box-shadow: 0 16px 40px rgba(15, 23, 42, 0.16);
}

.header-profile-menu.hidden {
  display: none;
}

.header-profile-menu-section {
  display: flex;
  flex-direction: column;
  gap: 2px;
}

.header-profile-menu-section-title {
  padding: 2px 8px 4px;
  color: #64748b;
  font-size: 9px;
  font-weight: 700;
  letter-spacing: 0.08em;
  text-transform: uppercase;
}

.header-profile-menu-divider {
  height: 1px;
  margin: 6px 4px;
  background: var(--border);
}

.header-profile-menu-item {
  display: flex;
  align-items: center;
  gap: 6px;
  width: 100%;
  min-width: 0;
  min-height: 28px;
  padding: 4px 8px;
  border: 0;
  border-radius: 6px;
  background: transparent;
  color: #334155;
  font: inherit;
  font-size: 11px;
  font-weight: 600;
  line-height: 1.3;
  text-align: left;
  text-decoration: none;
  cursor: pointer;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
  transition: background 0.12s ease, color 0.12s ease;
}

.header-profile-menu-item:hover {
  background: #f8fafc;
  color: #1e3a8a;
}

.header-profile-menu-item--danger {
  color: #991b1b;
}

.header-profile-menu-item--danger:hover {
  background: #fef2f2;
  color: #7f1d1d;
}

.header-profile-menu-item--companion {
  color: #5b21b6;
}

.header-profile-menu-item--companion:hover {
  background: #f5f3ff;
  color: #4c1d95;
}

.header-profile-menu-item-icon {
  display: block;
  flex: 0 0 auto;
  width: 16px;
  height: 16px;
}

.header-profile-menu-footer {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 6px;
  margin: 2px -2px -2px;
  padding: 8px 6px 6px;
  border-top: 1px solid rgba(148, 163, 184, 0.16);
  background: linear-gradient(180deg, rgba(248, 250, 252, 0.72) 0%, rgba(241, 245, 249, 0.45) 100%);
  border-radius: 0 0 10px 10px;
}

.header-profile-menu-tile {
  display: flex;
  align-items: center;
  gap: 8px;
  min-width: 0;
  min-height: 52px;
  padding: 8px 9px;
  border: 1px solid rgba(148, 163, 184, 0.22);
  border-radius: 10px;
  background: #fff;
  color: #334155;
  font: inherit;
  text-align: left;
  text-decoration: none;
  cursor: pointer;
  box-shadow: 0 1px 2px rgba(15, 23, 42, 0.04);
  transition:
    border-color 0.15s ease,
    background 0.15s ease,
    box-shadow 0.15s ease,
    transform 0.12s ease;
}

.header-profile-menu-tile:hover {
  transform: translateY(-1px);
  box-shadow: 0 4px 12px rgba(15, 23, 42, 0.08);
}

.header-profile-menu-tile--web {
  border-color: rgba(56, 189, 248, 0.28);
  background: linear-gradient(180deg, #ffffff 0%, #f0f9ff 100%);
}

.header-profile-menu-tile--web:hover {
  border-color: #38bdf8;
  background: linear-gradient(180deg, #ffffff 0%, #e0f2fe 100%);
}

.header-profile-menu-tile--companion {
  border-color: rgba(167, 139, 250, 0.28);
  background: linear-gradient(180deg, #ffffff 0%, #faf5ff 100%);
}

.header-profile-menu-tile--companion:hover {
  border-color: #a78bfa;
  background: linear-gradient(180deg, #ffffff 0%, #f3e8ff 100%);
}

.header-profile-menu-tile-icon {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  flex: 0 0 28px;
  width: 28px;
  height: 28px;
  border-radius: 8px;
  background: rgba(14, 165, 233, 0.12);
  font-size: 14px;
  line-height: 1;
}

.header-profile-menu-tile--companion .header-profile-menu-tile-icon-img {
  flex: 0 0 28px;
  width: 28px;
  height: 28px;
  padding: 5px;
  border-radius: 8px;
  background: rgba(139, 92, 246, 0.12);
  box-sizing: border-box;
}

.header-profile-menu-tile-copy {
  display: flex;
  flex-direction: column;
  gap: 1px;
  min-width: 0;
  flex: 1 1 auto;
  overflow: hidden;
}

.header-profile-menu-tile-label,
.header-profile-menu-tile-meta {
  display: block;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.header-profile-menu-tile-label {
  color: #0f172a;
  font-size: 11px;
  font-weight: 700;
  line-height: 1.2;
}

.header-profile-menu-tile-meta {
  color: #64748b;
  font-size: 10px;
  font-weight: 600;
  line-height: 1.2;
}

.header-profile-menu-tile--web .header-profile-menu-tile-meta {
  color: #0369a1;
}

.header-profile-menu-tile--companion .header-profile-menu-tile-meta {
  color: #7c3aed;
}

.header-profile-menu-tile-arrow {
  flex: 0 0 auto;
  color: #38bdf8;
  font-size: 12px;
  font-weight: 700;
  line-height: 1;
  opacity: 0.85;
}

.sidebar-agent-bar {
  display: flex;
  flex-direction: column;
  gap: 8px;
  flex-shrink: 0;
}

.sidebar-agent-controls {
  display: flex;
  align-items: center;
  gap: 6px;
  position: relative;
}

.agents-picker-btns {
  display: flex;
  align-items: center;
  gap: 4px;
  width: 100%;
  overflow-x: auto;
  overflow-y: hidden;
  padding-bottom: 2px;
  scrollbar-width: thin;
  -webkit-overflow-scrolling: touch;
}

.agents-picker-btns::-webkit-scrollbar {
  height: 4px;
}

.agents-picker-btns::-webkit-scrollbar-thumb {
  background: #cbd5e1;
  border-radius: 4px;
}

.agents-picker-btn {
  border: 1px solid var(--border);
  border-radius: 8px;
  background: var(--panel);
  color: #64748b;
  width: 28px;
  height: 28px;
  min-width: 28px;
  min-height: 28px;
  font-size: 13px;
  line-height: 1;
  cursor: pointer;
  padding: 0;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  box-sizing: border-box;
  flex-shrink: 0;
}

.agents-picker-btn:hover {
  border-color: #cbd5e1;
  color: #475569;
  background: #f8fafc;
}

.agents-picker-btn.is-active {
  border-color: var(--accent);
  background: #eef2ff;
  color: #1e3a8a;
  box-shadow: 0 0 0 1px rgba(99, 102, 241, 0.25);
}

.agents-picker-btn.is-preferred {
  border-color: #a5b4fc;
  background: #f5f3ff;
  color: #4338ca;
}

.sidebar-slab-agent:has(.agents-picker-popover:not(.hidden)) {
  position: relative;
  z-index: 100;
  overflow: visible;
}

.sidebar:has(.agents-picker-popover:not(.hidden)) .sidebar-slab-menu-channels-band,
.sidebar:has(.agents-picker-popover:not(.hidden)) .sidebar-slab-menu-tree-band {
  position: relative;
  z-index: 1;
}

.sidebar-agent-select-block:has(.agents-picker-popover:not(.hidden)) {
  position: relative;
  z-index: 2;
  overflow: visible;
}

.sidebar-agent-select-block:has(.agents-picker-popover:not(.hidden)) .sidebar-agent-toolbar {
  position: relative;
  z-index: 20;
  overflow: visible;
}

.sidebar-agent-select-block:has(.agents-picker-popover:not(.hidden)) .agent-todo-preview-wrap {
  z-index: 0;
}

.sidebar-agent-select-block:has(.agent-preview-wrap:not(.hidden)):has(.agents-picker-popover:not(.hidden))
  .sidebar-agent-toolbar {
  z-index: 40;
}

.agents-picker-popover {
  position: fixed;
  z-index: 5000;
  width: auto;
  max-width: none;
  padding: 6px;
  border: 1px solid var(--border);
  border-radius: 12px;
  background: var(--panel);
  box-shadow: 0 16px 40px rgba(15, 23, 42, 0.16);
  overflow: auto;
  box-sizing: border-box;
}

.sidebar-agent-controls--compact {
  justify-content: space-between;
  gap: 8px;
}

.sidebar-agent-toolbar:has(.sidebar-agent-row--roadmap-globe) {
  gap: 8px;
  padding-top: 2px;
}

.sidebar-agent-row--roadmap-globe,
.sidebar-agent-row--git {
  flex-shrink: 0;
}

.sidebar-agent-row--roadmap-globe .sidebar-agent-controls--globe-row {
  min-height: 28px;
}

.sidebar-agent-controls--globe-row {
  justify-content: flex-end;
}

.sidebar-roadmap-globe-btn {
  color: #1d4ed8;
  overflow: hidden;
}

.sidebar-roadmap-globe-btn:hover {
  border-color: #93c5fd;
  background: #eff6ff;
}

.sidebar-roadmap-globe-btn.is-active {
  border-color: #2563eb;
  background: #dbeafe;
  box-shadow: 0 0 0 1px rgba(37, 99, 235, 0.28);
}

.sidebar-roadmap-globe-btn-icon {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 100%;
  height: 100%;
}

.sidebar-roadmap-globe-btn-icon svg,
.sidebar-roadmap-globe-svg {
  width: 18px;
  height: 18px;
  display: block;
}

.sidebar-git-btn {
  overflow: hidden;
}

.sidebar-git-btn.has-git-repo,
.sidebar-git-btn.has-git-repo .agents-picker-tool-icon {
  color: #de4c36;
}

.sidebar-slab-agent .sidebar-git-btn.has-git-repo,
.sidebar-slab-agent .sidebar-git-btn.has-git-repo .agents-picker-tool-icon {
  color: #de4c36;
}

.sidebar-git-btn.has-git-repo:hover {
  color: #c2410c;
  border-color: #fdba74;
  background: #fff7ed;
}

.sidebar-git-btn.has-git-repo.is-active {
  border-color: #de4c36;
  background: #fff7ed;
  box-shadow: 0 0 0 1px rgba(222, 76, 54, 0.28);
}

.sidebar-git-btn .agent-git-btn-icon {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 100%;
  height: 100%;
}

.sidebar-git-btn .agent-git-btn-icon svg {
  width: 16px;
  height: 16px;
  display: block;
}

.agent-select-wrap--sr-only,
.agent-view-select-wrap--sr-only {
  position: absolute;
  width: 1px;
  height: 1px;
  padding: 0;
  margin: -1px;
  overflow: hidden;
  clip: rect(0, 0, 0, 0);
  white-space: nowrap;
  border: 0;
}

.agents-picker-popover .agent-view-select-wrap {
  padding: 0 2px;
}

.agents-picker-popover .agent-view-select {
  width: 100%;
  max-width: none;
}

.agents-picker-popover.hidden {
  display: none;
}

.agents-picker-popover-section {
  margin-top: 0;
}

.agents-picker-popover-section--tools {
  margin-top: 6px;
  padding-top: 6px;
  border-top: 1px solid var(--border);
}

.agents-picker-popover-title {
  margin: 0 0 2px;
  padding-right: 0;
}

.agents-picker-variant-tabs {
  display: flex;
  flex-wrap: wrap;
  gap: 4px;
  margin-bottom: 8px;
}

.agents-picker-variant-tabs.hidden {
  display: none;
}

.agents-picker-variant-tab {
  border: 1px solid var(--border);
  border-radius: 999px;
  background: var(--panel-soft);
  color: #64748b;
  font-size: 10px;
  font-weight: 600;
  line-height: 1;
  padding: 5px 8px;
  cursor: pointer;
}

.agents-picker-variant-tab:hover {
  border-color: var(--accent);
  color: var(--text);
}

.agents-picker-variant-tab.is-active {
  border-color: #6366f1;
  background: #eef2ff;
  color: #3730a3;
}

.agents-picker-stage {
  position: relative;
  min-height: 200px;
  border-radius: 10px;
  background: linear-gradient(165deg, #f8fafc 0%, #eef2ff 55%, #f8fafc 100%);
  overflow: hidden;
}

.agents-picker-stage--strip,
.agents-picker-stage--carousel,
.agents-picker-stage--grid,
.agents-picker-stage--list {
  min-height: auto;
  background: #f8fafc;
  padding: 6px;
}

.agents-picker-stage--tools {
  min-height: 0;
  background: transparent;
  padding: 0;
  overflow: visible;
}

.agents-picker-tools-grid {
  display: flex;
  flex-direction: column;
  gap: 1px;
}

.agents-picker-tools-grid .header-profile-menu-item.is-active {
  background: #eef2ff;
  color: #1e3a8a;
}

.agents-picker-tool-icon {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  flex: 0 0 16px;
  width: 16px;
  height: 16px;
}

.agents-picker-tool-icon svg {
  display: block;
  width: 16px;
  height: 16px;
}

.agents-picker-tool-label {
  flex: 1 1 auto;
  min-width: 0;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.agents-picker-tools-grid .agent-git-btn.has-git-repo .agents-picker-tool-icon {
  color: #de4c36;
}

.agents-picker-tools-grid .agent-awn-types-btn .agents-picker-tool-icon {
  color: #2563eb;
}

.agents-picker-tools-grid .agent-registry-btn .agents-picker-tool-icon {
  color: #0f766e;
}

.agents-picker-tools-grid .agent-large-files-btn .agents-picker-tool-icon {
  color: #7c3aed;
}

.agents-picker-tools-grid .agent-broken-links-btn .agents-picker-tool-icon {
  color: #dc2626;
}

.agents-picker-tools-grid .agent-run-scripts-btn .agents-picker-tool-icon {
  color: #0891b2;
}

.agents-picker-tools-grid .agent-todo-list-btn .agents-picker-tool-icon {
  color: #16a34a;
}

.agents-picker-tools-grid .agent-mcp-methods-btn .agents-picker-tool-icon {
  color: #9333ea;
}

.agents-picker-stage--stack,
.agents-picker-stage--radar {
  min-height: 200px;
}

.agents-picker-empty {
  margin: 0;
  padding: 24px 12px;
  text-align: center;
  font-size: 12px;
  color: #64748b;
}

.agents-picker-orbit-ring {
  position: absolute;
  inset: 18px;
  border: 1px dashed rgba(99, 102, 241, 0.28);
  border-radius: 50%;
  pointer-events: none;
}

.agents-picker-orbit-track {
  position: absolute;
  inset: 0;
  animation: agents-picker-orbit-spin 48s linear infinite;
}

.agents-picker-orbit-node {
  position: absolute;
  left: 50%;
  top: 50%;
  width: 0;
  height: 0;
  transform: rotate(var(--orbit-angle)) translateY(calc(-1 * var(--orbit-radius))) rotate(calc(-1 * var(--orbit-angle)));
}

.agents-picker-orbit-track .agents-picker-agent-btn {
  animation: agents-picker-orbit-counter 48s linear infinite;
}

@keyframes agents-picker-orbit-spin {
  from {
    transform: rotate(0deg);
  }
  to {
    transform: rotate(360deg);
  }
}

@keyframes agents-picker-orbit-counter {
  from {
    transform: translate(-50%, -50%) rotate(0deg);
  }
  to {
    transform: translate(-50%, -50%) rotate(-360deg);
  }
}

.agents-picker-bubble-node {
  position: absolute;
  left: var(--bubble-x);
  top: var(--bubble-y);
  animation: agents-picker-bubble-float var(--bubble-duration, 4s) ease-in-out infinite;
  animation-delay: var(--bubble-delay, 0s);
}

@keyframes agents-picker-bubble-float {
  0%,
  100% {
    transform: translate(-50%, -50%) translateY(0);
  }
  50% {
    transform: translate(-50%, -50%) translateY(-6px);
  }
}

.agents-picker-strip-list {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
  justify-content: center;
}

.agents-picker-carousel-track {
  display: flex;
  gap: 10px;
  overflow-x: auto;
  padding: 4px 2px 8px;
  scroll-snap-type: x mandatory;
  -webkit-overflow-scrolling: touch;
}

.agents-picker-carousel-track .agents-picker-agent-btn {
  flex: 0 0 auto;
  scroll-snap-align: center;
  width: 92px;
  padding: 10px 8px;
  transform: none;
}

.agents-picker-carousel-track .agents-picker-agent-btn:hover {
  transform: translateY(-2px);
}

.agents-picker-carousel-track .agents-picker-agent-btn.is-active {
  transform: none;
}

.agents-picker-grid {
  display: grid;
  grid-template-columns: repeat(auto-fill, minmax(76px, 1fr));
  gap: 8px;
}

.agents-picker-grid .agents-picker-agent-btn {
  width: 100%;
  transform: none;
}

.agents-picker-grid .agents-picker-agent-btn:hover {
  transform: translateY(-2px);
}

.agents-picker-list {
  display: flex;
  flex-direction: column;
  gap: 6px;
  max-height: 240px;
  overflow-y: auto;
}

.agents-picker-agent-btn--row {
  flex-direction: row;
  align-items: center;
  width: 100%;
  gap: 10px;
  padding: 8px 10px;
  text-align: left;
  transform: none;
  box-shadow: 0 2px 8px rgba(15, 23, 42, 0.06);
}

.agents-picker-agent-btn--row:hover {
  transform: none;
  background: #fff;
}

.agents-picker-agent-btn--row.is-active {
  background: #eef2ff;
}

.agents-picker-row-text {
  display: flex;
  flex-direction: column;
  gap: 2px;
  min-width: 0;
  flex: 1;
}

.agents-picker-row-text .agents-picker-name {
  max-width: none;
  font-size: 12px;
  text-align: left;
  white-space: normal;
}

.agents-picker-row-sub {
  font-size: 10px;
  font-weight: 500;
  color: #94a3b8;
  line-height: 1.2;
}

.agents-picker-stack-stage {
  position: relative;
  height: 168px;
  margin: 8px 12px 12px;
}

.agents-picker-stack-card {
  position: absolute;
  left: 50%;
  bottom: 8px;
  transform: translateX(calc(-50% + var(--stack-offset, 0px))) rotate(var(--stack-rotate, 0deg));
  transform-origin: center bottom;
  z-index: var(--stack-z, 1);
}

.agents-picker-stack-card .agents-picker-agent-btn {
  transform: none;
  width: 84px;
}

.agents-picker-stack-card .agents-picker-agent-btn:hover {
  transform: translateY(-3px);
}

.agents-picker-radar-hub {
  position: absolute;
  left: 50%;
  top: 50%;
  width: 10px;
  height: 10px;
  margin: -5px 0 0 -5px;
  border-radius: 50%;
  background: #6366f1;
  box-shadow: 0 0 0 4px rgba(99, 102, 241, 0.2);
  pointer-events: none;
}

.agents-picker-radar-ring {
  position: absolute;
  inset: 22px;
  border: 1px solid rgba(99, 102, 241, 0.2);
  border-radius: 50%;
  pointer-events: none;
}

.agents-picker-radar-spoke {
  position: absolute;
  left: 50%;
  top: 50%;
  width: 1px;
  height: 42%;
  background: linear-gradient(to top, rgba(99, 102, 241, 0.35), transparent);
  transform-origin: center bottom;
  transform: rotate(var(--radar-spoke-angle)) translateY(-100%);
  pointer-events: none;
}

.agents-picker-radar-node {
  position: absolute;
  left: 50%;
  top: 50%;
  width: 0;
  height: 0;
  transform: rotate(var(--radar-angle)) translateY(calc(-1 * var(--radar-radius))) rotate(calc(-1 * var(--radar-angle)));
}

.agents-picker-radar-node .agents-picker-agent-btn {
  position: absolute;
  left: 0;
  top: 0;
  transform: translate(-50%, -50%);
}

.agents-picker-radar-node .agents-picker-agent-btn:hover {
  transform: translate(-50%, -50%) scale(1.05);
}

.agents-picker-agent-btn {
  position: relative;
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 4px;
  border: 2px solid transparent;
  border-radius: 12px;
  background: rgba(255, 255, 255, 0.82);
  padding: 6px;
  cursor: pointer;
  min-width: 0;
  box-shadow: 0 4px 12px rgba(15, 23, 42, 0.08);
  transition: border-color 0.15s ease, transform 0.15s ease, box-shadow 0.15s ease;
}

.agents-picker-orbit-node .agents-picker-agent-btn,
.agents-picker-bubble-node .agents-picker-agent-btn {
  position: absolute;
  left: 0;
  top: 0;
  transform: translate(-50%, -50%);
}

.agents-picker-agent-btn:hover {
  border-color: rgba(99, 102, 241, 0.45);
  transform: translate(-50%, -50%) scale(1.05);
}

.agents-picker-agent-btn.is-active {
  border-color: #6366f1;
  box-shadow: 0 0 0 2px rgba(99, 102, 241, 0.2);
}

.agents-picker-strip-list .agents-picker-agent-btn {
  transform: none;
  width: 78px;
}

.agents-picker-strip-list .agents-picker-agent-btn:hover {
  transform: translateY(-2px);
}

.agents-picker-strip-list .agents-picker-agent-btn.is-active {
  transform: none;
}

.agents-picker-avatar {
  width: var(--picker-avatar-size, 40px);
  height: var(--picker-avatar-size, 40px);
  border-radius: 50%;
  object-fit: cover;
  display: block;
  background: #e2e8f0;
}

.agents-picker-avatar-fallback {
  width: var(--picker-avatar-size, 40px);
  height: var(--picker-avatar-size, 40px);
  border-radius: 50%;
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: calc(var(--picker-avatar-size, 40px) * 0.34);
  font-weight: 700;
  color: #fff;
  background: linear-gradient(135deg, #6366f1, #8b5cf6);
  letter-spacing: 0.02em;
}

.agents-picker-avatar-emoji {
  width: var(--picker-avatar-size, 40px);
  height: var(--picker-avatar-size, 40px);
  border-radius: 50%;
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: calc(var(--picker-avatar-size, 40px) * 0.52);
  line-height: 1;
  background: #f8fafc;
}

.agents-picker-name {
  max-width: 72px;
  font-size: 10px;
  font-weight: 600;
  line-height: 1.2;
  color: #334155;
  text-align: center;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.agents-picker-registry-status {
  font-size: 9px;
  font-weight: 700;
  line-height: 1.2;
  letter-spacing: 0.02em;
}

.agents-picker-registry-status--on {
  color: #15803d;
}

.agents-picker-registry-status--off {
  color: #94a3b8;
}

.agents-picker-agent-btn.is-registry-off {
  opacity: 0.62;
  filter: grayscale(0.35);
}

.agents-picker-agent-btn.is-registry-off .agents-picker-avatar,
.agents-picker-agent-btn.is-registry-off .agents-picker-avatar-fallback {
  opacity: 0.85;
}

.agents-picker-agent-btn.is-registry-off:hover {
  border-color: #cbd5e1;
  transform: none;
}

.agents-picker-strip-list .agents-picker-name {
  max-width: 100%;
}

.agents-picker-default-badge {
  position: absolute;
  top: 2px;
  right: 2px;
  width: 8px;
  height: 8px;
  border-radius: 50%;
  background: #22c55e;
  border: 1px solid #fff;
}

@media (prefers-reduced-motion: reduce) {
  .agents-picker-orbit-track,
  .agents-picker-orbit-track .agents-picker-agent-btn,
  .agents-picker-bubble-node {
    animation: none;
  }
}

.agent-select,
.agent-view-select,
.sidebar-agent-bar .agents-manage-btn,
.sidebar-agent-bar .agents-picker-btn,
.agent-view-toggle,
.menu-view-toggle,
.agent-view-btn,
.menu-view-btn,
.menu-refresh-btn,
.menu-collapse-all-btn,
.menu-pin-branch-btn,
.menu-settings-btn {
  height: 28px;
  min-height: 28px;
  box-sizing: border-box;
}

.agent-select-wrap {
  flex: 1 1 auto;
  min-width: 0;
}

.agents-manage-btn {
  border: 1px solid var(--border);
  border-radius: 8px;
  background: var(--panel);
  color: #64748b;
  width: 28px;
  height: 28px;
  font-size: 14px;
  line-height: 1;
  cursor: pointer;
  flex-shrink: 0;
  padding: 0;
  display: inline-flex;
  align-items: center;
  justify-content: center;
}

.agents-manage-btn:hover {
  border-color: #cbd5e1;
  background: #f8fafc;
  color: #475569;
}

.sidebar-agent-bar .agents-manage-btn {
  width: 28px;
  height: 28px;
  flex: 0 0 28px;
}

.agent-preview-wrap {
  width: 100%;
  border: 1px solid var(--border);
  border-radius: 10px;
  background: linear-gradient(145deg, #eef2ff 0%, #f8fafc 48%, #e2e8f0 100%);
  overflow: hidden;
  padding: 3px;
}

.agent-preview-wrap.hidden {
  display: none;
}

.agent-preview-portrait:not(.hidden) {
  animation: agent-preview-border-pulse 7s ease-in-out infinite alternate;
}

.agent-preview-frame {
  position: relative;
  overflow: hidden;
  border-radius: 7px;
  background: #0f172a;
  min-height: 96px;
}

.agent-preview-thumb {
  display: block;
  width: 100%;
  height: 96px;
  object-fit: cover;
  object-position: center 28%;
  transform-origin: center center;
  opacity: 0;
  transition: opacity 0.45s ease;
}

.agent-preview-wrap.is-revealed .agent-preview-thumb {
  opacity: 1;
  animation: agent-preview-orbit 18s ease-in-out infinite;
}

.agent-preview-shine {
  position: absolute;
  inset: 0;
  background: linear-gradient(
    120deg,
    transparent 42%,
    rgba(167, 139, 250, 0.12) 50%,
    transparent 58%
  );
  transform: translateX(-120%) skewX(-12deg);
  animation: agent-preview-prism 9s ease-in-out infinite;
  pointer-events: none;
}

@keyframes agent-preview-orbit {
  0% {
    transform: scale(1.1) translate3d(-2.5%, 1.5%, 0);
    filter: brightness(1) saturate(1.02);
  }
  33% {
    transform: scale(1.14) translate3d(1.5%, -2%, 0);
    filter: brightness(1.05) saturate(1.06);
  }
  66% {
    transform: scale(1.12) translate3d(2.5%, 1%, 0);
    filter: brightness(1.03) saturate(1.04);
  }
  100% {
    transform: scale(1.1) translate3d(-1.5%, -1%, 0);
    filter: brightness(1) saturate(1.02);
  }
}

@keyframes agent-preview-border-pulse {
  0% {
    box-shadow:
      0 0 0 1px rgba(99, 102, 241, 0.14),
      0 4px 16px rgba(99, 102, 241, 0.08);
  }
  100% {
    box-shadow:
      0 0 0 1px rgba(167, 139, 250, 0.32),
      0 10px 28px rgba(59, 130, 246, 0.14);
  }
}

@keyframes agent-preview-prism {
  0%,
  100% {
    transform: translateX(-120%) skewX(-12deg);
    opacity: 0;
  }
  45% {
    opacity: 0.85;
  }
  55% {
    transform: translateX(120%) skewX(-12deg);
    opacity: 0;
  }
}

.agent-preview-slider-btn {
  position: absolute;
  z-index: 3;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 22px;
  height: 22px;
  margin: 0;
  padding: 0;
  border: 1px solid rgba(255, 255, 255, 0.45);
  border-radius: 999px;
  background: rgba(15, 23, 42, 0.72);
  color: #f8fafc;
  font-size: 12px;
  font-weight: 700;
  line-height: 1;
  cursor: pointer;
  backdrop-filter: blur(4px);
  transition: background 0.15s ease, border-color 0.15s ease, transform 0.15s ease;
}

.agent-preview-slide-counter {
  position: absolute;
  top: 6px;
  right: 34px;
  z-index: 3;
  padding: 2px 7px;
  border: 1px solid rgba(255, 255, 255, 0.35);
  border-radius: 999px;
  background: rgba(15, 23, 42, 0.72);
  color: #f8fafc;
  font-size: 10px;
  font-weight: 700;
  line-height: 1.3;
  letter-spacing: 0.02em;
  pointer-events: none;
  backdrop-filter: blur(4px);
}

.agent-preview-slide-counter.hidden {
  display: none;
}

.agent-preview-slider-info-btn {
  top: 6px;
  right: 6px;
  font-size: 11px;
  letter-spacing: -0.06em;
  font-weight: 800;
}

.agent-preview-slider-info-icon {
  display: block;
  line-height: 1;
  transform: translateY(-0.5px);
}

.agent-preview-slider-btn:hover,
.agent-preview-slider-btn:focus-visible {
  background: rgba(15, 23, 42, 0.92);
  border-color: rgba(255, 255, 255, 0.75);
  outline: none;
  transform: scale(1.05);
}

.modal-card.agent-slider-modal-card {
  width: min(760px, calc(100vw - 32px));
  max-height: calc(100vh - 48px);
  overflow: auto;
}

.agent-slider-modal-open-library-btn {
  margin-left: 0.35rem;
  padding: 0;
  border: 0;
  background: none;
  color: #2563eb;
  font: inherit;
  font-size: 0.8125rem;
  cursor: pointer;
  text-decoration: underline;
  text-underline-offset: 2px;
}

.agent-slider-modal-open-library-btn:hover,
.agent-slider-modal-open-library-btn:focus-visible {
  color: #1d4ed8;
}

.agent-slider-modal-path {
  margin: 0 0 12px;
  padding: 8px 10px;
  border-radius: 8px;
  background: #f1f5f9;
  color: #475569;
  font-family: ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace;
  font-size: 12px;
  line-height: 1.45;
  word-break: break-all;
}

.agent-slider-modal-upload {
  margin-bottom: 14px;
}

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

@media (max-width: 720px) {
  .agent-slider-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}

.agent-slider-grid-item {
  display: flex;
  flex-direction: column;
  gap: 8px;
  margin: 0;
  min-width: 0;
}

.agent-slider-grid-thumb-wrap {
  position: relative;
  overflow: hidden;
  border: 1px solid rgba(148, 163, 184, 0.35);
  border-radius: 10px;
  background: #0f172a;
  aspect-ratio: 4 / 3;
}

.agent-slider-grid-thumb {
  display: block;
  width: 100%;
  height: 100%;
  object-fit: cover;
}

.agent-slider-grid-meta {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 8px;
  min-width: 0;
}

.agent-slider-grid-name {
  min-width: 0;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
  font-size: 11px;
  color: #64748b;
}

.agent-slider-grid-delete-btn {
  flex: 0 0 auto;
  margin: 0;
  padding: 3px 8px;
  border: 1px solid rgba(248, 113, 113, 0.45);
  border-radius: 999px;
  background: #fff;
  color: #b91c1c;
  font-size: 11px;
  font-weight: 600;
  cursor: pointer;
}

.agent-slider-grid-delete-btn:hover,
.agent-slider-grid-delete-btn:focus-visible {
  background: #fef2f2;
  outline: none;
}

.agent-slider-empty-note {
  margin: 0;
  padding: 8px 2px 2px;
  color: #64748b;
  font-size: 13px;
}

@media (prefers-reduced-motion: reduce) {
  .agent-preview-portrait:not(.hidden),
  .agent-preview-wrap.is-revealed .agent-preview-thumb,
  .agent-preview-shine,
  .sidebar-agent-avatar-block .agent-preview-wrap:not(.hidden),
  .sidebar-agent-avatar-block .agent-preview-frame,
  .agent-preview-placeholder {
    animation: none;
  }

  .agent-preview-wrap.is-revealed .agent-preview-thumb,
  .sidebar-agent-avatar-block .agent-preview-wrap.is-revealed .agent-preview-thumb {
    opacity: 1;
    transform: none;
    filter: none;
  }
}

.content-search-wrap {
  position: relative;
  flex: 1 1 360px;
  min-width: 280px;
  max-width: 760px;
}

.content-search-bar {
  display: flex;
  align-items: stretch;
  border: 1px solid var(--border);
  border-radius: 999px;
  background: #f8fafc;
  overflow: hidden;
  transition: border-color 0.15s ease, box-shadow 0.15s ease, background 0.15s ease;
}

.content-search-bar--compact {
  gap: 0;
}

.content-search-mode-toggle {
  flex: 0 0 auto;
  display: inline-flex;
  align-items: stretch;
  margin: 4px 0 4px 4px;
  padding: 2px;
  border-radius: 999px;
  background: #ecfdf5;
  border: 1px solid rgba(16, 185, 129, 0.18);
}

.content-search-mode-btn {
  min-width: 28px;
  height: 26px;
  margin: 0;
  padding: 0 8px;
  border: 0;
  border-radius: 999px;
  background: transparent;
  color: #047857;
  font-size: 12px;
  font-weight: 700;
  line-height: 1;
  cursor: pointer;
  transition: background 0.15s ease, color 0.15s ease, box-shadow 0.15s ease;
}

.content-search-mode-btn.is-active {
  background: #fff;
  color: #065f46;
  box-shadow: 0 1px 2px rgba(15, 23, 42, 0.08);
}

.content-search-mode-btn:focus {
  outline: none;
}

.content-search-mode-btn:focus-visible {
  box-shadow: 0 0 0 2px rgba(16, 185, 129, 0.28);
}

.content-search-bar--id .content-search-mode-toggle {
  background: #eff6ff;
  border-color: rgba(59, 130, 246, 0.22);
}

.content-search-bar--id .content-search-mode-btn {
  color: #1d4ed8;
}

.content-search-bar--id .content-search-filters-btn {
  opacity: 0.45;
  pointer-events: none;
}

.content-search-actions {
  flex: 0 0 auto;
  display: inline-flex;
  align-items: stretch;
  min-width: 0;
  border-left: 1px solid var(--border);
}

.content-search-filters-btn {
  position: relative;
  flex: 0 0 auto;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 34px;
  margin: 0;
  padding: 0;
  border: 0;
  border-right: 1px solid var(--border);
  background: #f8fafc;
  color: #64748b;
  cursor: pointer;
  transition: background 0.15s ease, color 0.15s ease;
}

.content-search-filters-btn:hover,
.content-search-filters-btn[aria-expanded="true"],
.content-search-filters-btn.has-active-filters {
  background: #eef2ff;
  color: #4338ca;
}

.content-search-filters-btn:focus {
  outline: none;
}

.content-search-filters-btn:focus-visible {
  box-shadow: inset 0 0 0 2px rgba(67, 56, 202, 0.28);
}

.content-search-filters-icon {
  display: block;
  width: 16px;
  height: 16px;
}

.content-search-filters-badge {
  position: absolute;
  top: 4px;
  right: 4px;
  min-width: 14px;
  height: 14px;
  padding: 0 3px;
  border-radius: 999px;
  background: #4338ca;
  color: #fff;
  font-size: 9px;
  font-weight: 700;
  line-height: 14px;
  text-align: center;
}

.content-search-filters-badge.hidden {
  display: none;
}

.content-search-filters-popover {
  position: fixed;
  z-index: 1200;
  display: flex;
  flex-direction: column;
  gap: 10px;
  padding: 12px 14px 14px;
  border: 1px solid var(--border);
  border-radius: 12px;
  background: var(--panel);
  box-shadow: 0 14px 32px rgba(15, 23, 42, 0.14);
}

.content-search-filters-popover.hidden {
  display: none;
}

.content-search-filters-popover-title {
  font-size: 13px;
  font-weight: 700;
  color: var(--text);
}

.content-search-filters-popover-hint {
  margin: -4px 0 0;
  font-size: 11px;
  line-height: 1.35;
  color: var(--muted);
}

.content-search-filter-field {
  display: flex;
  flex-direction: column;
  gap: 4px;
}

.content-search-filter-label {
  font-size: 11px;
  font-weight: 600;
  color: #64748b;
}

.content-search-filter-control,
.content-search-filters-popover .content-search-scope,
.content-search-filters-popover .content-search-match,
.content-search-filters-popover .content-search-type {
  width: 100%;
  max-width: none;
  box-sizing: border-box;
  border: 1px solid var(--border);
  border-radius: 8px;
  background: #f8fafc;
  color: #334155;
  padding: 8px 28px 8px 10px;
  font-size: 12px;
  font-weight: 600;
  cursor: pointer;
  appearance: none;
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 20 20' fill='%2364748b'%3E%3Cpath fill-rule='evenodd' d='M5.23 7.21a.75.75 0 011.06.02L10 10.94l3.71-3.71a.75.75 0 111.06 1.06l-4.24 4.25a.75.75 0 01-1.06 0L5.21 8.29a.75.75 0 01.02-1.08z'/%3E%3C/svg%3E");
  background-repeat: no-repeat;
  background-position: right 8px center;
  background-size: 14px;
}

.content-search-filters-popover.is-semantic .content-search-filter-field--meta {
  opacity: 0.45;
  pointer-events: none;
}

.content-search-filters-divider {
  margin: 8px 0 4px;
  padding-top: 8px;
  border-top: 1px solid #e2e8f0;
  font-size: 11px;
  font-weight: 700;
  letter-spacing: 0.04em;
  text-transform: uppercase;
  color: #64748b;
}

.content-search-advanced-summary {
  margin: 0 0 8px;
  font-size: 11px;
  line-height: 1.45;
  color: #64748b;
}

.content-search-advanced-open-btn {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 6px;
  align-self: stretch;
  margin-bottom: 4px;
  padding: 8px 12px;
  border: 1px solid rgba(22, 163, 74, 0.28);
  border-radius: 8px;
  background: linear-gradient(180deg, #f0fdf4 0%, #ecfdf5 100%);
  color: #15803d;
  font-size: 12px;
  font-weight: 600;
  line-height: 1.2;
  cursor: pointer;
  transition: background 0.15s ease, border-color 0.15s ease, box-shadow 0.15s ease;
}

.content-search-advanced-open-btn:hover:not(:disabled) {
  background: #dcfce7;
  border-color: rgba(22, 163, 74, 0.45);
}

.content-search-advanced-open-btn:disabled {
  opacity: 0.45;
  cursor: not-allowed;
}

.content-search-dql-input {
  width: 100%;
  min-height: 12rem;
  margin: 0 0 0.75rem;
  padding: 0.65rem 0.75rem;
  font-family: ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, monospace;
  font-size: 0.8125rem;
  line-height: 1.45;
  border: 1px solid var(--border-subtle, #d1d5db);
  border-radius: 8px;
  resize: vertical;
  box-sizing: border-box;
}

.content-search-dql-modal-card {
  max-width: 42rem;
  width: min(92vw, 42rem);
}

.content-search-dql-tabs {
  display: flex;
  gap: 0.35rem;
  margin-bottom: 0.5rem;
}

.content-search-dql-tab {
  font-size: 0.8125rem;
  padding: 0.25rem 0.55rem;
  border-radius: 6px;
  border: 1px solid var(--border-subtle, #d1d5db);
  background: transparent;
  cursor: pointer;
}

.content-search-dql-tab.is-active {
  background: var(--accent-soft, #eef2ff);
  border-color: var(--accent, #6366f1);
}

.content-search-dql-panel.hidden {
  display: none;
}

.content-search-dql-label {
  display: block;
  font-size: 0.75rem;
  margin: 0.5rem 0 0.25rem;
}

.content-search-dql-field-input {
  width: 100%;
  box-sizing: border-box;
  padding: 0.4rem 0.5rem;
  border: 1px solid var(--border-subtle, #d1d5db);
  border-radius: 6px;
  font-size: 0.8125rem;
}

.content-search-dql-builder-rows {
  display: flex;
  flex-direction: column;
  gap: 0.35rem;
  margin: 0.35rem 0;
}

.content-search-dql-builder-row {
  display: grid;
  grid-template-columns: 1fr auto 1fr auto;
  gap: 0.35rem;
  align-items: center;
}

.content-search-dql-views-actions {
  display: flex;
  flex-wrap: wrap;
  gap: 0.35rem;
  margin-top: 0.5rem;
  align-items: center;
}

.content-search-advanced-modal-overlay {
  z-index: 12050;
}

.content-search-advanced-modal-header {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: 12px;
}

.content-search-advanced-modal-subtitle {
  margin: 4px 0 0;
  font-size: 12px;
  line-height: 1.45;
  color: #64748b;
}

.content-search-advanced-rows {
  display: flex;
  flex-direction: column;
  gap: 10px;
  overflow-y: auto;
  max-height: min(52vh, 460px);
  padding-right: 2px;
}

.content-search-advanced-row {
  display: grid;
  grid-template-columns: minmax(220px, 1.5fr) minmax(130px, 0.75fr) minmax(180px, 1fr) 36px;
  gap: 10px;
  align-items: end;
  padding: 12px;
  border: 1px solid #e2e8f0;
  border-radius: 12px;
  background: linear-gradient(180deg, #ffffff 0%, #f8fafc 100%);
  box-shadow: 0 1px 2px rgba(15, 23, 42, 0.04);
}

.content-search-advanced-cell {
  display: flex;
  flex-direction: column;
  gap: 5px;
  min-width: 0;
}

.content-search-advanced-cell-label {
  font-size: 11px;
  font-weight: 700;
  letter-spacing: 0.02em;
  color: #64748b;
}

.content-search-field-picker,
.content-search-value-picker {
  position: relative;
  width: 100%;
}

.content-search-field-picker-input,
.content-search-advanced-value-input,
.content-search-advanced-row .content-search-advanced-op {
  width: 100%;
  box-sizing: border-box;
  min-height: 36px;
  border: 1px solid #cbd5e1;
  border-radius: 10px;
  background: #fff;
  color: #1e293b;
  padding: 8px 11px;
  font-size: 12px;
  font-weight: 600;
  transition: border-color 0.15s ease, box-shadow 0.15s ease;
}

.content-search-field-picker-input:focus,
.content-search-advanced-value-input:focus,
.content-search-advanced-row .content-search-advanced-op:focus {
  outline: none;
  border-color: #818cf8;
  box-shadow: 0 0 0 3px rgba(99, 102, 241, 0.16);
}

.content-search-field-picker-input:disabled,
.content-search-advanced-value-input:disabled {
  background: #f1f5f9;
  color: #94a3b8;
  cursor: not-allowed;
}

.content-search-field-picker-menu {
  position: absolute;
  z-index: 5;
  top: calc(100% + 4px);
  left: 0;
  right: 0;
  max-height: 220px;
  overflow: auto;
  border: 1px solid #dbeafe;
  border-radius: 10px;
  background: #fff;
  box-shadow: 0 12px 28px rgba(15, 23, 42, 0.14);
}

.content-search-field-picker-option {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  gap: 2px;
  width: 100%;
  padding: 8px 11px;
  border: 0;
  border-bottom: 1px solid #f1f5f9;
  background: transparent;
  text-align: left;
  cursor: pointer;
}

.content-search-field-picker-option:last-child {
  border-bottom: 0;
}

.content-search-field-picker-option:hover,
.content-search-field-picker-option:focus-visible {
  background: #eef2ff;
  outline: none;
}

.content-search-field-picker-option-title {
  font-size: 12px;
  font-weight: 700;
  color: #1e293b;
  line-height: 1.3;
}

.content-search-field-picker-option-key {
  font-size: 11px;
  font-weight: 600;
  color: #64748b;
  font-family: ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, monospace;
}

.content-search-advanced-remove-btn {
  width: 36px;
  height: 36px;
  border: 1px solid #e2e8f0;
  border-radius: 10px;
  background: #fff;
  color: #64748b;
  font-size: 18px;
  line-height: 1;
  cursor: pointer;
  transition: background 0.15s ease, border-color 0.15s ease, color 0.15s ease;
}

.content-search-advanced-remove-btn:disabled {
  opacity: 0.35;
  cursor: not-allowed;
}

.content-search-advanced-remove-btn:not(:disabled):hover {
  background: #fee2e2;
  border-color: #fecaca;
  color: #b91c1c;
}

.content-search-advanced-modal-toolbar {
  display: flex;
  align-items: center;
}

.content-search-advanced-modal-footer {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
  padding-top: 10px;
  border-top: 1px solid #e2e8f0;
}

.content-search-advanced-modal-footer-actions {
  display: flex;
  align-items: center;
  gap: 8px;
}

.content-search-advanced-btn {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 6px;
  min-height: 36px;
  margin: 0;
  padding: 8px 14px;
  border-radius: 10px;
  font-size: 12px;
  font-weight: 700;
  line-height: 1.2;
  cursor: pointer;
  transition: background 0.15s ease, border-color 0.15s ease, box-shadow 0.15s ease, color 0.15s ease;
}

.content-search-advanced-btn--ghost {
  border: 1px solid #cbd5e1;
  background: #fff;
  color: #475569;
}

.content-search-advanced-btn--ghost:hover {
  background: #f8fafc;
  border-color: #94a3b8;
}

.content-search-advanced-btn--add {
  border: 1px dashed rgba(67, 56, 202, 0.35);
  background: #f8faff;
  color: #4338ca;
}

.content-search-advanced-btn--add:hover {
  background: #eef2ff;
  border-color: rgba(67, 56, 202, 0.55);
}

.content-search-advanced-btn--primary {
  border: 1px solid rgba(67, 56, 202, 0.35);
  background: linear-gradient(180deg, #6366f1 0%, #4f46e5 100%);
  color: #fff;
  box-shadow: 0 4px 12px rgba(79, 70, 229, 0.24);
}

.content-search-advanced-btn--primary:hover {
  background: linear-gradient(180deg, #4f46e5 0%, #4338ca 100%);
  border-color: rgba(67, 56, 202, 0.55);
}

@media (max-width: 720px) {
  .content-search-advanced-row {
    grid-template-columns: 1fr;
  }

  .content-search-advanced-remove-btn {
    justify-self: end;
  }

  .content-search-advanced-modal-footer {
    flex-direction: column;
    align-items: stretch;
  }

  .content-search-advanced-modal-footer-actions {
    justify-content: stretch;
  }

  .content-search-advanced-modal-footer-actions .content-search-advanced-btn {
    flex: 1 1 0;
  }
}

.content-search-filters-reset-btn {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 6px;
  align-self: stretch;
  margin-top: 2px;
  padding: 8px 12px;
  border: 1px solid rgba(67, 56, 202, 0.24);
  border-radius: 8px;
  background: linear-gradient(180deg, #f5f7ff 0%, #eef2ff 100%);
  color: #4338ca;
  font-size: 12px;
  font-weight: 600;
  line-height: 1.2;
  cursor: pointer;
  transition: background 0.15s ease, border-color 0.15s ease, box-shadow 0.15s ease, transform 0.15s ease;
}

.content-search-filters-reset-btn:hover {
  background: #e0e7ff;
  border-color: rgba(67, 56, 202, 0.38);
}

.content-search-filters-reset-btn:focus {
  outline: none;
}

.content-search-filters-reset-btn:focus-visible {
  box-shadow: 0 0 0 3px rgba(67, 56, 202, 0.18);
}

.content-search-filters-reset-btn:active {
  transform: translateY(1px);
}

.content-search-filters-reset-icon {
  font-size: 13px;
  line-height: 1;
  opacity: 0.9;
}

.content-search-input-zone {
  flex: 1 1 auto;
  display: flex;
  flex-wrap: nowrap;
  align-items: center;
  gap: 6px;
  min-width: 0;
  padding-left: 8px;
  overflow: hidden;
}

.content-search-input-icon {
  flex: 0 0 16px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 16px;
  height: 16px;
  align-self: center;
  color: #94a3b8;
  pointer-events: none;
}

.content-search-input-icon svg {
  width: 16px;
  height: 16px;
  display: block;
}

.content-search-bar:focus-within .content-search-input-icon {
  color: #64748b;
}

.content-search-bar--semantic:focus-within .content-search-input-icon {
  color: #7c3aed;
}

.content-search-bar--id:focus-within .content-search-input-icon {
  color: #2563eb;
}

.content-search-mode-btn.is-disabled,
.content-search-mode-btn:disabled {
  opacity: 0.45;
  cursor: not-allowed;
}

.content-search-hint.is-warning {
  color: #b45309;
}

.content-search-active-filters {
  display: flex;
  flex: 0 1 auto;
  flex-wrap: nowrap;
  align-items: center;
  gap: 4px;
  min-width: 0;
  max-width: min(52%, 320px);
  overflow-x: auto;
  overscroll-behavior: contain;
  scrollbar-width: none;
  padding: 2px 0;
  margin: 0;
}

.content-search-active-filters::-webkit-scrollbar {
  display: none;
}

.content-search-active-filters.hidden {
  display: none;
}

.content-search-filter-chip {
  display: inline-flex;
  align-items: center;
  gap: 4px;
  max-width: 140px;
  min-height: 22px;
  padding: 2px 4px 2px 8px;
  border: 1px solid rgba(67, 56, 202, 0.18);
  border-radius: 999px;
  background: rgba(255, 255, 255, 0.92);
  color: #4338ca;
  font-size: 10px;
  font-weight: 700;
  line-height: 1.2;
  cursor: pointer;
  box-shadow: 0 1px 2px rgba(15, 23, 42, 0.06);
  flex: 0 0 auto;
}

.content-search-filter-chip-label {
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.content-search-filter-chip-x {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 16px;
  height: 16px;
  border-radius: 999px;
  background: rgba(67, 56, 202, 0.1);
  color: #4338ca;
  font-size: 12px;
  line-height: 1;
  flex: 0 0 auto;
}

.content-search-filter-chip:hover {
  background: #eef2ff;
  border-color: rgba(67, 56, 202, 0.32);
}

.content-search-filter-chip:hover .content-search-filter-chip-x {
  background: rgba(67, 56, 202, 0.18);
}

.content-search-bar.has-active-filters .content-search-input {
  padding-left: 2px;
}

.content-search-bar.has-active-filters .content-search-input::placeholder {
  color: #94a3b8;
}

.content-search-bar:focus-within {
  border-color: var(--accent);
  background: var(--panel);
  box-shadow: 0 0 0 3px rgba(59, 130, 246, 0.12);
}

.content-search-scope {
  flex: 0 0 auto;
  max-width: 148px;
  border: 0;
  border-right: 1px solid var(--border);
  background: #eef3ff;
  color: #334155;
  padding: 8px 24px 8px 12px;
  font-size: 12px;
  font-weight: 600;
  cursor: pointer;
  appearance: none;
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 20 20' fill='%2364748b'%3E%3Cpath fill-rule='evenodd' d='M5.23 7.21a.75.75 0 011.06.02L10 10.94l3.71-3.71a.75.75 0 111.06 1.06l-4.24 4.25a.75.75 0 01-1.06 0L5.21 8.29a.75.75 0 01.02-1.08z'/%3E%3C/svg%3E");
  background-repeat: no-repeat;
  background-position: right 8px center;
  background-size: 14px;
}

.content-search-mode {
  flex: 0 0 auto;
  max-width: 92px;
  border: 0;
  border-right: 1px solid var(--border);
  background: #ecfdf5;
  color: #065f46;
  padding: 8px 24px 8px 12px;
  font-size: 12px;
  font-weight: 600;
  cursor: pointer;
  appearance: none;
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 20 20' fill='%23059669'%3E%3Cpath fill-rule='evenodd' d='M5.23 7.21a.75.75 0 011.06.02L10 10.94l3.71-3.71a.75.75 0 111.06 1.06l-4.24 4.25a.75.75 0 01-1.06 0L5.21 8.29a.75.75 0 01.02-1.08z'/%3E%3C/svg%3E");
  background-repeat: no-repeat;
  background-position: right 8px center;
  background-size: 14px;
}

.content-search-mode:focus,
.content-search-scope:focus {
  outline: none;
}

.content-search-bar--semantic .content-search-filters-btn {
  opacity: 0.55;
}

.content-search-scope option:disabled {
  color: #94a3b8;
}

.content-search-input {
  flex: 1 1 auto;
  width: auto;
  min-width: 72px;
  border: 0;
  border-radius: 0;
  background: transparent;
  color: var(--text);
  padding: 8px 10px 8px 0;
  font-size: 13px;
}

.content-search-input::placeholder {
  color: #94a3b8;
}

.content-search-input:focus {
  outline: none;
}

.content-search-spinner {
  flex: 0 0 auto;
  align-self: center;
  width: 16px;
  height: 16px;
  margin-right: 6px;
  border: 2px solid rgba(148, 163, 184, 0.35);
  border-top-color: #3b82f6;
  border-radius: 50%;
  animation: content-search-spin 0.65s linear infinite;
}

.content-search-spinner.hidden {
  display: none;
}

.content-search-bar.is-loading {
  border-color: rgba(59, 130, 246, 0.45);
  background: #fff;
}

.content-search-bar.is-loading .content-search-input::placeholder {
  color: #64748b;
}

.content-search-loading {
  display: flex;
  align-items: center;
  gap: 10px;
  padding: 14px 16px;
  color: #64748b;
  font-size: 13px;
}

.content-search-loading-spinner {
  width: 18px;
  height: 18px;
  flex-shrink: 0;
  border: 2px solid rgba(148, 163, 184, 0.35);
  border-top-color: #3b82f6;
  border-radius: 50%;
  animation: content-search-spin 0.65s linear infinite;
}

.content-search-loading-text {
  line-height: 1.3;
}

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

.content-search-match {
  flex: 0 0 auto;
  max-width: 108px;
  border: 0;
  border-right: 1px solid var(--border);
  background: #eef3ff;
  color: #334155;
  padding: 8px 22px 8px 10px;
  font-size: 12px;
  font-weight: 600;
  cursor: pointer;
  appearance: none;
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 20 20' fill='%2364748b'%3E%3Cpath fill-rule='evenodd' d='M5.23 7.21a.75.75 0 011.06.02L10 10.94l3.71-3.71a.75.75 0 111.06 1.06l-4.24 4.25a.75.75 0 01-1.06 0L5.21 8.29a.75.75 0 01.02-1.08z'/%3E%3C/svg%3E");
  background-repeat: no-repeat;
  background-position: right 6px center;
  background-size: 14px;
}

.content-search-match:focus {
  outline: none;
}

.content-search-type-wrap {
  display: flex;
  align-items: stretch;
  flex: 0 0 auto;
  min-width: 0;
  border-left: 1px solid var(--border);
}

.content-search-bar--compact .content-search-path-scope {
  border-right: 1px solid var(--border);
}

.content-search-path-scope {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 5px;
  flex: 0 0 auto;
  box-sizing: border-box;
  padding: 8px 0;
  border: 0;
  border-right: 1px solid var(--border);
  background: #f8fafc;
  color: #64748b;
  font-size: 12px;
  font-weight: 600;
  line-height: 1;
  cursor: copy;
  user-select: none;
}

.content-search-path-scope.is-empty {
  width: 34px;
  min-width: 34px;
  max-width: 34px;
  padding: 8px 0;
  justify-content: center;
}

.content-search-path-scope.is-empty .content-search-path-scope-label {
  display: none;
}

.content-search-path-scope.is-drop-target {
  background: #eff6ff;
  color: #2563eb;
  box-shadow: inset 0 0 0 2px rgba(37, 99, 235, 0.35);
}

.content-search-path-scope.is-active {
  width: auto;
  min-width: 96px;
  max-width: 168px;
  padding: 8px 2px 8px 8px;
  background: #f1f5f9;
  color: #334155;
  cursor: default;
  justify-content: flex-start;
}

.content-search-path-scope-icon {
  display: flex;
  align-items: center;
  justify-content: center;
  flex: 0 0 auto;
  width: 14px;
  height: 14px;
  line-height: 0;
}

.content-search-path-scope-icon svg {
  display: block;
}

.content-search-path-scope-label {
  flex: 1 1 auto;
  min-width: 0;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.content-search-path-scope-clear {
  flex: 0 0 auto;
  width: 18px;
  height: 18px;
  margin-right: 2px;
  border: 0;
  border-radius: 999px;
  background: rgba(100, 116, 139, 0.14);
  color: inherit;
  font-size: 14px;
  line-height: 1;
  cursor: pointer;
  padding: 0;
}

.content-search-path-scope-clear:hover {
  background: rgba(100, 116, 139, 0.24);
}

.content-search-type {
  flex: 0 1 auto;
  min-width: 0;
  max-width: 170px;
  border: 0;
  border-left: 0;
  background: #f1f5f9;
  color: #334155;
  padding: 8px 24px 8px 12px;
  font-size: 12px;
  font-weight: 600;
  cursor: pointer;
  appearance: none;
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 20 20' fill='%2364748b'%3E%3Cpath fill-rule='evenodd' d='M5.23 7.21a.75.75 0 011.06.02L10 10.94l3.71-3.71a.75.75 0 111.06 1.06l-4.24 4.25a.75.75 0 01-1.06 0L5.21 8.29a.75.75 0 01.02-1.08z'/%3E%3C/svg%3E");
  background-repeat: no-repeat;
  background-position: right 8px center;
  background-size: 14px;
}

.content-search-help-btn {
  flex: 0 0 auto;
  width: 34px;
  border: 0;
  background: #eef2ff;
  color: #4338ca;
  font-size: 14px;
  font-weight: 700;
  line-height: 1;
  cursor: pointer;
  transition: background 0.15s ease, color 0.15s ease;
}

.content-search-help-btn:hover,
.content-search-help-btn[aria-expanded="true"] {
  background: #dbeafe;
  color: #1d4ed8;
}

.content-search-help-btn:focus {
  outline: none;
}

.content-search-help-popover {
  position: absolute;
  top: calc(100% + 8px);
  right: 0;
  z-index: 120;
  width: min(360px, calc(100vw - 32px));
  padding: 14px 16px;
  border: 1px solid var(--border);
  border-radius: 12px;
  background: var(--panel);
  box-shadow: 0 12px 32px rgba(15, 23, 42, 0.14);
}

.content-search-help-popover.hidden {
  display: none;
}

.content-search-help-title {
  font-size: 13px;
  font-weight: 700;
  color: #0f172a;
  margin-bottom: 8px;
}

.content-search-help-list {
  margin: 0;
  padding-left: 18px;
  display: grid;
  gap: 8px;
  font-size: 12px;
  line-height: 1.45;
  color: #475569;
}

.content-search-help-list code {
  font-size: 11px;
  background: #f1f5f9;
  border-radius: 4px;
  padding: 1px 4px;
}

.content-search-type:focus {
  outline: none;
}

.content-search-item-badge--type {
  background: #e2e8f0;
  color: #475569;
  font-weight: 600;
}

.content-search-item-badge--match {
  background: #dcfce7;
  color: #166534;
  font-weight: 600;
}

.content-search-item-name {
  font-weight: 700;
  color: #0f172a;
}

.content-search-item-meta {
  font-size: 11px;
  color: #64748b;
  margin-top: 2px;
}

.content-search-results {
  position: absolute;
  top: calc(100% + 6px);
  left: 0;
  right: 0;
  z-index: 40;
  max-height: min(520px, 70vh);
  overflow-y: auto;
  border: 1px solid var(--border);
  border-radius: 12px;
  background: var(--panel);
  box-shadow: 0 12px 32px rgba(15, 23, 42, 0.14);
}

.content-search-results.hidden {
  display: none;
}

.content-search-empty,
.content-search-hint {
  padding: 12px 14px;
  font-size: 12px;
  color: var(--muted);
}

.content-search-item {
  display: block;
  width: 100%;
  border: 0;
  border-bottom: 1px solid #eef2f7;
  background: transparent;
  text-align: left;
  padding: 10px 14px;
  cursor: pointer;
}

.content-search-item-body {
  display: flex;
  align-items: flex-start;
  gap: 10px;
  min-width: 0;
}

.content-search-item-media {
  flex: 0 0 40px;
  width: 40px;
  height: 40px;
  border-radius: 8px;
  overflow: hidden;
  background: #f8fafc;
  border: 1px solid #e2e8f0;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  line-height: 1;
}

.content-search-item-media.is-emoji {
  font-size: 20px;
}

.content-search-item-media.is-placeholder {
  font-size: 11px;
  font-weight: 700;
  color: #64748b;
}

.content-search-item-preview {
  width: 100%;
  height: 100%;
  object-fit: cover;
  display: block;
}

.content-search-item-main {
  flex: 1;
  min-width: 0;
}

.content-search-item:last-child {
  border-bottom: 0;
}

.content-search-item:hover,
.content-search-item:focus-visible {
  outline: none;
  background: var(--panel-soft);
}

.content-search-item-title {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: 8px;
  margin-bottom: 2px;
  font-size: 13px;
  font-weight: 700;
  color: var(--text);
}

.content-search-item-badges {
  display: inline-flex;
  flex-wrap: wrap;
  justify-content: flex-end;
  gap: 4px;
  flex-shrink: 0;
}

.content-search-item-badge {
  flex-shrink: 0;
  font-size: 10px;
  font-weight: 600;
  color: #1e3a8a;
  background: #dbeafe;
  border-radius: 999px;
  padding: 2px 7px;
}

.content-search-item-badge--kind {
  background: #ecfdf5;
  color: #047857;
}

.content-search-item-badge--agent {
  max-width: 140px;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
  background: #e0e7ff;
  color: #3730a3;
}

.content-search-item-file {
  font-size: 11px;
  color: #64748b;
  margin-bottom: 2px;
  word-break: break-word;
}

.content-search-item-path {
  font-size: 10px;
  color: #94a3b8;
  margin-bottom: 4px;
  word-break: break-word;
  line-height: 1.35;
}

.content-search-item-snippet {
  font-size: 12px;
  line-height: 1.45;
  color: #475569;
}

.content-search-item-snippet mark {
  background: #fef08a;
  color: inherit;
  border-radius: 2px;
  padding: 0 1px;
}

.app-header h1,
.app-home-heading {
  margin: 0;
  font-size: 18px;
  font-weight: 700;
}

.app-header-subtitle {
  color: var(--muted);
  font-size: 13px;
}

.app-footer {
  grid-column: 1 / -1;
  grid-row: 3;
  padding: 10px 20px 12px;
  border-top: 1px solid var(--border);
  background: var(--panel);
}

.app-footer-bar {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: 12px;
}

.app-footer-top {
  display: flex;
  align-items: center;
  flex-wrap: wrap;
  gap: 8px 12px;
  flex: 1;
  min-width: 0;
}

.app-footer-actions {
  flex: 0 0 auto;
  display: inline-flex;
  align-items: center;
  gap: 8px;
}

.app-footer-idle-screensaver-hint {
  flex: 0 0 auto;
  display: inline-grid;
  place-items: center;
  width: 32px;
  height: 32px;
  margin: 0;
  padding: 0;
  border-radius: 50%;
  border: 1px solid rgba(147, 197, 253, 0.65);
  background:
    radial-gradient(circle at 30% 25%, rgba(248, 250, 252, 0.95), rgba(239, 246, 255, 0.88) 55%, rgba(224, 231, 255, 0.9));
  color: #1e3a8a;
  font-size: 10px;
  font-weight: 800;
  line-height: 1;
  letter-spacing: -0.02em;
  font-variant-numeric: tabular-nums;
  box-shadow: 0 1px 0 rgba(255, 255, 255, 0.85) inset, 0 2px 8px rgba(59, 130, 246, 0.12);
  cursor: pointer;
  user-select: none;
  transition:
    border-color 0.15s ease,
    background 0.15s ease,
    transform 0.15s ease,
    box-shadow 0.15s ease;
}

.app-footer-idle-screensaver-hint:hover {
  border-color: #93c5fd;
  background: #eff6ff;
  box-shadow: 0 2px 10px rgba(59, 130, 246, 0.22);
  transform: translateY(-1px);
}

.app-footer-idle-screensaver-hint:focus-visible {
  outline: 2px solid #38bdf8;
  outline-offset: 2px;
}

.app-footer-idle-screensaver-hint.hidden {
  display: none;
}

.app-footer-idle-screensaver-hint-label {
  display: block;
  max-width: 28px;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
  text-align: center;
}

.app-footer-focus-timers {
  display: inline-flex;
  align-items: center;
  gap: 6px;
}

.app-footer-pomodoro-wrap {
  position: relative;
}

.app-footer-pomodoro-btn {
  flex: 0 0 auto;
  display: inline-grid;
  place-items: center;
  width: 32px;
  height: 32px;
  margin: 0;
  padding: 0;
  border-radius: 50%;
  border: 1px solid rgba(248, 113, 113, 0.55);
  background:
    radial-gradient(circle at 32% 28%, rgba(254, 226, 226, 0.98), rgba(254, 202, 202, 0.92) 52%, rgba(248, 113, 113, 0.35));
  color: #7f1d1d;
  font-size: 14px;
  line-height: 1;
  cursor: pointer;
  user-select: none;
  box-shadow: 0 1px 0 rgba(255, 255, 255, 0.85) inset, 0 2px 8px rgba(239, 68, 68, 0.18);
  transition:
    border-color 0.15s ease,
    transform 0.15s ease,
    box-shadow 0.15s ease;
}

.app-footer-pomodoro-btn.is-work {
  border-color: rgba(234, 88, 12, 0.75);
  background: linear-gradient(145deg, #fff7ed, #fed7aa);
  color: #9a3412;
  font-size: 10px;
  font-weight: 800;
  font-variant-numeric: tabular-nums;
}

.app-footer-pomodoro-btn.is-break {
  border-color: rgba(52, 211, 153, 0.65);
  background: linear-gradient(145deg, #ecfdf5, #a7f3d0);
}

.app-footer-pomodoro-btn:hover {
  transform: translateY(-1px);
  box-shadow: 0 2px 10px rgba(239, 68, 68, 0.28);
}

.app-footer-pomodoro-btn:focus-visible {
  outline: 2px solid #f87171;
  outline-offset: 2px;
}

.app-footer-pomodoro-btn.hidden {
  display: none;
}

.app-footer-pomodoro-btn-label {
  display: block;
  max-width: 30px;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
  text-align: center;
}

.app-footer-pomodoro-popover {
  position: fixed;
  z-index: 10020;
  display: flex;
  flex-direction: column;
  max-width: calc(100vw - 24px);
  border-radius: 14px;
  border: 1px solid var(--border);
  background: var(--panel);
  box-shadow: 0 18px 48px rgba(15, 23, 42, 0.22);
  overflow: hidden;
}

.app-footer-pomodoro-popover.hidden {
  display: none;
}

.app-footer-pomodoro-popover-head {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 8px;
  padding: 10px 12px;
  border-bottom: 1px solid var(--border);
}

.app-footer-pomodoro-popover-title {
  font-size: 14px;
  font-weight: 700;
}

.app-footer-pomodoro-popover-close {
  width: 28px;
  height: 28px;
  border: none;
  border-radius: 8px;
  background: transparent;
  font-size: 20px;
  line-height: 1;
  cursor: pointer;
  color: var(--muted);
}

.app-footer-pomodoro-popover-body {
  padding: 12px 14px 14px;
  overflow: auto;
}

.app-footer-pomodoro-popover-lead {
  margin: 0 0 10px;
  font-size: 13px;
  line-height: 1.55;
  color: var(--text);
}

.app-footer-pomodoro-status {
  margin: 0 0 12px;
  font-size: 12px;
  font-weight: 600;
  color: var(--muted);
}

.app-footer-pomodoro-popover-actions {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
}

.app-footer-pomodoro-start,
.app-footer-pomodoro-stop {
  padding: 8px 14px;
  border-radius: 999px;
  font-size: 13px;
  font-weight: 700;
  cursor: pointer;
  border: 1px solid transparent;
}

.app-footer-pomodoro-start {
  color: #fff;
  background: linear-gradient(135deg, #ef4444, #ea580c);
  box-shadow: 0 4px 14px rgba(239, 68, 68, 0.35);
}

.app-footer-pomodoro-stop {
  color: #7f1d1d;
  background: #fef2f2;
  border-color: #fecaca;
}

.app-footer-pomodoro-start.hidden,
.app-footer-pomodoro-stop.hidden {
  display: none;
}

.workspace-pomodoro-break {
  position: fixed;
  inset: 0;
  z-index: 9996;
  display: flex;
  align-items: center;
  justify-content: center;
  padding: 28px;
}

.workspace-pomodoro-break.hidden {
  display: none;
}

body.workspace-pomodoro-break-active {
  overflow: hidden;
}

.workspace-pomodoro-break-bg {
  position: absolute;
  inset: 0;
  background:
    radial-gradient(ellipse 75% 55% at 18% 12%, rgba(251, 146, 60, 0.28), transparent 58%),
    radial-gradient(ellipse 70% 50% at 85% 20%, rgba(248, 113, 113, 0.32), transparent 55%),
    radial-gradient(ellipse 90% 65% at 50% 100%, rgba(234, 88, 12, 0.15), transparent 62%),
    linear-gradient(155deg, #1c1917 0%, #292524 40%, #451a03 100%);
}

.workspace-pomodoro-break-panel {
  position: relative;
  z-index: 1;
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 10px;
  max-width: 420px;
  width: 100%;
  padding: 36px 32px 30px;
  text-align: center;
  border-radius: 22px;
  border: 1px solid rgba(251, 146, 60, 0.35);
  background: rgba(28, 25, 23, 0.82);
  box-shadow:
    0 28px 80px rgba(69, 26, 3, 0.45),
    inset 0 1px 0 rgba(254, 243, 199, 0.08);
  backdrop-filter: blur(14px);
}

.workspace-pomodoro-break-eyebrow {
  margin: 0;
  font-size: 13px;
  font-weight: 700;
  color: rgba(254, 215, 170, 0.95);
}

.workspace-pomodoro-break-clock {
  margin: 4px 0 0;
  font-size: clamp(2.5rem, 7vw, 3.25rem);
  font-weight: 800;
  line-height: 1;
  color: #fff7ed;
  font-variant-numeric: tabular-nums;
}

.workspace-pomodoro-break-title {
  margin: 8px 0 0;
  font-size: 1.35rem;
  font-weight: 700;
  color: #ffedd5;
}

.workspace-pomodoro-break-lead {
  margin: 0;
  font-size: 14px;
  line-height: 1.55;
  color: rgba(254, 215, 170, 0.82);
}

.workspace-pomodoro-break-checkpoint {
  width: 100%;
  margin-top: 6px;
  text-align: left;
}

.workspace-pomodoro-break-checkpoint-input {
  display: block;
  width: 100%;
  min-height: 4.5rem;
  box-sizing: border-box;
  padding: 10px 12px;
  font-family: inherit;
  font-size: 14px;
  line-height: 1.45;
  color: #fff7ed;
  background: rgba(12, 10, 9, 0.55);
  border: 1px solid rgba(251, 146, 60, 0.45);
  border-radius: 10px;
  outline: none;
  resize: vertical;
}

.workspace-pomodoro-break-checkpoint-input::placeholder {
  color: rgba(254, 215, 170, 0.45);
}

.workspace-pomodoro-break-checkpoint-input:focus {
  border-color: rgba(251, 191, 36, 0.75);
  box-shadow: 0 0 0 2px rgba(251, 146, 60, 0.25);
}

.workspace-pomodoro-break-emoji {
  display: flex;
  align-items: center;
  justify-content: center;
  margin-top: 14px;
  min-height: 4.75rem;
}

.workspace-pomodoro-break-emoji-icon {
  display: inline-block;
  font-size: clamp(3rem, 16vw, 4.25rem);
  line-height: 1;
  animation: workspace-pomodoro-break-emoji-bounce 2.4s ease-in-out infinite;
}

.workspace-pomodoro-break-emoji-icon.is-swap {
  animation: workspace-pomodoro-break-emoji-pop 0.38s ease-out;
}

@keyframes workspace-pomodoro-break-emoji-bounce {
  0%,
  100% {
    transform: translateY(0);
  }
  40% {
    transform: translateY(-8px);
  }
}

@keyframes workspace-pomodoro-break-emoji-pop {
  0% {
    transform: scale(0.82);
    opacity: 0.55;
  }
  100% {
    transform: scale(1);
    opacity: 1;
  }
}

@media (prefers-reduced-motion: reduce) {
  .workspace-pomodoro-break-emoji-icon {
    animation: none !important;
  }
}

.workspace-pomodoro-break-done {
  margin-top: 14px;
  min-width: 180px;
  padding: 12px 22px;
  border: none;
  border-radius: 999px;
  font-size: 15px;
  font-weight: 700;
  color: #431407;
  cursor: pointer;
  background: linear-gradient(135deg, #fed7aa 0%, #fb923c 48%, #f97316 100%);
  box-shadow: 0 12px 32px rgba(249, 115, 22, 0.35);
}

.workspace-pomodoro-break-done:hover {
  transform: translateY(-1px);
}

.workspace-pomodoro-break-done:focus-visible {
  outline: 2px solid #fb923c;
  outline-offset: 3px;
}

.workspace-pomodoro-break-breaks {
  margin: 10px 0 0;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  gap: 6px;
  font-size: 13px;
  line-height: 1;
  color: rgba(254, 215, 170, 0.82);
}

.workspace-pomodoro-break-breaks-label {
  font-weight: 500;
}

.workspace-pomodoro-break-breaks-badge {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-width: 26px;
  height: 26px;
  padding: 0 7px;
  border-radius: 999px;
  font-size: 13px;
  font-weight: 800;
  font-variant-numeric: tabular-nums;
  color: #fff;
  background: linear-gradient(180deg, #fb923c 0%, #ea580c 100%);
  box-shadow:
    0 0 0 1px rgba(154, 52, 18, 0.45),
    0 4px 14px rgba(234, 88, 12, 0.45);
}

.app-footer-toggle-btn,
.app-footer-journal-btn {
  flex: 0 0 auto;
  display: inline-flex;
  align-items: center;
  gap: 6px;
  margin-top: 1px;
  padding: 4px 12px;
  border: 1px solid var(--border);
  border-radius: 999px;
  background: #f8fafc;
  color: #475569;
  font-size: 12px;
  font-weight: 600;
  line-height: 1.4;
  cursor: pointer;
  white-space: nowrap;
  transition: border-color 0.15s ease, background 0.15s ease, color 0.15s ease;
}

.app-footer-toggle-icon {
  width: 14px;
  height: 14px;
  flex-shrink: 0;
  transition: transform 0.18s ease;
}

.app-footer.is-expanded .app-footer-toggle-icon {
  transform: rotate(180deg);
}

.app-footer-toggle-btn:hover {
  border-color: #93c5fd;
  background: #eff6ff;
  color: #1e40af;
}

.app-footer-voice-cmd-wrap {
  position: relative;
  flex: 0 0 auto;
}

.app-footer-voice-cmd-btn {
  display: inline-grid;
  place-items: center;
  width: 29px;
  height: 29px;
  margin-top: 0;
  padding: 0;
  border: 2px solid #991b1b;
  border-radius: 999px;
  background: linear-gradient(180deg, #ef4444 0%, #dc2626 55%, #b91c1c 100%);
  color: #fff;
  cursor: pointer;
  box-shadow:
    0 0 0 2px rgba(254, 202, 202, 0.85),
    0 2px 10px rgba(220, 38, 38, 0.55),
    inset 0 1px 0 rgba(255, 255, 255, 0.35);
  transition: border-color 0.15s ease, background 0.15s ease, box-shadow 0.15s ease, transform 0.12s ease;
}

.app-footer-voice-cmd-btn-icon {
  display: block;
  width: 15px;
  height: 15px;
  flex-shrink: 0;
  filter: drop-shadow(0 1px 0 rgba(127, 29, 29, 0.35));
}

.app-footer-voice-cmd-btn:hover {
  border-color: #7f1d1d;
  background: linear-gradient(180deg, #f87171 0%, #ef4444 50%, #dc2626 100%);
  box-shadow:
    0 0 0 3px rgba(248, 113, 113, 0.65),
    0 3px 14px rgba(220, 38, 38, 0.65),
    inset 0 1px 0 rgba(255, 255, 255, 0.4);
  transform: scale(1.06);
}

.app-footer-voice-cmd-btn:focus-visible {
  outline: 2px solid #fff;
  outline-offset: 2px;
  box-shadow:
    0 0 0 3px #ef4444,
    0 2px 10px rgba(220, 38, 38, 0.55);
}

.app-footer-voice-cmd-btn[aria-expanded="true"] {
  border-color: #7f1d1d;
  background: linear-gradient(180deg, #dc2626 0%, #b91c1c 100%);
  box-shadow:
    0 0 0 3px rgba(239, 68, 68, 0.75),
    0 0 16px rgba(239, 68, 68, 0.45),
    inset 0 1px 0 rgba(255, 255, 255, 0.25);
  transform: scale(1.04);
}

.app-footer-voice-cmd-popover {
  position: fixed;
  z-index: 1100;
  width: min(480px, calc(100vw - 24px));
  max-width: calc(100vw - 24px);
  max-height: min(72vh, calc(100vh - 24px));
  display: flex;
  flex-direction: column;
  padding: 10px 12px 12px;
  border: 1px solid #fecaca;
  border-radius: 12px;
  background: #fff;
  box-shadow: 0 14px 36px rgba(127, 29, 29, 0.16);
  overflow: hidden;
}

.app-footer-voice-cmd-popover.hidden {
  display: none;
}

.app-footer-voice-cmd-popover-head {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 8px;
  margin: -10px -12px 8px;
  padding: 8px 12px;
  border-bottom: 1px solid rgba(254, 202, 202, 0.65);
  border-radius: 12px 12px 0 0;
  background: linear-gradient(180deg, #fef2f2 0%, #fff 100%);
  flex-shrink: 0;
}

.app-footer-voice-cmd-popover-brand {
  display: inline-flex;
  align-items: center;
  gap: 6px;
  min-width: 0;
}

.app-footer-voice-cmd-popover-icon {
  display: grid;
  place-items: center;
  width: 22px;
  height: 22px;
  border-radius: 7px;
  background: #fee2e2;
  border: 1px solid rgba(248, 113, 113, 0.35);
  font-size: 12px;
  line-height: 1;
  color: #dc2626;
}

.app-footer-voice-cmd-popover-title {
  font-size: 11px;
  font-weight: 800;
  line-height: 1.3;
  color: #991b1b;
}

.app-footer-voice-cmd-popover-close {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 22px;
  height: 22px;
  margin: 0;
  padding: 0;
  border: 1px solid transparent;
  border-radius: 6px;
  background: transparent;
  color: #94a3b8;
  font-size: 16px;
  line-height: 1;
  cursor: pointer;
}

.app-footer-voice-cmd-popover-close:hover {
  border-color: #fecaca;
  background: #fff1f2;
  color: #b91c1c;
}

.app-footer-voice-cmd-body {
  margin: 0;
  min-height: 0;
  flex: 1 1 auto;
  overflow: auto;
  padding: 2px 2px 4px;
  font-size: 12px;
  line-height: 1.45;
  color: #334155;
}

.app-footer-voice-cmd-lead {
  margin: 0 0 10px;
  padding: 8px 10px;
  border-radius: 8px;
  background: #f8fafc;
  border: 1px solid #e2e8f0;
  font-size: 11px;
  line-height: 1.5;
  color: #64748b;
}

.app-footer-voice-cmd-section {
  margin: 0 0 12px;
}

.app-footer-voice-cmd-section:last-child {
  margin-bottom: 0;
}

.app-footer-voice-cmd-section-title {
  margin: 0 0 4px;
  font-size: 12px;
  font-weight: 800;
  color: #1e293b;
}

.app-footer-voice-cmd-section-note {
  margin: 0 0 6px;
  font-size: 11px;
  color: #64748b;
  font-style: italic;
}

.app-footer-voice-cmd-list {
  margin: 0;
  padding: 0;
  list-style: none;
}

.app-footer-voice-cmd-item {
  margin: 0 0 6px;
  padding: 7px 9px;
  border: 1px solid #e2e8f0;
  border-radius: 8px;
  background: #fafafa;
}

.app-footer-voice-cmd-item:last-child {
  margin-bottom: 0;
}

.app-footer-voice-cmd-phrases {
  font-weight: 600;
  color: #0f172a;
  margin-bottom: 4px;
}

.app-footer-voice-cmd-meta {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 4px 6px;
  font-size: 11px;
  color: #64748b;
}

.app-footer-voice-cmd-status {
  display: inline-flex;
  align-items: center;
  padding: 1px 6px;
  border-radius: 999px;
  font-size: 10px;
  font-weight: 700;
  text-transform: uppercase;
  letter-spacing: 0.04em;
}

.app-footer-voice-cmd-status.is-mcp {
  background: #dbeafe;
  color: #1d4ed8;
}

.app-footer-voice-cmd-status.is-local {
  background: #dcfce7;
  color: #166534;
}

.app-footer-voice-cmd-status.is-planned {
  background: #fef3c7;
  color: #b45309;
}

.app-footer-voice-cmd-tool {
  font-family: ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, monospace;
  font-size: 10px;
  padding: 1px 5px;
  border-radius: 4px;
  background: #f1f5f9;
  border: 1px solid #e2e8f0;
  color: #475569;
}

.app-footer-journal-btn {
  border: 1px solid rgba(34, 197, 94, 0.35);
  border-radius: 999px;
  background: rgba(240, 253, 244, 0.95);
  color: #166534;
  font-size: 12px;
  font-weight: 600;
  line-height: 1.4;
  cursor: pointer;
  white-space: nowrap;
  transition: border-color 0.15s ease, background 0.15s ease, color 0.15s ease;
}

.app-footer-journal-btn:hover {
  border-color: rgba(34, 197, 94, 0.55);
  background: #ecfdf5;
  color: #14532d;
}

.app-footer-journal-btn:focus-visible {
  outline: 2px solid rgba(34, 197, 94, 0.45);
  outline-offset: 2px;
}

.app-footer-journal-btn[aria-expanded="true"] {
  border-color: rgba(34, 197, 94, 0.55);
  background: #dcfce7;
  color: #14532d;
}

.app-footer-journal-wrap {
  position: relative;
}

.app-footer-journal-popover {
  position: fixed;
  z-index: 1100;
  width: min(420px, calc(100vw - 24px));
  max-width: calc(100vw - 24px);
  display: flex;
  flex-direction: column;
  padding: 10px 12px 12px;
  border: 1px solid rgba(34, 197, 94, 0.28);
  border-radius: 12px;
  background: #fff;
  box-shadow: 0 14px 36px rgba(22, 101, 52, 0.14);
  overflow: hidden;
}

.app-footer-journal-popover.hidden {
  display: none;
}

.app-footer-journal-popover-head {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 8px;
  margin: -10px -12px 10px;
  padding: 8px 12px;
  border-bottom: 1px solid rgba(187, 247, 208, 0.8);
  border-radius: 12px 12px 0 0;
  background: linear-gradient(180deg, #f0fdf4 0%, #fff 100%);
}

.app-footer-journal-popover-brand {
  display: inline-flex;
  align-items: center;
  gap: 6px;
  min-width: 0;
}

.app-footer-journal-popover-icon {
  display: grid;
  place-items: center;
  width: 22px;
  height: 22px;
  border-radius: 7px;
  background: #dcfce7;
  border: 1px solid rgba(34, 197, 94, 0.25);
  font-size: 12px;
}

.app-footer-journal-popover-title {
  font-size: 13px;
  font-weight: 700;
  color: #14532d;
}

.app-footer-journal-popover-close {
  width: 28px;
  height: 28px;
  border: 0;
  border-radius: 8px;
  background: transparent;
  color: #64748b;
  font-size: 20px;
  line-height: 1;
  cursor: pointer;
}

.app-footer-journal-popover-close:hover {
  background: rgba(148, 163, 184, 0.12);
  color: #0f172a;
}

.app-footer-journal-popover-body {
  display: flex;
  flex-direction: column;
  gap: 10px;
  overflow: auto;
}

.app-footer-journal-field-label {
  display: block;
  margin-bottom: 4px;
  font-size: 12px;
  font-weight: 600;
  color: #64748b;
}

.app-footer-journal-context-input {
  width: 100%;
  box-sizing: border-box;
  padding: 7px 10px;
  border: 1px solid rgba(148, 163, 184, 0.35);
  border-radius: 8px;
  background: #f8fafc;
  color: #475569;
  font-size: 12px;
}

.app-footer-journal-link-field,
.app-footer-journal-notify-field {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  font-size: 13px;
  color: #475569;
}

.app-footer-journal-type-field .workspace-journal-type {
  width: 100%;
}

.app-footer-journal-body-input {
  min-height: 5.5rem;
  max-height: 12rem;
}

.app-footer-journal-popover-foot {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 10px;
  margin-top: 10px;
  padding-top: 10px;
  border-top: 1px solid rgba(148, 163, 184, 0.16);
}

.app-footer-journal-hint {
  font-size: 12px;
  color: #94a3b8;
}

.app-footer-journal-submit {
  height: 34px;
  padding: 0 14px;
  border: 1px solid rgba(34, 197, 94, 0.45);
  border-radius: 8px;
  background: rgba(34, 197, 94, 0.14);
  color: #166534;
  font: inherit;
  font-size: 13px;
  font-weight: 600;
  cursor: pointer;
}

.app-footer-journal-submit:disabled {
  opacity: 0.45;
  cursor: default;
}

.app-footer-toggle-btn:focus-visible {
  outline: 2px solid rgba(59, 130, 246, 0.45);
  outline-offset: 2px;
}

.app-footer.is-expanded .app-footer-toggle-btn {
  border-color: #bfdbfe;
  background: #eff6ff;
  color: #1d4ed8;
}

.app-footer-details {
  margin-top: 8px;
}

.app-footer-details.hidden {
  display: none;
}

.app-footer-copy {
  display: flex;
  flex-direction: column;
  gap: 2px;
  min-width: 0;
  flex: 1 1 220px;
}

.app-footer-title,
.app-footer-tagline {
  display: block;
  min-width: 0;
  max-width: 100%;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.app-footer-title {
  font-size: 13px;
  font-weight: 700;
  color: var(--text);
  line-height: 1.35;
}

.app-footer-tagline {
  font-size: 12px;
  font-weight: 500;
  line-height: 1.35;
  color: #64748b;
}

.app-project-version-badge,
.app-footer-version-badge {
  display: inline-flex;
  align-items: center;
  flex-shrink: 0;
  font-size: 11px;
  font-weight: 700;
  letter-spacing: 0.03em;
  text-transform: lowercase;
  color: #6d28d9;
  padding: 2px 10px;
  border-radius: 999px;
  background: #f5f3ff;
  border: 1px solid #ddd6fe;
  line-height: 1.4;
  font-variant-numeric: tabular-nums;
  box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.7);
}

.app-project-version-badge .app-project-version,
.app-footer-version-badge .app-project-version {
  font-weight: inherit;
  color: inherit;
}

.app-footer-ideas-wrap {
  position: relative;
  flex-shrink: 0;
}

.app-footer-ideas-badge {
  display: inline-flex;
  align-items: center;
  gap: 7px;
  flex-shrink: 0;
  margin: 0;
  padding: 3px 10px 3px 8px;
  border: 1px solid #fecaca;
  border-radius: 999px;
  background: #fef2f2;
  color: #b91c1c;
  font-size: 11px;
  font-weight: 700;
  letter-spacing: 0.03em;
  line-height: 1.4;
  cursor: pointer;
  box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.72);
  transition: background 0.15s ease, border-color 0.15s ease, color 0.15s ease;
}

.app-footer-ideas-badge:hover {
  border-color: #f87171;
  background: #fee2e2;
  color: #991b1b;
}

.app-footer-ideas-badge:focus-visible {
  outline: 2px solid #f87171;
  outline-offset: 2px;
}

.app-footer-ideas-badge[aria-expanded="true"] {
  border-color: #ef4444;
  background: #fee2e2;
  color: #991b1b;
}

.app-footer-ideas-lamp {
  flex-shrink: 0;
}

.app-footer-ideas-label {
  text-transform: uppercase;
}

.app-footer-ideas-count {
  font-variant-numeric: tabular-nums;
  letter-spacing: 0.03em;
}

.app-footer-ideas-count.hidden {
  display: none;
}

.app-footer-ideas-popover {
  position: fixed;
  z-index: 1100;
  width: min(420px, calc(100vw - 24px));
  max-width: calc(100vw - 24px);
  max-height: min(70vh, calc(100vh - 24px));
  display: flex;
  flex-direction: column;
  padding: 10px 12px 12px;
  border: 1px solid #fecaca;
  border-radius: 12px;
  background: #fff;
  box-shadow: 0 14px 36px rgba(127, 29, 29, 0.16);
  overflow: hidden;
}

.app-footer-ideas-popover.hidden {
  display: none;
}

.app-footer-ideas-popover-head {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 8px;
  margin: -10px -12px 8px;
  padding: 8px 12px;
  border-bottom: 1px solid rgba(254, 202, 202, 0.65);
  border-radius: 12px 12px 0 0;
  background: linear-gradient(180deg, #fef2f2 0%, #fff 100%);
}

.app-footer-ideas-popover-brand {
  display: inline-flex;
  align-items: center;
  gap: 6px;
  min-width: 0;
}

.app-footer-ideas-popover-icon {
  display: grid;
  place-items: center;
  width: 22px;
  height: 22px;
  border-radius: 7px;
  background: #fee2e2;
  border: 1px solid rgba(248, 113, 113, 0.35);
  font-size: 12px;
  line-height: 1;
  color: #dc2626;
}

.app-footer-ideas-popover-title {
  font-size: 12px;
  font-weight: 800;
  color: #991b1b;
}

.app-footer-ideas-popover-actions {
  display: inline-flex;
  align-items: center;
  gap: 4px;
  flex-shrink: 0;
}

.app-footer-ideas-edit-btn {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 22px;
  height: 22px;
  padding: 0;
  border: 1px solid rgba(248, 113, 113, 0.28);
  border-radius: 6px;
  background: rgba(255, 255, 255, 0.72);
  color: #b91c1c;
  cursor: pointer;
  transition: background-color 0.15s ease, border-color 0.15s ease, color 0.15s ease;
}

.app-footer-ideas-edit-btn svg {
  width: 13px;
  height: 13px;
  fill: none;
  stroke: currentColor;
  stroke-width: 2;
  stroke-linecap: round;
  stroke-linejoin: round;
}

.app-footer-ideas-edit-btn:hover {
  background: #fff;
  border-color: rgba(248, 113, 113, 0.45);
  color: #991b1b;
}

.app-footer-ideas-edit-btn:focus {
  outline: none;
}

.app-footer-ideas-edit-btn:focus-visible {
  box-shadow: 0 0 0 2px rgba(248, 113, 113, 0.35);
}

.app-footer-ideas-popover-close {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 22px;
  height: 22px;
  margin: 0;
  padding: 0;
  border: 1px solid transparent;
  border-radius: 6px;
  background: transparent;
  color: #94a3b8;
  font-size: 16px;
  line-height: 1;
  cursor: pointer;
}

.app-footer-ideas-popover-close:hover {
  border-color: #fecaca;
  background: #fff1f2;
  color: #b91c1c;
}

.app-footer-ideas-list,
.app-footer-ideas-body {
  margin: 0;
  min-height: 0;
  flex: 1 1 auto;
  overflow: auto;
}

.app-footer-ideas-body {
  padding: 2px 2px 0;
  font-size: 12px;
  line-height: 1.45;
  color: #334155;
}

.app-footer-ideas-body.markdown-preview {
  word-break: break-word;
}

.app-footer-ideas-body.markdown-preview p,
.app-footer-ideas-body.markdown-preview ul,
.app-footer-ideas-body.markdown-preview ol,
.app-footer-ideas-body.markdown-preview pre {
  margin: 0 0 8px;
}

.app-footer-ideas-body.markdown-preview h1,
.app-footer-ideas-body.markdown-preview h2,
.app-footer-ideas-body.markdown-preview h3 {
  margin: 0 0 8px;
  font-size: 13px;
  line-height: 1.3;
}

.app-footer-ideas-body--meta {
  padding: 8px 10px;
  border: 1px dashed #e2e8f0;
  border-radius: 8px;
  background: #f8fafc;
  color: #64748b;
  font-style: italic;
}

.app-footer-ideas-body--meta.is-error {
  color: #b91c1c;
  border-color: #fecaca;
  background: #fef2f2;
  font-style: normal;
}

.app-footer-rule {
  font-size: 12px;
  font-weight: 600;
  color: #1e3a8a;
  padding: 2px 10px;
  border-radius: 999px;
  background: #eef3ff;
  border: 1px solid #dbeafe;
  line-height: 1.4;
}

.app-footer-concept {
  margin: 8px 0 0;
  width: 100%;
  font-size: 12px;
  line-height: 1.55;
  color: #64748b;
}

.app-footer-text {
  margin: 0;
  width: 100%;
  font-size: 12px;
  line-height: 1.55;
  color: var(--muted);
}

.app-footer-quote {
  font-style: italic;
  color: #475569;
}

.sidebar-shell {
  grid-column: 1;
  grid-row: 2 / 3;
  position: relative;
  min-width: 0;
  min-height: 0;
  display: flex;
  flex-direction: column;
}

.sidebar-shell > .scroll-top-btn--docked {
  position: absolute;
  right: calc(14px + var(--scroll-top-shift-x, 0px));
  bottom: calc(14px + var(--scroll-top-shift-y, 0px));
  z-index: 26;
  margin: 0;
}

.sidebar {
  grid-column: auto;
  grid-row: auto;
  flex: 1 1 auto;
  min-height: 0;
  border-right: 1px solid var(--border);
  background: var(--panel);
  padding: 0;
  display: flex;
  flex-direction: column;
  gap: 0;
  min-height: 0;
  position: relative;
  overflow-x: hidden;
  overflow-y: auto;
  overscroll-behavior: contain;
  -webkit-overflow-scrolling: touch;
  box-sizing: border-box;
}

.sidebar-scroll-chrome {
  position: sticky;
  top: 0;
  z-index: 18;
  height: 0;
  overflow: visible;
  pointer-events: none;
  opacity: 0;
  transition: opacity 0.2s ease;
}

.sidebar-scroll-chrome .scroll-progress-track {
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  z-index: 1;
}

.sidebar-scroll-chrome.is-active {
  opacity: 1;
}

.agent-focus-panel--sidebar .agent-focus-list--compact {
  padding: 0 1px 1px;
  box-sizing: border-box;
}

.sidebar-scroll-chrome .scroll-depth-indicator,
.workspace-scroll-host .scroll-depth-indicator,
.discuss-messages-scroll-chrome .scroll-depth-indicator {
  top: 8px;
  right: 12px;
}

.discuss-messages-scroll-chrome.is-active {
  opacity: 1;
}

.sidebar-slab:not(.sidebar-slab-menu):not(.sidebar-slab-menu-tree-band):not(.sidebar-slab-menu-channels-band) {
  flex-shrink: 0;
  border-bottom: 1px solid var(--border);
  background: var(--panel);
  box-sizing: border-box;
}

.sidebar-slab {
  border-bottom: 1px solid var(--border);
  background: var(--panel);
  box-sizing: border-box;
}

.sidebar-slab.sidebar-slab-agent {
  padding: 0;
  border-bottom: none;
}

.sidebar-agent-select-block {
  display: flex;
  flex-direction: column;
  padding: 0;
  border-bottom: 0;
  box-sizing: border-box;
}

.sidebar-agent-toolbar {
  display: flex;
  flex-direction: column;
  gap: 8px;
  padding: 8px 12px 10px;
  box-sizing: border-box;
}

.sidebar-agent-toolbar-avatar {
  flex: 0 0 36px;
  width: 36px;
  height: 36px;
  padding: 0;
  border: 2px solid #facc15;
  border-radius: 50%;
  background: linear-gradient(145deg, #312e81, #1e3a8a);
  box-shadow:
    0 0 0 2px rgba(250, 204, 21, 0.18),
    0 4px 12px rgba(2, 6, 23, 0.18);
  cursor: pointer;
  transition: transform 0.15s ease, box-shadow 0.15s ease, border-color 0.15s ease;
}

.sidebar-agent-toolbar-avatar:hover,
.sidebar-agent-toolbar-avatar:focus-visible {
  transform: scale(1.05);
  outline: none;
  border-color: #fde047;
  box-shadow:
    0 0 0 3px rgba(250, 204, 21, 0.24),
    0 6px 16px rgba(2, 6, 23, 0.22);
}

.sidebar-agent-toolbar-avatar-mount {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 100%;
  height: 100%;
  border-radius: 50%;
  overflow: hidden;
  color: #e0e7ff;
  font-size: 13px;
  font-weight: 700;
  letter-spacing: 0.04em;
}

.sidebar-agent-toolbar-avatar-mount img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}

.sidebar-agent-toolbar-avatar-emoji {
  font-size: 18px;
  line-height: 1;
}

.sidebar-agent-toolbar-avatar-initials {
  font-size: 12px;
  font-weight: 700;
  letter-spacing: 0.04em;
}

.sidebar-agent-row {
  width: 100%;
  min-width: 0;
}

.sidebar-agent-row--view {
  flex-shrink: 0;
}

.sidebar-agent-view-controls {
  display: flex;
  align-items: center;
  gap: 8px;
  width: 100%;
  min-width: 0;
}

.sidebar-slab-agent .agent-awn-types-btn:not(.agents-picker-tool-btn) {
  flex: 0 0 28px;
  color: #2563eb;
}

.sidebar-slab-agent .agent-awn-types-btn:not(.agents-picker-tool-btn):hover {
  color: #1d4ed8;
  border-color: #93c5fd;
  background: #eff6ff;
}

.sidebar-slab-agent .agent-awn-types-btn:not(.agents-picker-tool-btn).is-active {
  border-color: #2563eb;
  background: #eff6ff;
  box-shadow: 0 0 0 2px rgba(37, 99, 235, 0.12);
}

.agent-awn-types-btn-icon {
  width: 15px;
  height: 15px;
}

.sidebar-slab-agent .agent-git-btn:not(.agents-picker-tool-btn) {
  flex: 0 0 28px;
}

.sidebar-slab-agent .agent-git-btn:not(.agents-picker-tool-btn).has-git-repo {
  color: #de4c36;
}

.sidebar-slab-agent .agent-git-btn:not(.agents-picker-tool-btn).has-git-repo:hover {
  color: #c2410c;
  border-color: #fdba74;
  background: #fff7ed;
}

.sidebar-slab-agent .agent-git-btn:not(.agents-picker-tool-btn).has-git-repo.is-active {
  border-color: #de4c36;
  background: #fff7ed;
  box-shadow: 0 0 0 2px rgba(222, 76, 54, 0.12);
}

.agent-git-btn-icon {
  width: 15px;
  height: 15px;
}

.sidebar-slab-agent .agent-large-files-btn:not(.agents-picker-tool-btn) {
  flex: 0 0 28px;
  color: #7c3aed;
}

.sidebar-slab-agent .agent-large-files-btn:not(.agents-picker-tool-btn):hover {
  color: #6d28d9;
  border-color: #c4b5fd;
  background: #f5f3ff;
}

.sidebar-slab-agent .agent-large-files-btn:not(.agents-picker-tool-btn).is-active {
  border-color: #7c3aed;
  background: #f5f3ff;
  box-shadow: 0 0 0 2px rgba(124, 58, 237, 0.12);
}

.agent-large-files-btn-icon {
  width: 14px;
  height: 14px;
}

.agent-large-files-pane,
.agent-short-links-pane,
.agent-broken-links-pane,
.agent-run-scripts-pane,
.agent-todo-list-pane,
.agent-mcp-methods-pane,
.agent-runtime-registry-pane {
  /* layout via .agent-tool-pane + .agent-canvas-pane */
}

.agent-todo-list-sources,
.agent-mcp-methods-list {
  display: flex;
  flex-direction: column;
  gap: 8px;
  margin: 0;
  padding: 0;
  list-style: none;
}

.agent-todo-list-source-row,
.agent-mcp-methods-row {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto auto;
  gap: 10px;
  align-items: center;
  padding: 10px 12px;
  border-radius: 12px;
  background: rgba(255, 255, 255, 0.82);
  border: 1px solid rgba(148, 163, 184, 0.28);
}

.agent-todo-list-source-main,
.agent-mcp-methods-main {
  display: flex;
  flex-direction: column;
  gap: 3px;
  min-width: 0;
}

.agent-todo-list-source-label,
.agent-mcp-methods-label {
  font-size: 13px;
  font-weight: 600;
  color: #0f172a;
}

.agent-todo-list-source-path,
.agent-mcp-methods-id,
.agent-mcp-methods-mcp {
  font-size: 12px;
  color: #64748b;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.agent-todo-list-source-kind,
.agent-mcp-methods-status {
  font-size: 11px;
  font-weight: 600;
  text-transform: uppercase;
  letter-spacing: 0.04em;
  color: #64748b;
}

.agent-todo-list-source-kind.is-root,
.agent-mcp-methods-status.is-active {
  color: #15803d;
}

.agent-mcp-methods-status.is-stub {
  color: #b45309;
}

.agent-todo-list-source-open-btn,
.agent-mcp-methods-open-btn {
  border: 1px solid rgba(148, 163, 184, 0.45);
  background: #fff;
  color: #1e293b;
  border-radius: 8px;
  padding: 6px 10px;
  font-size: 12px;
  cursor: pointer;
}

.agent-todo-list-root-card {
  margin: 0 0 12px;
  padding: 12px;
  border-radius: 12px;
  background: rgba(248, 250, 252, 0.92);
  border: 1px solid rgba(148, 163, 184, 0.28);
}

.agent-todo-list-section-title {
  margin: 0 0 8px;
  font-size: 13px;
  font-weight: 600;
}

.agent-todo-list-root-preview {
  margin: 0;
  max-height: 180px;
  overflow: auto;
  font-size: 12px;
  line-height: 1.45;
  white-space: pre-wrap;
  color: #334155;
}

.agent-large-files-head {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: 16px;
  flex-wrap: wrap;
}

.agent-large-files-head-actions {
  display: flex;
  align-items: center;
  gap: 10px;
  flex-wrap: wrap;
}

.agent-large-files-stats {
  display: flex;
  align-items: center;
  gap: 8px;
  flex-wrap: wrap;
}

.agent-large-files-cloud-stats {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 6px;
  min-width: 0;
  font-size: 12px;
  color: var(--muted);
}

.agent-large-files-cloud-stats.is-empty,
.agent-large-files-cloud-stats.is-error {
  color: var(--muted);
}

.agent-large-files-cloud-driver {
  display: inline-flex;
  align-items: center;
  gap: 6px;
  padding: 3px 8px;
  border-radius: 999px;
  border: 1px solid var(--border);
  background: var(--surface);
  color: var(--muted);
  line-height: 1.3;
}

.agent-large-files-cloud-driver-name {
  font-weight: 650;
  color: var(--text);
}

.agent-large-files-cloud-driver strong {
  font-weight: 650;
  font-variant-numeric: tabular-nums;
  color: #15803d;
}

.agent-large-files-repair-btn:disabled {
  opacity: 0.55;
  cursor: wait;
}

.agent-large-files-stat-chip {
  display: inline-flex;
  align-items: center;
  gap: 6px;
  padding: 4px 10px;
  border-radius: 999px;
  border: 1px solid var(--border);
  background: var(--surface);
  font-size: 12px;
  color: var(--muted);
}

.agent-large-files-stat-chip strong {
  color: var(--text);
  font-weight: 600;
}

.agent-large-files-stat-chip.is-total strong {
  color: #7c3aed;
}

.agent-large-files-refresh-btn {
  padding: 6px 12px;
  border-radius: 8px;
  border: 1px solid var(--border);
  background: var(--surface);
  color: var(--text);
  font-size: 13px;
  cursor: pointer;
}

.agent-large-files-refresh-btn:hover {
  border-color: #c4b5fd;
  background: #f5f3ff;
}

.agent-large-files-content,
.agent-broken-links-content,
.agent-runtime-registry-content,
.agent-git-content,
.agent-recycler-content {
  overflow: visible;
  flex: 0 0 auto;
  min-height: 0;
}

.agent-large-files-shell {
  display: flex;
  flex-direction: column;
  gap: 16px;
}

.agent-large-files-meta-line {
  margin: 0;
  font-size: 13px;
  color: var(--muted);
}

.agent-tool-info.agent-large-files-info {
  flex-direction: column;
  align-items: stretch;
  justify-content: flex-start;
  gap: 12px;
}

.agent-large-files-meta {
  display: flex;
  flex-direction: column;
  gap: 10px;
  width: 100%;
  min-width: 0;
  margin: 0;
}

.agent-large-files-toolbar-row {
  display: grid;
  grid-template-columns: 82px minmax(0, 1fr);
  gap: 8px 12px;
  align-items: center;
}

.agent-large-files-toolbar-row--summary {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  justify-content: space-between;
  gap: 10px 16px;
  grid-template-columns: unset;
}

.agent-large-files-summary-sort {
  display: flex;
  align-items: center;
  gap: 10px;
  min-width: 0;
}

.agent-large-files-meta-label,
.agent-large-files-meta-hint {
  font-size: 12px;
  font-weight: 600;
  line-height: 1.3;
  letter-spacing: 0.01em;
  color: var(--text-muted, #64748b);
  white-space: nowrap;
}

.agent-large-files-stats {
  flex: 0 0 auto;
  flex-wrap: wrap;
  justify-content: flex-end;
  gap: 8px;
  margin-left: auto;
}

.agent-large-files-threshold-scroll {
  min-width: 0;
  overflow-x: auto;
  overscroll-behavior-x: contain;
  padding: 2px 0 4px;
  scrollbar-width: thin;
  scrollbar-color: rgba(148, 163, 184, 0.55) transparent;
}

.agent-large-files-threshold-scroll::-webkit-scrollbar {
  height: 5px;
}

.agent-large-files-threshold-scroll::-webkit-scrollbar-thumb {
  border-radius: 999px;
  background: rgba(148, 163, 184, 0.45);
}

.agent-large-files-threshold-filter {
  display: inline-flex;
  flex-wrap: nowrap;
  align-items: center;
  gap: 6px;
  width: max-content;
  max-width: none;
  padding-right: 4px;
}

.agent-large-files-sort-filter {
  display: flex;
  align-items: center;
  min-width: 0;
}

.agent-large-files-sort-dir-btn {
  margin: 0;
  padding: 6px 12px;
  border: 1px solid color-mix(in srgb, var(--panel-border, #cbd5e1) 80%, transparent);
  border-radius: 10px;
  background: var(--panel-bg, #fff);
  color: var(--text, #0f172a);
  font-size: 12px;
  font-weight: 600;
  line-height: 1.3;
  cursor: pointer;
  white-space: nowrap;
  transition:
    border-color 0.15s ease,
    background 0.15s ease,
    color 0.15s ease;
}

.agent-large-files-sort-dir-btn:hover {
  border-color: #c4b5fd;
  background: #faf5ff;
}

.agent-large-files-sort-dir-btn:focus-visible {
  outline: 2px solid rgba(124, 58, 237, 0.45);
  outline-offset: 2px;
}

@media (max-width: 720px) {
  .agent-large-files-toolbar-row--summary {
    flex-direction: column;
    align-items: stretch;
  }

  .agent-large-files-stats {
    margin-left: 0;
    justify-content: flex-start;
  }

  .agent-large-files-toolbar-row {
    grid-template-columns: 72px minmax(0, 1fr);
  }
}

.agent-large-files-threshold-btn {
  flex-shrink: 0;
  margin: 0;
  padding: 4px 10px;
  border: 1px solid color-mix(in srgb, var(--panel-border, #cbd5e1) 80%, transparent);
  border-radius: 999px;
  background: var(--panel-bg, #fff);
  color: var(--text, #0f172a);
  font-size: 12px;
  font-weight: 600;
  line-height: 1.3;
  cursor: pointer;
  transition:
    border-color 0.15s ease,
    background 0.15s ease,
    color 0.15s ease;
}

.agent-large-files-threshold-btn:hover {
  border-color: #c4b5fd;
  background: #faf5ff;
}

.agent-large-files-threshold-btn.is-active {
  border-color: #7c3aed;
  background: #ede9fe;
  color: #5b21b6;
}

.agent-large-files-threshold-btn:focus-visible {
  outline: 2px solid rgba(124, 58, 237, 0.45);
  outline-offset: 2px;
}

.agent-large-files-list {
  list-style: none;
  margin: 0;
  padding: 0;
  display: flex;
  flex-direction: column;
  gap: 6px;
}

.agent-large-files-item {
  display: flex;
  align-items: stretch;
  gap: 8px;
  overflow: visible;
}

.agent-large-files-item .node-gdrive-sync-bar--compact {
  flex: 0 0 min(220px, 38%);
  width: auto;
  min-width: 168px;
  max-width: 240px;
  height: auto;
  align-self: stretch;
}

.agent-large-files-item .node-gdrive-sync-bar--compact .node-gdrive-sync-menu,
.agent-large-files-item .node-gdrive-sync-bar--compact .node-gdrive-sync-menu-trigger {
  height: 100%;
  min-height: 34px;
}

.agent-large-files-item .node-gdrive-sync-bar--compact .node-gdrive-sync-menu-trigger-label {
  font-size: 11px;
}

.agent-large-files-item .node-gdrive-sync-bar--compact .node-gdrive-sync-menu-trigger-main {
  gap: 6px;
  padding: 0 8px;
}

.agent-large-files-item .node-gdrive-sync-bar--compact .node-gdrive-sync-menu-trigger-chevron {
  min-width: 34px;
}

.agent-large-files-item .node-gdrive-sync-menu-panel {
  min-width: 220px;
  right: 0;
  left: auto;
}

.agent-large-files-row {
  display: flex;
  align-items: center;
  gap: 8px;
  flex: 1 1 auto;
  min-width: 0;
  width: auto;
  padding: 8px 10px;
  border: 1px solid var(--border);
  border-radius: 10px;
  background: var(--surface);
  text-align: left;
  cursor: pointer;
}

.agent-large-files-row:hover {
  border-color: #c4b5fd;
  background: #faf5ff;
}

.agent-large-files-size {
  flex: 0 0 auto;
  margin-left: auto;
  padding-left: 8px;
  font-size: 12px;
  font-weight: 600;
  color: #7c3aed;
  font-variant-numeric: tabular-nums;
  white-space: nowrap;
}

.agent-large-files-cloud-blob {
  flex: 0 0 auto;
  padding: 2px 6px;
  border-radius: 6px;
  border: 1px solid #bbf7d0;
  background: #f0fdf4;
  color: #15803d;
  font-size: 10px;
  font-weight: 800;
  letter-spacing: 0.02em;
  line-height: 1.2;
  font-family: ui-monospace, SFMono-Regular, Menlo, Consolas, monospace;
  white-space: nowrap;
}

.agent-large-files-type {
  flex: 0 0 auto;
  flex-shrink: 0;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-width: 0;
  padding: 2px 6px;
  border-radius: 6px;
  border: 1px solid #dbe3ee;
  background: #f8fafc;
  font-size: 10px;
  font-weight: 800;
  letter-spacing: 0.04em;
  line-height: 1.2;
  color: #475569;
  font-variant-numeric: tabular-nums;
}

.agent-large-files-type--image {
  background: #f0fdf4;
  border-color: #bbf7d0;
  color: #15803d;
}

.agent-large-files-type--pdf {
  background: #fef2f2;
  border-color: #fecaca;
  color: #b91c1c;
}

.agent-large-files-type--doc {
  background: #eff6ff;
  border-color: #bfdbfe;
  color: #1d4ed8;
}

.agent-large-files-type--sheet {
  background: #ecfdf5;
  border-color: #a7f3d0;
  color: #047857;
}

.agent-large-files-type--slide {
  background: #fff7ed;
  border-color: #fed7aa;
  color: #c2410c;
}

.agent-large-files-type--video {
  background: #faf5ff;
  border-color: #e9d5ff;
  color: #7e22ce;
}

.agent-large-files-type--audio {
  background: #fdf4ff;
  border-color: #f5d0fe;
  color: #a21caf;
}

.agent-large-files-type--archive {
  background: #fffbeb;
  border-color: #fde68a;
  color: #b45309;
}

.agent-large-files-path {
  flex: 1 1 auto;
  min-width: 0;
  font-size: 13px;
  color: var(--text);
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.agent-large-files-empty,
.agent-large-files-empty-state {
  margin: 0;
  font-size: 14px;
  color: var(--muted);
}

.agent-large-files-empty.is-alert {
  color: #dc2626;
}

.agent-large-files-empty-title {
  margin: 0 0 6px;
  font-size: 16px;
  font-weight: 600;
  color: var(--text);
}

.agent-large-files-empty-text {
  margin: 0;
  font-size: 14px;
  color: var(--muted);
}

@media (max-width: 720px) {
  .agent-large-files-head {
    flex-direction: column;
  }

  .agent-large-files-head-actions {
    width: 100%;
  }
}

.sidebar-slab-agent .agent-broken-links-btn:not(.agents-picker-tool-btn) {
  flex: 0 0 28px;
  color: #dc2626;
}

.sidebar-slab-agent .agent-broken-links-btn:not(.agents-picker-tool-btn):hover {
  color: #b91c1c;
  border-color: #fca5a5;
  background: #fef2f2;
}

.sidebar-slab-agent .agent-broken-links-btn:not(.agents-picker-tool-btn).is-active {
  border-color: #dc2626;
  background: #fef2f2;
  box-shadow: 0 0 0 2px rgba(220, 38, 38, 0.12);
}

.agent-broken-links-btn-icon {
  width: 14px;
  height: 14px;
}

.sidebar-slab-agent .agent-registry-btn:not(.agents-picker-tool-btn) {
  flex: 0 0 28px;
  color: #0f766e;
}

.sidebar-slab-agent .agent-registry-btn:not(.agents-picker-tool-btn):hover {
  color: #0d9488;
  border-color: #5eead4;
  background: #f0fdfa;
}

.sidebar-slab-agent .agent-registry-btn:not(.agents-picker-tool-btn).is-active {
  border-color: #0f766e;
  background: #f0fdfa;
  box-shadow: 0 0 0 2px rgba(15, 118, 110, 0.12);
}

.agent-registry-btn-icon {
  width: 14px;
  height: 14px;
}

.agent-runtime-registry-head {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: 16px;
  flex-wrap: wrap;
  padding-bottom: 0;
}

.agent-runtime-registry-toolbar {
  padding: 0 4px 12px;
}

.agent-runtime-registry-filter-caption {
  margin: 0 0 8px;
  padding: 0 2px;
  font-size: 10px;
  font-weight: 700;
  letter-spacing: 0.06em;
  text-transform: uppercase;
  line-height: 1.3;
  color: #64748b;
}

.agent-runtime-registry-filter {
  display: grid;
  grid-template-columns: repeat(5, minmax(0, 1fr));
  gap: 6px;
  padding: 8px 10px;
  border: 1px solid rgba(148, 163, 184, 0.2);
  border-radius: 12px;
  background: rgba(248, 250, 252, 0.65);
}

.agent-runtime-registry-filter-btn {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  gap: 2px;
  width: 100%;
  min-width: 0;
  padding: 7px 10px;
  border: 1px solid transparent;
  border-radius: 10px;
  background: transparent;
  font: inherit;
  text-align: left;
  cursor: pointer;
  transition: border-color 0.15s ease, background 0.15s ease, box-shadow 0.15s ease;
}

.agent-runtime-registry-filter-btn:hover {
  border-color: rgba(59, 130, 246, 0.25);
  background: rgba(255, 255, 255, 0.85);
}

.agent-runtime-registry-filter-btn:focus-visible {
  outline: 2px solid rgba(99, 102, 241, 0.45);
  outline-offset: 1px;
}

.agent-runtime-registry-filter-row {
  display: flex;
  align-items: center;
  gap: 6px;
  min-width: 0;
  width: 100%;
}

.agent-runtime-registry-filter-emoji {
  flex: 0 0 auto;
  font-size: 14px;
  line-height: 1;
}

.agent-runtime-registry-filter-label {
  min-width: 0;
  font-size: 12px;
  font-weight: 700;
  color: #0f172a;
  line-height: 1.3;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
}

.agent-runtime-registry-filter-hint {
  width: 100%;
  font-size: 11px;
  line-height: 1.3;
  color: #64748b;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
}

.agent-runtime-registry-filter-btn.is-active {
  border-color: rgba(59, 130, 246, 0.45);
  background: #fff;
  box-shadow: 0 1px 4px rgba(15, 23, 42, 0.06);
}

.agent-runtime-registry-filter-btn.is-active .agent-runtime-registry-filter-label {
  color: #1d4ed8;
}

.agent-runtime-registry-mode-info {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: 16px;
  flex-wrap: wrap;
  margin: 0 4px 14px;
  padding: 14px 16px;
  border-radius: 12px;
  border: 1px solid color-mix(in srgb, var(--panel-border) 65%, transparent);
  background: color-mix(in srgb, var(--panel-border) 12%, var(--panel-bg));
}

.agent-runtime-registry-mode-copy {
  flex: 1 1 280px;
  min-width: 0;
}

.agent-runtime-registry-mode-title {
  margin: 0 0 6px;
  font-size: 1rem;
  font-weight: 650;
  color: var(--text);
}

.agent-runtime-registry-mode-desc {
  margin: 0 0 6px;
  font-size: 0.88rem;
  line-height: 1.45;
  color: var(--text-muted);
}

.agent-runtime-registry-mode-mcp {
  margin: 0;
  font-size: 0.78rem;
  line-height: 1.35;
  color: var(--muted);
  font-family: ui-monospace, SFMono-Regular, Menlo, monospace;
}

.agent-runtime-registry-head-actions {
  display: flex;
  align-items: center;
  gap: 10px;
  flex-wrap: wrap;
}

.agent-runtime-registry-stats {
  flex: 0 0 auto;
  align-self: center;
}

.agent-runtime-registry-content {
  overflow: visible;
  flex: 0 0 auto;
  min-height: 0;
  box-sizing: border-box;
}

.agent-runtime-registry-wrap {
  width: 100%;
}

.agent-runtime-registry-empty,
.agent-runtime-registry-empty-state {
  margin: 0;
  padding: 12px 4px;
  font-size: 14px;
  line-height: 1.5;
  color: var(--muted);
}

.agent-runtime-registry-empty-card {
  margin: 4px;
  padding: 20px 22px;
  border-radius: 12px;
  border: 1px dashed color-mix(in srgb, var(--panel-border) 80%, transparent);
  background: color-mix(in srgb, var(--panel-bg) 96%, transparent);
}

.agent-runtime-registry-empty-lead {
  margin: 0 0 14px;
  font-size: 0.92rem;
  line-height: 1.5;
  color: var(--text-muted);
}

.agent-runtime-registry-empty-steps-title {
  margin: 0 0 8px;
  font-size: 0.82rem;
  font-weight: 600;
  text-transform: uppercase;
  letter-spacing: 0.04em;
  color: var(--muted);
}

.agent-runtime-registry-empty-steps {
  margin: 0 0 14px;
  padding-left: 1.2rem;
  font-size: 0.9rem;
  line-height: 1.55;
  color: var(--text-muted);
}

.agent-runtime-registry-empty-steps li + li {
  margin-top: 6px;
}

.agent-runtime-registry-empty-example {
  margin: 0 0 12px;
  padding: 10px 12px;
  border-radius: 8px;
  font-size: 0.78rem;
  line-height: 1.45;
  color: var(--text);
  background: color-mix(in srgb, var(--panel-border) 18%, var(--panel-bg));
  overflow-x: auto;
  white-space: pre-wrap;
}

.agent-runtime-registry-empty-mcp {
  margin: 0;
  font-size: 0.78rem;
  color: var(--muted);
  font-family: ui-monospace, SFMono-Regular, Menlo, monospace;
}

.agent-runtime-registry-table .agent-table-cell.is-empty {
  color: #d97706;
}

.agent-runtime-registry-empty.is-alert {
  color: #dc2626;
}

.agent-runtime-registry-empty-title {
  margin: 0 0 6px;
  font-size: 16px;
  font-weight: 600;
  color: var(--text);
}

.agent-runtime-registry-empty-text {
  margin: 0;
  font-size: 14px;
  color: var(--muted);
}

.agent-runtime-registry-path {
  display: block;
  margin-top: 1px;
  font-size: 11px;
  line-height: 1.3;
  color: var(--muted);
  word-break: break-all;
}

.agent-runtime-registry-table .agent-table-title-inner {
  flex-direction: column;
  align-items: flex-start;
  gap: 2px;
  min-width: 0;
}

.agent-runtime-registry-table th,
.agent-runtime-registry-table td {
  padding: 8px 10px;
}

.agent-runtime-registry-badge {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  max-width: 100%;
  padding: 1px 7px;
  border-radius: 999px;
  font-size: 11px;
  line-height: 1.3;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
}

.agent-runtime-registry-badge.is-load {
  color: #475569;
  background: #f1f5f9;
}

.agent-runtime-registry-badge.is-load.is-session-start {
  color: #0f766e;
  background: #ccfbf1;
}

.agent-runtime-registry-badge.is-bool.is-off {
  color: #94a3b8;
}

.agent-runtime-registry-badge.is-bool.is-on {
  color: #7c2d12;
  background: #ffedd5;
}

.agent-runtime-registry-table th:nth-child(2),
.agent-runtime-registry-table th:nth-child(3),
.agent-runtime-registry-table th:nth-child(4),
.agent-runtime-registry-table td:nth-child(2),
.agent-runtime-registry-table td:nth-child(3),
.agent-runtime-registry-table td:nth-child(4) {
  width: 108px;
  text-align: center;
  white-space: nowrap;
}

.agent-runtime-registry-table .agent-table-cell--mono {
  font-family: ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", monospace;
  font-size: 11px;
}

@media (max-width: 960px) {
  .agent-runtime-registry-filter {
    grid-template-columns: repeat(3, minmax(0, 1fr));
  }
}

@media (max-width: 720px) {
  .agent-runtime-registry-head {
    flex-direction: column;
  }

  .agent-runtime-registry-head-actions {
    width: 100%;
  }

  .agent-runtime-registry-filter {
    grid-template-columns: 1fr 1fr;
  }

  .agent-runtime-registry-mode-info {
    flex-direction: column;
  }
}

.agent-broken-links-head {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: 16px;
  flex-wrap: wrap;
}

.agent-broken-links-head-actions {
  display: flex;
  align-items: center;
  gap: 10px;
  flex-wrap: wrap;
}

.agent-broken-links-stats {
  display: flex;
  align-items: center;
  gap: 8px;
  flex-wrap: wrap;
}

.agent-broken-links-stat-chip {
  display: inline-flex;
  align-items: center;
  gap: 6px;
  padding: 4px 10px;
  border-radius: 999px;
  border: 1px solid var(--border);
  background: var(--surface);
  font-size: 12px;
  color: var(--muted);
}

.agent-broken-links-stat-chip strong {
  color: var(--text);
  font-weight: 600;
}

.agent-broken-links-stat-chip.is-total strong {
  color: #dc2626;
}

.agent-broken-links-refresh-btn {
  padding: 6px 12px;
  border-radius: 8px;
  border: 1px solid var(--border);
  background: var(--surface);
  color: var(--text);
  font-size: 12px;
  cursor: pointer;
}

.agent-broken-links-refresh-btn:hover {
  border-color: #fca5a5;
  background: #fef2f2;
}

.agent-broken-links-content {
  overflow: visible;
  flex: 0 0 auto;
  min-height: 0;
}

.agent-broken-links-shell {
  display: flex;
  flex-direction: column;
  gap: 14px;
}

.agent-broken-links-meta-line {
  margin: 0;
  font-size: 13px;
  color: var(--muted);
}

.agent-broken-links-list {
  display: flex;
  flex-direction: column;
  gap: 8px;
  margin: 0;
  padding: 0;
  list-style: none;
}

.agent-broken-links-row {
  display: grid;
  grid-template-columns: auto minmax(0, 1fr);
  gap: 12px;
  width: 100%;
  padding: 10px 12px;
  border: 1px solid var(--border);
  border-radius: 10px;
  background: var(--surface);
  text-align: left;
  cursor: pointer;
}

.agent-broken-links-row:hover {
  border-color: #fca5a5;
  background: #fff7f7;
}

.agent-broken-links-badge {
  align-self: start;
  padding: 2px 8px;
  border-radius: 999px;
  font-size: 10px;
  font-weight: 700;
  letter-spacing: 0.04em;
  text-transform: uppercase;
  color: #991b1b;
  background: #fee2e2;
}

.agent-broken-links-badge.is-wikilink {
  color: #9a3412;
  background: #ffedd5;
}

.agent-broken-links-badge.is-asset {
  color: #1d4ed8;
  background: #dbeafe;
}

.agent-broken-links-main {
  display: flex;
  flex-direction: column;
  gap: 4px;
  min-width: 0;
}

.agent-broken-links-link {
  font-size: 13px;
  font-weight: 600;
  color: var(--text);
  word-break: break-word;
}

.agent-broken-links-resolved {
  font-size: 12px;
  color: #b91c1c;
  word-break: break-word;
}

.agent-broken-links-source {
  font-size: 11px;
  color: var(--muted);
  word-break: break-word;
}

.agent-short-links-list {
  display: flex;
  flex-direction: column;
  gap: 8px;
  margin: 0;
  padding: 0;
  list-style: none;
}

.agent-short-links-row {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  gap: 8px;
  align-items: stretch;
}

.agent-short-links-hit {
  display: grid;
  grid-template-columns: auto minmax(0, 1fr);
  gap: 12px;
  width: 100%;
  min-width: 0;
  padding: 10px 12px;
  border: 1px solid var(--border);
  border-radius: 10px;
  background: var(--surface);
  text-align: left;
  cursor: pointer;
}

.agent-short-links-hit:hover {
  border-color: #a5b4fc;
  background: #eef2ff;
}

.agent-short-links-hit:focus-visible {
  outline: 2px solid #6366f1;
  outline-offset: 2px;
}

.agent-short-links-code {
  align-self: start;
  flex-shrink: 0;
  padding: 2px 8px;
  border-radius: 999px;
  font-size: 10px;
  font-weight: 700;
  letter-spacing: 0.06em;
  text-transform: uppercase;
  color: #4338ca;
  background: #e0e7ff;
}

.agent-short-links-copy {
  display: flex;
  flex-direction: column;
  gap: 4px;
  min-width: 0;
}

.agent-short-links-url {
  font-size: 13px;
  font-weight: 600;
  color: var(--text);
  word-break: break-all;
}

.agent-short-links-target {
  font-size: 12px;
  color: var(--muted);
  word-break: break-all;
}

.agent-short-links-target.is-missing {
  color: #b45309;
}

.agent-short-links-row-actions {
  display: flex;
  flex-direction: column;
  justify-content: center;
  gap: 6px;
  flex-shrink: 0;
}

.agent-short-links-action-btn {
  padding: 7px 11px;
  border: 1px solid var(--border);
  border-radius: 8px;
  background: var(--surface);
  font-size: 12px;
  font-weight: 600;
  color: var(--text);
  cursor: pointer;
  white-space: nowrap;
}

.agent-short-links-action-btn:hover {
  border-color: #a5b4fc;
  background: #eef2ff;
}

.agent-short-links-action-btn--danger:hover {
  border-color: #fca5a5;
  background: #fef2f2;
  color: #b91c1c;
}

@media (max-width: 520px) {
  .agent-short-links-row {
    grid-template-columns: 1fr;
  }

  .agent-short-links-row-actions {
    flex-direction: row;
    flex-wrap: wrap;
  }

  .agent-short-links-action-btn {
    flex: 1 1 auto;
    min-width: 0;
  }
}

.agent-run-scripts-notice {
  margin-bottom: 14px;
}

.agent-run-scripts-list {
  display: flex;
  flex-direction: column;
  gap: 8px;
  margin: 0;
  padding: 0;
  list-style: none;
}

.agent-run-scripts-row {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto auto;
  gap: 12px;
  align-items: center;
  width: 100%;
  padding: 12px 14px;
  border: 1px solid var(--border);
  border-radius: 10px;
  background: var(--surface);
}

.agent-run-scripts-main {
  display: flex;
  flex-direction: column;
  gap: 4px;
  min-width: 0;
}

.agent-run-scripts-path {
  font-size: 13px;
  font-weight: 600;
  color: var(--text);
  font-family: ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, monospace;
  word-break: break-word;
}

.agent-run-scripts-desc {
  font-size: 12px;
  color: var(--muted);
}

.agent-run-scripts-kind {
  padding: 4px 10px;
  border-radius: 999px;
  font-size: 10px;
  font-weight: 700;
  letter-spacing: 0.04em;
  text-transform: uppercase;
  color: #0e7490;
  background: #ecfeff;
  white-space: nowrap;
}

.agent-run-scripts-run-btn {
  padding: 7px 14px;
  border-radius: 8px;
  border: 1px solid rgba(8, 145, 178, 0.35);
  background: #ecfeff;
  color: #0e7490;
  font-size: 12px;
  font-weight: 600;
  cursor: not-allowed;
  opacity: 0.72;
  white-space: nowrap;
}

.agent-run-scripts-run-btn:not(:disabled) {
  cursor: pointer;
  opacity: 1;
}

.agent-run-scripts-run-btn:not(:disabled):hover {
  background: #cffafe;
  border-color: rgba(8, 145, 178, 0.55);
}

.agent-broken-links-empty,
.agent-broken-links-empty-state {
  margin: 0;
  padding: 18px 0;
  color: var(--muted);
}

.agent-broken-links-empty.is-alert {
  color: #b91c1c;
}

.agent-broken-links-empty-title {
  margin: 0 0 6px;
  font-size: 16px;
  font-weight: 700;
  color: var(--text);
}

.agent-broken-links-empty-text {
  margin: 0;
  font-size: 14px;
  color: var(--muted);
}

@media (max-width: 720px) {
  .agent-broken-links-head {
    flex-direction: column;
  }

  .agent-broken-links-head-actions {
    width: 100%;
  }
}

.sidebar-slab-agent .sidebar-agent-controls {
  display: flex;
  align-items: center;
  gap: 8px;
  width: 100%;
  min-width: 0;
}

.sidebar-agent-action-cluster {
  display: flex;
  align-items: center;
  gap: 4px;
  flex: 0 1 auto;
  min-width: 0;
  max-width: 100%;
  overflow-x: auto;
  overflow-y: hidden;
  padding-bottom: 1px;
  scrollbar-width: thin;
  -webkit-overflow-scrolling: touch;
}

.sidebar-agent-action-cluster::-webkit-scrollbar {
  height: 3px;
}

.sidebar-agent-action-cluster::-webkit-scrollbar-thumb {
  background: #cbd5e1;
  border-radius: 4px;
}

.sidebar-slab-agent .agent-select-wrap,
.sidebar-slab-agent .agent-view-select-wrap {
  flex: 1 1 auto;
  min-width: 0;
}

.sidebar-slab-agent .agent-select,
.sidebar-slab-agent .agent-view-select {
  width: 100%;
  max-width: none;
  flex: 1 1 auto;
}

.sidebar-slab-agent .agents-picker-btn,
.sidebar-slab-agent .sidebar-git-btn,
.sidebar-slab-agent .agents-manage-btn:not(.agents-picker-tool-btn),
.sidebar-slab-agent .agent-awn-types-btn:not(.agents-picker-tool-btn),
.sidebar-slab-agent .agent-git-btn:not(.agents-picker-tool-btn),
.sidebar-slab-agent .agent-large-files-btn:not(.agents-picker-tool-btn),
.sidebar-slab-agent .agent-broken-links-btn:not(.agents-picker-tool-btn),
.sidebar-slab-agent .agent-registry-btn:not(.agents-picker-tool-btn) {
  flex: 0 0 28px;
  transition: background 0.15s ease, border-color 0.15s ease, color 0.15s ease;
}

.sidebar-slab-agent .agents-picker-btn:focus-visible,
.sidebar-slab-agent .sidebar-git-btn:focus-visible,
.sidebar-slab-agent .agents-manage-btn:not(.agents-picker-tool-btn):focus-visible,
.sidebar-slab-agent .agent-awn-types-btn:not(.agents-picker-tool-btn):focus-visible,
.sidebar-slab-agent .agent-git-btn:not(.agents-picker-tool-btn):focus-visible,
.sidebar-slab-agent .agent-large-files-btn:not(.agents-picker-tool-btn):focus-visible,
.sidebar-slab-agent .agent-broken-links-btn:not(.agents-picker-tool-btn):focus-visible,
.sidebar-slab-agent .agent-registry-btn:not(.agents-picker-tool-btn):focus-visible {
  outline: none;
  border-color: var(--accent);
  box-shadow: 0 0 0 2px rgba(59, 130, 246, 0.15);
}

.sidebar-agent-toolbar-divider {
  flex-shrink: 0;
  border-bottom: 1px solid var(--border);
  margin: 0;
}

.sidebar-agent-avatar-block:not(:has(.agent-preview-wrap:not(.hidden))) {
  display: none;
}

.sidebar-agent-avatar-block {
  position: relative;
  flex-shrink: 0;
  padding: 10px 12px 12px;
  box-sizing: border-box;
}

.sidebar-agent-avatar-block .agent-preview-wrap.is-avatar-slide-preview .agent-preview-frame {
  box-shadow:
    inset 0 0 0 2px rgba(34, 197, 94, 0.5),
    inset 0 0 28px rgba(34, 197, 94, 0.12);
}

.agent-preview-placeholder {
  display: none !important;
  width: 100%;
  height: 136px;
  box-sizing: border-box;
  border: 0;
  border-radius: 10px;
  background-color: #fef2f2;
  background-image: url("/editor/image-missing.svg");
  background-repeat: no-repeat;
  background-position: center;
  background-size: auto 100%;
}

.agent-preview-placeholder--broken {
  box-shadow: inset 0 0 0 1px #fca5a5;
}

.sidebar-agent-avatar-block:has(.agent-preview-wrap:not(.hidden)) .agent-preview-placeholder {
  display: none;
}

.sidebar-agent-avatar-block .agent-preview-wrap {
  margin: 0;
}

.sidebar-agent-avatar-block .agent-preview-frame {
  height: 128px;
}

.sidebar-agent-avatar-block .agent-preview-thumb {
  height: 128px;
}

.sidebar-agent-avatar-block .agent-preview-wrap:not(.hidden) {
  animation: agent-preview-border-pulse 6s ease-in-out infinite alternate;
}

.sidebar-agent-avatar-block .agent-preview-frame {
  animation: agent-preview-frame-glow 8s ease-in-out infinite alternate;
}

.sidebar-agent-avatar-block .agent-preview-shine {
  animation: agent-preview-prism 8s ease-in-out infinite;
}

.sidebar-agent-avatar-block .agent-preview-wrap.is-revealed .agent-preview-thumb {
  animation: agent-preview-orbit 20s ease-in-out infinite;
}

/* Agent hero — large preview with toolbar overlay (sidebar-stack v05) */
.sidebar-agent-select-block:has(.agent-preview-wrap:not(.hidden)) {
  position: relative;
  display: flex;
  flex-direction: column;
  padding: 0;
  margin: 0;
  min-width: 0;
  overflow: hidden;
}

.sidebar-agent-select-block:has(.agent-preview-wrap:not(.hidden)) .sidebar-agent-avatar-block {
  order: 0;
  flex: 0 0 auto;
}

.sidebar-agent-select-block:has(.agent-preview-wrap:not(.hidden)) .sidebar-agent-toolbar {
  order: 1;
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  z-index: 3;
  display: flex;
  flex-direction: column;
  justify-content: flex-end;
  gap: 8px;
  width: 100%;
  max-width: 100%;
  height: 148px;
  margin: 0;
  padding: 2px 8px 8px;
  box-sizing: border-box;
  background: transparent;
  pointer-events: none;
}

.sidebar-agent-select-block:has(.agent-preview-wrap:not(.hidden)) .agent-todo-preview-wrap {
  order: 2;
}

.sidebar-agent-select-block:has(.agent-preview-wrap:not(.hidden)) .sidebar-agent-toolbar > * {
  pointer-events: auto;
}

.sidebar-agent-select-block:has(.agent-preview-wrap:not(.hidden)) .sidebar-agent-toolbar-divider {
  display: none;
}

.sidebar-agent-select-block:has(.agent-preview-wrap:not(.hidden)) .sidebar-agent-row {
  width: 100%;
  max-width: 100%;
  min-width: 0;
}

.sidebar-agent-select-block:has(.agent-preview-wrap:not(.hidden)) .sidebar-agent-controls--compact {
  width: 100%;
  max-width: 100%;
  min-width: 0;
}

.sidebar-agent-select-block:has(.agent-preview-wrap:not(.hidden)) .agent-select-wrap {
  flex: 1 1 auto;
  min-width: 0;
  max-width: 100%;
}

.sidebar-agent-select-block:has(.agent-preview-wrap:not(.hidden)) .agent-select {
  min-width: 0;
  max-width: 100%;
}

.sidebar-agent-select-block:has(.agent-preview-wrap:not(.hidden)) .sidebar-agent-avatar-block {
  position: relative;
  z-index: 1;
  padding: 0;
  margin: 0;
  box-sizing: border-box;
  min-width: 0;
  overflow: hidden;
}

.sidebar-agent-select-block:has(.agent-preview-wrap:not(.hidden)) .sidebar-agent-toolbar-avatar {
  position: absolute;
  top: 8px;
  left: 8px;
  z-index: 4;
  flex: none;
  width: 36px;
  height: 36px;
  border-width: 2px;
  box-shadow:
    0 0 0 2px rgba(255, 255, 255, 0.92),
    0 4px 14px rgba(15, 23, 42, 0.34);
}

.sidebar-agent-select-block:has(.agent-preview-wrap:not(.hidden)) .agent-preview-wrap {
  width: 100%;
  max-width: 100%;
  border: 0;
  border-radius: 0;
  padding: 0;
  background: #0f172a;
  animation: none;
  box-shadow: none;
  overflow: hidden;
}

.sidebar-agent-select-block:has(.agent-preview-wrap:not(.hidden)) .agent-preview-frame {
  border-radius: 0;
  height: 148px;
  min-height: 148px;
  animation: none;
  overflow: hidden;
}

.sidebar-agent-select-block:has(.agent-preview-wrap:not(.hidden)) .agent-preview-thumb {
  width: 100%;
  max-width: 100%;
  height: 148px;
  object-fit: cover;
  object-position: center center;
  transform: none;
  animation: none;
  opacity: 1;
}

.sidebar-agent-select-block:has(.agent-preview-wrap:not(.hidden)) .agent-preview-wrap:not(.hidden) {
  animation: none;
}

.sidebar-agent-select-block:has(.agent-preview-wrap:not(.hidden)) .agent-preview-wrap.is-revealed .agent-preview-thumb,
.sidebar-agent-select-block:has(.agent-preview-wrap:not(.hidden))
  .sidebar-agent-avatar-block
  .agent-preview-wrap.is-revealed
  .agent-preview-thumb {
  animation: none;
  transform: none;
  filter: none;
}

.sidebar-agent-select-block:has(.agent-preview-wrap:not(.hidden)) .agent-select,
.sidebar-agent-select-block:has(.agent-preview-wrap:not(.hidden)) .agents-picker-btn {
  border-color: rgba(255, 255, 255, 0.35);
  background: rgba(255, 255, 255, 0.92);
  color: #0f172a;
}

.sidebar-agent-select-block:has(.agent-preview-wrap:not(.hidden)) .agents-picker-btn.is-active,
.sidebar-agent-select-block:has(.agent-preview-wrap:not(.hidden)) .agents-picker-btn.is-preferred {
  border-color: rgba(255, 255, 255, 0.55);
  background: rgba(255, 255, 255, 0.98);
}

.sidebar-agent-select-block:has(.agent-preview-wrap:not(.hidden)) .agent-todo-preview-wrap {
  margin: 0;
  width: 100%;
}

.sidebar-agent-select-block > .agent-todo-preview-wrap:not(.hidden) {
  margin: 0;
  width: 100%;
}

.agent-todo-preview-wrap {
  position: relative;
  margin: 0;
  width: 100%;
  box-sizing: border-box;
  padding: 0;
  border: 0;
  border-radius: 0;
  background: transparent;
  box-shadow: none;
  cursor: default;
}

.agent-todo-preview-head.sidebar-accent-band-toggle {
  padding-right: 36px;
  gap: 6px;
}

.agent-todo-preview-lamp {
  flex: 0 0 auto;
  margin-left: auto;
  margin-right: 2px;
}

.agent-todo-preview-wrap.is-note-active .agent-todo-preview-head.sidebar-accent-band-toggle--note {
  box-shadow: inset 0 0 0 1px rgba(120, 53, 15, 0.28);
}

.agent-todo-preview-wrap.is-note-collapsed .agent-todo-preview-content {
  display: none;
}

.agent-todo-preview-content {
  margin: 0;
  padding: 8px 12px 10px;
  border-top: 1px solid rgba(251, 191, 36, 0.45);
  background: linear-gradient(180deg, #fffbeb 0%, #fef3c7 100%);
  box-sizing: border-box;
}

.agent-todo-preview-wrap.hidden {
  display: none;
}

.agent-todo-preview-wrap:not(.is-note-collapsed) .agent-todo-preview-chevron {
  transform: rotate(45deg);
  margin-top: -3px;
}

.agent-todo-preview-edit-btn {
  position: absolute;
  top: 7px;
  right: 8px;
  z-index: 2;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 22px;
  height: 22px;
  padding: 0;
  border: 1px solid rgba(180, 130, 20, 0.22);
  border-radius: 4px;
  background: rgba(255, 255, 255, 0.42);
  color: #92400e;
  cursor: pointer;
  transition: background-color 0.15s ease, border-color 0.15s ease, color 0.15s ease;
}

.agent-todo-preview-edit-btn svg {
  width: 13px;
  height: 13px;
  fill: none;
  stroke: currentColor;
  stroke-width: 2;
  stroke-linecap: round;
  stroke-linejoin: round;
}

.agent-todo-preview-edit-btn:hover {
  background: rgba(255, 255, 255, 0.72);
  border-color: rgba(180, 130, 20, 0.38);
  color: #78350f;
}

.agent-todo-preview-edit-btn:focus {
  outline: none;
}

.agent-todo-preview-edit-btn:focus-visible {
  box-shadow: 0 0 0 2px rgba(180, 130, 20, 0.35);
}

.agent-todo-preview-label {
  user-select: none;
}

.agent-todo-preview-body {
  cursor: text;
  user-select: text;
}

.agent-todo-preview-body.file-content-preview {
  width: auto;
  min-height: 0 !important;
  max-height: 75px;
  margin: 0;
  padding: 0 !important;
  border: 0 !important;
  border-radius: 0 !important;
  background: transparent !important;
  overflow-x: hidden !important;
  overflow-y: hidden !important;
  white-space: normal;
  color: #111827;
  font-size: 12px;
  line-height: 1.45;
  overflow-wrap: anywhere;
  word-break: break-word;
}

.agent-todo-preview-wrap.is-expanded .agent-todo-preview-body.file-content-preview {
  max-height: none;
  overflow: visible !important;
}

.agent-todo-preview-expand-btn {
  display: block;
  width: 100%;
  margin: 6px 0 0;
  padding: 5px 0 0;
  border: 0;
  border-top: 1px dashed rgba(146, 64, 14, 0.28);
  background: transparent;
  font: inherit;
  font-size: 10px;
  font-weight: 600;
  letter-spacing: 0.01em;
  color: #92400e;
  line-height: 1.2;
  cursor: pointer;
  text-align: center;
  transition: color 0.15s ease;
}

.agent-todo-preview-expand-btn.hidden {
  display: none;
}

.agent-todo-preview-expand-btn:hover {
  color: #78350f;
}

.agent-todo-preview-expand-btn:focus {
  outline: none;
}

.agent-todo-preview-expand-btn:focus-visible {
  box-shadow: 0 0 0 2px rgba(180, 130, 20, 0.35);
  border-radius: 3px;
}

.agent-todo-preview-body.file-content-preview > :first-child {
  margin-top: 0;
}

.agent-todo-preview-body.file-content-preview > :last-child {
  margin-bottom: 0;
}

.agent-todo-preview-body.file-content-preview img,
.agent-todo-preview-body.file-content-preview video,
.agent-todo-preview-body.file-content-preview iframe {
  display: block;
  max-width: 100%;
  max-height: 48px;
  border-radius: 3px;
  object-fit: cover;
}

.agent-preview-openable {
  cursor: pointer;
}

.agent-preview-openable .agent-preview-thumb {
  cursor: zoom-in;
}

.sidebar-agent-avatar-block .agent-preview-openable:hover .agent-preview-frame,
.sidebar-agent-avatar-block .agent-preview-openable:focus-visible .agent-preview-frame {
  box-shadow:
    inset 0 0 0 2px rgba(99, 102, 241, 0.45),
    inset 0 0 24px rgba(99, 102, 241, 0.18);
}

.sidebar-agent-avatar-block .agent-preview-placeholder.agent-preview-openable:hover,
.sidebar-agent-avatar-block .agent-preview-placeholder.agent-preview-openable:focus-visible {
  border-color: rgba(99, 102, 241, 0.55);
  background-color: #eef2ff;
}

.agent-preview-openable:focus {
  outline: none;
}

.agent-preview-openable:focus-visible {
  outline: 2px solid rgba(99, 102, 241, 0.55);
  outline-offset: 2px;
}

@keyframes agent-preview-frame-glow {
  0% {
    box-shadow: inset 0 0 0 1px rgba(147, 197, 253, 0.12);
  }
  100% {
    box-shadow:
      inset 0 0 28px rgba(99, 102, 241, 0.14),
      inset 0 0 0 1px rgba(167, 139, 250, 0.28);
  }
}

.sidebar-slab.sidebar-slab-menu-tree-band {
  flex-shrink: 0;
  padding: 0;
  border-bottom: none;
  box-sizing: border-box;
  overflow: visible;
}

.sidebar-slab-menu-tree-band + .sidebar-slab-menu {
  border-top: none;
}

.sidebar-tree-band-head {
  display: flex;
  align-items: center;
  margin-bottom: 0;
  background: linear-gradient(135deg, #166534 0%, #22c55e 52%, #86efac 100%);
}

.sidebar-tree-band-head .sidebar-accent-band-toggle--tree {
  flex: 1 1 auto;
  min-width: 0;
  margin-bottom: 0;
  background: transparent;
}

.sidebar-tree-band-head-actions {
  flex: 0 0 auto;
  display: inline-flex;
  align-items: center;
  gap: 4px;
  padding: 7px 8px 7px 0;
  pointer-events: auto;
}

.sidebar-slab-agent:has(+ .sidebar-slab-menu-channels-band) .agent-todo-preview-head.sidebar-accent-band-toggle--note,
.sidebar-slab-agent:has(+ .sidebar-slab-menu-tree-band) .agent-todo-preview-head.sidebar-accent-band-toggle--note {
  border-bottom: none;
}

.sidebar-slab-agent:has(+ .sidebar-slab-menu-channels-band) + .sidebar-slab-menu-channels-band .sidebar-accent-band-toggle--channels,
.sidebar-slab-agent:has(+ .sidebar-slab-menu-tree-band) + .sidebar-slab-menu-tree-band .sidebar-accent-band-toggle--tree {
  border-top: none;
  margin-top: 0;
}

.sidebar-slab-menu-channels-band + .sidebar-slab-menu-tree-band .sidebar-accent-band-toggle--tree {
  border-top: none;
  margin-top: 0;
}

.sidebar-slab-menu-tree-band:not(.is-collapsed) .sidebar-accent-band-chevron {
  transform: rotate(45deg);
  margin-top: -3px;
}

.sidebar-tree-band-body.is-collapsed,
.sidebar-tree-band-body[hidden] {
  display: none;
}

.sidebar-tree-band-panel {
  display: flex;
  flex-direction: column;
  gap: 6px;
  padding: 6px 10px 0;
  background: linear-gradient(
    180deg,
    rgba(134, 239, 172, 0.42) 0%,
    rgba(240, 253, 244, 0.88) 18%,
    rgba(236, 253, 245, 0.42) 62%,
    rgba(255, 255, 255, 0) 100%
  );
  border-bottom: none;
  box-sizing: border-box;
}

.sidebar-tree-band-panel .sidebar-tree-band-tools.sidebar-slab-menu-tools {
  display: flex;
  flex-direction: column;
  gap: 6px;
  padding: 0;
  margin: 0;
  border-bottom: none;
  box-sizing: border-box;
}

.sidebar-tree-band-panel .menu-pinned-banner {
  margin: 0;
  border-color: rgba(34, 197, 94, 0.4);
  background: #f0fdf4;
  color: #166534;
}

.sidebar-tree-band-panel .menu-pinned-banner-unpin:hover {
  background: rgba(34, 197, 94, 0.14);
  color: #14532d;
}

.sidebar-tree-band-panel .sidebar-menu-before-tree {
  display: flex;
  flex-direction: column;
  gap: 6px;
  padding: 0;
  margin: 0;
  box-sizing: border-box;
}

.sidebar-tree-band-panel .sidebar-workspace-page-index-row {
  margin: 0;
  padding: 0;
  box-sizing: border-box;
}

.sidebar-tree-band-panel .menu-tools-view-cluster {
  border-color: rgba(34, 197, 94, 0.32);
  background: #fff;
}

.sidebar-tree-band-panel .menu-tools-action-btn {
  border-color: rgba(34, 197, 94, 0.32);
  background: #fff;
  color: #166534;
}

.sidebar-tree-band-panel .menu-tools-action-btn:hover:not(:disabled) {
  border-color: rgba(34, 197, 94, 0.55);
  background: #f0fdf4;
  color: #15803d;
}

.sidebar-tree-band-panel .menu-view-btn.active {
  border-color: #22c55e;
  background: #dcfce7;
  color: #166534;
  box-shadow: 0 0 0 1px rgba(34, 197, 94, 0.2);
}

.sidebar-tree-band-panel .node-navigation-workspace-counter-topic-index-row {
  margin: 0;
  align-items: stretch;
}

.sidebar-tree-band-panel .node-navigation-workspace-counter-topic-index {
  min-height: 32px;
  height: 32px;
  padding: 0 10px;
  display: flex;
  align-items: center;
  justify-content: center;
  box-sizing: border-box;
  border-color: rgba(34, 197, 94, 0.35);
  background: #fff;
  color: #166534;
}

.sidebar-tree-band-panel .node-navigation-workspace-counter-topic-index.is-available {
  border-color: rgba(34, 197, 94, 0.5);
  background: #f0fdf4;
  color: #15803d;
}

.sidebar-tree-band-panel .node-navigation-workspace-counter-topic-index.is-generated:hover,
.sidebar-tree-band-panel .node-navigation-workspace-counter-topic-index.is-available:hover {
  border-color: rgba(34, 197, 94, 0.62);
  background: #dcfce7;
}

.sidebar-tree-band-panel .node-navigation-workspace-counter-topic-index-refresh {
  width: 32px;
  height: 32px;
  min-height: 32px;
  border-color: rgba(34, 197, 94, 0.35);
  background: #fff;
  color: #166534;
}

.sidebar-tree-band-panel .node-navigation-workspace-counter-topic-index-refresh:hover,
.sidebar-tree-band-panel .node-navigation-workspace-counter-topic-index-refresh:focus-visible {
  border-color: rgba(34, 197, 94, 0.62);
  background: #dcfce7;
  color: #15803d;
}

.sidebar-tree-band-panel .menu-search-wrap {
  margin: 0;
  width: 100%;
}

.sidebar-tree-band-panel .menu-search-bar {
  border-color: rgba(34, 197, 94, 0.32);
  background: #fff;
  min-height: 32px;
  height: 32px;
  padding: 0 10px;
  box-sizing: border-box;
}

.sidebar-tree-band-panel .menu-search-bar:focus-within {
  border-color: #22c55e;
  background: #fff;
  box-shadow: 0 0 0 2px rgba(34, 197, 94, 0.14);
}

.sidebar-slab-menu-tools .sidebar-workspace-page-index-row {
  margin: 0;
  padding: 0;
  box-sizing: border-box;
}

.sidebar-workspace-page-index-row.hidden {
  display: none;
}

.sidebar-slab-menu-tools .menu-view-wrap,
.sidebar-slab-menu-tools .menu-tools-row {
  display: flex;
  align-items: center;
  gap: 6px;
  width: 100%;
  min-width: 0;
  margin: 0;
  position: relative;
  z-index: 2;
  overflow: visible;
}

.menu-tools-view-cluster {
  flex: 1 1 auto;
  min-width: 0;
  display: flex;
  align-items: stretch;
  height: 28px;
  min-height: 28px;
  gap: 0;
  border: 1px solid var(--border);
  border-radius: 8px;
  background: var(--panel);
  overflow: visible;
  box-sizing: border-box;
}

.sidebar-slab-menu-tools .menu-view-toggle.menu-tools-view-cluster {
  flex: 1 1 auto;
  min-width: 0;
  gap: 0;
  overflow: visible;
}

.sidebar-slab-menu-tools .menu-tools-view-cluster .menu-view-btn {
  flex: 1 1 0;
  width: auto;
  min-width: 0;
  height: 100%;
  min-height: 0;
  border: 0;
  border-radius: 0;
  background: transparent;
  box-shadow: none;
}

.sidebar-slab-menu-tools .menu-tools-view-cluster .menu-view-btn + .menu-view-btn {
  border-left: 1px solid var(--border);
}

.sidebar-slab-menu-tools .menu-tools-view-cluster .menu-view-btn:hover:not(.active) {
  background: #eff6ff;
  color: #1e40af;
}

.sidebar-slab-menu-tools .menu-tools-view-cluster .menu-view-btn.active {
  background: linear-gradient(180deg, #dbeafe 0%, #bfdbfe 100%);
  color: #1e3a8a;
  box-shadow: none;
}

.sidebar-slab-menu-tools .menu-tools-view-cluster .menu-view-btn:focus-visible {
  outline: none;
  box-shadow: inset 0 0 0 2px rgba(59, 130, 246, 0.35);
  z-index: 1;
}

.sidebar-slab-menu-tools .menu-tools-action-btn {
  flex: 0 0 28px;
  height: 28px;
  font-size: 13px;
  color: #64748b;
}

.sidebar-slab-menu-tools .menu-tools-action-btn:hover:not(:disabled),
.sidebar-slab-menu-tools .menu-settings-btn[aria-expanded="true"] {
  border-color: #93c5fd;
  background: #eff6ff;
  color: #1e40af;
}

.sidebar-slab-menu-tools .menu-pin-branch-btn.is-active,
.sidebar-slab-menu-tools .menu-pin-branch-btn[aria-pressed="true"] {
  border-color: #6366f1;
  background: #eef2ff;
  color: #3730a3;
  box-shadow: 0 0 0 1px rgba(99, 102, 241, 0.25);
}

.sidebar-slab-menu-tools .menu-settings-wrap {
  flex: 0 0 28px;
}

.sidebar-slab-menu {
  position: relative;
  flex: 1 1 0;
  min-height: 0;
  display: flex;
  flex-direction: column;
  border-bottom: 0;
  overflow: hidden;
}

.sidebar-menu-before-tree {
  flex-shrink: 0;
  display: flex;
  flex-direction: column;
  gap: 8px;
  padding: 8px 12px 0;
  box-sizing: border-box;
}

.sidebar-slab-menu .menu {
  flex: 0 0 auto;
  min-height: auto;
  margin-top: 0;
  padding: 0 10px 6px 12px;
  overflow: visible;
}

.menu-scroll-shell {
  position: relative;
  flex: 1 1 0%;
  min-height: 0;
  overflow-x: hidden;
  overflow-y: auto;
  overscroll-behavior: contain;
  -webkit-overflow-scrolling: touch;
  overflow-anchor: none;
}

.menu-sidebar-bottom {
  flex: 0 1 auto;
  min-height: 0;
  max-height: none;
  margin-top: auto;
  position: relative;
  z-index: 6;
  background: var(--panel);
  border-top: 1px solid var(--border);
  box-sizing: border-box;
  display: flex;
  flex-direction: column;
  overflow: hidden;
}

.sidebar-slab-menu > .menu-sidebar-bottom:has(
    > .menu-awn-databases-band:not(.is-collapsed),
    > .menu-media-library-band:not(.is-collapsed),
    > .menu-awn-scripts-band:not(.is-collapsed),
    > .menu-repositories-band:not(.is-collapsed),
    > #menu-static-footer:not(.is-collapsed)
  ) {
  flex: 1 1 0%;
  min-height: 0;
}

.sidebar-slab-menu > .menu-sidebar-bottom:not(:has(
    > .menu-awn-databases-band:not(.is-collapsed),
    > .menu-media-library-band:not(.is-collapsed),
    > .menu-awn-scripts-band:not(.is-collapsed),
    > .menu-repositories-band:not(.is-collapsed),
    > #menu-static-footer:not(.is-collapsed)
  )) {
  overflow-x: hidden;
  overflow-y: auto;
  overscroll-behavior: contain;
  -webkit-overflow-scrolling: touch;
}

.menu-sidebar-bottom > #menu-agent-stats:not(.hidden) {
  flex-shrink: 0;
  margin-top: auto;
}

.menu-sidebar-bottom > .menu-awn-databases-band:not(.is-collapsed),
.menu-sidebar-bottom > .menu-media-library-band:not(.is-collapsed),
.menu-sidebar-bottom > .menu-awn-scripts-band:not(.is-collapsed),
.menu-sidebar-bottom > .menu-repositories-band:not(.is-collapsed),
.menu-sidebar-bottom > #menu-static-footer:not(.is-collapsed) {
  flex: 1 1 0;
  min-height: 0;
  display: flex;
  flex-direction: column;
  overflow: hidden;
}

.menu-sidebar-bottom > .menu-awn-databases-band:not(.is-collapsed) .menu-awn-databases-band-head,
.menu-sidebar-bottom > .menu-media-library-band:not(.is-collapsed) .menu-media-library-band-head,
.menu-sidebar-bottom > .menu-awn-scripts-band:not(.is-collapsed) .menu-awn-scripts-band-head,
.menu-sidebar-bottom > .menu-repositories-band:not(.is-collapsed) .menu-repositories-band-head,
.menu-sidebar-bottom > #menu-static-footer:not(.is-collapsed) .menu-static-footer-toggle-btn {
  order: 2;
  flex-shrink: 0;
}

.menu-sidebar-bottom > .menu-awn-databases-band:not(.is-collapsed) .menu-awn-databases-band-body,
.menu-sidebar-bottom > .menu-media-library-band:not(.is-collapsed) .menu-media-library-band-body,
.menu-sidebar-bottom > .menu-awn-scripts-band:not(.is-collapsed) .menu-awn-scripts-band-body,
.menu-sidebar-bottom > .menu-repositories-band:not(.is-collapsed) .menu-repositories-band-body,
.menu-sidebar-bottom > #menu-static-footer:not(.is-collapsed) .menu-static-footer-body {
  flex: 1 1 0;
  min-height: 0;
  overflow-x: hidden;
  overflow-y: auto;
  overscroll-behavior: contain;
  -webkit-overflow-scrolling: touch;
}

.menu-sidebar-bottom > #menu-static-footer:not(.is-collapsed) .menu-static-footer-body {
  order: 1;
}

.sidebar.is-menu-bottom-focus .menu-view-ghost-strip,
.sidebar.is-menu-bottom-focus .menu-scroll-shell {
  display: none;
}

.sidebar.is-menu-bottom-focus .sidebar-slab-menu > .menu-sidebar-bottom {
  flex: 1 1 0%;
  max-height: none;
  display: flex;
  flex-direction: column;
  min-height: 0;
  overflow: hidden;
}

/* Нижние аккордеоны (инфоблоки, медиатеки, скрипты, репо): drawer вверх до дерева; stats внизу */
.sidebar.is-menu-bottom-focus:not(.is-menu-static-footer-focus) {
  overflow-x: hidden;
  overflow-y: auto;
}

.sidebar.is-menu-bottom-focus:not(.is-menu-static-footer-focus) .sidebar-slab-menu-channels-band,
.sidebar.is-menu-bottom-focus:not(.is-menu-static-footer-focus) .sidebar-slab-menu-tree-band {
  display: none !important;
}

.sidebar.is-menu-bottom-focus:not(.is-menu-static-footer-focus) .sidebar-slab-agent {
  flex-shrink: 0;
}

.sidebar.is-menu-bottom-focus:not(.is-menu-static-footer-focus) .sidebar-agent-select-block,
.sidebar.is-menu-bottom-focus:not(.is-menu-static-footer-focus) .sidebar-agent-avatar-block,
.sidebar.is-menu-bottom-focus:not(.is-menu-static-footer-focus) .sidebar-agent-avatar-block .agent-preview-wrap:not(.hidden),
.sidebar.is-menu-bottom-focus:not(.is-menu-static-footer-focus) .sidebar-agent-avatar-block .agent-preview-frame,
.sidebar.is-menu-bottom-focus:not(.is-menu-static-footer-focus) .sidebar-agent-avatar-block .agent-preview-thumb {
  flex-shrink: 0;
}

.sidebar.is-menu-bottom-focus:not(.is-menu-static-footer-focus) .sidebar-slab-menu {
  flex: 1 1 0;
  min-height: 0;
  display: flex;
  flex-direction: column;
  overflow: hidden;
}

.sidebar.is-menu-bottom-focus:not(.is-menu-static-footer-focus) .menu-scroll-shell,
.sidebar.is-menu-bottom-focus:not(.is-menu-static-footer-focus) .menu-view-ghost-strip {
  display: none !important;
}

.sidebar.is-menu-bottom-focus:not(.is-menu-static-footer-focus) .sidebar-slab-menu > .menu-sidebar-bottom {
  flex: 1 1 0;
  min-height: 0;
  max-height: none;
  margin-top: 0;
  border-top: 0;
}

.sidebar.is-menu-bottom-focus:not(.is-menu-static-footer-focus) .menu-sidebar-bottom > .agent-focus-panel--sidebar.is-collapsed,
.sidebar.is-menu-bottom-focus:not(.is-menu-static-footer-focus) .menu-sidebar-bottom > #menu-static-footer {
  display: none !important;
}

.sidebar.is-menu-bottom-focus:not(.is-menu-static-footer-focus) .menu-sidebar-bottom > #menu-agent-stats:not(.hidden) {
  display: block;
  flex-shrink: 0;
}

.sidebar.is-menu-bottom-focus:not(.is-menu-static-footer-focus) .menu-sidebar-bottom > .agent-focus-panel--sidebar:not(.is-collapsed) {
  flex: 1 1 0;
  min-height: 0;
  overflow: hidden;
  border-top: 0;
}

/* «Темы (топики)» раскрыто: нижние аккордеоны скрыты, остаётся только stats */
.sidebar.is-menu-tree-focus:not(.is-menu-bottom-focus):not(.is-menu-static-footer-focus):not(.is-channels-focus) {
  overflow-x: hidden;
  overflow-y: hidden;
}

.sidebar.is-menu-tree-focus:not(.is-menu-bottom-focus):not(.is-menu-static-footer-focus):not(.is-channels-focus)
  .sidebar-slab-menu
  > .menu-sidebar-bottom
  > :not(#menu-agent-stats) {
  display: none !important;
}

.sidebar.is-menu-tree-focus:not(.is-menu-bottom-focus):not(.is-menu-static-footer-focus):not(.is-channels-focus)
  .menu-sidebar-bottom
  > #menu-agent-stats:not(.hidden) {
  display: block;
  flex-shrink: 0;
}

.sidebar.is-menu-tree-focus:not(.is-menu-bottom-focus):not(.is-menu-static-footer-focus):not(.is-channels-focus)
  .sidebar-slab-menu
  > .menu-sidebar-bottom {
  flex: 0 0 auto;
  margin-top: auto;
  border-top: 0;
}

.sidebar.is-menu-tree-focus:not(.is-menu-bottom-focus):not(.is-channels-focus) .menu-scroll-shell {
  flex: 1 1 0;
  min-height: 0;
}

/* «Системные секции»: drawer вверх; блок агента (превью, тулбар, NOTE) не трогаем */
.sidebar.is-menu-static-footer-focus {
  overflow-x: hidden;
  overflow-y: auto;
}

.sidebar.is-menu-static-footer-focus .sidebar-slab-menu-channels-band,
.sidebar.is-menu-static-footer-focus .sidebar-slab-menu-tree-band {
  display: none !important;
}

.sidebar.is-menu-static-footer-focus .sidebar-slab-agent {
  flex-shrink: 0;
}

.sidebar.is-menu-static-footer-focus .sidebar-agent-select-block,
.sidebar.is-menu-static-footer-focus .sidebar-agent-avatar-block,
.sidebar.is-menu-static-footer-focus .sidebar-agent-avatar-block .agent-preview-wrap:not(.hidden),
.sidebar.is-menu-static-footer-focus .sidebar-agent-avatar-block .agent-preview-frame,
.sidebar.is-menu-static-footer-focus .sidebar-agent-avatar-block .agent-preview-thumb {
  flex-shrink: 0;
}

.sidebar.is-menu-static-footer-focus .sidebar-slab-menu {
  flex: 1 1 0;
  min-height: 0;
  display: flex;
  flex-direction: column;
  overflow: hidden;
}

.sidebar.is-menu-static-footer-focus .menu-scroll-shell,
.sidebar.is-menu-static-footer-focus .menu-view-ghost-strip {
  display: none !important;
}

.sidebar.is-menu-static-footer-focus .sidebar-slab-menu > .menu-sidebar-bottom {
  flex: 1 1 0;
  min-height: 0;
  max-height: none;
  margin-top: 0;
  display: flex;
  flex-direction: column;
  overflow: hidden;
}

.sidebar.is-menu-static-footer-focus .menu-sidebar-bottom > :not(#menu-static-footer):not(#menu-agent-stats) {
  display: none !important;
}

.sidebar.is-menu-static-footer-focus .menu-sidebar-bottom > #menu-agent-stats:not(.hidden) {
  display: block;
  flex-shrink: 0;
}

.sidebar.is-menu-static-footer-focus .menu-sidebar-bottom > #menu-static-footer:not(.is-collapsed) {
  flex: 1 1 0;
  min-height: 0;
  overflow: hidden;
  border-top: 0;
}

.sidebar.is-menu-static-footer-focus .menu-static-footer-toggle-btn {
  flex-shrink: 0;
}

.sidebar.is-menu-static-footer-focus .menu-static-footer-body {
  flex: 1 1 0;
  min-height: 0;
  overflow-x: hidden;
  overflow-y: auto;
  overscroll-behavior: contain;
  -webkit-overflow-scrolling: touch;
}

.sidebar.is-menu-static-footer-focus .menu-static-footer-sections {
  flex: 1 1 0;
  min-height: 0;
}

.menu-scroll-chrome {
  position: absolute;
  inset: 0 0 auto 0;
  z-index: 14;
  pointer-events: none;
}

.scroll-progress-track {
  height: 3px;
  background: rgba(148, 163, 184, 0.24);
}

.scroll-progress-fill {
  height: 100%;
  width: 0%;
  background: linear-gradient(90deg, #3b82f6 0%, #6366f1 100%);
  transition: width 0.12s linear;
}

.scroll-depth-indicator {
  position: absolute;
  top: 8px;
  right: 10px;
  padding: 4px 9px;
  border-radius: 999px;
  background: rgba(15, 23, 42, 0.82);
  color: #fff;
  font-size: 10px;
  font-weight: 700;
  line-height: 1.2;
  letter-spacing: 0.02em;
  font-variant-numeric: tabular-nums;
  box-shadow: 0 6px 16px rgba(15, 23, 42, 0.18);
  white-space: nowrap;
}

.scroll-depth-indicator.hidden {
  display: none;
}

.scroll-top-btn {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 8px;
  min-height: 46px;
  padding: 0 18px 0 14px;
  border: 0;
  border-radius: 999px;
  background: linear-gradient(135deg, #60a5fa 0%, #3b82f6 48%, #2563eb 100%);
  color: #fff;
  font: inherit;
  font-size: 13px;
  font-weight: 700;
  letter-spacing: 0.02em;
  cursor: grab;
  touch-action: none;
  user-select: none;
  --scroll-top-shift-x: 0px;
  --scroll-top-shift-y: 0px;
  box-shadow:
    0 12px 28px rgba(37, 99, 235, 0.34),
    0 2px 8px rgba(15, 23, 42, 0.12);
  opacity: 0;
  visibility: hidden;
  transform: translateY(14px) scale(0.94);
  pointer-events: none;
  transition:
    opacity 0.24s ease,
    transform 0.24s ease,
    visibility 0.24s ease,
    box-shadow 0.16s ease,
    background 0.16s ease;
}

.scroll-top-btn.is-dragging,
.scroll-top-btn.is-dragging:hover,
.scroll-top-btn.is-dragging:active {
  cursor: grabbing;
  transition: none;
  transform: translateY(0) scale(1);
}

.scroll-top-btn.is-visible {
  opacity: 1;
  visibility: visible;
  transform: translateY(0) scale(1);
  pointer-events: auto;
}

.scroll-top-btn:hover {
  background: linear-gradient(135deg, #93c5fd 0%, #60a5fa 48%, #3b82f6 100%);
  box-shadow:
    0 16px 32px rgba(37, 99, 235, 0.42),
    0 4px 12px rgba(15, 23, 42, 0.14);
  transform: translateY(-2px) scale(1.02);
}

.scroll-top-btn:focus-visible {
  outline: 2px solid rgba(255, 255, 255, 0.92);
  outline-offset: 2px;
}

.scroll-top-btn:active {
  transform: translateY(0) scale(0.98);
}

.scroll-top-btn-icon {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 22px;
  height: 22px;
  flex: 0 0 22px;
}

.scroll-top-btn-label {
  line-height: 1;
  white-space: nowrap;
}

.menu-scroll-top-btn {
  position: absolute;
  right: 10px;
  bottom: 10px;
  z-index: 16;
}

.sidebar-slab .agent-view-wrap,
.sidebar-slab .menu-view-wrap,
.sidebar-slab .menu-search-wrap,
.sidebar-slab .menu-cards-filter-wrap {
  margin-top: 0;
}

.sidebar-slab-menu .menu-pinned-banner,
.sidebar-tree-band-panel .menu-pinned-banner {
  margin: 0;
}

.sidebar-slab-menu .menu-cards-filter-wrap,
.sidebar-tree-band-panel .menu-cards-filter-wrap {
  margin-top: 0;
}

.menu-agent-stats {
  flex: 0 0 auto;
  display: block;
  padding: 0;
  border-top: 0;
  background: transparent;
}

.menu-agent-stats.hidden {
  display: none;
}

.sidebar-accent-band--muted {
  display: flex;
  align-items: center;
  justify-content: flex-start;
  gap: 0;
  width: 100%;
  margin: 0;
  padding: 9px 10px;
  border: 0;
  background: linear-gradient(135deg, #64748b 0%, #78859a 55%, #94a3b8 100%);
  color: #fff;
  box-sizing: border-box;
  font-family: inherit;
  font-size: 12px;
  line-height: 1.35;
}

.menu-agent-stats-band.sidebar-accent-band--muted {
  container-type: inline-size;
  justify-content: space-between;
  gap: 4px;
  min-height: 0;
  padding: 4px 6px 4px 8px;
  align-items: center;
}

.menu-agent-stats-line {
  display: flex;
  align-items: center;
  gap: 2px;
  flex: 1 1 auto;
  width: auto;
  min-width: 0;
  font-size: 12px;
  line-height: 1.3;
  color: #fff;
}

.menu-agent-stats-reload-btn {
  flex: 0 0 auto;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 20px;
  height: 20px;
  margin: 0;
  padding: 0;
  border: 0;
  border-radius: 5px;
  background: transparent;
  color: rgba(255, 255, 255, 0.92);
  cursor: pointer;
  transition:
    background-color 0.15s ease,
    color 0.15s ease;
}

.menu-agent-stats-reload-btn:hover:not(:disabled) {
  background: rgba(255, 255, 255, 0.16);
  color: #fff;
}

.menu-agent-stats-reload-btn:focus {
  outline: none;
}

.menu-agent-stats-reload-btn:focus-visible {
  box-shadow: 0 0 0 2px rgba(255, 255, 255, 0.42);
}

.menu-agent-stats-reload-btn:disabled {
  cursor: default;
  opacity: 0.72;
}

.menu-agent-stats-reload-icon {
  display: block;
  width: 14px;
  height: 14px;
}

.menu-agent-stats-reload-btn.is-loading .menu-agent-stats-reload-icon {
  animation: menu-agent-stats-reload-spin 0.65s linear infinite;
}

@keyframes menu-agent-stats-reload-spin {
  to {
    transform: rotate(360deg);
  }
}

.menu-agent-stats-open-btn {
  display: flex;
  align-items: center;
  gap: 4px;
  flex: 1 1 auto;
  width: auto;
  min-width: 0;
  margin: 0;
  padding: 1px 2px;
  border: 0;
  border-radius: 5px;
  background: transparent;
  color: #fff;
  font: inherit;
  line-height: 1.3;
  text-align: left;
  cursor: pointer;
  transition:
    background-color 0.15s ease,
    color 0.15s ease;
}

.menu-agent-stats-open-btn:hover:not(:disabled) {
  background: rgba(255, 255, 255, 0.14);
}

.menu-agent-stats-open-btn:focus {
  outline: none;
}

.menu-agent-stats-open-btn:focus-visible {
  box-shadow: 0 0 0 2px rgba(255, 255, 255, 0.42);
}

.menu-agent-stats-open-btn[aria-expanded="true"] {
  background: rgba(255, 255, 255, 0.92);
  color: #475569;
}

.menu-agent-stats-open-icon {
  flex: 0 0 auto;
  display: block;
  width: 14px;
  height: 14px;
  opacity: 0.92;
}

.menu-agent-stats-open-label {
  flex: 1 1 auto;
  min-width: 0;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
  font-size: 11px;
  font-weight: 600;
  font-variant-numeric: tabular-nums;
  letter-spacing: -0.01em;
}

@container (max-width: 300px) {
  .menu-agent-stats-open-icon {
    display: none;
  }

  .menu-agent-stats-open-btn {
    gap: 0;
  }
}

.menu-agent-stats-env-popover.is-summary {
  width: min(420px, calc(100vw - 32px));
}

.menu-agent-stats-summary-body {
  flex: 1 1 auto;
  min-height: 0;
  max-height: min(62vh, 480px);
  overflow: auto;
  padding: 12px 16px 14px;
  background:
    linear-gradient(var(--notebook-grid) 1px, transparent 1px),
    linear-gradient(90deg, var(--notebook-grid) 1px, transparent 1px),
    var(--notebook-paper);
  background-size:
    18px 18px,
    18px 18px,
    auto;
}

.menu-agent-stats-summary-section {
  margin-bottom: 14px;
}

.menu-agent-stats-summary-section:last-child {
  margin-bottom: 0;
}

.menu-agent-stats-summary-repo {
  margin-bottom: 12px;
}

.menu-agent-stats-summary-repo:last-child {
  margin-bottom: 0;
}

.menu-agent-stats-summary-repo-title {
  margin: 0 0 4px;
  font-size: 12px;
  font-weight: 600;
  line-height: 1.35;
  color: rgba(61, 43, 31, 0.82);
}

.menu-agent-stats-summary-section-title {
  margin: 0 0 6px;
  font-size: 11px;
  font-weight: 700;
  letter-spacing: 0.04em;
  text-transform: uppercase;
  color: rgba(61, 43, 31, 0.55);
}

.menu-agent-stats-summary-rows {
  margin: 0;
  padding: 0;
}

.menu-agent-stats-summary-row {
  display: flex;
  align-items: baseline;
  justify-content: space-between;
  gap: 12px;
  padding: 3px 0;
  font-size: 13px;
  line-height: 1.35;
}

.menu-agent-stats-summary-row dt {
  margin: 0;
  font-weight: 500;
  color: rgba(61, 43, 31, 0.78);
}

.menu-agent-stats-summary-row dd {
  margin: 0;
  font-weight: 600;
  color: var(--notebook-ink);
  text-align: right;
  font-variant-numeric: tabular-nums;
}

.menu-agent-stats-summary-loading,
.menu-agent-stats-summary-error {
  margin: 0;
  padding: 8px 0;
  font-size: 13px;
  color: rgba(61, 43, 31, 0.72);
}

.menu-agent-stats-actions {
  flex: 0 0 auto;
  display: inline-flex;
  align-items: center;
  gap: 1px;
  margin-left: 2px;
}

.menu-agent-stats-journal-btn,
.menu-agent-stats-dependencies-btn,
.menu-agent-stats-recycler-btn,
.menu-agent-stats-reload-btn,
.menu-agent-stats-env-btn,
.menu-agent-stats-settings-btn {
  flex: 0 0 auto;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 20px;
  height: 20px;
  margin: 0;
  padding: 0;
  border: 0;
  border-radius: 5px;
  background: transparent;
  color: rgba(255, 255, 255, 0.92);
  cursor: pointer;
  transition:
    background-color 0.15s ease,
    color 0.15s ease;
}

.menu-agent-stats-journal-btn:hover:not(:disabled),
.menu-agent-stats-dependencies-btn:hover:not(:disabled),
.menu-agent-stats-recycler-btn:hover:not(:disabled),
.menu-agent-stats-reload-btn:hover:not(:disabled),
.menu-agent-stats-env-btn:hover:not(:disabled),
.menu-agent-stats-settings-btn:hover:not(:disabled) {
  background: rgba(255, 255, 255, 0.16);
  color: #fff;
}

.menu-agent-stats-env-btn:focus,
.menu-agent-stats-settings-btn:focus {
  outline: none;
}

.menu-agent-stats-env-btn:focus-visible,
.menu-agent-stats-settings-btn:focus-visible {
  box-shadow: 0 0 0 2px rgba(255, 255, 255, 0.42);
}

.menu-agent-stats-settings-btn[aria-expanded="true"] {
  background: rgba(255, 255, 255, 0.92);
  color: #475569;
}

.menu-agent-stats-env-btn.is-active,
.menu-agent-stats-journal-btn.is-active,
.menu-agent-stats-recycler-btn.is-active,
.menu-agent-stats-dependencies-btn.is-active {
  background: rgba(255, 255, 255, 0.92);
  color: #475569;
}

.menu-agent-stats-dependencies-btn.is-generated:not(.is-active) {
  opacity: 0.78;
}

.menu-agent-stats-journal-btn:focus,
.menu-agent-stats-dependencies-btn:focus {
  outline: none;
}

.menu-agent-stats-journal-btn:focus-visible,
.menu-agent-stats-dependencies-btn:focus-visible {
  box-shadow: 0 0 0 2px rgba(255, 255, 255, 0.42);
}

.menu-agent-stats-journal-icon,
.menu-agent-stats-dependencies-icon,
.menu-agent-stats-recycler-icon,
.menu-agent-stats-env-icon,
.menu-agent-stats-settings-icon {
  display: block;
  width: 15px;
  height: 15px;
}

.menu-agent-stats-env-overlay {
  position: fixed;
  inset: 0;
  z-index: 1200;
  display: flex;
  align-items: center;
  justify-content: center;
  padding: 24px 16px;
  background: rgba(15, 23, 42, 0.42);
}

.menu-agent-stats-env-overlay.hidden {
  display: none;
}

.menu-agent-stats-env-popover {
  --notebook-cover: #6b4428;
  --notebook-cover-deep: #4a2e1c;
  --notebook-paper: #fffef7;
  --notebook-ink: #3d2b1f;
  --notebook-grid: rgba(176, 132, 84, 0.11);
  position: relative;
  z-index: 1;
  display: flex;
  flex-direction: column;
  gap: 0;
  width: min(360px, calc(100vw - 32px));
  max-height: min(85vh, 560px);
  padding: 0;
  border: 1px solid rgba(74, 46, 28, 0.42);
  border-radius: 14px;
  background: var(--notebook-paper);
  box-shadow:
    0 18px 42px rgba(42, 24, 12, 0.22),
    inset 0 1px 0 rgba(255, 255, 255, 0.55);
  overflow: hidden;
}

.menu-agent-stats-env-popover-head {
  position: relative;
  display: flex;
  flex-direction: row;
  align-items: flex-start;
  justify-content: space-between;
  gap: 10px;
  min-width: 0;
  padding: 12px 12px 11px 24px;
  background:
    linear-gradient(180deg, rgba(255, 236, 210, 0.14) 0%, transparent 42%),
    linear-gradient(180deg, #7a4f31 0%, var(--notebook-cover) 55%, var(--notebook-cover-deep) 100%);
  border-bottom: 1px solid rgba(255, 232, 196, 0.16);
  box-shadow: inset 0 -1px 0 rgba(0, 0, 0, 0.12);
}

.menu-agent-stats-env-popover-head::before {
  content: "";
  position: absolute;
  left: 10px;
  top: 10px;
  bottom: 10px;
  width: 4px;
  border-radius: 3px;
  background: repeating-linear-gradient(
    to bottom,
    rgba(255, 248, 235, 0.72) 0 5px,
    rgba(255, 248, 235, 0.18) 5px 11px
  );
  box-shadow: inset 0 0 0 1px rgba(0, 0, 0, 0.08);
}

.menu-agent-stats-env-popover-head::after {
  content: "";
  position: absolute;
  left: 0;
  right: 0;
  bottom: -6px;
  height: 6px;
  background: linear-gradient(180deg, rgba(0, 0, 0, 0.08), transparent);
  pointer-events: none;
}

.menu-agent-stats-env-popover-head-copy {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  gap: 3px;
  min-width: 0;
  flex: 1;
}

.menu-agent-stats-env-popover-close {
  flex-shrink: 0;
  margin-top: -2px;
  color: #fff6e8;
  border-color: rgba(255, 246, 232, 0.35);
  background: rgba(0, 0, 0, 0.12);
}

.menu-agent-stats-env-popover-close:hover {
  background: rgba(0, 0, 0, 0.22);
  color: #fff;
}

.menu-agent-stats-env-popover-title {
  font-size: 12px;
  font-weight: 800;
  line-height: 1.3;
  letter-spacing: 0.08em;
  text-transform: uppercase;
  color: #fff6e8;
  text-shadow: 0 1px 0 rgba(0, 0, 0, 0.18);
}

.menu-agent-stats-env-popover-subtitle {
  font-size: 10px;
  line-height: 1.35;
  color: rgba(255, 244, 228, 0.82);
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
  max-width: 100%;
}

.menu-agent-stats-env-popover-footer {
  margin: 0;
  padding: 10px 14px 11px;
  background:
    linear-gradient(0deg, rgba(0, 0, 0, 0.08), transparent 38%),
    linear-gradient(180deg, var(--notebook-cover-deep) 0%, #3d2617 100%);
  border-top: 1px solid rgba(255, 232, 196, 0.1);
  box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.05);
}

.menu-agent-stats-env-popover-footer::before {
  content: "";
  display: block;
  height: 1px;
  margin: 0 auto 8px;
  width: min(72%, 180px);
  background: linear-gradient(
    90deg,
    transparent,
    rgba(255, 232, 196, 0.35) 18%,
    rgba(255, 232, 196, 0.35) 82%,
    transparent
  );
}

.menu-agent-stats-env-popover-version {
  display: block;
  font-size: 11px;
  font-weight: 700;
  line-height: 1.35;
  letter-spacing: 0.07em;
  color: #f8ead8;
  text-align: center;
  font-variant-numeric: tabular-nums;
  text-shadow: 0 1px 0 rgba(0, 0, 0, 0.2);
}

.menu-agent-stats-env-popover .menu-system-environment-grid.is-popover {
  flex: 1 1 auto;
  min-height: 0;
  overflow-y: auto;
}

.menu-system-environment-grid.is-popover {
  display: flex;
  flex-direction: column;
  gap: 3px;
  padding: 8px 10px 10px;
  background:
    linear-gradient(var(--notebook-grid) 1px, transparent 1px),
    linear-gradient(90deg, var(--notebook-grid) 1px, transparent 1px),
    var(--notebook-paper);
  background-size: 8px 8px;
  font-family: inherit;
  font-size: 12px;
  line-height: 1.35;
  color: var(--notebook-ink);
}

.menu-system-environment-grid.is-popover .menu-system-env-item {
  border-color: rgba(176, 132, 84, 0.2);
  border-radius: 6px;
  padding: 4px 7px;
  background: #ffffff;
  box-shadow: 0 1px 2px rgba(61, 43, 31, 0.06);
}

.menu-system-environment-grid.is-popover .menu-system-env-label,
.menu-system-environment-grid.is-popover .menu-system-env-value {
  color: var(--notebook-ink);
}

.menu-system-environment-grid.is-popover .menu-system-env-desc {
  color: rgba(61, 43, 31, 0.62);
}

.menu-agent-stat {
  display: flex;
  flex-direction: row;
  align-items: baseline;
  justify-content: center;
  gap: 3px;
  min-width: 0;
  white-space: nowrap;
}

.menu-agent-stat-value {
  font-size: inherit;
  font-weight: 600;
  line-height: inherit;
  color: #fff;
  font-variant-numeric: tabular-nums;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
  max-width: 100%;
}

.menu-agent-stat-label {
  min-width: 0;
  font-size: inherit;
  font-weight: 500;
  line-height: inherit;
  color: rgba(255, 255, 255, 0.88);
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
  max-width: 100%;
}

.sidebar-accent-band-toggle {
  display: flex;
  align-items: center;
  justify-content: flex-start;
  gap: 8px;
  width: 100%;
  margin: 0;
  padding: 10px 12px;
  border: 0;
  background: linear-gradient(135deg, #4f46e5 0%, #6366f1 55%, #818cf8 100%);
  color: #fff;
  cursor: pointer;
  font-family: inherit;
  font-size: 12px;
  line-height: 1.35;
  font-weight: 600;
  text-align: left;
  box-sizing: border-box;
  appearance: none;
}

.sidebar-accent-band-toggle:hover {
  filter: brightness(1.05);
}

.sidebar-accent-band-toggle:focus {
  outline: none;
}

.sidebar-accent-band-toggle:focus-visible {
  outline: 2px solid rgba(255, 255, 255, 0.85);
  outline-offset: -2px;
}

.sidebar-accent-band-toggle--note {
  background: linear-gradient(135deg, #f59e0b 0%, #fbbf24 55%, #fcd34d 100%);
  color: #78350f;
}

.sidebar-accent-band-toggle--note:hover {
  filter: brightness(1.04);
}

.sidebar-accent-band-toggle--note:focus-visible {
  outline: 2px solid rgba(120, 53, 15, 0.42);
  outline-offset: -2px;
}

.sidebar-accent-band-toggle--note .sidebar-accent-band-chevron {
  border-right-color: rgba(120, 53, 15, 0.82);
  border-bottom-color: rgba(120, 53, 15, 0.82);
}

.sidebar-accent-band-toggle--note .sidebar-accent-band-title {
  color: #78350f;
}

.sidebar-accent-band-toggle.sidebar-accent-band-toggle--tree {
  color: #f0fdf4;
  padding: 9px 12px;
  border: 0;
  box-shadow: none;
}

.sidebar-accent-band-toggle.sidebar-accent-band-toggle--tree:hover {
  filter: brightness(1.04);
}

.sidebar-accent-band-toggle.sidebar-accent-band-toggle--tree:focus-visible {
  outline: 2px solid rgba(255, 255, 255, 0.88);
  outline-offset: -2px;
}

.sidebar-accent-band-toggle--tree .sidebar-accent-band-chevron {
  border-right-color: rgba(255, 255, 255, 0.95);
  border-bottom-color: rgba(255, 255, 255, 0.95);
}

.sidebar-accent-band-toggle--tree .sidebar-accent-band-title {
  color: #f0fdf4;
}

.sidebar-accent-band-toggle-main {
  display: inline-flex;
  align-items: center;
  gap: 6px;
  min-width: 0;
}

.sidebar-accent-band-icon {
  flex-shrink: 0;
  display: block;
  width: 14px;
  height: 14px;
  opacity: 0.92;
}

.sidebar-accent-band-chevron {
  flex-shrink: 0;
  width: 8px;
  height: 8px;
  border-right: 2px solid rgba(255, 255, 255, 0.9);
  border-bottom: 2px solid rgba(255, 255, 255, 0.9);
  transform: rotate(-45deg);
  transition: transform 0.15s ease;
  margin-top: -1px;
}

/* drawer снизу вверх: раскрыто — ^ вверх (как menu-static-footer) */
.menu-awn-databases-band:not(.is-collapsed) .sidebar-accent-band-chevron,
.menu-media-library-band:not(.is-collapsed) .sidebar-accent-band-chevron,
.menu-awn-scripts-band:not(.is-collapsed) .sidebar-accent-band-chevron,
.menu-repositories-band:not(.is-collapsed) .sidebar-accent-band-chevron {
  transform: rotate(-135deg);
  margin-top: 4px;
}

.menu-awn-channels-band:not(.is-collapsed) .sidebar-accent-band-chevron,
.sidebar-slab-menu-channels-band:not(.is-collapsed) .sidebar-accent-band-chevron,
.menu-system-environment.is-open > .sidebar-accent-band-toggle .sidebar-accent-band-chevron {
  transform: rotate(45deg);
  margin-top: -3px;
}

/* drawer снизу вверх: свернуто — › вправо; раскрыто — ^ вверх */
.menu-static-footer.is-collapsed .sidebar-accent-band-chevron {
  transform: rotate(-45deg);
  margin-top: -1px;
}

.menu-static-footer:not(.is-collapsed) .sidebar-accent-band-chevron {
  transform: rotate(-135deg);
  margin-top: 4px;
}

.sidebar-accent-band-title {
  min-width: 0;
  font-family: inherit;
  font-size: inherit;
  font-weight: inherit;
  letter-spacing: 0;
  text-transform: none;
  line-height: inherit;
  color: #fff;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
}

.menu-static-footer-toggle-btn .sidebar-accent-band-toggle-main {
  flex: 1 1 auto;
  min-width: 0;
}

.menu-static-footer-title.sidebar-accent-band-title {
  flex: 1 1 auto;
  min-width: 0;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
}

.menu-system-environment-host .sidebar-accent-band-toggle-main {
  min-width: 0;
  flex: 1 1 auto;
}

.menu-system-environment-host-text.sidebar-accent-band-title {
  flex: 1 1 auto;
  min-width: 0;
  font-family: inherit;
  font-size: inherit;
  font-weight: inherit;
  letter-spacing: 0;
  line-height: inherit;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
}

.menu-system-environment {
  flex: 0 0 auto;
  display: block;
  padding: 0;
  border-top: 0;
  background: transparent;
}

.menu-system-environment.hidden {
  display: none;
}

.menu-system-environment-host {
  width: 100%;
}

.menu-system-environment-summary {
  margin: 0 0 4px;
  padding: 0 2px;
  font-size: 9px;
  line-height: 1.35;
  color: #64748b;
  word-break: break-word;
}

.menu-system-environment-grid {
  display: none;
  flex-direction: column;
  gap: 4px;
  padding: 8px 10px 10px;
  background: #f5f3ff;
  font-family: inherit;
  font-size: 12px;
  line-height: 1.35;
}

.menu-system-environment.is-open > .menu-system-environment-grid {
  display: flex;
}

.menu-system-env-item {
  display: grid;
  grid-template-columns: auto minmax(0, 1fr) auto;
  align-items: center;
  gap: 8px;
  min-width: 0;
  width: 100%;
  padding: 5px 8px;
  border: 1px solid rgba(148, 163, 184, 0.2);
  border-radius: 6px;
  background: rgba(255, 255, 255, 0.78);
  font-size: 12px;
  line-height: 1.35;
}

.menu-system-env-dot {
  width: 6px;
  height: 6px;
  border-radius: 999px;
  background: #94a3b8;
  flex: 0 0 auto;
}

.menu-system-env-item.is-ok .menu-system-env-dot {
  background: #16a34a;
}

.menu-system-env-item.is-warn .menu-system-env-dot {
  background: #d97706;
}

.menu-system-env-item.is-missing .menu-system-env-dot {
  background: #cbd5e1;
}

.menu-system-env-item.is-loading .menu-system-env-dot {
  background: #64748b;
  opacity: 0.55;
}

.menu-system-env-name {
  display: flex;
  align-items: baseline;
  gap: 4px;
  min-width: 0;
  overflow: hidden;
}

.menu-system-env-label {
  flex: 0 1 auto;
  min-width: 0;
  font-size: inherit;
  font-weight: 600;
  line-height: inherit;
  color: #334155;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
}

.menu-system-env-desc {
  flex: 1 1 auto;
  min-width: 0;
  font-size: 11px;
  font-weight: 400;
  line-height: inherit;
  color: #64748b;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
}

.menu-system-env-value {
  flex: 0 0 auto;
  font-size: inherit;
  font-weight: 600;
  line-height: inherit;
  color: #1e293b;
  font-variant-numeric: tabular-nums;
  white-space: nowrap;
  text-align: right;
}

.menu-sidebar-bottom .menu-system-environment:not(.hidden) {
  margin-top: 0;
}

.sidebar-slab-menu .menu-system-environment {
  border-top-color: rgba(148, 163, 184, 0.16);
}

.menu-intake-badges {
  display: inline-flex;
  align-items: center;
  gap: 4px;
  margin-left: 6px;
  flex: 0 0 auto;
}

.menu-intake-badge {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-width: 16px;
  padding: 1px 5px;
  border-radius: 999px;
  font-size: 10px;
  font-weight: 700;
  line-height: 1.2;
  font-variant-numeric: tabular-nums;
  letter-spacing: 0.01em;
}

.menu-intake-badge--inbox {
  color: #9a3412;
  background: #ffedd5;
  border: 1px solid rgba(251, 146, 60, 0.45);
}

.menu-intake-badge--inbox.menu-intake-badge--total {
  color: #475569;
  background: #f1f5f9;
  border: 1px solid rgba(148, 163, 184, 0.45);
}

.menu-intake-badge--thread {
  color: #5b21b6;
  background: #ede9fe;
  border: 1px solid rgba(167, 139, 250, 0.45);
}

.menu-intake-badge--mention {
  color: #0e7490;
  background: #ecfeff;
  border: 1px solid rgba(34, 211, 238, 0.45);
}

.menu-item.has-menu-intake-badges .menu-item-name,
.menu-folder.has-menu-intake-badges .menu-folder-name {
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.menu-runtime-badges {
  display: inline-flex;
  align-items: center;
  gap: 3px;
  margin-left: 4px;
  flex: 0 0 auto;
}

.menu-runtime-badge {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 16px;
  height: 16px;
  border-radius: 4px;
  cursor: help;
  flex-shrink: 0;
  line-height: 0;
}

.menu-runtime-badge--cron {
  color: #c2410c;
  background: #ffedd5;
  border: 1px solid rgba(251, 146, 60, 0.45);
}

.menu-runtime-badge--heartbeat {
  color: #be123c;
  background: #ffe4e6;
  border: 1px solid rgba(251, 113, 133, 0.45);
}

.menu-runtime-badge--commands {
  color: #047857;
  background: #d1fae5;
  border: 1px solid rgba(52, 211, 153, 0.45);
}

.menu-runtime-badge--context {
  color: #2563eb;
  background: #dbeafe;
  border: 1px solid rgba(96, 165, 250, 0.45);
}

.menu-runtime-badge--schema {
  color: #7c3aed;
  background: rgba(124, 58, 237, 0.12);
  border: 1px solid rgba(124, 58, 237, 0.35);
}

.menu-runtime-badge--descendant {
  opacity: 0.78;
  border-style: dashed;
}

.menu-runtime-badge .menu-marker-svg,
.menu-runtime-marker-svg {
  display: block;
  width: 12px;
  height: 12px;
  flex-shrink: 0;
}

.menu-item.has-menu-runtime-badges .menu-item-name,
.menu-folder.has-menu-runtime-badges .menu-folder-name,
.menu-section-title.has-menu-runtime-badges .menu-section-name {
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.external-file-comments {
  margin: 0;
  padding: 1rem 0 1.25rem;
  border-top: 1px solid var(--border);
  box-sizing: border-box;
}

.media-file-comments {
  margin: 0;
  padding: 1rem 0 1.25rem;
  border-top: 1px solid var(--border);
  box-sizing: border-box;
}

.external-file-comments-loading,
.media-file-comments-loading {
  margin: 0;
  color: var(--muted);
  font-size: 0.875rem;
}

.node-comments-mention-badge {
  margin-left: 0.35rem;
  padding: 0.1rem 0.45rem;
  border-radius: 999px;
  font-size: 0.72rem;
  font-weight: 600;
  color: #5b21b6;
  background: #ede9fe;
  border: 1px solid rgba(167, 139, 250, 0.45);
}

.node-comment--mentions-me {
  outline: 1px solid rgba(167, 139, 250, 0.55);
  outline-offset: 2px;
  border-radius: 8px;
}

.node-comment-reaction.is-active {
  color: #0f766e;
  background: #ccfbf1;
  border-color: rgba(45, 212, 191, 0.45);
}

.sidebar-resize-bar {
  grid-column: 2;
  grid-row: 2 / 3;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  gap: 6px;
  min-height: 0;
  border-right: 1px solid var(--border);
  background: linear-gradient(180deg, #f8fafc 0%, #eef2f7 100%);
  z-index: 2;
}

.sidebar-resize-btn {
  width: 22px;
  height: 22px;
  border: 1px solid var(--border);
  border-radius: 5px;
  background: var(--panel);
  color: var(--muted);
  padding: 0;
  cursor: pointer;
  flex: 0 0 22px;
  font-size: 11px;
  font-weight: 700;
  line-height: 1;
  display: inline-flex;
  align-items: center;
  justify-content: center;
}

.sidebar-resize-btn:hover:not(:disabled) {
  background: var(--panel-soft);
  color: var(--text);
  border-color: #93c5fd;
}

.sidebar-resize-btn:disabled {
  opacity: 0.35;
  cursor: default;
}

.menu-view-wrap,
.menu-search-wrap,
.sidebar-agent-bar,
.agent-view-wrap {
  flex-shrink: 0;
}

.agent-view-wrap {
  margin-top: 0;
}

.agent-view-toggle {
  display: flex;
  width: 100%;
  max-width: 100%;
  border: 1px solid var(--border);
  border-radius: 8px;
  background: var(--panel);
  overflow-x: auto;
  overflow-y: hidden;
  scrollbar-width: thin;
  -webkit-overflow-scrolling: touch;
}

.agent-view-btn {
  flex: 0 0 auto;
  min-width: 44px;
  border: 0;
  background: transparent;
  color: var(--muted);
  padding: 0 2px;
  font-size: 10px;
  font-weight: 600;
  line-height: 1;
  cursor: pointer;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  transition: background 0.15s ease, color 0.15s ease;
}

.agent-view-btn + .agent-view-btn {
  border-left: 1px solid var(--border);
}

.agent-view-btn:hover:not(:disabled) {
  background: #f8fafc;
  color: var(--text);
}

.agent-view-btn:disabled {
  opacity: 0.45;
  cursor: not-allowed;
  color: #94a3b8;
  background: #f8fafc;
}

.agent-view-btn.active {
  background: linear-gradient(180deg, #dbeafe 0%, #bfdbfe 100%);
  color: #1e3a8a;
}

.agent-view-btn:focus-visible {
  outline: none;
  box-shadow: inset 0 0 0 2px rgba(59, 130, 246, 0.35);
}

.menu-search-wrap {
  display: flex;
  align-items: center;
  gap: 6px;
  margin-top: 0;
  width: 100%;
  min-width: 0;
}

.menu-search-wrap .menu-search-bar {
  flex: 1 1 auto;
  min-width: 0;
}

.menu-search-refresh-btn {
  flex: 0 0 28px;
  width: 28px;
  height: 28px;
  font-size: 13px;
  color: #64748b;
}

.menu-search-bar {
  display: flex;
  align-items: center;
  gap: 8px;
  width: 100%;
  min-height: 34px;
  padding: 0 10px;
  border: 1px solid var(--border);
  border-radius: 8px;
  background: var(--panel);
  box-sizing: border-box;
  cursor: text;
  transition: border-color 0.15s ease, box-shadow 0.15s ease, background 0.15s ease;
}

.menu-search-bar:focus-within {
  border-color: var(--accent);
  background: #fff;
  box-shadow: 0 0 0 2px rgba(59, 130, 246, 0.12);
}

.menu-search-icon {
  flex: 0 0 auto;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  color: #94a3b8;
}

.menu-search-icon svg {
  display: block;
}

.menu-cards-filter-wrap {
  margin-top: 8px;
  flex-shrink: 0;
}

.menu-cards-filter {
  display: flex;
  align-items: center;
  gap: 9px;
  width: 100%;
  padding: 8px 11px;
  border: 1px solid #dbeafe;
  border-radius: 10px;
  background: linear-gradient(180deg, #f8fbff 0%, #eef3ff 100%);
  box-shadow:
    0 1px 2px rgba(59, 130, 246, 0.06),
    inset 0 1px 0 rgba(255, 255, 255, 0.85);
  font-size: 12px;
  font-weight: 600;
  color: #475569;
  cursor: pointer;
  user-select: none;
  transition: border-color 0.15s ease, background 0.15s ease, box-shadow 0.15s ease, color 0.15s ease;
}

.menu-cards-filter:hover {
  border-color: #93c5fd;
  background: linear-gradient(180deg, #eff6ff 0%, #dbeafe 100%);
  color: #334155;
}

.menu-cards-filter:has(input:checked) {
  border-color: #60a5fa;
  background: linear-gradient(180deg, #dbeafe 0%, #bfdbfe 100%);
  color: #1e3a8a;
  box-shadow:
    0 0 0 2px rgba(59, 130, 246, 0.14),
    0 1px 2px rgba(37, 99, 235, 0.12);
}

.menu-cards-filter:has(input:focus-visible) {
  outline: none;
  box-shadow:
    0 0 0 3px rgba(59, 130, 246, 0.18),
    0 1px 2px rgba(59, 130, 246, 0.08);
}

.menu-cards-filter input {
  width: 14px;
  height: 14px;
  margin: 0;
  accent-color: #2563eb;
  cursor: pointer;
  flex-shrink: 0;
}

.menu-cards-filter span {
  display: flex;
  align-items: center;
  gap: 6px;
  line-height: 1.2;
}

.menu-cards-filter span::before {
  content: "";
  width: 14px;
  height: 14px;
  flex-shrink: 0;
  opacity: 0.65;
  background-color: currentColor;
  mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Crect x='3' y='3' width='18' height='18' rx='2'/%3E%3Ccircle cx='8.5' cy='8.5' r='1.5'/%3E%3Cpath d='M21 15l-5-5L5 21'/%3E%3C/svg%3E") center / contain no-repeat;
  -webkit-mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Crect x='3' y='3' width='18' height='18' rx='2'/%3E%3Ccircle cx='8.5' cy='8.5' r='1.5'/%3E%3Cpath d='M21 15l-5-5L5 21'/%3E%3C/svg%3E") center / contain no-repeat;
}

.menu-cards-filter:has(input:checked) span::before {
  opacity: 0.85;
}

.menu-cards-empty {
  padding: 12px 10px;
  font-size: 12px;
  color: var(--muted);
  text-align: center;
  border: 1px dashed var(--border);
  border-radius: 10px;
  background: #f8fafc;
}

.menu-view-wrap {
  margin-top: 0;
  position: relative;
  z-index: 2;
  overflow: visible;
  display: flex;
  align-items: center;
  gap: 6px;
}

.menu-view-toggle {
  display: flex;
  align-items: center;
  gap: 6px;
  flex: 1;
  min-width: 0;
  overflow: visible;
}

.menu-view-btn {
  flex: 0 0 28px;
  width: 28px;
  min-width: 28px;
  display: flex;
  align-items: center;
  justify-content: center;
  position: relative;
  border: 0;
  background: transparent;
  color: var(--muted);
  padding: 0;
  font-size: 10px;
  font-weight: 600;
  line-height: 1;
  cursor: pointer;
  transition: background 0.15s ease, color 0.15s ease, border-color 0.15s ease, box-shadow 0.15s ease;
}

.menu-view-btn[data-tooltip]::after {
  content: attr(data-tooltip);
  position: absolute;
  top: calc(100% + 8px);
  left: 50%;
  z-index: 30;
  transform: translateX(-50%) translateY(-2px);
  padding: 5px 9px;
  border-radius: 8px;
  background: #1e293b;
  color: #f8fafc;
  font-size: 11px;
  font-weight: 600;
  line-height: 1.2;
  white-space: nowrap;
  pointer-events: none;
  opacity: 0;
  visibility: hidden;
  transition: opacity 0.12s ease, transform 0.12s ease, visibility 0.12s ease;
  box-shadow: 0 6px 16px rgba(15, 23, 42, 0.18);
}

.menu-view-btn[data-tooltip]::before {
  content: "";
  position: absolute;
  top: calc(100% + 2px);
  left: 50%;
  z-index: 30;
  transform: translateX(-50%);
  border: 5px solid transparent;
  border-bottom-color: #1e293b;
  pointer-events: none;
  opacity: 0;
  visibility: hidden;
  transition: opacity 0.12s ease, visibility 0.12s ease;
}

.menu-view-btn[data-tooltip]:hover::after,
.menu-view-btn[data-tooltip]:focus-visible::after,
.menu-view-btn[data-tooltip]:hover::before,
.menu-view-btn[data-tooltip]:focus-visible::before {
  opacity: 1;
  visibility: visible;
}

.menu-view-btn[data-tooltip]:hover::after,
.menu-view-btn[data-tooltip]:focus-visible::after {
  transform: translateX(-50%) translateY(0);
}

.menu-view-btn-icon {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 14px;
  height: 14px;
  font-size: 12px;
  line-height: 1;
}

.menu-view-btn-icon svg {
  width: 14px;
  height: 14px;
  display: block;
  transition: transform 0.15s ease;
}

.menu-view-btn:hover .menu-view-btn-icon {
  transform: scale(1.08);
}

.menu-view-btn.active .menu-view-btn-icon {
  transform: scale(1.04);
}

.menu-view-btn + .menu-view-btn {
  border-left: 1px solid var(--border);
}

.menu-view-btn:hover {
  background: #eff6ff;
  color: #1e40af;
}

.menu-view-btn.active {
  border-color: #6366f1;
  background: #eef2ff;
  color: #3730a3;
  box-shadow: 0 0 0 1px rgba(99, 102, 241, 0.25);
}

.menu-view-btn:focus-visible {
  outline: none;
  box-shadow: inset 0 0 0 2px rgba(59, 130, 246, 0.35);
}

.menu-refresh-btn {
  flex: 0 0 27px;
  width: 27px;
  height: 27px;
  border: 1px solid var(--border);
  border-radius: 8px;
  background: var(--panel);
  color: var(--text);
  font-size: 13px;
  line-height: 1;
  padding: 0;
  cursor: pointer;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  position: relative;
}

.menu-refresh-btn:hover:not(:disabled) {
  border-color: #93c5fd;
  background: #eff6ff;
}

.menu-refresh-btn:disabled {
  opacity: 0.55;
  cursor: wait;
}

.menu-refresh-btn.is-spinning {
  animation: workspace-refresh-spin 0.75s linear infinite;
}

.menu-collapse-all-btn {
  flex: 0 0 27px;
  width: 27px;
  height: 27px;
  border: 1px solid var(--border);
  border-radius: 8px;
  background: var(--panel);
  color: var(--text);
  font-size: 11px;
  line-height: 1;
  padding: 0;
  cursor: pointer;
  display: inline-flex;
  align-items: center;
  justify-content: center;
}

.menu-collapse-all-icon {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 14px;
  height: 14px;
  line-height: 0;
}

.menu-collapse-all-icon svg {
  width: 14px;
  height: 14px;
  display: block;
}

.menu-collapse-all-icon--expand {
  display: none;
}

.menu-collapse-all-btn.is-expand-all .menu-collapse-all-icon--collapse {
  display: none;
}

.menu-collapse-all-btn.is-expand-all .menu-collapse-all-icon--expand {
  display: block;
}

.menu-collapse-all-btn:hover:not(:disabled) {
  border-color: #93c5fd;
  background: #eff6ff;
}

.sidebar-slab-menu-tree-band > .menu-view-ghost-strip {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 4px;
  flex: 0 0 auto;
  margin: 0;
  padding: 6px 10px 8px;
  background: linear-gradient(180deg, rgba(236, 253, 245, 0.35) 0%, rgba(255, 255, 255, 0) 100%);
  box-sizing: border-box;
}

.sidebar-slab-menu-tree-band.is-collapsed > .menu-view-ghost-strip {
  padding-top: 4px;
}

.sidebar-slab-menu-tree-band > .menu-view-ghost-strip .menu-view-ghost-btn {
  border: 0;
  background: transparent;
  color: #64748b;
  font: inherit;
  font-size: 11px;
  font-weight: 600;
  line-height: 1.2;
  padding: 2px 8px;
  border-radius: 6px;
  cursor: pointer;
}

.sidebar-slab-menu-tree-band > .menu-view-ghost-strip .menu-view-ghost-btn:hover {
  color: #166534;
  background: rgba(255, 255, 255, 0.55);
}

.sidebar-slab-menu-tree-band > .menu-view-ghost-strip .menu-view-ghost-btn.is-active {
  color: #166534;
  background: rgba(255, 255, 255, 0.72);
  box-shadow: inset 0 -2px 0 #22c55e;
}

.sidebar-tree-band-head-actions .menu-settings-wrap {
  position: relative;
  flex: 0 0 auto;
}

.sidebar-tree-band-head-actions .menu-pin-branch-btn,
.sidebar-tree-band-head-actions .menu-collapse-all-btn,
.sidebar-tree-band-head-actions .menu-settings-btn,
.sidebar-tree-band-head-actions .menu-band-help-btn,
.sidebar-tree-band-head-actions .menu-refresh-btn,
.sidebar-tree-band-head-actions .menu-band-search-btn {
  width: 22px;
  min-width: 22px;
  max-width: 22px;
  height: 22px;
  min-height: 22px;
  max-height: 22px;
  flex: 0 0 22px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  border: 1px solid rgba(22, 101, 52, 0.28);
  border-radius: 4px;
  background: rgba(255, 255, 255, 0.42);
  color: #14532d;
  font-size: 11px;
  line-height: 1;
  padding: 0;
  transition: background-color 0.15s ease, border-color 0.15s ease, color 0.15s ease;
}

.sidebar-tree-band-head-actions .menu-pin-branch-btn:hover:not(:disabled),
.sidebar-tree-band-head-actions .menu-collapse-all-btn:hover:not(:disabled),
.sidebar-tree-band-head-actions .menu-settings-btn:hover:not(:disabled),
.sidebar-tree-band-head-actions .menu-band-help-btn:hover:not(:disabled),
.sidebar-tree-band-head-actions .menu-refresh-btn:hover:not(:disabled),
.sidebar-tree-band-head-actions .menu-band-search-btn:hover:not(:disabled),
.sidebar-tree-band-head-actions .menu-settings-btn[aria-expanded="true"] {
  border-color: rgba(22, 101, 52, 0.42);
  background: rgba(255, 255, 255, 0.72);
  color: #166534;
}

.sidebar-tree-band-head-actions .menu-pin-branch-btn:focus,
.sidebar-tree-band-head-actions .menu-collapse-all-btn:focus,
.sidebar-tree-band-head-actions .menu-settings-btn:focus,
.sidebar-tree-band-head-actions .menu-band-help-btn:focus,
.sidebar-tree-band-head-actions .menu-refresh-btn:focus,
.sidebar-tree-band-head-actions .menu-band-search-btn:focus {
  outline: none;
}

.sidebar-tree-band-head-actions .menu-pin-branch-btn:focus-visible,
.sidebar-tree-band-head-actions .menu-collapse-all-btn:focus-visible,
.sidebar-tree-band-head-actions .menu-settings-btn:focus-visible,
.sidebar-tree-band-head-actions .menu-band-help-btn:focus-visible,
.sidebar-tree-band-head-actions .menu-refresh-btn:focus-visible,
.sidebar-tree-band-head-actions .menu-band-search-btn:focus-visible {
  box-shadow: 0 0 0 2px rgba(22, 101, 52, 0.32);
}

.sidebar-tree-band-head-actions .menu-pin-branch-btn.is-active,
.sidebar-tree-band-head-actions .menu-pin-branch-btn[aria-pressed="true"] {
  border-color: rgba(22, 101, 52, 0.55);
  background: rgba(255, 255, 255, 0.88);
  color: #166534;
  box-shadow: 0 0 0 1px rgba(34, 197, 94, 0.28);
}

.sidebar-tree-band-head-actions .menu-band-help-btn {
  font-size: 12px;
  font-weight: 700;
}

.sidebar-tree-band-head-actions .menu-settings-icon {
  width: 13px;
  height: 13px;
}

.sidebar-tree-band-head-actions .menu-collapse-all-icon {
  width: 13px;
  height: 13px;
}

.sidebar-tree-band-head-actions .menu-collapse-all-icon svg {
  width: 13px;
  height: 13px;
  display: block;
}

.sidebar-tree-band-head-actions .menu-refresh-btn svg,
.sidebar-tree-band-head-actions .menu-band-search-btn svg {
  width: 13px;
  height: 13px;
  display: block;
  fill: none;
  stroke: currentColor;
  stroke-width: 2;
  stroke-linecap: round;
  stroke-linejoin: round;
}

.sidebar-tree-band-head-actions .menu-refresh-btn.is-spinning svg {
  animation: workspace-refresh-spin 0.75s linear infinite;
}

.menu-collapse-all-btn:disabled {
  opacity: 0.55;
  cursor: not-allowed;
}

.menu-pin-branch-btn {
  flex: 0 0 27px;
  width: 27px;
  height: 27px;
  border: 1px solid var(--border);
  border-radius: 8px;
  background: var(--panel);
  color: #64748b;
  font-size: 13px;
  line-height: 1;
  padding: 0;
  cursor: pointer;
  display: inline-flex;
  align-items: center;
  justify-content: center;
}

.menu-pin-branch-btn:hover:not(:disabled) {
  border-color: #93c5fd;
  background: #eff6ff;
}

.menu-pin-branch-btn.is-active,
.menu-pin-branch-btn[aria-pressed="true"] {
  border-color: #6366f1;
  background: #eef2ff;
  color: #3730a3;
  box-shadow: 0 0 0 1px rgba(99, 102, 241, 0.25);
}

.menu-pin-branch-btn:disabled {
  opacity: 0.55;
  cursor: not-allowed;
}

.menu-pinned-banner {
  display: flex;
  align-items: center;
  gap: 6px;
  margin: 10px 0 8px;
  padding: 6px 8px;
  border: 1px solid #c7d2fe;
  border-radius: 8px;
  background: #eef2ff;
  font-size: 11px;
  line-height: 1.3;
  color: #3730a3;
}

.menu-pinned-banner.hidden {
  display: none;
}

.menu-pinned-banner-path {
  flex: 1 1 auto;
  min-width: 0;
  font-weight: 700;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.menu-pinned-banner-unpin {
  flex: 0 0 auto;
  border: none;
  background: transparent;
  color: #64748b;
  font-size: 16px;
  line-height: 1;
  cursor: pointer;
  padding: 0 2px;
  border-radius: 4px;
}

.menu-pinned-banner-unpin:hover {
  background: rgba(99, 102, 241, 0.12);
  color: #312e81;
}

.menu-settings-pin-block {
  margin-top: 8px;
  padding-top: 8px;
  border-top: 1px solid var(--border);
}

.menu-settings-pin-title {
  margin: 0 0 4px;
  font-size: 11px;
  font-weight: 700;
  letter-spacing: 0.03em;
  text-transform: uppercase;
  color: #64748b;
}

.menu-settings-pin-status {
  margin: 0 0 8px;
  font-size: 11px;
  line-height: 1.35;
  color: #64748b;
}

.menu-settings-pin-actions {
  display: flex;
  flex-wrap: wrap;
  gap: 6px;
}

.menu-settings-pin-action {
  border: 1px solid var(--border);
  border-radius: 8px;
  background: var(--panel-soft);
  color: var(--text);
  font-size: 11px;
  font-weight: 600;
  padding: 5px 8px;
  cursor: pointer;
}

.menu-settings-pin-action:hover:not(:disabled) {
  border-color: var(--accent);
  background: var(--panel);
}

.menu-settings-pin-action:disabled {
  opacity: 0.55;
  cursor: not-allowed;
}

.menu-has-pinned-branch .menu-section.is-off-pinned-branch {
  display: none;
}

.menu-section.is-pinned-folder > .menu-folder-row .menu-folder,
.menu-section.is-pinned-folder > .menu-section-row .menu-section-title {
  box-shadow: inset 0 0 0 1px rgba(99, 102, 241, 0.35);
}

.menu-folder-row .menu-pin-branch-btn {
  width: 22px;
  height: 22px;
  min-width: 22px;
  min-height: 22px;
  flex: 0 0 22px;
  border: 1px solid transparent;
  border-radius: 6px;
  background: transparent;
  font-size: 11px;
  line-height: 1;
  padding: 0;
  cursor: pointer;
  opacity: 0;
  transition: opacity 0.12s ease, background 0.12s ease, border-color 0.12s ease;
}

.menu-folder-row .menu-pin-branch-btn.is-active {
  opacity: 1;
}

.menu-folder-row:hover .menu-pin-branch-btn {
  opacity: 1;
}

.menu-folder-row .menu-pin-branch-btn:hover {
  border-color: #c7d2fe;
  background: #eef2ff;
}

.menu-settings-wrap {
  position: relative;
  flex: 0 0 27px;
}

.menu-settings-btn {
  width: 27px;
  height: 27px;
  border: 1px solid var(--border);
  border-radius: 8px;
  background: var(--panel);
  color: var(--text);
  font-size: 14px;
  line-height: 1;
  padding: 0;
  cursor: pointer;
  display: inline-flex;
  align-items: center;
  justify-content: center;
}

.menu-settings-icon {
  width: 14px;
  height: 14px;
  display: block;
}

.menu-settings-btn:hover:not(:disabled),
.menu-settings-btn[aria-expanded="true"] {
  border-color: #93c5fd;
  background: #eff6ff;
}

.menu-settings-btn:disabled {
  opacity: 0.55;
  cursor: wait;
}

.menu-settings-popover {
  position: fixed;
  z-index: 1000;
  width: min(280px, calc(100vw - 24px));
  padding: 10px;
  border: 1px solid var(--border);
  border-radius: 10px;
  background: var(--panel);
  box-shadow: 0 12px 28px rgba(15, 23, 42, 0.14);
}

.menu-settings-popover.hidden {
  display: none;
}

.menu-context-menu {
  position: fixed;
  z-index: 1100;
  min-width: 196px;
  max-width: min(280px, calc(100vw - 24px));
  padding: 6px;
  border: 1px solid var(--border);
  border-radius: 10px;
  background: var(--panel);
  box-shadow: 0 12px 28px rgba(15, 23, 42, 0.14);
  overflow: visible;
}

.menu-context-menu.hidden {
  display: none;
}

.menu-context-menu-list {
  margin: 0;
  padding: 0;
  list-style: none;
  overflow: visible;
}

.menu-context-menu-btn {
  display: block;
  width: 100%;
  padding: 8px 10px;
  border: 0;
  border-radius: 7px;
  background: transparent;
  color: #334155;
  font: inherit;
  font-size: 12px;
  font-weight: 600;
  line-height: 1.35;
  text-align: left;
  cursor: default;
}

.menu-context-menu-btn:disabled {
  opacity: 0.45;
  cursor: not-allowed;
}

.menu-context-menu-btn:not(:disabled):hover,
.menu-context-menu-status-btn:hover {
  background: var(--panel-soft);
}

.menu-context-menu-separator {
  height: 1px;
  margin: 6px 4px;
  background: var(--border);
  list-style: none;
}

.menu-context-menu-status-group {
  list-style: none;
}

.menu-context-menu-status-label {
  padding: 4px 10px 6px;
  font-size: 10px;
  font-weight: 700;
  letter-spacing: 0.04em;
  text-transform: uppercase;
  color: #64748b;
}

.menu-context-menu-status-list {
  margin: 0;
  padding: 0;
  list-style: none;
}

.menu-context-menu-status-btn {
  display: flex;
  align-items: center;
  gap: 6px;
  width: 100%;
  padding: 8px 10px;
  border: 0;
  border-radius: 7px;
  background: transparent;
  color: #334155;
  font: inherit;
  font-size: 12px;
  font-weight: 600;
  line-height: 1.35;
  text-align: left;
  cursor: pointer;
}

.menu-context-menu-status-btn .menu-tree-status {
  flex-shrink: 0;
  opacity: 1;
}

.menu-context-menu-status-text {
  min-width: 0;
}

.menu-context-menu-status-btn.is-active {
  background: #eef2ff;
  color: #1e3a8a;
}

.menu-context-menu-item--submenu {
  position: relative;
  list-style: none;
}

.menu-context-menu-submenu-trigger {
  display: flex;
  align-items: center;
  gap: 8px;
  width: 100%;
  cursor: default;
}

.menu-context-menu-submenu-trigger-label {
  flex: 1;
  min-width: 0;
}

.menu-context-menu-submenu-trigger-value {
  display: flex;
  align-items: center;
  justify-content: flex-end;
  min-width: 0;
  max-width: 52%;
}

.menu-context-menu-submenu-trigger-value .menu-context-menu-status-text {
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.menu-context-menu-submenu-trigger-preview {
  display: flex;
  align-items: center;
  gap: 6px;
  min-width: 0;
  font: inherit;
  font-size: 12px;
  font-weight: 600;
  line-height: 1.35;
}

.menu-context-menu-submenu-chevron {
  flex-shrink: 0;
  opacity: 0.55;
  font-size: 14px;
  line-height: 1;
}

.menu-context-menu-item--submenu:hover > .menu-context-menu-submenu-trigger,
.menu-context-menu-item--submenu:focus-within > .menu-context-menu-submenu-trigger {
  background: var(--panel-soft);
}

.menu-context-menu-submenu {
  display: none;
  position: absolute;
  left: calc(100% - 2px);
  top: 0;
  z-index: 2;
  min-width: 196px;
  max-width: min(280px, calc(100vw - 24px));
  margin: 0;
  padding: 6px;
  list-style: none;
  border: 1px solid var(--border);
  border-radius: 10px;
  background: var(--panel);
  box-shadow: 0 12px 28px rgba(15, 23, 42, 0.14);
}

.menu-context-menu-submenu.is-flip-left {
  left: auto;
  right: calc(100% - 2px);
}

.menu-context-menu-item--submenu:hover .menu-context-menu-submenu,
.menu-context-menu-item--submenu:focus-within .menu-context-menu-submenu {
  display: block;
}

.menu-settings-popover-title {
  margin: 0 0 8px;
  font-size: 11px;
  font-weight: 700;
  letter-spacing: 0.04em;
  text-transform: uppercase;
  color: #64748b;
}

.menu-settings-option {
  display: flex;
  align-items: flex-start;
  gap: 8px;
  padding: 7px 6px;
  border-radius: 8px;
  font-size: 12px;
  font-weight: 600;
  line-height: 1.35;
  color: #334155;
  cursor: pointer;
}

.menu-settings-option:hover {
  background: var(--panel-soft);
}

.menu-settings-option input {
  width: 14px;
  height: 14px;
  margin: 2px 0 0;
  accent-color: #2563eb;
  cursor: pointer;
  flex-shrink: 0;
}

.menu-settings-option span {
  flex: 1;
  min-width: 0;
}

.menu-settings-option--number {
  align-items: center;
  justify-content: space-between;
}

.menu-settings-option--number input[type="number"] {
  width: 56px;
  height: auto;
  margin: 0;
  padding: 4px 6px;
  border: 1px solid #cbd5e1;
  border-radius: 6px;
  font: inherit;
  font-size: 12px;
  text-align: center;
  color: #334155;
  background: #fff;
  cursor: text;
  flex-shrink: 0;
}

.menu-flat-list {
  margin-top: 2px;
}

.menu-search-results {
  margin-top: 0;
}

.menu-search-results-list {
  display: flex;
  flex-direction: column;
  gap: 2px;
}

.menu-search-result-item .menu-item,
.menu-search-result-item .menu-folder {
  width: 100%;
}

.sidebar-slab-menu .menu-agent-pane.is-menu-search-active .menu-search-results-list .menu-item,
.sidebar-slab-menu .menu-agent-pane.is-menu-search-active .menu-search-results-list .menu-folder {
  padding-left: 8px;
}

.menu-flat-item .menu-item {
  font-size: 12px;
}

.menu-cards-grid {
  display: grid;
  grid-template-columns: 1fr;
  gap: 8px;
  margin-top: 4px;
}

.menu-card {
  position: relative;
  border: 1px solid var(--border);
  border-radius: 10px;
  background: var(--panel);
  overflow: hidden;
  box-shadow: 0 1px 2px rgba(15, 23, 42, 0.04);
  transition:
    border-color 0.15s ease,
    background-color 0.15s ease,
    box-shadow 0.15s ease;
}

.menu-card.has-node-color:not(.menu-card--gallery) .menu-card-title-row {
  background: var(--panel-soft);
  color: var(--text);
  transition:
    background-color 0.15s ease,
    color 0.15s ease;
}

.menu-card.has-node-color:not(.menu-card--gallery) .menu-card-title {
  background: transparent;
  color: inherit;
}

.menu-card.has-node-color:is(:hover, :focus-within, .active) {
  border-color: color-mix(in srgb, var(--node-color-bg) 70%, var(--border));
  background: color-mix(in srgb, var(--node-color-bg) 24%, var(--panel));
  box-shadow: 0 4px 14px color-mix(in srgb, var(--node-color-bg) 28%, transparent);
}

.menu-card.has-node-color:not(.menu-card--gallery):is(:hover, :focus-within, .active) .menu-card-title-row {
  background: var(--node-color-bg);
  color: var(--node-color-text);
}

.menu-card.has-node-color:not(.menu-card--gallery):is(:hover, :focus-within, .active) .menu-card-title {
  background: transparent;
  color: inherit;
}

.menu-card.active {
  border-color: #93c5fd;
  box-shadow: 0 0 0 2px rgba(59, 130, 246, 0.15);
}

.menu-card.has-node-color.active {
  border-color: color-mix(in srgb, var(--node-color-bg) 70%, #93c5fd);
  box-shadow:
    0 4px 14px color-mix(in srgb, var(--node-color-bg) 28%, transparent),
    0 0 0 2px color-mix(in srgb, var(--node-color-bg) 35%, transparent);
}

.menu-card-missing {
  opacity: 0.72;
}

.menu-card-system-empty {
  border-color: var(--border);
  background: var(--panel-soft);
  box-shadow: none;
}

.menu-card-system-empty.active {
  border-color: var(--accent);
  box-shadow: 0 0 0 2px rgba(59, 130, 246, 0.15);
}

.menu-card-system-filled {
  border-color: #86efac;
  background: #f0fdf4;
  box-shadow: 0 0 0 1px rgba(34, 197, 94, 0.12);
}

.menu-card-system-filled.active {
  border-color: #22c55e;
  box-shadow: 0 0 0 2px rgba(34, 197, 94, 0.18);
}

.menu-card-body {
  display: block;
  width: 100%;
  padding: 0;
  margin: 0;
  border: 0;
  background: transparent;
  text-align: left;
  cursor: pointer;
  appearance: none;
  -webkit-appearance: none;
  font: inherit;
  color: inherit;
  line-height: normal;
}

.menu-card-title-row {
  display: flex;
  align-items: center;
  gap: 6px;
  padding: 8px 34px 8px 10px;
  border-bottom: 1px solid rgba(15, 23, 42, 0.06);
}

.menu-card-title-meta {
  display: inline-flex;
  align-items: center;
  gap: 4px;
  flex: 0 0 auto;
  margin-left: auto;
}

.menu-card-title-meta .menu-intake-badges {
  margin-left: 0;
}

.menu-card-title {
  flex: 1 1 auto;
  min-width: 0;
  padding: 0;
  font-size: 13px;
  font-weight: 700;
  line-height: 1.3;
  border-bottom: 0;
}

.menu-card .menu-card-cover {
  position: relative;
  width: 100%;
  height: 112px;
  overflow: hidden;
  margin: 0;
  padding: 0;
  border-bottom: 1px solid var(--border);
  background: #f1f5f9;
}

.menu-card .menu-card-cover-img {
  display: block;
  width: 100%;
  height: 100%;
  margin: 0;
  padding: 0;
  border: 0;
  object-fit: cover;
  object-position: center;
  transition: opacity 0.15s ease, filter 0.15s ease;
}

.menu-card:not(.menu-card--gallery):not(.active):not(:hover):not(:focus-within) .menu-card-cover-img {
  opacity: 0.48;
  filter: saturate(0.55) brightness(0.9);
}

.menu-card.has-node-color:not(.menu-card--gallery):is(:hover, :focus-within, .active) .menu-card-cover-img {
  opacity: 1;
  filter: none;
}

.menu-card.has-node-color:is(:hover, :focus-within, .active) .menu-card-path {
  color: var(--node-color-text);
  background: color-mix(in srgb, var(--node-color-bg) 30%, transparent);
}

.menu-card-path {
  padding: 7px 10px 8px;
  font-size: 11px;
  line-height: 1.35;
  color: var(--muted);
  word-break: break-word;
}

.menu-card-bookmark {
  position: absolute;
  top: 6px;
  right: 6px;
  z-index: 2;
}

.menu-card-bookmark .bookmark-btn {
  opacity: 1;
  background: rgba(255, 255, 255, 0.92);
  box-shadow: 0 1px 2px rgba(15, 23, 42, 0.12);
}

.menu-card-body:hover .menu-card-path {
  color: var(--text);
}

.menu-search-input {
  width: 100%;
  min-width: 0;
  flex: 1 1 auto;
  border: 0;
  border-radius: 0;
  background: transparent;
  color: var(--text);
  padding: 7px 0;
  font-size: 13px;
  line-height: 1.35;
  box-shadow: none;
}

.menu-search-input::placeholder {
  color: #94a3b8;
}

.menu-search-input:focus {
  outline: none;
}

.menu-search-input::-webkit-search-cancel-button {
  -webkit-appearance: none;
  height: 14px;
  width: 14px;
  cursor: pointer;
  background: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 20 20' fill='%2394a3b8'%3E%3Cpath fill-rule='evenodd' d='M10 8.586l4.95-4.95 1.414 1.414L11.414 10l4.95 4.95-1.414 1.414L10 11.414l-4.95 4.95-1.414-1.414L8.586 10l-4.95-4.95L5.05 3.636 10 8.586z'/%3E%3C/svg%3E")
    center / 12px no-repeat;
}

.menu {
  position: relative;
  margin-top: 12px;
  padding-right: 2px;
  flex: 0 0 auto;
  min-height: auto;
  overflow: visible;
}

.menu.is-loading {
  overflow: hidden;
  min-height: 120px;
}

.sidebar-slab-menu .menu-scroll-shell:has(.menu.is-loading) {
  min-height: 120px;
}

.menu-loading {
  position: absolute;
  inset: 0;
  z-index: 6;
  min-height: 120px;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: flex-start;
  gap: 10px;
  padding-top: 24px;
  background: rgba(255, 255, 255, 0.88);
  color: var(--muted);
  font-size: 12px;
}

.menu-loading.hidden {
  display: none;
}

.menu-loading-spinner {
  width: 22px;
  height: 22px;
  border: 2px solid var(--border);
  border-top-color: var(--accent);
  border-radius: 50%;
  animation: menu-loading-spin 0.7s linear infinite;
}

.menu-loading-text {
  line-height: 1.35;
  text-align: center;
  padding: 0 12px;
}

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

.menu-agent-pane.hidden {
  display: none;
}

.menu-item.system-file-item {
  padding: 6px 9px;
  padding-left: 26px;
  font-size: 13px;
  cursor: grab;
}

.menu-item.system-file-item:active,
.menu-item.system-file-item.is-dragging-menu-link {
  cursor: grabbing;
}

.menu-item.system-file-item::before {
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
  width: 8px;
  height: 8px;
  left: 11px;
  border-radius: 999px;
  background: #cbd5e1;
  background-image: none;
  box-shadow: inset 0 0 0 1px rgba(148, 163, 184, 0.45);
}

.menu-item.system-file-item.exists::before {
  background: #22c55e;
  background-image: none;
  box-shadow: 0 0 0 4px rgba(34, 197, 94, 0.16);
  filter: none;
}

.menu-item.system-file-item:not(.exists):not(.empty) {
  color: var(--muted);
}

.menu-item.system-file-item:not(.exists):not(.empty):hover {
  background: var(--panel-soft);
  color: var(--text);
}

.menu-item.system-file-item.empty::before {
  background: #cbd5e1;
  background-image: none;
  box-shadow: inset 0 0 0 1px rgba(148, 163, 184, 0.45);
  filter: none;
}

.menu-item.system-file-item.exists {
  color: #166534;
}

.menu-item.system-file-item.active {
  border-color: var(--accent);
  background: #dbeafe;
  color: #1e3a8a;
}

.system-file-row {
  margin-bottom: 4px;
}

.system-file-group-label {
  margin: 8px 0 4px;
  padding: 2px 9px 0;
  font-size: 11px;
  font-weight: 600;
  letter-spacing: 0.04em;
  text-transform: uppercase;
  color: #64748b;
}

.system-file-group-label:first-of-type,
.menu-tree-divider--system-files + .system-file-group-label {
  margin-top: 2px;
}

.folder-browse-file-text {
  margin: 0;
  padding: 14px 16px;
  white-space: pre-wrap;
  word-break: break-word;
  font-family: ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace;
  font-size: 13px;
  line-height: 1.5;
  color: #0f172a;
  background: #f1f5f9;
  border: 1px solid rgba(148, 163, 184, 0.28);
  border-radius: 10px;
}

.menu-tree-divider {
  height: 1px;
  margin: 8px 0 10px;
  background: #e5e7eb;
  border: 0;
  flex-shrink: 0;
}

.menu-tree-divider--workspace {
  margin-top: 6px;
  margin-bottom: 8px;
}

.menu-tree-divider--system-files {
  margin-top: 10px;
  margin-bottom: 6px;
}

.menu-section {
  margin-bottom: 6px;
}

.menu-section-nested {
  margin-bottom: 4px;
}

.menu-workspace-section {
  margin: 0 0 10px;
  padding: 8px 8px 4px;
  border: 1px solid #86efac;
  border-radius: 10px;
  background: #f0fdf4;
}

.menu-workspace-head {
  display: flex;
  align-items: center;
  gap: 6px;
  margin-bottom: 0;
}

.menu-workspace-head .menu-folder.menu-folder-agent-root {
  color: #166534;
  font-weight: 700;
}

.menu-service-section {
  margin: 0 0 10px;
  padding: 8px 8px 4px;
  border: 1px solid #fde68a;
  border-radius: 10px;
  background: #fffbeb;
}

.menu-shared-section {
  margin: 0 0 10px;
  padding: 8px 8px 4px;
  border: 1px solid #bfdbfe;
  border-radius: 10px;
  background: #eff6ff;
}

.menu-shared-head {
  display: flex;
  align-items: center;
  gap: 6px;
  margin-bottom: 4px;
}

.menu-shared-head .menu-folder.menu-folder-shared-root {
  color: #1e40af;
  font-weight: 700;
}

.menu-shared-title {
  margin: 0;
  font-size: 13px;
  font-weight: 700;
  color: #1e40af;
}

.menu-shared-body,
.menu-shared-section > .tree-children {
  margin-left: 0;
  padding-left: 0;
  border-left: none;
}

.menu-agent-system-section {
  margin: 0 0 10px;
  padding: 8px 8px 4px;
  border: 1px solid #c7d2fe;
  border-radius: 10px;
  background: #eef2ff;
}

.menu-agent-system-section.is-disabled {
  opacity: 0.5;
  background: #f1f5f9;
  border-color: #cbd5e1;
}

.menu-agent-system-section.is-disabled .menu-folder.menu-folder-agent-system-root:disabled {
  cursor: not-allowed;
  color: #64748b;
}

.menu-agent-system-head {
  display: flex;
  align-items: center;
  gap: 6px;
  margin-bottom: 4px;
}

.menu-agent-system-head .menu-folder.menu-folder-agent-system-root {
  color: #4338ca;
  font-weight: 700;
}

.menu-agent-system-title {
  margin: 0;
  font-size: 13px;
  font-weight: 700;
  color: #4338ca;
}

.menu-agent-system-domain {
  margin: 0 0 4px;
  padding-left: 4px;
}

.menu-agent-system-subgroup {
  padding-left: 12px;
  margin: 0 0 2px;
  border-left: 1px solid var(--color-border-subtle, rgba(0,0,0,0.07));
}

.menu-agent-system-domain-head {
  display: flex;
  align-items: center;
  gap: 6px;
  margin-bottom: 2px;
}

/* ── View selector in topic overview ──────────────────────────────────────── */
.node-overview-view-selector {
  display: flex;
  align-items: center;
  gap: 8px;
  margin-top: 10px;
  padding: 7px 10px;
  background: #f5f7ff;
  border: 1px solid #c7d2fe;
  border-radius: 8px;
}

.node-overview-view-selector-label {
  font-size: 12px;
  color: #6366f1;
  font-weight: 600;
  white-space: nowrap;
}

.node-overview-view-selector-select {
  flex: 1;
  min-width: 0;
  font-size: 13px;
  padding: 3px 6px;
  border: 1px solid #c7d2fe;
  border-radius: 5px;
  background: #fff;
  color: #1e1b4b;
  cursor: pointer;
}

.node-overview-view-selector-select:focus {
  outline: 2px solid #6366f1;
  outline-offset: 1px;
}

.menu-agent-system-add-type-btn {
  margin-left: auto;
  padding: 0 7px;
  height: 20px;
  font-size: 14px;
  line-height: 1;
  color: #6366f1;
  background: transparent;
  border: 1px solid #c7d2fe;
  border-radius: 4px;
  cursor: pointer;
  opacity: 0.4;
  transition: opacity 0.15s, background 0.15s;
  flex-shrink: 0;
}

.menu-agent-system-domain-head:hover .menu-agent-system-add-type-btn {
  opacity: 1;
}

.menu-agent-system-add-type-btn:hover {
  background: #eef2ff;
  border-color: #6366f1;
  opacity: 1;
}

/* ── Inline new-type form ──────────────────────────────────────────────────── */
.new-type-inline-form {
  margin: 4px 0 8px 12px;
  padding: 8px 10px;
  background: #f5f7ff;
  border: 1px solid #c7d2fe;
  border-radius: 8px;
  display: flex;
  flex-direction: column;
  gap: 6px;
}

.new-type-row {
  display: flex;
  align-items: center;
  gap: 6px;
}

.new-type-domain-label {
  font-size: 11px;
  font-weight: 700;
  color: #6366f1;
  text-transform: uppercase;
  letter-spacing: 0.05em;
  flex: 1;
}

.new-type-input {
  flex: 1;
  min-width: 0;
  padding: 4px 8px;
  font-size: 13px;
  border: 1px solid #c7d2fe;
  border-radius: 5px;
  background: #fff;
  color: #1e1b4b;
}

.new-type-input:focus {
  outline: 2px solid #6366f1;
  outline-offset: 1px;
  border-color: #6366f1;
}

.new-type-confirm-btn {
  padding: 3px 12px;
  font-size: 12px;
  font-weight: 600;
  color: #fff;
  background: #6366f1;
  border: none;
  border-radius: 5px;
  cursor: pointer;
  white-space: nowrap;
}

.new-type-confirm-btn:hover { background: #4f46e5; }
.new-type-confirm-btn:disabled { background: #a5b4fc; cursor: not-allowed; }

.new-type-cancel-btn {
  padding: 2px 6px;
  font-size: 13px;
  color: #6b7280;
  background: transparent;
  border: 1px solid #e5e7eb;
  border-radius: 4px;
  cursor: pointer;
}

.new-type-cancel-btn:hover { color: #374151; border-color: #9ca3af; }

.menu-agent-system-domain-body {
  margin-left: 8px;
  padding-left: 8px;
  border-left: 1px solid #c7d2fe;
}

.agent-system-type-inspector {
  margin: 0;
  padding: 12px 16px;
  overflow-y: auto;
  box-sizing: border-box;
}

/* When YAML is visible alongside the form, cap the inspector height */
:not(.is-agent-type-form-mode) .agent-system-type-inspector {
  max-height: 42vh;
  border: 1px solid #c7d2fe;
  border-radius: 10px;
  background: #f5f7ff;
  margin: 0 0 12px;
}

/* When YAML is hidden, inspector fills all available height */
.is-agent-type-form-mode .editor-surface {
  position: relative;
  overflow: hidden;
}

.is-agent-type-form-mode .agent-system-type-inspector {
  position: absolute;
  inset: 0;
  max-height: none;
  overflow-y: auto;
  border: none;
  border-radius: 0;
  margin: 0;
  padding: 12px 20px 24px;
  background: #f8faff;
}

.agent-system-type-inspector-panel {
  display: flex;
  flex-direction: column;
  gap: 10px;
}

.agent-system-type-inspector-head {
  display: flex;
  flex-direction: column;
  gap: 6px;
}

.agent-system-type-inspector-title {
  margin: 0;
  font-size: 16px;
  color: #312e81;
}

.agent-system-type-inspector-id {
  font-size: 11px;
  color: #6366f1;
  background: #eef2ff;
  padding: 1px 6px;
  border-radius: 4px;
  user-select: all;
}

/* Type meta edit form */
.type-meta-edit-form {
  display: flex;
  flex-direction: column;
  gap: 6px;
  padding: 10px 12px;
  background: #f8faff;
  border: 1px solid #dbeafe;
  border-radius: 6px;
}

.type-meta-edit-row {
  display: flex;
  align-items: center;
  gap: 8px;
  font-size: 12px;
}

.type-meta-edit-label {
  flex: 0 0 90px;
  color: #475569;
  font-size: 11px;
  text-transform: uppercase;
  letter-spacing: 0.04em;
}

.agent-system-type-usage {
  display: flex;
  align-items: flex-start;
  gap: 6px;
  margin: 6px 0 10px;
  padding: 6px 9px;
  border-radius: 6px;
  font-size: 12px;
  line-height: 1.35;
}

.agent-system-type-usage.is-wired {
  background: #ecfdf5;
  color: #065f46;
  border: 1px solid #a7f3d0;
}

.agent-system-type-usage.is-data {
  background: #f8fafc;
  color: #64748b;
  border: 1px solid #e2e8f0;
}

.agent-system-type-usage-icon {
  flex: 0 0 auto;
  font-weight: 700;
}

.type-meta-edit-checkbox {
  flex: 0 0 auto;
  width: 15px;
  height: 15px;
  margin: 0;
  cursor: pointer;
}

.type-meta-section-head {
  margin-top: 10px;
  padding-top: 8px;
  border-top: 1px dashed #cbd5e1;
  font-size: 10px;
  font-weight: 700;
  text-transform: uppercase;
  letter-spacing: 0.06em;
  color: #6366f1;
}

.type-meta-domain-section {
  display: flex;
  flex-direction: column;
  gap: 6px;
  margin-top: 6px;
  padding: 6px 0 6px 9px;
  border-left: 2px solid #c7d2fe;
}

.type-meta-domain-row > .type-meta-edit-label {
  color: #4338ca;
}

.type-meta-required > .type-meta-edit-label::after {
  content: " *";
  color: #ef4444;
}

.type-meta-edit-input {
  flex: 1;
  min-width: 0;
  padding: 3px 7px;
  border: 1px solid #c7d2fe;
  border-radius: 4px;
  font-size: 13px;
  background: #fff;
  color: #1e293b;
}

.type-meta-edit-input:focus {
  outline: none;
  border-color: #6366f1;
}

.type-meta-edit-select {
  flex: 1;
  padding: 3px 7px;
  border: 1px solid #c7d2fe;
  border-radius: 4px;
  font-size: 13px;
  background: #fff;
  color: #1e293b;
}

/* Add field form */
.type-add-field-wrap {
  display: flex;
  flex-direction: column;
  gap: 6px;
}

.type-add-field-toggle {
  align-self: flex-start;
  padding: 4px 10px;
  font-size: 12px;
  border: 1px dashed #a5b4fc;
  border-radius: 5px;
  background: transparent;
  color: #4f46e5;
  cursor: pointer;
}

.type-add-field-toggle:hover {
  background: #eef2ff;
}

.type-add-field-form {
  display: flex;
  flex-wrap: wrap;
  gap: 6px;
  padding: 8px 10px;
  background: #f8faff;
  border: 1px solid #dbeafe;
  border-radius: 6px;
}

.type-add-field-form.hidden { display: none; }

.type-add-field-form .type-meta-edit-input {
  flex: 1 1 120px;
}

.type-add-field-form .type-meta-edit-select {
  flex: 1 1 160px;
}

.type-add-field-confirm {
  padding: 3px 12px;
  font-size: 12px;
  background: #4f46e5;
  color: #fff;
  border: none;
  border-radius: 5px;
  cursor: pointer;
}

.type-add-field-confirm:hover { background: #4338ca; }

/* Hide YAML editor when form mode is active */
.is-agent-type-form-mode #editor-code-wrap {
  display: none;
}

/* YAML toggle button */
.agent-system-type-yaml-toggle {
  align-self: flex-start;
  padding: 4px 10px;
  font-size: 11px;
  border: 1px solid #c7d2fe;
  border-radius: 5px;
  background: transparent;
  color: #6366f1;
  cursor: pointer;
  margin-top: 4px;
}
.agent-system-type-yaml-toggle:hover { background: #eef2ff; }

/* Storage slots tag editor */
.type-slots-editor {
  display: flex;
  align-items: flex-start;
  gap: 8px;
  font-size: 12px;
}

.type-slots-tags {
  display: flex;
  flex-wrap: wrap;
  gap: 4px;
  flex: 1;
}

.type-slot-tag {
  display: inline-flex;
  align-items: center;
  gap: 3px;
  padding: 2px 7px 2px 8px;
  background: #e0e7ff;
  border-radius: 12px;
  font-size: 11px;
  color: #3730a3;
}

.type-slot-tag-del {
  border: none;
  background: none;
  padding: 0;
  color: #6366f1;
  cursor: pointer;
  font-size: 13px;
  line-height: 1;
}
.type-slot-tag-del:hover { color: #dc2626; }

.type-slots-add-row {
  display: inline-flex;
  gap: 3px;
  align-items: center;
}

.type-slots-add-input {
  width: 80px;
  padding: 2px 5px;
  border: 1px solid #c7d2fe;
  border-radius: 4px;
  font-size: 11px;
  background: #fff;
}

.type-slots-add-btn {
  padding: 1px 6px;
  border: 1px solid #a5b4fc;
  border-radius: 4px;
  background: transparent;
  color: #4f46e5;
  cursor: pointer;
  font-size: 13px;
}
.type-slots-add-btn:hover { background: #eef2ff; }

/* Field delete button */
.agent-system-type-field-actions {
  text-align: center;
  width: 28px;
}

.type-field-delete-btn {
  border: none;
  background: none;
  color: #94a3b8;
  cursor: pointer;
  font-size: 14px;
  padding: 0 3px;
  border-radius: 3px;
}
.type-field-delete-btn:hover {
  color: #dc2626;
  background: #fee2e2;
}

.agent-system-type-chain {
  font-size: 12px;
  color: #4338ca;
  line-height: 1.5;
}

.agent-system-type-chain-link,
.agent-system-type-source-link {
  border: none;
  background: none;
  padding: 0;
  color: #4338ca;
  text-decoration: underline;
  cursor: pointer;
  font: inherit;
}

.agent-system-type-chain-current {
  font-weight: 600;
}

.agent-system-type-inspector-hint,
.agent-system-type-inspector-line,
.agent-system-type-inspector-empty,
.agent-system-type-inspector-yaml-label {
  margin: 0;
  font-size: 12px;
  color: #475569;
}

.agent-system-type-inspector-yaml-label {
  font-weight: 600;
  color: #312e81;
  padding-top: 4px;
  border-top: 1px solid #dbeafe;
}

.agent-system-type-fields-wrap {
  overflow: auto;
}

.agent-system-type-fields-table tr.is-own-field {
  background: #eef2ff;
}

.agent-system-type-fields-table td.is-own {
  color: #4338ca;
  font-weight: 600;
}

.menu-item.menu-item--agent-system {
  font-size: 12px;
}

.menu-container-section {
  margin: 0 0 4px;
  padding: 0;
}

.menu-container-body,
.menu-container-section > .tree-children,
.menu-nested-container-body {
  margin-left: 0;
  padding-left: 0;
  border-left: none;
}

.menu-container-section--placeholder {
  margin: 0 0 4px;
  padding: 0;
}

.menu-service-head {
  display: flex;
  align-items: center;
  gap: 6px;
  margin-bottom: 4px;
}

.menu-service-head.menu-folder-row .menu-folder.menu-folder-service-root {
  color: #92400e;
  font-weight: 700;
}

.menu-container-head.menu-folder-row .menu-folder.menu-folder-container-root {
  color: inherit;
  font-weight: 500;
}

.menu-git-service-section,
.menu-git-container-section {
  margin-left: 0;
}

.menu-item.menu-item--repo-service {
  color: inherit;
  background: #fff;
}

.menu-item.menu-item--repo-root {
  color: #475569;
  background: #fff;
}

.menu-item.menu-item--repo-root:hover {
  border-color: #cbd5e1;
  background: #fff;
}

.menu-item.menu-item--repo-root.active {
  border-color: #de4c36;
  background: #fff7ed;
  color: #9a3412;
}

.menu-item-row--repo-root {
  margin-bottom: 4px;
}

.menu-service-title {
  margin: 0;
  flex: 1;
  font-size: 12px;
  font-weight: 700;
  color: #92400e;
  cursor: pointer;
  user-select: none;
}

.menu-service-title--linked .menu-service-title-main {
  text-decoration: underline;
  text-decoration-color: rgba(146, 64, 14, 0.35);
  text-underline-offset: 2px;
}

.menu-service-title--linked .menu-service-title-main:hover {
  text-decoration-color: rgba(146, 64, 14, 0.75);
}

.menu-service-title-hint {
  color: #6b7280;
  font-weight: 500;
}

.menu-service-body {
  margin-left: 4px;
  padding-left: 6px;
  border-left: 2px solid #fcd34d;
}

.menu-service-body .menu-folder,
.menu-service-body .menu-item {
  font-size: 13px;
}

.menu-container-head {
  display: flex;
  align-items: center;
  justify-content: flex-end;
  gap: 6px;
  margin-bottom: 0;
}

.menu-container-title {
  margin: 0;
  flex: 1;
  font-size: 12px;
  font-weight: 600;
  color: var(--text);
  cursor: pointer;
  user-select: none;
}

.menu-service-placeholder-hint,
.menu-container-placeholder-hint {
  margin: 0 0 4px;
  font-size: 11px;
  line-height: 1.4;
  color: #64748b;
}

.create-node-reserved-wrap {
  display: flex;
  flex-direction: column;
  gap: 8px;
  margin: 0;
  padding: 0;
}

.create-node-root-wrap {
  display: flex;
  flex-direction: column;
  gap: 0;
  margin-bottom: 0;
  padding-top: 0;
}

.create-node-root-wrap.hidden {
  display: none;
}

.create-node-reserved-label {
  margin: 0 0 8px;
  font-weight: 600;
  color: var(--text);
}

.create-node-reserved-actions {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
}

.create-node-action-btn.create-node-action-btn--service,
.create-node-action-btn.create-node-action-btn--shared,
.create-node-action-btn.create-node-action-btn--container {
  display: flex;
  flex-direction: column;
  flex: 1 1 220px;
  min-height: 56px;
  padding: 10px 12px;
  align-items: flex-start;
  text-align: left;
}

.create-node-scaffold-title {
  display: block;
  font-size: 13px;
  font-weight: 600;
  line-height: 1.3;
}

.create-node-scaffold-hint {
  display: block;
  margin-top: 4px;
  font-size: 11px;
  font-weight: 400;
  line-height: 1.4;
  opacity: 0.82;
}

.create-node-action-btn--service {
  border-color: #fcd34d;
  background: #fffbeb;
  color: #92400e;
}

.create-node-action-btn--shared {
  border-color: #86efac;
  background: #f0fdf4;
  color: #166534;
}

.create-node-action-btn--container {
  border-color: #93c5fd;
  background: #eff6ff;
  color: #1e40af;
}

.create-node-action-btn--container.create-node-action-btn--container-required:not(:disabled) {
  border-color: #ef4444;
  background: #fef2f2;
  color: #991b1b;
  box-shadow: 0 0 0 2px rgba(239, 68, 68, 0.22);
}

.create-node-action-btn--container.create-node-action-btn--container-required:not(:disabled):hover {
  border-color: #dc2626;
  background: #fee2e2;
}

.create-node-root-system-wrap {
  margin-top: 10px;
}

.create-node-action-btn--system-md {
  display: flex;
  flex-direction: column;
  flex: 1 1 220px;
  min-height: 56px;
  padding: 10px 12px;
  align-items: flex-start;
  text-align: left;
  border-color: #cbd5e1;
  background: #f8fafc;
  color: #334155;
}

.create-node-action-btn:disabled,
.create-node-action-btn[disabled] {
  opacity: 0.55;
  cursor: not-allowed;
}

.create-node-action-btn--service:disabled:hover {
  border-color: #fcd34d;
  background: #fffbeb;
}

.create-node-action-btn--container:disabled:hover {
  border-color: #93c5fd;
  background: #eff6ff;
}

.create-node-action-btn--system-md:disabled:hover {
  border-color: #cbd5e1;
  background: #f8fafc;
}

.create-node-container-scaffold {
  display: flex;
  flex-direction: column;
  gap: 10px;
  margin: 0 0 12px;
  padding: 10px 12px;
  border: 1px dashed #93c5fd;
  border-radius: 10px;
  background: #eff6ff;
}

.create-node-container-hint {
  margin: 0;
  font-size: 12px;
  line-height: 1.45;
  color: #1e3a8a;
}

.menu-section-title {
  font-size: 12px;
  color: var(--muted);
  margin: 0 0 8px;
}

.menu-section-row {
  display: flex;
  align-items: center;
  gap: 4px;
  margin-bottom: 8px;
}

.menu-section-row.menu-sort-row {
  margin-bottom: 4px;
}

.menu-section-row .menu-section-title {
  flex: 1;
  min-width: 0;
  margin: 0;
  cursor: pointer;
  user-select: none;
  display: flex;
  align-items: center;
}

.menu-section-row.menu-sort-row .menu-section-title {
  box-sizing: border-box;
  min-height: 32px;
  padding: 5px 8px;
  border: 1px solid transparent;
}

.menu-section-row--empty.menu-sort-row .menu-section-title {
  padding: 5px 8px 5px 26px;
}

.menu-section-row .menu-section-title .menu-folder-label {
  min-width: 0;
  max-width: 100%;
}

.menu-section-row .menu-section-title .menu-section-name {
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.menu-section-row .menu-section-title:hover {
  color: var(--text);
}

.menu-section-row--empty .menu-section-title,
.menu-section-title--empty {
  color: #94a3b8;
  cursor: default;
  opacity: 0.82;
  position: relative;
  padding-left: 26px;
}

.menu-section-row--empty .menu-section-title:hover,
.menu-section-title--empty:hover {
  color: #94a3b8;
}

.menu-section-row--empty .menu-section-title::before {
  position: absolute;
  left: 8px;
  top: 50%;
  transform: translateY(-50%);
  content: "";
  width: 14px;
  height: 14px;
  opacity: 0.55;
  background-repeat: no-repeat;
  background-size: 14px 14px;
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='%2394a3b8'%3E%3Cpath d='M10.5 4.5a2 2 0 0 1 1.6.8l.9 1.2h5a2.5 2.5 0 0 1 2.5 2.5V17a2.5 2.5 0 0 1-2.5 2.5H6A2.5 2.5 0 0 1 3.5 17V7A2.5 2.5 0 0 1 6 4.5h4.5z'/%3E%3C/svg%3E");
}

.menu-section-row--empty .folder-toggle-btn {
  opacity: 0.35;
  cursor: default;
}

.menu-section-row .folder-toggle-btn {
  flex: 0 0 22px;
}

.menu-section-row .menu-sort-handle,
.menu-folder-row .menu-sort-handle {
  flex: 0 0 18px;
}

.menu-row-action-spacer {
  box-sizing: border-box;
  width: 22px;
  height: 22px;
  flex: 0 0 22px;
  border: 1px solid transparent;
}

.menu-section-title-agent::before {
  content: "🤖 ";
}

.menu-folder {
  flex: 1;
  min-width: 0;
  text-align: left;
  padding: 5px 8px;
  border: 1px solid transparent;
  border-radius: 8px;
  background: transparent;
  color: var(--muted);
  cursor: pointer;
  margin-bottom: 0;
  font-size: 12px;
  font-weight: 600;
  line-height: 1.35;
  font-family: inherit;
  position: relative;
  padding-left: 26px;
  display: flex;
  align-items: center;
}

.menu-folder-row {
  display: flex;
  align-items: center;
  gap: 4px;
  margin-bottom: 4px;
}

.menu-folder-row .menu-folder {
  flex: 1;
  min-width: 0;
}

.menu-folder-label {
  display: inline-flex;
  align-items: center;
  gap: 5px;
  min-width: 0;
  max-width: 100%;
}

.menu-tree-preview {
  flex: 0 0 auto;
  width: 26px;
  height: 26px;
  border-radius: 6px;
  overflow: hidden;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  background: #f1f5f9;
  border: 1px solid #e2e8f0;
}

.menu-tree-preview-img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  display: block;
}

.menu-tree-preview.is-preview-loading {
  position: relative;
}

.menu-tree-preview.is-preview-loading .menu-tree-preview-img {
  opacity: 0;
}

.menu-tree-preview.is-preview-loading::after {
  content: "";
  position: absolute;
  inset: 0;
  margin: auto;
  width: 12px;
  height: 12px;
  border: 2px solid #cbd5e1;
  border-top-color: #6366f1;
  border-radius: 50%;
  animation: menu-loading-spin 0.7s linear infinite;
}

.menu-tree-preview-img.broken-image-placeholder {
  object-fit: contain;
  background: #fef2f2;
}

.menu-folder-name,
.menu-item-name,
.menu-section-name {
  display: inline-flex;
  align-items: center;
  gap: 5px;
  flex: 1 1 auto;
  min-width: 0;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.menu-tree-title-text {
  min-width: 0;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.nav-unread-badge,
.menu-unread-badge {
  flex: 0 0 auto;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  align-self: center;
  min-width: 14px;
  height: 14px;
  padding: 0 3px;
  border-radius: 999px;
  background: color-mix(in srgb, var(--accent, #3b82f6) 18%, transparent);
  color: var(--accent, #2563eb);
  font-size: 10px;
  font-weight: 700;
  line-height: 1;
  letter-spacing: 0;
  cursor: help;
}

.node-navigation-hero-unread-badge {
  margin-left: 4px;
}

.nav-book-toc-link-text .nav-unread-badge,
.nav-book-toc-folder-text .nav-unread-badge {
  margin-left: 6px;
  vertical-align: middle;
}

.menu-item.has-menu-unread-badge .menu-item-name,
.menu-folder.has-menu-unread-badge .menu-folder-name {
  min-width: 0;
}

.menu-tree-status--none {
  opacity: 0.62;
  filter: grayscale(0.15);
}

.menu-tree-status {
  flex: 0 0 auto;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  align-self: center;
  width: 14px;
  height: 14px;
  font-size: 10px;
  line-height: 1;
  cursor: help;
  opacity: 0.75;
  transition: opacity 0.15s ease;
}

.menu-folder:hover .menu-tree-status,
.menu-item:hover .menu-tree-status,
.menu-flat-item:hover .menu-tree-status,
.nav-book-toc-link:hover .menu-tree-status,
.nav-book-toc-link:focus-visible .menu-tree-status,
.nav-book-toc-folder-label:hover .menu-tree-status,
.nav-book-toc-folder-label:focus-visible .menu-tree-status {
  opacity: 0.85;
}

.menu-tree-type-icon {
  flex: 0 0 auto;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  align-self: center;
  width: 14px;
  height: 14px;
  line-height: 0;
  flex-shrink: 0;
}

.menu-tree-type-icon--agent {
  background-repeat: no-repeat;
  background-position: center center;
  background-size: 14px 14px;
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16'%3E%3Ccircle cx='8' cy='8' r='7' fill='%232563EB'/%3E%3Cellipse cx='8' cy='8' rx='3' ry='7' fill='none' stroke='%23fff' stroke-width='0.85' opacity='0.9'/%3E%3Cline x1='1' y1='8' x2='15' y2='8' stroke='%23fff' stroke-width='0.85' opacity='0.9'/%3E%3C/svg%3E");
}

.menu-tree-type-icon--container {
  width: 14px;
  font-size: 10px;
  line-height: 1;
}

.menu-tree-type-icon--folder {
  background-repeat: no-repeat;
  background-position: center center;
  background-size: 14px 14px;
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='%23D4A72C'%3E%3Cpath d='M10.5 4.5a2 2 0 0 1 1.6.8l.9 1.2h5a2.5 2.5 0 0 1 2.5 2.5V17a2.5 2.5 0 0 1-2.5 2.5H6A2.5 2.5 0 0 1 3.5 17V7A2.5 2.5 0 0 1 6 4.5h4.5z'/%3E%3C/svg%3E");
}

.menu-tree-type-icon--folder-adopt {
  opacity: 0.55;
  background-repeat: no-repeat;
  background-position: center center;
  background-size: 14px 14px;
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='%2394a3b8'%3E%3Cpath d='M10.5 4.5a2 2 0 0 1 1.6.8l.9 1.2h5a2.5 2.5 0 0 1 2.5 2.5V17a2.5 2.5 0 0 1-2.5 2.5H6A2.5 2.5 0 0 1 3.5 17V7A2.5 2.5 0 0 1 6 4.5h4.5z'/%3E%3C/svg%3E");
}

.menu-tree-type-icon--topic {
  background-repeat: no-repeat;
  background-position: center center;
  background-size: 14px 14px;
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath fill='%236366F1' d='M8 4.5h8a2 2 0 0 1 2 2v13a2 2 0 0 1-2 2H8a2 2 0 0 1-2-2v-13a2 2 0 0 1 2-2z'/%3E%3Cpath fill='%23E0E7FF' d='M9.5 9h5a1 1 0 0 1 0 2h-5a1 1 0 0 1 0-2zm0 3.5h5a1 1 0 0 1 0 2h-5a1 1 0 0 1 0-2zm0 3.5h3.5a1 1 0 0 1 0 2H9.5a1 1 0 0 1 0-2z'/%3E%3C/svg%3E");
}

.menu-tree-type-icon--file {
  background-repeat: no-repeat;
  background-position: center center;
  background-size: 14px 14px;
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='%236B7280'%3E%3Cpath d='M7.5 3.5h6.8L20.5 9v11A2.5 2.5 0 0 1 18 22.5H7.5A2.5 2.5 0 0 1 5 20V6A2.5 2.5 0 0 1 7.5 3.5zm6.3 1.8V9h3.7l-3.7-3.7z'/%3E%3C/svg%3E");
}

.menu-folder.has-menu-tree-status::before,
.menu-item.has-menu-tree-status::before {
  content: none;
  display: none;
}

.menu-folder.has-menu-tree-status {
  padding-left: 8px;
}

.menu-item.has-menu-tree-status {
  padding-left: 9px;
}

.menu-folder-markers {
  display: inline-flex;
  align-items: center;
  gap: 4px;
  flex: 0 0 auto;
}

.menu-marker {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 14px;
  height: 14px;
  flex: 0 0 14px;
  cursor: help;
  flex-shrink: 0;
  line-height: 0;
}

.menu-marker-svg {
  display: block;
  width: 14px;
  height: 14px;
}

.menu-marker-git.is-active,
.menu-repository-git-icon.is-active,
.menu-workspace-head .menu-folder.menu-folder-agent-root .menu-marker-git.is-active {
  color: #de4c36;
}

.menu-marker-git.is-inactive,
.menu-repository-git-icon.is-inactive {
  color: #94a3b8;
  opacity: 0.85;
}

.menu-marker-obsidian {
  color: #7c3aed;
}

.menu-marker-skill {
  color: #059669;
}

.menu-marker-agent {
  width: auto;
  min-width: 14px;
}

.menu-marker-emoji-agent {
  font-size: 14px;
  line-height: 1;
}

.node-navigation-marker-slot--agent .menu-marker-emoji-agent {
  font-size: 12px;
}

.menu-folder .menu-folder-label,
.menu-item .menu-folder-label,
.menu-flat-item .menu-folder-label {
  width: 100%;
  align-items: center;
}

.menu-folder .menu-folder-label:has(.menu-label-text-stack),
.menu-item .menu-folder-label:has(.menu-label-text-stack),
.menu-flat-item .menu-folder-label:has(.menu-label-text-stack) {
  align-items: flex-start;
}

.menu-label-text-stack {
  display: flex;
  flex-direction: column;
  min-width: 0;
  flex: 1 1 auto;
  gap: 1px;
}

.menu-flat-item-path {
  font-size: 11px;
  line-height: 1.35;
  color: var(--muted);
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.folder-toggle-btn {
  width: 22px;
  height: 22px;
  border: 1px solid var(--border);
  border-radius: 5px;
  background: var(--panel);
  color: var(--muted);
  padding: 0;
  cursor: pointer;
  flex: 0 0 22px;
  font-size: 14px;
  font-weight: 600;
  line-height: 1;
  display: inline-flex;
  align-items: center;
  justify-content: center;
}

.folder-toggle-btn:hover:not(:disabled) {
  background: var(--panel-soft);
  color: var(--text);
}

.folder-toggle-btn:disabled {
  opacity: 0.45;
  cursor: default;
}

.menu-section.is-menu-branch-loading .folder-toggle-btn {
  opacity: 0.45;
  cursor: wait;
}

.menu-section.is-menu-branch-loading .folder-toggle-btn::after {
  content: "…";
  margin-left: 2px;
}

.menu-folder:hover {
  background: var(--panel-soft);
  color: var(--text);
}

.menu-folder.has-node-color:hover,
.menu-folder.has-node-color:focus-visible {
  background: var(--node-color-bg);
  color: var(--node-color-text);
  border-color: color-mix(in srgb, var(--node-color-bg) 75%, var(--border));
}

.menu-folder.has-node-color.active {
  background: color-mix(in srgb, var(--node-color-bg) 82%, var(--panel));
  color: var(--node-color-text);
  border-color: color-mix(in srgb, var(--node-color-bg) 70%, var(--accent));
}

.menu-item {
  width: 100%;
  text-align: left;
  padding: 6px 9px;
  border: 1px solid transparent;
  border-radius: 8px;
  background: transparent;
  color: var(--text);
  cursor: pointer;
  margin-bottom: 0;
  position: relative;
  padding-left: 26px;
}

.menu-folder::before {
  position: absolute;
  left: 8px;
  top: 50%;
  transform: translateY(-50%);
  content: "";
  width: 14px;
  height: 14px;
  background-repeat: no-repeat;
  background-size: 14px 14px;
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='%23D4A72C'%3E%3Cpath d='M10.5 4.5a2 2 0 0 1 1.6.8l.9 1.2h5a2.5 2.5 0 0 1 2.5 2.5V17a2.5 2.5 0 0 1-2.5 2.5H6A2.5 2.5 0 0 1 3.5 17V7A2.5 2.5 0 0 1 6 4.5h4.5z'/%3E%3C/svg%3E");
}

.menu-folder.menu-folder-agent-root::before {
  content: "";
  width: 14px;
  height: 14px;
  background-repeat: no-repeat;
  background-position: center center;
  background-size: 14px 14px;
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16'%3E%3Ccircle cx='8' cy='8' r='7' fill='%232563EB'/%3E%3Cellipse cx='8' cy='8' rx='3' ry='7' fill='none' stroke='%23fff' stroke-width='0.85' opacity='0.9'/%3E%3Cline x1='1' y1='8' x2='15' y2='8' stroke='%23fff' stroke-width='0.85' opacity='0.9'/%3E%3C/svg%3E");
  line-height: 1;
}

.menu-folder.menu-folder-service-root {
  padding-left: 10px;
}

.menu-folder.menu-folder-service-root::before {
  content: none;
  display: none;
}

.menu-folder.menu-folder-container-root::before {
  content: "📦";
  background-image: none;
  width: auto;
  height: auto;
  font-size: 14px;
  line-height: 1;
  display: block;
}

.menu-folder.menu-folder--reserved-placeholder {
  cursor: default;
  border: 1px solid transparent;
  background: transparent;
  pointer-events: none;
}

.menu-folder.menu-folder--reserved-placeholder:hover,
.menu-folder.menu-folder--reserved-placeholder.active {
  background: transparent;
  border-color: transparent;
  color: inherit;
}

.menu-folder.menu-folder--adopt {
  cursor: grab;
  user-select: none;
  color: #94a3b8;
  border: 1px solid transparent;
  background: transparent;
  font-family: inherit;
  font-size: 12px;
  font-weight: 600;
  line-height: 1.35;
  text-align: left;
  width: 100%;
}

/* На adopt-строках резервные спейсеры (pin + действия) не должны душить
   название при глубокой вложенности — имя важнее выравнивания колонок. */
.menu-folder-row--adopt .menu-row-action-spacer {
  display: none;
}

.menu-folder.menu-folder--adopt::before {
  opacity: 0.55;
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='%2394a3b8'%3E%3Cpath d='M10.5 4.5a2 2 0 0 1 1.6.8l.9 1.2h5a2.5 2.5 0 0 1 2.5 2.5V17a2.5 2.5 0 0 1-2.5 2.5H6A2.5 2.5 0 0 1 3.5 17V7A2.5 2.5 0 0 1 6 4.5h4.5z'/%3E%3C/svg%3E");
}

.menu-folder.menu-folder--adopt:hover {
  background: rgba(148, 163, 184, 0.08);
  color: #64748b;
  border-color: var(--border);
}

.menu-folder.menu-folder--adopt.active {
  background: rgba(59, 130, 246, 0.1);
  color: var(--accent, #3b82f6);
  border-color: rgba(59, 130, 246, 0.25);
}

.menu-folder.menu-folder--adopt.active:hover {
  color: var(--accent, #3b82f6);
  border-color: rgba(59, 130, 246, 0.35);
}

.menu-item::before {
  position: absolute;
  left: 8px;
  top: 50%;
  transform: translateY(-50%);
  content: "";
  width: 14px;
  height: 14px;
  background-repeat: no-repeat;
  background-size: 14px 14px;
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='%236B7280'%3E%3Cpath d='M7.5 3.5h6.8L20.5 9v11A2.5 2.5 0 0 1 18 22.5H7.5A2.5 2.5 0 0 1 5 20V6A2.5 2.5 0 0 1 7.5 3.5zm6.3 1.8V9h3.7l-3.7-3.7z'/%3E%3C/svg%3E");
}

.menu-item-row {
  display: flex;
  align-items: center;
  gap: 4px;
  margin-bottom: 4px;
}

.tree-children {
  margin-left: 8px;
  padding-left: 7px;
  border-left: 1px dashed var(--border);
  margin-top: 2px;
}

.menu-section.is-collapsed > .tree-children,
.menu-section > .tree-children[hidden],
.menu-service-section > .tree-children[hidden],
.menu-shared-section > .tree-children[hidden] {
  display: none !important;
}

/* Flat view: same tree DOM, visually flat (no nesting chrome) */
.menu-agent-pane.is-menu-view-flat .tree-children {
  margin-left: 0 !important;
  padding-left: 0 !important;
  border-left: none !important;
  margin-top: 0;
}

.menu-agent-pane.is-menu-view-flat .menu-workspace-section,
.menu-agent-pane.is-menu-view-flat .menu-shared-section,
.menu-agent-pane.is-menu-view-flat .menu-service-section,
.menu-agent-pane.is-menu-view-flat .menu-container-section,
.menu-agent-pane.is-menu-view-flat .menu-nested-container-section {
  margin: 0 0 4px;
  padding: 0;
  border: none;
  border-radius: 0;
  background: transparent;
}

.menu-agent-pane.is-menu-view-flat .folder-toggle-btn,
.menu-agent-pane.is-menu-view-flat .menu-sort-handle,
.menu-agent-pane.is-menu-view-flat .menu-folder-row .menu-pin-branch-btn,
.menu-agent-pane.is-menu-view-flat .menu-folder-row .add-node-btn,
.menu-agent-pane.is-menu-view-flat .menu-tree-divider {
  display: none !important;
}

.menu-agent-pane.is-menu-view-flat .menu-folder-row,
.menu-agent-pane.is-menu-view-flat .menu-section-row,
.menu-agent-pane.is-menu-view-flat .menu-item-row,
.menu-agent-pane.is-menu-view-flat .system-file-row {
  margin-left: 0;
  width: 100%;
  box-sizing: border-box;
}

.menu-agent-pane.is-menu-view-flat .menu-folder-row .menu-folder,
.menu-agent-pane.is-menu-view-flat .menu-item-row .menu-item {
  flex: 1 1 auto;
  min-width: 0;
  max-width: 100%;
}

.menu-agent-pane.is-menu-view-flat .system-file-group-label {
  margin-top: 10px;
  margin-bottom: 2px;
}

.tree-children.menu-container-body,
.tree-children.menu-nested-container-body,
.menu-git-workspace-body {
  margin-left: 0;
  padding-left: 0;
  border-left: none;
}

.menu-sort-handle {
  width: 18px;
  height: 22px;
  padding: 0;
  border: none;
  border-radius: 4px;
  background: transparent;
  color: var(--muted);
  font-size: 12px;
  line-height: 1;
  cursor: grab;
  flex: 0 0 18px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  position: relative;
  z-index: 2;
  user-select: none;
  -webkit-user-drag: element;
}

.menu-sort-handle:hover {
  background: var(--bg);
  color: var(--text);
}

.menu-sort-handle--disabled,
.menu-sort-handle[aria-disabled="true"] {
  opacity: 0.38;
  cursor: not-allowed;
}

.menu-sort-handle--disabled:hover,
.menu-sort-handle[aria-disabled="true"]:hover {
  background: transparent;
  color: var(--muted);
}

.menu-sort-row.is-dragging {
  opacity: 0.55;
}

.menu-sort-handle:not(.menu-sort-handle--disabled):not([aria-disabled="true"]) {
  cursor: grab;
}

/* Must follow `.menu-sort-handle` — base rule sets `position: relative` for menu rows. */
.app-landing-group-agent-wrap .menu-sort-handle.app-landing-group-agent-sort-handle {
  position: absolute;
  top: 50%;
  left: 8px;
  transform: translateY(-50%);
  z-index: 3;
}

.menu-folder.menu-folder--adopt {
  cursor: grab;
}

.menu-folder.menu-folder--adopt:active,
.menu-folder.menu-folder--adopt.is-dragging-menu-link {
  cursor: grabbing;
}

.menu-item.is-dragging-menu-link,
.menu-folder.is-dragging-menu-link {
  opacity: 0.55;
}

.menu-item.is-menu-move-drop-target,
.menu-folder.is-menu-move-drop-target {
  box-shadow: inset 0 0 0 2px #6366f1;
}

.menu-item.is-workspace-tree-cut,
.menu-folder.is-workspace-tree-cut,
.folder-browse-item-card.is-workspace-tree-cut {
  opacity: 0.52;
  outline: 1px dashed rgba(245, 158, 11, 0.85);
  outline-offset: 1px;
  border-radius: 6px;
}

.menu-item.is-workspace-tree-selected,
.menu-folder.is-workspace-tree-selected,
.folder-browse-item-card.is-workspace-tree-selected {
  background: rgba(219, 234, 254, 0.72);
  box-shadow: inset 0 0 0 1px rgba(59, 130, 246, 0.55);
  border-radius: 6px;
}

.media-section-tree-item.is-memory-section-move-drop-target {
  box-shadow: inset 0 0 0 2px #6366f1;
  border-color: #6366f1;
}

.memory-section-tree-row.is-dragging,
.external-table-row.is-dragging-memory-file,
.media-file-item.is-dragging-memory-file,
.external-list-item.is-dragging-memory-file {
  opacity: 0.55;
}

.media-section-tree-item.is-dragging-memory-section {
  opacity: 0.55;
}

.media-section-tree-row .memory-section-sort-handle {
  align-self: center;
  flex-shrink: 0;
}

.memory-file-drag-handle {
  flex-shrink: 0;
}

.external-list-item .memory-file-drag-handle {
  align-self: center;
}

.external-table-drag-header,
.external-table-drag-cell {
  width: 34px;
  padding-left: 6px;
  padding-right: 6px;
  text-align: center;
}

.external-table-drag-cell .memory-file-drag-handle {
  margin: 0 auto;
}

.editor-surface.is-menu-link-drop-target {
  box-shadow: inset 0 0 0 2px #6366f1;
}

.file-content-preview .wikilink {
  color: #4f46e5;
  text-decoration: none;
  font-weight: 500;
}

.file-content-preview .wikilink:hover {
  text-decoration: underline;
}

.file-content-preview .wikilink--unresolved {
  color: #94a3b8;
  font-weight: 400;
}

.menu-section-row.menu-sort-row--disabled,
.menu-folder-row.menu-sort-row--disabled,
.menu-item-row.menu-sort-row--disabled {
  cursor: default;
}

.menu-item:hover {
  background: var(--panel-soft);
}

.menu-item.has-node-color:hover,
.menu-item.has-node-color:focus-visible {
  background: var(--node-color-bg);
  color: var(--node-color-text);
  border-color: color-mix(in srgb, var(--node-color-bg) 75%, var(--border));
}

.menu-item.active,
.menu-folder.active {
  border-color: var(--accent);
  background: #dbeafe;
  color: #1e3a8a;
}

.menu-item.has-node-color.active,
.menu-folder.has-node-color.active {
  border-color: color-mix(in srgb, var(--node-color-bg) 70%, var(--accent));
  background: color-mix(in srgb, var(--node-color-bg) 82%, var(--panel));
  color: var(--node-color-text);
}

.workspace-body {
  flex: 1;
  min-height: 0;
  overflow-x: hidden;
  overflow-y: hidden;
  padding: 0;
  background: var(--panel);
  display: flex;
  flex-direction: row;
  align-items: stretch;
}

.workspace-main-stack {
  flex: 1 1 auto;
  min-width: 0;
  min-height: 0;
  display: flex;
  flex-direction: column;
  align-items: stretch;
}

.workspace-main-stack > .content.doc-stack {
  flex: 1 1 auto;
  min-width: 0;
  min-height: 0;
  overflow: visible;
}

.workspace-body > .content.doc-stack {
  flex: 1 1 auto;
  min-width: 0;
  min-height: 0;
  overflow: visible;
}

.content {
  padding: 0;
  min-width: 0;
  min-height: 0;
  height: 100%;
}

.doc-stack {
  display: flex;
  flex-direction: column;
  gap: 12px;
  height: 100%;
  min-height: 0;
  overflow: visible;
  padding: 12px 16px 0;
}

.doc-stack > #workspace-path-header {
  flex: 0 0 auto;
  position: relative;
  z-index: 40;
  overflow: visible;
}

#workspace-path-header .workspace-path-crumbs-block,
#workspace-path-header .workspace-path-toolbar-block,
#workspace-path-header .workspace-path-crumbs-actions,
#workspace-path-header .editor-view-cluster {
  overflow: visible;
}

#workspace-path-header .ui-tooltip-host[data-tooltip]::after,
#workspace-path-header .ui-tooltip-host[data-tooltip]::before,
#workspace-path-header .editor-view-btn[data-tooltip]::after,
#workspace-path-header .editor-view-btn[data-tooltip]::before,
#workspace-path-header .editor-cluster-btn[data-tooltip]::after,
#workspace-path-header .editor-cluster-btn[data-tooltip]::before {
  z-index: 300;
}

.doc-stack > #doc-body-grid {
  flex: 1 1 0;
  min-height: 0;
  overflow: hidden;
}

.doc-stack > .doc-slab-path + .doc-slab-title,
.doc-stack > .doc-slab-path + .doc-body-grid {
  margin-top: -12px;
}

.media-list-view-body > .section-readme-card--offer:first-child {
  margin-top: 0;
}

.doc-stack > .doc-slab-title + .doc-slab-hint {
  margin-top: -12px;
}

.doc-body-grid {
  display: grid;
  grid-template-columns: minmax(0, 1fr);
  flex: 1;
  min-height: 0;
  margin: 0 -16px;
  overflow: hidden;
  align-items: stretch;
  background: var(--panel);
  border-bottom: 1px solid var(--border);
  position: relative;
}

.doc-body-grid.has-props-aside {
  grid-template-columns: minmax(0, 1fr) minmax(248px, 280px);
}

.doc-body-grid.has-props-aside .doc-body-main {
  border-right: 3px solid #475569;
  box-sizing: border-box;
}

.doc-body-grid.has-props-aside .doc-body-main,
.doc-body-grid.has-props-aside .doc-props-aside {
  height: 100%;
  max-height: 100%;
}

.doc-body-main {
  display: flex;
  flex-direction: column;
  flex: 1 1 0;
  min-height: 0;
  min-width: 0;
  overflow: hidden;
  position: relative;
}

.doc-body-status-bar {
  --doc-body-status-bar-height: 34px;
  flex: 0 0 var(--doc-body-status-bar-height);
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 10px;
  min-height: var(--doc-body-status-bar-height);
  padding: 0 12px;
  border-top: 1px solid rgba(148, 163, 184, 0.28);
  background: linear-gradient(180deg, #f8fafc 0%, #eef2f7 100%);
  box-sizing: border-box;
  font-size: 10px;
  line-height: 1.2;
  color: #64748b;
  position: relative;
  z-index: 35;
}

.doc-body-status-bar.hidden {
  display: none;
}

.doc-body-status-bar-stats {
  flex: 1 1 auto;
  min-width: 0;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
  font-variant-numeric: tabular-nums;
}

.doc-body-status-bar-actions {
  display: flex;
  align-items: center;
  justify-content: flex-end;
  gap: 8px;
  flex-shrink: 0;
  min-width: 0;
  margin-left: auto;
}

.doc-body-status-bar-window-wrap {
  flex-shrink: 0;
}

.doc-body-status-bar-window-select,
.doc-body-status-bar-window-wrap .document-context-meter-window-select {
  max-width: 56px;
  min-width: 56px;
}

.doc-body-status-bar-meta {
  flex-shrink: 0;
  font-size: 10px;
  font-weight: 700;
  line-height: 1.2;
  padding: 2px 8px;
  border-radius: 999px;
  white-space: nowrap;
  font-variant-numeric: tabular-nums;
}

.doc-body-status-bar-meta--comfort {
  color: #166534;
  background: #dcfce7;
}

.doc-body-status-bar-meta--warn {
  color: #92400e;
  background: #fef3c7;
}

.doc-body-status-bar-meta--split {
  color: #9a3412;
  background: #ffedd5;
}

.doc-body-status-bar-meta--overflow {
  color: #991b1b;
  background: #fee2e2;
}

.doc-body-main:has(.doc-body-status-bar:not(.hidden)) {
  --doc-body-status-bar-height: 34px;
}

.doc-body-main:has(.doc-body-status-bar:not(.hidden)) > .workspace-scroll-chrome {
  bottom: var(--doc-body-status-bar-height, 34px);
}

#doc-body-grid.has-props-aside .doc-body-main > .workspace-scroll-chrome {
  position: absolute;
  inset: 0;
  z-index: 40;
  pointer-events: none;
  opacity: 0;
  transition: opacity 0.2s ease;
}

#doc-body-grid.has-props-aside .doc-body-main > .workspace-scroll-chrome.is-active {
  opacity: 1;
}

#doc-body-grid.has-props-aside .doc-body-main > .scroll-top-btn--docked {
  position: absolute;
  right: calc(10px + var(--scroll-top-shift-x, 0px));
  bottom: calc((var(--doc-body-status-bar-height, 34px) - 32px) / 2 + var(--scroll-top-shift-y, 0px));
  z-index: 41;
  margin: 0;
  min-height: 32px;
  min-width: 32px;
  width: 32px;
  height: 32px;
  padding: 0;
  gap: 0;
  border-radius: 999px;
  box-shadow:
    0 8px 18px rgba(37, 99, 235, 0.28),
    0 2px 6px rgba(15, 23, 42, 0.1);
}

.doc-stack .editor-surface > .workspace-scroll-host > .scroll-top-btn--docked {
  display: none !important;
}

.doc-stack .editor-surface > .workspace-scroll-host {
  position: relative;
  flex: 1 1 0;
  min-height: 0;
  display: flex;
  flex-direction: column;
}

.doc-stack .editor-surface > .workspace-scroll-host > .scroll-top-btn--docked {
  display: none !important;
}

.doc-stack .editor-surface > .workspace-scroll-host > .scroll-top-btn--docked .scroll-top-btn-icon {
  width: 16px;
  height: 16px;
  flex: 0 0 16px;
}

.doc-stack .editor-surface > .workspace-scroll-host > .scroll-top-btn--docked .scroll-top-btn-label {
  display: none;
}

.doc-body-main:has(.doc-body-status-bar:not(.hidden)) > .scroll-top-btn--docked {
  bottom: calc((var(--doc-body-status-bar-height, 34px) - 32px) / 2 + var(--scroll-top-shift-y, 0px));
}

#doc-body-grid.has-props-aside .doc-body-main > .scroll-top-btn--docked .scroll-top-btn-icon {
  width: 16px;
  height: 16px;
  flex: 0 0 16px;
}

#doc-body-grid.has-props-aside .doc-body-main > .scroll-top-btn--docked .scroll-top-btn-label {
  display: none;
}

.doc-head-block {
  flex-shrink: 0;
  padding: 0;
}

.doc-head-block .doc-slab-hint {
  margin: 0;
}

.doc-props-aside.doc-slab {
  gap: 0;
}

.doc-props-aside {
  width: 100%;
  min-width: 0;
  min-height: 0;
  padding: 0;
  border-left: 0;
  background: #eef2f7;
  overflow: hidden;
  align-self: stretch;
  box-sizing: border-box;
  display: flex;
  flex-direction: column;
  position: relative;
  z-index: 2;
}

.doc-props-aside .doc-aside-preview-block {
  flex-shrink: 0;
  margin: 0;
  padding: 8px 10px 4px;
  background: #fff;
}

.doc-props-aside .doc-aside-preview-block.hidden {
  display: none;
}

.doc-props-aside .doc-aside-preview-block .props-form-field--preview {
  grid-template-columns: minmax(0, 1fr);
  padding: 0;
  min-height: 0;
  border-top: 0;
}

.doc-props-aside .doc-aside-preview-block,
.doc-props-aside .doc-aside-web-url-block,
.doc-props-aside .doc-aside-attachments-block,
.doc-props-aside .doc-aside-materials-block {
  margin-bottom: 0;
}

.doc-props-aside .doc-aside-preview-block:not(.hidden) + .doc-aside-web-url-block:not(.hidden),
.doc-props-aside .doc-aside-preview-block:not(.hidden) + .doc-aside-attachments-block:not(.hidden),
.doc-props-aside .doc-aside-preview-block:not(.hidden) + .doc-aside-materials-block:not(.hidden),
.doc-props-aside .doc-aside-web-url-block:not(.hidden) + .doc-aside-attachments-block:not(.hidden),
.doc-props-aside .doc-aside-web-url-block:not(.hidden) + .doc-aside-materials-block:not(.hidden),
.doc-props-aside .doc-aside-attachments-block:not(.hidden) + .doc-aside-materials-block:not(.hidden) {
  border-top: none;
  padding-top: 4px;
}

.doc-props-aside .doc-aside-web-url-block {
  flex-shrink: 0;
  padding: 8px 10px 8px;
  border-top: 1px solid rgba(148, 163, 184, 0.28);
  background: #fff;
}

.doc-props-aside .doc-aside-web-url-block.hidden {
  display: none;
}

.doc-props-aside .doc-aside-web-url-head {
  display: flex;
  flex-direction: column;
  gap: 4px;
  margin-bottom: 6px;
}

.doc-props-aside .doc-aside-web-url-title {
  margin: 0;
  font-size: 12px;
  font-weight: 700;
  letter-spacing: 0.03em;
  text-transform: uppercase;
  color: #64748b;
}

.doc-props-aside .doc-aside-web-url-hint {
  margin: 0;
  font-size: 10px;
  line-height: 1.35;
  color: #94a3b8;
}

.doc-props-aside .doc-aside-web-url-body {
  width: 100%;
  min-width: 0;
}

.doc-props-aside #props-web-url-block .props-form-value-wrap--url {
  width: 100%;
  max-width: 100%;
  box-sizing: border-box;
}

.doc-props-aside .doc-aside-web-url-readonly-value {
  font-size: 11px;
  line-height: 1.4;
  color: #334155;
  word-break: break-all;
}

.doc-props-aside .doc-aside-web-url-readonly-value.is-empty {
  color: #94a3b8;
}

.doc-props-aside .doc-aside-web-url-readonly-value a {
  color: var(--accent);
  text-decoration: none;
}

.doc-props-aside .doc-aside-web-url-readonly-value a:hover,
.doc-props-aside .doc-aside-web-url-readonly-value a:focus-visible {
  text-decoration: underline;
}

.doc-props-aside .doc-aside-attachments-block {
  margin: 0;
  padding: 8px 10px 8px;
  border-top: 1px solid rgba(148, 163, 184, 0.28);
  background: #fff;
}

.doc-props-aside .doc-aside-materials-block {
  margin: 0;
  padding: 8px 10px 8px;
  border-top: 1px solid rgba(148, 163, 184, 0.28);
  background: #fff;
}

.doc-props-aside .doc-aside-materials-title {
  margin: 0 0 8px;
  font-size: 12px;
  font-weight: 700;
  letter-spacing: 0.03em;
  text-transform: uppercase;
  color: #64748b;
}

.doc-props-aside .doc-aside-materials-block .props-form-record-materials {
  margin: 0;
}

.doc-props-aside .doc-aside-materials-block .props-form-record-materials-add {
  width: 100%;
  box-sizing: border-box;
}

.doc-props-aside .doc-aside-attachments-head {
  display: flex;
  flex-direction: column;
  gap: 6px;
  margin-bottom: 10px;
}

.doc-props-aside .doc-aside-attachments-title {
  margin: 0;
  font-size: 12px;
  font-weight: 700;
  letter-spacing: 0.03em;
  text-transform: uppercase;
  color: #64748b;
}

.doc-props-aside .doc-aside-attachments-legend {
  display: flex;
  flex-direction: column;
  gap: 3px;
}

.doc-props-aside .doc-aside-attachments-legend-item {
  font-size: 10px;
  line-height: 1.35;
  color: #94a3b8;
}

.doc-props-aside .doc-aside-attachments-legend-item.is-in-body {
  color: #059669;
}

.doc-props-aside .doc-aside-attachments-legend-item.is-unlinked {
  color: #94a3b8;
}

.doc-props-aside .doc-aside-attachments-path-variant,
.doc-props-aside .doc-aside-attachments-variant-row {
  display: flex;
  align-items: center;
  flex-wrap: wrap;
  gap: 6px;
  margin-top: 2px;
}

.doc-props-aside .doc-aside-attachments-variant-label {
  font-size: 10px;
  color: #64748b;
}

.doc-props-aside .doc-aside-attachments-variant-btn {
  border: 1px solid rgba(148, 163, 184, 0.45);
  border-radius: 999px;
  background: #fff;
  padding: 2px 8px;
  font-size: 10px;
  line-height: 1.3;
  color: #475569;
  cursor: pointer;
}

.doc-props-aside .doc-aside-attachments-variant-btn.is-active {
  border-color: rgba(37, 99, 235, 0.45);
  background: rgba(37, 99, 235, 0.08);
  color: #1d4ed8;
  font-weight: 600;
}

.doc-props-aside .doc-aside-attachments-head.is-simple-ui .doc-aside-attachments-legend-item--extended-only,
.doc-props-aside .doc-aside-attachments-head.is-simple-ui .doc-aside-attachments-path-variant--extended-only {
  display: none;
}

.doc-props-aside #props-attachments-block .props-form-value-wrap--attachments {
  width: 100%;
  max-width: 100%;
  box-sizing: border-box;
}

.doc-props-aside .doc-aside-preview-block .props-form-preview-thumb-wrap {
  width: 100%;
  min-height: 150px;
  max-height: none;
  height: auto;
  border-radius: 10px;
}

.slug-field-row.hidden {
  display: none;
}

.slug-field-label {
  display: block;
  margin: 0 0 4px;
  font-size: 11px;
  font-weight: 600;
  color: #64748b;
}

.slug-input-row,
.slug-input-wrap {
  position: relative;
  display: block;
  min-width: 0;
  width: 100%;
}

.slug-input-row .slug-input,
.slug-input-wrap .slug-input {
  margin-bottom: 0;
}

.slug-input-row .popover-input.slug-input,
.slug-input-wrap .popover-input.slug-input {
  padding-right: 34px;
}

.slug-input {
  display: block;
  width: 100%;
  min-width: 0;
  margin: 0;
  box-sizing: border-box;
  padding: 4px 32px 4px 7px;
  border: 1px solid rgba(148, 163, 184, 0.42);
  border-radius: 6px;
  background: #f8fafc;
  font-size: 12px;
  line-height: 1.35;
  color: #334155;
  font-family: ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, monospace;
}

.slug-input-row:focus-within .slug-input,
.slug-input-wrap:focus-within .slug-input {
  border-color: #60a5fa;
  box-shadow: 0 0 0 3px rgba(59, 130, 246, 0.14);
  background: #fff;
  outline: none;
}

.slug-input:focus {
  border-color: #60a5fa;
  box-shadow: 0 0 0 3px rgba(59, 130, 246, 0.14);
  background: #fff;
  outline: none;
}

.slug-input:read-only {
  color: #64748b;
  cursor: default;
}

.slug-input-row .slug-unlink-btn,
.slug-input-wrap .slug-unlink-btn {
  position: absolute;
  top: 50%;
  right: 5px;
  transform: translateY(-50%);
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 22px;
  height: 22px;
  padding: 0;
  border: 0;
  border-radius: 4px;
  background: transparent;
  color: #64748b;
  font-size: 14px;
  line-height: 1;
  cursor: pointer;
}

.slug-input-row .slug-unlink-btn:hover,
.slug-input-wrap .slug-unlink-btn:hover {
  background: rgba(148, 163, 184, 0.22);
  color: #334155;
}

.slug-unlink-btn.is-linked {
  color: #64748b;
}

.slug-field-hint {
  margin: 4px 0 0;
  font-size: 10px;
  line-height: 1.4;
  color: #94a3b8;
}

.create-display-name-hint {
  margin: 4px 0 0;
  font-size: 10px;
  line-height: 1.4;
  color: #b91c1c;
}

.create-display-name-hint.hidden {
  display: none;
}

.popover-input.is-display-name-long,
.title-input.is-display-name-long {
  border-color: rgba(185, 28, 28, 0.58);
  background: linear-gradient(180deg, rgba(254, 242, 242, 0.82), #fff);
  color: #991b1b;
}

.popover-input.is-display-name-long:focus,
.title-input.is-display-name-long:focus {
  border-color: rgba(185, 28, 28, 0.78);
  box-shadow: 0 0 0 3px rgba(254, 202, 202, 0.42);
}

.editor-title-bar .title-input.is-display-name-long:focus {
  box-shadow: 0 0 0 3px rgba(254, 202, 202, 0.42);
}

#create-section-modal .create-display-name-hint {
  margin-bottom: 8px;
}

.editor-title-field-value > .create-display-name-hint {
  margin: 4px 0 8px;
}

.create-memory-name-field {
  display: flex;
  flex-direction: column;
  gap: 2px;
  min-width: 0;
}

.create-memory-name-field .create-display-name-hint {
  margin: 0;
}

.create-form-description-input {
  width: 100%;
  min-width: 0;
  height: 28px;
  margin: 0 0 8px;
  padding: 4px 8px;
  box-sizing: border-box;
  font-size: 11px;
  line-height: 1.3;
  color: var(--text-muted, #64748b);
}

.create-form-description-input::placeholder {
  color: var(--muted, #94a3b8);
  opacity: 1;
}

.create-form-description-input:disabled {
  opacity: 0.65;
  cursor: not-allowed;
}

.create-node-manual-section .create-form-description-input {
  margin-top: 6px;
}

#create-section-modal .create-form-description-input {
  margin-bottom: 10px;
}

.agents-registry-field .create-form-description-input {
  margin: 4px 0 0;
}

.create-memory-name-row .create-memory-description-input,
.create-memory-name-row .create-form-description-input {
  width: 100%;
  min-width: 0;
  height: 28px;
  margin: 0;
  padding: 4px 8px;
  box-sizing: border-box;
  font-size: 11px;
  line-height: 1.3;
  color: var(--text-muted, #64748b);
}

.create-memory-description-input::placeholder {
  color: var(--muted, #94a3b8);
  opacity: 1;
}

.create-memory-description-input:disabled {
  opacity: 0.65;
  cursor: not-allowed;
}

.create-node-manual-section .create-display-name-hint {
  margin-bottom: 8px;
}

.create-node-manual-section .slug-field-row {
  margin-top: 8px;
}

.create-node-manual-section .slug-input-row .slug-input,
.create-node-manual-section .slug-input-wrap .slug-input {
  height: 36px;
  font-size: 13px;
  padding-right: 34px;
}

.doc-props-aside .doc-aside-toolbar {
  flex-shrink: 0;
  display: flex;
  flex-direction: column;
  align-items: stretch;
  gap: 8px;
  margin: 0;
  padding: 10px 10px 9px;
  border-bottom: 1px solid rgba(148, 163, 184, 0.32);
  background: linear-gradient(180deg, #eef2ff 0%, #f8fafc 55%, #eef2f7 100%);
  box-shadow:
    inset 0 1px 0 rgba(255, 255, 255, 0.92),
    0 1px 0 rgba(148, 163, 184, 0.12);
}

.doc-aside-mini-doc {
  width: 100%;
  box-sizing: border-box;
  overflow: hidden;
  border: 1px solid rgba(148, 163, 184, 0.28);
  border-radius: 10px;
  background: linear-gradient(180deg, #f8fafc 0%, #fff 100%);
  font-size: 11px;
  line-height: 1.45;
  color: #475569;
}

.doc-aside-mini-doc.hidden {
  display: none;
}

.doc-aside-mini-doc-head {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 8px;
  width: 100%;
  margin: 0;
  padding: 7px 10px;
  border: 0;
  background: transparent;
  cursor: pointer;
  text-align: left;
  font: inherit;
  color: inherit;
}

.doc-aside-mini-doc-head:hover {
  background: rgba(255, 255, 255, 0.72);
}

.doc-aside-mini-doc-head:focus-visible {
  outline: none;
  box-shadow: inset 0 0 0 2px rgba(59, 130, 246, 0.28);
}

.doc-aside-mini-doc-head-main {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  gap: 1px;
  min-width: 0;
}

.doc-aside-mini-doc-label {
  font-size: 10px;
  font-weight: 800;
  letter-spacing: 0.05em;
  text-transform: uppercase;
  color: #64748b;
}

.doc-aside-mini-doc-kicker {
  font-size: 10px;
  line-height: 1.35;
  color: #94a3b8;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
  max-width: 100%;
}

.doc-aside-mini-doc-chevron {
  flex-shrink: 0;
  display: inline-flex;
  width: 16px;
  height: 16px;
  color: #94a3b8;
  transition: transform 0.15s ease, color 0.15s ease;
}

.doc-aside-mini-doc-chevron svg {
  width: 16px;
  height: 16px;
}

.doc-aside-mini-doc.is-open .doc-aside-mini-doc-chevron {
  transform: rotate(180deg);
  color: #64748b;
}

.doc-aside-mini-doc-body {
  padding: 6px 10px 8px;
  border-top: 1px solid rgba(148, 163, 184, 0.2);
}

.doc-aside-mini-doc-body[hidden] {
  display: none;
}

.doc-aside-mini-doc-list {
  margin: 0;
  padding: 0 0 0 14px;
}

.doc-aside-mini-doc-list li {
  margin: 0 0 3px;
}

.doc-aside-mini-doc-list li:last-child {
  margin-bottom: 0;
}

.doc-aside-mini-doc-example {
  margin: 6px 0 0;
  padding: 6px 8px;
  border-radius: 8px;
  background: #eef2f7;
  font-family: ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace;
  font-size: 10px;
  line-height: 1.4;
  color: #334155;
  white-space: pre-wrap;
  word-break: break-word;
}

.doc-aside-mini-doc code {
  font-family: ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace;
  font-size: 10px;
  background: rgba(148, 163, 184, 0.16);
  border-radius: 4px;
  padding: 0 3px;
}

.doc-aside-todo-sticker {
  width: 100%;
  box-sizing: border-box;
  margin-top: 8px;
  padding: 6px 8px;
  border: 1px solid #e5d089;
  border-radius: 8px;
  background: linear-gradient(180deg, #fffbeb 0%, #fef3c7 100%);
  box-shadow: 0 1px 2px rgba(120, 90, 20, 0.08);
  font-size: 11px;
  line-height: 1.45;
  color: #78350f;
}

.doc-aside-todo-sticker.hidden {
  display: none;
}

.doc-aside-todo-sticker-head {
  display: flex;
  align-items: center;
  gap: 6px;
  width: 100%;
  min-height: 22px;
  margin: 0;
  padding: 0;
  border: 0;
  background: transparent;
  text-align: left;
  cursor: pointer;
  font: inherit;
  color: inherit;
}

.doc-aside-todo-sticker-head:hover,
.doc-aside-todo-sticker-head:focus-visible {
  color: #92400e;
}

.doc-aside-todo-sticker-head:focus-visible {
  outline: none;
  box-shadow: 0 0 0 2px rgba(180, 130, 20, 0.28);
  border-radius: 4px;
}

.doc-aside-todo-sticker-chevron {
  flex-shrink: 0;
  width: 6px;
  height: 6px;
  border-right: 2px solid #92400e;
  border-bottom: 2px solid #92400e;
  transform: rotate(-45deg);
  transition: transform 0.15s ease;
  margin-top: -1px;
  opacity: 0.82;
}

.doc-aside-todo-sticker.is-open .doc-aside-todo-sticker-chevron {
  transform: rotate(45deg);
  margin-top: -3px;
}

.doc-aside-todo-sticker-label {
  font-size: 10px;
  font-weight: 700;
  letter-spacing: 0.04em;
  text-transform: uppercase;
}

.doc-aside-todo-sticker-body {
  margin: 4px 0 0;
  padding: 0 2px 2px 14px;
  white-space: pre-wrap;
  word-break: break-word;
  font-size: 11px;
  line-height: 1.45;
  color: #78350f;
}

.doc-aside-todo-sticker:not(.is-open) .doc-aside-todo-sticker-body {
  display: none;
}

.doc-props-aside .doc-aside-panel {
  flex: 1;
  min-height: 0;
  display: flex;
  flex-direction: column;
  overflow: hidden;
}

.doc-props-aside .doc-aside-panel-scroll {
  flex: 1;
  min-height: 0;
  overflow-x: hidden;
  overflow-y: auto;
  overscroll-behavior: contain;
  -webkit-overflow-scrolling: touch;
  scrollbar-gutter: stable;
  padding: 8px 10px 10px;
  width: 100%;
  box-sizing: border-box;
}

.doc-props-aside .doc-aside-panel-footer {
  flex-shrink: 0;
  padding: 8px 10px;
  border-top: 1px solid rgba(148, 163, 184, 0.28);
  background: #eef2f7;
  box-shadow: none;
}

.doc-props-aside .doc-aside-fields-card {
  width: 100%;
  box-sizing: border-box;
  border: 1px solid rgba(148, 163, 184, 0.32);
  border-radius: 12px;
  background: #fff;
  box-shadow: 0 1px 2px rgba(15, 23, 42, 0.04);
  overflow: hidden;
}

.doc-props-aside .doc-aside-fields-card-head {
  padding: 8px 11px 8px;
  border-bottom: 1px solid rgba(148, 163, 184, 0.32);
  border-top: 1px solid rgba(148, 163, 184, 0.28);
  background: linear-gradient(180deg, #eef2ff 0%, #f8fafc 100%);
}

.doc-props-aside
  .doc-aside-fields-card:not(:has(.doc-aside-preview-block:not(.hidden))):not(
    :has(.doc-aside-web-url-block:not(.hidden))
  ):not(:has(.doc-aside-attachments-block:not(.hidden))):not(
    :has(.doc-aside-materials-block:not(.hidden))
  )
  .doc-aside-fields-card-head {
  border-top: none;
}

.doc-props-aside .doc-aside-fields-card-title {
  margin: 0;
  font-size: 11px;
  font-weight: 800;
  letter-spacing: 0.05em;
  text-transform: uppercase;
  color: #4338ca;
}

.doc-props-aside .doc-aside-fields-card-sub {
  margin: 3px 0 0;
  font-size: 10px;
  line-height: 1.35;
  color: #94a3b8;
}

.doc-props-aside .doc-aside-icon-tabs {
  display: flex;
  flex: 1;
  min-width: 0;
  gap: 3px;
  padding: 3px;
  border: 1px solid rgba(148, 163, 184, 0.32);
  border-radius: 10px;
  background: #f1f5f9;
}

.doc-props-aside .doc-aside-icon-tab {
  flex: 1;
  min-width: 0;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  gap: 3px;
  border: 1px solid transparent;
  border-radius: 8px;
  cursor: pointer;
  background: transparent;
  padding: 7px 4px 6px;
  color: #64748b;
  transition:
    background 0.15s ease,
    color 0.15s ease,
    border-color 0.15s ease,
    box-shadow 0.15s ease;
}

.doc-aside-icon-tab-glyph {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 18px;
  height: 18px;
  line-height: 0;
}

.doc-aside-icon-tab-glyph svg {
  width: 18px;
  height: 18px;
}

.doc-aside-icon-tab-label {
  font-size: 9px;
  font-weight: 700;
  line-height: 1.1;
  letter-spacing: 0.02em;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
  max-width: 100%;
}

.doc-props-aside .doc-aside-icon-tab.active {
  color: #1d4ed8;
  background: #fff;
  border-color: rgba(59, 130, 246, 0.28);
  box-shadow: 0 1px 3px rgba(37, 99, 235, 0.12);
}

.doc-props-aside .doc-aside-icon-tab.is-disabled,
.doc-props-aside .doc-aside-icon-tab:disabled {
  opacity: 0.42;
  cursor: not-allowed;
  color: #94a3b8;
  background: transparent;
  border-color: transparent;
  box-shadow: none;
}

.doc-props-aside .doc-aside-icon-tab.is-disabled.active,
.doc-props-aside .doc-aside-icon-tab:disabled.active {
  opacity: 0.42;
  color: #94a3b8;
  background: rgba(248, 250, 252, 0.9);
  border-color: rgba(148, 163, 184, 0.22);
  box-shadow: none;
}

.doc-props-aside .doc-aside-icon-tab:hover:not(.active):not(:disabled):not(.is-disabled) {
  background: rgba(255, 255, 255, 0.72);
  color: #334155;
  border-color: rgba(148, 163, 184, 0.22);
}

.doc-props-aside .doc-aside-icon-tab:focus-visible {
  outline: none;
  box-shadow: 0 0 0 2px rgba(59, 130, 246, 0.28);
}

.doc-props-aside .doc-aside-collapse-btn {
  flex-shrink: 0;
  width: 28px;
  height: 28px;
  border: 1px solid rgba(148, 163, 184, 0.35);
  border-radius: 8px;
  background: #fff;
  font-size: 14px;
  line-height: 1;
  color: #94a3b8;
  cursor: pointer;
  transition: border-color 0.15s ease, color 0.15s ease, background 0.15s ease;
}

.doc-aside-icon-tab.hidden,
.doc-aside-tab.hidden {
  display: none;
}

.doc-aside-panel.hidden {
  display: none;
}

.doc-aside-collapse-btn:hover,
.doc-aside-expand-btn:hover {
  border-color: #93c5fd;
  color: #1d4ed8;
  background: #f8fafc;
}

.doc-body-grid:not(.has-props-aside) .doc-props-aside {
  display: none;
}

.doc-props-aside.is-collapsed {
  display: none;
}

.doc-head-block.hidden {
  display: none;
}

.doc-body-main .doc-slab-content {
  flex: 1 1 auto;
  min-height: 0;
  border-bottom: 0;
  --doc-content-gutter: 16px;
  --doc-slab-content-inline-inset: var(--doc-content-gutter);
  padding: 0 var(--doc-content-gutter) 12px;
  box-sizing: border-box;
  --doc-editor-inline-gutter: 0px;
  overflow: hidden;
}

/* Overview / topic schema: скролл на doc-slab-content, chrome фиксирован на doc-body-main */
.doc-body-main:has(> .doc-slab-content > .doc-slab-main > .node-overview:not(.hidden)),
.doc-body-main:has(> .doc-slab-content > .doc-slab-main > .workspace-scroll-host > .node-overview:not(.hidden)),
.doc-body-main:has(> .doc-slab-content > .doc-slab-main > .topic-schema-panel:not(.hidden)) {
  position: relative;
}

.doc-body-main .doc-slab-content:has(> .doc-slab-main > .node-overview:not(.hidden)),
.doc-body-main .doc-slab-content:has(> .doc-slab-main > .workspace-scroll-host > .node-overview:not(.hidden)),
.doc-body-main .doc-slab-content:has(> .doc-slab-main > .topic-schema-panel:not(.hidden)) {
  flex: 1 1 auto;
  min-height: 0;
  overflow-x: hidden;
  overflow-y: auto;
  overscroll-behavior: contain;
  -webkit-overflow-scrolling: touch;
  scrollbar-gutter: stable;
  scrollbar-color: rgba(71, 85, 105, 0.78) rgba(148, 163, 184, 0.22);
}

.doc-body-main:has(> .doc-slab-content > .doc-slab-main > .node-overview:not(.hidden)) > .workspace-scroll-chrome,
.doc-body-main:has(> .doc-slab-content > .doc-slab-main > .workspace-scroll-host > .node-overview:not(.hidden)) > .workspace-scroll-chrome,
.doc-body-main:has(> .doc-slab-content > .doc-slab-main > .topic-schema-panel:not(.hidden)) > .workspace-scroll-chrome {
  position: absolute;
  inset: 0;
  z-index: 40;
  pointer-events: none;
  opacity: 0;
  transition: opacity 0.2s ease;
}

.doc-body-main:has(> .doc-slab-content > .doc-slab-main > .node-overview:not(.hidden)) > .workspace-scroll-chrome.is-active,
.doc-body-main:has(> .doc-slab-content > .doc-slab-main > .workspace-scroll-host > .node-overview:not(.hidden)) > .workspace-scroll-chrome.is-active,
.doc-body-main:has(> .doc-slab-content > .doc-slab-main > .topic-schema-panel:not(.hidden)) > .workspace-scroll-chrome.is-active {
  opacity: 1;
}

.doc-body-main:has(> .doc-slab-content > .doc-slab-main > .node-overview:not(.hidden)) > .workspace-scroll-chrome .scroll-depth-indicator,
.doc-body-main:has(> .doc-slab-content > .doc-slab-main > .workspace-scroll-host > .node-overview:not(.hidden)) > .workspace-scroll-chrome .scroll-depth-indicator,
.doc-body-main:has(> .doc-slab-content > .doc-slab-main > .topic-schema-panel:not(.hidden)) > .workspace-scroll-chrome .scroll-depth-indicator {
  z-index: 2;
}

.doc-body-main:has(> .doc-slab-content > .doc-slab-main > .node-overview:not(.hidden)) > .scroll-top-btn--docked,
.doc-body-main:has(> .doc-slab-content > .doc-slab-main > .workspace-scroll-host > .node-overview:not(.hidden)) > .scroll-top-btn--docked,
.doc-body-main:has(> .doc-slab-content > .doc-slab-main > .topic-schema-panel:not(.hidden)) > .scroll-top-btn--docked {
  position: absolute;
  right: calc(14px + var(--scroll-top-shift-x, 0px));
  bottom: calc(14px + var(--scroll-top-shift-y, 0px));
  z-index: 41;
  margin: 0;
  width: auto;
  max-width: none;
  align-self: auto;
  flex: none;
}

.doc-body-main .doc-slab-content:has(> .doc-slab-main > .node-overview:not(.hidden))::-webkit-scrollbar,
.doc-body-main .doc-slab-content:has(> .doc-slab-main > .workspace-scroll-host > .node-overview:not(.hidden))::-webkit-scrollbar,
.doc-body-main .doc-slab-content:has(> .doc-slab-main > .topic-schema-panel:not(.hidden))::-webkit-scrollbar {
  width: 10px;
}

.doc-body-main .doc-slab-content:has(> .doc-slab-main > .node-overview:not(.hidden))::-webkit-scrollbar-thumb,
.doc-body-main .doc-slab-content:has(> .doc-slab-main > .workspace-scroll-host > .node-overview:not(.hidden))::-webkit-scrollbar-thumb,
.doc-body-main .doc-slab-content:has(> .doc-slab-main > .topic-schema-panel:not(.hidden))::-webkit-scrollbar-thumb {
  background: rgba(71, 85, 105, 0.62);
  border-radius: 999px;
  border: 2px solid rgba(248, 250, 252, 0.92);
  background-clip: padding-box;
}

.doc-body-main .doc-slab-content:has(> .doc-slab-main > .node-overview:not(.hidden))::-webkit-scrollbar-thumb:hover,
.doc-body-main .doc-slab-content:has(> .doc-slab-main > .workspace-scroll-host > .node-overview:not(.hidden))::-webkit-scrollbar-thumb:hover,
.doc-body-main .doc-slab-content:has(> .doc-slab-main > .topic-schema-panel:not(.hidden))::-webkit-scrollbar-thumb:hover {
  background: rgba(51, 65, 85, 0.82);
  background-clip: padding-box;
}

/* Редактор с боковой панелью: скролл на doc-slab-content */
#doc-body-grid.has-props-aside .doc-body-main .doc-slab-content:has(> .doc-slab-main > .editor-surface:not(.hidden)) {
  flex: 1 1 0;
  min-height: 0;
  overflow-x: hidden;
  overflow-y: auto;
  overscroll-behavior: contain;
  -webkit-overflow-scrolling: touch;
  scrollbar-gutter: stable;
  scrollbar-width: thin;
  scrollbar-color: rgba(71, 85, 105, 0.78) rgba(148, 163, 184, 0.22);
}

/* Редактор / просмотр / исходник: doc-body-grid уже на всю ширину — без второго бокового inset */
.doc-body-main .doc-slab-content:has(> .doc-slab-main > .editor-surface:not(.hidden)) {
  padding: 0;
  --doc-slab-content-inline-inset: 0px;
}

.doc-slab-content:has(> .doc-slab-main > .node-overview:not(.hidden)),
.doc-slab-content:has(> .doc-slab-main > .workspace-scroll-host > .node-overview:not(.hidden)),
.doc-slab-content:has(> .doc-slab-main > .topic-schema-panel:not(.hidden)) {
  padding: 12px var(--doc-content-gutter, 16px);
}

.doc-body-grid:has(.node-overview:not(.hidden)) {
  border-bottom: 0;
}

.doc-aside-expand-btn {
  position: absolute;
  top: 10px;
  right: 4px;
  z-index: 3;
  width: 26px;
  height: 26px;
  border: 1px solid rgba(148, 163, 184, 0.35);
  border-right: 0;
  border-radius: 7px 0 0 7px;
  background: #fff;
  cursor: pointer;
  box-shadow: -2px 0 8px rgba(15, 23, 42, 0.06);
  transition: border-color 0.15s ease, color 0.15s ease, background 0.15s ease;
}

.doc-outline-empty {
  margin: 0;
  padding: 8px 6px;
  font-size: 11px;
  line-height: 1.45;
  color: #94a3b8;
  text-align: center;
}

.doc-outline-list {
  list-style: none;
  margin: 0;
  padding: 0;
  display: flex;
  flex-direction: column;
  gap: 2px;
}

.doc-outline-item {
  margin: 0;
}

.doc-outline-link {
  width: 100%;
  display: block;
  padding: 5px 8px;
  border: 0;
  border-radius: 6px;
  background: transparent;
  font: inherit;
  font-size: 11px;
  line-height: 1.35;
  font-weight: 500;
  color: #475569;
  text-align: left;
  cursor: pointer;
  transition: background 0.12s ease, color 0.12s ease;
  position: relative;
}

.doc-outline-link::before {
  content: "";
  position: absolute;
  left: 0;
  top: 4px;
  bottom: 4px;
  width: 2px;
  border-radius: 2px;
  background: transparent;
}

.doc-outline-link[data-level="1"] {
  font-weight: 600;
  color: #1e293b;
}

.doc-outline-link[data-level="1"]::before {
  background: #6366f1;
}

.doc-outline-link[data-level="2"] {
  padding-left: 12px;
}

.doc-outline-link[data-level="2"]::before {
  left: 4px;
  background: #3b82f6;
}

.doc-outline-link[data-level="3"] {
  padding-left: 18px;
  font-weight: 400;
}

.doc-outline-link[data-level="3"]::before {
  left: 10px;
  background: #60a5fa;
}

.doc-outline-link[data-level="4"] {
  padding-left: 24px;
  font-size: 10px;
  font-weight: 400;
}

.doc-outline-link[data-level="4"]::before {
  left: 16px;
  background: #93c5fd;
}

.doc-outline-link[data-level="5"] {
  padding-left: 30px;
  font-size: 10px;
  font-weight: 400;
  color: #64748b;
}

.doc-outline-link[data-level="6"] {
  padding-left: 36px;
  font-size: 10px;
  font-weight: 400;
  color: #64748b;
}

.doc-outline-link:hover {
  background: rgba(59, 130, 246, 0.08);
  color: #1d4ed8;
}

.doc-outline-link:focus-visible {
  outline: none;
  box-shadow: 0 0 0 2px rgba(59, 130, 246, 0.2);
}

.doc-blocks-content {
  display: flex;
  flex-direction: column;
  gap: 14px;
}

.doc-blocks-group {
  display: flex;
  flex-direction: column;
  gap: 6px;
}

.doc-blocks-group-title {
  margin: 0;
  font-size: 10px;
  font-weight: 700;
  letter-spacing: 0.06em;
  text-transform: uppercase;
  color: #94a3b8;
}

.doc-blocks-list {
  display: flex;
  flex-direction: column;
  gap: 4px;
  margin: 0;
  padding: 0;
  list-style: none;
}

.doc-block-btn {
  width: 100%;
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  gap: 4px;
  padding: 7px 9px;
  border: 1px solid rgba(148, 163, 184, 0.32);
  border-radius: 8px;
  background: #fff;
  color: #334155;
  font: inherit;
  text-align: left;
  cursor: pointer;
  transition:
    border-color 0.15s ease,
    background 0.15s ease,
    box-shadow 0.15s ease;
}

.doc-block-btn:hover {
  border-color: #93c5fd;
  background: #f8fbff;
  box-shadow: 0 1px 0 rgba(255, 255, 255, 0.9) inset;
}

.doc-block-btn:focus-visible {
  outline: none;
  box-shadow: 0 0 0 2px rgba(59, 130, 246, 0.24);
}

.doc-block-btn-head {
  display: flex;
  align-items: center;
  gap: 8px;
  width: 100%;
  min-width: 0;
}

.doc-block-btn-icon {
  flex-shrink: 0;
  width: 1.25rem;
  font-size: 15px;
  line-height: 1;
  text-align: center;
}

/* Маркеры: цветные бейджи иконок (как study-markers .type-icon) */
.doc-block-btn .type-icon,
.file-content-preview .md-marker-block-icon.type-icon {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 1.5rem;
  height: 1.5rem;
  border-radius: 6px;
  font-size: 0.85rem;
  font-weight: 700;
  line-height: 1;
  flex-shrink: 0;
}

.doc-block-btn .type-moe-ideya,
.file-content-preview .type-moe-ideya {
  background: #064e3b;
  color: #6ee7b7;
}

.doc-block-btn .type-moe-vazhno,
.file-content-preview .type-moe-vazhno {
  background: #7f1d1d;
  color: #fca5a5;
}

.doc-block-btn .type-moe-zametka,
.file-content-preview .type-moe-zametka {
  background: #1e3a5f;
  color: #93c5fd;
}

.doc-block-btn .type-moe-agent-note,
.file-content-preview .type-moe-agent-note {
  background: #134e4a;
  color: #5eead4;
}

.doc-block-btn .type-moe-todo,
.file-content-preview .type-moe-todo {
  background: #1e293b;
  color: #e2e8f0;
}

.doc-block-btn .type-moe-vopros,
.file-content-preview .type-moe-vopros {
  background: #2e1065;
  color: #c4b5fd;
}

.doc-block-btn .type-moe-oshibka,
.file-content-preview .type-moe-oshibka {
  background: #450a0a;
  color: #f87171;
}

.doc-block-btn .type-moe-termin,
.file-content-preview .type-moe-termin {
  background: #4a044e;
  color: #f0abfc;
}

.doc-block-btn .type-moe-povtorit,
.file-content-preview .type-moe-povtorit {
  background: #422006;
  color: #fcd34d;
}

.doc-block-btn .type-moe-stiker,
.file-content-preview .type-moe-stiker {
  background: #713f12;
  color: #fde68a;
}

.doc-block-btn-label {
  font-size: 11px;
  font-weight: 600;
  line-height: 1.25;
  color: #1e293b;
}

.doc-block-btn-desc {
  font-size: 10px;
  line-height: 1.35;
  color: #64748b;
}

.doc-blocks-empty {
  margin: 0;
  padding: 8px 6px;
  font-size: 11px;
  line-height: 1.45;
  color: #94a3b8;
  text-align: center;
}

.doc-links-content {
  display: flex;
  flex-direction: column;
  gap: 8px;
}

.doc-links-results-summary {
  margin: 0 0 2px;
  padding: 0 2px;
  font-size: 10px;
  font-weight: 600;
  line-height: 1.4;
  color: #6366f1;
}

.doc-links-accordion {
  border: 1px solid rgba(148, 163, 184, 0.28);
  border-radius: 10px;
  background: #fff;
  overflow: hidden;
}

.doc-links-accordion[open] {
  box-shadow: 0 1px 2px rgba(15, 23, 42, 0.04);
}

.doc-links-accordion-summary {
  display: flex;
  align-items: flex-start;
  gap: 8px;
  padding: 8px 10px;
  cursor: pointer;
  list-style: none;
  user-select: none;
  background: rgba(248, 250, 252, 0.92);
  border-bottom: 1px solid transparent;
}

.doc-links-accordion-summary::-webkit-details-marker {
  display: none;
}

.doc-links-accordion[open] > .doc-links-accordion-summary {
  border-bottom-color: rgba(148, 163, 184, 0.24);
}

.doc-links-accordion-summary:hover {
  background: rgba(241, 245, 249, 0.98);
}

.doc-links-accordion-icon {
  flex: 0 0 auto;
  font-size: 13px;
  line-height: 1.2;
  margin-top: 1px;
}

.doc-links-accordion-summary-main {
  flex: 1 1 auto;
  min-width: 0;
  display: flex;
  flex-direction: column;
  gap: 2px;
}

.doc-links-accordion-title {
  font-size: 11px;
  font-weight: 700;
  line-height: 1.3;
  color: #334155;
}

.doc-links-accordion-hint {
  font-size: 10px;
  line-height: 1.35;
  color: #64748b;
  word-break: break-word;
}

.doc-links-accordion-count {
  flex: 0 0 auto;
  align-self: flex-start;
  margin-top: 1px;
  font-size: 9px;
  font-weight: 700;
  line-height: 1.2;
  color: #64748b;
  background: rgba(148, 163, 184, 0.16);
  border-radius: 999px;
  padding: 2px 7px;
}

.doc-links-accordion[open] > .doc-links-accordion-summary .doc-links-accordion-count {
  color: #4f46e5;
  background: rgba(99, 102, 241, 0.12);
}

.doc-links-accordion-summary::after {
  content: "▸";
  flex: 0 0 auto;
  align-self: center;
  font-size: 10px;
  line-height: 1;
  color: #94a3b8;
  transition: transform 0.15s ease;
}

.doc-links-accordion[open] > .doc-links-accordion-summary::after {
  transform: rotate(90deg);
  color: #6366f1;
}

.doc-links-accordion-body {
  display: flex;
  flex-direction: column;
  gap: 4px;
  padding: 6px;
  max-height: min(320px, 42vh);
  overflow: auto;
}

.doc-links-accordion-body .doc-links-empty {
  padding: 6px 4px;
  text-align: left;
}

.doc-links-search-wrap {
  position: sticky;
  top: 0;
  z-index: 2;
  padding: 0 0 8px;
  background: linear-gradient(180deg, #fff 78%, rgba(255, 255, 255, 0));
}

.doc-links-search {
  width: 100%;
  box-sizing: border-box;
  padding: 7px 10px;
  border: 1px solid rgba(148, 163, 184, 0.45);
  border-radius: 8px;
  background: #fff;
  color: #1e293b;
  font: inherit;
  font-size: 12px;
}

.doc-links-search:focus {
  outline: none;
  border-color: #818cf8;
  box-shadow: 0 0 0 2px rgba(99, 102, 241, 0.18);
}

.doc-links-search:disabled {
  opacity: 0.55;
  cursor: not-allowed;
  background: #f8fafc;
}

.doc-links-search-hint {
  margin: 0;
  font-size: 10px;
  line-height: 1.4;
  color: #94a3b8;
}

.doc-links-group {
  display: flex;
  flex-direction: column;
  gap: 6px;
}

.doc-links-group-title {
  margin: 0;
  font-size: 10px;
  font-weight: 700;
  letter-spacing: 0.06em;
  text-transform: uppercase;
  color: #94a3b8;
}

.doc-links-group-hint {
  margin: 0;
  font-size: 10px;
  line-height: 1.35;
  color: #64748b;
}

.doc-links-list {
  display: flex;
  flex-direction: column;
  gap: 4px;
  margin: 0;
  padding: 0;
  list-style: none;
}

.doc-link-btn {
  width: 100%;
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  gap: 4px;
  padding: 7px 9px;
  border: 1px solid rgba(148, 163, 184, 0.32);
  border-radius: 8px;
  background: #fff;
  color: #334155;
  font: inherit;
  text-align: left;
  cursor: grab;
  transition:
    border-color 0.15s ease,
    background 0.15s ease,
    box-shadow 0.15s ease;
}

.doc-link-btn:hover {
  border-color: #a5b4fc;
  background: #f5f7ff;
  box-shadow: 0 1px 0 rgba(255, 255, 255, 0.9) inset;
}

.doc-link-btn:focus-visible {
  outline: none;
  box-shadow: 0 0 0 2px rgba(99, 102, 241, 0.24);
}

.doc-link-btn.is-dragging-menu-link {
  opacity: 0.55;
  cursor: grabbing;
}

.doc-link-btn-head {
  display: none;
}

.doc-link-btn-kind {
  display: none;
}

.doc-link-btn-file {
  display: none;
}

.doc-link-btn-label {
  display: none;
}

.doc-link-btn-path {
  display: none;
}

.doc-link-btn-location {
  display: none;
}

.doc-link-btn-title {
  font-size: 12px;
  font-weight: 600;
  line-height: 1.3;
  color: #0f172a;
}

.doc-link-btn-meta {
  font-size: 10px;
  line-height: 1.35;
  color: #64748b;
}

.doc-link-btn-insert {
  font-size: 10px;
  line-height: 1.35;
  font-family: ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace;
  color: #6366f1;
}

.doc-link-btn-snippet {
  display: none;
}

.doc-links-empty {
  margin: 0;
  padding: 8px 6px;
  font-size: 11px;
  line-height: 1.45;
  color: #94a3b8;
  text-align: center;
}

.awn-wysiwyg-link-popup.toastui-editor-popup-add-link {
  width: 420px;
  max-width: calc(100vw - 24px);
}

.awn-wysiwyg-link-popup-extra {
  display: flex;
  flex-direction: column;
  gap: 6px;
  margin: 10px 0 12px;
  padding-top: 10px;
  border-top: 1px solid rgba(148, 163, 184, 0.28);
}

.awn-wysiwyg-link-search-label {
  margin: 0;
  font-size: 11px;
  font-weight: 600;
  color: #64748b;
}

.awn-wysiwyg-link-search {
  width: 100%;
  box-sizing: border-box;
  padding: 6px 8px;
  border: 1px solid #e1e3e9;
  border-radius: 4px;
  font: inherit;
  font-size: 12px;
}

.awn-wysiwyg-link-search:focus {
  outline: none;
  border-color: #818cf8;
  box-shadow: 0 0 0 2px rgba(99, 102, 241, 0.16);
}

.awn-wysiwyg-link-picker {
  display: flex;
  flex-direction: column;
  gap: 3px;
  max-height: 140px;
  overflow: auto;
  padding: 2px 0;
}

.awn-wysiwyg-link-picker-item {
  display: block;
  width: 100%;
  box-sizing: border-box;
  padding: 5px 8px;
  border: 1px solid rgba(148, 163, 184, 0.28);
  border-radius: 6px;
  background: #f8fafc;
  color: #334155;
  font: inherit;
  font-size: 11px;
  text-align: left;
  cursor: pointer;
}

.awn-wysiwyg-link-picker-item:hover {
  border-color: #a5b4fc;
  background: #eef2ff;
}

.awn-wysiwyg-link-picker-empty {
  padding: 8px 4px;
  font-size: 11px;
  color: #94a3b8;
  text-align: center;
}

.awn-wysiwyg-link-preview {
  display: block;
  padding: 6px 8px;
  border-radius: 6px;
  background: #f1f5f9;
  color: #4338ca;
  font-size: 10px;
  line-height: 1.4;
  word-break: break-word;
  white-space: pre-wrap;
}

.awn-wysiwyg-link-hint {
  margin: 0;
  font-size: 10px;
  line-height: 1.35;
  color: #94a3b8;
}

.doc-slab {
  display: flex;
  flex-direction: column;
  gap: 6px;
  min-width: 0;
  padding: 0;
  margin: 0;
  border: 0;
  border-radius: 0;
  background: transparent;
  box-shadow: none;
}

.doc-slab-content {
  flex: 1;
  display: flex;
  flex-direction: column;
  min-height: 0;
  min-width: 0;
  overflow: hidden;
}

.doc-slab-content .doc-slab-main {
  position: relative;
  flex: 1;
  display: flex;
  flex-direction: column;
  min-height: 0;
  min-width: 0;
}

.doc-body-main .doc-slab-content:has(> .doc-slab-main > .node-overview:not(.hidden)),
.doc-body-main .doc-slab-content:has(> .doc-slab-main > .workspace-scroll-host > .node-overview:not(.hidden)),
.doc-body-main .doc-slab-content:has(> .doc-slab-main > .topic-schema-panel:not(.hidden)) {
  overflow-x: hidden;
  overflow-y: auto;
}

.content-loading {
  display: none !important;
  position: absolute;
  inset: 0;
  z-index: 12;
  align-items: stretch;
  justify-content: center;
  padding: 14px 16px 18px;
  box-sizing: border-box;
  pointer-events: none;
  background: rgba(255, 255, 255, 0.55);
}

.content-loading.hidden {
  display: none;
}

.content-loading-shell {
  width: 100%;
  max-width: none;
  min-height: 0;
  flex: 1;
  display: flex;
  align-items: flex-start;
  justify-content: center;
}

.content-loading[data-variant="default"] .content-loading-shell,
.content-loading[data-variant="editor"] .content-loading-shell {
  align-items: center;
}

.content-loading-default,
.content-loading-editor {
  width: 100%;
  max-width: 420px;
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 14px;
}

.content-loading-editor {
  align-items: stretch;
  max-width: 560px;
  padding: 8px 4px 0;
}

.content-loading-orbit {
  position: relative;
  width: 44px;
  height: 44px;
}

.content-loading-orbit-ring {
  position: absolute;
  inset: 0;
  border: 2px solid rgba(148, 163, 184, 0.35);
  border-top-color: var(--accent);
  border-radius: 50%;
  animation: content-loading-spin 0.75s linear infinite;
}

.content-loading-orbit-core {
  position: absolute;
  inset: 11px;
  border-radius: 50%;
  background: linear-gradient(135deg, rgba(59, 130, 246, 0.35), rgba(99, 102, 241, 0.22));
  animation: content-loading-pulse 1.4s ease-in-out infinite;
}

.content-loading-text {
  margin: 0;
  font-size: 13px;
  line-height: 1.4;
  color: var(--muted);
  text-align: center;
}

.content-loading-nav {
  width: 100%;
  padding: 6px 6px 0;
  box-sizing: border-box;
}

.content-loading-nav-hero {
  display: flex;
  gap: 18px;
  align-items: flex-start;
  margin-bottom: 22px;
}

.content-loading-nav-thumb {
  flex: 0 0 120px;
  width: 120px;
  height: 120px;
  border-radius: 10px;
}

.content-loading-nav-head {
  flex: 1;
  min-width: 0;
  display: flex;
  flex-direction: column;
  gap: 10px;
  padding-top: 6px;
}

.content-loading-nav-title {
  height: 28px;
  width: min(280px, 72%);
  border-radius: 8px;
}

.content-loading-nav-meta {
  height: 14px;
  width: min(220px, 55%);
  border-radius: 6px;
}

.content-loading-nav-meta.is-short {
  width: min(160px, 40%);
}

.content-loading-nav-slots {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
  margin-bottom: 20px;
}

.content-loading-nav-slot {
  height: 30px;
  width: 108px;
  border-radius: 999px;
}

.content-loading-nav-panels {
  display: flex;
  flex-direction: column;
  gap: 12px;
}

.content-loading-nav-panel {
  height: 88px;
  border-radius: 10px;
}

.content-loading-nav-panel.is-compact {
  height: 56px;
  width: 72%;
}

.content-loading-editor-line {
  height: 14px;
  width: 100%;
  border-radius: 6px;
}

.content-loading-editor-line.is-wide {
  width: 92%;
  height: 18px;
}

.content-loading-editor-line.is-medium {
  width: 78%;
}

.content-loading-editor-line.is-short {
  width: 46%;
}

.content-loading-shimmer {
  position: relative;
  overflow: hidden;
  background: rgba(226, 232, 240, 0.88);
}

.content-loading-shimmer::after {
  content: "";
  position: absolute;
  inset: 0;
  transform: translateX(-100%);
  background: linear-gradient(
    90deg,
    transparent 0%,
    rgba(255, 255, 255, 0.55) 45%,
    rgba(255, 255, 255, 0.85) 50%,
    rgba(255, 255, 255, 0.55) 55%,
    transparent 100%
  );
  animation: content-loading-shimmer 1.35s ease-in-out infinite;
}

.content-loading-nav-slot:nth-child(2)::after {
  animation-delay: 0.12s;
}

.content-loading-nav-slot:nth-child(3)::after {
  animation-delay: 0.24s;
}

.content-loading-nav-slot:nth-child(4)::after {
  animation-delay: 0.36s;
}

.content-loading-nav-slot:nth-child(5)::after {
  animation-delay: 0.48s;
}

.content-loading-nav-panel:nth-child(2)::after {
  animation-delay: 0.18s;
}

.content-loading-nav-panel:nth-child(3)::after {
  animation-delay: 0.32s;
}

.content-loading-editor-line:nth-child(2)::after {
  animation-delay: 0.08s;
}

.content-loading-editor-line:nth-child(3)::after {
  animation-delay: 0.16s;
}

.content-loading-editor-line:nth-child(4)::after {
  animation-delay: 0.24s;
}

.content-loading-editor-line:nth-child(5)::after {
  animation-delay: 0.32s;
}

.content-loading-editor-line:nth-child(6)::after {
  animation-delay: 0.4s;
}

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

@keyframes content-loading-pulse {
  0%,
  100% {
    transform: scale(0.92);
    opacity: 0.65;
  }
  50% {
    transform: scale(1);
    opacity: 1;
  }
}

@keyframes content-loading-shimmer {
  100% {
    transform: translateX(100%);
  }
}

.doc-slab-label {
  margin: 0;
  font-size: 11px;
  font-weight: 700;
  letter-spacing: 0.06em;
  text-transform: uppercase;
  color: var(--muted);
}

.doc-slab-path {
  flex-shrink: 0;
  display: flex;
  flex-direction: column;
  gap: 0;
  align-self: stretch;
  width: auto;
  margin: -12px -16px 0;
  padding: 0;
  border: 0;
  border-bottom: 1px solid var(--border);
  border-radius: 0;
  background: var(--panel);
  box-sizing: border-box;
}

.workspace-path-crumbs-block {
  display: block;
  width: 100%;
  min-width: 0;
  flex-shrink: 0;
  margin: 0;
  padding: 10px 16px;
  border-bottom: 1px solid var(--border);
  box-sizing: border-box;
}

.workspace-path-crumbs-row {
  display: flex;
  align-items: center;
  gap: 10px;
  width: 100%;
  min-width: 0;
}

.workspace-path-crumbs-row .breadcrumbs {
  flex: 1 1 auto;
  min-width: 0;
  width: auto;
  max-width: 100%;
}

.workspace-path-crumbs-actions {
  display: inline-flex;
  align-items: center;
  gap: 6px;
  flex: 0 0 auto;
  margin-left: auto;
}

.workspace-path-crumbs-actions .workspace-gdrive-sync-wrap {
  order: 5;
}

.workspace-path-crumbs-actions #workspace-links-menu-wrap {
  order: 10;
}

.workspace-path-crumbs-actions #folder-browse-upload-input {
  order: 15;
}

.workspace-path-crumbs-actions #folder-browse-upload-btn {
  order: 20;
}

.workspace-path-crumbs-actions #workspace-print-btn {
  order: 30;
}

.workspace-path-crumbs-actions #workspace-reveal-folder-btn {
  order: 40;
}

.workspace-path-crumbs-actions #workspace-refresh-btn {
  order: 50;
}

.workspace-path-crumbs-actions #folder-browse-file-rename-btn {
  order: 55;
}

.workspace-path-crumbs-actions #folder-browse-delete-selected-btn {
  order: 60;
  width: auto;
  min-width: 28px;
  padding: 0 6px;
  gap: 4px;
}

.workspace-path-crumbs-actions .workspace-reveal-folder-btn,
.workspace-path-crumbs-actions .workspace-refresh-btn,
.workspace-path-crumbs-actions .folder-browse-upload-btn,
.workspace-path-crumbs-actions .folder-browse-file-rename-btn,
.workspace-path-crumbs-actions .workspace-links-menu-btn,
.workspace-path-crumbs-actions .workspace-print-btn,
.workspace-path-crumbs-actions .workspace-gdrive-sync-btn {
  width: 28px;
  min-width: 28px;
  height: 28px;
  padding: 0;
  gap: 0;
  justify-content: center;
}

.workspace-gdrive-sync-wrap {
  display: inline-flex;
  flex: 0 0 auto;
  align-items: center;
}

.workspace-gdrive-sync-btn {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  flex: 0 0 auto;
  width: 28px;
  min-width: 28px;
  height: 28px;
  margin: 0;
  padding: 0;
  border: 1px solid rgba(66, 133, 244, 0.28);
  border-radius: 8px;
  background:
    linear-gradient(135deg, rgba(66, 133, 244, 0.08) 0%, rgba(52, 168, 83, 0.06) 45%, rgba(251, 188, 5, 0.07) 100%),
    #fff;
  color: #1e3a5f;
  cursor: not-allowed;
  box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.85);
  opacity: 0.72;
}

.workspace-gdrive-sync-btn-icon {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  line-height: 0;
}

.workspace-gdrive-sync-btn-icon svg {
  width: 15px;
  height: 15px;
}

.workspace-gdrive-sync-btn:disabled {
  opacity: 0.72;
  /* Keep hover so the wrap/title tooltip can appear */
  pointer-events: none;
}

.workspace-gdrive-sync-btn.hidden {
  display: none;
}

.workspace-share-link-btn,
.workspace-links-menu-btn {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 28px;
  min-width: 28px;
  height: 28px;
  margin: 0;
  padding: 0;
  border: 1px solid #cbd5e1;
  border-radius: 8px;
  background: #fff;
  color: #374151;
  font: inherit;
  line-height: 1;
  cursor: pointer;
  flex-shrink: 0;
  transition: background 0.15s ease, border-color 0.15s ease, color 0.15s ease, box-shadow 0.15s ease;
}

.workspace-share-link-btn:hover:not(:disabled),
.workspace-share-link-btn:focus-visible:not(:disabled),
.workspace-links-menu-btn:hover:not(:disabled),
.workspace-links-menu-btn:focus-visible:not(:disabled) {
  border-color: #93c5fd;
  background: #eff6ff;
  color: #1e40af;
  outline: none;
}

.workspace-share-link-btn.is-active,
.workspace-links-menu-btn.is-active {
  border-color: #60a5fa;
  background: #dbeafe;
  color: #1d4ed8;
  box-shadow: inset 0 0 0 1px rgba(37, 99, 235, 0.18);
}

.workspace-links-menu-btn.has-short-link:not(.is-active):not(:disabled) {
  border-color: #a78bfa;
  background: #f3e8ff;
  color: #6d28d9;
  box-shadow: inset 0 0 0 1px rgba(124, 58, 237, 0.22);
}

.workspace-links-menu-btn.has-short-link:not(.is-active):not(:disabled):hover,
.workspace-links-menu-btn.has-short-link:not(.is-active):not(:disabled):focus-visible {
  border-color: #8b5cf6;
  background: #ede9fe;
  color: #5b21b6;
}

.workspace-share-link-btn:disabled,
.workspace-links-menu-btn:disabled {
  opacity: 0.45;
  cursor: not-allowed;
  pointer-events: none;
}

.workspace-share-link-btn.hidden,
.workspace-links-menu-btn.hidden {
  display: none;
}

.workspace-links-icon {
  width: 18px;
  height: 18px;
  flex-shrink: 0;
  display: block;
}

.workspace-print-btn {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 28px;
  min-width: 28px;
  height: 28px;
  padding: 0;
  border: 1px solid #cbd5e1;
  border-radius: 8px;
  background: #fff;
  color: #374151;
  font: inherit;
  line-height: 1;
  cursor: pointer;
  flex-shrink: 0;
  transition: background 0.15s ease, border-color 0.15s ease, color 0.15s ease, box-shadow 0.15s ease;
}

.workspace-print-btn:hover:not(:disabled),
.workspace-print-btn:focus-visible:not(:disabled) {
  border-color: #93c5fd;
  background: #eff6ff;
  color: #1e40af;
  outline: none;
}

.workspace-print-btn.is-active {
  border-color: #60a5fa;
  background: #dbeafe;
  color: #1d4ed8;
  box-shadow: inset 0 0 0 1px rgba(37, 99, 235, 0.18);
}

.workspace-print-btn:disabled {
  opacity: 0.45;
  cursor: not-allowed;
  pointer-events: none;
}

.workspace-print-icon {
  width: 18px;
  height: 18px;
  flex-shrink: 0;
  display: block;
}

.workspace-print-btn.hidden {
  display: none;
}

.workspace-links-menu-wrap {
  position: relative;
  flex: 0 0 auto;
}

.workspace-links-menu-wrap.hidden {
  display: none;
}

.workspace-links-menu-popover {
  position: fixed;
  z-index: 1000;
  min-width: 280px;
  max-width: min(360px, calc(100vw - 24px));
  padding: 8px;
  border: 1px solid var(--border);
  border-radius: 10px;
  background: var(--panel);
  box-shadow: 0 12px 28px rgba(15, 23, 42, 0.14);
}

.workspace-links-menu-group + .workspace-links-menu-group {
  margin-top: 8px;
  padding-top: 8px;
  border-top: 1px solid rgba(15, 23, 42, 0.08);
}

.workspace-links-menu-group-title {
  margin: 0 0 6px;
  padding: 0 6px;
  font-size: 11px;
  font-weight: 700;
  letter-spacing: 0.04em;
  text-transform: uppercase;
  color: rgba(30, 58, 95, 0.72);
}

.workspace-links-menu-popover.hidden {
  display: none;
}

.workspace-links-menu-list {
  margin: 0;
  padding: 0;
  list-style: none;
}

.workspace-links-menu-item {
  display: block;
  width: 100%;
  padding: 8px 10px;
  border: 0;
  border-radius: 7px;
  background: transparent;
  color: var(--text);
  font: inherit;
  font-size: 12px;
  line-height: 1.35;
  text-align: left;
  cursor: pointer;
  transition: background 0.12s ease, color 0.12s ease;
}

.workspace-links-menu-item:hover:not(:disabled),
.workspace-links-menu-item:focus-visible:not(:disabled) {
  background: #eff6ff;
  color: #1d4ed8;
  outline: none;
}

.workspace-links-menu-item:disabled {
  opacity: 0.45;
  cursor: not-allowed;
}

.workspace-links-menu-item--danger:hover:not(:disabled),
.workspace-links-menu-item--danger:focus-visible:not(:disabled) {
  background: #fef2f2;
  color: #b91c1c;
}

.workspace-path-toolbar-block {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 8px;
  width: 100%;
  min-width: 0;
  flex-shrink: 0;
  padding: 8px 16px 9px;
  box-sizing: border-box;
}

.workspace-path-toolbar-block.hidden {
  display: none;
}

.workspace-path-toolbar-block .doc-actions {
  flex: 1 1 auto;
  margin-left: auto;
  justify-content: flex-end;
}

.doc-slab-path.is-node-settings {
  background: #f8fafc;
}

.doc-slab-path.is-node-memory {
  background: #fef2f2;
}

.doc-slab-path.is-node-media {
  background: #ecfeff;
}

.doc-slab-path.is-node-scripts {
  background: #f8fafc;
}

.doc-slab-path.is-node-todo {
  background: #f0fdf4;
}

.doc-slab-path.is-node-references {
  background: #faf5ff;
}

.doc-slab-path.is-node-artefacts {
  background: #fffbeb;
}

.doc-slab-path.is-node-repository {
  background: #f0f9ff;
}

.doc-slab-path.is-node-overview {
  background: #f0fdf4;
}

.doc-slab-path.is-node-navigation {
  background: #f0fdfa;
}

.breadcrumb.node-navigation-crumb-prefix,
.breadcrumb.node-settings-crumb-prefix,
.breadcrumb.node-memory-crumb-prefix,
.breadcrumb.node-references-crumb-prefix,
.breadcrumb.node-artefacts-crumb-prefix,
.breadcrumb.node-inbox-crumb-prefix,
.breadcrumb.node-overview-crumb-prefix {
  font-weight: 700;
}

.breadcrumb.node-navigation-crumb-prefix {
  color: #0f766e;
}

.breadcrumb.node-settings-crumb-prefix {
  color: #1d4ed8;
}

.breadcrumb.node-memory-crumb-prefix {
  color: #b91c1c;
}

.breadcrumb.node-references-crumb-prefix {
  color: #7c3aed;
}

.breadcrumb.node-inbox-crumb-prefix {
  color: #ca8a04;
}

.breadcrumb.node-overview-crumb-prefix {
  color: #15803d;
}

.node-workspace-nav-controls {
  display: flex;
  align-items: center;
  gap: 6px;
  flex: 0 0 auto;
  min-width: 0;
}

.node-workspace-nav-controls.hidden {
  display: none;
}

.node-workspace-domain-controls,
.node-settings-path-controls,
.node-memory-path-controls,
.node-media-path-controls {
  display: flex;
  align-items: center;
  gap: 6px;
  flex: 0 0 auto;
}

.node-default-landing-btn {
  box-sizing: border-box;
  width: 28px;
  height: 28px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  flex: 0 0 28px;
  margin: 0;
  padding: 0;
  border: 1px solid var(--border);
  border-radius: 8px;
  background: var(--panel);
  color: #94a3b8;
  cursor: pointer;
  transition: background-color 0.15s ease, border-color 0.15s ease, color 0.15s ease;
}

.node-default-landing-icon {
  display: block;
  overflow: visible;
}

.node-default-landing-pin-head,
.node-default-landing-pin-stem {
  fill: none;
  stroke: currentColor;
  stroke-width: 1.75;
  stroke-linecap: round;
  stroke-linejoin: round;
}

.node-default-landing-pin-head {
  fill: currentColor;
  fill-opacity: 0.12;
}

.node-default-landing-btn:hover {
  background: var(--panel-soft);
  color: #475569;
  border-color: #cbd5e1;
}

.node-default-landing-btn.has-custom {
  color: #64748b;
  border-color: #cbd5e1;
}

.node-default-landing-btn.has-custom .node-default-landing-pin-head {
  fill-opacity: 0.22;
}

.node-default-landing-btn.is-active {
  color: #dc2626;
  border-color: #fca5a5;
  background: #fef2f2;
}

.node-default-landing-btn.is-active .node-default-landing-pin-head {
  fill-opacity: 0.32;
}

.node-default-landing-btn.is-active:hover {
  color: #b91c1c;
  border-color: #f87171;
  background: #fee2e2;
}

.node-workspace-close-btn,
.file-history-btn {
  box-sizing: border-box;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  flex: 0 0 auto;
  margin: 0;
  padding: 5px 10px;
  border: 1px solid rgba(148, 163, 184, 0.45);
  border-radius: 8px;
  background: #fff;
  color: #64748b;
  font: inherit;
  font-size: 11px;
  font-weight: 600;
  line-height: 1.3;
  white-space: nowrap;
  cursor: pointer;
  transition: background 0.15s ease, border-color 0.15s ease, color 0.15s ease;
}

.node-workspace-close-btn:hover,
.node-workspace-close-btn:focus-visible,
.file-history-btn:hover,
.file-history-btn:focus-visible {
  border-color: #cbd5e1;
  background: #f8fafc;
  color: #475569;
  outline: none;
}

.node-workspace-close-btn.hidden,
.file-history-btn.hidden {
  display: none;
}

.node-workspace-domain-controls.hidden,
.node-settings-path-controls.hidden,
.node-memory-path-controls.hidden,
.node-media-path-controls.hidden {
  display: none;
}

.workspace-path-toolbar-block .editor-view-cluster {
  flex-shrink: 0;
  align-self: center;
  box-sizing: border-box;
  height: 28px;
  min-height: 28px;
  max-height: 28px;
  border-color: rgba(148, 163, 184, 0.45);
  background: #fff;
}

.workspace-path-toolbar-block .editor-view-cluster .editor-view-btn,
.workspace-path-toolbar-block .editor-view-cluster .editor-cluster-btn {
  height: 100%;
  min-height: 0;
}

.workspace-path-toolbar-block .danger-btn {
  padding: 0 8px;
}

.workspace-path-toolbar-block .save-btn,
.workspace-path-toolbar-block .node-workspace-close-btn,
.workspace-path-toolbar-block .file-history-btn,
.workspace-path-toolbar-block .media-sidecar-back-btn,
.workspace-path-toolbar-block .external-memory-back-btn,
.workspace-path-toolbar-block .tabular-source-btn,
.workspace-path-toolbar-block .data-hub-bundle-edit-btn,
.workspace-path-toolbar-block .tabular-table-back-btn,
.workspace-path-toolbar-block .data-hub-bundle-back-btn {
  box-sizing: border-box;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  flex: 0 0 auto;
  height: 28px;
  min-height: 28px;
  padding: 5px 10px;
  font-size: 11px;
  font-weight: 600;
  line-height: 1.3;
  white-space: nowrap;
}

.workspace-path-toolbar-block .media-sidecar-back-btn,
.workspace-path-toolbar-block .external-memory-back-btn,
.workspace-path-toolbar-block .tabular-source-btn,
.workspace-path-toolbar-block .data-hub-bundle-edit-btn,
.workspace-path-toolbar-block .tabular-table-back-btn,
.workspace-path-toolbar-block .data-hub-bundle-back-btn {
  margin-right: 0;
  border: 1px solid rgba(148, 163, 184, 0.45);
  border-radius: 8px;
  background: #fff;
  color: #64748b;
}

.workspace-path-toolbar-block .media-sidecar-back-btn:hover,
.workspace-path-toolbar-block .media-sidecar-back-btn:focus-visible,
.workspace-path-toolbar-block .external-memory-back-btn:hover,
.workspace-path-toolbar-block .external-memory-back-btn:focus-visible,
.workspace-path-toolbar-block .tabular-source-btn:hover,
.workspace-path-toolbar-block .tabular-source-btn:focus-visible,
.workspace-path-toolbar-block .data-hub-bundle-edit-btn:hover,
.workspace-path-toolbar-block .data-hub-bundle-edit-btn:focus-visible,
.workspace-path-toolbar-block .tabular-table-back-btn:hover,
.workspace-path-toolbar-block .tabular-table-back-btn:focus-visible,
.workspace-path-toolbar-block .data-hub-bundle-back-btn:hover,
.workspace-path-toolbar-block .data-hub-bundle-back-btn:focus-visible {
  border-color: #cbd5e1;
  background: #f8fafc;
  color: #475569;
  outline: none;
}

.workspace-toolbar-labeled-btn {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 5px;
}

.workspace-toolbar-btn-icon {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 14px;
  height: 14px;
  flex-shrink: 0;
  line-height: 0;
}

.workspace-toolbar-btn-icon svg {
  width: 14px;
  height: 14px;
  display: block;
}

.workspace-toolbar-btn-label {
  line-height: 1.3;
}

.workspace-path-toolbar-block .danger-btn {
  min-width: 28px;
  padding: 0 6px;
  font-size: 14px;
  line-height: 1;
}

.workspace-path-toolbar-block .external-create-btn,
.workspace-path-toolbar-block .external-create-section-btn,
.workspace-path-toolbar-block .media-upload-btn {
  height: 28px;
  padding: 0 10px;
  font-size: 11px;
  font-weight: 600;
  line-height: 1.35;
  border-radius: 8px;
}

.workspace-path-toolbar-block .external-view-select,
.workspace-path-toolbar-block .mindmap-layout-select,
.workspace-path-toolbar-block .media-view-select {
  height: 28px;
  padding: 0 28px 0 10px;
  font-size: 11px;
  font-weight: 600;
  line-height: 1.35;
  border-radius: 8px;
  flex-shrink: 0;
}

.node-workspace-domain-select,
.node-navigation-elements-nav-view-select,
.node-navigation-elements-nav-slot-select,
.node-navigation-topic-overview-view-select,
.node-navigation-entry-view-select,
.node-settings-mode-select,
.document-context-meter-window-select,
.agent-select,
.agent-view-select {
  flex: 0 0 auto;
  max-width: min(240px, 42vw);
  height: 28px;
  padding: 5px 28px 5px 10px;
  border: 1px solid var(--border);
  border-radius: 8px;
  background-color: var(--panel);
  color: #1e293b;
  font-size: 11px;
  font-weight: 600;
  line-height: 1.35;
  cursor: pointer;
  appearance: none;
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 24 24' fill='none' stroke='%2364748b' stroke-width='2'%3E%3Cpath d='M6 9l6 6 6-6'/%3E%3C/svg%3E");
  background-repeat: no-repeat;
  background-position: right 8px center;
}

.agent-select:hover,
.agent-view-select:hover,
.node-workspace-domain-select:hover,
.node-navigation-elements-nav-view-select:hover,
.node-navigation-elements-nav-slot-select:hover:not(:disabled),
.node-navigation-topic-overview-view-select:hover,
.node-navigation-entry-view-select:hover,
.node-settings-mode-select:hover,
.document-context-meter-window-select:hover {
  border-color: #cbd5e1;
  background-color: #f8fafc;
}

.node-workspace-domain-select {
  max-width: min(180px, 36vw);
}

.node-navigation-elements-nav-view-select,
.node-navigation-elements-nav-slot-select,
.node-navigation-topic-overview-view-select {
  max-width: min(220px, 42vw);
}

.node-navigation-elements-nav-slot-select {
  max-width: min(160px, 34vw);
  opacity: 0.72;
  cursor: not-allowed;
}

.node-navigation-elements-nav-slot-select:disabled {
  color: #64748b;
  background-color: #f1f5f9;
}

.node-navigation-entry-view-select {
  max-width: min(140px, 30vw);
}

.node-navigation-empty {
  margin: 0;
  padding: 24px 16px;
  color: #64748b;
  font-size: 13px;
  text-align: center;
}

.node-navigation-hub {
  display: flex;
  flex-direction: column;
  gap: 20px;
  min-width: 0;
  max-width: 100%;
}

.node-navigation-hub--split {
  display: grid;
  grid-template-columns: minmax(0, 1fr) var(--sidebar-resize-bar-width, 28px) minmax(0, var(--nav-hub-rail-width, 300px));
  gap: 0;
  align-items: start;
  width: 100%;
  min-width: 0;
}

.node-navigation-hub--split > .node-navigation-hub-main {
  grid-column: 1;
  grid-row: 1;
  min-width: 0;
  width: 100%;
  justify-self: stretch;
}

.node-navigation-hub--split > .node-navigation-hub-rail-aside {
  grid-column: 2 / 4;
  grid-row: 1;
  display: grid;
  grid-template-columns: var(--sidebar-resize-bar-width, 28px) minmax(0, var(--nav-hub-rail-width, 300px));
  gap: 0;
  align-items: stretch;
  min-width: 0;
  --nav-rail-sticky-top: 0px;
  position: sticky;
  top: var(--nav-rail-sticky-top);
  align-self: start;
  z-index: 3;
  box-sizing: border-box;
  min-height: 0;
  height: var(
    --nav-rail-sticky-height,
    calc(100dvh - var(--nav-rail-sticky-top) - 12px)
  );
  max-height: var(
    --nav-rail-sticky-height,
    calc(100dvh - var(--nav-rail-sticky-top) - 12px)
  );
}

.node-navigation-hub--split > .node-navigation-hub-rail-aside > .node-navigation-hub-rail-resize-bar {
  position: relative;
  top: auto;
  align-self: stretch;
  height: auto;
  min-height: 0;
  max-height: none;
}

.node-navigation-hub--split > .node-navigation-hub-rail-aside > .node-navigation-hub-rail {
  position: relative;
  top: auto;
  align-self: stretch;
  height: auto !important;
  min-height: 0 !important;
  max-height: none !important;
}

.node-navigation-hub--split > .node-navigation-hub-rail-resize-bar {
  grid-column: 2;
  grid-row: 1;
}

.node-navigation-hub--split > .node-navigation-hub-rail {
  grid-column: 3;
  grid-row: 1;
  min-width: 0;
  width: 100%;
  max-width: var(--nav-hub-rail-width, 300px);
}

.node-navigation-hub--split > .node-navigation-hub-rail-aside > .node-navigation-hub-rail-resize-bar,
.node-navigation-hub--split > .node-navigation-hub-rail-aside > .node-navigation-hub-rail {
  grid-column: auto;
  grid-row: auto;
  max-width: none;
}

.node-navigation-hub--split.node-navigation-hub--rail-collapsed {
  grid-template-columns: minmax(0, 1fr) var(--sidebar-resize-bar-width, 28px);
}

.node-navigation-hub--split.node-navigation-hub--rail-collapsed > .node-navigation-hub-rail-aside {
  grid-column: 2;
  grid-template-columns: var(--sidebar-resize-bar-width, 28px);
}

.node-navigation-hub--split.node-navigation-hub--rail-collapsed .node-navigation-hub-rail {
  display: none;
}

.node-navigation-hub-main {
  min-width: 0;
  display: flex;
  flex-direction: column;
  gap: 20px;
}

.node-navigation-hub-main > * {
  min-width: 0;
  max-width: 100%;
}

.node-navigation-hub--split.node-navigation-hub--rail-collapsed .node-navigation-hub-main {
  padding-right: 12px;
}

.node-navigation-hub-rail-resize-bar {
  --nav-rail-sticky-top: 0px;
  position: sticky;
  top: var(--nav-rail-sticky-top);
  align-self: start;
  display: flex;
  align-items: center;
  justify-content: center;
  width: var(--sidebar-resize-bar-width, 28px);
  min-width: var(--sidebar-resize-bar-width, 28px);
  height: var(
    --nav-rail-sticky-height,
    calc(100dvh - var(--nav-rail-sticky-top) - 12px)
  );
  max-height: var(
    --nav-rail-sticky-height,
    calc(100dvh - var(--nav-rail-sticky-top) - 12px)
  );
  background: transparent;
  border: 0;
  z-index: 2;
}

.node-navigation-hub-rail-resize-bar::before {
  content: "";
  position: absolute;
  top: 0;
  bottom: 0;
  left: 50%;
  width: 1px;
  background: #cbd5e1;
  transform: translateX(-50%);
  pointer-events: none;
}

.node-navigation-hub-rail-toggle {
  position: relative;
  z-index: 1;
  flex: 0 0 auto;
  width: 22px;
  height: 36px;
  padding: 0;
  border: 1px solid #cbd5e1;
  border-radius: 6px;
  background: #fff;
  color: #475569;
  font-size: 16px;
  font-weight: 400;
  line-height: 1;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  cursor: pointer;
  box-shadow: 0 1px 4px rgba(15, 23, 42, 0.08);
  transition:
    border-color 0.15s ease,
    color 0.15s ease,
    background 0.15s ease,
    box-shadow 0.15s ease;
}

.node-navigation-hub-rail-toggle:hover,
.node-navigation-hub-rail-toggle:focus-visible {
  background: #f8fafc;
  border-color: #94a3b8;
  color: #1e293b;
  outline: none;
}

.node-navigation-hub--split .node-navigation-hub-main {
  padding-right: 12px;
  border-right: none;
}

.node-navigation-hub--split .node-navigation-hub-rail {
  --nav-rail-sticky-top: 0px;
  position: sticky;
  top: var(--nav-rail-sticky-top);
  align-self: start;
  padding: 0 0 8px 12px;
  height: var(
    --nav-rail-sticky-height,
    calc(100dvh - var(--nav-rail-sticky-top) - 12px)
  );
  min-height: var(
    --nav-rail-sticky-height,
    calc(100dvh - var(--nav-rail-sticky-top) - 12px)
  );
  max-height: var(
    --nav-rail-sticky-height,
    calc(100dvh - var(--nav-rail-sticky-top) - 12px)
  );
  box-sizing: border-box;
}

.node-navigation-hub-rail {
  overflow-x: clip;
  overflow-y: auto;
  padding: 2px 0 8px 0;
  min-width: 0;
  min-height: 0;
  display: flex;
  flex-direction: column;
  gap: 14px;
  overscroll-behavior: contain;
  -webkit-overflow-scrolling: touch;
}

.node-navigation-hub-rail-block-title {
  margin: 0 0 8px;
  font-size: 10px;
  font-weight: 800;
  letter-spacing: 0.08em;
  text-transform: uppercase;
  color: #64748b;
}

.node-navigation-hub-rail-block--shared-slot-notice {
  margin: 0;
  padding: 0 10px;
}

.node-navigation-hub-rail-shared-slot-notice {
  margin: 0;
  padding: 10px 12px;
  border-radius: 10px;
  border: 1px solid rgba(99, 102, 241, 0.22);
  background: rgba(238, 242, 255, 0.92);
  font-size: 11px;
  line-height: 1.45;
  color: #4338ca;
}

.node-navigation-hub-rail-flexible-slot-block {
  display: flex;
  flex-direction: column;
  gap: 8px;
}

.node-navigation-memory-card--flexible {
  gap: 4px;
}

.node-navigation-memory-card--flexible .node-navigation-memory-title-icon {
  font-size: 1em;
}

.node-navigation-hub-topic-nav-cluster {
  display: flex;
  flex-direction: column;
  gap: 8px;
  width: 100%;
  min-width: 0;
}

.node-navigation-hub-topic-nav-cluster > .node-navigation-workspace-counters--lite-index,
.node-navigation-hub-topic-nav-cluster > .node-navigation-elements-nav-accordion {
  margin: 0;
}

.node-navigation-hub-topic-nav-cluster
  > .node-navigation-workspace-counters--lite-index
  > .node-navigation-workspace-counter-topic-index-row.is-content-index {
  margin: 0;
}

.node-navigation-memory-flexible-subtitle {
  margin: 0;
  padding: 10px 12px;
  box-sizing: border-box;
  width: 100%;
  border-radius: 10px;
  border: 1px solid rgba(15, 118, 110, 0.28);
  background: rgba(240, 253, 250, 0.95);
  font-size: 11px;
  line-height: 1.45;
  color: #0f766e;
}

.node-navigation-rail-link-list {
  list-style: none;
  margin: 0;
  padding: 0;
  display: flex;
  flex-direction: column;
  gap: 2px;
}

.node-navigation-rail-link {
  width: 100%;
  display: flex;
  align-items: center;
  gap: 8px;
  padding: 7px 8px;
  border: 0;
  border-radius: 8px;
  background: transparent;
  font: inherit;
  font-size: 12px;
  line-height: 1.35;
  font-weight: 500;
  color: #334155;
  text-align: left;
  cursor: pointer;
  transition: background 0.12s ease, color 0.12s ease;
}

.node-navigation-rail-link:hover {
  background: #f1f5f9;
  color: #0f172a;
}

.node-navigation-rail-link.is-current {
  background: #eff6ff;
  color: #1d4ed8;
  font-weight: 600;
}

.node-navigation-rail-link-icon {
  flex: 0 0 auto;
  font-size: 13px;
}

.node-navigation-rail-link-label {
  min-width: 0;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.node-navigation-hub-rail-slots {
  display: flex;
  flex-direction: column;
  gap: 6px;
}

.node-navigation-hub-rail-slot {
  border: 1px solid #e2e8f0;
  border-radius: 10px;
  background: #fff;
  overflow: visible;
}

.node-navigation-hub-rail-slot.is-active-slot {
  border-color: #3b82f6;
  box-shadow: 0 0 0 1px rgba(59, 130, 246, 0.28);
  background: #eff6ff;
}

.node-navigation-hub-rail-slot.is-active-slot > .node-navigation-hub-rail-slot-summary {
  color: #1e40af;
}

.node-navigation-hub-rail-slot.is-active-slot.is-empty {
  opacity: 1;
}

.node-navigation-hub-rail-slot.is-empty {
  opacity: 0.72;
}

.node-navigation-hub-rail-slot.is-empty > .node-navigation-hub-rail-slot-summary {
  cursor: default;
}

.node-navigation-hub-rail-slot.is-filled {
  border-color: #bfdbfe;
  background: #ffffff;
}

.node-navigation-hub-rail-slot.is-filled > .node-navigation-hub-rail-slot-summary {
  color: #1e293b;
}

.node-navigation-hub-rail-slot.is-pending {
  border-color: #fde68a;
  background: #fffbeb;
}

.node-navigation-hub-rail-slot-summary {
  display: grid;
  grid-template-columns: auto minmax(0, 1fr) auto auto;
  align-items: center;
  gap: 8px;
  padding: 8px 10px;
  cursor: default;
  list-style: none;
  font-size: 11px;
  font-weight: 700;
  line-height: 1.35;
  letter-spacing: 0.04em;
  text-transform: uppercase;
  color: #64748b;
}

.node-navigation-hub-rail-slot-summary::-webkit-details-marker {
  display: none;
}

.node-navigation-hub-rail-slot-icon {
  font-size: 13px;
  text-transform: none;
  letter-spacing: 0;
}

.node-navigation-hub-rail-slot-icon--svg {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 16px;
  height: 16px;
  flex: 0 0 auto;
  color: #64748b;
  line-height: 0;
}

.node-navigation-hub-rail-slot-icon--svg svg {
  width: 14px;
  height: 14px;
  display: block;
}

.node-navigation-hub-rail-slot-label {
  min-width: 0;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.node-navigation-hub-rail-slot-label--clickable {
  cursor: pointer;
}

.node-navigation-hub-rail-slot-label--clickable:hover {
  color: #1d4ed8;
}

.node-navigation-hub-rail-slot-count {
  font-size: 11px;
  font-weight: 700;
  color: #64748b;
  font-variant-numeric: tabular-nums;
  min-width: 1.4em;
  text-align: center;
  text-transform: none;
  letter-spacing: 0;
}

.node-navigation-hub-rail-slot-count.is-filled {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-width: 22px;
  height: 20px;
  padding: 0 6px;
  border-radius: 999px;
  background: #dcfce7;
  color: #166534;
  border: 1px solid #bbf7d0;
  font-size: 11px;
  font-weight: 800;
  line-height: 1;
}

.node-navigation-hub-rail-slot-count.is-status-dot.is-empty-dot {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-width: 22px;
  height: 20px;
  padding: 0 6px;
  border-radius: 999px;
  background: #f1f5f9;
  color: #94a3b8;
  border: 1px solid #e2e8f0;
  font-size: 11px;
  font-weight: 800;
  line-height: 1;
  font-variant-numeric: tabular-nums;
}

.node-navigation-hub-rail-slot-count--flag {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-width: 22px;
  height: 20px;
  padding: 0;
  border: 0;
  background: transparent;
  font-size: inherit;
  font-weight: inherit;
  line-height: 0;
}

.node-navigation-hub-rail-slot-flag {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 22px;
  height: 22px;
  color: #94a3b8;
  line-height: 0;
}

.node-navigation-hub-rail-slot-flag svg {
  width: 18px;
  height: 18px;
  display: block;
}

.node-navigation-hub-rail-slot-count--flag.is-filled .node-navigation-hub-rail-slot-flag {
  color: #166534;
}

.node-navigation-hub-rail-slot-count--flag.is-empty .node-navigation-hub-rail-slot-flag {
  color: #94a3b8;
}

button.node-navigation-hub-rail-slot-summary {
  width: 100%;
  border: 0;
  background: transparent;
  text-align: left;
  font-family: inherit;
  cursor: pointer;
}

.node-navigation-hub-rail-slot--flat {
  border: 1px solid #e2e8f0;
  border-radius: 10px;
  background: #fff;
  overflow: hidden;
}

.node-navigation-hub-rail-slot--flat.is-active-slot {
  border-color: #3b82f6;
  background: #eff6ff;
  box-shadow: 0 0 0 1px rgba(59, 130, 246, 0.28);
}

.node-navigation-hub-rail-slot--flat.is-active-slot .node-navigation-hub-rail-slot-summary {
  color: #1e40af;
}

.node-navigation-hub-rail-slot--flat.is-active-slot.is-empty {
  opacity: 1;
}

.node-navigation-hub-rail-slot--flat.is-empty {
  opacity: 0.92;
}

.node-navigation-hub-rail-slot--flat.is-missing-folder {
  border-color: #fcd34d;
  background: #fffbeb;
}

.node-navigation-hub-rail-slot-missing-actions {
  padding: 0 10px 10px;
  border-top: 1px solid #fde68a;
}

.node-navigation-hub-rail-slot-missing-actions .entry-overview-create-slot-folder-btn {
  width: 100%;
}

.entry-overview-create-slot-folder-btn {
  font-size: 12px;
  padding: 5px 10px;
  white-space: nowrap;
  border: 1px solid #2563eb;
  background: #eff6ff;
  color: #1d4ed8;
  border-radius: 8px;
  cursor: pointer;
  font-weight: 600;
}

.entry-overview-create-slot-folder-btn:hover:not(:disabled) {
  background: #dbeafe;
  border-color: #1d4ed8;
}

.entry-overview-create-slot-folder-btn:disabled {
  background: #f3f4f6;
  border-color: #e5e7eb;
  color: #9ca3af;
  cursor: not-allowed;
  opacity: 1;
}

.node-navigation-hub-rail-slot-toggle-spacer {
  display: block;
  width: 24px;
  height: 24px;
}

.node-navigation-hub-rail-slot-open {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 24px;
  height: 24px;
  padding: 0;
  border: 1px solid #e2e8f0;
  border-radius: 6px;
  background: #f8fafc;
  color: #475569;
  font-size: 12px;
  line-height: 1;
  cursor: pointer;
  transition: border-color 0.15s ease, background 0.15s ease, color 0.15s ease;
}

.node-navigation-hub-rail-slot-toggle .nav-book-toc-folder-chevron {
  width: 7px;
  height: 7px;
  margin-top: -2px;
  transform: translateX(-1px) rotate(-45deg);
}

.node-navigation-hub-rail-slot-toggle.is-expanded .nav-book-toc-folder-chevron {
  transform: rotate(45deg);
  margin-top: -4px;
}

.node-navigation-hub-rail-slot-open:hover {
  border-color: #93c5fd;
  background: #eff6ff;
  color: #1d4ed8;
}

.node-navigation-hub-rail-slot-body {
  padding: 0 8px 8px;
  border-top: 1px solid #f1f5f9;
  min-width: 0;
  overflow: visible;
  background: transparent;
}

.node-navigation-hub-rail-slot-body .node-navigation-section-search {
  flex: none;
  width: 100%;
  max-width: none;
  min-width: 0;
  margin: 6px 0 4px;
  box-sizing: border-box;
}

.node-navigation-hub-rail-slot-body .node-navigation-section-search .menu-search-bar {
  width: 100%;
  max-width: 100%;
  min-height: 26px;
  padding: 0 8px;
  box-sizing: border-box;
}

.node-navigation-hub-rail-slot-body .node-navigation-section-search .menu-search-input {
  font-size: 12px;
  padding: 4px 0;
}

.node-navigation-hub-rail-slot-tree {
  min-width: 0;
  overflow: visible;
}

.node-navigation-hub-rail-slot-actions {
  display: flex;
  flex-wrap: wrap;
  gap: 6px;
  margin: 0 0 8px;
}

.node-navigation-hub-rail-slot-actions .entry-overview-create-slot-folder-btn,
.node-navigation-hub-rail-slot-actions .external-create-section-btn,
.node-navigation-hub-rail-slot-actions .external-create-btn,
.node-navigation-hub-rail-slot-actions .entry-overview-schema-btn,
.node-navigation-hub-rail-slot-actions .media-upload-btn,
.node-navigation-hub-rail-slot-actions .node-navigation-hub-rail-upload-btn {
  gap: 5px;
  min-height: 28px;
  padding: 4px 8px;
  font-size: 11px;
  line-height: 1.2;
}

.node-navigation-hub-rail-empty,
.node-navigation-hub-rail-bundle-hint {
  margin: 6px 2px 2px;
  font-size: 11px;
  line-height: 1.4;
  color: #94a3b8;
}

.node-navigation-hub-rail-assets-preview {
  margin: 6px 0 2px;
}

.node-navigation-hub-rail-assets-preview-item {
  display: grid;
  grid-template-columns: 40px minmax(0, 1fr);
  align-items: center;
  gap: 8px;
  width: 100%;
  padding: 6px 8px;
  border: 1px solid #e2e8f0;
  border-radius: 8px;
  background: #fff;
  text-align: left;
}

.node-navigation-hub-rail-assets-preview-item:hover {
  border-color: #93c5fd;
  background: #eff6ff;
}

.node-navigation-hub-rail-assets-preview-thumb {
  display: block;
  width: 40px;
  height: 40px;
  border-radius: 6px;
  overflow: hidden;
  background: #f1f5f9;
}

.node-navigation-hub-rail-assets-preview-image {
  display: block;
  width: 100%;
  height: 100%;
  object-fit: cover;
}

.node-navigation-hub-rail-bundle-preview {
  min-width: 0;
  overflow: hidden;
  background: #ffffff;
}

.node-navigation-hub-rail-bundle-preview-body {
  max-height: 280px;
  overflow-x: clip;
  overflow-y: auto;
  overscroll-behavior: contain;
  padding: 4px 2px;
  font-size: 11px;
  line-height: 1.4;
}

.node-navigation-hub-rail-bundle-preview--tabular .node-navigation-tabular {
  max-height: 240px;
  overflow: auto;
  font-size: 11px;
}

.node-navigation-hub-rail-slot--bundle .node-navigation-hub-rail-slot-body {
  padding: 0 6px 6px;
  background: transparent;
}

.node-navigation-hub-rail-slot--document .node-navigation-hub-rail-slot-body {
  padding: 0 8px 8px;
}

.node-navigation-hub-rail-document-outline {
  padding-top: 4px;
}

.node-navigation-rail-doc-outline-list {
  list-style: none;
  margin: 0;
  padding: 0;
  display: flex;
  flex-direction: column;
  gap: 2px;
}

.node-navigation-rail-doc-outline-link {
  position: relative;
  font-size: 11px;
  line-height: 1.35;
  font-weight: 500;
  padding-left: 16px;
}

.node-navigation-rail-doc-outline-link::before {
  content: "";
  position: absolute;
  left: 6px;
  top: 50%;
  width: 4px;
  height: 4px;
  margin-top: -2px;
  border-radius: 50%;
  background: #94a3b8;
  opacity: 0.85;
}

.node-navigation-rail-doc-outline-link.is-current {
  background: #eff6ff;
  color: #1d4ed8;
  font-weight: 600;
}

.node-navigation-rail-doc-outline-link.is-current::before {
  background: #2563eb;
  opacity: 1;
}

.node-navigation-rail-doc-outline-h1 .node-navigation-rail-doc-outline-link {
  font-weight: 700;
  padding-left: 16px;
}

.node-navigation-rail-doc-outline-h1 .node-navigation-rail-doc-outline-link::before {
  left: 5px;
  width: 5px;
  height: 5px;
  margin-top: -2.5px;
  background: #6366f1;
}

.node-navigation-rail-doc-outline-h2 .node-navigation-rail-doc-outline-link {
  padding-left: 22px;
}

.node-navigation-rail-doc-outline-h2 .node-navigation-rail-doc-outline-link::before {
  left: 11px;
  background: #3b82f6;
}

.node-navigation-rail-doc-outline-h3 .node-navigation-rail-doc-outline-link {
  padding-left: 28px;
}

.node-navigation-rail-doc-outline-h3 .node-navigation-rail-doc-outline-link::before {
  left: 17px;
  background: #60a5fa;
}

.node-navigation-rail-doc-outline-h4 .node-navigation-rail-doc-outline-link {
  padding-left: 34px;
  font-size: 10px;
}

.node-navigation-rail-doc-outline-h4 .node-navigation-rail-doc-outline-link::before {
  left: 23px;
  background: #93c5fd;
}

.node-navigation-rail-doc-outline-h5 .node-navigation-rail-doc-outline-link,
.node-navigation-rail-doc-outline-h6 .node-navigation-rail-doc-outline-link {
  padding-left: 40px;
  font-size: 10px;
  color: #64748b;
}

.node-navigation-rail-doc-outline-h5 .node-navigation-rail-doc-outline-link::before,
.node-navigation-rail-doc-outline-h6 .node-navigation-rail-doc-outline-link::before {
  left: 29px;
  background: #cbd5e1;
}

.node-navigation-hub-rail-slot--document {
  border-color: #dbeafe;
  background: #f8fbff;
}

.node-navigation-hub-rail-slot--document.is-empty {
  border-color: #e2e8f0;
  background: #f8fafc;
}

.node-navigation-hub-rail-slot--document.is-empty > .node-navigation-hub-rail-slot-summary {
  cursor: default;
  color: #94a3b8;
}

.node-navigation-hub--split
  .node-navigation-hub-rail:has(.node-navigation-hub-rail-slot--document[open]) {
  overflow: hidden;
}

.node-navigation-hub-rail:has(.node-navigation-hub-rail-slot--document[open])
  > .node-navigation-hub-rail-block--subsections {
  display: none;
}

.node-navigation-hub-rail:has(.node-navigation-hub-rail-slot--document[open])
  > .node-navigation-hub-rail-slots
  > .node-navigation-hub-rail-slot:not(.node-navigation-hub-rail-slot--document) {
  display: none;
}

.node-navigation-hub-rail:has(.node-navigation-hub-rail-slot--document[open])
  > .node-navigation-hub-rail-slots {
  flex: 1 1 auto;
  min-height: 0;
  display: flex;
  flex-direction: column;
  overflow: hidden;
}

.node-navigation-hub-rail:has(.node-navigation-hub-rail-slot--document[open])
  .node-navigation-hub-rail-slot--document[open] {
  flex: 1 1 auto;
  min-height: 0;
  height: 100%;
  display: flex;
  flex-direction: column;
  overflow: hidden;
}

.node-navigation-hub-rail:has(.node-navigation-hub-rail-slot--document[open])
  .node-navigation-hub-rail-slot--document[open]
  .node-navigation-hub-rail-slot-body {
  flex: 1 1 auto;
  min-height: 0;
  max-height: none;
  overflow-x: clip;
  overflow-y: auto;
  overscroll-behavior: contain;
  -webkit-overflow-scrolling: touch;
}

.nav-book-toc-tree--rail {
  --nav-toc-line: #dbe3ee;
  min-width: 0;
}

.nav-book-toc-tree--guide.nav-book-toc-tree--rail {
  --nav-toc-spine: 12px;
  --nav-toc-branch-pad: 10px;
}

.nav-book-toc-tree--rail .nav-book-toc-list--root {
  margin-left: 0;
  padding: 0 0 4px 0;
  border-left: 0;
}

.nav-book-toc-tree--rail .nav-book-toc-list--root > .nav-book-toc-folder--root {
  margin-left: 0;
}

.nav-book-toc-tree--rail .nav-book-toc-folder-head {
  min-height: 32px;
  padding-top: 2px;
  padding-bottom: 2px;
  grid-template-columns: 20px minmax(0, 1fr) auto;
}

.nav-book-toc-folder-head:has(.nav-book-toc-drag-handle) {
  grid-template-columns: 18px 20px minmax(0, 1fr) auto;
}

.nav-book-toc-tree--guide .nav-book-toc-folder-head:has(.nav-book-toc-drag-handle) {
  grid-template-columns: 18px 22px minmax(0, 1fr) auto;
}

.nav-book-toc-drag-handle {
  width: 18px;
  height: 22px;
  padding: 0;
  border: 0;
  border-radius: 4px;
  background: transparent;
  color: #94a3b8;
  font-size: 12px;
  line-height: 1;
  cursor: grab;
  flex-shrink: 0;
}

.nav-book-toc-drag-handle:hover {
  background: rgba(148, 163, 184, 0.16);
  color: #64748b;
}

.nav-book-toc-drag-handle:active {
  cursor: grabbing;
}

.nav-book-toc-folder-head.is-nav-rail-move-drop-target {
  background: rgba(219, 234, 254, 0.95);
  box-shadow: inset 0 0 0 1px rgba(59, 130, 246, 0.45);
  border-radius: 6px;
}

.nav-book-toc-link.is-dragging-nav-rail-file,
.nav-book-toc-folder-head.is-dragging-nav-rail-section {
  opacity: 0.55;
}

.nav-book-toc-folder-head.is-navigation-slot-cut,
.nav-book-toc-link.is-navigation-slot-cut {
  opacity: 0.52;
  outline: 1px dashed rgba(245, 158, 11, 0.85);
  outline-offset: 1px;
  border-radius: 6px;
}

.nav-book-toc-folder-head.is-navigation-slot-selected,
.nav-book-toc-link.is-navigation-slot-selected {
  background: rgba(219, 234, 254, 0.72);
  box-shadow: inset 0 0 0 1px rgba(59, 130, 246, 0.55);
  border-radius: 6px;
}

.nav-book-toc-tree--rail .nav-book-toc-folder--root > .nav-book-toc-folder-head {
  grid-template-columns: 22px minmax(0, 1fr) auto;
  padding-left: 4px;
  padding-right: 4px;
}

.nav-book-toc-tree--rail .nav-book-toc-link {
  font-size: 11px;
  line-height: 1.35;
  grid-template-columns: auto minmax(0, 1fr) auto;
  gap: 6px;
  align-items: center;
}

.nav-book-toc-tree--rail .nav-book-toc-link-preview {
  width: 26px;
  height: 26px;
  border-radius: 4px;
}

.nav-book-toc-tree--rail .nav-book-toc-entry--media .nav-book-toc-link,
.nav-book-toc-tree--rail .nav-book-toc-entry .nav-book-toc-link {
  min-height: 30px;
}

.nav-book-toc-tree--rail .nav-book-toc-folder-label.is-current,
.nav-book-toc-tree--rail .nav-book-toc-link.is-current {
  background: #eff6ff;
  color: #1d4ed8;
  font-weight: 600;
  border-radius: 5px;
}

.nav-book-toc-tree--rail .nav-book-toc-folder-count {
  font-size: 10px;
}

.nav-book-toc-tree--rail .nav-book-toc-list--root > .nav-book-toc-folder--root > .nav-book-toc-list {
  padding-left: 6px;
}

.nav-book-toc-tree--guide.nav-book-toc-tree--rail .nav-book-toc-list--root {
  margin: 0;
  padding: 0 0 8px 0;
  border-left: 0;
}

.nav-book-toc-tree--guide.nav-book-toc-tree--rail .nav-book-toc-list--root > .nav-book-toc-folder--root {
  margin-left: 0;
}

.nav-book-toc-tree--guide.nav-book-toc-tree--rail .nav-book-toc-folder > .nav-book-toc-list {
  margin: 4px 0 2px var(--nav-toc-spine);
  padding: 2px 0 4px var(--nav-toc-branch-pad);
  border-left: 1.5px solid var(--nav-toc-line);
}

.nav-book-toc-tree--guide.nav-book-toc-tree--rail .nav-book-toc-folder--nested > .nav-book-toc-folder-head::before,
.nav-book-toc-tree--guide.nav-book-toc-tree--rail .nav-book-toc-folder > .nav-book-toc-list .nav-book-toc-link::before {
  display: block;
}

.nav-book-toc-tree--guide.nav-book-toc-tree--rail .nav-book-toc-folder-count {
  background: #dcfce7;
  color: #166534;
  border: 1px solid #bbf7d0;
}

.nav-book-toc-tree--guide.nav-book-toc-tree--rail .nav-book-toc-folder--root > .nav-book-toc-list {
  margin-top: 4px;
}

.nav-book-toc-folder--slot-root > .nav-book-toc-folder-head {
  cursor: default;
}

.nav-book-toc-folder-label--slot-root {
  font-weight: 800;
  color: #1e293b;
  cursor: default;
  pointer-events: none;
}

.nav-book-toc-folder--slot-root > .nav-book-toc-list {
  margin-top: 2px;
}

.nav-book-toc-tree--guide .nav-book-toc-folder--slot-root > .nav-book-toc-list {
  margin-left: 0;
  padding-left: 12px;
  border-left: 1px solid #e2e8f0;
}

.nav-book-toc-tree--rail .nav-book-toc-folder--slot-root > .nav-book-toc-list {
  padding-left: 10px;
}

.node-overview.is-navigation-split {
  border: 0;
  border-radius: 0;
  background: transparent;
  overflow-x: clip;
  overflow-y: scroll;
}

.doc-slab-content .doc-slab-main > .node-overview.is-navigation-split,
.doc-slab-content .doc-slab-main > .workspace-scroll-host > .node-overview.is-navigation-split {
  overflow: visible;
}

/* Overview scrolls on doc-slab-content: rail + resize bar sticky in viewport, inner scroll in rail */
.doc-body-main .doc-slab-content:has(> .doc-slab-main > .node-overview.is-navigation-split),
.doc-body-main .doc-slab-content:has(> .doc-slab-main > .workspace-scroll-host > .node-overview.is-navigation-split) {
  container-type: size;
  container-name: doc-slab-viewport;
}

.doc-body-main .doc-slab-content:has(> .doc-slab-main > .node-overview.is-navigation-split)
  .node-navigation-hub--split
  > .node-navigation-hub-rail-aside,
.doc-body-main .doc-slab-content:has(> .doc-slab-main > .workspace-scroll-host > .node-overview.is-navigation-split)
  .node-navigation-hub--split
  > .node-navigation-hub-rail-aside {
  --nav-rail-sticky-top: 0px;
  position: sticky;
  top: var(--nav-rail-sticky-top);
  align-self: start;
  z-index: 3;
  --nav-rail-slab-max-height: max(
    240px,
    calc(100cqh - var(--nav-rail-slab-top-offset, 33px) - var(--nav-rail-slab-bottom-offset, 21px) + 2px)
  );
  min-height: 0 !important;
  height: var(--nav-rail-sticky-height, var(--nav-rail-slab-max-height)) !important;
  max-height: max(
    var(--nav-rail-slab-max-height),
    var(--nav-rail-sticky-height, var(--nav-rail-slab-max-height))
  ) !important;
  box-sizing: border-box;
}

.doc-body-main .doc-slab-content:has(> .doc-slab-main > .node-overview.is-navigation-split)
  .node-navigation-hub--split
  > .node-navigation-hub-rail-aside
  > .node-navigation-hub-rail-resize-bar,
.doc-body-main .doc-slab-content:has(> .doc-slab-main > .workspace-scroll-host > .node-overview.is-navigation-split)
  .node-navigation-hub--split
  > .node-navigation-hub-rail-aside
  > .node-navigation-hub-rail-resize-bar {
  position: relative;
  top: auto;
  align-self: stretch;
  height: auto;
  min-height: 0;
  max-height: none;
}

.doc-body-main .doc-slab-content:has(> .doc-slab-main > .node-overview.is-navigation-split)
  .node-navigation-hub--split
  > .node-navigation-hub-rail-aside
  > .node-navigation-hub-rail,
.doc-body-main .doc-slab-content:has(> .doc-slab-main > .workspace-scroll-host > .node-overview.is-navigation-split)
  .node-navigation-hub--split
  > .node-navigation-hub-rail-aside
  > .node-navigation-hub-rail {
  position: relative;
  top: auto;
  align-self: stretch;
  min-height: 0 !important;
  height: auto !important;
  max-height: none !important;
  overflow-y: auto;
  overscroll-behavior: contain;
  scrollbar-width: none;
  -ms-overflow-style: none;
  --nav-rail-surface: #f8fafc;
  isolation: isolate;
  border-radius: 10px 10px 0 0;
  background-color: var(--nav-rail-surface);
  background-image:
    linear-gradient(180deg, rgba(15, 23, 42, 0.14) 0%, rgba(15, 23, 42, 0) 100%),
    linear-gradient(0deg, rgba(15, 23, 42, 0.14) 0%, rgba(15, 23, 42, 0) 100%),
    linear-gradient(180deg, var(--nav-rail-surface) 15%, rgba(248, 250, 252, 0) 100%),
    linear-gradient(0deg, var(--nav-rail-surface) 15%, rgba(248, 250, 252, 0) 100%);
  background-size:
    100% 10px,
    100% 10px,
    100% 32px,
    100% 32px;
  background-position:
    0 0,
    0 100%,
    0 0,
    0 100%;
  background-repeat: no-repeat;
  background-attachment: scroll, scroll, local, local;
  box-shadow:
    inset 0 1px 0 rgba(255, 255, 255, 0.85),
    inset 0 12px 10px -12px rgba(15, 23, 42, 0.07),
    inset 0 -12px 10px -12px rgba(15, 23, 42, 0.07),
    0 0 0 1px rgba(148, 163, 184, 0.2),
    0 10px 28px -16px rgba(15, 23, 42, 0.16);
  padding: 10px 12px 8px 12px;
  box-sizing: border-box;
}

.doc-body-main .doc-slab-content:has(> .doc-slab-main > .node-overview.is-navigation-split)
  .node-navigation-hub--split
  > .node-navigation-hub-rail-aside
  > .node-navigation-hub-rail::-webkit-scrollbar,
.doc-body-main .doc-slab-content:has(> .doc-slab-main > .workspace-scroll-host > .node-overview.is-navigation-split)
  .node-navigation-hub--split
  > .node-navigation-hub-rail-aside
  > .node-navigation-hub-rail::-webkit-scrollbar {
  display: none;
  width: 0;
  height: 0;
}

.doc-body-main .doc-slab-content:has(> .doc-slab-main > .node-overview.is-navigation-split)
  .node-navigation-hub--split
  > .node-navigation-hub-rail-aside
  > .node-navigation-hub-rail
  > .nav-hub-rail-scroll-down-btn,
.doc-body-main .doc-slab-content:has(> .doc-slab-main > .workspace-scroll-host > .node-overview.is-navigation-split)
  .node-navigation-hub--split
  > .node-navigation-hub-rail-aside
  > .node-navigation-hub-rail
  > .nav-hub-rail-scroll-down-btn {
  position: absolute;
  right: 8px;
  bottom: 8px;
  z-index: 6;
  margin: 0;
  min-height: 32px;
  min-width: 32px;
  width: 32px;
  height: 32px;
  padding: 0;
  gap: 0;
  border-radius: 999px;
  box-shadow:
    0 8px 18px rgba(37, 99, 235, 0.28),
    0 2px 6px rgba(15, 23, 42, 0.1);
  cursor: pointer;
  touch-action: manipulation;
}

.doc-body-main .doc-slab-content:has(> .doc-slab-main > .node-overview.is-navigation-split)
  .node-navigation-hub--split
  > .node-navigation-hub-rail-aside
  > .node-navigation-hub-rail
  > .nav-hub-rail-scroll-down-btn
  .scroll-top-btn-label,
.doc-body-main .doc-slab-content:has(> .doc-slab-main > .workspace-scroll-host > .node-overview.is-navigation-split)
  .node-navigation-hub--split
  > .node-navigation-hub-rail-aside
  > .node-navigation-hub-rail
  > .nav-hub-rail-scroll-down-btn
  .scroll-top-btn-label {
  display: none;
}

.doc-body-main .doc-slab-content:has(> .doc-slab-main > .node-overview.is-navigation-split)
  .node-navigation-hub--split
  > .node-navigation-hub-rail-aside
  > .node-navigation-hub-rail
  > .nav-hub-rail-scroll-down-btn
  .scroll-top-btn-icon,
.doc-body-main .doc-slab-content:has(> .doc-slab-main > .workspace-scroll-host > .node-overview.is-navigation-split)
  .node-navigation-hub--split
  > .node-navigation-hub-rail-aside
  > .node-navigation-hub-rail
  > .nav-hub-rail-scroll-down-btn
  .scroll-top-btn-icon {
  width: 16px;
  height: 16px;
  flex: 0 0 16px;
}

.node-overview.is-navigation-split::before,
.node-overview.is-navigation-split::after {
  display: none;
}

.node-overview.is-navigation-split .node-overview-content {
  overflow: visible;
  border: 1px solid rgba(148, 163, 184, 0.18);
  border-radius: 12px;
  background: linear-gradient(180deg, #f8fafc 0%, #ffffff 360px);
  box-sizing: border-box;
}

.node-overview.is-navigation-split .node-navigation-hub > .node-comments,
.node-overview.is-navigation-split .node-navigation-hub-main > .node-comments {
  grid-column: 1;
}

@media (max-width: 960px) {
  .node-navigation-hub--split {
    grid-template-columns: 1fr;
  }

  .node-navigation-hub-rail-resize-bar {
    display: none;
  }

  .node-navigation-hub--split.node-navigation-hub--rail-collapsed .node-navigation-hub-rail {
    display: block;
  }

  .node-navigation-hub--split .node-navigation-hub-main {
    padding-right: 0;
    border-right: 0;
    border-bottom: 1px solid #e2e8f0;
    padding-bottom: 16px;
  }

  .node-navigation-hub-rail {
    overflow: visible;
    padding: 16px 0 0;
  }

  .node-navigation-hub--split .node-navigation-hub-rail {
    height: auto;
    min-height: 0;
    max-height: none;
  }

  .node-navigation-hub--split
    .node-navigation-hub-rail:has(.node-navigation-hub-rail-slot--document[open]) {
    overflow: visible;
  }

  .node-navigation-hub-rail:has(.node-navigation-hub-rail-slot--document[open])
    .node-navigation-hub-rail-slot--document[open]
    .node-navigation-hub-rail-slot-body {
    overflow: visible;
  }
}

.node-navigation-hub > .node-comments {
  min-width: 0;
  max-width: 100%;
}

.folder-browse-hub {
  display: flex;
  flex-direction: column;
  gap: 24px;
  min-width: 0;
  max-width: 100%;
  font-family: inherit;
  font-size: 14px;
  line-height: 1.5;
  color: var(--text, #0f172a);
}

.folder-browse-hero-card {
  display: flex;
  flex-direction: column;
  gap: 0;
  margin: 0;
  padding: 0;
  border: 0;
  border-radius: 0;
  background: transparent;
  box-shadow: none;
}

.folder-browse-hero-main {
  min-width: 0;
}

.folder-browse-hero-body {
  min-width: 0;
  display: flex;
  flex-direction: column;
  gap: 6px;
}

.folder-browse-hero-title-row {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 8px 10px;
  min-width: 0;
}

.folder-browse-hero-title {
  margin: 0;
  font-size: clamp(1.125rem, 2.4vw, 1.375rem);
  line-height: 1.3;
  font-weight: 700;
  word-break: break-word;
  color: #0f172a;
}

.folder-browse-hero-badge {
  display: inline-flex;
  align-items: center;
  padding: 2px 8px;
  border-radius: 999px;
  font-size: 11px;
  font-weight: 600;
  letter-spacing: 0.02em;
  color: #64748b;
  background: rgba(148, 163, 184, 0.12);
  border: 1px solid rgba(148, 163, 184, 0.2);
  white-space: nowrap;
}

.folder-browse-empty {
  margin: 0;
  font-size: 13px;
  color: var(--muted, #64748b);
}

.folder-browse-section {
  display: flex;
  flex-direction: column;
  min-width: 0;
  border: 1px solid rgba(148, 163, 184, 0.28);
  border-radius: 12px;
  background: #fff;
  overflow: hidden;
  box-shadow: 0 1px 2px rgba(15, 23, 42, 0.04);
}

.folder-browse-section-head {
  position: relative;
  padding: 9px 12px 10px;
  background: linear-gradient(180deg, #f8fafc 0%, #f1f5f9 100%);
  border-bottom: 1px solid rgba(148, 163, 184, 0.22);
}

.folder-browse-section-head::before {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  height: 3px;
  background: linear-gradient(90deg, #6366f1 0%, #3b82f6 52%, #0ea5e9 100%);
  opacity: 0.85;
}

.folder-browse-section-head--with-actions {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
}

.folder-browse-section-title-wrap {
  min-width: 0;
}

.folder-browse-images-cols-control {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  flex-shrink: 0;
}

.folder-browse-images-cols-label {
  font-size: 11px;
  font-weight: 600;
  color: #64748b;
  white-space: nowrap;
}

.folder-browse-images-cols-toggle {
  display: inline-flex;
  align-items: center;
  flex-shrink: 0;
  gap: 2px;
  padding: 2px;
  border-radius: 8px;
  border: 1px solid rgba(148, 163, 184, 0.24);
  background: #fff;
}

.folder-browse-images-cols-btn {
  min-width: 28px;
  height: 24px;
  padding: 0 8px;
  border: 0;
  border-radius: 6px;
  background: transparent;
  font: inherit;
  font-size: 11px;
  font-weight: 700;
  line-height: 1;
  color: #64748b;
  cursor: pointer;
  transition: background 0.15s ease, color 0.15s ease;
}

.folder-browse-images-cols-btn:hover {
  color: #334155;
  background: rgba(148, 163, 184, 0.1);
}

.folder-browse-images-cols-btn.is-active {
  background: rgba(59, 130, 246, 0.12);
  color: #2563eb;
}

.folder-browse-images-cols-btn:focus-visible {
  outline: 2px solid rgba(59, 130, 246, 0.45);
  outline-offset: 1px;
}

.folder-browse-section-body {
  padding: 12px;
}

.folder-browse-section-title {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  margin: 0;
  font-size: 12px;
  font-weight: 700;
  letter-spacing: 0.05em;
  text-transform: uppercase;
  color: #475569;
}

.folder-browse-section-count {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-width: 22px;
  padding: 1px 7px;
  border-radius: 999px;
  font-size: 11px;
  font-weight: 700;
  letter-spacing: 0;
  text-transform: none;
  color: #1d4ed8;
  background: rgba(59, 130, 246, 0.12);
  border: 1px solid rgba(59, 130, 246, 0.18);
}

.folder-browse-section-body:has(.folder-browse-images-grid) {
  padding: 0;
}

.folder-browse-images-grid {
  display: grid;
  gap: 1px;
  border: 1px solid #e2e8f0;
  background: #e2e8f0;
}

.folder-browse-images-grid--cols-1 {
  grid-template-columns: minmax(0, 1fr);
}

.folder-browse-images-grid--cols-3 {
  grid-template-columns: repeat(3, minmax(0, 1fr));
}

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

.folder-browse-images-grid--cols-1 .folder-browse-image-thumb {
  aspect-ratio: auto;
}

.folder-browse-image-thumb--original {
  background: transparent;
}

.folder-browse-image-thumb--original img {
  width: 100%;
  height: auto;
  max-height: 80vh;
  object-fit: contain;
}

@media (max-width: 900px) {
  .folder-browse-images-grid--cols-5 {
    grid-template-columns: repeat(3, minmax(0, 1fr));
  }
}

@media (max-width: 640px) {
  .folder-browse-images-grid--cols-3,
  .folder-browse-images-grid--cols-5 {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}

.folder-browse-image-card {
  display: flex;
  flex-direction: column;
  align-items: stretch;
  margin: 0;
  padding: 0;
  border: 0;
  border-radius: 0;
  background: #fff;
  overflow: hidden;
  text-align: left;
  font: inherit;
  color: inherit;
  transition: background 0.15s ease;
  min-width: 0;
  position: relative;
  z-index: 0;
}

.folder-browse-image-card:hover {
  background: #f8fafc;
}

.folder-browse-image-thumb {
  position: relative;
  aspect-ratio: 1;
  margin: 0;
  padding: 0;
  border: 0;
  border-radius: 0;
  background: transparent;
  display: flex;
  align-items: center;
  justify-content: center;
  overflow: hidden;
}

.folder-browse-image-thumb img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  display: block;
  border-radius: 0;
  pointer-events: none;
  -webkit-user-drag: none;
  user-select: none;
}

.folder-browse-images-grid--cols-1 .folder-browse-image-thumb img {
  object-fit: contain;
}

.folder-browse-image-open {
  display: flex;
  flex-direction: column;
  gap: 0;
  min-width: 0;
}

.folder-browse-image-footer {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: 8px;
  min-width: 0;
  padding: 6px 8px 7px;
  border-top: 1px solid rgba(226, 232, 240, 0.9);
}

.folder-browse-image-footer .folder-browse-image-name {
  flex: 1 1 auto;
  min-width: 0;
  padding: 0;
  font-size: 11px;
  line-height: 1.35;
  text-align: left;
}

.folder-browse-image-size {
  flex: 0 0 auto;
  font-size: 10px;
  font-weight: 600;
  line-height: 1.35;
  color: #64748b;
  white-space: nowrap;
}

.folder-browse-image-open .folder-browse-image-name {
  padding: 0;
  font-size: 11px;
  line-height: 1.35;
}

.folder-browse-image-open .folder-browse-item-meta {
  padding: 0;
  margin-top: 0;
  gap: 4px;
}

.folder-browse-image-open .folder-browse-format-badge,
.folder-browse-image-open .folder-browse-size-badge {
  font-size: 9px;
  padding: 1px 5px;
}

.folder-browse-image-name {
  font-size: 12px;
  font-weight: 600;
  line-height: 1.35;
  word-break: break-word;
  color: #334155;
}

.folder-browse-folder-grid,
.folder-browse-pages-grid {
  display: grid;
  grid-template-columns: repeat(auto-fill, minmax(220px, 1fr));
  gap: 12px;
}

.folder-browse-folder-card {
  display: flex;
  flex-direction: column;
  border: 1px solid rgba(148, 163, 184, 0.28);
  border-radius: 12px;
  background: linear-gradient(180deg, #ffffff 0%, #f8fafc 100%);
  box-shadow: 0 1px 2px rgba(15, 23, 42, 0.04);
  overflow: hidden;
  cursor: pointer;
  transition: border-color 0.15s ease, box-shadow 0.15s ease;
}

.folder-browse-folder-card:hover {
  border-color: rgba(100, 116, 139, 0.45);
  box-shadow: 0 2px 8px rgba(15, 23, 42, 0.06);
}

.folder-browse-folder-body {
  min-width: 0;
  flex: 1;
  display: flex;
  flex-direction: row;
  align-items: center;
  justify-content: space-between;
  gap: 10px;
}

.folder-browse-folder-name {
  flex: 1 1 auto;
  min-width: 0;
  font-size: 13px;
  font-weight: 600;
  line-height: 1.35;
  word-break: break-word;
}

.folder-browse-folder-meta {
  flex: 0 0 auto;
  font-size: 12px;
  font-weight: 600;
  color: var(--muted, #64748b);
  font-variant-numeric: tabular-nums;
  white-space: nowrap;
}

.folder-browse-folder-count {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-width: 24px;
  height: 24px;
  padding: 0 7px;
  border-radius: 999px;
  font-size: 11px;
  font-weight: 700;
  font-variant-numeric: tabular-nums;
  color: #1d4ed8;
  background: rgba(59, 130, 246, 0.12);
  border: 1px solid rgba(59, 130, 246, 0.18);
  white-space: nowrap;
  flex: 0 0 auto;
}

.folder-browse-folder-trailing {
  display: inline-flex;
  align-items: center;
  justify-content: flex-end;
  gap: 8px;
  flex: 0 0 auto;
  margin-left: auto;
}

.folder-browse-page-card {
  display: flex;
  flex-direction: column;
  border: 1px solid rgba(148, 163, 184, 0.22);
  border-radius: 12px;
  background: #fff;
  overflow: hidden;
  transition: border-color 0.15s ease;
}

.folder-browse-page-card:hover {
  border-color: rgba(100, 116, 139, 0.45);
}

.folder-browse-page-open:hover .folder-browse-page-body {
  background: transparent;
}

.folder-browse-page-thumb {
  position: relative;
  aspect-ratio: 16 / 9;
  background: transparent;
  display: flex;
  align-items: center;
  justify-content: center;
  overflow: hidden;
}

.folder-browse-page-thumb img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  display: block;
  pointer-events: none;
}

.folder-browse-page-thumb--empty {
  background-color: transparent;
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%2394a3b8' stroke-width='1.5'%3E%3Cpath d='M14 2H6a2 2 0 0 0-2 2v16a2 2 0 0 0 2 2h12a2 2 0 0 0 2-2V8z'/%3E%3Cpath d='M14 2v6h6M8 13h8M8 17h5'/%3E%3C/svg%3E");
  background-repeat: no-repeat;
  background-position: center;
  background-size: 28px;
}

.folder-browse-page-open {
  display: flex;
  flex-direction: column;
  gap: 0;
  border: 0;
  background: transparent;
  padding: 0;
  text-align: left;
  cursor: pointer;
  font: inherit;
  color: inherit;
  width: 100%;
}

.folder-browse-page-open:focus-visible {
  outline: 2px solid rgba(59, 130, 246, 0.45);
  outline-offset: -2px;
}

.folder-browse-page-body {
  padding: 12px 14px;
  display: flex;
  flex-direction: column;
  gap: 4px;
  transition: background 0.15s ease;
}

.folder-browse-item-card .folder-browse-page-body {
  padding-left: 14px;
}

.folder-browse-item-card .folder-browse-page-body .folder-browse-item-meta {
  margin-top: 4px;
}

.folder-browse-page-title {
  font-size: 13px;
  font-weight: 600;
  line-height: 1.35;
  color: #0f172a;
}

.folder-browse-page-excerpt {
  margin: 0;
  font-size: 12px;
  color: var(--muted, #64748b);
  line-height: 1.45;
  display: -webkit-box;
  -webkit-line-clamp: 2;
  -webkit-box-orient: vertical;
  overflow: hidden;
}

.folder-browse-page-preview {
  padding: 12px 14px 14px;
  border-top: 1px solid rgba(148, 163, 184, 0.18);
  font-size: 14px;
}

.folder-browse-media-list {
  display: flex;
  flex-direction: column;
  gap: 12px;
}

.folder-browse-media-item {
  display: flex;
  flex-direction: column;
  gap: 0;
  border: 1px solid rgba(148, 163, 184, 0.22);
  border-radius: 12px;
  background: transparent;
}

.folder-browse-media-head {
  display: flex;
  align-items: flex-start;
  gap: 10px;
  padding: 12px 14px;
  flex: 1;
  min-width: 0;
}

.folder-browse-thumb-actions {
  position: absolute;
  top: 8px;
  right: 8px;
  z-index: 2;
  display: flex;
  align-items: center;
  gap: 4px;
  opacity: 0;
  pointer-events: none;
  transition: opacity 0.15s ease;
}

.folder-browse-inline-actions {
  display: inline-flex;
  align-items: center;
  gap: 4px;
  flex-shrink: 0;
  margin-left: auto;
  align-self: flex-start;
  opacity: 0;
  pointer-events: none;
  transition: opacity 0.15s ease;
}

.folder-browse-item-card:hover .folder-browse-thumb-actions,
.folder-browse-item-card.is-selected .folder-browse-thumb-actions,
.folder-browse-thumb-actions:focus-within,
.folder-browse-item-card:hover .folder-browse-inline-actions,
.folder-browse-item-card.is-selected .folder-browse-inline-actions,
.folder-browse-inline-actions:focus-within,
.folder-browse-hub:has(.folder-browse-item-card.is-selected) .folder-browse-thumb-actions,
.folder-browse-hub:has(.folder-browse-item-card.is-selected) .folder-browse-inline-actions {
  opacity: 1;
  pointer-events: auto;
}

.folder-browse-thumb-actions .folder-browse-action-btn,
.folder-browse-thumb-actions .folder-browse-lightbox-btn {
  width: 26px;
  min-width: 26px;
  height: 26px;
  background: rgba(255, 255, 255, 0.94);
  box-shadow: 0 1px 4px rgba(15, 23, 42, 0.14);
}

.folder-browse-page-card > .folder-browse-thumb-actions {
  position: absolute;
  top: 8px;
  right: 8px;
  z-index: 2;
}

.folder-browse-media-name {
  margin: 0;
  font-size: 13px;
  font-weight: 600;
  line-height: 1.35;
  word-break: break-word;
  color: #334155;
}

.folder-browse-media-player {
  width: 100%;
  border-radius: 8px;
}

.folder-browse-other-list {
  list-style: none;
  margin: 0;
  padding: 0;
  display: flex;
  flex-direction: column;
  gap: 8px;
}

.folder-browse-other-item {
  display: flex;
  align-items: center;
  gap: 10px;
  padding: 8px 10px 8px 12px;
  min-width: 0;
  border: 1px solid rgba(148, 163, 184, 0.22);
  border-radius: 12px;
  background: #fff;
}

.folder-browse-other-main {
  flex: 1;
  min-width: 0;
  display: flex;
  flex-direction: row;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
}

.folder-browse-other-link {
  flex: 1 1 auto;
  min-width: 0;
  display: block;
  padding: 0;
  border: 0;
  color: #334155;
  font-size: 13px;
  font-weight: 600;
  line-height: 1.4;
  word-break: break-word;
}

.folder-browse-inline-size {
  flex: 0 0 auto;
  margin-left: auto;
  white-space: nowrap;
}

.folder-browse-other-main .folder-browse-inline-size {
  font-size: 11px;
}

.folder-browse-file-icon {
  width: 34px;
  height: 34px;
  flex-shrink: 0;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  border-radius: 9px;
  font-size: 10px;
  font-weight: 800;
  letter-spacing: 0.03em;
  line-height: 1;
  color: #475569;
  background: rgba(148, 163, 184, 0.14);
  border: 1px solid rgba(148, 163, 184, 0.18);
}

.folder-browse-file-icon--json {
  color: #92400e;
  background: #fef3c7;
  border-color: #fde68a;
}

.folder-browse-file-icon--yaml,
.folder-browse-file-icon--yml {
  color: #0f766e;
  background: #ccfbf1;
  border-color: #99f6e4;
}

.folder-browse-file-icon--md {
  color: #1d4ed8;
  background: #dbeafe;
  border-color: #bfdbfe;
}

.folder-browse-file-icon--pdf {
  color: #b91c1c;
  background: #fee2e2;
  border-color: #fecaca;
}

.folder-browse-file-icon--zip,
.folder-browse-file-icon--rar,
.folder-browse-file-icon--7z {
  color: #7c3aed;
  background: #ede9fe;
  border-color: #ddd6fe;
}

.folder-browse-file-icon--mp4,
.folder-browse-file-icon--mov,
.folder-browse-file-icon--webm {
  color: #be185d;
  background: #fce7f3;
  border-color: #fbcfe8;
}

.folder-browse-file-icon--mp3,
.folder-browse-file-icon--wav,
.folder-browse-file-icon--ogg {
  color: #0369a1;
  background: #e0f2fe;
  border-color: #bae6fd;
}

.folder-browse-card-actions {
  display: flex;
  align-items: center;
  gap: 6px;
  padding: 0 10px 10px;
  flex-wrap: wrap;
}

.folder-browse-folder-card .folder-browse-card-actions,
.folder-browse-page-card .folder-browse-card-actions {
  padding: 0 12px 12px;
  border-top: 1px solid rgba(148, 163, 184, 0.12);
  margin-top: auto;
  padding-top: 10px;
}

.folder-browse-image-card .folder-browse-card-actions {
  padding: 4px 8px 8px;
  margin-top: 0;
  gap: 6px;
  justify-content: flex-start;
}

.folder-browse-image-card .folder-browse-view-btn {
  flex: 1 1 auto;
  min-width: 72px;
}

.folder-browse-card-actions--inline {
  padding: 0 12px 12px;
  border-top: 1px solid rgba(148, 163, 184, 0.1);
  flex-wrap: wrap;
  justify-content: flex-end;
}

.folder-browse-view-btn {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-height: 28px;
  padding: 4px 10px;
  border: 1px solid rgba(59, 130, 246, 0.28);
  border-radius: 8px;
  background: rgba(59, 130, 246, 0.08);
  color: #1d4ed8;
  font: inherit;
  font-size: 11px;
  font-weight: 700;
  line-height: 1;
  white-space: nowrap;
  cursor: pointer;
  flex-shrink: 0;
}

.folder-browse-view-btn:hover,
.folder-browse-view-btn:focus-visible {
  border-color: rgba(37, 99, 235, 0.45);
  background: rgba(59, 130, 246, 0.14);
  color: #1e3a8a;
}

.folder-browse-lightbox-btn {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 28px;
  min-width: 28px;
  height: 28px;
  border: 1px solid rgba(148, 163, 184, 0.32);
  border-radius: 8px;
  background: #fff;
  color: #475569;
  text-decoration: none;
  font-size: 13px;
  line-height: 1;
  flex-shrink: 0;
}

.folder-browse-lightbox-btn:hover {
  border-color: rgba(100, 116, 139, 0.45);
  color: #0f172a;
}

.folder-browse-action-btn {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 28px;
  min-width: 28px;
  height: 28px;
  padding: 0;
  border: 1px solid rgba(148, 163, 184, 0.32);
  border-radius: 8px;
  background: #fff;
  color: #475569;
  text-decoration: none;
  font-size: 13px;
  line-height: 1;
  flex-shrink: 0;
  cursor: pointer;
  transition: background 0.15s ease, border-color 0.15s ease, color 0.15s ease;
}

.folder-browse-action-btn:hover,
.folder-browse-action-btn:focus-visible {
  border-color: #93c5fd;
  background: #eff6ff;
  color: #1d4ed8;
}

.folder-browse-action-btn-icon {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 15px;
  height: 15px;
}

.folder-browse-action-btn-icon svg {
  display: block;
  width: 15px;
  height: 15px;
}

.folder-browse-lightbox-btn.folder-browse-action-btn {
  font-weight: 700;
}

.folder-browse-media-name-wrap {
  min-width: 0;
  flex: 1;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
}

.folder-browse-media-name-wrap .folder-browse-media-name {
  flex: 1 1 auto;
  min-width: 0;
}

.folder-browse-media-name-wrap .folder-browse-inline-size {
  flex: 0 0 auto;
  font-size: 11px;
}

.node-overview.is-folder-browse,
.node-overview.is-awn-databases-view {
  overflow: hidden;
  --folder-browse-bg: #ffffff;
  --folder-browse-bg-soft: #ffffff;
  --folder-browse-panel: #ffffff;
  --folder-browse-panel-border: rgba(148, 163, 184, 0.28);
  --folder-browse-ink: #334155;
  --folder-browse-muted: #64748b;
  background: var(--folder-browse-bg);
}

.node-overview.is-folder-browse .node-overview-content,
.node-overview.is-awn-databases-view .node-overview-content {
  background: #ffffff;
  border-radius: 10px;
  min-height: 100%;
}

.node-overview.is-folder-browse .node-navigation-hub,
.node-overview.is-folder-browse .folder-browse-hub,
.node-overview.is-awn-databases-view .awn-databases-view-hub {
  padding-top: 0;
  color: var(--folder-browse-ink);
}

.node-overview.is-folder-browse .folder-browse-hero-title {
  color: #1e293b;
}

.node-overview.is-folder-browse .folder-browse-hero-badge {
  color: var(--folder-browse-muted);
  background: rgba(148, 163, 184, 0.12);
  border-color: rgba(148, 163, 184, 0.22);
}

.node-overview.is-folder-browse .folder-browse-section {
  background: var(--folder-browse-panel);
  border-color: var(--folder-browse-panel-border);
  box-shadow: 0 1px 2px rgba(15, 23, 42, 0.04);
}

.node-overview.is-folder-browse .folder-browse-section-head {
  background: linear-gradient(180deg, #fafbfc 0%, #f4f6f8 100%);
  border-bottom-color: rgba(148, 163, 184, 0.22);
}

.node-overview.is-folder-browse .folder-browse-section-head::before {
  background: linear-gradient(90deg, #94a3b8 0%, #64748b 52%, #94a3b8 100%);
  opacity: 0.45;
}

.node-overview.is-folder-browse .folder-browse-images-cols-toggle {
  background: #ffffff;
  border-color: rgba(148, 163, 184, 0.28);
}

.node-overview.is-folder-browse .folder-browse-images-cols-btn.is-active {
  background: rgba(100, 116, 139, 0.12);
  color: #334155;
}

.doc-slab-path.is-folder-browse {
  background: #ffffff;
}

.doc-slab-path.is-folder-browse .workspace-path-crumbs-block {
  border-bottom-color: rgba(148, 163, 184, 0.18);
}

.doc-slab-path.is-folder-browse:not(.is-service-file) .workspace-path-toolbar-block {
  display: none;
}

.doc-slab-path.is-folder-browse .workspace-path-crumbs-actions .folder-browse-upload-btn-label {
  display: none;
}

.doc-slab-path.is-folder-browse .workspace-path-crumbs-actions .folder-browse-upload-btn {
  width: 28px;
  min-width: 28px;
  padding: 0;
  justify-content: center;
  gap: 0;
}

.doc-slab-content:has(> .doc-slab-main > .node-overview.is-folder-browse:not(.hidden)),
.doc-slab-content:has(> .doc-slab-main > .workspace-scroll-host > .node-overview.is-folder-browse:not(.hidden)),
.doc-slab-content:has(> .doc-slab-main > .node-overview.is-awn-databases-view:not(.hidden)),
.doc-slab-content:has(> .doc-slab-main > .workspace-scroll-host > .node-overview.is-awn-databases-view:not(.hidden)) {
  padding: 8px var(--doc-content-gutter, 16px);
  background: #ffffff;
}

.doc-slab-main:has(> .node-overview.is-folder-browse:not(.hidden)),
.doc-slab-main:has(> .workspace-scroll-host > .node-overview.is-folder-browse:not(.hidden)),
.doc-slab-main:has(> .node-overview.is-awn-databases-view:not(.hidden)),
.doc-slab-main:has(> .workspace-scroll-host > .node-overview.is-awn-databases-view:not(.hidden)) {
  background: #ffffff;
}

.workspace-scroll-host:has(> .node-overview.is-folder-browse:not(.hidden)),
.workspace-scroll-host:has(> .node-overview.is-awn-databases-view:not(.hidden)) {
  background: #ffffff;
}

.folder-browse-toolbar {
  display: none;
  align-items: center;
  flex-wrap: wrap;
  gap: 8px;
  margin-top: 10px;
  padding: 0;
  border: 0;
  border-radius: 0;
  background: transparent;
}

.folder-browse-toolbar.is-active {
  display: flex;
}

.folder-browse-toolbar-label {
  font-size: 12px;
  font-weight: 600;
  color: #475569;
  margin-right: 4px;
}

.folder-browse-toolbar-btn {
  border: 1px solid rgba(148, 163, 184, 0.35);
  border-radius: 8px;
  background: #fff;
  padding: 6px 10px;
  font-size: 12px;
  font-weight: 600;
  cursor: pointer;
}

.folder-browse-toolbar-btn:hover:not(:disabled) {
  border-color: rgba(59, 130, 246, 0.35);
  background: rgba(59, 130, 246, 0.06);
}

.folder-browse-toolbar-btn:disabled {
  opacity: 0.45;
  cursor: not-allowed;
}

.folder-browse-toolbar-btn--danger {
  color: #b91c1c;
  border-color: rgba(239, 68, 68, 0.25);
}

.folder-browse-toolbar-btn--ghost {
  background: transparent;
}

.folder-browse-item-card {
  position: relative;
  cursor: pointer;
  user-select: none;
}

.folder-browse-item-card--draggable {
  cursor: grab;
}

.folder-browse-item-card--draggable:active,
.folder-browse-item-card.is-dragging-folder-browse-file {
  cursor: grabbing;
}

.folder-browse-item-card.is-dragging-folder-browse-file {
  opacity: 0.72;
  outline: 2px solid rgba(37, 99, 235, 0.45);
  outline-offset: 2px;
}

.folder-browse-select-toggle {
  position: absolute;
  top: 8px;
  left: 8px;
  z-index: 3;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 22px;
  height: 22px;
  padding: 0;
  border: 2px solid rgba(255, 255, 255, 0.92);
  border-radius: 6px;
  background: rgba(15, 23, 42, 0.42);
  color: #fff;
  box-shadow: 0 1px 4px rgba(15, 23, 42, 0.18);
  cursor: pointer;
  opacity: 0;
  pointer-events: none;
  transition: opacity 0.15s ease, background 0.15s ease, border-color 0.15s ease;
}

.folder-browse-item-card:hover .folder-browse-select-toggle,
.folder-browse-item-card.is-selected .folder-browse-select-toggle,
.folder-browse-select-toggle:focus-visible,
.folder-browse-hub:has(.folder-browse-item-card.is-selected) .folder-browse-select-toggle {
  opacity: 1;
  pointer-events: auto;
}

.folder-browse-item-card.is-selected .folder-browse-select-toggle {
  background: #2563eb;
  border-color: #dbeafe;
}

.folder-browse-select-toggle::after {
  content: "";
  width: 5px;
  height: 9px;
  border-right: 2px solid transparent;
  border-bottom: 2px solid transparent;
  transform: rotate(45deg) translate(-1px, -1px);
}

.folder-browse-item-card.is-selected .folder-browse-select-toggle::after {
  border-color: #fff;
}

.folder-browse-item-card {
  user-select: none;
  -webkit-user-select: none;
}

.folder-browse-item-card {
  user-select: none;
  -webkit-user-select: none;
}

.folder-browse-item-card.is-selected:not(.folder-browse-image-card) {
  border-color: #2563eb !important;
  border-width: 2px !important;
  background: rgba(59, 130, 246, 0.16) !important;
  box-shadow:
    0 0 0 3px rgba(59, 130, 246, 0.28),
    inset 0 0 0 1px rgba(37, 99, 235, 0.35);
}

.folder-browse-item-card.is-selected::before {
  content: "✓";
  position: absolute;
  top: 6px;
  left: 6px;
  z-index: 3;
  display: flex;
  align-items: center;
  justify-content: center;
  width: 20px;
  height: 20px;
  border-radius: 999px;
  background: #2563eb;
  color: #fff;
  font-size: 11px;
  font-weight: 800;
  line-height: 1;
  box-shadow: 0 1px 4px rgba(37, 99, 235, 0.35);
  pointer-events: none;
}

.folder-browse-image-card.is-selected {
  background: #eff6ff !important;
  box-shadow: inset 0 0 0 2px #2563eb;
  z-index: 1;
}

.folder-browse-image-card.is-selected .folder-browse-image-thumb {
  background: transparent;
}

.folder-browse-image-card.is-selected .folder-browse-lightbox-btn {
  opacity: 0.85;
}

.folder-browse-format-badge,
.folder-browse-size-badge {
  display: inline-flex;
  align-items: center;
  padding: 2px 7px;
  border-radius: 999px;
  font-size: 10px;
  font-weight: 700;
  letter-spacing: 0.04em;
  line-height: 1.4;
}

.folder-browse-format-badge {
  background: rgba(148, 163, 184, 0.12);
  color: #475569;
}

.folder-browse-size-badge {
  background: rgba(148, 163, 184, 0.1);
  color: #64748b;
}

.folder-browse-item-meta {
  display: flex;
  flex-wrap: wrap;
  gap: 6px;
  margin-top: 6px;
}

.folder-browse-image-open,
.folder-browse-page-open,
.folder-browse-media-open {
  display: block;
  width: 100%;
  margin: 0;
  padding: 0;
  border: 0;
  background: transparent;
  text-align: left;
  font: inherit;
  color: inherit;
  cursor: pointer;
}

.folder-browse-folder-open {
  display: grid;
  grid-template-columns: 36px minmax(0, 1fr);
  align-items: center;
  gap: 12px;
  width: 100%;
  margin: 0;
  padding: 12px 14px;
  border: 0;
  background: transparent;
  text-align: left;
  font: inherit;
  color: inherit;
  cursor: pointer;
  box-sizing: border-box;
}

.folder-browse-folder-card .folder-browse-view-btn {
  min-height: 26px;
  padding: 3px 9px;
}

.folder-browse-folder-icon {
  width: 36px;
  height: 36px;
  flex-shrink: 0;
  border-radius: 10px;
  background-color: rgba(148, 163, 184, 0.1);
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='%2394a3b8'%3E%3Cpath d='M10.5 4.5a2 2 0 0 1 1.6.8l.9 1.2h5a2.5 2.5 0 0 1 2.5 2.5V17a2.5 2.5 0 0 1-2.5 2.5H6A2.5 2.5 0 0 1 3.5 17V7A2.5 2.5 0 0 1 6 4.5h4.5z'/%3E%3C/svg%3E");
  background-repeat: no-repeat;
  background-position: center;
  background-size: 18px;
}

.folder-browse-folder-card {
  padding: 0;
}

.folder-browse-toolbar {
  display: none !important;
}

.folder-browse-file-header {
  display: flex;
  flex-direction: column;
  gap: 6px;
  margin-bottom: 0;
  padding: 0;
  border: 0;
  border-radius: 0;
  background: transparent;
}

.folder-browse-file-hub {
  gap: 8px;
}

.workspace-scroll-host > .node-overview.is-folder-browse:has(.folder-browse-file-hub) {
  flex: 0 0 auto;
  width: 100%;
  height: auto;
  min-height: 0;
}

.node-overview.is-folder-browse .node-overview-content:has(.folder-browse-file-hub) {
  padding: 12px 22px;
  background: #ffffff;
}

.folder-browse-file-hub .folder-browse-file-body {
  margin-bottom: 0;
}

.folder-browse-file-hub .folder-browse-file-image-wrap {
  margin-bottom: 0;
}

.folder-browse-file-header .node-navigation-manifest-nav,
.folder-browse-file-header .node-entry-overview-hero-nav {
  margin-top: 0;
  border: 1px solid rgba(148, 163, 184, 0.24);
  border-radius: 10px;
}

.folder-browse-file-hero-row {
  display: flex;
  align-items: flex-start;
  gap: 10px;
  padding: 10px 12px;
  border: 1px solid rgba(148, 163, 184, 0.22);
  border-radius: 12px;
  background: linear-gradient(180deg, #ffffff 0%, #f8fafc 100%);
}

.folder-browse-file-hero-row .folder-browse-file-hero {
  flex: 1 1 auto;
  min-width: 0;
}

.folder-browse-file-download-btn {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 28px;
  min-width: 28px;
  height: 28px;
  padding: 0;
  border: 1px solid #cbd5e1;
  border-radius: 8px;
  background: #fff;
  color: #334155;
  flex-shrink: 0;
  text-decoration: none;
  transition: background 0.15s ease, border-color 0.15s ease, color 0.15s ease;
}

.folder-browse-file-download-btn:hover,
.folder-browse-file-download-btn:focus-visible {
  border-color: #93c5fd;
  background: #eff6ff;
  color: #1d4ed8;
}

.folder-browse-file-title-row {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: 12px;
  width: 100%;
  min-width: 0;
}

.folder-browse-file-title-trailing {
  display: inline-flex;
  align-items: flex-start;
  justify-content: flex-end;
  gap: 8px;
  flex-shrink: 0;
  margin-left: auto;
}

.folder-browse-file-size-badge {
  align-self: flex-start;
  margin-top: 3px;
  font-size: 11px;
  font-weight: 600;
  white-space: nowrap;
}

.folder-browse-file-hero-actions {
  display: inline-flex;
  align-items: flex-start;
  gap: 6px;
  flex-shrink: 0;
}

.folder-browse-file-hero-actions .folder-browse-file-download-btn svg,
.folder-browse-file-hero-actions .folder-browse-file-action-icon {
  width: 15px;
  height: 15px;
  display: block;
}

.folder-browse-file-nav {
  display: inline-flex;
  align-items: center;
  gap: 6px;
  align-self: flex-start;
}

.folder-browse-file-nav-btn {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 28px;
  min-width: 28px;
  height: 28px;
  padding: 0;
  border: 1px solid #cbd5e1;
  border-radius: 8px;
  background: #fff;
  color: #334155;
  font-size: 14px;
  font-weight: 700;
  line-height: 1;
  cursor: pointer;
}

.folder-browse-file-nav-btn:hover:not(:disabled),
.folder-browse-file-nav-btn:focus-visible:not(:disabled) {
  border-color: #93c5fd;
  background: #eff6ff;
  color: #1d4ed8;
}

.folder-browse-file-nav-btn:disabled {
  opacity: 0.4;
  cursor: not-allowed;
}

.folder-browse-file-hero {
  display: flex;
  align-items: flex-start;
  gap: 12px;
  min-width: 0;
}

.folder-browse-file-hero-icon {
  flex: 0 0 auto;
  width: 42px;
  height: 42px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  align-self: flex-start;
  border-radius: 10px;
  font-size: 11px;
  font-weight: 800;
  letter-spacing: 0.02em;
}

.folder-browse-file-icon--emoji {
  font-size: 20px;
  font-weight: 400;
  line-height: 1;
  letter-spacing: 0;
  border: 1px solid rgba(148, 163, 184, 0.16);
  box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.65);
}

.folder-browse-file-icon--emoji.folder-browse-file-icon--png,
.folder-browse-file-icon--emoji.folder-browse-file-icon--jpg,
.folder-browse-file-icon--emoji.folder-browse-file-icon--jpeg,
.folder-browse-file-icon--emoji.folder-browse-file-icon--gif,
.folder-browse-file-icon--emoji.folder-browse-file-icon--webp,
.folder-browse-file-icon--emoji.folder-browse-file-icon--svg {
  color: inherit;
  background: linear-gradient(145deg, #fdf4ff 0%, #ede9fe 100%);
  border-color: #ddd6fe;
}

.folder-browse-file-icon--emoji.folder-browse-file-icon--mp4,
.folder-browse-file-icon--emoji.folder-browse-file-icon--mov,
.folder-browse-file-icon--emoji.folder-browse-file-icon--webm {
  background: linear-gradient(145deg, #fdf2f8 0%, #fce7f3 100%);
  border-color: #fbcfe8;
}

.folder-browse-file-icon--emoji.folder-browse-file-icon--mp3,
.folder-browse-file-icon--emoji.folder-browse-file-icon--wav,
.folder-browse-file-icon--emoji.folder-browse-file-icon--ogg {
  background: linear-gradient(145deg, #eff6ff 0%, #e0f2fe 100%);
  border-color: #bae6fd;
}

.folder-browse-file-icon--emoji.folder-browse-file-icon--md {
  background: linear-gradient(145deg, #eff6ff 0%, #dbeafe 100%);
  border-color: #bfdbfe;
}

.folder-browse-file-icon--emoji.folder-browse-file-icon--pdf {
  background: linear-gradient(145deg, #fef2f2 0%, #fee2e2 100%);
  border-color: #fecaca;
}

.folder-browse-file-hero-body {
  flex: 1 1 auto;
  min-width: 0;
  display: flex;
  flex-direction: column;
  gap: 6px;
}

.folder-browse-file-title {
  margin: 0;
  flex: 1 1 auto;
  min-width: 0;
  font-size: clamp(1rem, 2vw, 1.25rem);
  line-height: 1.3;
  color: #0f172a;
  word-break: break-word;
}

.folder-browse-file-hero-meta {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 6px;
}

.folder-browse-file-rename-btn,
.folder-browse-file-delete-btn {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 28px;
  min-width: 28px;
  height: 28px;
  padding: 0;
  border: 1px solid #cbd5e1;
  border-radius: 8px;
  background: #fff;
  color: #475569;
  cursor: pointer;
  flex-shrink: 0;
  transition: background 0.15s ease, border-color 0.15s ease, color 0.15s ease;
}

.folder-browse-file-rename-btn:hover:not(:disabled),
.folder-browse-file-rename-btn:focus-visible:not(:disabled) {
  border-color: #93c5fd;
  background: #eff6ff;
  color: #1d4ed8;
}

.folder-browse-file-delete-btn {
  border-color: rgba(239, 68, 68, 0.45);
  background: #fef2f2;
  color: #b91c1c;
}

.folder-browse-file-delete-btn:hover:not(:disabled),
.folder-browse-file-delete-btn:focus-visible:not(:disabled) {
  border-color: #f87171;
  background: #fee2e2;
  color: #991b1b;
}

.folder-browse-file-rename-btn.hidden,
.folder-browse-file-delete-btn.hidden {
  display: none;
}

.folder-browse-file-action-icon {
  width: 15px;
  height: 15px;
  display: block;
}

.folder-browse-file-body {
  border: 0;
  border-radius: 0;
  background: transparent;
  padding: 0;
}

.folder-browse-file-image-wrap {
  display: flex;
  justify-content: center;
}

.folder-browse-file-image {
  max-width: 100%;
  max-height: 72vh;
  border-radius: 8px;
  display: block;
}

.folder-browse-file-player {
  width: 100%;
}

.folder-browse-file-body--empty {
  display: none;
}

.node-navigation-props {
  margin: 0;
}

.node-overview.is-entry-overview {
  border: 0;
  border-radius: 0;
  background: transparent;
  overflow-x: clip;
  overflow-y: auto;
}

.node-overview.is-entry-overview::before,
.node-overview.is-entry-overview::after {
  display: none;
}

.node-overview.is-entry-overview .node-overview-content {
  border-radius: 12px;
  border: 1px solid rgba(148, 163, 184, 0.18);
  background: linear-gradient(180deg, #f8fafc 0%, #ffffff 360px);
}

.node-overview.is-entry-overview.is-entry-kind--record .node-overview-content {
  background: linear-gradient(180deg, #f0fdfa 0%, #f8fafc 240px, #ffffff 420px);
  border-color: rgba(13, 148, 136, 0.14);
}

.node-overview.is-entry-overview.is-entry-kind--record-category .node-overview-content {
  background: linear-gradient(180deg, #eff6ff 0%, #f8fafc 240px, #ffffff 420px);
  border-color: rgba(59, 130, 246, 0.14);
}

.node-overview.is-entry-overview.is-entry-kind--media-category .node-overview-content {
  background: linear-gradient(180deg, #f5f3ff 0%, #f8fafc 240px, #ffffff 420px);
  border-color: rgba(124, 58, 237, 0.12);
}

.node-overview.is-entry-overview.is-entry-kind--media-asset .node-overview-content,
.node-overview.is-entry-overview.is-entry-kind--sidecar .node-overview-content {
  background: linear-gradient(180deg, #ecfeff 0%, #f8fafc 240px, #ffffff 420px);
  border-color: rgba(6, 182, 212, 0.14);
}

.node-overview.is-entry-overview.is-entry-media-asset--video .node-overview-content {
  background: linear-gradient(180deg, #0f172a 0%, #1e293b 120px, #f8fafc 360px, #ffffff 520px);
  border-color: rgba(51, 65, 85, 0.35);
}

.node-overview.is-entry-overview.is-entry-media-asset--audio .node-overview-content {
  background: linear-gradient(180deg, #f5f3ff 0%, #f8fafc 220px, #ffffff 420px);
  border-color: rgba(124, 58, 237, 0.14);
}

.node-overview.is-entry-overview.is-entry-media-asset--pdf .node-overview-content,
.node-overview.is-entry-overview.is-entry-media-asset--document .node-overview-content {
  background: linear-gradient(180deg, #fff7ed 0%, #f8fafc 220px, #ffffff 420px);
  border-color: rgba(234, 88, 12, 0.12);
}

.node-overview.is-entry-overview.is-entry-media-asset--archive .node-overview-content {
  background: linear-gradient(180deg, #fffbeb 0%, #f8fafc 220px, #ffffff 420px);
  border-color: rgba(217, 119, 6, 0.14);
}

.node-overview.is-entry-overview.is-navigation-split,
.node-overview.is-navigation-split:not(.is-entry-overview) {
  border: 0;
  border-radius: 0;
  background: transparent;
}

.node-overview.is-entry-overview.is-navigation-split::before,
.node-overview.is-entry-overview.is-navigation-split::after,
.node-overview.is-navigation-split:not(.is-entry-overview)::before,
.node-overview.is-navigation-split:not(.is-entry-overview)::after {
  display: none;
}

.node-overview.is-entry-overview.is-navigation-split .node-overview-content,
.node-overview.is-navigation-split:not(.is-entry-overview) .node-overview-content {
  border: 1px solid rgba(148, 163, 184, 0.18);
  border-radius: 12px;
  background: linear-gradient(180deg, #f8fafc 0%, #ffffff 360px);
  box-sizing: border-box;
}

.node-entry-overview-media-asset.node-navigation-hero {
  gap: 0;
  margin: 0;
  overflow: hidden;
}

.node-entry-overview-media-asset.node-navigation-hero > .node-entry-overview-hero-nav {
  order: 1;
}

.node-entry-overview-media-asset.node-navigation-hero > .node-entry-overview-media-asset-showcase {
  order: 2;
}

.node-entry-overview-media-asset.node-navigation-hero > .node-navigation-hero-main,
.node-entry-overview-media-asset.node-navigation-hero > .node-entry-overview-media-asset-head {
  order: 3;
}

.node-entry-overview-media-asset--image.node-navigation-hero {
  overflow: visible;
}

.node-entry-overview-media-asset.node-navigation-hero .node-entry-overview-media-asset-showcase {
  border: none;
  border-radius: 0;
  box-shadow: none;
}

.node-entry-overview-media-asset--image .node-entry-overview-media-asset-showcase.is-kind-image {
  width: 100%;
  max-width: 100%;
  background: #0f172a;
  padding: 16px;
  box-sizing: border-box;
  overflow: visible;
  display: flex;
  justify-content: center;
  align-items: center;
  margin-inline: auto;
  min-height: 220px;
}

.node-entry-overview-media-asset-image {
  display: block;
  width: auto;
  max-width: min(100%, 960px);
  max-height: min(70vh, 720px);
  height: auto;
  background: transparent;
  cursor: zoom-in;
  margin: 0;
}

.node-entry-overview-media-asset-svg {
  display: block;
  width: min(100%, 960px);
  height: min(62vh, 640px);
  min-height: 200px;
  max-width: 100%;
  border: 0;
  background: transparent;
  cursor: zoom-in;
  pointer-events: auto;
}

.node-entry-overview-media-asset-svg > .node-entry-overview-media-asset-image {
  width: 100%;
  height: 100%;
  max-width: none;
  max-height: none;
  object-fit: contain;
}

img.is-svg-media,
.node-entry-overview-media-grid-thumb img.is-svg-media,
.node-entry-overview-media-item-preview img.is-svg-media,
.folder-browse-image-thumb img.is-svg-media {
  object-fit: contain;
}

.node-entry-overview-media-asset-head.node-navigation-hero-main {
  display: flex;
  flex-direction: column;
  gap: 12px;
  border-top: 1px solid rgba(148, 163, 184, 0.22);
}

.node-entry-overview-media-asset-toolbar {
  --media-toolbar-action-height: 36px;
  display: flex;
  flex-direction: column;
  align-items: stretch;
  gap: 8px;
  width: 100%;
  overflow: visible;
  position: relative;
  z-index: 2;
}

.node-entry-overview-media-asset-toolbar-row {
  display: flex;
  align-items: stretch;
  justify-content: space-between;
  gap: 12px;
  width: 100%;
}

.node-entry-overview-file-hub-send-btn {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 6px;
  width: 100%;
  min-height: var(--media-toolbar-action-height, 36px);
  margin: 0;
  padding: 8px 14px;
  border-radius: 10px;
  border: 1px solid rgba(22, 163, 74, 0.45);
  background:
    linear-gradient(135deg, rgba(74, 222, 128, 0.22) 0%, rgba(34, 197, 94, 0.14) 55%, rgba(22, 163, 74, 0.1) 100%),
    #f0fdf4;
  color: #14532d;
  font: inherit;
  font-size: 12px;
  font-weight: 700;
  letter-spacing: 0.01em;
  line-height: 1.3;
  cursor: pointer;
  box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.9);
  transition:
    background 0.15s ease,
    border-color 0.15s ease,
    color 0.15s ease;
}

.node-entry-overview-file-hub-send-btn:hover:not(:disabled) {
  border-color: rgba(22, 163, 74, 0.62);
  background:
    linear-gradient(135deg, rgba(74, 222, 128, 0.32) 0%, rgba(34, 197, 94, 0.2) 55%, rgba(22, 163, 74, 0.14) 100%),
    #ecfdf5;
  color: #052e16;
}

.node-entry-overview-file-hub-send-btn.is-queued {
  border-color: rgba(37, 99, 235, 0.48);
  background:
    linear-gradient(135deg, rgba(96, 165, 250, 0.2) 0%, rgba(59, 130, 246, 0.12) 100%),
    #eff6ff;
  color: #1e3a8a;
}

.node-entry-overview-file-hub-send-btn.is-queued:hover:not(:disabled) {
  border-color: rgba(37, 99, 235, 0.65);
  background:
    linear-gradient(135deg, rgba(96, 165, 250, 0.28) 0%, rgba(59, 130, 246, 0.18) 100%),
    #dbeafe;
  color: #1e40af;
}

.node-entry-overview-file-hub-send-btn:focus-visible {
  outline: 2px solid rgba(22, 163, 74, 0.45);
  outline-offset: 2px;
}

.node-entry-overview-file-hub-send-btn.is-queued:focus-visible {
  outline-color: rgba(37, 99, 235, 0.45);
}

.node-entry-overview-file-hub-send-btn:disabled {
  opacity: 0.65;
  cursor: wait;
}

.node-entry-overview-file-hub-send-btn-icon {
  flex-shrink: 0;
  display: block;
  width: 16px;
  height: 16px;
}

.node-entry-overview-file-hub-send-btn-label {
  min-width: 0;
}

.node-entry-overview-media-asset .node-entry-overview-media-asset-kind {
  margin-bottom: 0;
  flex: 0 1 auto;
}

.node-entry-overview-media-asset-identity {
  width: 100%;
  min-width: 0;
}

.node-entry-overview-media-asset-body.node-navigation-hero-body {
  width: 100%;
  gap: 8px;
}

.node-entry-overview-media-asset-meta-row .node-entry-overview-media-asset-kind {
  margin: 0;
  flex: 0 0 auto;
}

.node-entry-overview-media-asset-body > .node-entry-overview-media-asset-dates {
  border-top: 1px solid rgba(148, 163, 184, 0.16);
  padding-top: 8px;
}

.node-navigation-hub-main > .node-entry-overview-media-ocr-excerpt {
  margin: -8px 0 0;
}

.node-entry-overview-media-ocr-excerpt {
  margin: 0 0 12px;
  padding: 12px 14px;
  border: 1px solid rgba(217, 119, 6, 0.22);
  border-radius: 12px;
  background:
    linear-gradient(180deg, rgba(255, 251, 235, 0.92) 0%, rgba(255, 255, 255, 0.98) 100%);
  box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.9);
}

.node-entry-overview-media-ocr-excerpt-head {
  margin-bottom: 8px;
  font-size: 11px;
  font-weight: 700;
  letter-spacing: 0.04em;
  text-transform: uppercase;
  color: #9a3412;
}

.node-entry-overview-media-ocr-excerpt-body {
  margin: 0;
  white-space: pre-wrap;
  word-break: break-word;
  font-family: inherit;
  font-size: 13px;
  line-height: 1.45;
  color: #1f2937;
  max-height: 240px;
  overflow: auto;
}

.node-entry-overview-media-ocr-excerpt.is-failed {
  border-color: rgba(148, 163, 184, 0.28);
  background: linear-gradient(180deg, #f8fafc 0%, #ffffff 100%);
  box-shadow: none;
}

.node-entry-overview-media-ocr-excerpt.is-failed .node-entry-overview-media-ocr-excerpt-head {
  color: #64748b;
}

.node-entry-overview-media-ocr-excerpt.is-failed .node-entry-overview-media-ocr-excerpt-body {
  color: #64748b;
  max-height: none;
  overflow: visible;
}

.node-entry-overview-media-asset-actions.node-navigation-hero-actions {
  display: flex;
  flex-wrap: wrap;
  gap: 6px;
  justify-content: flex-end;
  align-items: center;
  flex: 0 0 auto;
}

.node-entry-overview-media-asset-actions .node-overview-edit-btn {
  flex: 0 0 auto;
}

.node-entry-overview-media-asset-showcase {
  position: relative;
  overflow: hidden;
  border: 1px solid rgba(148, 163, 184, 0.35);
  border-radius: 14px;
  background: #0f172a;
  box-shadow: 0 8px 24px rgba(15, 23, 42, 0.08);
}

.node-entry-overview-media-asset-showcase.is-kind-image,
.node-entry-overview-media-asset-showcase.is-kind-pdf,
.node-entry-overview-media-asset-showcase.is-kind-document,
.node-entry-overview-media-asset-showcase.is-kind-archive,
.node-entry-overview-media-asset-showcase.is-kind-other {
  background: #f8fafc;
}

.node-entry-overview-media-asset-showcase.is-kind-code,
.node-entry-overview-code-showcase {
  border: 0;
  border-radius: 0;
  overflow: hidden;
  background: #fff;
  box-shadow: none;
}

.node-entry-overview-code-showcase-head {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
  padding: 9px 14px;
  background: #f6f8fa;
  border-bottom: 1px solid #d0d7de;
}

.node-entry-overview-code-showcase-filename {
  min-width: 0;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
  font-family: ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New",
    monospace;
  font-size: 12px;
  font-weight: 600;
  color: #24292f;
}

.node-entry-overview-code-showcase-lang {
  flex-shrink: 0;
  padding: 0;
  border-radius: 0;
  background: transparent;
  color: #57606a;
  font-size: 10px;
  font-weight: 700;
  letter-spacing: 0.06em;
}

.node-entry-overview-code-preview {
  min-width: 0;
  max-width: 100%;
}

.node-navigation-hero > .node-entry-overview-code-preview {
  margin: 0;
}

.node-navigation-hero > .node-entry-overview-code-preview .node-entry-overview-code-showcase,
.node-navigation-hero > .node-entry-overview-code-preview .node-entry-overview-media-asset-showcase.is-kind-code {
  border: 0;
  border-top: 1px solid rgba(148, 163, 184, 0.22);
  border-radius: 0;
}

.node-navigation-hero > .node-entry-overview-code-preview:last-child .node-entry-overview-code-showcase,
.node-navigation-hero > .node-entry-overview-code-preview:last-child .node-entry-overview-media-asset-showcase.is-kind-code {
  border-bottom-left-radius: 13px;
  border-bottom-right-radius: 13px;
}

.node-navigation-hero > .node-entry-overview-code-preview .node-entry-overview-code-showcase-head {
  border-bottom-color: rgba(148, 163, 184, 0.22);
}

.node-entry-overview-code-showcase-body,
.node-entry-overview-media-asset-code-preview {
  margin: 0;
  padding: 0;
  max-height: none;
  overflow: visible;
  font-size: 13px;
  line-height: 1.55;
  background: #fff;
}

.node-entry-overview-code-showcase-body .code-preview-with-line-numbers,
.node-entry-overview-media-asset-code-preview .code-preview-with-line-numbers {
  display: grid;
  grid-template-columns: auto minmax(0, 1fr);
  align-items: start;
  gap: 0;
  min-width: 0;
  overflow-x: auto;
}

.node-entry-overview-code-showcase-body .code-preview-line-numbers,
.node-entry-overview-media-asset-code-preview .code-preview-line-numbers {
  margin: 0;
  padding: 14px 12px 14px 14px;
  border-right: 1px solid #d0d7de;
  background: #f6f8fa;
  color: #656d76;
  font-family: ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New",
    monospace;
  font-size: 13px;
  line-height: 1.55;
  text-align: right;
  user-select: none;
  white-space: pre;
  min-width: 2.5em;
}

.node-entry-overview-code-showcase-body .code-preview-with-line-numbers pre,
.node-entry-overview-media-asset-code-preview .code-preview-with-line-numbers pre {
  margin: 0;
  padding: 14px 14px 14px 12px;
  border: 0;
  background: #fff;
  overflow: visible;
  min-width: 0;
  white-space: pre;
  word-break: normal;
  overflow-wrap: normal;
}

.node-entry-overview-code-showcase-body .code-preview-with-line-numbers pre code,
.node-entry-overview-code-showcase-body .code-preview-with-line-numbers pre code.hljs,
.node-entry-overview-media-asset-code-preview .code-preview-with-line-numbers pre code,
.node-entry-overview-media-asset-code-preview .code-preview-with-line-numbers pre code.hljs {
  display: block;
  padding: 0;
  border-radius: 0;
  font-family: ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New",
    monospace;
  font-size: 13px;
  line-height: 1.55;
  tab-size: 2;
  white-space: pre;
  word-break: normal;
  overflow-wrap: normal;
}

.node-entry-overview-code-showcase-body pre,
.node-entry-overview-media-asset-code-preview pre {
  margin: 0;
  padding: 14px;
  border: 0;
  background: #fff;
  overflow: visible;
  min-width: 0;
}

.node-entry-overview-code-showcase-body pre code,
.node-entry-overview-media-asset-code-preview code,
.node-entry-overview-code-showcase-body pre code.hljs,
.node-entry-overview-media-asset-code-preview pre code.hljs {
  display: block;
  padding: 0;
  border-radius: 0;
  font-family: ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New",
    monospace;
  font-size: 13px;
  line-height: 1.55;
  tab-size: 2;
  white-space: pre;
  word-break: normal;
  overflow-wrap: normal;
}

.node-entry-overview-code-loading,
.node-entry-overview-code-notice,
.node-entry-overview-media-asset-code-loading,
.node-entry-overview-media-asset-code-notice {
  margin: 0;
  padding: 28px 16px;
  color: #57606a;
  text-align: center;
  font-size: 13px;
  line-height: 1.45;
}

.node-entry-overview-tabular-showcase {
  border: 1px solid var(--border);
  border-radius: 12px;
  overflow: hidden;
  background: var(--panel);
  box-shadow: 0 4px 18px rgba(15, 23, 42, 0.06);
}

.node-entry-overview-tabular-showcase-head {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
  padding: 9px 14px;
  border-bottom: 1px solid var(--border);
  background: #f8fafc;
}

.node-entry-overview-tabular-showcase-title {
  font-size: 12px;
  font-weight: 700;
  color: #334155;
}

.node-entry-overview-tabular-showcase-file {
  font-family: ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New",
    monospace;
  font-size: 11px;
  color: #64748b;
}

.node-entry-overview-tabular-preview-body {
  padding: 12px 14px 14px;
  max-height: none;
  overflow: visible;
}

.node-entry-overview-tabular-manifest-body {
  padding: 0;
  overflow: visible;
}

.node-entry-overview-tabular-manifest-body .tabular-meta:first-child {
  margin-top: 0;
}

.node-entry-overview-tabular-manifest-body .tabular-table-wrap {
  margin: 0;
}

.node-entry-overview-tabular-preview-body .tabular-meta:first-child {
  margin-top: 0;
}

.node-entry-overview-tabular-loading,
.node-entry-overview-tabular-notice {
  margin: 0;
  padding: 24px 16px;
  color: var(--muted);
  text-align: center;
  font-size: 13px;
  line-height: 1.45;
}

.node-entry-overview-media-asset-showcase.is-kind-audio {
  background: linear-gradient(135deg, #ede9fe 0%, #f5f3ff 48%, #faf5ff 100%);
}

.node-entry-overview-media-asset-video {
  display: block;
  width: 100%;
  max-height: min(52vh, 420px);
  background: #000;
  border-radius: 14px;
}

.node-entry-overview-media-asset-audio-visual {
  display: flex;
  align-items: center;
  justify-content: center;
  min-height: 120px;
  font-size: 56px;
  line-height: 1;
  opacity: 0.55;
}

.node-entry-overview-media-asset-audio {
  display: block;
  width: calc(100% - 24px);
  margin: 0 12px 14px;
}

.node-entry-overview-media-asset-pdf {
  display: block;
  width: 100%;
  min-height: min(52vh, 420px);
  height: min(52vh, 420px);
  border: 0;
  background: #fff;
}

.node-entry-overview-media-asset-file-fallback {
  display: flex;
  align-items: center;
  justify-content: center;
  min-height: 180px;
  font-size: 64px;
  line-height: 1;
  color: #64748b;
}

.node-entry-overview-media-asset-file-fallback-icon {
  width: 72px;
  height: 72px;
  object-fit: contain;
  flex-shrink: 0;
}

.material-file-icon--kind-badge {
  width: 1.05em;
  height: 1.05em;
  margin-right: 0.2em;
  vertical-align: -0.18em;
  object-fit: contain;
}

.node-entry-overview-media-asset-foot {
  display: flex;
  flex-wrap: wrap;
  gap: 12px 16px;
  align-items: flex-start;
  justify-content: space-between;
}

.node-entry-overview-media-asset-main {
  display: flex;
  flex: 1 1 280px;
  flex-direction: column;
  gap: 4px;
  min-width: 0;
}

.node-entry-overview-media-asset-kind {
  display: inline-flex;
  align-items: center;
  align-self: flex-start;
  gap: 6px;
  padding: 4px 10px;
  border-radius: 999px;
  border: 1px solid rgba(148, 163, 184, 0.35);
  background: #fff;
  font-size: 11px;
  font-weight: 700;
  line-height: 1.2;
  color: #475569;
}

.node-entry-overview-media-asset--video .node-entry-overview-media-asset-kind {
  border-color: rgba(51, 65, 85, 0.35);
  background: #1e293b;
  color: #e2e8f0;
}

.node-entry-overview-media-asset--audio .node-entry-overview-media-asset-kind {
  border-color: rgba(124, 58, 237, 0.22);
  background: #f5f3ff;
  color: #5b21b6;
}

.node-entry-overview-media-asset-title {
  margin: 0;
  font-size: 22px;
  font-weight: 700;
  line-height: 1.25;
  color: #0f172a;
  word-break: break-word;
}

.node-entry-overview-media-asset-path,
.node-entry-overview-media-asset-meta-line {
  margin: 0;
  font-size: 12px;
  line-height: 1.4;
  color: #64748b;
}

.node-entry-overview-media-asset-meta-line {
  font-family: ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", monospace;
  font-size: 11px;
}

.node-entry-overview-media-asset-actions {
  display: flex;
  flex-wrap: wrap;
  gap: 6px;
  align-items: center;
}

.node-entry-overview-media-asset-dates.node-navigation-hero-dates {
  margin: 2px 0 0;
  padding: 0;
  border: 0;
}

.node-entry-overview-memory-trail {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 6px;
  margin: 0;
  padding: 10px 12px;
  border: 1px solid rgba(148, 163, 184, 0.35);
  border-radius: 10px;
  background: #f8fafc;
  font-size: 12px;
  line-height: 1.35;
}

.node-overview.is-entry-overview .node-navigation-hub:not(.node-navigation-hub--split) {
  gap: 12px;
}

.node-entry-overview-slot-panel {
  display: flex;
  flex-direction: column;
  gap: 8px;
  min-width: 0;
}

.node-entry-overview-slot-panel .node-entry-overview-slot-counters {
  margin-bottom: 0;
  min-height: 0;
}

.node-entry-overview-slot-panel .node-entry-overview-search-wrap {
  margin: 0;
}

.node-entry-overview-browse-panel.is-slot-folder-missing .node-entry-overview-browse-toolbar {
  justify-content: center;
  margin-top: 4px;
}

.node-entry-overview-browse-panel.is-slot-folder-missing
  .node-entry-overview-browse-toolbar
  .node-entry-overview-browse-actions {
  margin-left: 0;
  justify-content: center;
  width: 100%;
}

.node-entry-overview-slot-folder-missing {
  padding: 14px 16px;
  border: 1px dashed rgba(37, 99, 235, 0.35);
  border-radius: 12px;
  background: rgba(239, 246, 255, 0.72);
}

.node-entry-overview-slot-folder-missing-text {
  margin: 0;
  font-size: 13px;
  line-height: 1.5;
  color: #1e3a8a;
}

.node-entry-overview-slot-folder-missing-path {
  margin: 8px 0 0;
  font-size: 12px;
  color: #475569;
}

.node-entry-overview-slot-folder-missing-path code {
  font-size: 11px;
  color: #1d4ed8;
  background: rgba(255, 255, 255, 0.72);
}

.node-entry-overview-browse-panel {
  display: flex;
  flex-direction: column;
  gap: 8px;
  min-width: 0;
}

.node-entry-overview-browse-panel .node-entry-overview-search-wrap {
  margin: 0;
}

.node-entry-overview-browse-toolbar {
  display: flex;
  align-items: center;
  gap: 8px;
  min-width: 0;
}

.node-entry-overview-browse-toolbar .node-entry-overview-search-wrap {
  flex: 1 1 auto;
  min-width: 0;
  width: auto;
}

.node-entry-overview-browse-toolbar .folder-browse-images-cols-control {
  flex: 0 0 auto;
  margin-left: 0;
}

.node-entry-overview-browse-toolbar .node-navigation-list-sort {
  flex: 0 0 auto;
  margin-left: 0;
}

.node-entry-overview-browse-toolbar .node-navigation-list-sort-toggle {
  min-height: 34px;
  box-sizing: border-box;
}

.node-entry-overview-browse-toolbar .node-entry-overview-browse-actions {
  margin-left: auto;
}

.node-entry-overview-browse-actions {
  display: inline-flex;
  align-items: center;
  gap: 6px;
  flex: 0 0 auto;
}

.node-entry-overview-browse-actions .entry-overview-create-slot-folder-btn,
.node-entry-overview-browse-actions .external-create-section-btn,
.node-entry-overview-browse-actions .external-create-btn,
.node-entry-overview-browse-actions .entry-overview-schema-btn,
.node-entry-overview-browse-actions .media-upload-btn {
  box-sizing: border-box;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 5px;
  height: 34px;
  min-height: 34px;
  padding: 0 10px;
  font-size: 11px;
  font-weight: 600;
  line-height: 1.35;
  border-radius: 8px;
  white-space: nowrap;
}

.entry-overview-schema-btn {
  border: 1px solid #94a3b8;
  background: #f1f5f9;
  color: #475569;
  cursor: pointer;
}

.entry-overview-schema-btn:hover:not(:disabled),
.entry-overview-schema-btn:focus-visible {
  border-color: #64748b;
  background: #e2e8f0;
  color: #334155;
  outline: none;
}

.entry-overview-schema-btn:disabled {
  opacity: 0.7;
  cursor: default;
}

.node-entry-overview-browse-action-btn-icon {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  flex: 0 0 auto;
  width: 14px;
  height: 14px;
}

.node-entry-overview-browse-action-btn-icon svg {
  display: block;
  width: 14px;
  height: 14px;
}

.node-entry-overview-search-wrap {
  margin: 0;
  width: 100%;
}

.node-entry-overview-search-wrap .menu-search-bar {
  min-height: 34px;
  height: 34px;
  box-sizing: border-box;
}

.node-entry-overview-section-list-anchor {
  display: none;
}

.node-entry-overview-memory-trail-root,
.node-entry-overview-memory-trail-home,
.node-entry-overview-memory-trail-toc,
.node-entry-overview-memory-trail-segment {
  margin: 0;
  padding: 4px 10px;
  border-radius: 999px;
  font: inherit;
  font-size: 12px;
  font-weight: 600;
  line-height: 1.35;
  white-space: nowrap;
}

.node-entry-overview-memory-trail-root,
.node-entry-overview-memory-trail-home,
.node-entry-overview-memory-trail-toc,
.node-entry-overview-memory-trail-segment.is-link {
  border: 1px solid rgba(148, 163, 184, 0.45);
  background: #fff;
  color: #334155;
  cursor: pointer;
  transition: background 0.15s ease, border-color 0.15s ease, color 0.15s ease;
}

.node-entry-overview-memory-trail-root:hover,
.node-entry-overview-memory-trail-root:focus-visible,
.node-entry-overview-memory-trail-home:hover,
.node-entry-overview-memory-trail-home:focus-visible,
.node-entry-overview-memory-trail-toc:hover,
.node-entry-overview-memory-trail-toc:focus-visible,
.node-entry-overview-memory-trail-segment.is-link:hover,
.node-entry-overview-memory-trail-segment.is-link:focus-visible {
  border-color: #cbd5e1;
  background: #f1f5f9;
  color: #0f172a;
  outline: none;
}

.node-entry-overview-memory-trail-home {
  max-width: min(220px, 42vw);
  overflow: hidden;
  text-overflow: ellipsis;
}

.node-entry-overview-memory-trail-segment.is-current {
  border: 1px solid rgba(100, 116, 139, 0.45);
  background: #fff;
  color: #0f172a;
}

.node-entry-overview-memory-trail-sep {
  color: #94a3b8;
  font-size: 11px;
  user-select: none;
}

.node-entry-overview-memory-toc {
  margin: 0;
  padding: 0 2px 4px;
}

.node-entry-overview-memory-toc .nav-book-toc-tree--guide .nav-book-toc-list--root,
.node-navigation-memory-card .nav-book-toc-tree--guide .nav-book-toc-list--root,
.node-entry-overview-browse-panel .nav-book-toc-tree--guide .nav-book-toc-list--root {
  padding-left: 0;
  border-left: 0;
}

.node-entry-overview-memory-toc .nav-book-toc-tree--guide .nav-book-toc-list--root > .nav-book-toc-folder--root,
.node-navigation-memory-card .nav-book-toc-tree--guide .nav-book-toc-list--root > .nav-book-toc-folder--root,
.node-entry-overview-browse-panel .nav-book-toc-tree--guide .nav-book-toc-list--root > .nav-book-toc-folder--root {
  margin-left: 0;
}

.node-entry-overview-memory-toc
  .nav-book-toc-tree--guide
  .nav-book-toc-list--root
  > .nav-book-toc-entry--root-level
  .nav-book-toc-link::before {
  display: none;
}

.node-navigation-memory-card .nav-book-toc-tree--guide .nav-book-toc-folder--root > .nav-book-toc-list,
.node-entry-overview-browse-panel .nav-book-toc-tree--guide .nav-book-toc-folder--root > .nav-book-toc-list,
.node-entry-overview-memory-toc .nav-book-toc-tree--guide .nav-book-toc-folder--root > .nav-book-toc-list {
  margin: 4px 0 2px var(--nav-toc-spine);
  padding: 2px 0 4px var(--nav-toc-branch-pad);
  border-left: 1.5px solid var(--nav-toc-line);
}

.nav-book-toc-tree--guide .nav-book-toc-folder--root > .nav-book-toc-folder-head {
  grid-template-columns: 24px minmax(0, 1fr) auto;
  gap: 6px;
}

.nav-book-toc-tree--guide .nav-book-toc-folder--root .nav-book-toc-folder-label {
  padding: 6px 8px 6px 0;
}

.node-entry-overview-memory-toc-nav {
  margin: 0;
}

.node-entry-overview-media-toc .node-entry-overview-media-grid-wrap {
  list-style: none;
  position: relative;
  margin: 6px 0 10px;
  padding: 0;
}

.node-entry-overview-media-grid-wrap .folder-browse-images-grid,
.navigation-media-images-grid-wrap .folder-browse-images-grid,
.node-entry-overview-browse-media-grid .folder-browse-images-grid {
  border-radius: 10px;
  overflow: hidden;
}

.navigation-media-images-grid-wrap,
.node-entry-overview-browse-media-grid {
  margin: 0 0 16px;
}

.node-entry-overview-browse-panel .entry-overview-browse-upload-host {
  margin: 0 0 12px;
}

.node-entry-overview-browse-panel .entry-overview-browse-upload-host.is-open {
  display: block;
}

.node-navigation-hub-rail-upload-btn.is-active {
  border-color: #15803d;
  background: #bbf7d0;
  box-shadow: 0 0 0 2px rgba(34, 197, 94, 0.18);
}

.node-navigation-memory-head .folder-browse-images-cols-control {
  margin-left: auto;
  flex-shrink: 0;
}

.node-navigation-memory-head .folder-browse-images-cols-label {
  font-size: 10px;
}

.node-navigation-memory-head .folder-browse-images-cols-btn {
  min-width: 0;
  height: 26px;
  font-size: 10px;
}

.navigation-media-images-layout-btn[data-layout="strip"] {
  min-width: 26px;
  width: 26px;
  padding: 0;
  display: inline-flex;
  align-items: center;
  justify-content: center;
}

.navigation-media-layout-strip-icon {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  line-height: 0;
}

.node-entry-overview-media-strip-wrap .node-navigation-media-thumbs {
  margin: 6px 0 10px;
}

.nav-book-toc-tree--guide .nav-book-toc-folder > .nav-book-toc-list .node-entry-overview-media-grid-wrap::before {
  content: "";
  position: absolute;
  left: calc(-1 * var(--nav-toc-branch-pad));
  top: 18px;
  width: calc(var(--nav-toc-branch-pad) - 1px);
  border-top: 1.5px solid var(--nav-toc-line);
  pointer-events: none;
}

.nav-book-toc-tree--guide .nav-book-toc-entry--media {
  position: relative;
  margin: 4px 0;
}

.nav-book-toc-tree--guide .nav-book-toc-folder > .nav-book-toc-list .nav-book-toc-entry--media::before {
  content: "";
  position: absolute;
  left: calc(-1 * var(--nav-toc-branch-pad));
  top: 50%;
  width: calc(var(--nav-toc-branch-pad) - 1px);
  border-top: 1.5px solid var(--nav-toc-line);
  pointer-events: none;
}

.nav-book-toc-tree--guide .nav-book-toc-list--root > .nav-book-toc-entry--media.nav-book-toc-entry--root-level::before {
  left: calc(-1 * var(--nav-toc-spine));
  width: calc(var(--nav-toc-spine) - 1px);
}

.node-entry-overview-browse-panel
  .nav-book-toc-tree--guide
  .nav-book-toc-list--root
  > .nav-book-toc-entry--media.nav-book-toc-entry--root-level::before,
.node-entry-overview-memory-toc
  .nav-book-toc-tree--guide
  .nav-book-toc-list--root
  > .nav-book-toc-entry--media.nav-book-toc-entry--root-level::before {
  display: none;
}

.node-entry-overview-media-toc .node-entry-overview-media-item {
  box-sizing: border-box;
}

.node-entry-overview-media-grid {
  display: grid;
  grid-template-columns: repeat(auto-fill, minmax(132px, 1fr));
  gap: 10px;
}

.node-entry-overview-media-grid-card {
  margin: 0;
  min-width: 0;
}

.node-entry-overview-media-grid-btn {
  display: flex;
  flex-direction: column;
  align-items: stretch;
  gap: 6px;
  width: 100%;
  margin: 0;
  padding: 8px;
  border: 1px solid rgba(148, 163, 184, 0.35);
  border-radius: 10px;
  background: #fff;
  color: #0f172a;
  cursor: pointer;
  text-align: left;
  transition: border-color 0.15s ease, box-shadow 0.15s ease, background 0.15s ease;
}

.node-entry-overview-media-grid-btn:hover,
.node-entry-overview-media-grid-btn:focus-visible {
  border-color: rgba(6, 182, 212, 0.45);
  background: #f8fafc;
  box-shadow: 0 1px 0 rgba(15, 23, 42, 0.04);
  outline: none;
}

.node-entry-overview-media-grid-thumb {
  display: flex;
  align-items: center;
  justify-content: center;
  aspect-ratio: 4 / 3;
  border-radius: 8px;
  overflow: hidden;
  background: #f1f5f9;
}

.node-entry-overview-media-grid-thumb img {
  display: block;
  width: 100%;
  height: 100%;
  object-fit: cover;
}

.node-entry-overview-media-grid-thumb.is-fallback {
  font-size: 28px;
}

.node-entry-overview-media-grid-caption {
  font-size: 12px;
  font-weight: 700;
  line-height: 1.35;
  word-break: break-word;
}

.node-entry-overview-media-grid-meta {
  font-size: 10px;
  line-height: 1.35;
  color: #64748b;
  word-break: break-word;
}

.nav-book-toc-entry--media {
  list-style: none;
  margin: 0;
}

.node-entry-overview-media-item {
  display: flex;
  align-items: center;
  gap: 10px;
  width: 100%;
  margin: 0;
  padding: 10px 12px;
  border: 1px solid rgba(148, 163, 184, 0.3);
  border-radius: 10px;
  background: #fff;
  color: #0f172a;
  cursor: pointer;
  text-align: left;
  transition: border-color 0.15s ease, background 0.15s ease;
}

.node-entry-overview-media-item:hover,
.node-entry-overview-media-item:focus-visible {
  border-color: rgba(6, 182, 212, 0.45);
  background: #f8fafc;
  outline: none;
}

.node-entry-overview-media-item-preview {
  display: flex;
  align-items: center;
  justify-content: center;
  flex: 0 0 52px;
  width: 52px;
  height: 52px;
  border-radius: 8px;
  overflow: hidden;
  background: #f1f5f9;
}

.node-entry-overview-media-item-preview img:not(.material-file-icon) {
  display: block;
  width: 100%;
  height: 100%;
  object-fit: cover;
}

.node-entry-overview-media-item-preview.is-icon,
.node-entry-overview-media-item-preview.is-fallback {
  flex: 0 0 32px;
  width: 32px;
  height: 32px;
  font-size: 18px;
}

.node-entry-overview-media-item-preview img.material-file-icon,
.node-entry-overview-media-item-preview-icon {
  display: block;
  width: 20px;
  height: 20px;
  max-width: 20px;
  max-height: 20px;
  object-fit: contain;
}

.node-entry-overview-media-item-body {
  display: flex;
  flex-direction: column;
  gap: 2px;
  min-width: 0;
  flex: 1 1 auto;
}

.node-entry-overview-media-item-title {
  display: inline-flex;
  align-items: center;
  gap: 5px;
  font-size: 12px;
  font-weight: 700;
  line-height: 1.35;
  word-break: break-word;
}

.node-entry-overview-media-item-meta {
  font-size: 10px;
  line-height: 1.35;
  color: #64748b;
  word-break: break-word;
}

.node-entry-overview-attachments {
  display: flex;
  flex-direction: column;
  gap: 10px;
  margin: 0;
}

.node-entry-overview-attachments-head {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 8px 12px;
}

.node-entry-overview-attachments-title {
  margin: 0;
  font-size: 11px;
  font-weight: 800;
  letter-spacing: 0.08em;
  text-transform: uppercase;
  color: #475569;
}

.node-entry-overview-attachments-legend {
  display: flex;
  flex-wrap: wrap;
  gap: 10px;
  margin: 0;
  font-size: 10px;
  color: #64748b;
}

.node-entry-overview-attachments-legend-item.is-in-body {
  color: #059669;
}

.node-entry-overview-attachments-legend-item.is-unlinked {
  color: #94a3b8;
}

.node-entry-overview-attachments-legend-item.is-sortable {
  color: #6366f1;
}

.node-entry-overview-attachments-list {
  display: flex;
  flex-direction: column;
  gap: 8px;
}

.node-entry-overview-attachments .props-form-attachment-item {
  display: grid;
  grid-template-columns: 40px minmax(0, 1fr) auto;
  align-items: center;
  gap: 8px;
  padding: 8px 10px;
  border-radius: 10px;
  box-sizing: border-box;
  width: 100%;
  max-width: 100%;
  transition: border-color 0.15s ease, background-color 0.15s ease;
}

.node-entry-overview-attachments .props-form-attachment-item.is-in-body {
  border: 1px solid rgba(16, 185, 129, 0.42);
  background: rgba(16, 185, 129, 0.08);
}

.node-entry-overview-attachments .props-form-attachment-item.is-unlinked {
  border: 1px dashed rgba(148, 163, 184, 0.55);
  background: rgba(248, 250, 252, 0.96);
}

.node-entry-overview-attachments .props-form-attachment-thumb,
.node-entry-overview-attachments .props-form-attachment-icon {
  width: 40px;
  height: 40px;
  border-radius: 8px;
  object-fit: cover;
}

.node-entry-overview-attachments .props-form-attachment-icon {
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: 18px;
  background: rgba(255, 255, 255, 0.82);
}

.node-entry-overview-attachments .props-form-attachment-body {
  display: flex;
  flex-direction: row;
  align-items: center;
  gap: 6px;
  min-width: 0;
}

.node-entry-overview-attachments .props-form-attachment-name {
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
  font-weight: 600;
  font-size: 12px;
  color: #334155;
}

.node-entry-overview-attachments .props-form-attachment-item.is-in-body .props-form-attachment-status--dot {
  color: #059669;
}

.node-entry-overview-attachments .props-form-attachment-item.is-unlinked .props-form-attachment-status--dot {
  color: #94a3b8;
}

.node-entry-overview-attachments .props-form-attachment-action {
  min-width: 24px;
  height: 24px;
  padding: 0;
  border: 1px solid rgba(148, 163, 184, 0.38);
  border-radius: 7px;
  background: rgba(255, 255, 255, 0.92);
  cursor: pointer;
  color: #475569;
}

.node-entry-overview-attachments .props-form-attachment-action:hover {
  background: #fff;
  border-color: rgba(100, 116, 139, 0.45);
}

.node-entry-overview-attachments .props-form-attachment-action--props.has-icon:hover {
  color: #2563eb;
  border-color: rgba(37, 99, 235, 0.35);
  background: #eff6ff;
}

.node-entry-overview-attachment-item .props-form-attachment-actions {
  display: flex;
  align-items: center;
  gap: 4px;
}

.node-entry-overview-attachments .props-form-attachment-action--preview.has-icon:hover {
  color: #0f766e;
  border-color: rgba(15, 118, 110, 0.35);
  background: #ecfdf5;
}

.node-entry-overview-attachments .props-form-attachment-action--finder.has-icon:hover {
  color: #b45309;
  border-color: rgba(180, 83, 9, 0.35);
  background: #fffbeb;
}

.props-form-attachment-item.props-form-attachment-sort-row {
  position: relative;
  padding-left: 28px;
}

.props-form-attachment-sort-handle.menu-sort-handle {
  position: absolute;
  left: 4px;
  top: 50%;
  transform: translateY(-50%);
  width: 20px;
  height: 20px;
  padding: 0;
  font-size: 14px;
  line-height: 1;
}

.props-form-attachment-item.is-dragging {
  opacity: 0.55;
}

.node-entry-overview-record-parts-fold.node-overview-fold {
  margin-top: 12px;
  border: 1px solid rgba(153, 246, 228, 0.55);
  border-radius: 10px;
  background: rgba(240, 253, 250, 0.72);
  overflow: hidden;
  box-shadow: 0 1px 2px rgba(15, 118, 110, 0.06);
}

.node-entry-overview-record-parts-fold > .node-overview-fold-head {
  background: linear-gradient(135deg, #ecfdf5 0%, #f0fdfa 55%, #ecfeff 100%);
  border-radius: 0;
  padding: 10px 12px 10px 14px;
}

.node-entry-overview-record-parts-fold > .node-overview-fold-head:hover {
  background: linear-gradient(135deg, #d1fae5 0%, #ccfbf1 55%, #cffafe 100%);
}

.node-entry-overview-record-parts-fold[open] > .node-overview-fold-head {
  border-bottom: 1px solid rgba(153, 246, 228, 0.45);
}

.node-entry-overview-record-parts-fold .node-overview-fold-title {
  display: inline-flex;
  align-items: center;
  min-width: 0;
  text-transform: none;
  letter-spacing: 0;
  font-size: 12px;
  font-weight: 700;
  color: #0f766e;
}

.node-entry-overview-record-parts-fold-title {
  display: inline-flex;
  align-items: center;
  gap: 6px;
  min-width: 0;
}

.node-entry-overview-record-parts-fold-title .record-materials-icon {
  width: 15px;
  height: 15px;
  color: #0f766e;
  flex: 0 0 auto;
}

.node-entry-overview-record-parts-fold-title .record-materials-label {
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.node-entry-overview-record-parts-fold .node-overview-fold-body {
  padding: 10px 12px 12px;
  background: rgba(255, 255, 255, 0.55);
}

.node-entry-overview-record-parts-content {
  display: flex;
  flex-direction: column;
  gap: 10px;
}

.node-entry-overview-record-parts {
  margin: 0;
}

.node-entry-overview-record-parts-head {
  display: flex;
  flex-direction: column;
  gap: 4px;
}

.node-entry-overview-record-parts-title {
  margin: 0;
  font-size: 11px;
  font-weight: 800;
  letter-spacing: 0.08em;
  text-transform: uppercase;
  color: #475569;
}

.node-entry-overview-record-parts-hint {
  margin: 0;
  font-size: 11px;
  color: #64748b;
  font-family: ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, monospace;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.node-entry-overview-record-parts-body.is-loading {
  opacity: 0.55;
}

.node-entry-overview-record-parts-empty {
  padding: 10px 12px;
  border: 1px dashed rgba(148, 163, 184, 0.55);
  border-radius: 10px;
  background: rgba(248, 250, 252, 0.96);
  font-size: 12px;
  color: #64748b;
  line-height: 1.45;
}

.node-entry-overview-record-parts-actions {
  display: flex;
  gap: 8px;
  margin-top: 8px;
}

.node-entry-overview-record-parts-nav {
  padding: 8px 10px;
  border: 1px solid rgba(148, 163, 184, 0.35);
  border-radius: 10px;
  background: rgba(255, 255, 255, 0.72);
}

.node-entry-overview-record-parts-md-empty {
  padding: 8px 12px;
  border: 1px dashed rgba(148, 163, 184, 0.45);
  border-radius: 10px;
  background: rgba(248, 250, 252, 0.96);
  font-size: 12px;
  color: #64748b;
  line-height: 1.45;
}

.node-entry-overview-record-parts-assets {
  display: flex;
  flex-direction: column;
  gap: 8px;
  margin-top: 4px;
}

.node-entry-overview-record-parts-assets-title {
  margin: 0;
  font-size: 10px;
  font-weight: 800;
  letter-spacing: 0.08em;
  text-transform: uppercase;
  color: #64748b;
}

.node-entry-overview-record-parts-assets-list {
  display: flex;
  flex-direction: column;
  gap: 6px;
}

.node-entry-overview-record-parts-asset-row {
  display: grid;
  grid-template-columns: auto minmax(0, 1fr) auto;
  align-items: center;
  gap: 10px;
  width: 100%;
  padding: 8px 10px;
  border: 1px solid rgba(148, 163, 184, 0.35);
  border-radius: 10px;
  background: rgba(255, 255, 255, 0.92);
  text-align: left;
  cursor: pointer;
  font: inherit;
  color: inherit;
  transition: background 0.12s ease, border-color 0.12s ease;
}

.node-entry-overview-record-parts-asset-row:hover,
.node-entry-overview-record-parts-asset-row:focus-visible {
  background: #f8fafc;
  border-color: rgba(100, 116, 139, 0.45);
  outline: none;
}

.node-entry-overview-record-parts-asset-leading {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 34px;
  height: 34px;
  flex: 0 0 auto;
}

.node-entry-overview-record-parts-asset-thumb {
  width: 34px;
  height: 34px;
  border-radius: 6px;
  object-fit: cover;
  border: 1px solid rgba(148, 163, 184, 0.35);
  background: #f8fafc;
}

.node-entry-overview-record-parts-asset-icon {
  font-size: 18px;
  line-height: 1;
}

.node-entry-overview-record-parts-asset-meta {
  display: flex;
  flex-direction: column;
  gap: 2px;
  min-width: 0;
}

.node-entry-overview-record-parts-asset-name {
  font-size: 12px;
  font-weight: 600;
  color: #0f172a;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.node-entry-overview-record-parts-asset-path {
  font-size: 11px;
  color: #64748b;
  font-family: ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, monospace;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.node-entry-overview-record-parts-asset-trailing {
  display: inline-flex;
  align-items: center;
  gap: 6px;
  flex: 0 0 auto;
}

.node-entry-overview-record-parts-asset-ext {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-width: 28px;
  padding: 2px 6px;
  border-radius: 999px;
  border: 1px solid #dbe3ee;
  background: #f8fafc;
  font-size: 10px;
  font-weight: 700;
  color: #475569;
  line-height: 1.2;
}

.node-entry-overview-record-parts-asset-size {
  font-size: 10px;
  color: #94a3b8;
  font-variant-numeric: tabular-nums;
  white-space: nowrap;
}

.record-parts-tree-root {
  margin: 0;
}

.record-parts-tree-folder-head {
  display: flex;
  align-items: center;
  gap: 4px;
}

.record-parts-tree-toggle {
  width: 22px;
  height: 22px;
  padding: 0;
  border: none;
  background: transparent;
  color: #64748b;
  cursor: pointer;
  font-size: 11px;
  line-height: 1;
}

.record-parts-tree-folder-label,
.record-parts-tree-link {
  border: none;
  background: transparent;
  text-align: left;
  cursor: pointer;
  font-size: 12px;
  color: #334155;
  padding: 2px 4px;
  border-radius: 6px;
  display: inline-flex;
  align-items: center;
  gap: 6px;
  min-width: 0;
}

.record-parts-tree-link-name {
  min-width: 0;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.record-parts-tree-link-ext {
  flex: 0 0 auto;
  font-size: 9px;
  font-weight: 700;
  letter-spacing: 0.04em;
  text-transform: uppercase;
  color: #64748b;
  padding: 1px 5px;
  border-radius: 4px;
  background: rgba(148, 163, 184, 0.16);
}

.node-entry-overview-record-parts-create-btn {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 8px;
  width: 100%;
  min-height: 40px;
  margin: 0;
  padding: 8px 12px;
  border: 1px solid var(--accent, #2563eb);
  border-radius: 8px;
  background: var(--accent, #2563eb);
  color: #fff;
  font: inherit;
  font-size: 12px;
  font-weight: 600;
  line-height: 1.25;
  cursor: pointer;
  box-sizing: border-box;
  transition: background-color 0.15s ease, border-color 0.15s ease;
}

.node-entry-overview-record-parts-create-btn .record-materials-icon {
  color: #fff;
}

.node-entry-overview-record-parts-create-btn:hover:not(:disabled) {
  background: #1d4ed8;
  border-color: #1d4ed8;
}

.node-entry-overview-record-parts-create-btn:disabled {
  opacity: 0.6;
  cursor: default;
}

.record-parts-tree-folder-label:hover,
.record-parts-tree-link:hover {
  background: rgba(148, 163, 184, 0.14);
}

.record-parts-tree-list {
  margin-left: 14px;
}

.node-entry-overview-section-list {
  display: flex;
  flex-direction: column;
  gap: 0;
  margin: 0;
  padding: 0 2px 4px;
  border: 0;
  border-radius: 0;
  background: transparent;
}

.node-entry-overview-cross-slot-search {
  margin: 0 0 10px;
  width: 100%;
  min-width: 0;
}

.node-entry-overview-cross-slot-search-bar {
  align-items: center;
  min-height: 36px;
}

.node-entry-overview-cross-slot-search-bar .content-search-scope {
  flex: 0 0 auto;
  max-width: 196px;
  align-self: center;
  margin: 4px 0 4px 4px;
  border: 0;
  border-right: 1px solid var(--border);
  border-radius: 999px 0 0 999px;
}

.node-entry-overview-cross-slot-search-input-zone {
  flex: 1 1 auto;
  min-width: 0;
  padding-left: 4px;
  padding-right: 2px;
}

.node-entry-overview-cross-slot-search-bar .content-search-input {
  flex: 1 1 auto;
  min-width: 0;
  padding: 8px 8px 8px 0;
}

.node-entry-overview-cross-slot-search-stub {
  flex: 0 0 auto;
  align-self: center;
  margin: 0 12px 0 4px;
  font-size: 10px;
  letter-spacing: 0.06em;
  text-transform: uppercase;
  user-select: none;
}

.node-navigation-hub-main > .node-entry-overview-cross-slot-search {
  margin-bottom: 0;
}

.node-navigation-hub-main > .node-entry-overview-cross-slot-search + .node-entry-overview-hub-top-slot-counters,
.node-navigation-hub-main > .node-entry-overview-cross-slot-search + .node-entry-overview-hub-main-slot-counters {
  margin-top: -10px;
}

.node-entry-overview-browse-panel > .node-entry-overview-cross-slot-search {
  margin-bottom: 6px;
}

.node-entry-overview-manifest > .node-entry-overview-cross-slot-search {
  margin-bottom: 8px;
}

.node-navigation-hub-main > .node-entry-overview-hub-top-slot-counters,
.node-entry-overview-manifest > .node-entry-overview-manifest-top-slot-counters,
.node-entry-overview-manifest > .node-entry-overview-browse-slot-counters {
  margin: 0 0 12px;
  width: 100%;
  min-width: 0;
}

.node-entry-overview-manifest .node-entry-overview-browse-panel,
.node-entry-overview-manifest + .node-entry-overview-browse-panel,
.node-entry-overview-tabular-preview + .node-entry-overview-browse-panel,
.node-entry-overview-manifest + .node-entry-overview-section-list,
.node-entry-overview-tabular-preview + .node-entry-overview-section-list {
  margin-top: 12px;
}

.node-entry-overview-tags {
  display: flex;
  align-items: flex-start;
  min-width: 0;
}

.node-navigation-hero > .node-entry-overview-tags,
.node-overview-hero > .node-entry-overview-tags {
  margin: 0;
  padding: 10px 16px 12px;
  border-top: 1px solid rgba(148, 163, 184, 0.22);
  background: #fff;
  box-sizing: border-box;
}

.node-navigation-hero > .node-entry-overview-tags:last-child,
.node-overview-hero > .node-entry-overview-tags:last-child {
  border-bottom-left-radius: 13px;
  border-bottom-right-radius: 13px;
}

.node-overview-hero > .node-entry-overview-tags:last-child {
  border-bottom-left-radius: 10px;
  border-bottom-right-radius: 10px;
}

.node-entry-overview-tags-list {
  display: flex;
  flex-wrap: wrap;
  gap: 6px;
  min-width: 0;
}

.node-entry-overview-tag {
  display: inline-flex;
  align-items: center;
  gap: 2px;
  max-width: 100%;
  padding: 3px 9px 3px 7px;
  border: 1px solid rgba(148, 163, 184, 0.28);
  border-radius: 999px;
  background: linear-gradient(180deg, rgba(248, 250, 252, 0.96), rgba(241, 245, 249, 0.92));
  color: #334155;
  font-size: 12px;
  font-weight: 600;
  line-height: 1.3;
  letter-spacing: 0.01em;
  box-shadow: 0 1px 0 rgba(15, 23, 42, 0.03);
}

.node-entry-overview-tag-hash {
  color: #94a3b8;
  font-weight: 700;
}

.node-entry-overview-tag-label {
  min-width: 0;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.node-entry-overview-quality {
  border-color: rgba(251, 191, 36, 0.42);
  background: linear-gradient(180deg, rgba(255, 251, 235, 0.96), rgba(254, 243, 199, 0.9));
  color: #92400e;
}

.node-entry-overview-quality.is-needs-review {
  border-color: rgba(248, 113, 113, 0.45);
  background: linear-gradient(180deg, rgba(254, 242, 242, 0.96), rgba(254, 226, 226, 0.92));
  color: #b91c1c;
}

.node-entry-overview-quality.is-high {
  border-color: rgba(74, 222, 128, 0.42);
  background: linear-gradient(180deg, rgba(240, 253, 244, 0.96), rgba(220, 252, 231, 0.92));
  color: #166534;
}

.node-entry-overview-quality-icon {
  font-size: 11px;
  line-height: 1;
}

.node-entry-overview-quality-value {
  font-variant-numeric: tabular-nums;
}

.node-navigation-hero-meta-chip--quality.is-needs-review {
  color: #b91c1c;
}

.node-navigation-hero-meta-chip--quality.is-needs-review .node-navigation-hero-meta-icon {
  color: #dc2626;
}

.node-navigation-hero-meta-chip--quality.is-high {
  color: #166534;
}

.node-navigation-hero-meta-chip--quality.is-high .node-navigation-hero-meta-icon {
  color: #16a34a;
}

.props-form-value-wrap--stars {
  width: 100%;
}

.props-form-stars {
  display: flex;
  align-items: center;
  flex-wrap: nowrap;
  gap: 4px;
  width: 100%;
  min-height: 24px;
}

.props-form-stars-zero,
.props-form-stars-segment {
  margin: 0;
  padding: 0;
  border: 1px solid rgba(148, 163, 184, 0.35);
  border-radius: 4px;
  background: #fff;
  color: #94a3b8;
  font: inherit;
  line-height: 1;
  cursor: pointer;
  transition:
    color 0.15s ease,
    border-color 0.15s ease,
    background 0.15s ease;
}

.props-form-stars-zero {
  flex: 0 0 auto;
  min-width: 20px;
  height: 20px;
  font-size: 10px;
  font-weight: 700;
}

.props-form-stars-scale {
  display: flex;
  flex: 1 1 auto;
  align-items: stretch;
  gap: 1px;
  min-width: 0;
  height: 14px;
}

.props-form-stars-segment {
  flex: 1 1 0;
  min-width: 0;
  height: 100%;
  border-radius: 2px;
  border: 0;
  background: #e2e8f0;
}

.props-form-stars-zero:hover,
.props-form-stars-segment:hover {
  border-color: #fbbf24;
  color: #d97706;
}

.props-form-stars-segment:hover {
  background: #fde68a;
}

.props-form-stars-zero.is-active {
  border-color: #f59e0b;
  background: rgba(255, 251, 235, 0.92);
  color: #d97706;
}

.props-form-stars-segment.is-filled {
  background: linear-gradient(180deg, #fcd34d 0%, #f59e0b 100%);
  box-shadow: inset 0 -1px 0 rgba(180, 83, 9, 0.18);
}

.props-form-stars-segment.is-filled:hover {
  background: linear-gradient(180deg, #fde68a 0%, #fbbf24 100%);
}

.props-form-stars-display {
  flex: 0 0 auto;
  min-width: 14px;
  font-size: 11px;
  font-weight: 700;
  font-variant-numeric: tabular-nums;
  color: #334155;
  text-align: right;
}

.props-form-stars-display.is-needs-review {
  color: #b91c1c;
}

.props-form-stars-display.is-high {
  color: #166534;
}

.props-form-stars-hint {
  flex: 0 0 auto;
  width: 14px;
  height: 14px;
  border-radius: 999px;
  background: #fee2e2;
  color: #b91c1c;
  font-size: 10px;
  font-weight: 800;
  line-height: 14px;
  text-align: center;
}

.props-form-stars-hint[hidden] {
  display: none;
}

.doc-props-aside .props-form-field--compact .props-form-value-wrap--stars {
  flex: 1 1 auto;
  min-width: 0;
}

.doc-props-aside .props-form-stars {
  justify-content: flex-end;
}

.props-form-value-wrap--importance {
  width: 100%;
}

.props-form-importance {
  display: flex;
  align-items: center;
  flex-wrap: nowrap;
  gap: 4px;
  width: 100%;
  min-height: 24px;
}

.props-form-importance-zero,
.props-form-importance-segment {
  margin: 0;
  padding: 0;
  border: 1px solid rgba(148, 163, 184, 0.35);
  border-radius: 4px;
  background: #fff;
  color: #94a3b8;
  font: inherit;
  line-height: 1;
  cursor: pointer;
  transition:
    color 0.15s ease,
    border-color 0.15s ease,
    background 0.15s ease;
}

.props-form-importance-zero {
  flex: 0 0 auto;
  min-width: 20px;
  height: 20px;
  font-size: 10px;
  font-weight: 700;
}

.props-form-importance-scale {
  display: flex;
  flex: 1 1 auto;
  align-items: stretch;
  gap: 1px;
  min-width: 0;
  height: 14px;
}

.props-form-importance-segment {
  flex: 1 1 0;
  min-width: 0;
  height: 100%;
  border-radius: 2px;
  border: 0;
  background: #e2e8f0;
}

.props-form-importance-zero:hover,
.props-form-importance-segment:hover {
  border-color: #fb7185;
  color: #e11d48;
}

.props-form-importance-segment:hover {
  background: #fecdd3;
}

.props-form-importance-zero.is-active {
  border-color: #cbd5e1;
  background: #f8fafc;
  color: #94a3b8;
}

.props-form-importance-segment.is-filled {
  background: linear-gradient(180deg, #fda4af 0%, #e11d48 100%);
  box-shadow: inset 0 -1px 0 rgba(190, 18, 60, 0.18);
}

.props-form-importance-segment.is-filled:hover {
  background: linear-gradient(180deg, #fecdd3 0%, #fb7185 100%);
}

.props-form-importance-display {
  flex: 0 0 auto;
  min-width: 14px;
  font-size: 11px;
  font-weight: 700;
  font-variant-numeric: tabular-nums;
  color: #94a3b8;
  text-align: right;
}

.props-form-importance-display.is-active {
  color: #be123c;
}

.props-form-importance-display.is-high {
  color: #9f1239;
}

.doc-props-aside .props-form-field--compact .props-form-value-wrap--importance {
  flex: 1 1 auto;
  min-width: 0;
}

.doc-props-aside .props-form-importance {
  justify-content: flex-end;
}

.node-entry-overview-section-list-title {
  margin: 0;
  font-size: 11px;
  font-weight: 800;
  letter-spacing: 0.08em;
  text-transform: uppercase;
  color: #475569;
}

.visually-hidden {
  position: absolute;
  width: 1px;
  height: 1px;
  padding: 0;
  margin: -1px;
  overflow: hidden;
  clip: rect(0, 0, 0, 0);
  white-space: nowrap;
  border: 0;
}

.node-navigation-props.node-overview-props-fold {
  margin: 0;
}

.node-overview-props-fold {
  margin-top: 0;
  border: 1px solid #a5b4fc;
  border-radius: 10px;
  background: #faf5ff;
  overflow: hidden;
  box-shadow: 0 1px 4px rgba(79, 70, 229, 0.12);
}

.node-navigation-hub > .node-overview-props-fold {
  margin-top: 0;
}

.node-navigation-hero > .node-overview-props-fold,
.node-overview-hero > .node-overview-props-fold {
  margin: 0;
  border-radius: 0;
  border-left: 0;
  border-right: 0;
  border-bottom: 0;
  box-shadow: none;
}

.node-navigation-hero > .node-overview-props-fold:last-child {
  border-bottom-left-radius: 13px;
  border-bottom-right-radius: 13px;
}

.node-navigation-hero > .node-overview-props-fold:has(+ .node-entry-overview-attachments),
.node-navigation-hero > .node-overview-props-fold:has(+ .node-entry-overview-tags) {
  border-bottom-left-radius: 0;
  border-bottom-right-radius: 0;
}

.node-navigation-hero > .node-entry-overview-attachments {
  margin: 0;
  padding: 10px 16px 12px;
  border-top: 1px solid rgba(148, 163, 184, 0.22);
  background: #fff;
  box-sizing: border-box;
}

.node-navigation-hero > .node-entry-overview-attachments:last-child {
  border-bottom-left-radius: 13px;
  border-bottom-right-radius: 13px;
}

.node-navigation-hero > .node-entry-overview-tags:has(+ .node-entry-overview-attachments) {
  border-bottom-left-radius: 0;
  border-bottom-right-radius: 0;
}

.node-navigation-hero > .node-overview-props-custom:has(+ .node-entry-overview-attachments):last-of-type,
.node-navigation-hero > .node-overview-custom-props-fold:has(+ .node-entry-overview-attachments):last-of-type,
.node-navigation-hero > .node-overview-props-custom:has(+ .node-entry-overview-tags):last-of-type,
.node-navigation-hero > .node-overview-custom-props-fold:has(+ .node-entry-overview-tags):last-of-type {
  border-bottom-left-radius: 0;
  border-bottom-right-radius: 0;
}

.node-overview-hero > .node-overview-props-fold:last-child {
  border-bottom-left-radius: 10px;
  border-bottom-right-radius: 10px;
}

.node-overview-props-fold > .node-overview-fold-head {
  border-radius: 0;
  background: linear-gradient(135deg, #c7d2fe 0%, #ddd6fe 55%, #e9d5ff 100%);
}

.node-overview-props-fold[open] > .node-overview-fold-head {
  border-bottom: 1px solid #a5b4fc;
}

.node-overview-props-fold > .node-overview-fold-head:hover {
  background: linear-gradient(135deg, #a5b4fc 0%, #c4b5fd 55%, #d8b4fe 100%);
}

.node-overview-props-fold .node-overview-fold-title {
  color: #3730a3;
}

.node-overview-props-fold .node-overview-fold-body {
  padding: 0;
  background: #fff;
}

.node-overview-props-fold .node-overview-props {
  margin: 0;
  padding: 0;
}

.node-overview-props-fold .node-overview-meta-rows {
  margin: 0;
  border: 0;
  border-radius: 0;
  background: transparent;
}

.node-overview-props-fold .node-overview-meta-key,
.node-overview-props-fold .node-overview-meta-value {
  padding-left: 12px;
  padding-right: 12px;
}

.node-navigation-types.node-overview-types-fold {
  margin: 0;
}

.node-overview-types-fold {
  margin-top: 0;
  border: 1px solid #5eead4;
  border-radius: 10px;
  background: #f0fdfa;
  overflow: hidden;
  box-shadow: 0 1px 4px rgba(13, 148, 136, 0.12);
}

.node-navigation-hub > .node-overview-types-fold {
  margin-top: 8px;
}

.node-overview-types-fold > .node-overview-fold-head {
  border-radius: 0;
  background: linear-gradient(135deg, #99f6e4 0%, #a7f3d0 55%, #bbf7d0 100%);
}

.node-overview-types-fold[open] > .node-overview-fold-head {
  border-bottom: 1px solid #5eead4;
}

.node-overview-types-fold > .node-overview-fold-head:hover {
  background: linear-gradient(135deg, #5eead4 0%, #6ee7b7 55%, #86efac 100%);
}

.node-overview-types-fold .node-overview-fold-title {
  color: #115e59;
}

.node-overview-types-fold .node-overview-fold-body {
  padding: 0;
  background: #fff;
}

.node-overview-types-fold .node-overview-types {
  margin: 0;
  padding: 0;
}

.node-overview-types-fold .node-overview-meta-table {
  border: 0;
  border-radius: 0;
  margin: 0;
  box-shadow: none;
}

.node-overview-types-fold .node-overview-meta-table th,
.node-overview-types-fold .node-overview-meta-table td {
  padding: 6px 10px;
}

.node-overview-types-fold .node-overview-meta-table th {
  background: #ecfdf5;
  color: #047857;
}

.node-overview-types-fold .node-overview-meta-table td {
  background: #fff;
}

.node-overview-types-fold .node-overview-types-row[role="button"] {
  cursor: pointer;
}

.node-overview-types-fold .node-overview-types-row[role="button"]:hover td,
.node-overview-types-fold .node-overview-types-row[role="button"]:focus-visible td {
  background: #ecfdf5;
}

.node-overview-types-fold .node-overview-types-empty {
  margin: 0;
  padding: 10px 12px;
  color: #64748b;
  font-size: 13px;
}

.node-overview-types-fold .is-status-active {
  color: #047857;
  font-weight: 600;
}

.node-overview-types-fold .is-status-draft {
  color: #b45309;
  font-weight: 600;
}

.node-overview-types-fold .is-status-disabled {
  color: #94a3b8;
  font-weight: 600;
}

.node-overview-types-fold .is-status-none {
  color: #94a3b8;
  font-weight: 600;
}

.node-navigation-props.node-overview-props {
  padding: 0;
}

.node-overview-props-custom {
  border-top: 0;
  background: transparent;
}

.node-overview-props-custom .node-overview-meta-rows {
  margin: 0;
  border: 0;
  border-radius: 0;
  background: transparent;
}

.node-overview-props-custom .node-overview-meta-key,
.node-overview-props-custom .node-overview-meta-value,
.node-overview-props-settings .node-overview-meta-key,
.node-overview-props-settings .node-overview-meta-value {
  padding-left: 16px;
  padding-right: 16px;
}

.node-navigation-hero > .node-overview-props-fold:has(+ .node-navigation-hero-instruction-fold),
.node-navigation-hero > .node-overview-custom-props-fold:has(+ .node-navigation-hero-instruction-fold),
.node-navigation-hero > .node-overview-settings-props-fold:has(+ .node-navigation-hero-instruction-fold) {
  border-bottom-left-radius: 0;
  border-bottom-right-radius: 0;
}

.node-navigation-hero-instruction-fold.is-empty {
  border-color: rgba(148, 163, 184, 0.45);
  background: #f8fafc;
}

.node-navigation-hero-instruction-fold.is-empty > .node-overview-fold-head {
  background: linear-gradient(135deg, #f8fafc 0%, #f1f5f9 55%, #f8fafc 100%);
}

.node-navigation-hero-instruction-fold.is-empty > .node-overview-fold-head:hover {
  background: linear-gradient(135deg, #f1f5f9 0%, #e2e8f0 55%, #f1f5f9 100%);
}

.node-navigation-hero-instruction-fold.is-empty[open] > .node-overview-fold-head {
  border-bottom: 1px solid rgba(148, 163, 184, 0.35);
}

.node-navigation-hero-instruction-fold.is-empty .node-overview-fold-title {
  color: #64748b;
}

.node-navigation-hero-instruction-fold.is-empty .node-overview-fold-body {
  background: #f8fafc;
  color: #64748b;
}

.node-navigation-hero-instruction-fold {
  border-color: rgba(251, 191, 36, 0.45);
  background: #fffbeb;
  box-shadow: none;
}

.node-navigation-hero-instruction-fold > .node-overview-fold-head {
  background: linear-gradient(135deg, #fef3c7 0%, #fde68a 55%, #fef9c3 100%);
}

.node-navigation-hero-instruction-fold > .node-overview-fold-head:hover {
  background: linear-gradient(135deg, #fde68a 0%, #fcd34d 55%, #fef08a 100%);
}

.node-navigation-hero-instruction-fold[open] > .node-overview-fold-head {
  border-bottom: 1px solid rgba(251, 191, 36, 0.5);
}

.node-navigation-hero-instruction-fold .node-overview-fold-title {
  color: #92400e;
  display: inline-flex;
  align-items: center;
  gap: 8px;
}

.node-navigation-hero-instruction-fold .node-overview-fold-body {
  padding: 12px 16px 14px;
  background: #fffbeb;
  color: #713f12;
  box-sizing: border-box;
}

.node-navigation-hero-instruction-fold .node-navigation-manifest {
  margin: 0;
}

.node-navigation-hero-instruction-fold .node-navigation-agent-instruction.file-content-preview {
  margin: 0;
  padding: 0;
  border: none;
  border-radius: 0;
  background: transparent;
  color: inherit;
  box-shadow: none;
}

.node-navigation-hero-instruction-fold .node-navigation-agent-instruction-empty {
  margin: 0;
  padding: 0;
  border: none;
  border-radius: 0;
  background: transparent;
  color: #92400e;
  font-size: 13px;
  line-height: 1.45;
  font-weight: 500;
  text-align: left;
}

.node-navigation-hero-instruction-fold .node-navigation-manifest-actions {
  margin-top: 10px;
}

.node-overview-custom-props-fold > .node-overview-fold-head {
  background: linear-gradient(135deg, #e2e8f0 0%, #f1f5f9 55%, #f8fafc 100%);
}

.node-overview-custom-props-fold > .node-overview-fold-head:hover {
  background: linear-gradient(135deg, #cbd5e1 0%, #e2e8f0 55%, #f1f5f9 100%);
}

.node-overview-custom-props-fold .node-overview-fold-title {
  color: #475569;
}

.node-overview-custom-props-fold {
  border-color: rgba(148, 163, 184, 0.45);
  background: #f8fafc;
  box-shadow: none;
}

.node-overview-awn-props-fold > .node-overview-fold-head {
  background: linear-gradient(135deg, #e2e8f0 0%, #f1f5f9 55%, #f8fafc 100%);
}

.node-overview-awn-props-fold > .node-overview-fold-head:hover {
  background: linear-gradient(135deg, #cbd5e1 0%, #e2e8f0 55%, #f1f5f9 100%);
}

.node-overview-awn-props-fold .node-overview-fold-title {
  color: #475569;
}

.node-overview-awn-props-fold {
  border-color: rgba(148, 163, 184, 0.45);
  background: #f8fafc;
  box-shadow: none;
}

.node-entry-overview-copy-actions {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  align-items: stretch;
  gap: 8px;
  margin: 0 0 12px;
  padding: 0 2px;
}

.node-entry-overview-manifest-copy-actions {
  margin: 0 0 16px;
  padding: 0 0 14px;
  border-bottom: 1px solid var(--border);
}

.node-navigation-preview.file-content-preview > .node-entry-overview-manifest-copy-actions {
  margin-top: 2px;
}

.node-entry-overview-copy-btn {
  width: 100%;
  min-width: 0;
  font-size: 11px;
  font-weight: 600;
  padding: 8px 10px;
  line-height: 1.35;
  text-align: center;
  white-space: normal;
}

.node-overview-settings-props-fold > .node-overview-fold-head {
  background: linear-gradient(135deg, #e2e8f0 0%, #f1f5f9 55%, #f8fafc 100%);
}

.node-overview-settings-props-fold > .node-overview-fold-head:hover {
  background: linear-gradient(135deg, #cbd5e1 0%, #e2e8f0 55%, #f1f5f9 100%);
}

.node-overview-settings-props-fold .node-overview-fold-title {
  color: #475569;
}

.node-overview-settings-props-fold {
  border-color: rgba(148, 163, 184, 0.45);
  background: #f8fafc;
  box-shadow: none;
}

.node-overview-section-schema-fold > .node-overview-fold-head {
  background: linear-gradient(135deg, #dbeafe 0%, #e0f2fe 55%, #f0f9ff 100%);
}

.node-overview-section-schema-fold > .node-overview-fold-head:hover {
  background: linear-gradient(135deg, #bfdbfe 0%, #bae6fd 55%, #e0f2fe 100%);
}

.node-overview-section-schema-fold .node-overview-fold-title {
  color: #1e40af;
}

.node-overview-section-schema-fold {
  border-color: rgba(96, 165, 250, 0.35);
  background: #f8fafc;
  box-shadow: none;
}

.node-overview-section-schema-fold .node-entry-overview-section-schema {
  margin-top: 0;
  padding: 12px 14px 14px;
  border: 0;
  border-radius: 0;
  box-shadow: none;
  background: transparent;
}

.node-navigation-hero {
  display: flex;
  flex-direction: column;
  margin: 0;
  padding: 0;
  border: 1px solid rgba(148, 163, 184, 0.32);
  border-radius: 14px;
  background: linear-gradient(180deg, #ffffff 0%, #f8fafc 100%);
  box-shadow: 0 1px 3px rgba(15, 23, 42, 0.04);
  overflow: hidden;
}

.node-navigation-hero > .node-entry-overview-hero-slot-counters {
  order: 0;
  margin: 0;
  padding: 8px 10px 6px;
  border-bottom: 1px solid rgba(148, 163, 184, 0.22);
  background: rgba(248, 250, 252, 0.92);
  box-sizing: border-box;
}

.node-entry-overview-hero-slot-counters .node-navigation-workspace-counter-list {
  grid-template-columns: repeat(auto-fill, minmax(148px, 1fr));
  gap: 6px;
}

.node-entry-overview-hero-slot-counters .node-navigation-workspace-counter-card .node-navigation-workspace-counter {
  padding: 6px 8px;
}

.node-navigation-hero > .node-entry-overview-hero-nav,
.node-navigation-hero > .node-navigation-manifest-nav {
  order: 1;
}

.node-navigation-hero > .node-navigation-hero-main,
.node-navigation-hero > .node-entry-overview-code-preview {
  order: 2;
}

.node-navigation-hero > .node-navigation-hero-footer {
  order: 3;
}

.node-navigation-hero > .node-overview-props-hub-fold,
.node-navigation-hero > .node-overview-awn-props-fold {
  order: 10;
}

.node-navigation-hero > .node-overview-custom-props-fold:not(.node-overview-props-hub-fold) {
  order: 11;
}

.node-navigation-hero > .node-overview-settings-props-fold:not(.node-overview-props-hub-fold) {
  order: 12;
}

.node-navigation-hero > .node-overview-section-schema-fold {
  order: 13;
}

.node-navigation-hero > .node-entry-overview-record-parts-fold {
  order: 14;
}

.node-navigation-hero > .node-entry-overview-tags {
  order: 21;
}

.node-navigation-hero > .node-navigation-hero-instruction-fold {
  order: 22;
}

.node-navigation-hero > .node-entry-overview-attachments {
  order: 23;
}

.node-navigation-hero-main {
  display: grid;
  grid-template-columns: 96px minmax(0, 1fr);
  gap: 14px 18px;
  align-items: start;
  padding: 14px 16px 16px;
}

.node-entry-overview-media-asset-toolbar .node-entry-overview-media-asset-toolbar-row .node-gdrive-sync-bar,
.node-entry-overview-media-asset-toolbar .node-entry-overview-media-asset-toolbar-row .node-ocr-sync-bar,
.node-entry-overview-media-asset-toolbar .node-gdrive-sync-bar,
.node-entry-overview-media-asset-toolbar .node-ocr-sync-bar {
  flex: 1 1 0;
  min-width: 0;
  grid-column: auto;
  width: auto;
  height: var(--media-toolbar-action-height);
}

.node-entry-overview-media-asset-toolbar .node-gdrive-sync-menu {
  height: 100%;
}

.node-entry-overview-media-asset-toolbar .node-gdrive-sync-menu-trigger {
  height: 100%;
  min-height: 0;
  box-sizing: border-box;
}

.node-entry-overview-media-asset-toolbar .node-gdrive-sync-menu-trigger-main {
  padding: 0 12px;
  height: 100%;
}

.node-entry-overview-media-asset-toolbar .node-ocr-sync-bar-btn {
  height: 100%;
  min-height: var(--media-toolbar-action-height);
  box-sizing: border-box;
}

.node-gdrive-sync-bar {
  grid-column: 1 / -1;
  width: 100%;
  position: relative;
  flex: 1 1 0;
  min-width: 0;
}

.node-gdrive-sync-menu {
  width: 100%;
  position: relative;
}

.node-gdrive-sync-menu-trigger {
  display: grid;
  grid-template-columns: minmax(0, 1fr) 44px;
  align-items: stretch;
  width: 100%;
  min-height: 34px;
  margin: 0;
  padding: 0;
  border: 1px solid rgba(66, 133, 244, 0.32);
  border-radius: 10px;
  background:
    linear-gradient(135deg, rgba(66, 133, 244, 0.08) 0%, rgba(52, 168, 83, 0.06) 45%, rgba(251, 188, 5, 0.07) 100%),
    #fff;
  color: #1e3a5f;
  font-size: 12px;
  font-weight: 600;
  line-height: 1.25;
  cursor: pointer;
  box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.85);
  transition:
    border-color 0.15s ease,
    box-shadow 0.15s ease;
}

.node-gdrive-sync-menu-trigger-main {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 8px;
  min-width: 0;
  padding: 8px 12px;
}

.node-gdrive-sync-menu-trigger-label {
  font-size: 12px;
  font-weight: 600;
  line-height: 1.3;
  white-space: nowrap;
}

.node-gdrive-sync-menu-trigger-badge {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-width: 18px;
  height: 18px;
  padding: 0 5px;
  border-radius: 999px;
  background: rgba(52, 168, 83, 0.16);
  color: #166534;
  font-size: 10px;
  font-weight: 700;
  line-height: 1;
}

.node-gdrive-sync-menu-trigger-badge.hidden {
  visibility: hidden;
}

.node-gdrive-sync-menu-trigger:hover:not(:disabled) {
  border-color: rgba(66, 133, 244, 0.5);
}

.node-gdrive-sync-menu-trigger.is-synced {
  border-color: rgba(52, 168, 83, 0.4);
  background:
    linear-gradient(135deg, rgba(52, 168, 83, 0.1) 0%, rgba(66, 133, 244, 0.06) 100%),
    #f8fffb;
}

.node-gdrive-sync-bar.is-open .node-gdrive-sync-menu-trigger {
  border-color: rgba(66, 133, 244, 0.55);
  box-shadow:
    inset 0 1px 0 rgba(255, 255, 255, 0.85),
    0 0 0 2px rgba(66, 133, 244, 0.12);
}

.node-gdrive-sync-menu-trigger:disabled {
  opacity: 0.62;
  cursor: not-allowed;
}

.node-gdrive-sync-menu-trigger-chevron {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 44px;
  min-height: 100%;
  margin: 0;
  padding: 0;
  border-left: 1px solid rgba(66, 133, 244, 0.22);
  border-radius: 0 9px 9px 0;
  background: rgba(66, 133, 244, 0.1);
  font-size: 13px;
  line-height: 1;
  pointer-events: none;
}

.node-gdrive-sync-menu-trigger .node-gdrive-sync-btn-icon {
  flex: 0 0 auto;
}

.node-gdrive-sync-menu-panel {
  position: absolute;
  z-index: 80;
  top: calc(100% + 6px);
  left: 0;
  right: 0;
  min-height: 148px;
  padding: 8px;
  border: 1px solid rgba(66, 133, 244, 0.22);
  border-radius: 10px;
  background: #fff;
  box-shadow: 0 10px 28px rgba(15, 23, 42, 0.12);
}

.node-gdrive-sync-menu-panel[hidden] {
  display: none !important;
}

.node-gdrive-sync-menu-group + .node-gdrive-sync-menu-group {
  margin-top: 8px;
  padding-top: 8px;
  border-top: 1px solid rgba(15, 23, 42, 0.08);
}

.node-gdrive-sync-menu-group.is-empty .node-gdrive-sync-menu-list {
  opacity: 0.45;
  pointer-events: none;
}

.node-gdrive-sync-menu-group-title {
  margin: 0 0 6px;
  padding: 0 6px;
  font-size: 11px;
  font-weight: 700;
  letter-spacing: 0.02em;
  text-transform: uppercase;
  color: rgba(30, 58, 95, 0.72);
}

.node-gdrive-sync-menu-list {
  display: flex;
  flex-direction: column;
  gap: 4px;
}

.node-gdrive-sync-menu-item {
  width: 100%;
  margin: 0;
  padding: 8px 10px;
  border: 0;
  border-radius: 8px;
  background: transparent;
  color: #1e3a5f;
  font-size: 12px;
  font-weight: 600;
  text-align: left;
  cursor: pointer;
}

.node-gdrive-sync-menu-item:hover:not(:disabled) {
  background: rgba(66, 133, 244, 0.08);
}

.node-gdrive-sync-menu-item:disabled {
  opacity: 0.45;
  cursor: not-allowed;
}

.node-gdrive-sync-menu-item--retrieve {
  color: #9a3412;
}

.node-gdrive-sync-bar.is-loading .node-gdrive-sync-menu-trigger {
  opacity: 0.72;
  pointer-events: none;
}

.node-entry-overview-media-asset-head.node-navigation-hero-main {
  overflow: visible;
}

.node-ocr-sync-bar {
  grid-column: 1 / -1;
  width: 100%;
}

.node-gdrive-sync-bar-btn {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 8px;
  margin: 0;
  padding: 8px 12px;
  border: 1px solid rgba(66, 133, 244, 0.28);
  border-radius: 10px;
  background:
    linear-gradient(135deg, rgba(66, 133, 244, 0.08) 0%, rgba(52, 168, 83, 0.06) 45%, rgba(251, 188, 5, 0.07) 100%),
    #fff;
  color: #1e3a5f;
  font-size: 12px;
  font-weight: 600;
  line-height: 1.3;
  cursor: pointer;
  box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.85);
  transition:
    background 0.15s ease,
    border-color 0.15s ease,
    opacity 0.15s ease;
}

.node-gdrive-sync-bar-btn:hover:not(:disabled) {
  border-color: rgba(66, 133, 244, 0.45);
  background:
    linear-gradient(135deg, rgba(66, 133, 244, 0.12) 0%, rgba(52, 168, 83, 0.1) 45%, rgba(251, 188, 5, 0.1) 100%),
    #fff;
}

.node-gdrive-sync-bar-btn:focus-visible {
  outline: 2px solid rgba(66, 133, 244, 0.45);
  outline-offset: 2px;
}

.node-gdrive-sync-bar-btn.is-synced {
  border-color: rgba(52, 168, 83, 0.35);
  background:
    linear-gradient(135deg, rgba(52, 168, 83, 0.1) 0%, rgba(66, 133, 244, 0.06) 100%),
    #f8fffb;
}

.node-gdrive-sync-bar-btn:disabled {
  opacity: 0.62;
  cursor: not-allowed;
}

.node-gdrive-sync-bar-btn.is-loading {
  opacity: 0.75;
  cursor: wait;
}

.node-gdrive-sync-btn-icon {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  flex-shrink: 0;
  line-height: 0;
}

.node-gdrive-sync-btn-icon svg {
  width: 16px;
  height: 16px;
}

.node-gdrive-sync-btn-label {
  min-width: 0;
  text-align: center;
}

.nav-gdrive-sync-badge {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  flex: 0 0 auto;
  border-radius: 6px;
  background: rgba(255, 255, 255, 0.92);
  box-shadow:
    0 0 0 1px rgba(66, 133, 244, 0.22),
    0 1px 3px rgba(15, 23, 42, 0.12);
  line-height: 0;
}

.nav-gdrive-sync-badge--sm {
  width: 20px;
  height: 20px;
  margin-left: 2px;
}

.nav-gdrive-sync-badge--md {
  position: absolute;
  top: 6px;
  right: 6px;
  z-index: 2;
  width: 24px;
  height: 24px;
  border-radius: 7px;
}

.nav-gdrive-sync-badge .node-gdrive-sync-btn-icon svg {
  width: 13px;
  height: 13px;
}

.nav-gdrive-sync-badge--md .node-gdrive-sync-btn-icon svg {
  width: 15px;
  height: 15px;
}

.nav-book-toc-link > .nav-gdrive-sync-badge--sm {
  order: 4;
  margin-right: 2px;
}

.node-entry-overview-media-asset-head.node-navigation-hero-main > .node-gdrive-sync-bar,
.node-entry-overview-media-asset-head.node-navigation-hero-main > .node-entry-overview-media-asset-toolbar {
  margin-bottom: 2px;
}

.node-ocr-sync-bar-btn {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 8px;
  width: 100%;
  margin: 0;
  padding: 8px 12px;
  border: 1px solid rgba(217, 119, 6, 0.28);
  border-radius: 10px;
  background:
    linear-gradient(135deg, rgba(251, 191, 36, 0.12) 0%, rgba(245, 158, 11, 0.08) 55%, rgba(234, 88, 12, 0.06) 100%),
    #fff;
  color: #7c2d12;
  font-size: 12px;
  font-weight: 600;
  line-height: 1.3;
  cursor: pointer;
  box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.85);
  transition:
    background 0.15s ease,
    border-color 0.15s ease,
    opacity 0.15s ease;
}

.node-ocr-sync-bar-btn:hover:not(:disabled) {
  border-color: rgba(217, 119, 6, 0.45);
  background:
    linear-gradient(135deg, rgba(251, 191, 36, 0.18) 0%, rgba(245, 158, 11, 0.12) 55%, rgba(234, 88, 12, 0.1) 100%),
    #fff;
}

.node-ocr-sync-bar-btn:focus-visible {
  outline: 2px solid rgba(217, 119, 6, 0.45);
  outline-offset: 2px;
}

.node-ocr-sync-bar-btn.is-done {
  border-color: rgba(22, 163, 74, 0.35);
  background:
    linear-gradient(135deg, rgba(52, 168, 83, 0.1) 0%, rgba(251, 191, 36, 0.08) 100%),
    #f8fffb;
  color: #14532d;
}

.node-ocr-sync-bar-btn.is-failed {
  border-color: rgba(220, 38, 38, 0.28);
  background:
    linear-gradient(135deg, rgba(254, 226, 226, 0.9) 0%, rgba(255, 255, 255, 0.95) 100%),
    #fff;
  color: #991b1b;
}

.node-ocr-sync-bar-btn:disabled {
  opacity: 0.62;
  cursor: not-allowed;
}

.node-ocr-sync-bar-btn.is-loading {
  opacity: 0.75;
  cursor: wait;
}

.node-ocr-sync-btn-icon {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  flex-shrink: 0;
  line-height: 0;
}

.node-ocr-sync-btn-icon svg {
  width: 16px;
  height: 16px;
}

.node-ocr-sync-btn-label {
  min-width: 0;
  text-align: center;
}

.node-navigation-hero-main--compact {
  grid-template-columns: minmax(0, 1fr);
  gap: 6px;
  padding: 10px 14px 12px;
}

.node-navigation-hero--compact {
  border-radius: 12px;
}

.node-navigation-hero--compact .node-navigation-hero-body {
  gap: 0;
}

.node-navigation-hero-compact-toolbar {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 12px 16px;
  min-width: 0;
  width: 100%;
}

.node-navigation-hero--compact .node-navigation-hero-compact-toolbar .node-navigation-hero-dates {
  flex: 1 1 auto;
  min-width: 0;
  margin: 0;
  padding: 0;
  border-top: 0;
}

.node-navigation-hero--compact .node-navigation-hero-compact-toolbar .node-navigation-hero-actions {
  flex: 0 0 auto;
  margin-left: auto;
}

.node-navigation-hero--compact .node-navigation-hero-dates {
  margin-top: 0;
}

.node-navigation-hero-body {
  display: flex;
  flex-direction: column;
  gap: 8px;
  align-items: stretch;
  min-width: 0;
}

.node-navigation-hero-meta-row {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  justify-content: space-between;
  gap: 10px 14px;
  min-width: 0;
}

.node-navigation-hero-meta-row .node-navigation-hero-path {
  flex: 1 1 auto;
  min-width: 0;
  margin: 0;
}

.node-navigation-hero-meta-row .node-entry-overview-kind,
.node-navigation-hero-meta-row .node-entry-overview-media-asset-kind {
  flex: 0 0 auto;
  margin: 0;
}

.node-navigation-hero-meta-row .node-navigation-hero-actions {
  flex: 0 0 auto;
  margin-left: auto;
  max-width: none;
}

.node-navigation-hero-header {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  align-items: start;
  gap: 12px 16px;
  min-width: 0;
}

.node-navigation-hero-header .node-navigation-hero-title-row,
.node-navigation-hero-header .node-overview-title-row {
  min-width: 0;
  margin: 0;
  overflow: hidden;
}

.node-navigation-hero-header .node-navigation-hero-actions-column {
  justify-self: end;
  align-self: start;
}

.node-navigation-hero-actions-column {
  display: flex;
  flex-direction: column;
  align-items: flex-end;
  gap: 6px;
  max-width: 100%;
}

.node-navigation-hero-shared-slot-row {
  display: flex;
  justify-content: flex-end;
  width: 100%;
}

.node-navigation-hero-shared-slot-row .node-overview-shared-slot-btn {
  max-width: 100%;
}

.node-navigation-hero-head {
  display: flex;
  flex-wrap: wrap;
  align-items: flex-start;
  justify-content: space-between;
  gap: 10px 16px;
  min-width: 0;
}

.node-navigation-hero-identity {
  display: flex;
  flex-direction: column;
  gap: 4px;
  flex: 1 1 220px;
  min-width: 0;
}

.node-navigation-hero-body > .node-navigation-hero-title-row,
.node-navigation-hero-body > .node-overview-title-row {
  width: 100%;
  min-width: 0;
}

.node-navigation-hero-body > .node-navigation-hero-path,
.node-navigation-hero-body > .node-navigation-hero-type-path {
  margin: 0;
}

.node-navigation-hero-body > .node-navigation-hero-type-path {
  align-self: flex-start;
}

.node-navigation-hero-body > .node-navigation-hero-body-dates {
  align-self: stretch;
  width: 100%;
  margin: 0;
  padding-top: 8px;
  border-top: 1px solid rgba(148, 163, 184, 0.16);
  gap: 4px 14px;
}

.node-navigation-hero-body > .node-entry-overview-kind {
  align-self: flex-start;
}

.node-navigation-hero-body > .node-navigation-hero-dates {
  margin-top: 2px;
  gap: 6px 20px;
  padding-top: 8px;
  border-top: 1px solid rgba(148, 163, 184, 0.16);
}

.node-navigation-hero-body > .node-entry-overview-media-asset-meta-line {
  margin: 0;
  padding-top: 2px;
  font-size: 11px;
  color: #94a3b8;
}

.node-navigation-hero-identity .node-navigation-hero-dates {
  margin-top: 2px;
  gap: 4px 12px;
  border-top: 0;
  padding-top: 0;
}

.node-navigation-hero-settings-slots {
  margin-top: 0;
}

.node-navigation-hero-settings-slot-list {
  display: flex;
  flex-wrap: nowrap;
  gap: 6px;
  margin: 0;
  padding: 0;
  list-style: none;
}

.node-navigation-hero-footer-meta {
  display: flex;
  flex-direction: column;
  gap: 0;
}

.node-navigation-hero-footer-meta-row {
  display: flex;
  flex-wrap: nowrap;
  align-items: center;
  justify-content: flex-start;
  gap: 8px 12px;
  min-width: 0;
  width: 100%;
}

.node-navigation-hero-footer-meta-row .node-navigation-hero-settings-slots {
  flex: 0 0 auto;
  margin-left: auto;
}

.node-navigation-hero-footer-meta-row .node-navigation-hero-meta-markers {
  flex: 0 1 auto;
  min-width: 0;
  margin: 0;
}

.node-navigation-hero-footer-blurb + .node-entry-overview-tags {
  margin-top: 8px;
}

.node-navigation-hero-footer .node-entry-overview-tags,
.node-overview-head .node-entry-overview-tags {
  padding: 0;
  border-top: 0;
  background: transparent;
}

.node-navigation-hero-footer-blurb + .node-navigation-hero-footer-meta,
.node-navigation-hero-footer-blurb + .node-navigation-hero-footer-meta-row,
.node-entry-overview-tags + .node-navigation-hero-footer-meta,
.node-entry-overview-tags + .node-navigation-hero-footer-meta-row {
  margin-top: 8px;
  padding-top: 8px;
  border-top: 1px dashed rgba(148, 163, 184, 0.28);
}

.node-navigation-hero-footer-meta-row .node-navigation-hero-marker-block {
  width: auto;
}

.node-navigation-hero-footer-meta-row .node-navigation-hero-marker-slots {
  flex-wrap: nowrap;
}

.node-navigation-hero-footer-meta .node-navigation-hero-meta-markers {
  margin-top: 0;
}

.node-entry-overview-browse-panel > .node-entry-overview-browse-hero-nav.node-navigation-manifest-nav {
  margin: 0 0 10px;
  border-radius: 10px;
}

.node-navigation-hero > .node-entry-overview-record-parts-fold {
  border-top: 1px solid rgba(148, 163, 184, 0.22);
}

.node-navigation-hero-marker-block {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  gap: 4px;
  width: 100%;
}

.node-navigation-hero-identity .node-navigation-hero-meta-chip + .node-navigation-hero-meta-chip {
  padding-left: 12px;
  border-left: 1px solid rgba(148, 163, 184, 0.22);
}

.node-navigation-hero-actions {
  display: inline-flex;
  flex-wrap: wrap;
  align-items: center;
  justify-content: flex-end;
  gap: 4px;
  flex: 0 0 auto;
  align-self: flex-start;
}

.node-navigation-hero-actions .node-overview-action-btn {
  padding: 5px 9px;
  font-size: 11px;
}

@media (max-width: 720px) {
  .node-navigation-hero-main {
    grid-template-columns: 72px minmax(0, 1fr);
    gap: 12px;
    padding: 12px 14px 14px;
  }

  .node-navigation-hero-meta-row {
    flex-direction: column;
    align-items: stretch;
    gap: 10px;
  }

  .node-navigation-hero-meta-row .node-navigation-hero-actions {
    align-self: stretch;
    justify-content: flex-end;
  }

  .node-navigation-hero-header {
    grid-template-columns: 1fr;
    gap: 10px;
  }

  .node-navigation-hero-header .node-navigation-hero-actions-column {
    justify-self: end;
  }

  .node-navigation-hero-title {
    flex-wrap: wrap;
  }

  .node-navigation-hero-title-text {
    white-space: normal;
    overflow: visible;
    text-overflow: clip;
  }
}

.node-navigation-hero-actions:empty {
  display: none;
}

.node-navigation-hero-footer {
  border-top: 1px solid rgba(148, 163, 184, 0.22);
  padding: 10px 18px 12px;
  background: rgba(248, 250, 252, 0.92);
}

.node-navigation-hero-footer-blurb {
  margin: 0;
  font-size: 13px;
  line-height: 1.45;
  color: #64748b;
}

.node-navigation-hero-footer-blurb.is-empty {
  color: #94a3b8;
  font-style: italic;
}

.node-navigation-hero-todo-sticker {
  display: flex;
  flex-direction: column;
  gap: 10px;
  margin: 8px 0 0;
  padding: 10px 12px;
  border: 1px solid #e5d089;
  border-radius: 8px;
  background: linear-gradient(180deg, #fffbeb 0%, #fef3c7 100%);
  box-shadow: 0 1px 2px rgba(120, 90, 20, 0.08);
}

.node-navigation-hero-todo-sticker-label {
  display: block;
  margin: 0;
  font-size: 10px;
  font-weight: 700;
  letter-spacing: 0.04em;
  text-transform: uppercase;
  color: #92400e;
}

.node-navigation-hero-todo-sticker-body {
  margin: 0;
  white-space: pre-wrap;
  word-break: break-word;
  font-size: 12px;
  line-height: 1.45;
  color: #78350f;
}

.node-navigation-hero-footer .node-navigation-hero-todo-sticker + .node-entry-overview-tags,
.node-navigation-hero-footer .node-navigation-hero-todo-sticker + .node-navigation-hero-footer-meta,
.node-navigation-hero-footer .node-navigation-hero-todo-sticker + .node-navigation-hero-footer-meta-row {
  margin-top: 10px;
}

.node-navigation-hero-footer-note {
  margin: 6px 0 0;
  padding-top: 6px;
  border-top: 1px dashed rgba(148, 163, 184, 0.28);
  font-size: 12px;
  line-height: 1.35;
  color: #94a3b8;
}

.node-navigation-hero-identity .node-navigation-hero-meta-markers {
  flex-basis: 100%;
  width: 100%;
  margin-top: 6px;
}

.node-navigation-hero-identity .node-navigation-hero-marker-block {
  justify-content: flex-start;
}

.node-navigation-hero-identity .node-navigation-hero-kind-terms {
  margin-left: auto;
}

.node-navigation-hero .node-overview-thumb-wrap {
  flex: 0 0 96px;
  width: 96px;
  height: 96px;
  border-radius: 12px;
  box-shadow: 0 2px 10px rgba(15, 23, 42, 0.06);
}

.node-overview-thumb-column {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 8px;
  flex: 0 0 auto;
}

.node-navigation-hero .node-overview-thumb-column {
  flex: 0 0 96px;
  width: 96px;
}

.node-overview-thumb-column > .node-overview-thumb-wrap {
  width: 100%;
}

.node-overview-thumb-menu-trigger {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  flex: 0 0 auto;
  width: 28px;
  height: 28px;
  padding: 0;
  border: 1px solid var(--border);
  border-radius: 999px;
  background: #fff;
  color: #64748b;
  cursor: pointer;
  box-shadow: 0 1px 4px rgba(15, 23, 42, 0.08);
  transition:
    border-color 0.15s ease,
    color 0.15s ease,
    box-shadow 0.15s ease;
}

.node-overview-thumb-menu-trigger:hover,
.node-overview-thumb-menu-trigger:focus-visible {
  border-color: #93c5fd;
  color: #0f172a;
  box-shadow: 0 0 0 2px rgba(147, 197, 253, 0.35);
  outline: none;
}

.node-overview-thumb-menu-trigger-icon {
  display: inline-flex;
  align-items: center;
  justify-content: center;
}

.doc-props-aside .node-overview-thumb-column {
  width: 100%;
}

.node-entry-overview-media-asset-title-row {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: 12px;
}

.node-entry-overview-media-asset-title-row .node-entry-overview-media-asset-title {
  margin: 0;
  flex: 1 1 auto;
  min-width: 0;
}

.node-navigation-hero-meta {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 8px 16px;
  margin: 0;
  padding: 0;
  width: 100%;
  border: 0;
  background: transparent;
  font-size: 11px;
  line-height: 1.35;
  text-align: left;
}

.node-navigation-hero-meta-chip {
  display: inline-flex;
  align-items: center;
  gap: 5px;
  white-space: nowrap;
}

.node-navigation-hero-meta-chip + .node-navigation-hero-meta-chip {
  padding-left: 16px;
  border-left: 1px solid rgba(148, 163, 184, 0.25);
}

.node-navigation-hero-meta-icon {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 18px;
  height: 18px;
  border-radius: 5px;
  color: #64748b;
  background: rgba(148, 163, 184, 0.12);
  line-height: 0;
  cursor: default;
}

.node-navigation-hero-meta-icon--created {
  color: #2563eb;
  background: rgba(37, 99, 235, 0.1);
}

.node-navigation-hero-meta-icon--modified {
  color: #c2410c;
  background: rgba(194, 65, 12, 0.1);
}

.node-navigation-hero-meta-icon--viewed {
  color: #7c3aed;
  background: rgba(124, 58, 237, 0.1);
}

.node-navigation-hero-meta-icon-svg {
  width: 13px;
  height: 13px;
}

.node-navigation-hero-meta-label {
  margin: 0;
  font-weight: 500;
  color: #94a3b8;
}

.node-navigation-hero-meta-value {
  margin: 0;
  color: #475569;
  font-variant-numeric: tabular-nums;
}

.node-navigation-hero-meta-markers {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  justify-content: space-between;
  gap: 8px 12px;
  width: 100%;
}

.node-navigation-hero-marker-slots {
  display: inline-flex;
  flex-direction: row;
  flex-wrap: wrap;
  align-items: center;
  justify-content: flex-start;
  gap: 6px;
}

.node-navigation-hero-kind-terms {
  display: inline-flex;
  flex-wrap: wrap;
  align-items: center;
  justify-content: flex-end;
  gap: 6px;
  margin-left: auto;
  font-size: 10px;
  line-height: 1.3;
  color: #94a3b8;
}

.node-navigation-hero-kind-term {
  white-space: nowrap;
}

.node-navigation-hero-kind-separator {
  color: #cbd5e1;
  user-select: none;
}

.node-navigation-marker-slot.node-slot-chip {
  cursor: default;
}

.node-navigation-marker-slot.node-slot-chip:hover {
  background: #f8fafc;
  border-color: #e2e8f0;
}

.node-navigation-runtime-slot.node-slot-chip {
  cursor: default;
  gap: 4px;
  padding: 2px 6px;
  position: relative;
}

.node-navigation-runtime-slot.node-slot-chip:hover {
  background: #f8fafc;
  border-color: #e2e8f0;
}

.node-navigation-runtime-slot-icon {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 16px;
  height: 16px;
  border-radius: 4px;
  line-height: 0;
}

.node-navigation-runtime-slot--load .node-navigation-runtime-slot-icon {
  color: #2563eb;
  background: #dbeafe;
  border: 1px solid rgba(96, 165, 250, 0.45);
}

.node-navigation-runtime-slot--cron .node-navigation-runtime-slot-icon {
  color: #c2410c;
  background: #ffedd5;
  border: 1px solid rgba(251, 146, 60, 0.45);
}

.node-navigation-runtime-slot--heartbeat .node-navigation-runtime-slot-icon {
  color: #be123c;
  background: #ffe4e6;
  border: 1px solid rgba(251, 113, 133, 0.45);
}

.node-navigation-runtime-slot--commands .node-navigation-runtime-slot-icon {
  color: #047857;
  background: #d1fae5;
  border: 1px solid rgba(52, 211, 153, 0.45);
}

.node-navigation-runtime-slot--schema .node-navigation-runtime-slot-icon {
  color: #7c3aed;
  background: rgba(124, 58, 237, 0.12);
  border: 1px solid rgba(124, 58, 237, 0.35);
}

.node-navigation-runtime-slot-icon .menu-runtime-marker-svg {
  width: 11px;
  height: 11px;
}

.node-navigation-runtime-slot-state {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  color: #059669;
  line-height: 0;
}

.node-navigation-runtime-check-svg {
  width: 12px;
  height: 12px;
}

.node-navigation-runtime-slot.is-inactive {
  opacity: 0.55;
}

.node-navigation-runtime-slot.is-inactive .node-navigation-runtime-slot-icon {
  filter: grayscale(0.35);
}

.node-navigation-marker-slot.is-inactive {
  color: #64748b;
}

.node-navigation-marker-slot.is-inactive .menu-marker-emoji-agent {
  filter: grayscale(1);
  opacity: 0.72;
}

.node-navigation-marker-slot--agent.is-active .menu-marker-emoji-agent {
  filter: none;
  opacity: 1;
}

.node-navigation-marker-slot--git.is-active {
  color: #de4c36;
  border-color: rgba(222, 76, 54, 0.28);
  background: rgba(222, 76, 54, 0.08);
}

.node-navigation-marker-slot--git.is-active:hover {
  background: rgba(222, 76, 54, 0.1);
  border-color: rgba(222, 76, 54, 0.34);
}

.node-navigation-marker-slot--obsidian.is-active {
  color: #7c3aed;
  border-color: rgba(124, 58, 237, 0.28);
  background: rgba(124, 58, 237, 0.08);
}

.node-navigation-marker-slot--obsidian.is-active:hover {
  background: rgba(124, 58, 237, 0.1);
  border-color: rgba(124, 58, 237, 0.34);
}

.node-navigation-marker-slot--agent.is-active {
  color: #2563eb;
  border-color: rgba(37, 99, 235, 0.28);
  background: rgba(37, 99, 235, 0.08);
}

.node-navigation-marker-slot--agent.is-active:hover {
  background: rgba(37, 99, 235, 0.1);
  border-color: rgba(37, 99, 235, 0.34);
}

.node-navigation-marker-slot--record-materials.is-active {
  color: #0f766e;
  border-color: rgba(15, 118, 110, 0.28);
  background: rgba(15, 118, 110, 0.08);
}

.node-navigation-marker-slot--record-materials.is-active:hover {
  background: rgba(15, 118, 110, 0.1);
  border-color: rgba(15, 118, 110, 0.34);
}

.node-navigation-marker-slot--record-materials.is-active .node-navigation-marker-slot-icon svg {
  stroke: currentColor;
}

.node-navigation-marker-slot--skill.is-active {
  color: #059669;
  border-color: rgba(5, 150, 105, 0.28);
  background: rgba(5, 150, 105, 0.08);
}

.node-navigation-marker-slot--skill.is-active:hover {
  background: rgba(5, 150, 105, 0.1);
  border-color: rgba(5, 150, 105, 0.34);
}

.node-navigation-marker-slot-icon {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  line-height: 0;
  flex-shrink: 0;
}

.node-navigation-marker-slot-icon .menu-marker-svg {
  width: 12px;
  height: 12px;
}

.ui-tooltip-host {
  position: relative;
}

.ui-tooltip-host[data-tooltip]::after {
  content: attr(data-tooltip);
  position: absolute;
  left: 50%;
  z-index: 40;
  transform: translateX(-50%) translateY(2px);
  padding: 5px 9px;
  border-radius: 8px;
  background: #1e293b;
  color: #f8fafc;
  font-size: 11px;
  font-weight: 600;
  line-height: 1.25;
  white-space: nowrap;
  pointer-events: none;
  opacity: 0;
  visibility: hidden;
  transition: opacity 0.12s ease, transform 0.12s ease, visibility 0.12s ease;
  box-shadow: 0 6px 16px rgba(15, 23, 42, 0.18);
}

.ui-tooltip-host[data-tooltip]::before {
  content: "";
  position: absolute;
  left: 50%;
  z-index: 40;
  transform: translateX(-50%);
  border: 5px solid transparent;
  pointer-events: none;
  opacity: 0;
  visibility: hidden;
  transition: opacity 0.12s ease, visibility 0.12s ease;
}

.ui-tooltip-host[data-tooltip]:not([data-tooltip-pos])::after,
.ui-tooltip-host[data-tooltip-pos="bottom"]::after {
  top: calc(100% + 8px);
}

.ui-tooltip-host[data-tooltip]:not([data-tooltip-pos])::before,
.ui-tooltip-host[data-tooltip-pos="bottom"]::before {
  top: calc(100% + 2px);
  border-bottom-color: #1e293b;
}

.ui-tooltip-host[data-tooltip-pos="top"]::after {
  bottom: calc(100% + 8px);
  transform: translateX(-50%) translateY(-2px);
}

.ui-tooltip-host[data-tooltip-pos="top"]::before {
  bottom: calc(100% + 2px);
  border-top-color: #1e293b;
}

.ui-tooltip-host[data-tooltip]:hover::after,
.ui-tooltip-host[data-tooltip]:focus-visible::after,
.ui-tooltip-host[data-tooltip]:hover::before,
.ui-tooltip-host[data-tooltip]:focus-visible::before {
  opacity: 1;
  visibility: visible;
}

.ui-tooltip-host[data-tooltip]:not([data-tooltip-pos]):hover::after,
.ui-tooltip-host[data-tooltip-pos="bottom"]:hover::after,
.ui-tooltip-host[data-tooltip]:not([data-tooltip-pos]):focus-visible::after,
.ui-tooltip-host[data-tooltip-pos="bottom"]:focus-visible::after {
  transform: translateX(-50%) translateY(0);
}

.ui-tooltip-host[data-tooltip-pos="top"]:hover::after,
.ui-tooltip-host[data-tooltip-pos="top"]:focus-visible::after {
  transform: translateX(-50%) translateY(0);
}

.node-navigation-hero-meta-icon.ui-tooltip-host[data-tooltip]::after,
.node-navigation-hero-meta-icon.ui-tooltip-host[data-tooltip]::before {
  z-index: 50;
}

.node-navigation-marker-slot.ui-tooltip-host[data-tooltip]::after,
.node-navigation-runtime-slot.ui-tooltip-host[data-tooltip]::after {
  max-width: 280px;
  white-space: normal;
  text-align: center;
}

.node-navigation-hero-title-row {
  display: block;
  min-width: 0;
  max-width: 100%;
}

.node-navigation-hero-title-row .node-navigation-hero-title,
.node-navigation-hero-title-row .node-overview-title {
  margin: 0;
  max-width: 100%;
}

.node-navigation-hero-status {
  flex: 0 0 auto;
}

.node-navigation-hero-title {
  display: flex;
  align-items: center;
  flex-wrap: nowrap;
  gap: 8px;
  margin: 0;
  min-width: 0;
  max-width: 100%;
  font-size: clamp(1.125rem, 2.4vw, 1.375rem);
  font-weight: 700;
  line-height: 1.3;
  color: #0f172a;
}

.node-navigation-hero-title-main {
  display: inline-flex;
  align-items: center;
  gap: 6px;
  min-width: 0;
  flex: 1 1 auto;
  max-width: 100%;
}

.node-navigation-hero-title-text {
  min-width: 0;
  flex: 0 1 auto;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.node-navigation-hero-title-copy {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  flex: 0 0 auto;
  width: 24px;
  height: 24px;
  margin: 0;
  padding: 0;
  border: 0;
  border-radius: 6px;
  background: transparent;
  color: #94a3b8;
  cursor: pointer;
  transition: color 0.15s ease, background 0.15s ease;
}

.node-navigation-hero-title-copy:hover:not(:disabled) {
  color: #475569;
  background: rgba(148, 163, 184, 0.16);
}

.node-navigation-hero-title-copy:focus-visible {
  outline: 2px solid rgba(59, 130, 246, 0.55);
  outline-offset: 1px;
}

.node-navigation-hero-title-copy:disabled {
  opacity: 0.45;
  cursor: default;
}

.node-navigation-hero-title-copy-icon {
  width: 14px;
  height: 14px;
  display: block;
}

.node-navigation-hero-path {
  display: inline-flex;
  align-self: flex-start;
  align-items: center;
  flex-wrap: wrap;
  gap: 4px 8px;
  margin: 0;
  padding: 3px 8px;
  border-radius: 6px;
  background: rgba(148, 163, 184, 0.12);
  font-family: ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New",
    monospace;
  font-size: 11px;
  line-height: 1.4;
  color: #64748b;
  word-break: break-word;
}

.node-navigation-hero-path--invalid {
  background: rgba(239, 68, 68, 0.08);
  box-shadow: inset 0 0 0 1px rgba(239, 68, 68, 0.22);
}

.node-navigation-hero-path--invalid .node-navigation-hero-path-value {
  color: #dc2626;
  font-weight: 700;
}

.node-navigation-hero-path-fix {
  margin-left: 2px;
  padding: 1px 7px;
  border: 0;
  border-radius: 4px;
  background: #dc2626;
  color: #fff;
  font-family: inherit;
  font-size: 10px;
  font-weight: 700;
  line-height: 1.5;
  letter-spacing: 0.02em;
  text-transform: uppercase;
  cursor: pointer;
  white-space: nowrap;
}

.node-navigation-hero-path-fix:hover:not(:disabled) {
  background: #b91c1c;
}

.node-navigation-hero-path-fix:disabled {
  opacity: 0.45;
  cursor: not-allowed;
}

.node-navigation-hero-path-fix--id {
  background: #16a34a;
}

.node-navigation-hero-path-fix--id:hover:not(:disabled) {
  background: #15803d;
}

.node-navigation-hero-path--missing-id .node-navigation-hero-path-value {
  color: #64748b;
}

.node-navigation-hero-meta-path .node-navigation-hero-path-segment {
  display: inline-flex;
  align-items: center;
  flex-wrap: wrap;
  gap: 4px 6px;
}

.node-navigation-hero-meta-path .node-navigation-hero-path-sep {
  color: #94a3b8;
  font-weight: 700;
  user-select: none;
}

.node-entry-overview-media-asset-meta-row {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 8px 10px;
  min-width: 0;
}

.node-entry-overview-media-asset-meta-row .node-navigation-hero-path {
  flex: 0 1 auto;
}

.node-slot-strip {
  display: flex;
  flex-direction: column;
  gap: 8px;
  margin-top: 10px;
  width: 100%;
}

.node-navigation-hub > .node-slot-strip {
  margin-top: 0;
}

.node-navigation-workspace-counters {
  margin: 0 0 10px;
}

.node-navigation-elements-nav-accordion {
  width: 100%;
  margin: 0 0 12px;
}

.node-navigation-elements-nav-summary {
  align-items: center;
  gap: 10px;
}

.node-navigation-elements-nav-summary::after {
  display: none;
}

.node-navigation-elements-nav-summary .doc-links-accordion-toggle {
  flex: 0 0 auto;
  width: 22px;
  height: 22px;
  border: 1px solid #dbe3ee;
  border-radius: 5px;
  background: #f8fafc;
  color: #64748b;
}

.node-navigation-elements-nav-summary .doc-links-accordion-toggle:hover,
.node-navigation-elements-nav-summary .doc-links-accordion-toggle:focus-visible {
  color: var(--accent);
  background: rgba(37, 99, 235, 0.08);
  border-color: #cbd5e1;
}

.node-navigation-elements-nav-summary .doc-links-accordion-toggle .nav-book-toc-folder-chevron {
  width: 7px;
  height: 7px;
  margin-top: -2px;
  transform: rotate(-45deg) translateX(-1px);
}

.node-navigation-elements-nav-accordion[open]
  > .node-navigation-elements-nav-summary
  .doc-links-accordion-toggle
  .nav-book-toc-folder-chevron {
  transform: rotate(45deg);
  margin-top: -4px;
}

.node-navigation-elements-nav-summary .doc-links-accordion-summary-main {
  flex: 1 1 auto;
}

.node-navigation-elements-nav-summary .doc-links-accordion-title-legacy {
  font-weight: 600;
  color: #ca8a04;
}

.node-navigation-elements-nav-summary .doc-links-accordion-count {
  align-self: center;
  margin-top: 0;
}

.node-navigation-elements-nav-summary .node-navigation-elements-nav-view-select {
  flex: 0 0 auto;
  align-self: center;
  min-width: 0;
  max-width: min(220px, 42vw);
}

.node-navigation-elements-nav-summary .node-navigation-elements-nav-slot-select {
  flex: 0 0 auto;
  align-self: center;
  min-width: 0;
  max-width: min(160px, 34vw);
}

.node-navigation-elements-nav-popout-btn {
  flex: 0 0 auto;
  width: 28px;
  height: 28px;
  margin: 0;
  padding: 0;
  border: 1px solid var(--border);
  border-radius: 6px;
  background: var(--panel);
  color: #64748b;
  font-size: 14px;
  font-weight: 700;
  line-height: 1;
  cursor: pointer;
  transition: background 0.12s ease, border-color 0.12s ease, color 0.12s ease;
}

.node-navigation-elements-nav-popout-btn:hover,
.node-navigation-elements-nav-popout-btn:focus-visible {
  color: var(--accent);
  border-color: #cbd5e1;
  background: #f8fafc;
}

.node-navigation-elements-nav-popout-btn:focus-visible {
  outline: 2px solid rgba(37, 99, 235, 0.35);
  outline-offset: 1px;
}

.node-navigation-elements-nav-body {
  position: relative;
  padding: 0;
  max-height: none;
  overflow: visible;
}

.node-navigation-elements-nav-panels {
  min-width: 0;
}

.node-navigation-elements-nav-panel.hidden {
  display: none;
}

.node-navigation-elements-nav-empty {
  margin: 0;
  padding: 12px 10px;
  font-size: 12px;
  line-height: 1.45;
  color: #64748b;
  text-align: center;
}

.node-navigation-elements-nav-graph-host,
.node-navigation-elements-nav-mindmap-panel {
  min-height: 240px;
  border: none;
  border-radius: 0;
  background: transparent;
  overflow: hidden;
}

.node-navigation-elements-nav-mindmap-panel {
  min-height: 520px;
  height: 520px;
}

.node-navigation-elements-nav-graph-host {
  min-height: 520px;
  height: 520px;
  padding: 0;
}

.node-navigation-elements-nav-graph-host .external-graph-wrap,
.node-navigation-elements-nav-graph-host .node-graph-wrap {
  min-height: 100%;
  height: 100%;
  border: none;
  border-radius: 0;
}

.node-navigation-elements-nav-mindmap-shell {
  display: flex;
  flex-direction: column;
  gap: 0;
  min-width: 0;
  min-height: 240px;
  height: 100%;
}

.node-navigation-elements-nav-mindmap-host,
.node-navigation-elements-nav-mindmap-host .node-mindmap-wrap {
  min-height: 240px;
  height: 100%;
}

.node-navigation-elements-nav-mindmap-host .node-mindmap-wrap {
  position: relative;
}

.node-mindmap-controls.external-graph-controls {
  right: 24px;
  bottom: 12px;
  gap: 5px;
  padding: 4px 6px;
  border-radius: 8px;
  background: rgba(12, 18, 32, 0.58);
  backdrop-filter: blur(6px);
  box-shadow: 0 2px 10px rgba(15, 23, 42, 0.18);
}

.node-navigation-elements-nav-mindmap-host .node-mindmap-controls {
  right: 24px;
  bottom: 12px;
}

.topic-knowledge-nav-popout-body .node-mindmap-controls {
  right: 28px;
  bottom: 14px;
  padding: 5px 8px;
}

.node-mindmap-controls .external-graph-control-btn {
  box-sizing: border-box;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  flex: 0 0 28px;
  width: 28px;
  min-width: 28px;
  max-width: 28px;
  height: 28px;
  padding: 0;
  margin: 0;
  font-size: 14px;
  font-weight: 700;
  line-height: 1;
}

.node-mindmap-controls .external-graph-control-btn:focus-visible {
  outline: 2px solid rgba(167, 139, 250, 0.65);
  outline-offset: 1px;
}

.topic-knowledge-nav-popout {
  z-index: 1200;
}

.topic-knowledge-nav-popout-card {
  width: min(960px, 96vw);
  height: min(720px, 90vh);
  display: flex;
  flex-direction: column;
  background: var(--panel);
  border: 1px solid var(--border);
  border-radius: 12px;
  overflow: hidden;
  box-shadow: 0 24px 48px rgba(15, 23, 42, 0.18);
}

.topic-knowledge-nav-popout-head {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
  padding: 12px 14px;
  border-bottom: 1px solid var(--border);
  background: rgba(248, 250, 252, 0.96);
}

.topic-knowledge-nav-popout-title {
  margin: 0;
  font-size: 13px;
  font-weight: 700;
  line-height: 1.35;
  color: #334155;
}

.topic-knowledge-nav-popout-close {
  width: 28px;
  height: 28px;
  border: 1px solid var(--border);
  border-radius: 6px;
  background: var(--panel);
  color: #64748b;
  font-size: 18px;
  line-height: 1;
  cursor: pointer;
}

.topic-knowledge-nav-popout-close:hover,
.topic-knowledge-nav-popout-close:focus-visible {
  color: #334155;
  border-color: #cbd5e1;
  background: #f8fafc;
}

.topic-knowledge-nav-popout-body {
  flex: 1;
  min-height: 0;
  overflow: hidden;
}

.topic-knowledge-nav-popout-body .node-navigation-elements-nav-mindmap-shell,
.topic-knowledge-nav-popout-body .node-navigation-elements-nav-mindmap-host,
.topic-knowledge-nav-popout-graph-host,
.topic-knowledge-nav-popout-body .node-navigation-elements-nav-graph-host,
.topic-knowledge-nav-popout-body .external-graph-wrap {
  min-height: 100%;
  height: 100%;
}

.node-navigation-workspace-counters--area-single {
  margin-top: 4px;
}

.node-navigation-workspace-counter-list--area-single {
  grid-template-columns: 1fr;
}

.node-navigation-workspace-counter-list--area-single .node-navigation-workspace-counter {
  flex-direction: row;
  justify-content: flex-start;
  align-items: center;
  min-height: 52px;
  padding: 12px 16px;
  gap: 12px;
}

.node-navigation-workspace-counter-list--area-single .node-navigation-workspace-counter-value {
  font-size: 18px;
  min-width: 4ch;
}

.node-navigation-memory-card--area-full {
  width: 100%;
  margin-top: 8px;
}

.node-navigation-internal-actions {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
  margin-top: 12px;
}

.node-navigation-internal--area .node-navigation-preview {
  max-height: none;
}

.node-navigation-workspace-counter-list {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 8px;
  margin: 0;
  padding: 0;
  list-style: none;
  width: 100%;
  min-width: 0;
}

/* after base list — area-single must win over repeat(4) */
.node-navigation-workspace-counters--area-single {
  width: 100%;
}

.node-navigation-workspace-counters--area-single .node-navigation-workspace-counter-list {
  grid-template-columns: minmax(0, 1fr);
}

.node-navigation-workspace-counters--area-single .node-navigation-workspace-counter-item,
.node-navigation-workspace-counters--area-single .node-navigation-workspace-counter-card {
  width: 100%;
  min-width: 0;
}

.node-navigation-workspace-counters--area-single .node-navigation-workspace-counter-card .node-navigation-workspace-counter {
  width: 100%;
  box-sizing: border-box;
}

.node-navigation-workspace-counters--instruction-dual {
  width: 100%;
}

.node-navigation-workspace-counters--instruction-dual .node-navigation-workspace-counter-list {
  grid-template-columns: repeat(3, minmax(0, 1fr));
}

.node-navigation-workspace-counters--instruction-dual .node-navigation-workspace-counter-item,
.node-navigation-workspace-counters--instruction-dual .node-navigation-workspace-counter-card {
  width: 100%;
  min-width: 0;
}

.node-navigation-page-outside-slots-row {
  margin: 0;
}

.node-navigation-hub-main.has-outside-slots-warning > .node-navigation-page-outside-slots-row {
  margin: 0;
}

.node-navigation-hub-rail-slots--flexible .node-navigation-hub-rail-slot--flexible > .node-navigation-hub-rail-slot-summary {
  color: #0f766e;
}

.node-navigation-hub-rail-slots--flexible .node-navigation-hub-rail-slot--flexible.is-filled > .node-navigation-hub-rail-slot-summary {
  color: #115e59;
}

.node-navigation-workspace-outside-slots-row {
  width: 100%;
  margin: 0;
}

.node-navigation-outside-slots-warning {
  display: flex;
  flex-direction: column;
  gap: 0;
  width: 100%;
  margin: 0;
  padding: 10px 12px 8px;
  border-radius: 8px;
  box-sizing: border-box;
  color: #58151c;
  border: 1px solid #f1aeb5;
  background: #f8d7da;
}

.node-navigation-outside-slots-warning-header {
  display: flex;
  flex-direction: column;
  gap: 4px;
}

.node-navigation-outside-slots-warning-title {
  margin: 0;
  font-size: 13px;
  font-weight: 700;
  line-height: 1.3;
  letter-spacing: 0;
  text-transform: none;
  color: #842029;
}

.node-navigation-outside-slots-warning-hint {
  margin: 0;
  font-size: 12px;
  line-height: 1.45;
  color: #58151c;
  opacity: 0.92;
}

.node-navigation-outside-slots-warning-actions {
  margin-top: auto;
  padding-top: 8px;
  border-top: 1px solid rgba(241, 174, 181, 0.85);
  display: flex;
  justify-content: flex-start;
  width: 100%;
  box-sizing: border-box;
}

.node-navigation-outside-slots-warning-move-inbox-btn {
  margin: 0;
  padding: 6px 10px;
  font-size: 12px;
  line-height: 1.3;
  font-weight: 600;
  border-radius: 6px;
  border: 1px solid rgba(132, 32, 41, 0.35);
  background: rgba(255, 255, 255, 0.55);
  color: #58151c;
  cursor: not-allowed;
  opacity: 0.72;
}

.node-navigation-outside-slots-warning-move-inbox-btn:disabled {
  pointer-events: none;
}

.node-navigation-outside-slots-warning-list {
  list-style: none;
  margin: 8px 0 0;
  padding: 8px 0 0;
  border-top: 1px solid rgba(241, 174, 181, 0.85);
  display: flex;
  flex-direction: column;
  gap: 4px;
}

.node-navigation-outside-slots-warning-item {
  display: flex;
  align-items: center;
  gap: 8px;
  min-width: 0;
}

.node-navigation-outside-slots-warning-scope {
  flex: 0 0 auto;
  font-size: 11px;
  line-height: 1.2;
  font-weight: 600;
  white-space: nowrap;
}

.node-navigation-outside-slots-warning-path {
  flex: 1 1 auto;
  min-width: 0;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
  border: 0;
  background: transparent;
  color: inherit;
  font: inherit;
  text-align: left;
  padding: 0;
  cursor: pointer;
  text-decoration: underline;
  text-decoration-color: rgba(132, 32, 41, 0.35);
}

.node-navigation-outside-slots-warning-path:hover {
  text-decoration-color: currentColor;
}

.node-navigation-workspace-counters.has-outside-slots-warning .node-navigation-workspace-counter-topic-index-row {
  margin-top: 0;
}

.node-navigation-workspace-fullwidth-slot-row {
  width: 100%;
  margin-top: 8px;
}

.node-navigation-workspace-fullwidth-slot-row .node-navigation-workspace-counter-item--fullwidth-slot {
  width: 100%;
  min-width: 0;
}

.node-navigation-workspace-fullwidth-slot-row .node-navigation-workspace-counter-card {
  width: 100%;
}

.node-navigation-workspace-fullwidth-slot-row .node-navigation-workspace-counter {
  flex-direction: row;
  align-items: center;
  justify-content: flex-start;
  gap: 10px;
  min-height: 0;
  padding: 8px 14px;
  text-align: left;
}

.node-navigation-workspace-fullwidth-slot-row .node-navigation-workspace-counter-value {
  flex: 0 0 auto;
  font-size: 16px;
}

.node-navigation-workspace-fullwidth-slot-row .node-navigation-workspace-counter-label {
  flex: 1 1 auto;
  max-width: none;
  overflow: visible;
  text-align: left;
  min-width: auto;
}

.node-navigation-workspace-fullwidth-slot-row .node-navigation-workspace-counter-label--stacked {
  flex-direction: row;
  flex-wrap: nowrap;
  align-items: center;
  justify-content: flex-start;
  gap: 8px;
  text-align: left;
  white-space: nowrap;
  min-width: auto;
}

.node-navigation-workspace-fullwidth-slot-row .node-navigation-workspace-counter-label-main {
  flex: 0 0 auto;
  overflow: visible;
  text-overflow: clip;
  white-space: nowrap;
}

.node-navigation-workspace-fullwidth-slot-row .node-navigation-workspace-counter-types-trigger {
  flex: 0 0 auto;
  margin-top: 0;
}

.node-navigation-workspace-outside-slots-row .node-navigation-workspace-counter-item--outside-slots {
  width: 100%;
  min-width: 0;
}

.node-navigation-workspace-outside-slots-row .node-navigation-workspace-counter-card--outside-slots {
  width: 100%;
}

.node-navigation-workspace-outside-slots-row .node-navigation-workspace-counter-card--outside-slots .node-navigation-workspace-counter {
  flex-direction: row;
  align-items: center;
  justify-content: flex-start;
  gap: 10px;
  min-height: 0;
  padding: 8px 14px;
  text-align: left;
}

.node-navigation-workspace-outside-slots-row .node-navigation-workspace-counter-card--outside-slots .node-navigation-workspace-counter-value {
  flex: 0 0 auto;
  font-size: 16px;
}

.node-navigation-workspace-outside-slots-row .node-navigation-workspace-counter-card--outside-slots .node-navigation-workspace-counter-label--stacked {
  flex: 1 1 auto;
  flex-direction: row;
  flex-wrap: nowrap;
  align-items: center;
  justify-content: flex-start;
  gap: 8px;
  text-align: left;
  white-space: nowrap;
  min-width: 0;
}

.node-navigation-workspace-outside-slots-row .node-navigation-workspace-counter-card--outside-slots .node-navigation-workspace-counter-label-hint {
  flex: 0 1 auto;
  text-align: left;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
}

.node-navigation-workspace-outside-slots-row .node-navigation-workspace-counter-card--outside-slots .stub-static-mark {
  flex: 0 0 auto;
  white-space: nowrap;
}

.node-navigation-workspace-counter-card--outside-slots,
.node-navigation-workspace-counter-card--static-stub {
  height: auto;
}

.node-navigation-workspace-counter-card--outside-slots .node-navigation-workspace-counter,
.node-navigation-workspace-counter-card--static-stub .node-navigation-workspace-counter {
  min-height: 0;
  height: auto;
  padding: 8px 6px 6px;
  cursor: default;
  pointer-events: none;
}

.node-navigation-workspace-counter-label--stacked {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 4px;
  white-space: normal;
  text-align: center;
  line-height: 1.25;
}

.node-navigation-workspace-counter-label-main {
  font-size: 10px;
  font-weight: 700;
  color: #334155;
}

.node-navigation-workspace-counter-card .node-navigation-workspace-counter-label-main {
  font-weight: 600;
  color: inherit;
}

.node-navigation-workspace-counter-label-hint {
  font-size: 9px;
  font-weight: 500;
  color: #64748b;
  max-width: 100%;
  line-height: 1.2;
}

.node-navigation-workspace-counter-card .node-navigation-workspace-counter-label-hint {
  opacity: 0.92;
}

.node-navigation-workspace-counter-types-trigger {
  display: inline-block;
  margin-top: 2px;
  padding: 0;
  border: 0;
  background: none;
  color: #64748b;
  font-size: 9px;
  font-weight: 600;
  line-height: 1.2;
  letter-spacing: 0.01em;
  text-decoration: underline;
  text-decoration-style: dotted;
  text-underline-offset: 2px;
  cursor: help;
  pointer-events: auto;
}

.node-navigation-workspace-counter-types-trigger--icon {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  flex: 0 0 auto;
  width: 22px;
  height: 22px;
  margin-top: 0;
  border-radius: 5px;
  text-decoration: none;
  color: #64748b;
  background: rgba(148, 163, 184, 0.12);
  transition:
    background 0.12s ease,
    color 0.12s ease;
}

.node-navigation-workspace-counter-types-trigger--icon:hover,
.node-navigation-workspace-counter-types-trigger--icon:focus-visible {
  color: #334155;
  background: rgba(100, 116, 139, 0.18);
}

.node-navigation-workspace-counter-types-icon {
  display: block;
  width: 14px;
  height: 14px;
}

.node-navigation-workspace-counter-types-trigger:hover,
.node-navigation-workspace-counter-types-trigger:focus-visible {
  color: #334155;
}

.node-navigation-workspace-counter-types-trigger.ui-tooltip-host[data-tooltip]::after,
.node-navigation-workspace-counter-types-trigger.ui-tooltip-host[data-tooltip]::before {
  z-index: 60;
}

.node-navigation-workspace-counter-types-trigger.ui-tooltip-host[data-tooltip]::after {
  max-width: 240px;
  white-space: normal;
  text-align: center;
}

.node-navigation-workspace-counter-card--outside-slots .stub-static-mark {
  font-size: 9px;
}

.node-navigation-workspace-counter-card--outside-slots .node-navigation-workspace-counter-value {
  font-size: 18px;
  color: #94a3b8;
}

.node-navigation-workspace-counter.is-deprecated-slot {
  opacity: 0.92;
  cursor: default;
}

.node-navigation-workspace-counter-card--deprecated-repository {
  border-color: #fecaca;
  background: linear-gradient(180deg, #fffafa 0%, #fef2f2 100%);
}

.node-navigation-workspace-counter-value--deprecated {
  color: #ef4444;
  font-size: 24px;
  font-weight: 900;
  line-height: 1;
  text-shadow: 0 0 1px rgba(220, 38, 38, 0.35);
}

.node-navigation-workspace-counter-label--deprecated .node-navigation-workspace-counter-label-main.is-struck {
  text-decoration: line-through;
  color: #94a3b8;
}

.node-navigation-workspace-counter-label--deprecated .node-navigation-workspace-counter-label-note {
  font-size: 8px;
  line-height: 1.2;
  color: #64748b;
}

.node-navigation-workspace-counter-list > li,
.node-navigation-workspace-counter-item {
  min-width: 0;
}

.node-navigation-workspace-counter-card {
  display: flex;
  flex-direction: row;
  align-items: stretch;
  width: 100%;
  min-width: 0;
  border: 1px solid #e2e8f0;
  border-radius: 10px;
  background: #f8fafc;
  overflow: hidden;
}

.node-navigation-workspace-counter-card .node-navigation-workspace-counter {
  flex: 1 1 auto;
  min-width: 0;
}

.node-navigation-workspace-counter-card .node-navigation-workspace-counter-pin-btn.menu-pin-branch-btn {
  box-sizing: border-box;
  flex: 0 0 32px;
  width: 32px;
  min-width: 32px;
  max-width: 32px;
  height: auto;
  min-height: 100%;
  align-self: stretch;
  margin: 0;
  padding: 0;
  border: 0;
  border-left: 1px solid #e2e8f0;
  border-radius: 0 9px 9px 0;
  background: rgba(255, 255, 255, 0.72);
  color: #64748b;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  font-size: 12px;
  line-height: 1;
  vertical-align: middle;
  box-shadow: none;
  transform: none;
}

.node-navigation-workspace-counter-card .node-navigation-workspace-counter-pin-btn.menu-pin-branch-btn:hover:not(:disabled) {
  border-left-color: #cbd5e1;
  background: #eff6ff;
  color: #334155;
  box-shadow: none;
  transform: none;
}

.node-navigation-workspace-counter-card .node-navigation-workspace-counter-pin-btn.menu-pin-branch-btn:focus-visible {
  outline: 2px solid rgba(59, 130, 246, 0.45);
  outline-offset: -2px;
}

.node-navigation-workspace-counter-card:has(.node-navigation-workspace-counter.is-active):not(
    :has(.node-navigation-workspace-counter.is-flag)
  )
  .node-navigation-workspace-counter-pin-btn {
  border-left-color: #fcd34d;
  background: rgba(255, 255, 255, 0.35);
}

.node-navigation-workspace-counter-card:has(.node-navigation-workspace-counter-types-trigger) {
  overflow: visible;
}

.node-navigation-workspace-counter-card .node-navigation-workspace-counter {
  flex-direction: row;
  align-items: center;
  justify-content: flex-start;
  gap: 8px;
  border: 0;
  border-radius: 0;
  min-height: 38px;
  padding: 7px 10px;
  background: transparent;
  box-shadow: none;
  text-align: left;
}

.node-navigation-workspace-counter-card .node-navigation-workspace-counter:hover,
.node-navigation-workspace-counter-card .node-navigation-workspace-counter:focus-visible {
  transform: none;
  box-shadow: none;
  background: transparent;
  border-color: transparent;
}

.node-navigation-workspace-counter-card:has(.node-navigation-workspace-counter.is-pending) {
  border-color: #fcd34d;
  background: linear-gradient(180deg, #fffbeb 0%, #fef3c7 100%);
}

.node-navigation-workspace-counter-card:has(.node-navigation-workspace-counter.is-unread) {
  border-color: #93c5fd;
  background: linear-gradient(180deg, #eff6ff 0%, #dbeafe 100%);
}

.node-navigation-workspace-counter-card:has(.node-navigation-workspace-counter.is-available) {
  border-color: #dbeafe;
  background: linear-gradient(180deg, #f8fbff 0%, #f1f5f9 100%);
}

.node-navigation-workspace-counter-card:has(.node-navigation-workspace-counter:hover):not(
    :has(.node-navigation-workspace-counter.is-active)
  ) {
  border-color: #cbd5e1;
  background: #f1f5f9;
}

.node-navigation-workspace-counter-card:has(.node-navigation-workspace-counter.is-pending:hover) {
  border-color: #fcd34d;
  background: linear-gradient(180deg, #fffbeb 0%, #fef3c7 100%);
}

.node-navigation-workspace-counter-card:has(.node-navigation-workspace-counter.is-unread:hover) {
  border-color: #93c5fd;
  background: linear-gradient(180deg, #eff6ff 0%, #dbeafe 100%);
}

.node-navigation-workspace-counter-card:has(.node-navigation-workspace-counter.is-available:hover) {
  border-color: #bfdbfe;
  background: linear-gradient(180deg, #eff6ff 0%, #e2e8f0 100%);
}

.node-navigation-workspace-counter-card .node-navigation-workspace-counter.is-pending,
.node-navigation-workspace-counter-card .node-navigation-workspace-counter.is-unread,
.node-navigation-workspace-counter-card .node-navigation-workspace-counter.is-available,
.node-navigation-workspace-counter-card .node-navigation-workspace-counter.is-active {
  background: transparent;
  border-color: transparent;
}

.node-navigation-workspace-counter-card:has(.node-navigation-workspace-counter.is-active) {
  border-color: #fcd34d;
  background: linear-gradient(180deg, #fffbeb 0%, #fef3c7 100%);
}

.node-navigation-workspace-counter-card:has(.node-navigation-workspace-counter.is-active:hover),
.node-navigation-workspace-counter-card:has(.node-navigation-workspace-counter.is-active:focus-visible) {
  border-color: #f59e0b;
  background: linear-gradient(180deg, #fffbeb 0%, #fde68a 100%);
}

.node-navigation-workspace-counter-card:has(.node-navigation-workspace-counter.is-flag.is-active) {
  border-color: #fca5a5;
  background: linear-gradient(180deg, #fef2f2 0%, #fee2e2 100%);
}

.node-navigation-workspace-counter-card:has(.node-navigation-workspace-counter.is-flag.is-active:hover),
.node-navigation-workspace-counter-card:has(.node-navigation-workspace-counter.is-flag.is-active:focus-within) {
  border-color: #f87171;
  background: linear-gradient(180deg, #fef2f2 0%, #fecaca 100%);
}

.node-navigation-workspace-counter-card:has(.node-navigation-workspace-counter.is-flag.is-active)
  .node-navigation-workspace-counter-pin-btn {
  border-left-color: #fca5a5;
}

.node-navigation-workspace-counter-card .node-navigation-workspace-counter.is-active {
  color: #92400e;
}

.node-navigation-workspace-counter-card .node-navigation-workspace-counter.is-flag.is-active {
  color: #991b1b;
}

.node-navigation-workspace-counter-card .node-navigation-workspace-counter.is-pending {
  color: #92400e;
}

.node-navigation-workspace-counter-card .node-navigation-workspace-counter.is-unread {
  color: #1e40af;
}

.node-navigation-workspace-counter-card .node-navigation-workspace-counter-status {
  flex: 0 0 auto;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  order: 1;
}

.node-navigation-workspace-counter-card .node-navigation-workspace-counter-icon {
  flex: 0 0 auto;
  margin-bottom: 0;
  font-size: 16px;
  order: 2;
}

.node-navigation-workspace-counter-card .node-navigation-workspace-counter-label {
  flex: 1 1 auto;
  min-width: 0;
  max-width: none;
  text-align: left;
  white-space: nowrap;
  order: 3;
}

.node-navigation-workspace-counter-card .node-navigation-workspace-counter-label--stacked {
  display: contents;
}

.node-navigation-workspace-counter-card .node-navigation-workspace-counter-label-main {
  flex: 1 1 auto;
  min-width: 0;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
  order: 3;
  text-align: left;
  font-size: 16px;
  font-weight: 800;
  line-height: 1;
  letter-spacing: -0.02em;
}

.node-navigation-workspace-counter-card .node-navigation-workspace-counter-label:not(
    .node-navigation-workspace-counter-label--stacked
  ) {
  font-size: 16px;
  font-weight: 800;
  line-height: 1;
  letter-spacing: -0.02em;
}

.node-navigation-workspace-counter-card .node-navigation-workspace-counter-types-trigger {
  flex: 0 0 auto;
  margin-top: 0;
  white-space: nowrap;
  order: 5;
}

.node-navigation-workspace-counter-card .node-navigation-workspace-counter.is-pending .node-navigation-workspace-counter-types-trigger--icon {
  color: #b45309;
  background: rgba(180, 83, 9, 0.12);
}

.node-navigation-workspace-counter-card .node-navigation-workspace-counter-metric {
  flex: 0 0 auto;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  margin-left: auto;
  min-height: 22px;
  order: 4;
}

.node-navigation-workspace-counter-card .node-navigation-workspace-counter-value {
  font-size: 16px;
}

.node-navigation-workspace-counter-index {
  display: block;
  width: 100%;
  margin: 0;
  padding: 3px 6px;
  border: 0;
  border-top: 1px solid #e2e8f0;
  background: #ffffff;
  color: #64748b;
  font-size: 10px;
  font-weight: 600;
  line-height: 1.2;
  letter-spacing: 0.02em;
  text-transform: uppercase;
  cursor: pointer;
}

.node-navigation-workspace-counter-index.is-available {
  color: #1d4ed8;
}

.node-navigation-workspace-counter-index.is-generated {
  color: #64748b;
  border-top-style: dashed;
}

.node-navigation-workspace-counter-index.is-available:hover:not(:disabled) {
  background: #eff6ff;
  color: #1e40af;
}

.node-navigation-workspace-counter-index.is-generated:hover:not(:disabled) {
  background: #f8fafc;
  color: #334155;
}

.node-navigation-workspace-counter-index.is-missing,
.node-navigation-workspace-counter-index:disabled {
  opacity: 0.45;
  cursor: default;
}

.node-navigation-workspace-counter-index {
  display: none;
}

.node-navigation-workspace-counter-topic-index-row {
  display: flex;
  align-items: stretch;
  gap: 6px;
  margin: 8px 0 0;
}

.node-navigation-workspace-counter-topic-index {
  flex: 1 1 auto;
  min-width: 0;
  display: block;
  width: auto;
  margin: 0;
  padding: 6px 10px;
  border: 1px dashed #cbd5e1;
  border-radius: 8px;
  background: #ffffff;
  color: #475569;
  font-size: 11px;
  font-weight: 600;
  line-height: 1.2;
  text-align: center;
  cursor: pointer;
}

.node-navigation-workspace-counter-topic-index.is-available {
  border-style: solid;
  border-color: #bfdbfe;
  color: #1d4ed8;
  background: #f8fbff;
}

.node-navigation-workspace-counter-topic-index.is-generated:hover {
  border-color: #94a3b8;
  background: #f8fafc;
}

.node-navigation-workspace-counter-topic-index.is-available:hover {
  background: #eff6ff;
  border-color: #93c5fd;
}

.node-navigation-workspace-counter-topic-index-refresh {
  flex: 0 0 auto;
  width: 32px;
  padding: 0;
  border: 1px solid #cbd5e1;
  border-radius: 8px;
  background: #ffffff;
  color: #64748b;
  font-size: 14px;
  font-weight: 700;
  line-height: 1;
  cursor: pointer;
  transition:
    background 0.12s ease,
    border-color 0.12s ease,
    color 0.12s ease;
}

.node-navigation-workspace-counter-topic-index-refresh:hover,
.node-navigation-workspace-counter-topic-index-refresh:focus-visible {
  color: #1d4ed8;
  border-color: #93c5fd;
  background: #eff6ff;
}

.node-navigation-workspace-counter-topic-index-refresh:disabled,
.node-navigation-workspace-counter-topic-index-refresh.is-loading {
  opacity: 0.72;
  cursor: wait;
  pointer-events: none;
}

.node-navigation-workspace-counters > .node-navigation-workspace-counter-topic-index-row.is-content-index {
  margin: 0 0 10px;
  padding: 6px;
  border-radius: 10px;
  background: linear-gradient(
    180deg,
    rgba(167, 139, 250, 0.24) 0%,
    rgba(250, 245, 255, 0.92) 48%,
    rgba(237, 233, 254, 0.55) 100%
  );
  box-sizing: border-box;
}

.node-navigation-workspace-counters > .node-navigation-workspace-counter-topic-index-row.is-content-index .node-navigation-workspace-counter-topic-index {
  min-height: 32px;
  height: 32px;
  padding: 0 10px;
  display: flex;
  align-items: center;
  justify-content: center;
  box-sizing: border-box;
  border: 1px dashed rgba(139, 92, 246, 0.42);
  border-radius: 8px;
  background: #f5f3ff;
  color: #5b21b6;
  font-size: 11px;
  font-weight: 600;
  line-height: 1.2;
  text-align: center;
  cursor: pointer;
}

.node-navigation-workspace-counters > .node-navigation-workspace-counter-topic-index-row.is-content-index .node-navigation-workspace-counter-topic-index.is-available {
  border-style: solid;
  border-color: rgba(139, 92, 246, 0.55);
  background: #ede9fe;
  color: #6d28d9;
}

.node-navigation-workspace-counters > .node-navigation-workspace-counter-topic-index-row.is-content-index .node-navigation-workspace-counter-topic-index.is-generated:hover,
.node-navigation-workspace-counters > .node-navigation-workspace-counter-topic-index-row.is-content-index .node-navigation-workspace-counter-topic-index.is-available:hover {
  border-color: rgba(124, 58, 237, 0.62);
  background: #ddd6fe;
  color: #5b21b6;
}

.node-navigation-workspace-counters > .node-navigation-workspace-counter-topic-index-row.is-content-index .node-navigation-workspace-counter-topic-index-refresh {
  display: flex;
  align-items: center;
  justify-content: center;
  flex: 0 0 auto;
  width: 32px;
  height: 32px;
  min-height: 32px;
  padding: 0;
  border: 1px solid rgba(139, 92, 246, 0.42);
  border-radius: 8px;
  background: #f5f3ff;
  color: #6d28d9;
  font-size: 14px;
  font-weight: 700;
  line-height: 1;
  cursor: pointer;
}

.node-navigation-workspace-counters > .node-navigation-workspace-counter-topic-index-row.is-content-index .node-navigation-workspace-counter-topic-index-refresh:hover,
.node-navigation-workspace-counters > .node-navigation-workspace-counter-topic-index-row.is-content-index .node-navigation-workspace-counter-topic-index-refresh:focus-visible {
  border-color: rgba(124, 58, 237, 0.62);
  background: #ddd6fe;
  color: #5b21b6;
}

.node-navigation-workspace-counters > .node-navigation-workspace-counter-topic-index-row.is-content-index .node-navigation-workspace-counter-topic-index-refresh-spinner {
  border-color: rgba(167, 139, 250, 0.35);
  border-top-color: #7c3aed;
}

.node-navigation-workspace-counter-topic-index:disabled {
  opacity: 0.72;
  cursor: wait;
}

.node-navigation-workspace-counter-topic-index-refresh-spinner {
  display: block;
  width: 14px;
  height: 14px;
  margin: 0 auto;
  border: 2px solid rgba(148, 163, 184, 0.35);
  border-top-color: #3b82f6;
  border-radius: 50%;
  animation: content-search-spin 0.65s linear infinite;
}

.node-navigation-workspace-counter-topic-index-refresh:focus-visible {
  outline: 2px solid rgba(37, 99, 235, 0.35);
  outline-offset: 1px;
}

.node-navigation-workspace-counter {
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  gap: 4px;
  width: 100%;
  min-height: 68px;
  padding: 10px 8px;
  border: 1px solid #e2e8f0;
  border-radius: 10px;
  background: #f8fafc;
  color: #64748b;
  cursor: pointer;
  transition:
    background 0.15s ease,
    border-color 0.15s ease,
    color 0.15s ease,
    box-shadow 0.15s ease,
    transform 0.15s ease,
    opacity 0.15s ease;
}

.node-navigation-workspace-counter:hover {
  background: #f1f5f9;
  border-color: #cbd5e1;
  transform: translateY(-1px);
}

.node-navigation-workspace-counter.is-filled {
  color: #334155;
}

.node-navigation-workspace-counter.is-empty {
  opacity: 0.5;
}

.node-navigation-workspace-counter.is-available {
  opacity: 1;
  color: #475569;
  border-color: #dbeafe;
  background: linear-gradient(180deg, #f8fbff 0%, #f1f5f9 100%);
}

.node-navigation-workspace-counter.is-available:hover {
  opacity: 1;
  border-color: #bfdbfe;
  background: linear-gradient(180deg, #eff6ff 0%, #e2e8f0 100%);
}

.node-navigation-workspace-counter.is-empty:hover {
  opacity: 0.75;
}

.node-navigation-workspace-counter.is-pending {
  border-color: #fcd34d;
  background: linear-gradient(180deg, #fffbeb 0%, #fef3c7 100%);
  color: #92400e;
}

.node-navigation-workspace-counter.is-unread {
  border-color: #93c5fd;
  background: linear-gradient(180deg, #eff6ff 0%, #dbeafe 100%);
  color: #1e40af;
}

.node-navigation-workspace-counter-value {
  font-size: 22px;
  font-weight: 800;
  font-variant-numeric: tabular-nums;
  line-height: 1;
  letter-spacing: -0.02em;
}

.node-navigation-workspace-counter.is-filled .node-navigation-workspace-counter-value {
  color: #166534;
}

.node-navigation-workspace-counter.is-empty .node-navigation-workspace-counter-value {
  color: #94a3b8;
}

.node-navigation-workspace-counter.is-pending .node-navigation-workspace-counter-value {
  color: #b45309;
}

.node-navigation-workspace-counter.is-unread .node-navigation-workspace-counter-value {
  color: #1d4ed8;
}

.node-navigation-workspace-counter-indicator {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 6px;
  min-height: 22px;
}

.node-navigation-workspace-counter-icon {
  flex: 0 0 auto;
  font-size: 18px;
  line-height: 1;
  text-align: center;
  margin-bottom: 2px;
}

.node-navigation-workspace-counter-indicator .node-slot-lamp {
  flex-shrink: 0;
}

.node-navigation-workspace-counter.is-flag .node-navigation-workspace-counter-value {
  font-size: 18px;
}

.node-navigation-workspace-counter-flag {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 22px;
  height: 22px;
  color: #64748b;
  line-height: 0;
}

.node-navigation-workspace-counter-flag svg {
  width: 18px;
  height: 18px;
  display: block;
}

.node-navigation-workspace-counter.is-filled .node-navigation-workspace-counter-flag {
  color: #166534;
}

.node-navigation-workspace-counter.is-empty .node-navigation-workspace-counter-flag {
  color: #94a3b8;
}

.node-navigation-workspace-counter-label {
  max-width: 100%;
  font-size: 10px;
  font-weight: 600;
  line-height: 1.25;
  text-align: center;
  white-space: normal;
  opacity: 0.88;
}

.node-comments {
  margin: 0;
  padding: 0;
  min-width: 0;
  max-width: 100%;
  overflow-x: clip;
}

.node-overview-content > .node-comments {
  margin-top: 20px;
}

.components-ideas-content > .node-comments > .node-navigation-memory-head {
  display: none;
}

.node-comments > .node-navigation-memory-head {
  margin-bottom: 14px;
}

.node-navigation-memory-head .node-comments-count {
  flex: 0 0 auto;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-width: 22px;
  height: 22px;
  padding: 0 7px;
  border-radius: 999px;
  background: #eff6ff;
  border: 1px solid #93c5fd;
  color: #1d4ed8;
  font-size: 11px;
  font-weight: 800;
  line-height: 1;
}

.node-navigation-memory-head .node-comments-badge {
  flex: 0 0 auto;
  display: inline-flex;
  align-items: center;
  padding: 4px 8px;
  border-radius: 7px;
  background: linear-gradient(180deg, #fffbeb 0%, #fef3c7 100%);
  border: 1px solid #fcd34d;
  color: #b45309;
  font-size: 10px;
  font-weight: 800;
  letter-spacing: 0.06em;
  text-transform: uppercase;
  box-shadow: 0 1px 0 rgba(255, 255, 255, 0.75) inset;
}

.node-comments-composer,
.node-comment {
  display: grid;
  grid-template-columns: 36px minmax(0, 1fr);
  column-gap: 12px;
  row-gap: 12px;
  align-items: start;
  width: 100%;
  max-width: 100%;
  min-width: 0;
  box-sizing: border-box;
}

.node-comment--reply {
  grid-template-columns: 30px minmax(0, 1fr);
}

.node-comments-composer {
  margin-top: 18px;
  margin-bottom: 0;
}

.node-comments-composer-main,
.node-comment-main {
  min-width: 0;
  max-width: 100%;
}

.node-comments-composer-box,
.node-comment-main {
  border: 1px solid #d0d7de;
  border-radius: 10px;
  background: #fff;
  overflow: hidden;
}

.node-comments-input {
  display: block;
  width: 100%;
  min-height: 84px;
  padding: 12px 14px;
  border: 0;
  resize: vertical;
  background: #fff;
  color: #334155;
  font: inherit;
  font-size: 14px;
  line-height: 1.5;
  box-sizing: border-box;
}

.node-comments-input::placeholder {
  color: #94a3b8;
}

.node-comments-input:focus {
  outline: none;
}

.node-comments-composer-actions {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  justify-content: space-between;
  gap: 8px;
  padding: 10px 12px;
  border-top: 1px solid #e2e8f0;
  background: #f8fafc;
}

.node-comments-composer-hint {
  color: #64748b;
  font-size: 12px;
}

.node-comments-submit {
  padding: 6px 14px;
  border: 1px solid #cbd5e1;
  border-radius: 8px;
  background: #e2e8f0;
  color: #64748b;
  font-size: 13px;
  font-weight: 600;
  cursor: not-allowed;
}

.node-comments-submit:not(:disabled) {
  border-color: #2563eb;
  background: linear-gradient(180deg, #3b82f6 0%, #2563eb 100%);
  color: #fff;
  cursor: pointer;
  box-shadow: 0 1px 0 rgba(255, 255, 255, 0.25) inset;
}

.node-comments-submit:not(:disabled):hover {
  background: linear-gradient(180deg, #2563eb 0%, #1d4ed8 100%);
}

.node-comments-status,
.node-comments-empty {
  margin: 0 0 14px;
  color: #64748b;
  font-size: 13px;
}

.node-comments-empty {
  list-style: none;
}

.node-comments-thread {
  display: flex;
  flex-direction: column;
  gap: 16px;
  margin: 0;
  padding: 0;
  list-style: none;
  min-width: 0;
  max-width: 100%;
}

.node-comment-main {
  padding: 0;
}

.node-comment-head {
  display: flex;
  flex-wrap: nowrap;
  align-items: center;
  justify-content: space-between;
  gap: 8px;
  padding: 8px 14px;
  border-bottom: 1px solid #e2e8f0;
  background: linear-gradient(180deg, #f8fafc 0%, #f1f5f9 100%);
}

.node-comment-head-meta {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 8px;
  min-width: 0;
}

.node-comment-head-actions {
  display: flex;
  align-items: center;
  gap: 6px;
  flex-shrink: 0;
  margin-left: auto;
}

.node-comment-head-action {
  padding: 2px 8px;
  font-size: 11px;
  line-height: 1.3;
}

.node-comment-author {
  color: #0f172a;
  font-size: 13px;
  font-weight: 700;
  letter-spacing: 0.01em;
}

.node-comment-time {
  color: #64748b;
  font-size: 11px;
  font-weight: 500;
}

.node-comment-time::before {
  content: "·";
  margin-right: 8px;
  color: #cbd5e1;
}

.node-comment-body {
  padding: 12px 16px 14px;
  color: #334155;
  font-size: 14px;
  line-height: 1.6;
  white-space: pre-wrap;
  overflow-wrap: anywhere;
  word-break: break-word;
}

.node-comment-body.file-content-preview {
  white-space: normal;
  min-height: 0;
  height: auto;
  margin: 0;
  padding: 0;
  border: 0;
  border-radius: 0;
  background: transparent;
  box-shadow: none;
  overflow: visible;
}

.doc-stack .node-comment-body.file-content-preview,
.doc-slab-main .node-comment-body.file-content-preview,
.node-overview-content .node-comment-body.file-content-preview {
  min-height: 0;
  height: auto;
}

.node-comment-body.file-content-preview .node-comment-md-chunk {
  padding: 10px 14px 12px;
  min-height: 0;
  box-sizing: border-box;
  overflow-x: auto;
}

.node-comment-body.file-content-preview .node-comment-md-chunk > :first-child {
  margin-top: 0;
}

.node-comment-body.file-content-preview .node-comment-md-chunk > :last-child {
  margin-bottom: 0;
}

.node-comment-body.file-content-preview .node-comment-md-chunk p,
.node-comment-body.file-content-preview .node-comment-md-chunk ul,
.node-comment-body.file-content-preview .node-comment-md-chunk ol,
.node-comment-body.file-content-preview .node-comment-md-chunk blockquote,
.node-comment-body.file-content-preview .node-comment-md-chunk pre,
.node-comment-body.file-content-preview .node-comment-md-chunk table {
  margin: 0 0 0.5em;
}

.node-comment-body.file-content-preview .node-comment-md-chunk table {
  width: max-content;
  max-width: 100%;
}

.node-comment-body.file-content-preview .node-comment-mention {
  display: inline;
  vertical-align: baseline;
}

.node-comment-foot {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
  padding: 0 14px 12px;
}

.node-comment-action {
  padding: 0;
  border: 0;
  background: transparent;
  color: #64748b;
  font-size: 12px;
  font-weight: 600;
  cursor: not-allowed;
}

.node-comment-action:not(:disabled) {
  cursor: pointer;
}

.node-comment-action--danger:not(:disabled) {
  color: #b91c1c;
}

.node-comment-action--danger:not(:disabled):hover {
  color: #991b1b;
}

.node-comment-edit-actions {
  display: flex;
  gap: 8px;
  justify-content: flex-end;
  margin-top: 4px;
  padding: 0 14px 12px;
  box-sizing: border-box;
}

.node-comment-edit-field {
  width: 100%;
  min-height: 72px;
}

.node-comment-action:not(:disabled):hover {
  color: #2563eb;
}

.node-comment-replies {
  grid-column: 1 / -1;
  width: 100%;
  max-width: 100%;
  display: flex;
  flex-direction: column;
  gap: 12px;
  margin: 0;
  padding: 0 0 0 48px;
  box-sizing: border-box;
  list-style: none;
}

.node-comment-replies .node-comment-replies {
  padding-left: 36px;
}

.node-comment--reply .node-comment-avatar {
  width: 30px;
  height: 30px;
  font-size: 10px;
}

.node-comment-reply-composer {
  padding: 10px 14px 12px;
  border-top: 1px solid #e2e8f0;
  background: #f8fafc;
}

.node-comment-reply-input {
  min-height: 56px;
}

.node-comment-reply-actions {
  display: flex;
  justify-content: flex-end;
  gap: 8px;
  margin-top: 8px;
}

.node-comment-reply-cancel {
  padding: 6px 12px;
  border: 1px solid #cbd5e1;
  border-radius: 8px;
  background: #fff;
  color: #64748b;
  font-size: 13px;
  font-weight: 600;
  cursor: pointer;
}

.node-comment-avatar {
  flex: 0 0 36px;
  width: 36px;
  height: 36px;
  border-radius: 999px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  border: 1px solid rgba(15, 23, 42, 0.08);
  color: #fff;
  font-size: 11px;
  font-weight: 800;
  letter-spacing: 0.02em;
  text-transform: uppercase;
}

.node-comment-avatar--blue {
  background: linear-gradient(135deg, #2563eb 0%, #1d4ed8 100%);
}

.node-comment-avatar--violet {
  background: linear-gradient(135deg, #7c3aed 0%, #6d28d9 100%);
}

.node-comment-avatar--slate {
  background: linear-gradient(135deg, #475569 0%, #334155 100%);
}

.node-comment-avatar--green {
  background: linear-gradient(135deg, #059669 0%, #047857 100%);
}

.node-comment-avatar--icon {
  font-size: 16px;
  font-weight: 400;
  letter-spacing: 0;
  text-transform: none;
}

.node-thread {
  flex: 1 1 auto;
  min-height: 0;
  overflow: hidden;
  padding: 0;
  display: flex;
  flex-direction: column;
}

.node-thread-content {
  flex: 1 1 auto;
  min-height: 0;
  display: flex;
  flex-direction: column;
  width: 100%;
  max-width: none;
  margin: 0;
}

.node-thread-content > .node-thread-panel {
  flex: 1 1 auto;
  min-height: 0;
}

.node-thread-panel {
  flex: 1 1 auto;
  min-height: 0;
  display: flex;
  flex-direction: column;
  gap: 0;
  border: 1px solid rgba(148, 163, 184, 0.28);
  border-radius: 14px;
  overflow: hidden;
  background: linear-gradient(165deg, #ffffff 0%, #f8fafc 48%, #eef2ff 100%);
  box-shadow:
    0 1px 2px rgba(15, 23, 42, 0.04),
    0 10px 28px rgba(59, 130, 246, 0.06);
}

.node-thread-panel .node-thread-messages {
  flex: 1 1 auto;
  min-height: 280px;
  overflow: auto;
  padding: 16px 14px 12px;
  border-bottom: 1px solid rgba(148, 163, 184, 0.14);
  background:
    radial-gradient(ellipse 90% 70% at 12% 0%, rgba(99, 102, 241, 0.1), transparent 58%),
    radial-gradient(ellipse 80% 55% at 100% 100%, rgba(59, 130, 246, 0.08), transparent 52%),
    linear-gradient(180deg, rgba(255, 255, 255, 0.55) 0%, rgba(241, 245, 249, 0.35) 100%);
}

.node-thread-panel .node-thread-composer {
  flex: 0 0 auto;
  margin: 0;
  padding: 12px 14px 14px;
  background: rgba(255, 255, 255, 0.88);
  backdrop-filter: blur(10px);
}

.node-thread-panel .node-comments-composer {
  margin-bottom: 0;
}

.node-thread-empty {
  padding: 36px 16px;
  text-align: center;
  color: #94a3b8;
  font-size: 13px;
  line-height: 1.5;
}

.node-thread-message .node-comment-main {
  background: rgba(255, 255, 255, 0.82);
  box-shadow: 0 1px 2px rgba(15, 23, 42, 0.04);
}

.node-thread-message--agent .node-comment-main {
  background: rgba(238, 242, 255, 0.92);
  border-color: rgba(129, 140, 248, 0.22);
}

.node-thread-scope-bar {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
  flex: 0 0 auto;
  margin: 0 0 12px;
  padding: 8px 12px;
  border: 1px solid #dbeafe;
  border-radius: 10px;
  background: #eff6ff;
}

.node-thread-scope-note {
  min-width: 0;
  color: #1e40af;
  font-size: 12px;
  font-weight: 600;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.node-thread-scope-back {
  flex: 0 0 auto;
  padding: 4px 10px;
  border: 1px solid #bfdbfe;
  border-radius: 999px;
  background: #fff;
  color: #1d4ed8;
  font-size: 12px;
  font-weight: 600;
  cursor: pointer;
}

.node-thread-scope-back:hover {
  background: #dbeafe;
}

.node-comment-mention {
  color: #1d4ed8;
  font-weight: 700;
}

.node-comment-mention--link {
  padding: 0;
  border: 0;
  background: transparent;
  cursor: pointer;
  font: inherit;
}

.node-comment-mention--link:hover {
  text-decoration: underline;
}

.node-comments-composer-box {
  position: relative;
}

.node-comment-mention-popup {
  position: absolute;
  left: 0;
  right: 0;
  top: calc(100% + 4px);
  z-index: 20;
  display: flex;
  flex-direction: column;
  gap: 2px;
  padding: 4px;
  border: 1px solid #cbd5e1;
  border-radius: 10px;
  background: #fff;
  box-shadow: 0 10px 24px rgba(15, 23, 42, 0.12);
}

.node-comment-mention-option {
  display: block;
  width: 100%;
  padding: 7px 10px;
  border: 0;
  border-radius: 8px;
  background: transparent;
  color: #0f172a;
  font-size: 13px;
  text-align: left;
  cursor: pointer;
}

.node-comment-mention-option.is-active,
.node-comment-mention-option:hover {
  background: #eff6ff;
  color: #1d4ed8;
}

.node-thread-message--agent .node-comment-author::after {
  content: " · агент";
  color: #64748b;
  font-weight: 600;
}

.inbox-triage-list {
  display: flex;
  flex-direction: column;
  gap: 12px;
  margin: 0;
  padding: 0;
  list-style: none;
}

.inbox-triage-item {
  border: 1px solid #dbeafe;
  border-radius: 12px;
  background: #fff;
  padding: 14px 16px;
}

.inbox-triage-item.is-done {
  opacity: 0.72;
  border-color: #e2e8f0;
  background: #f8fafc;
}

.inbox-triage-head {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 8px;
  margin-bottom: 8px;
}

.inbox-triage-path {
  font-size: 13px;
  font-weight: 700;
  color: #0f172a;
}

.inbox-triage-status {
  display: inline-flex;
  align-items: center;
  padding: 2px 8px;
  border-radius: 999px;
  font-size: 10px;
  font-weight: 800;
  letter-spacing: 0.04em;
  text-transform: uppercase;
}

.inbox-triage-status--new {
  background: #eff6ff;
  border: 1px solid #93c5fd;
  color: #1d4ed8;
}

.inbox-triage-status--in-progress {
  background: #fffbeb;
  border: 1px solid #fcd34d;
  color: #b45309;
}

.inbox-triage-status--done {
  background: #ecfdf5;
  border: 1px solid #6ee7b7;
  color: #047857;
}

.inbox-triage-meta {
  color: #64748b;
  font-size: 12px;
}

.inbox-triage-preview {
  margin: 0 0 12px;
  color: #334155;
  font-size: 14px;
  line-height: 1.45;
  white-space: pre-wrap;
}

.inbox-triage-actions {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
}

.inbox-triage-btn {
  appearance: none;
  border: 1px solid #cbd5e1;
  border-radius: 8px;
  background: #fff;
  color: #334155;
  font: inherit;
  font-size: 12px;
  font-weight: 600;
  padding: 6px 10px;
  cursor: pointer;
}

.inbox-triage-btn:hover:not(:disabled) {
  border-color: #93c5fd;
  color: #1d4ed8;
}

.inbox-triage-btn:disabled {
  opacity: 0.55;
  cursor: default;
}

.inbox-pending-badge {
  display: inline-flex;
  align-items: center;
  margin-left: 8px;
  padding: 2px 8px;
  border-radius: 999px;
  background: #eff6ff;
  border: 1px solid #93c5fd;
  color: #1d4ed8;
  font-size: 11px;
  font-weight: 700;
}

.inbox-triage-toolbar {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  justify-content: space-between;
  gap: 10px;
  margin-bottom: 14px;
  padding: 10px 12px;
  border: 1px solid #e2e8f0;
  border-radius: 10px;
  background: #f8fafc;
}

.inbox-triage-filter {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  color: #475569;
  font-size: 13px;
  cursor: pointer;
}

.inbox-triage-btn--primary {
  border-color: #2563eb;
  background: linear-gradient(180deg, #3b82f6 0%, #2563eb 100%);
  color: #fff;
}

.inbox-triage-btn--primary:hover:not(:disabled) {
  border-color: #1d4ed8;
  background: linear-gradient(180deg, #2563eb 0%, #1d4ed8 100%);
  color: #fff;
}

.node-thread-body:not(.file-content-preview) {
  white-space: pre-wrap;
}

.node-thread-file-link {
  margin-right: 6px;
  margin-top: 4px;
}

.node-slot-strip-row {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 6px;
}

.node-slot-strip-title {
  display: inline-flex;
  align-items: center;
  padding: 4px 10px;
  border: 1px solid #e2e8f0;
  border-radius: 999px;
  background: #f8fafc;
  color: #64748b;
  font-size: 12px;
  font-weight: 600;
  line-height: 1.2;
  letter-spacing: 0.01em;
  white-space: nowrap;
}

.node-slot-strip-list {
  display: flex;
  flex-wrap: wrap;
  gap: 6px;
  margin: 0;
  padding: 0;
  list-style: none;
}

.node-slot-chip {
  display: inline-flex;
  align-items: center;
  gap: 7px;
  padding: 4px 10px 4px 8px;
  border: 1px solid #e2e8f0;
  border-radius: 999px;
  background: #f8fafc;
  color: #334155;
  font-size: 12px;
  line-height: 1.2;
  cursor: pointer;
  transition:
    background 0.15s ease,
    border-color 0.15s ease,
    color 0.15s ease;
}

.node-slot-chip:hover {
  background: #f1f5f9;
  border-color: #cbd5e1;
}

.node-slot-chip.is-filled {
  color: #166534;
}

.node-slot-chip.is-empty {
  color: #64748b;
}

.node-slot-lamp {
  flex-shrink: 0;
  width: 8px;
  height: 8px;
  border-radius: 999px;
  background: #cbd5e1;
  box-shadow: inset 0 0 0 1px rgba(148, 163, 184, 0.45);
}

.node-slot-lamp.is-filled,
.node-slot-chip.is-filled .node-slot-lamp {
  background: #22c55e;
  box-shadow: 0 0 0 4px rgba(34, 197, 94, 0.16);
}

.node-slot-lamp.is-empty,
.node-slot-chip.is-empty .node-slot-lamp {
  background: #cbd5e1;
  box-shadow: inset 0 0 0 1px rgba(148, 163, 184, 0.45);
}

.node-slot-label {
  white-space: nowrap;
}

.node-overview-head .node-slot-strip {
  margin-top: 12px;
}

.node-navigation-block--subsections {
  margin: 0;
}

.node-navigation-subsections {
  display: flex;
  flex-direction: column;
  gap: 12px;
  margin: 0;
}

.node-navigation-block-title {
  margin: 0 0 18px;
  font-size: 12px;
  font-weight: 700;
  text-transform: uppercase;
  letter-spacing: 0.06em;
  color: #475569;
}

.node-navigation-document {
  font-size: 14px;
  line-height: 1.6;
  color: var(--text);
}

.node-navigation-panels {
  display: flex;
  flex-direction: column;
  gap: 22px;
  font-size: 14px;
  line-height: 1.6;
  color: var(--text);
}

.node-navigation-memory-card {
  margin: 0;
  display: flex;
  flex-direction: column;
  gap: 20px;
}

.node-navigation-memory-notice {
  margin: 0 0 14px;
  padding: 10px 12px;
  border-radius: 8px;
  font-size: 12px;
  line-height: 1.45;
}

.node-navigation-memory-notice--warning {
  border: 1px solid #fca5a5;
  background: #fef2f2;
  color: #dc2626;
}

.node-navigation-memory-head {
  display: flex;
  align-items: center;
  gap: 12px;
  margin: 0;
}

.node-navigation-memory-title {
  flex: 0 0 auto;
  margin: 0;
  line-height: 1.2;
  text-transform: uppercase;
  white-space: nowrap;
}

.node-navigation-memory-head-title-wrap {
  flex: 1 1 auto;
  min-width: 0;
  display: flex;
  flex-direction: column;
  gap: 4px;
}

.node-navigation-memory-title--with-icon {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  max-width: 100%;
}

.node-navigation-memory-title--with-icon.node-navigation-memory-title--with-comment {
  align-items: flex-start;
}

.node-navigation-memory-title-icon {
  flex: 0 0 auto;
  font-size: 18px;
  line-height: 1;
  text-align: center;
}

.node-navigation-memory-title-icon--svg {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  font-size: 0;
}

.node-navigation-memory-title-icon--svg .node-navigation-memory-title-icon-svg,
.node-navigation-memory-title-icon--svg .record-materials-icon,
.node-navigation-memory-title-icon--svg .viz-maps-icon {
  width: 14px;
  height: 14px;
  display: block;
}

.node-navigation-memory-head--record-materials .node-navigation-memory-title-icon--materials-folder {
  font-size: 19px;
}

.node-navigation-memory-title-label,
.node-navigation-memory-title-text {
  min-width: 0;
}

.node-navigation-memory-title-text {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  gap: 4px;
}

.node-navigation-memory-title--with-comment {
  white-space: normal;
}

.node-navigation-memory-title-main {
  display: block;
  text-transform: uppercase;
  line-height: 1.2;
}

.node-navigation-memory-title-comment {
  display: block;
  font-size: 11px;
  line-height: 1.35;
  font-weight: 400;
  font-style: italic;
  text-transform: none;
  letter-spacing: 0;
  color: #0f766e;
  white-space: normal;
}

.node-navigation-memory-card[data-slots-flexible="1"] .node-navigation-memory-title-comment {
  color: #0d9488;
}

button.node-navigation-memory-title {
  cursor: pointer;
  appearance: none;
  font-family: inherit;
  text-align: left;
  transition:
    border-color 0.15s ease,
    background 0.15s ease,
    box-shadow 0.15s ease,
    transform 0.15s ease;
}

button.node-navigation-memory-title:hover {
  transform: translateY(-1px);
}

button.node-navigation-memory-title:focus-visible {
  outline: 2px solid #2563eb;
  outline-offset: 2px;
}

.node-navigation-memory-head--title-v1 button.node-navigation-memory-title:hover {
  border-color: #3b82f6;
  box-shadow:
    0 1px 0 rgba(255, 255, 255, 0.75) inset,
    0 2px 6px rgba(37, 99, 235, 0.14);
}

.node-navigation-memory-head--title-v2 button.node-navigation-memory-title:hover {
  border-color: #93c5fd;
  background: linear-gradient(90deg, #dbeafe 0%, #f1f5f9 100%);
}

.node-navigation-memory-head--title-v3 button.node-navigation-memory-title:hover {
  color: #fff;
  opacity: 0.92;
}

.node-navigation-memory-head--title-v1 .node-navigation-memory-title {
  padding: 6px 12px;
  font-size: 11px;
  font-weight: 800;
  letter-spacing: 0.08em;
  color: #1e3a8a;
  background: linear-gradient(180deg, #f8fbff 0%, #eff6ff 100%);
  border: 1px solid #93c5fd;
  border-radius: 7px;
  box-shadow:
    0 1px 0 rgba(255, 255, 255, 0.75) inset,
    0 1px 2px rgba(37, 99, 235, 0.08);
}

.node-navigation-memory-head--title-v2 .node-navigation-memory-title {
  padding: 6px 14px 6px 16px;
  font-size: 13px;
  font-weight: 800;
  letter-spacing: 0.07em;
  color: #0f172a;
  background: linear-gradient(90deg, #eff6ff 0%, #f8fafc 100%);
  border: 1px solid #cbd5e1;
  border-left: 4px solid #2563eb;
  border-radius: 0 9px 9px 0;
  box-shadow: 0 1px 2px rgba(15, 23, 42, 0.06);
}

.node-navigation-memory-head--title-v3 {
  background: linear-gradient(90deg, #1e3a8a 0%, #2563eb 52%, #3b82f6 100%);
  border-radius: 10px;
  padding: 10px 14px;
  margin-bottom: 0;
  box-shadow: 0 2px 10px rgba(37, 99, 235, 0.22);
}

.node-navigation-memory-head--title-v3 .node-navigation-memory-title {
  padding: 0;
  font-size: 12px;
  font-weight: 800;
  letter-spacing: 0.1em;
  color: #fff;
  text-shadow: 0 1px 0 rgba(15, 23, 42, 0.18);
}

.node-navigation-memory-head--title-v3 .node-navigation-memory-rule {
  background: rgba(255, 255, 255, 0.32);
}

.node-navigation-memory-head--title-v3 .node-navigation-memory-view-btn {
  background: rgba(255, 255, 255, 0.14);
  border-color: rgba(255, 255, 255, 0.38);
  color: #fff;
}

.node-navigation-memory-head--title-v3 .node-navigation-memory-view-btn:hover {
  background: rgba(255, 255, 255, 0.24);
  border-color: rgba(255, 255, 255, 0.55);
  color: #fff;
}

.node-navigation-title-template {
  margin-top: 8px;
  padding-top: 20px;
  border-top: 1px dashed #cbd5e1;
}

.node-navigation-title-template-label {
  margin: 0 0 10px;
  font-size: 11px;
  font-weight: 700;
  letter-spacing: 0.04em;
  color: #64748b;
}

.node-navigation-title-template .node-navigation-memory-head {
  margin-bottom: 0;
}

.node-navigation-title-template + .node-navigation-title-template {
  margin-top: 16px;
  padding-top: 0;
  border-top: none;
}

.node-navigation-memory-rule {
  flex: 1 1 auto;
  height: 1px;
  background: var(--border);
  min-width: 24px;
}

.node-navigation-section-search {
  flex: 0 1 220px;
  min-width: 140px;
  max-width: 260px;
}

.node-navigation-section-search .menu-search-bar {
  min-height: 30px;
  height: 30px;
  padding: 0 8px;
  box-sizing: border-box;
}

.node-navigation-section-search .menu-search-input {
  font-size: 12px;
}

.node-navigation-section-search-empty {
  margin: 0;
  padding: 8px 10px;
  font-size: 12px;
  line-height: 1.4;
  color: #64748b;
}

.node-navigation-list-sort {
  display: inline-flex;
  align-items: center;
  flex: 0 0 auto;
  margin-left: auto;
}

.node-navigation-memory-head .node-navigation-list-sort {
  margin-left: 0;
  flex-shrink: 0;
}

.node-navigation-list-sort-toggle {
  display: inline-flex;
  align-items: center;
  gap: 1px;
  padding: 1px;
  min-height: 30px;
  box-sizing: border-box;
}

.node-navigation-list-sort-icon {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 14px;
  height: 14px;
  flex: 0 0 auto;
}

.node-navigation-list-sort-icon svg {
  display: block;
  width: 14px;
  height: 14px;
}

.node-navigation-list-sort-label {
  line-height: 1;
}

.node-navigation-list-sort-btn.folder-browse-images-cols-btn {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 4px;
  min-width: 0;
  padding: 0 7px;
  font-size: 10px;
  line-height: 1;
}

.node-navigation-memory-head .node-navigation-list-sort-toggle {
  min-height: 30px;
}

.node-navigation-memory-head .node-navigation-list-sort-btn.folder-browse-images-cols-btn {
  height: 26px;
  min-height: 26px;
}

.node-entry-overview-browse-toolbar .node-navigation-list-sort-btn.folder-browse-images-cols-btn {
  height: 32px;
  min-height: 32px;
  padding: 0 8px;
}

.folder-browse-hero-body .node-navigation-list-sort {
  align-self: flex-start;
  margin-left: 0;
}

.node-navigation-memory-badge {
  flex: 0 0 auto;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-width: 36px;
  min-height: 30px;
  padding: 0 10px;
  border-radius: 999px;
  border: 1px solid transparent;
  font-size: 13px;
  font-weight: 700;
  line-height: 1;
  text-align: center;
  font-variant-numeric: tabular-nums;
  box-sizing: border-box;
}

.node-navigation-memory-badge--internal {
  background: rgba(255, 255, 255, 0.9);
  border-color: #d5dee8;
  color: #475569;
}

.node-navigation-memory-badge--external {
  background: rgba(255, 255, 255, 0.9);
  border-color: #e3ddd4;
  color: #57534e;
}

.node-navigation-memory-badge--tabular {
  background: rgba(255, 255, 255, 0.9);
  border-color: #d8e3dc;
  color: #3f6212;
}

.node-navigation-memory-badge--media {
  background: rgba(255, 255, 255, 0.9);
  border-color: #ddd6fe;
  color: #6d28d9;
}

.node-navigation-memory-badge--assets {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-width: 30px;
  height: 30px;
  padding: 0 8px;
  box-sizing: border-box;
  background: rgba(255, 255, 255, 0.92);
  border: 1px solid #fcd34d;
  color: #b45309;
}

.node-entry-overview-record-parts-card .node-navigation-memory-head--record-materials {
  gap: 10px;
}

.node-entry-overview-record-parts-card .node-navigation-memory-title {
  max-width: min(100%, 420px);
  white-space: normal;
  text-wrap: balance;
}

.node-navigation-memory-view-btn {
  flex: 0 0 auto;
  padding: 4px 10px;
  font-size: 11px;
}

.node-navigation-memory-body {
  margin: 0;
  padding: 0;
  font-size: 14px;
  line-height: 1.6;
  color: var(--text);
}

.node-navigation-memory-body .node-navigation-preview,
.node-navigation-memory-body .node-navigation-external,
.node-navigation-memory-body .node-navigation-tabular,
.node-navigation-memory-body .node-navigation-media {
  margin: 0;
  padding: 0;
}

.node-navigation-memory-body .node-navigation-preview {
  font-size: inherit;
  line-height: inherit;
}

.doc-slab-main .node-navigation-memory-body .file-content-preview,
.node-overview-content .node-navigation-memory-body .file-content-preview {
  margin: 0;
  padding: 0;
  border: 0;
  border-radius: 0;
  background: transparent;
  min-height: 0;
  overflow: visible;
  box-shadow: none;
  width: 100%;
  max-width: none;
}

.node-navigation-memory-body .file-content-preview > :first-child {
  margin-top: 0;
}

.node-navigation-memory-body .file-content-preview > :last-child {
  margin-bottom: 0;
}

.node-navigation-empty-placeholder {
  margin: 0;
  padding: 12px 14px;
  font-size: 18px;
  line-height: 1;
  font-weight: 500;
  color: #94a3b8;
  text-align: center;
  background: #f8fafc;
  border: 1px dashed #e2e8f0;
  border-radius: 8px;
}

.node-navigation-empty-note {
  margin: 0;
  padding: 12px 14px;
  font-size: 13px;
  line-height: 1.45;
  color: #94a3b8;
  text-align: center;
  background: #f8fafc;
  border: 1px dashed #e2e8f0;
  border-radius: 8px;
}

.node-navigation-memory-body .node-navigation-manifest .node-navigation-agent-instruction.file-content-preview,
.doc-slab-content
  .doc-slab-main
  .node-navigation-memory-body
  .node-navigation-manifest
  .node-navigation-agent-instruction.file-content-preview {
  margin: 0;
  padding: 12px 14px;
  border: 1px solid #fde68a;
  border-radius: 8px;
  background: #fffbeb;
  color: #713f12;
  box-shadow: none;
}

.node-navigation-manifest-nav,
.node-entry-overview-hero-nav {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto minmax(0, 1fr);
  align-items: center;
  gap: 12px;
  padding: 10px 18px;
  background: rgba(248, 250, 252, 0.82);
}

.node-entry-overview-hero-nav {
  border-bottom: 1px solid rgba(148, 163, 184, 0.24);
}

.node-navigation-manifest-nav {
  margin-top: 14px;
  border: 1px solid rgba(148, 163, 184, 0.24);
  border-radius: 10px;
}

.node-navigation-topic-nav-bottom {
  margin-top: 0;
  margin-bottom: 14px;
}

.node-navigation-manifest-nav .node-navigation-manifest-nav-btn:first-child,
.node-entry-overview-hero-nav .node-navigation-manifest-nav-btn:first-child {
  justify-self: start;
  max-width: 100%;
}

.node-navigation-manifest-nav .node-navigation-manifest-nav-btn--up,
.node-entry-overview-hero-nav .node-navigation-manifest-nav-btn--up {
  justify-self: center;
  flex: 0 0 auto;
  max-width: none;
  min-width: max-content;
  overflow: visible;
  white-space: nowrap;
}

.node-navigation-manifest-nav .node-navigation-manifest-nav-btn:last-child,
.node-navigation-manifest-nav .node-navigation-manifest-nav-spacer:last-child,
.node-entry-overview-hero-nav .node-navigation-manifest-nav-btn:last-child,
.node-entry-overview-hero-nav .node-navigation-manifest-nav-spacer:last-child {
  justify-self: end;
  max-width: 100%;
}

.node-navigation-manifest-nav-spacer {
  display: block;
  min-width: 0;
}

.node-navigation-manifest-nav-btn:not(.node-navigation-manifest-nav-btn--up) {
  flex: 0 1 auto;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.node-navigation-manifest-nav-btn:hover:not(:disabled) {
  border-color: #93c5fd;
  background: #eff6ff;
  color: #1d4ed8;
}

.node-navigation-manifest-nav-btn:disabled {
  opacity: 0.4;
  cursor: not-allowed;
}

.node-navigation-manifest-actions {
  display: flex;
  align-items: center;
  gap: 12px;
  margin-top: 14px;
}

.node-navigation-manifest-actions::before,
.node-navigation-manifest-actions::after {
  content: "";
  flex: 1 1 auto;
  height: 1px;
  background: var(--border);
  min-width: 28px;
}

.node-navigation-manifest-actions .node-navigation-expand-btn {
  flex: 0 0 auto;
  border: 0;
  background: transparent;
  padding: 4px 2px;
  font-size: 11px;
  font-weight: 700;
  letter-spacing: 0.04em;
  text-transform: uppercase;
  color: #dc2626;
}

.node-navigation-manifest-actions .node-navigation-expand-btn:hover {
  background: transparent;
  border-color: transparent;
  color: #b91c1c;
}

.node-navigation-memory-body .file-content-preview p,
.node-navigation-memory-body .file-content-preview ul,
.node-navigation-memory-body .file-content-preview ol,
.node-navigation-memory-body .file-content-preview blockquote,
.node-navigation-memory-body .file-content-preview pre {
  margin: 0 0 0.65em;
}

.node-navigation-memory-body .file-content-preview p:last-child,
.node-navigation-memory-body .file-content-preview ul:last-child,
.node-navigation-memory-body .file-content-preview ol:last-child {
  margin-bottom: 0;
}

.file-content-preview ul.contains-task-list,
.file-content-preview ol.contains-task-list {
  list-style: none;
  padding-left: 0;
}

.file-content-preview li.task-list-item {
  position: relative;
  list-style: none;
  margin: 0 0 0.35em;
  padding-left: 1.65em;
}

.file-content-preview li.task-list-item:last-child {
  margin-bottom: 0;
}

.file-content-preview li.task-list-item .task-list-item-checkbox {
  position: absolute;
  left: 0;
  top: 0.15em;
  width: 1em;
  height: 1em;
  margin: 0;
  accent-color: #2563eb;
  pointer-events: none;
}

.file-content-preview li.task-list-item.checked {
  color: #64748b;
  text-decoration: line-through;
  text-decoration-color: rgba(100, 116, 139, 0.55);
}

.node-navigation-memory-body .tabular-table-wrap {
  margin: 0;
}

.node-navigation-book-toc {
  margin: 0;
}

.nav-book-toc-list {
  list-style: none;
  margin: 0;
  padding: 0;
}

.nav-book-toc-folder {
  margin: 0 0 6px;
}

.nav-book-toc-folder-head {
  display: grid;
  grid-template-columns: 28px minmax(0, 1fr) auto;
  align-items: center;
  gap: 0;
  margin-left: 0;
}

.nav-book-toc-folder-toggle,
.nav-book-toc-folder-toggle-spacer {
  flex-shrink: 0;
  width: 28px;
  height: 28px;
}

.nav-book-toc-folder-toggle {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  margin: 0;
  padding: 0;
  border: 0;
  background: transparent;
  color: #64748b;
  cursor: pointer;
  border-radius: 6px;
}

.nav-book-toc-folder-toggle:hover,
.nav-book-toc-folder-toggle:focus-visible {
  color: var(--accent);
  background: rgba(37, 99, 235, 0.08);
}

.nav-book-toc-folder-toggle:focus-visible {
  outline: 2px solid rgba(37, 99, 235, 0.35);
  outline-offset: 1px;
}

.nav-book-toc-folder-toggle:disabled {
  opacity: 0.45;
  cursor: default;
}

.nav-book-toc-folder-toggle:disabled:hover,
.nav-book-toc-folder-toggle:disabled:focus-visible {
  color: #64748b;
  background: transparent;
}

.nav-book-toc-tree--guide .nav-book-toc-folder-toggle:disabled {
  background: #f8fafc;
  border-color: #e2e8f0;
}

.nav-book-toc-tree--guide .nav-book-toc-folder-toggle:disabled:hover,
.nav-book-toc-tree--guide .nav-book-toc-folder-toggle:disabled:focus-visible {
  border-color: #e2e8f0;
  background: #f8fafc;
  color: #94a3b8;
}

.nav-book-toc-folder-chevron {
  display: inline-block;
  width: 7px;
  height: 7px;
  border-right: 2px solid currentColor;
  border-bottom: 2px solid currentColor;
  transform: rotate(-45deg);
  transition: transform 0.15s ease;
  margin-top: -2px;
}

.nav-book-toc-folder:not(.is-collapsed) > .nav-book-toc-folder-head .nav-book-toc-folder-chevron {
  transform: rotate(45deg);
  margin-top: -4px;
}

.nav-book-toc-tree--guide .nav-book-toc-folder-toggle {
  width: 22px;
  height: 22px;
  border: 1px solid #dbe3ee;
  border-radius: 5px;
  background: #f8fafc;
  color: #64748b;
}

.nav-book-toc-tree--guide .nav-book-toc-folder--root .nav-book-toc-folder-toggle {
  width: 24px;
  height: 24px;
}

.nav-book-toc-tree--guide .nav-book-toc-folder--nested .nav-book-toc-folder-toggle {
  width: 20px;
  height: 20px;
}

.nav-book-toc-tree--guide .nav-book-toc-folder-toggle:hover,
.nav-book-toc-tree--guide .nav-book-toc-folder-toggle:focus-visible {
  border-color: #bfdbfe;
  background: #eff6ff;
  color: var(--accent);
}

.nav-book-toc-tree--guide .nav-book-toc-folder-toggle .nav-book-toc-folder-chevron {
  width: 8px;
  height: 8px;
  border-width: 2px;
}

.nav-book-toc-tree--guide .nav-book-toc-folder.is-collapsed > .nav-book-toc-folder-head .nav-book-toc-folder-chevron {
  transform: rotate(-45deg);
  margin-top: -1px;
}

.nav-book-toc-tree--guide .nav-book-toc-folder:not(.is-collapsed) > .nav-book-toc-folder-head .nav-book-toc-folder-chevron {
  transform: rotate(45deg);
  margin-top: -3px;
}

.nav-book-toc-folder-count {
  flex-shrink: 0;
  min-width: 22px;
  margin-right: 8px;
  padding: 2px 7px;
  border-radius: 999px;
  background: #e2e8f0;
  color: #475569;
  font-size: 11px;
  font-weight: 700;
  line-height: 1.3;
  text-align: center;
}

.nav-book-toc-folder-count.is-expanded-visible {
  background: #f1f5f9;
  color: #64748b;
  font-weight: 600;
}

.nav-book-toc-folder > .nav-book-toc-list {
  margin: 4px 0 0 10px;
  padding: 2px 0 6px 10px;
  border-left: 2px solid #e8edf2;
}

.nav-book-toc-tree--guide {
  --nav-toc-line: #cbd5e1;
  --nav-toc-spine: 14px;
  --nav-toc-branch-pad: 12px;
}

.nav-book-toc-tree--guide .nav-book-toc-list--root {
  margin: 0;
  padding: 0 0 8px var(--nav-toc-spine);
  border-left: 1.5px solid var(--nav-toc-line);
  overflow: visible;
}

.nav-book-toc-tree--guide .nav-book-toc-list--root > .nav-book-toc-folder--root {
  margin-left: calc(-1 * var(--nav-toc-spine));
}

.nav-book-toc-tree--guide .nav-book-toc-folder,
.nav-book-toc-tree--guide .nav-book-toc-list,
.nav-book-toc-tree--guide .nav-book-toc-entry {
  overflow: visible;
}

.nav-book-toc-tree--guide .nav-book-toc-folder {
  margin-bottom: 2px;
}

.nav-book-toc-tree--guide .nav-book-toc-folder--root {
  margin-bottom: 8px;
}

.nav-book-toc-tree--guide .nav-book-toc-folder--root > .nav-book-toc-folder-head {
  display: flex;
  align-items: center;
  gap: 6px;
  border: 1px solid #e2e8f0;
  border-radius: 8px;
  background: linear-gradient(180deg, #fff 0%, #f8fafc 100%);
  box-shadow: 0 1px 2px rgba(15, 23, 42, 0.04);
  padding: 5px 8px 5px 6px;
}

.nav-book-toc-tree--guide .nav-book-toc-folder--nested > .nav-book-toc-folder-head {
  display: flex;
  align-items: center;
  gap: 6px;
  border: 0;
  background: transparent;
  box-shadow: none;
  min-height: 26px;
  padding-left: 2px;
  position: relative;
}

.nav-book-toc-tree--guide .nav-book-toc-folder-head .nav-book-toc-folder-label {
  /* Shrink-wrap to title; do not stretch across the whole row */
  flex: 0 1 auto;
  min-width: 0;
  width: max-content;
  max-width: 100%;
  overflow: hidden;
}

.nav-book-toc-tree--guide .nav-book-toc-folder-leaders {
  display: flex;
  align-items: center;
  flex: 0 0 auto;
  flex-shrink: 0;
  min-width: max-content;
  margin: 0;
  margin-left: auto;
  gap: 4px;
  height: auto;
  background: none;
  overflow: visible;
}

.nav-book-toc-tree--guide .nav-book-toc-folder-leaders::before {
  content: "";
  flex: 1 1 auto;
  min-width: 8px;
  height: 0;
  margin-right: 4px;
  border-bottom: 1px dotted var(--nav-toc-line);
}

.nav-book-toc-tree--guide .nav-book-toc-folder-leaders .nav-book-toc-folder-count {
  flex: 0 0 auto;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-width: 18px;
  height: 18px;
  margin: 0;
  padding: 0 5px;
  border: 1px solid #cbd5e1;
  border-radius: 999px;
  background: #ffffff;
  color: #64748b;
  font-size: 10px;
  font-weight: 700;
  line-height: 1;
  font-variant-numeric: tabular-nums;
  box-sizing: border-box;
}

.nav-book-toc-tree--guide .nav-book-toc-folder-leaders .nav-book-toc-folder-count.is-expanded-visible {
  background: #f1f5f9;
  border-color: #cbd5e1;
  color: #475569;
  font-weight: 700;
}

.nav-book-toc-tree--guide .nav-book-toc-folder-create-btn {
  flex: 0 0 auto;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 22px;
  height: 22px;
  margin: 0;
  padding: 0;
  border: 1px solid #cbd5e1;
  border-radius: 999px;
  background: #ffffff;
  color: #475569;
  font-size: 14px;
  font-weight: 700;
  line-height: 1;
  cursor: pointer;
  box-sizing: border-box;
}

.nav-book-toc-tree--guide .nav-book-toc-folder-create-btn:hover,
.nav-book-toc-tree--guide .nav-book-toc-folder-create-btn:focus-visible {
  border-color: #94a3b8;
  background: #eff6ff;
  color: #1d4ed8;
  outline: none;
}

.nav-book-toc-tree--guide .nav-book-toc-folder-head:has(.nav-book-toc-folder-label.is-current) .nav-book-toc-folder-create-btn {
  border-color: rgba(37, 99, 235, 0.35);
  background: rgba(239, 246, 255, 0.95);
  color: #1d4ed8;
}

.nav-book-toc-tree--guide .nav-book-toc-folder-leaders.has-nav-book-toc-folder-create-btn .nav-book-toc-folder-count {
  margin-right: 0;
}

.nav-book-toc-tree--guide .nav-book-toc-folder--root > .nav-book-toc-folder-head {
  overflow: visible;
}

.nav-book-toc-tree--guide .nav-book-toc-folder--nested > .nav-book-toc-folder-head::before {
  content: "";
  position: absolute;
  left: calc(-1 * var(--nav-toc-branch-pad));
  top: 50%;
  width: calc(var(--nav-toc-branch-pad) - 1px);
  border-top: 1.5px solid var(--nav-toc-line);
  pointer-events: none;
}

.nav-book-toc-tree--guide .nav-book-toc-folder--nested .nav-book-toc-folder-toggle-spacer {
  width: 20px;
  height: 20px;
}

.nav-book-toc-tree--guide .nav-book-toc-folder > .nav-book-toc-list {
  margin: 4px 0 2px var(--nav-toc-spine);
  padding: 2px 0 4px var(--nav-toc-branch-pad);
  border-left: 1.5px solid var(--nav-toc-line);
  overflow: visible;
}

.nav-book-toc-tree--guide .nav-book-toc-folder--root > .nav-book-toc-list {
  margin-top: 4px;
}

.nav-book-toc-tree--guide .nav-book-toc-entry {
  position: relative;
}

.nav-book-toc-tree--guide .nav-book-toc-link {
  position: relative;
  display: flex;
  align-items: center;
  gap: 4px;
  width: 100%;
  min-width: 0;
  padding: 3px 6px;
  border-radius: 5px;
  box-sizing: border-box;
  overflow: visible;
}

.nav-book-toc-tree--guide .nav-book-toc-link-text {
  flex: 1 1 auto;
  min-width: 0;
  max-width: 100%;
  overflow: hidden;
  justify-content: flex-start;
}

.nav-book-toc-link-text > .nav-book-toc-title-text {
  flex: 1 1 auto;
  min-width: 0;
}

.nav-book-toc-tree--guide .nav-book-toc-link > .nav-book-toc-link-preview,
.nav-book-toc-tree--guide .nav-book-toc-link > .nav-book-toc-link-icon,
.nav-book-toc-tree--guide .nav-book-toc-link > .nav-book-toc-link-leading,
.nav-book-toc-tree--guide .nav-book-toc-link > .nav-book-toc-status,
.nav-book-toc-tree--guide .nav-book-toc-link > .nav-book-toc-id-badge {
  flex: 0 0 auto;
}

.nav-book-toc-tree--guide .nav-book-toc-link > .nav-book-toc-id-badge {
  margin: 0;
  padding: 0 3px;
  min-width: 15px;
  height: 15px;
  align-self: center;
}

.nav-book-toc-tree--guide .nav-book-toc-link > .nav-book-toc-status:has(+ .nav-book-toc-id-badge) {
  margin-right: 0;
}

.nav-book-toc-tree--guide .nav-book-toc-leaders {
  flex: 1 1 auto;
  align-self: center;
  min-width: 12px;
  margin: 0 0 0 4px;
  height: 1px;
  background: repeating-linear-gradient(
    to right,
    #cbd5e1 0 2px,
    transparent 2px 6px
  );
}

.nav-book-toc-tree--guide .nav-book-toc-leaders.has-nav-book-toc-attachments-badge,
.nav-book-toc-tree--guide .nav-book-toc-leaders.has-nav-book-toc-materials-badge,
.nav-book-toc-tree--guide .nav-book-toc-leaders.has-nav-book-toc-viz-maps-badge,
.nav-book-toc-tree--guide .nav-book-toc-leaders.has-nav-book-toc-unread-badge,
.nav-book-toc-tree--guide .nav-book-toc-leaders.has-nav-book-toc-link-indicators {
  display: inline-flex;
  align-items: center;
  flex: 0 0 auto;
  flex-shrink: 0;
  gap: 4px;
  min-width: 0;
  height: auto;
  margin-left: 6px;
  background: none;
}

.nav-book-toc-tree--guide .nav-book-toc-leaders.has-nav-book-toc-attachments-badge::before,
.nav-book-toc-tree--guide .nav-book-toc-leaders.has-nav-book-toc-materials-badge::before,
.nav-book-toc-tree--guide .nav-book-toc-leaders.has-nav-book-toc-viz-maps-badge::before,
.nav-book-toc-tree--guide .nav-book-toc-leaders.has-nav-book-toc-unread-badge::before,
.nav-book-toc-tree--guide .nav-book-toc-leaders.has-nav-book-toc-link-indicators::before {
  content: "";
  flex: 1 1 auto;
  min-width: 8px;
  height: 0;
  margin-right: 2px;
  border-bottom: 1px dotted #cbd5e1;
}

.nav-book-toc-tree--guide .nav-book-toc-folder > .nav-book-toc-list .nav-book-toc-link::before {
  content: "";
  position: absolute;
  left: calc(-1 * var(--nav-toc-branch-pad));
  top: 50%;
  width: calc(var(--nav-toc-branch-pad) - 1px);
  border-top: 1.5px solid var(--nav-toc-line);
  pointer-events: none;
}

.nav-book-toc-tree--guide .nav-book-toc-list--root > .nav-book-toc-entry--root-level .nav-book-toc-link::before {
  left: calc(-1 * var(--nav-toc-spine));
  width: calc(var(--nav-toc-spine) - 1px);
}

.nav-book-toc-tree--guide .nav-book-toc-link:hover,
.nav-book-toc-tree--guide .nav-book-toc-link:focus-visible {
  background: rgba(241, 245, 249, 0.95);
}

.nav-book-toc-tree--guide .nav-book-toc-folder--root .nav-book-toc-folder-label {
  font-size: 13px;
  font-weight: 600;
  color: #334155;
  text-transform: none;
  letter-spacing: 0;
}

.nav-book-toc-tree--guide .nav-book-toc-folder--root .nav-book-toc-folder-label > .nav-book-toc-status,
.nav-book-toc-tree--guide .nav-book-toc-folder--root .nav-book-toc-folder-label > .nav-book-toc-id-badge,
.nav-book-toc-tree--guide .nav-book-toc-folder--nested .nav-book-toc-folder-label > .nav-book-toc-status,
.nav-book-toc-tree--guide .nav-book-toc-folder--nested .nav-book-toc-folder-label > .nav-book-toc-id-badge,
.nav-book-toc-tree--guide .nav-book-toc-link > .nav-book-toc-status {
  margin-right: 4px;
}

.nav-book-toc-tree--guide .nav-book-toc-folder--nested .nav-book-toc-folder-label {
  font-size: 12px;
  font-weight: 600;
  padding: 2px 0;
  color: #475569;
}

.nav-book-toc-tree--guide .nav-book-toc-folder--unregistered.nav-book-toc-folder--nested .nav-book-toc-folder-label {
  color: #64748b;
  font-weight: 500;
}

.nav-book-toc-tree--guide .nav-book-toc-folder--unregistered.nav-book-toc-folder--root .nav-book-toc-folder-head {
  background: #f8fafc;
  border-style: dashed;
}

.nav-book-toc-tree--guide .nav-book-toc-folder--unregistered.nav-book-toc-folder--root .nav-book-toc-folder-label {
  padding-left: 2px;
}

.nav-book-toc-folder.is-collapsed > .nav-book-toc-list {
  display: none;
}

.nav-book-toc-folder-label {
  display: flex;
  align-items: center;
  gap: 6px;
  width: 100%;
  min-width: 0;
  margin: 0;
  padding: 6px 8px 6px 0;
  border: 0;
  background: transparent;
  text-align: left;
  font: inherit;
  font-size: 11px;
  font-weight: 700;
  letter-spacing: 0.04em;
  text-transform: uppercase;
  color: #64748b;
  cursor: pointer;
}

.nav-book-toc-folder-label > .nav-book-toc-leaders {
  flex: 1 1 auto;
  min-width: 12px;
  align-self: center;
}

.node-navigation-memory-body .nav-book-toc-folder > .nav-book-toc-list,
.node-entry-overview-memory-toc .nav-book-toc-folder > .nav-book-toc-list {
  border-left-color: #cbd5e1;
}

.nav-book-toc-folder-label:hover .nav-book-toc-folder-text,
.nav-book-toc-folder-label:focus-visible .nav-book-toc-folder-text {
  color: var(--accent);
}

.nav-book-toc-folder-label:focus-visible {
  outline: none;
}

.nav-book-toc-folder-text {
  display: inline-flex;
  align-items: center;
  gap: 5px;
  min-width: 0;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.nav-book-toc-schema-badge {
  flex-shrink: 0;
}

.nav-book-toc-schema-badge .menu-runtime-marker-svg {
  width: 11px;
  height: 11px;
}

.nav-book-toc-folder-icon {
  flex-shrink: 0;
  width: 14px;
  height: 14px;
  font-size: 0;
  line-height: 0;
  background-repeat: no-repeat;
  background-position: center center;
  background-size: 14px 14px;
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='%2394a3b8'%3E%3Cpath d='M10.5 4.5a2 2 0 0 1 1.6.8l.9 1.2h5a2.5 2.5 0 0 1 2.5 2.5V17a2.5 2.5 0 0 1-2.5 2.5H6A2.5 2.5 0 0 1 3.5 17V7A2.5 2.5 0 0 1 6 4.5h4.5z'/%3E%3C/svg%3E");
}

.nav-book-toc-folder-icon--adopt {
  opacity: 0.72;
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='%23cbd5e1'%3E%3Cpath d='M10.5 4.5a2 2 0 0 1 1.6.8l.9 1.2h5a2.5 2.5 0 0 1 2.5 2.5V17a2.5 2.5 0 0 1-2.5 2.5H6A2.5 2.5 0 0 1 3.5 17V7A2.5 2.5 0 0 1 6 4.5h4.5z'/%3E%3C/svg%3E");
}

.nav-book-toc-folder-label--unregistered {
  text-transform: none;
  color: #94a3b8;
  font-weight: 600;
  cursor: pointer;
}

.nav-book-toc-folder-label--unregistered:hover .nav-book-toc-folder-text,
.nav-book-toc-folder-label--unregistered:focus-visible .nav-book-toc-folder-text {
  color: var(--accent);
}

.nav-book-toc-folder-label--unregistered:hover,
.nav-book-toc-folder-label--unregistered:focus-visible {
  color: #64748b;
}

.nav-book-toc-folder-label--unregistered .media-section-tree-label {
  min-width: 0;
  font-size: inherit;
  font-weight: inherit;
  letter-spacing: normal;
  text-transform: none;
  color: inherit;
}

.nav-book-toc-entry {
  margin: 0;
}

.nav-book-toc-link {
  display: flex;
  align-items: center;
  gap: 6px;
  width: 100%;
  padding: 4px 0 4px 0;
  border: 0;
  background: transparent;
  text-align: left;
  font: inherit;
  font-size: 13px;
  line-height: 1.4;
  color: var(--text);
  cursor: pointer;
}

.nav-book-toc-link > .nav-book-toc-link-icon,
.nav-book-toc-link > .nav-book-toc-status,
.nav-book-toc-link > .nav-book-toc-link-preview,
.nav-book-toc-link > .nav-book-toc-link-leading {
  flex: 0 0 auto;
}

.nav-book-toc-link-text {
  flex: 0 1 auto;
  min-width: 0;
}

.nav-book-toc-link > .nav-book-toc-leaders {
  flex: 1 1 auto;
  min-width: 12px;
  align-self: center;
}

.nav-book-toc-link:hover .nav-book-toc-link-text,
.nav-book-toc-link:focus-visible .nav-book-toc-link-text {
  color: var(--accent);
}

.nav-book-toc-link:focus-visible {
  outline: none;
}

.nav-book-toc-link-icon {
  flex-shrink: 0;
  width: 1.15em;
  font-size: 14px;
  line-height: 1;
  text-align: center;
  opacity: 0.9;
}

.nav-book-toc-link-icon--record {
  width: 14px;
  height: 14px;
  font-size: 0;
  line-height: 0;
  opacity: 1;
  background-repeat: no-repeat;
  background-position: center center;
  background-size: 14px 14px;
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath fill='%230D9488' d='M8 4.5h8a2 2 0 0 1 2 2v13a2 2 0 0 1-2 2H8a2 2 0 0 1-2-2v-13a2 2 0 0 1 2-2z'/%3E%3Cpath fill='%23CCFBF1' d='M9.5 9h5a1 1 0 0 1 0 2h-5a1 1 0 0 1 0-2zm0 3.5h5a1 1 0 0 1 0 2h-5a1 1 0 0 1 0-2zm0 3.5h3.5a1 1 0 0 1 0 2H9.5a1 1 0 0 1 0-2z'/%3E%3C/svg%3E");
}

.nav-book-toc-link-preview:has(.nav-book-toc-link-preview-img):hover,
.menu-item:has(.menu-tree-preview-img):hover .menu-tree-preview,
.menu-folder:has(.menu-tree-preview-img):hover .menu-tree-preview,
.node-overview-thumb-wrap[data-has-preview="1"]:has(.node-overview-thumb:not(.broken-image-placeholder)):hover {
  border-color: #93c5fd;
  box-shadow: 0 0 0 2px rgba(147, 197, 253, 0.28);
}

.nav-preview-hover-popover {
  position: fixed;
  z-index: 14000;
  width: 168px;
  height: 168px;
  padding: 4px;
  border-radius: 12px;
  border: 1px solid #bfdbfe;
  background: #fff;
  box-shadow:
    0 18px 44px rgba(15, 23, 42, 0.22),
    0 0 0 1px rgba(255, 255, 255, 0.65) inset;
  pointer-events: none;
  overflow: visible;
}

.nav-preview-hover-popover-arrow {
  position: absolute;
  top: var(--arrow-offset, 84px);
  width: 18px;
  height: 18px;
  border: 1px solid #bfdbfe;
  border-radius: 4px;
  background: #fff;
  color: #64748b;
  font-size: 11px;
  font-weight: 600;
  line-height: 1;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  box-shadow: 0 2px 8px rgba(15, 23, 42, 0.14);
  transform: translateY(-50%);
  pointer-events: none;
}

.nav-preview-hover-popover-arrow[data-anchor-side="right"] {
  right: -9px;
}

.nav-preview-hover-popover-arrow[data-anchor-side="left"] {
  left: -9px;
}

.nav-preview-hover-popover-arrow[data-anchor-side="bottom"] {
  top: auto;
  bottom: -9px;
  left: var(--arrow-offset, 84px);
  transform: translateX(-50%);
}

.nav-preview-hover-popover.is-anchor-bottom .nav-preview-hover-popover-arrow {
  transform: translateX(-50%);
}

.nav-preview-hover-popover.is-large {
  width: 240px;
  height: 240px;
}

.nav-preview-hover-popover.hidden {
  display: none;
}

.nav-preview-hover-popover-img {
  display: block;
  width: 100%;
  height: 100%;
  object-fit: contain;
  border-radius: 8px;
  background: #f8fafc;
}

.nav-book-toc-link-preview {
  flex-shrink: 0;
  width: 28px;
  height: 28px;
  border-radius: 5px;
  overflow: hidden;
  background: #f1f5f9;
  border: 1px solid #e2e8f0;
  display: flex;
  align-items: center;
  justify-content: center;
}

.nav-book-toc-link-leading {
  display: inline-flex;
  align-items: center;
  gap: 4px;
  flex-shrink: 0;
}

.nav-book-toc-link-preview-img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  display: block;
}

.nav-book-toc-link-filetype {
  flex-direction: column;
  gap: 1px;
  padding: 2px 1px 1px;
  line-height: 1;
  overflow: hidden;
}

.nav-book-toc-link-filetype-emoji {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  font-size: 12px;
  line-height: 1;
}

.material-file-icon--toc {
  width: 14px;
  height: 14px;
  object-fit: contain;
  display: block;
}

.nav-book-toc-tree--rail .material-file-icon--toc {
  width: 16px;
  height: 16px;
}

.nav-book-toc-link-filetype-ext {
  max-width: 100%;
  font-size: 7px;
  font-weight: 800;
  letter-spacing: 0.03em;
  text-transform: uppercase;
  line-height: 1;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.nav-book-toc-link-filetype--pdf {
  background: #fef2f2;
  border-color: #fecaca;
  color: #b91c1c;
}

.nav-book-toc-link-filetype--doc {
  background: #eff6ff;
  border-color: #bfdbfe;
  color: #1d4ed8;
}

.nav-book-toc-link-filetype--sheet {
  background: #ecfdf5;
  border-color: #a7f3d0;
  color: #047857;
}

.nav-book-toc-link-filetype--slide {
  background: #fff7ed;
  border-color: #fed7aa;
  color: #c2410c;
}

.nav-book-toc-link-filetype--text {
  background: #f8fafc;
  border-color: #cbd5e1;
  color: #475569;
}

.nav-book-toc-link-filetype--video {
  background: #faf5ff;
  border-color: #e9d5ff;
  color: #7e22ce;
}

.nav-book-toc-link-filetype--audio {
  background: #fdf4ff;
  border-color: #f5d0fe;
  color: #a21caf;
}

.nav-book-toc-link-filetype--archive {
  background: #fffbeb;
  border-color: #fde68a;
  color: #b45309;
}

.nav-book-toc-link-icon--branch {
  position: relative;
  width: 11px;
  height: 11px;
  margin-top: 0;
  opacity: 1;
}

.nav-book-toc-link-icon--branch::before {
  content: "";
  position: absolute;
  left: 1px;
  top: 50%;
  width: 7px;
  height: 7px;
  border-left: 1.5px solid #94a3b8;
  border-bottom: 1.5px solid #94a3b8;
  border-bottom-left-radius: 2px;
  transform: translateY(-50%);
}

.nav-book-toc-link:hover .nav-book-toc-link-icon--branch::before,
.nav-book-toc-link:focus-visible .nav-book-toc-link-icon--branch::before {
  border-color: var(--accent);
}

.nav-book-toc-link-text {
  display: inline-flex;
  align-items: center;
  gap: 5px;
  min-width: 0;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.nav-book-toc-leaders {
  align-self: center;
  margin: 0 0 0 8px;
  min-width: 16px;
  height: 1px;
  background: repeating-linear-gradient(
    to right,
    #cbd5e1 0 2px,
    transparent 2px 6px
  );
}

.nav-book-toc-status,
.nav-book-toc-link > .nav-book-toc-status {
  flex-shrink: 0;
  align-self: center;
}

.nav-book-toc-attachments-badge,
.node-navigation-hero-attachments-badge {
  flex: 0 0 auto;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 3px;
  padding: 3px 5px;
  border-radius: 999px;
  border: 1px solid #bfdbfe;
  background: rgba(239, 246, 255, 0.96);
  color: #1d4ed8;
  font-size: 11px;
  font-weight: 600;
  line-height: 1;
  white-space: nowrap;
  font-variant-numeric: tabular-nums;
}

.nav-book-toc-materials-badge {
  flex: 0 0 auto;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  padding: 3px 5px;
  border-radius: 999px;
  border: 1px solid #99f6e4;
  background: rgba(240, 253, 250, 0.96);
  color: #0f766e;
}

.nav-book-toc-materials-badge-icon,
.nav-book-toc-viz-maps-badge-icon,
.record-materials-icon {
  display: block;
  width: 14px;
  height: 14px;
  flex: 0 0 auto;
}

.nav-book-toc-viz-maps-badge {
  flex: 0 0 auto;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  padding: 3px 5px;
  border-radius: 999px;
  border: 1px solid #93c5fd;
  background: rgba(239, 246, 255, 0.96);
  color: #1e40af;
}

.nav-book-toc-leaders.has-nav-book-toc-viz-maps-badge {
  display: flex;
  align-items: center;
  gap: 4px;
  margin-left: 8px;
  min-width: 0;
  height: auto;
  background: none;
}

.record-materials-icon-wrap {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  flex: 0 0 auto;
}

.record-materials-label {
  min-width: 0;
}

.doc-props-aside .props-form-record-materials-add {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 8px;
}

.doc-props-aside .props-form-record-materials-add .record-materials-icon {
  color: #fff;
}

.doc-props-aside .props-form-record-materials-status {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 8px;
}

.doc-props-aside .props-form-record-materials-status .record-materials-icon {
  color: #0f766e;
}

.nav-book-toc-leaders.has-nav-book-toc-materials-badge {
  display: flex;
  align-items: center;
  gap: 4px;
  margin-left: 8px;
  min-width: 0;
  height: auto;
  background: none;
}

.nav-book-toc-leaders.has-nav-book-toc-link-indicators {
  display: inline-flex;
  align-items: center;
  flex: 0 0 auto;
  flex-shrink: 0;
  gap: 4px;
  margin-left: 8px;
  min-width: 0;
  height: auto;
  background: none;
}

.nav-book-toc-leaders .nav-unread-badge {
  margin-left: 0;
}

.nav-book-toc-leaders.has-nav-book-toc-link-indicators::before {
  content: "";
  flex: 1 1 auto;
  min-width: 8px;
  height: 0;
  margin-right: 4px;
  border-bottom: 1px dotted #cbd5e1;
}

.nav-book-toc-attachments-badge.ui-tooltip-host[data-tooltip]::after,
.node-navigation-hero-attachments-badge.ui-tooltip-host[data-tooltip]::after {
  white-space: pre-line;
  max-width: 240px;
  text-align: left;
  font-weight: 500;
}

.nav-book-toc-attachments-badge.ui-tooltip-host[data-tooltip]::before,
.node-navigation-hero-attachments-badge.ui-tooltip-host[data-tooltip]::before {
  z-index: 41;
}

.nav-book-toc-attachments-badge.ui-tooltip-host[data-tooltip]::after {
  z-index: 42;
}

.nav-book-toc-attachments-badge-icon {
  display: block;
  width: 14px;
  height: 14px;
  flex: 0 0 auto;
}

.nav-book-toc-attachments-badge-count {
  min-width: 0.75em;
  font-size: 10px;
  font-weight: 700;
  line-height: 1;
  text-align: center;
}

.nav-book-toc-leaders.has-nav-book-toc-attachments-badge,
.nav-book-toc-leaders.has-nav-book-toc-materials-badge,
.nav-book-toc-leaders.has-nav-book-toc-viz-maps-badge,
.nav-book-toc-leaders.has-nav-book-toc-unread-badge,
.nav-book-toc-leaders.has-nav-book-toc-link-indicators {
  margin-left: 8px;
  min-width: 0;
  height: auto;
  background: none;
}

.node-navigation-hero-title .node-navigation-hero-attachments-badge {
  flex-shrink: 0;
}

.nav-book-toc-title-text {
  display: block;
  min-width: 0;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.nav-book-toc-id-badge,
.menu-tree-id-badge {
  flex-shrink: 0;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-width: 16px;
  height: 16px;
  padding: 0 4px;
  border-radius: 999px;
  background: #334155;
  color: #ffffff;
  font-size: 10px;
  font-weight: 700;
  font-variant-numeric: tabular-nums;
  line-height: 1;
  box-sizing: border-box;
  cursor: help;
}

.nav-book-toc-link:hover .nav-book-toc-id-badge,
.nav-book-toc-link:focus-visible .nav-book-toc-id-badge,
.menu-folder:hover .menu-tree-id-badge,
.menu-item:hover .menu-tree-id-badge,
.menu-flat-item:hover .menu-tree-id-badge {
  background: #1e293b;
  color: #ffffff;
}

.nav-book-toc-description-text {
  color: #64748b;
  font-weight: 400;
  text-transform: none;
  letter-spacing: normal;
}

.media-section-tree-label .nav-book-toc-description-text {
  color: #94a3b8;
}

.nav-book-toc-web-url-link {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  flex: 0 0 auto;
  width: 18px;
  height: 18px;
  margin-left: 2px;
  border-radius: 4px;
  color: #64748b;
  text-decoration: none;
  opacity: 0.82;
  transition: color 0.15s ease, opacity 0.15s ease, background-color 0.15s ease;
}

.nav-book-toc-web-url-link:hover,
.nav-book-toc-web-url-link:focus-visible {
  color: var(--accent);
  opacity: 1;
  background: rgba(59, 130, 246, 0.08);
  outline: none;
}

.nav-book-toc-web-url-icon {
  width: 13px;
  height: 13px;
  display: block;
}

.nav-book-toc-link:hover .nav-book-toc-web-url-link,
.nav-book-toc-link:focus-visible .nav-book-toc-web-url-link {
  color: var(--accent);
}

.node-navigation-media-groups {
  display: flex;
  flex-direction: column;
  gap: 14px;
}

.node-navigation-media-group-label {
  margin: 0 0 8px;
  font-size: 11px;
  font-weight: 700;
  letter-spacing: 0.04em;
  text-transform: uppercase;
  color: #64748b;
}

.node-navigation-media-thumbs {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
  margin: 0 0 14px;
}

.node-navigation-media-thumb {
  position: relative;
  flex: 0 0 72px;
  width: 72px;
  height: 72px;
  padding: 0;
  border: 1px solid #e2e8f0;
  border-radius: 10px;
  overflow: hidden;
  background: linear-gradient(135deg, #f8fafc 0%, #f1f5f9 100%);
  cursor: pointer;
  transition: border-color 0.15s ease, box-shadow 0.15s ease, transform 0.15s ease;
}

.node-navigation-media-thumb:hover,
.node-navigation-media-thumb:focus-visible {
  border-color: #c4b5fd;
  box-shadow: 0 4px 14px rgba(124, 58, 237, 0.14);
  transform: translateY(-1px);
}

.node-navigation-media-thumb:focus-visible {
  outline: none;
  box-shadow: 0 0 0 2px rgba(167, 139, 250, 0.35);
}

.node-navigation-media-thumb img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  display: block;
}

.node-navigation-media-thumb--error {
  display: flex;
  align-items: center;
  justify-content: center;
}

.node-navigation-media-thumb-fallback {
  font-size: 22px;
  line-height: 1;
}

.node-navigation-media-thumbs-more {
  flex: 0 0 72px;
  width: 72px;
  height: 72px;
  border: 1px dashed #cbd5e1;
  border-radius: 10px;
  background: #f8fafc;
  color: #64748b;
  font-size: 13px;
  font-weight: 700;
  cursor: pointer;
  transition: border-color 0.15s ease, background 0.15s ease, color 0.15s ease;
}

.node-navigation-media-thumbs-more:hover,
.node-navigation-media-thumbs-more:focus-visible {
  border-color: #a78bfa;
  background: #f5f3ff;
  color: #6d28d9;
}

.nav-book-toc-list--media {
  margin-top: 0;
}

.nav-book-toc-entry--media .nav-book-toc-link {
  padding-left: 0;
}

.node-navigation-doc-part + .node-navigation-doc-part {
  margin-top: 1.25em;
  padding-top: 1.25em;
  border-top: 1px solid #e8edf2;
}

.node-navigation-document .external-index-section,
.node-navigation-memory-body .external-index-section {
  border: none;
  border-radius: 0;
  background: transparent;
  margin: 0 0 0.85em;
  overflow: visible;
}

.node-navigation-document .external-index-section:last-child,
.node-navigation-memory-body .external-index-section:last-child {
  margin-bottom: 0;
}

.node-navigation-document .external-index-section-title,
.node-navigation-memory-body .external-index-section-title {
  padding: 0;
  margin: 0 0 0.35em;
  font-size: 1em;
  font-weight: 600;
  background: none;
  border: none;
  color: inherit;
}

.node-navigation-document .external-index-list,
.node-navigation-memory-body .external-index-list {
  padding: 0;
  margin: 0 0 0.5em;
}

.node-navigation-document .external-index-item,
.node-navigation-memory-body .external-index-item {
  padding: 0.15em 0;
  color: #2563eb;
}

.node-navigation-document .tabular-table-wrap,
.node-navigation-memory-body .tabular-table-wrap {
  margin: 0;
}

.node-navigation-preview {
  margin: 0;
  font-size: inherit;
  line-height: inherit;
  color: inherit;
}

.node-navigation-preview-note {
  margin: 10px 0 0;
  font-size: 12px;
  color: #94a3b8;
}

.document-context-meter {
  margin-top: 10px;
  padding: 10px 12px;
  border: 1px solid #e2e8f0;
  border-radius: 12px;
  background: linear-gradient(180deg, #ffffff 0%, #f8fafc 100%);
  box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.8);
}

.document-context-meter--comfort {
  border-color: #bbf7d0;
  background: linear-gradient(180deg, #ffffff 0%, #f0fdf4 100%);
}

.document-context-meter--warn {
  border-color: #fde68a;
  background: linear-gradient(180deg, #ffffff 0%, #fffbeb 100%);
}

.document-context-meter--split {
  border-color: #fdba74;
  background: linear-gradient(180deg, #ffffff 0%, #fff7ed 100%);
}

.document-context-meter--overflow {
  border-color: #fca5a5;
  background: linear-gradient(180deg, #ffffff 0%, #fef2f2 100%);
}

.document-context-meter-head {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 8px;
  margin-bottom: 8px;
}

.document-context-meter-actions {
  display: flex;
  align-items: center;
  justify-content: flex-end;
  gap: 6px;
  flex-shrink: 0;
  min-width: 0;
}

.document-context-meter-window-select {
  max-width: min(88px, 26vw);
  height: 24px;
  padding: 2px 22px 2px 8px;
  font-size: 10px;
  font-weight: 700;
  border-radius: 999px;
}

.document-context-meter-title {
  font-size: 11px;
  font-weight: 700;
  letter-spacing: 0.04em;
  text-transform: uppercase;
  color: #475569;
}

.document-context-meter-status {
  font-size: 10px;
  font-weight: 700;
  line-height: 1.2;
  padding: 2px 8px;
  border-radius: 999px;
  white-space: nowrap;
}

.document-context-meter--comfort .document-context-meter-status {
  color: #166534;
  background: #dcfce7;
}

.document-context-meter--warn .document-context-meter-status {
  color: #92400e;
  background: #fef3c7;
}

.document-context-meter--split .document-context-meter-status {
  color: #9a3412;
  background: #ffedd5;
}

.document-context-meter--overflow .document-context-meter-status {
  color: #991b1b;
  background: #fee2e2;
}

.document-context-meter-track {
  position: relative;
  height: 8px;
  border-radius: 999px;
  overflow: hidden;
  background: rgba(148, 163, 184, 0.22);
}

.document-context-meter-fill {
  height: 100%;
  border-radius: inherit;
  background: linear-gradient(90deg, #34d399 0%, #10b981 100%);
  transition: width 0.2s ease;
}

.document-context-meter--warn .document-context-meter-fill {
  background: linear-gradient(90deg, #fbbf24 0%, #f59e0b 100%);
}

.document-context-meter--split .document-context-meter-fill {
  background: linear-gradient(90deg, #fb923c 0%, #f97316 100%);
}

.document-context-meter--overflow .document-context-meter-fill {
  background: linear-gradient(90deg, #f87171 0%, #ef4444 100%);
}

.document-context-meter-stats {
  display: flex;
  flex-wrap: wrap;
  gap: 4px;
  margin-top: 8px;
  font-size: 11px;
  font-weight: 600;
  line-height: 1.35;
  color: #334155;
  font-variant-numeric: tabular-nums;
}

.document-context-meter-hint {
  margin: 8px 0 0;
  font-size: 11px;
  line-height: 1.45;
  color: #64748b;
}

.node-navigation-memory-body .document-context-meter,
.node-navigation-manifest .document-context-meter,
.node-overview-fold-body .document-context-meter {
  margin-top: 12px;
}

.node-navigation-memory-body .file-content-preview img,
.node-overview-content .file-content-preview img,
.editor-surface .file-content-preview img,
.editor-wysiwyg-wrap .toastui-editor-contents img {
  display: block;
  width: auto;
  max-width: clamp(200px, 48%, 480px);
  max-height: 360px;
  object-fit: contain;
  margin: 12px auto;
  padding: 10px;
  border: 1px solid #cbd5e1;
  border-radius: 12px;
  box-sizing: border-box;
  background: #f8fafc;
  box-shadow: 0 1px 2px rgba(15, 23, 42, 0.06);
  transition: max-width 0.2s ease, max-height 0.2s ease;
}

.node-navigation-memory-body .file-content-preview img,
.node-overview-content .file-content-preview img,
.editor-surface .file-content-preview img {
  cursor: zoom-in;
}

.node-navigation-memory-body .file-content-preview img.is-expanded,
.node-overview-content .file-content-preview img.is-expanded,
.editor-surface .file-content-preview img.is-expanded {
  max-width: 100%;
  max-height: none;
  cursor: zoom-in;
}

.markdown-preview-image-wrap {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 8px;
  margin: 12px auto;
  max-width: 100%;
}

.node-navigation-memory-body .file-content-preview .markdown-preview-image-wrap > img,
.node-overview-content .file-content-preview .markdown-preview-image-wrap > img,
.editor-surface .file-content-preview .markdown-preview-image-wrap > img {
  margin: 0;
}

.markdown-preview-image-actions {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 8px;
  flex-wrap: wrap;
}

.markdown-preview-image-counter {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-width: 44px;
  padding: 4px 10px;
  border-radius: 999px;
  background: rgba(15, 23, 42, 0.06);
  color: #64748b;
  font-size: 11px;
  font-weight: 600;
  font-variant-numeric: tabular-nums;
  letter-spacing: 0.02em;
  line-height: 1.3;
  user-select: none;
}

.markdown-preview-image-action-btn {
  margin: 0;
  padding: 4px 12px;
  border: 1px solid #cbd5e1;
  border-radius: 999px;
  background: #fff;
  color: #334155;
  font-size: 11px;
  font-weight: 600;
  letter-spacing: 0.02em;
  line-height: 1.3;
  cursor: pointer;
  transition:
    background 0.15s ease,
    border-color 0.15s ease,
    color 0.15s ease;
}

.markdown-preview-image-action-btn:hover {
  border-color: #94a3b8;
  background: #f8fafc;
  color: #0f172a;
}

.markdown-preview-image-action-btn:focus-visible {
  outline: 2px solid #94a3b8;
  outline-offset: 2px;
}

.node-navigation-memory-body .node-navigation-todo-content {
  margin: 0;
  padding: 0;
  border: 0;
  background: transparent;
  font-family: inherit;
  font-size: inherit;
  line-height: inherit;
  color: inherit;
}

.node-navigation-external-toc {
  display: flex;
  flex-direction: column;
  gap: 0;
}

.agent-select-wrap .agent-select {
  width: 100%;
  max-width: none;
  flex: 1 1 auto;
}

.node-workspace-domain-select:focus,
.node-navigation-elements-nav-view-select:focus,
.node-navigation-topic-overview-view-select:focus,
.node-navigation-entry-view-select:focus,
.node-settings-mode-select:focus,
.document-context-meter-window-select:focus,
.agent-select:focus,
.agent-view-select:focus {
  outline: none;
  border-color: var(--accent);
  box-shadow: 0 0 0 2px rgba(59, 130, 246, 0.15);
}

.node-settings-mode-select optgroup {
  font-size: 10px;
  font-weight: 700;
  letter-spacing: 0.04em;
  text-transform: uppercase;
  color: var(--muted);
}

.node-memory-mode-select,
.node-memory-entry-view-select {
  flex: 0 0 auto;
  max-width: min(240px, 42vw);
  padding: 5px 28px 5px 10px;
  border: 1px solid var(--border);
  border-radius: 8px;
  background: var(--panel);
  color: #1e293b;
  font-size: 11px;
  font-weight: 600;
  line-height: 1.35;
  cursor: pointer;
  appearance: none;
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 24 24' fill='none' stroke='%2364748b' stroke-width='2'%3E%3Cpath d='M6 9l6 6 6-6'/%3E%3C/svg%3E");
  background-repeat: no-repeat;
  background-position: right 8px center;
}

.node-memory-entry-view-select {
  max-width: min(140px, 30vw);
}

.node-memory-mode-select:focus,
.node-memory-entry-view-select:focus {
  outline: none;
  border-color: #dc2626;
  box-shadow: 0 0 0 2px rgba(220, 38, 38, 0.15);
}

.node-memory-mode-select optgroup {
  font-size: 10px;
  font-weight: 700;
  letter-spacing: 0.04em;
  text-transform: uppercase;
  color: var(--muted);
}

.node-overview.is-container-node {
  background: linear-gradient(180deg, #fffbeb 0%, #fef3c7 56px, var(--panel) 112px);
}

.doc-slab-path.is-node-settings .workspace-path-crumbs-block {
  border-bottom-color: #dbeafe;
}

.doc-slab-path.is-node-memory .workspace-path-crumbs-block {
  border-bottom-color: #fecaca;
}

.doc-slab-path.is-node-references .workspace-path-crumbs-block {
  border-bottom-color: #e9d5ff;
}

.doc-slab-path.is-node-artefacts .workspace-path-crumbs-block {
  border-bottom-color: #fde68a;
}

.doc-slab-path.is-node-media .workspace-path-crumbs-block {
  border-bottom-color: #a5f3fc;
}

.doc-slab-path.is-node-overview .workspace-path-crumbs-block {
  border-bottom-color: #bbf7d0;
}

.doc-slab-path.is-service-file {
  background: #fffbeb;
  flex-direction: row;
  flex-wrap: nowrap;
  align-items: center;
  gap: 10px;
  padding: 10px 16px 9px;
}

.doc-slab-path.is-service-file .workspace-path-crumbs-block {
  flex: 1 1 auto;
  min-width: 0;
  width: auto;
  max-width: 100%;
  overflow: hidden;
  margin: 0;
  padding: 10px 0;
  border-bottom: 0;
}

.doc-slab-path.is-service-file .workspace-path-toolbar-block {
  flex: 0 0 auto;
  width: auto;
  max-width: 100%;
  margin-left: auto;
  padding: 0;
}

.doc-slab-path.is-service-file .workspace-path-toolbar-block .doc-actions {
  margin-left: 0;
  flex: 0 0 auto;
}

.doc-slab-path.is-service-file .breadcrumbs {
  flex-wrap: nowrap;
  width: auto;
  max-width: 100%;
}

.doc-slab-path.is-service-file .workspace-links-menu-wrap,
.doc-slab-path.is-service-file .workspace-gdrive-sync-wrap,
.doc-slab-path.is-service-file .workspace-gdrive-sync-btn {
  display: none;
}

.doc-slab-path .title-fixed-value.breadcrumb-service-title {
  display: inline-flex;
  box-sizing: border-box;
  height: 28px;
  flex: 0 1 auto;
  align-items: center;
  gap: 6px;
  min-width: 0;
  max-width: 100%;
  margin: 0;
  padding: 0 10px;
  border: 1px solid var(--border);
  border-radius: 8px;
  background: #f8fafc;
  color: var(--text);
}

.doc-slab-path .breadcrumb-service-title .title-fixed-text {
  flex: 1;
  min-width: 0;
  font-size: 11px;
  font-weight: 600;
  line-height: 1.35;
  color: #1e293b;
  font-family: ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace;
}

.doc-slab-path .breadcrumb-service-title .title-fixed-lock {
  flex-shrink: 0;
  font-size: 12px;
  line-height: 1;
  opacity: 0.75;
}

.doc-slab-path .breadcrumbs {
  flex: 1 1 auto;
  min-width: 0;
  width: auto;
  max-width: 100%;
  flex-wrap: wrap;
  align-items: center;
  gap: 6px;
  overflow-x: auto;
  overflow-y: hidden;
  font-size: 11px;
  font-weight: 600;
  letter-spacing: 0.01em;
  color: #334155;
  scrollbar-width: thin;
}

.doc-slab-path .breadcrumbs.is-empty::before {
  content: "Выберите тему";
  display: block;
  width: 100%;
  font-size: 11px;
  font-weight: 700;
  letter-spacing: 0.05em;
  text-transform: uppercase;
  text-align: center;
  color: #334155;
}

.doc-slab-path .breadcrumb.is-pill {
  display: inline-flex;
  align-items: center;
  gap: 5px;
  max-width: 100%;
  padding: 5px 10px;
  border: 1px solid var(--border);
  border-radius: 8px;
  background: var(--panel);
  color: #1e293b;
  font-size: 11px;
  font-weight: 600;
  line-height: 1.35;
  box-sizing: border-box;
}

.doc-slab-path .breadcrumb.is-pill .breadcrumb-crumb-label {
  min-width: 0;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.breadcrumb-crumb-icon {
  display: inline-flex;
  align-items: center;
  flex-shrink: 0;
}

.breadcrumb-crumb-icon-glyph {
  width: 14px;
  height: 14px;
  flex: 0 0 14px;
  background-repeat: no-repeat;
  background-position: center center;
  background-size: 14px 14px;
}

.breadcrumb-crumb-icon-glyph--awn-root {
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%237c3aed' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M12 2 2 7l10 5 10-5-10-5z'/%3E%3Cpath d='M2 12l10 5 10-5'/%3E%3Cpath d='M2 17l10 5 10-5'/%3E%3C/svg%3E");
}

.breadcrumb-crumb-icon-glyph--record {
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23475569' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M14 2H6a2 2 0 0 0-2 2v16a2 2 0 0 0 2 2h12a2 2 0 0 0 2-2V8z'/%3E%3Cpath d='M14 2v6h6'/%3E%3C/svg%3E");
}

.breadcrumb-crumb-kind.menu-awn-databases-store-kind-wrap {
  gap: 1px;
}

.breadcrumb-crumb-kind .menu-awn-databases-store-kind {
  width: 12px;
  height: 12px;
  background-size: 12px 12px;
}

.breadcrumb-crumb-kind .menu-awn-databases-store-kind-letter {
  height: 10px;
  padding: 0 2px;
  font-size: 5.5px;
}

.breadcrumb-crumb-kind .menu-awn-databases-store-hierarchy-badge {
  width: 10px;
  height: 10px;
}

.breadcrumb-crumb-kind .menu-awn-databases-store-hierarchy-badge svg {
  width: 7px;
  height: 7px;
}

.doc-slab-path .breadcrumb.is-pill.is-awn-databases-root {
  border-color: #ddd6fe;
  background: #f5f3ff;
  color: #5b21b6;
}

.doc-slab-path .breadcrumb.is-pill.is-awn-databases-group {
  border-color: #bbf7d0;
  background: #f0fdf4;
  color: #047857;
}

.doc-slab-path .breadcrumb.is-pill.is-awn-databases-store,
.doc-slab-path .breadcrumb.is-pill.is-awn-databases-single {
  border-color: #ddd6fe;
  background: #faf5ff;
  color: #6d28d9;
}

.doc-slab-path .breadcrumb.is-pill.is-awn-databases-record {
  border-color: #cbd5e1;
  background: #f8fafc;
  color: #334155;
}

.doc-slab-path .breadcrumb.is-pill.is-area {
  border-color: #5eead4;
  background: #f0fdfa;
  color: #0f766e;
}

.doc-slab-path .breadcrumb.is-pill.is-topic {
  border-color: #93c5fd;
  background: #eff6ff;
  color: #1d4ed8;
}

.doc-slab-path .breadcrumb.is-pill.is-file {
  border-color: #cbd5e1;
  background: #f8fafc;
  color: #334155;
}

.doc-slab-path .breadcrumb.is-pill.is-link {
  cursor: pointer;
  transition: border-color 0.15s ease, background 0.15s ease, color 0.15s ease;
}

.doc-slab-path .breadcrumb.is-pill.is-link:hover,
.doc-slab-path .breadcrumb.is-pill.is-link:focus-visible {
  border-color: #93c5fd;
  background: #eff6ff;
  color: #1d4ed8;
  outline: none;
}

.doc-slab-path .breadcrumb.is-pill.is-folder-browse-folder.is-link:hover,
.doc-slab-path .breadcrumb.is-pill.is-folder-browse-folder.is-link:focus-visible {
  border-color: #cbd5e1;
  background: #f8fafc;
  color: #334155;
}

.doc-slab-path .breadcrumb.is-pill.is-folder-browse-file.is-muted,
.doc-slab-path .breadcrumb.is-pill.is-folder-browse-file.is-muted.current {
  border-color: #cbd5e1;
  background: #fff;
  color: #64748b;
  box-shadow: 0 1px 2px rgba(15, 23, 42, 0.04);
  font-weight: 600;
}

.doc-slab-path .breadcrumb.is-pill.is-folder-browse-folder.current {
  border-color: #cbd5e1;
  background: #fff;
  color: #0f172a;
}

.doc-slab-path .breadcrumb.is-pill.current {
  border-color: #64748b;
  background: #fff;
  color: #0f172a;
  box-shadow: 0 1px 2px rgba(15, 23, 42, 0.06);
}

.doc-slab-path .breadcrumb.is-pill.is-static.current.is-area {
  border-color: #14b8a6;
  background: #ccfbf1;
  color: #115e59;
}

.doc-slab-path .breadcrumb-sep {
  flex-shrink: 0;
  padding: 0 1px;
  opacity: 0.5;
  color: #94a3b8;
  font-weight: 600;
  line-height: 1;
}

.doc-slab-title {
  flex-shrink: 0;
  margin: 0 -16px;
  padding: 10px 16px;
  border: 0;
  border-bottom: 1px solid var(--border);
  background: var(--panel);
  box-sizing: border-box;
}

.doc-slab-title .title-row {
  display: flex;
  align-items: center;
  gap: 8px;
  min-width: 0;
  width: 100%;
}

.doc-slab-title .title-input {
  flex: 1;
  width: 100%;
  min-width: 0;
  font-size: 22px;
  font-weight: 600;
  padding: 8px 10px;
  border: 1px solid var(--border);
  border-radius: 8px;
  background: var(--panel);
}

.title-input:focus,
.file-content-input:focus {
  outline: none;
  border-color: #93c5fd;
  box-shadow: 0 0 0 3px rgba(59, 130, 246, 0.14);
}

.title-input:read-only,
.title-input:disabled,
.file-content-input:read-only {
  background: #f8fafc;
  color: var(--text);
  cursor: default;
}

.title-input:read-only:focus,
.title-input:disabled:focus,
.file-content-input:read-only:focus {
  border-color: var(--border);
  box-shadow: none;
}

.title-input::selection,
.file-content-input::selection {
  background: rgba(59, 130, 246, 0.22);
}

.doc-stack .editor-code-wrap:focus-within {
  box-shadow: inset 0 0 0 1px #93c5fd;
  border-radius: 0;
}

.doc-stack .editor-code-wrap:focus-within .editor-line-numbers {
  border-right-color: #bfdbfe;
}

.doc-slab-hint {
  flex-shrink: 0;
  margin: 0 -16px;
  padding: 10px 16px 12px;
  border: 0;
  border-bottom: 1px solid #fde68a;
  background: #fffbeb;
  box-sizing: border-box;
  max-height: 300px;
  overflow-y: auto;
  overflow-x: hidden;
}

.doc-slab-hint-title {
  margin: 0 0 4px;
  font-size: 12px;
  font-weight: 700;
  letter-spacing: 0.04em;
  text-transform: uppercase;
  color: #92400e;
}

.doc-slab-hint-text {
  margin: 0;
  font-size: 13px;
  line-height: 1.55;
  color: #78350f;
}

.doc-slab-hint-text code {
  font-family: ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, monospace;
  font-size: 12px;
  padding: 1px 5px;
  border-radius: 4px;
  background: rgba(254, 243, 199, 0.85);
  color: #92400e;
}

.doc-slab-hint-example {
  margin: 8px 0 0;
  padding: 8px 10px;
  border-radius: 6px;
  border: 1px solid rgba(251, 191, 36, 0.35);
  background: rgba(254, 243, 199, 0.55);
  font-family: ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", monospace;
  font-size: 11px;
  line-height: 1.45;
  color: #78350f;
  white-space: pre-wrap;
  overflow-x: auto;
}

.doc-slab-hint-example.hidden {
  display: none;
}

.doc-slab-hint-action {
  margin-top: 8px;
  padding: 4px 10px;
  border: 1px solid rgba(251, 191, 36, 0.55);
  border-radius: 6px;
  background: #fff;
  font-size: 12px;
  font-weight: 600;
  color: #92400e;
  cursor: pointer;
}

.doc-slab-hint-action:hover {
  background: #fef3c7;
}

.doc-slab-hint-action.hidden {
  display: none;
}

.doc-slab-toolbar {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
}

.doc-slab-main .editor-surface {
  flex: 1;
  min-height: 0;
  display: flex;
  flex-direction: column;
}

/* Просмотр / исходник (без editor-autoheight): title-bar и custom props фиксированы, прокрутка только в editor-surface. */
.app:not(.editor-autoheight) .doc-slab-content .doc-slab-main:has(> .editor-surface) {
  overflow: hidden;
  min-height: 0;
}

.app:not(.editor-autoheight) .doc-slab-main:has(> .editor-surface) > .editor-title-bar,
.app:not(.editor-autoheight) .doc-slab-main:has(> .editor-surface) > .editor-custom-props-bar:not(.hidden),
.app:not(.editor-autoheight) .doc-slab-main:has(> .editor-surface) > .live-file-update-banner:not(.hidden),
.app:not(.editor-autoheight) .doc-slab-main:has(> .editor-surface) > .live-file-diff-panel:not(.hidden),
.app:not(.editor-autoheight) .doc-slab-main:has(> .editor-surface) > .preview-upload:not(.hidden),
.app:not(.editor-autoheight) .doc-slab-main:has(> .editor-surface) > .external-file-comments:not(.hidden),
.app:not(.editor-autoheight) .doc-slab-main:has(> .editor-surface) > .media-file-comments:not(.hidden) {
  flex-shrink: 0;
}

.app:not(.editor-autoheight) .doc-slab-main:has(> .editor-surface) > .editor-surface {
  flex: 1 1 0;
  min-height: 0;
  overflow: hidden;
}

.app:not(.editor-autoheight) .doc-slab-main:has(> .editor-surface) .editor-surface > .workspace-scroll-host {
  display: flex;
  flex-direction: column;
  flex: 1 1 0;
  min-height: 0;
  overflow: hidden;
}

.app:not(.editor-autoheight) .doc-slab-main:has(> .editor-surface) .editor-surface .file-content-preview,
.app:not(.editor-autoheight) .doc-slab-main:has(> .editor-surface) .editor-surface .editor-code-wrap {
  flex: 1 1 0;
  min-height: 0;
  height: auto;
  max-height: 100%;
  overflow: hidden;
}

.app:not(.editor-autoheight) .doc-slab-main:has(> .editor-surface) .editor-surface .file-content-preview {
  overflow-y: auto;
  overflow-x: auto;
}

.app:not(.editor-autoheight) .doc-slab-main:has(> .editor-surface) .editor-surface .editor-code-wrap .file-content-input {
  height: 100%;
  min-height: 0;
  overflow-y: auto;
  overflow-x: auto;
  resize: none;
}

.editor-title-bar {
  flex: 0 0 auto;
  margin: 0;
  padding: 0;
  border-bottom: 1px solid rgba(226, 232, 240, 0.95);
  background: linear-gradient(180deg, rgba(248, 250, 252, 0.98), rgba(255, 255, 255, 0.94));
  box-sizing: border-box;
}

.editor-title-bar.hidden {
  display: none;
}

.editor-title-fields {
  display: flex;
  flex-direction: column;
  align-items: stretch;
  gap: 0;
  min-width: 0;
}

.editor-title-field {
  display: grid;
  grid-template-columns: minmax(88px, 34%) minmax(0, 1fr);
  align-items: center;
  gap: 10px;
  width: 100%;
  min-width: 0;
  margin: 0;
  padding: 7px 14px;
  border: 0;
  border-bottom: 1px solid rgba(226, 232, 240, 0.92);
  background: transparent;
  box-sizing: border-box;
}

.editor-title-field--name,
.editor-title-field--description {
  grid-template-columns: minmax(0, 1fr);
  gap: 0;
}

.editor-title-field--name {
  padding: 12px 14px 10px;
}

.editor-title-field--name:has(+ .editor-title-field--description:not(.hidden)) {
  padding-bottom: 8px;
}

.editor-title-field--name .editor-title-field-value {
  display: flex;
  flex-direction: column;
  gap: 6px;
}

.editor-title-bar .title-slug-row {
  display: flex;
  flex-direction: column;
  gap: 6px;
  margin: 0;
  padding: 0;
  border: 0;
  background: transparent;
}

.editor-title-bar .title-id-row .slug-input--readonly {
  cursor: default;
  color: #475569;
  background: #f1f5f9;
}

.editor-title-field--description {
  align-items: stretch;
  padding: 6px 14px 12px;
}

.editor-title-field--description .editor-title-field-value {
  margin: 0;
  padding: 0;
}

.editor-title-field:last-child {
  border-bottom: 0;
}

.editor-title-field-label {
  display: inline-flex;
  align-items: center;
  gap: 4px;
  min-width: 0;
  font-size: 11px;
  font-weight: 600;
  line-height: 1.3;
  color: #64748b;
}

.editor-title-field-label.doc-aside-title-label {
  display: inline-flex;
  margin: 0;
  font-size: 10px;
  font-weight: 700;
  letter-spacing: 0.04em;
  text-transform: uppercase;
}

.editor-title-field-label.slug-field-label {
  display: inline-flex;
  margin: 0;
  align-self: start;
  padding-top: 7px;
}

.editor-title-field-value {
  min-width: 0;
  width: 100%;
}

.editor-title-field-hint,
.editor-title-bar .slug-field-hint {
  margin: 6px 0 0;
  font-size: 10px;
  line-height: 1.4;
  color: #94a3b8;
}

.editor-title-bar .title-row,
.editor-title-bar .slug-input-row {
  min-width: 0;
  width: 100%;
}

.editor-title-bar .title-input,
.editor-title-bar .slug-input {
  width: 100%;
  min-width: 0;
  margin: 0;
  padding: 6px 10px;
  border: 1px solid rgba(148, 163, 184, 0.42);
  border-radius: 6px;
  background: #fff;
  font-size: 12px;
  line-height: 1.35;
  color: #0f172a;
  box-shadow: 0 1px 0 rgba(255, 255, 255, 0.85) inset;
}

.editor-title-bar .title-input {
  min-height: 48px;
  padding: 12px 14px;
  border-radius: 8px;
  font-size: 18px;
  font-weight: 600;
  line-height: 1.35;
}

.editor-title-bar .slug-input {
  background: #f8fafc;
  font-family: ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, monospace;
  padding-right: 34px;
}

.editor-title-bar .slug-input-row--badged {
  display: flex;
  align-items: stretch;
}

.editor-title-bar .slug-input-badge {
  display: inline-flex;
  align-items: center;
  flex: 0 0 auto;
  padding: 0 8px;
  min-height: 30px;
  border: 1px solid rgba(148, 163, 184, 0.42);
  border-right: 0;
  border-radius: 6px 0 0 6px;
  background: #eef2f7;
  font-size: 11px;
  font-weight: 600;
  font-family: ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, monospace;
  color: #64748b;
  line-height: 1.35;
  user-select: none;
}

.editor-title-bar .slug-input-row--badged .slug-input--badged {
  flex: 1 1 auto;
  width: auto;
  min-width: 0;
  border-radius: 0 6px 6px 0;
  padding: 5px 34px 5px 8px;
}

.editor-title-bar .slug-input-row--badged:focus-within .slug-input-badge {
  border-color: #60a5fa;
  background: #fff;
}

.editor-title-bar .title-description-input {
  display: block;
  width: 100%;
  min-width: 0;
  margin: 0;
  padding: 6px 10px;
  border: 1px solid rgba(148, 163, 184, 0.42);
  border-radius: 6px;
  background: #fff;
  font-size: 12px;
  line-height: 1.35;
  color: #334155;
  resize: vertical;
  min-height: 42px;
  box-shadow: 0 1px 0 rgba(255, 255, 255, 0.85) inset;
}

.editor-title-bar .title-description-input:focus {
  border-color: #60a5fa;
  box-shadow: 0 0 0 3px rgba(59, 130, 246, 0.14);
  outline: none;
}

.editor-title-bar .title-description-input:disabled {
  color: #64748b;
  background: #f8fafc;
  cursor: not-allowed;
}

.editor-title-bar .title-input:focus,
.editor-title-bar .slug-input-row:focus-within .slug-input {
  border-color: #60a5fa;
  box-shadow: 0 0 0 3px rgba(59, 130, 246, 0.14);
}

.editor-title-bar .title-input:disabled,
.editor-title-bar .slug-input:disabled {
  color: #64748b;
  background: #f8fafc;
  cursor: not-allowed;
}

.doc-props-aside .props-form-group--orphan .props-form-row.is-schema-undefined,
.doc-props-aside .props-form-group--orphan .props-preview-field.is-schema-undefined {
  background: linear-gradient(180deg, rgba(254, 242, 242, 0.72), rgba(255, 251, 251, 0.45));
}

.doc-props-aside .props-form-group--orphan > .props-form-group-toggle .props-form-group-title {
  color: #b91c1c;
}

.doc-props-aside .props-form-group--orphan .props-form-row.is-schema-undefined .props-form-field-key-id,
.doc-props-aside .props-form-group--orphan .props-preview-field.is-schema-undefined .props-form-field-key-id {
  color: #b91c1c;
}

.editor-custom-props-bar {
  flex: 0 0 auto;
  margin: 0;
  padding: 0;
  border-bottom: 1px solid rgba(226, 232, 240, 0.95);
  background: #fff;
  box-sizing: border-box;
}

.editor-custom-props-root-toggle {
  display: flex;
  align-items: center;
  gap: 8px;
  width: 100%;
  margin: 0;
  padding: 10px 14px;
  border: 0;
  border-bottom: 1px solid rgba(148, 163, 184, 0.32);
  background: linear-gradient(180deg, #eef2ff 0%, #f8fafc 100%);
  cursor: pointer;
  text-align: left;
  font: inherit;
  color: #334155;
}

.editor-custom-props-root-toggle:hover {
  background: linear-gradient(180deg, #e0e7ff 0%, #f1f5f9 100%);
}

.editor-custom-props-root-toggle-label {
  flex: 1 1 auto;
  min-width: 0;
  font-size: 11px;
  font-weight: 700;
  letter-spacing: 0.05em;
  text-transform: uppercase;
  color: #4338ca;
}

.editor-custom-props-root-toggle .props-form-group-count {
  flex: 0 0 auto;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-width: 20px;
  height: 20px;
  padding: 0 6px;
  border-radius: 999px;
  font-size: 9px;
  font-weight: 700;
  line-height: 1;
  color: #64748b;
  background: rgba(148, 163, 184, 0.14);
  border: 0;
  box-sizing: border-box;
}

.editor-custom-props-bulk-toggle {
  flex: 0 0 auto;
  margin-left: auto;
  padding: 4px 9px;
  border: 1px solid rgba(148, 163, 184, 0.35);
  border-radius: 6px;
  background: #fff;
  font-size: 10px;
  font-weight: 600;
  line-height: 1.2;
  color: #64748b;
  cursor: pointer;
  white-space: nowrap;
}

.editor-custom-props-bulk-toggle:hover {
  color: #334155;
  border-color: rgba(99, 102, 241, 0.35);
  background: rgba(248, 250, 252, 0.95);
}

.editor-custom-props-bulk-toggle.hidden {
  display: none;
}

.editor-custom-props-bar.is-root-collapsed > .editor-custom-props-fields {
  display: none;
}

.editor-custom-props-bar.is-root-collapsed > .editor-custom-props-root-toggle {
  border-bottom: 0;
}

.editor-custom-props-group {
  display: flex;
  flex-direction: column;
  min-width: 0;
}

.editor-custom-props-group-toggle {
  display: flex;
  align-items: center;
  gap: 8px;
  width: 100%;
  margin: 0;
  padding: 8px 14px;
  border: 0;
  border-top: 1px solid rgba(148, 163, 184, 0.28);
  border-bottom: 1px solid rgba(226, 232, 240, 0.95);
  background: #f8fafc;
  cursor: pointer;
  text-align: left;
  font: inherit;
  color: #475569;
}

.editor-custom-props-group-toggle:hover {
  background: #f1f5f9;
}

.editor-custom-props-group.is-collapsed > .editor-custom-props-group-body {
  display: none;
}

.editor-custom-props-group-body {
  display: flex;
  flex-direction: column;
  min-width: 0;
  background: #fff;
}

.editor-custom-props-group-toggle .editor-custom-props-group-header-label {
  flex: 1 1 auto;
  min-width: 0;
  padding: 0;
  border: 0;
  background: none;
  font-size: 10px;
  font-weight: 700;
  letter-spacing: 0.06em;
  text-transform: uppercase;
  line-height: 1.2;
  color: #64748b;
}

.editor-custom-props-group-toggle .props-form-group-count {
  flex: 0 0 auto;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-width: 18px;
  height: 18px;
  padding: 0 5px;
  border-radius: 999px;
  font-size: 9px;
  font-weight: 700;
  line-height: 1;
  color: #64748b;
  background: rgba(148, 163, 184, 0.14);
  border: 0;
  box-sizing: border-box;
}

.editor-custom-props-fields,
.editor-custom-props-fields.props-form-fields,
.editor-custom-props-fields.props-form-fields.is-readonly {
  display: flex;
  flex-direction: column;
  align-items: stretch;
  gap: 0;
  min-width: 0;
}

.editor-custom-props-group-header {
  display: flex;
  align-items: center;
  gap: 10px;
  flex: 0 0 auto;
  margin: 0;
  padding: 10px 14px;
  border-top: 1px solid rgba(148, 163, 184, 0.38);
  border-bottom: 1px solid rgba(148, 163, 184, 0.24);
  background: linear-gradient(180deg, rgba(238, 242, 255, 0.88), rgba(248, 250, 252, 0.72));
  box-shadow:
    inset 4px 0 0 #6366f1,
    inset 0 1px 0 rgba(255, 255, 255, 0.85);
  font-size: 10px;
  font-weight: 800;
  letter-spacing: 0.08em;
  text-transform: uppercase;
  color: #4338ca;
}

.editor-custom-props-group-header::before,
.editor-custom-props-group-header::after {
  content: "";
  flex: 1 1 auto;
  height: 1px;
  background: linear-gradient(90deg, transparent, rgba(99, 102, 241, 0.35));
}

.editor-custom-props-group-header::after {
  background: linear-gradient(90deg, rgba(99, 102, 241, 0.35), transparent);
}

.editor-custom-props-group-header-label {
  flex: 0 0 auto;
  padding: 2px 8px;
  border-radius: 999px;
  background: rgba(255, 255, 255, 0.82);
  border: 1px solid rgba(99, 102, 241, 0.22);
  line-height: 1.2;
}

.editor-custom-props-group-header:first-child {
  border-top: 0;
  padding-top: 8px;
}

.editor-custom-props-fields .props-form-row.editor-custom-props-field,
.editor-custom-props-fields .props-form-row.props-form-field--compact.editor-custom-props-field {
  display: grid;
  grid-template-columns: minmax(120px, 38%) minmax(0, 1fr);
  align-items: start;
  gap: 10px 12px;
  width: 100%;
  min-width: 0;
  margin: 0;
  padding: 8px 14px;
  border: 0;
  border-radius: 0;
  border-bottom: 1px solid rgba(226, 232, 240, 0.92);
  background: transparent;
  box-sizing: border-box;
  font-size: 13px;
  line-height: 1.35;
  color: inherit;
}

.editor-custom-props-fields .props-form-field-head {
  min-width: 0;
  max-width: 100%;
  overflow: hidden;
}

.editor-custom-props-fields .props-form-field-label--with-key {
  display: flex;
  flex-wrap: wrap;
  align-items: baseline;
  gap: 4px 6px;
  min-width: 0;
  max-width: 100%;
  white-space: normal;
  overflow: hidden;
}

.editor-custom-props-fields .props-form-value-wrap,
.editor-custom-props-fields .props-form-value-wrap--boolean {
  justify-self: stretch;
  align-self: center;
  min-width: 0;
}

.editor-custom-props-fields .props-form-value-wrap--boolean .props-form-bool-label {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  margin: 0;
  min-height: 28px;
}

.editor-custom-props-fields .editor-custom-props-preview-field {
  display: grid;
  grid-template-columns: minmax(120px, 38%) minmax(0, 1fr);
  align-items: center;
  gap: 10px 12px;
  width: 100%;
  min-width: 0;
  margin: 0;
  padding: 8px 14px;
  border: 0;
  border-radius: 0;
  border-bottom: 1px solid rgba(226, 232, 240, 0.92);
  background: transparent;
  box-sizing: border-box;
  font-size: 13px;
  line-height: 1.35;
  color: inherit;
}

.editor-custom-props-fields .props-form-row.editor-custom-props-field:last-child,
.editor-custom-props-fields .editor-custom-props-preview-field:last-child {
  border-bottom: 0;
}

.editor-custom-props-fields .props-form-row.editor-custom-props-field.is-schema-undefined,
.editor-custom-props-fields .editor-custom-props-preview-field.is-schema-undefined {
  background: linear-gradient(180deg, rgba(254, 242, 242, 0.72), rgba(255, 251, 251, 0.45));
}

.editor-custom-props-fields .props-form-field--wide {
  display: grid;
  grid-template-columns: minmax(0, 1fr);
  align-items: stretch;
  gap: 6px;
  width: 100%;
  min-width: 0;
  padding: 8px 14px;
  border: 0;
  border-top: 1px solid rgba(226, 232, 240, 0.92);
  background: transparent;
}

.editor-custom-props-fields .props-form-field-head {
  min-width: 0;
  width: 100%;
}

.editor-custom-props-fields .props-form-field-label,
.editor-custom-props-fields .props-preview-label {
  display: inline-flex;
  align-items: center;
  gap: 4px;
  font-size: 11px;
  font-weight: 600;
  line-height: 1.25;
  color: #64748b;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
}

.editor-custom-props-fields .props-form-field-label .field-label-icon,
.editor-custom-props-fields .props-preview-label .field-label-icon {
  flex-shrink: 0;
  font-size: 12px;
  line-height: 1;
}

.editor-custom-props-fields .props-form-field-label--with-key .props-form-field-key-id,
.editor-custom-props-fields .props-preview-label--with-key .props-form-field-key-id {
  font-family: ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", monospace;
  font-size: 11px;
  font-weight: 700;
  color: #334155;
}

.editor-custom-props-fields .props-form-field-label--with-key .props-form-field-key-label,
.editor-custom-props-fields .props-preview-label--with-key .props-form-field-key-label {
  font-family: inherit;
  font-size: 11px;
  font-weight: 500;
  color: #64748b;
}

.editor-custom-props-fields .props-form-value-wrap {
  width: 100%;
  min-width: 0;
  max-width: 100%;
}

.editor-custom-props-fields .props-form-value,
.editor-custom-props-fields .props-form-key-input,
.editor-custom-props-fields select.props-form-value,
.editor-custom-props-fields textarea.props-form-value {
  width: 100%;
  max-width: 100%;
  min-height: 28px;
  padding: 4px 8px;
  font-size: 12px;
  line-height: 1.3;
  border: 1px solid rgba(148, 163, 184, 0.32);
  border-radius: 7px;
  background: #fff;
  box-shadow: 0 1px 0 rgba(255, 255, 255, 0.85) inset;
  box-sizing: border-box;
}

.editor-custom-props-fields input[type="date"].props-form-value,
.editor-custom-props-fields input[type="datetime-local"].props-form-value {
  width: 100%;
  max-width: 220px;
}

.editor-custom-props-fields select.props-form-value {
  width: 100%;
  max-width: 280px;
}

.editor-custom-props-fields .props-form-value-wrap--boolean .props-form-bool-label {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  margin: 0;
  min-height: 28px;
  font-size: 12px;
  font-weight: 500;
  color: #334155;
  cursor: pointer;
}

.editor-custom-props-fields .props-form-value--bool {
  width: 15px;
  height: 15px;
  margin: 0;
  accent-color: #3b82f6;
}

.editor-custom-props-fields .props-form-value-wrap--radio .props-form-radio-list,
.editor-custom-props-fields .props-form-value-wrap--enum-checkbox .props-form-enum-checkbox-list {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 6px 12px;
  width: 100%;
}

.editor-custom-props-fields .props-form-radio-label,
.editor-custom-props-fields .props-form-enum-checkbox-label {
  display: inline-flex;
  align-items: center;
  gap: 6px;
  margin: 0;
  padding: 0;
  font-size: 12px;
  font-weight: 500;
  line-height: 1.25;
  color: #334155;
  white-space: nowrap;
  cursor: pointer;
}

.editor-custom-props-fields .props-form-radio-label input,
.editor-custom-props-fields .props-form-enum-checkbox-label input {
  width: 14px;
  height: 14px;
  margin: 0;
  accent-color: #3b82f6;
}

.editor-custom-props-preview {
  display: contents;
}

.editor-custom-props-preview-field .props-preview-value {
  font-size: 12px;
  font-weight: 500;
  line-height: 1.35;
  color: #0f172a;
  word-break: break-word;
}

.editor-custom-props-preview-field .props-preview-value.is-empty {
  color: #94a3b8;
  font-style: italic;
  font-weight: 400;
}

/* --- Центральная панель: без цветных подложек --- */
.editor-custom-props-fields .props-form-row.editor-custom-props-field,
.editor-custom-props-fields .editor-custom-props-preview-field {
  position: relative;
}

.editor-custom-props-fields .props-form-row.editor-custom-props-field:hover,
.editor-custom-props-fields .editor-custom-props-preview-field:hover {
  background: rgba(248, 250, 252, 0.45);
}

.editor-custom-props-fields .editor-custom-props-field[class*="editor-custom-props-field--widget-"],
.editor-custom-props-fields .editor-custom-props-preview-field[class*="editor-custom-props-field--widget-"] {
  border-left-color: transparent !important;
  background: transparent !important;
}

.editor-custom-props-fields .editor-custom-props-field[class*="editor-custom-props-field--widget-"] .props-form-value,
.editor-custom-props-fields .editor-custom-props-field[class*="editor-custom-props-field--widget-"] textarea.props-form-value,
.editor-custom-props-fields .editor-custom-props-field[class*="editor-custom-props-field--widget-"] select.props-form-value {
  background: #fff !important;
  border-color: rgba(148, 163, 184, 0.32) !important;
}

.editor-custom-props-fields .props-form-value-wrap[data-widget]::before {
  content: attr(data-widget);
  display: none;
}

/* Текст / строка */
.editor-custom-props-fields .editor-custom-props-field--widget-text,
.editor-custom-props-fields .editor-custom-props-field--widget-email,
.editor-custom-props-fields .editor-custom-props-field--widget-slug {
  border-left-color: #94a3b8;
  background: linear-gradient(90deg, rgba(241, 245, 249, 0.55), transparent 42%);
}

.editor-custom-props-fields .editor-custom-props-field--widget-text .props-form-value,
.editor-custom-props-fields .editor-custom-props-field--widget-email .props-form-value,
.editor-custom-props-fields .editor-custom-props-field--widget-slug .props-form-value {
  border-color: rgba(100, 116, 139, 0.28);
  background: #fff;
}

.editor-custom-props-fields .editor-custom-props-field--widget-slug .props-form-value--slug {
  font-family: ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", monospace;
  letter-spacing: 0.01em;
}

/* Пароль */
.editor-custom-props-fields .editor-custom-props-field--widget-password {
  border-left-color: #f59e0b;
  background: linear-gradient(90deg, rgba(255, 251, 235, 0.72), transparent 42%);
}

.editor-custom-props-fields .props-form-value-wrap--password .props-form-password-input-row {
  display: flex;
  align-items: center;
  gap: 6px;
  width: 100%;
  min-width: 0;
}

.editor-custom-props-fields .props-form-value-wrap--password .props-form-value--password {
  flex: 1 1 auto;
  min-width: 0;
  font-family: ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", monospace;
  letter-spacing: 0.08em;
  border-color: rgba(245, 158, 11, 0.35);
  background: #fffbeb;
}

.editor-custom-props-fields .props-form-password-toggle {
  flex: 0 0 auto;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 28px;
  height: 28px;
  padding: 0;
  border: 1px solid rgba(245, 158, 11, 0.35);
  border-radius: 7px;
  background: #fff;
  color: #b45309;
  cursor: pointer;
}

.editor-custom-props-fields .props-form-password-toggle:not(:disabled):hover,
.editor-custom-props-fields .props-form-password-toggle:not(:disabled):focus-visible {
  border-color: rgba(245, 158, 11, 0.55);
  background: rgba(255, 251, 235, 0.9);
  outline: none;
}

.editor-custom-props-fields .props-form-password-toggle.is-visible {
  color: #d97706;
  background: rgba(254, 243, 199, 0.85);
}

.editor-custom-props-fields .props-form-password-toggle-icon {
  width: 14px;
  height: 14px;
  display: block;
}

.props-form-value-wrap--secret .props-form-password-input-row,
.props-form-value-wrap--password .props-form-password-input-row {
  display: flex;
  align-items: center;
  gap: 6px;
  width: 100%;
  min-width: 0;
}

.props-form-value-wrap--secret .props-form-value--secret,
.editor-custom-props-fields .props-form-value-wrap--password .props-form-value--password {
  flex: 1 1 auto;
  min-width: 0;
  font-family: ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", monospace;
  letter-spacing: 0.08em;
  border-color: rgba(245, 158, 11, 0.35);
  background: #fffbeb;
}

.props-form-value-wrap--code .props-form-value--code,
.props-form-value-wrap[data-widget="json"] .props-form-value--code,
.props-form-value-wrap[data-widget="object"] .props-form-value--code,
.props-form-value-wrap[data-widget="repeater"] .props-form-value--code {
  font-family: ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", monospace;
  font-size: 12px;
  line-height: 1.45;
  min-height: 7em;
  resize: vertical;
  tab-size: 2;
  border-color: rgba(59, 130, 246, 0.28);
  background: #f8fafc;
}

.props-form-value-wrap--repeater .props-form-repeater {
  display: flex;
  flex-direction: column;
  gap: 0.65rem;
  width: 100%;
}

.props-form-repeater-items {
  display: flex;
  flex-direction: column;
  gap: 0.65rem;
}

.props-form-repeater-item {
  border: 1px solid rgba(148, 163, 184, 0.35);
  border-radius: 10px;
  background: #f8fafc;
  padding: 0.55rem 0.65rem 0.7rem;
}

.props-form-repeater-item-head {
  display: flex;
  align-items: center;
  justify-content: flex-end;
  gap: 0.5rem;
  margin-bottom: 0.45rem;
}

.props-form-repeater-marker {
  font-family: ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", monospace;
  font-size: 11px;
  color: #475569;
  background: #fff;
  border: 1px solid rgba(148, 163, 184, 0.35);
  border-radius: 6px;
  padding: 0.1rem 0.4rem;
}

.props-form-repeater-remove {
  border: none;
  background: transparent;
  color: #94a3b8;
  font-size: 18px;
  line-height: 1;
  cursor: pointer;
  padding: 0 0.2rem;
}

.props-form-repeater-remove:hover:not(:disabled) {
  color: #ef4444;
}

.props-form-repeater-item-fields {
  display: grid;
  gap: 0.45rem;
}

.props-form-repeater-subfield {
  display: grid;
  gap: 0.2rem;
}

.props-form-repeater-subfield-label {
  font-size: 11px;
  font-weight: 600;
  color: #64748b;
  text-transform: uppercase;
  letter-spacing: 0.04em;
}

.props-form-repeater-subfield-value .props-form-value,
.props-form-repeater-subfield-value textarea.props-form-value {
  width: 100%;
}

.props-form-repeater-subfield-value textarea.props-form-value--textarea {
  min-height: 4.5rem;
  resize: vertical;
  line-height: 1.45;
  font-size: 12px;
  box-sizing: border-box;
}

.props-form-repeater-subfield-value textarea.props-form-value--textarea:read-only {
  color: var(--text, #0f172a);
  opacity: 1;
  -webkit-text-fill-color: var(--text, #0f172a);
}

.props-form-field--object-group {
  flex-direction: column;
  align-items: stretch;
}

.props-form-field--object-group > .props-form-value-wrap--object-group {
  width: 100%;
}

.props-form-repeater-add {
  align-self: flex-start;
  border: 1px dashed rgba(59, 130, 246, 0.45);
  background: #eff6ff;
  color: #1d4ed8;
  border-radius: 8px;
  padding: 0.35rem 0.7rem;
  font-size: 12px;
  cursor: pointer;
}

.props-form-repeater-add:hover:not(:disabled) {
  background: #dbeafe;
}

.node-config-field-row.is-tall .props-form-value-wrap--repeater {
  min-width: 0;
}

.props-form-value--duration {
  font-variant-numeric: tabular-nums;
}

.props-form-coordinates-row {
  display: flex;
  align-items: center;
  gap: 0.35rem;
  width: 100%;
}

.props-form-value-wrap--coordinates .props-form-value--coordinates-lat,
.props-form-value-wrap--coordinates .props-form-value--coordinates-lng {
  flex: 1 1 0;
  min-width: 0;
  font-variant-numeric: tabular-nums;
}

.props-form-coordinates-open-btn {
  flex: 0 0 auto;
}

/* Многострочный текст */
.editor-custom-props-fields .editor-custom-props-field--widget-textarea {
  border-left-color: #8b5cf6;
  background: linear-gradient(90deg, rgba(245, 243, 255, 0.72), transparent 42%);
}

.editor-custom-props-fields .editor-custom-props-field--widget-textarea textarea.props-form-value {
  min-height: 64px;
  border-color: rgba(139, 92, 246, 0.28);
  background: #faf5ff;
  resize: vertical;
}

/* Числа */
.editor-custom-props-fields .editor-custom-props-field--widget-number {
  border-left-color: #f97316;
  background: linear-gradient(90deg, rgba(255, 247, 237, 0.72), transparent 42%);
}

.editor-custom-props-fields .editor-custom-props-field--widget-number .props-form-value {
  max-width: 180px;
  font-variant-numeric: tabular-nums;
  border-color: rgba(249, 115, 22, 0.3);
  background: #fff7ed;
}

/* Дата / время */
.editor-custom-props-fields .editor-custom-props-field--widget-date,
.editor-custom-props-fields .editor-custom-props-field--widget-datetime {
  border-left-color: #14b8a6;
  background: linear-gradient(90deg, rgba(240, 253, 250, 0.72), transparent 42%);
}

.editor-custom-props-fields .editor-custom-props-field--widget-date .props-form-value,
.editor-custom-props-fields .editor-custom-props-field--widget-datetime .props-form-value {
  border-color: rgba(20, 184, 166, 0.32);
  background: #f0fdfa;
}

/* Да / нет */
.editor-custom-props-fields .editor-custom-props-field--widget-boolean {
  border-left-color: #22c55e;
  background: linear-gradient(90deg, rgba(240, 253, 244, 0.72), transparent 42%);
}

.editor-custom-props-fields .editor-custom-props-field--widget-boolean .props-form-value-wrap--boolean {
  padding: 2px 10px 2px 8px;
  border: 1px solid rgba(34, 197, 94, 0.28);
  border-radius: 999px;
  background: #f0fdf4;
}

.editor-custom-props-fields .editor-custom-props-field--widget-boolean .props-form-bool-label {
  color: #166534;
}

/* URL / ссылка / путь */
.editor-custom-props-fields .editor-custom-props-field--widget-url,
.editor-custom-props-fields .editor-custom-props-field--widget-link,
.editor-custom-props-fields .editor-custom-props-field--widget-path {
  border-left-color: #3b82f6;
  background: linear-gradient(90deg, rgba(239, 246, 255, 0.72), transparent 42%);
}

.editor-custom-props-fields .editor-custom-props-field--widget-url .props-form-value,
.editor-custom-props-fields .editor-custom-props-field--widget-link .props-form-value,
.editor-custom-props-fields .editor-custom-props-field--widget-path .props-form-value {
  border-color: rgba(59, 130, 246, 0.28);
  background: #eff6ff;
}

.editor-custom-props-fields .editor-custom-props-field--widget-url .props-form-url-input-row {
  display: flex;
  align-items: center;
  gap: 6px;
  width: 100%;
  min-width: 0;
}

.editor-custom-props-fields .editor-custom-props-field--widget-url .props-form-url-input-row .props-form-value {
  flex: 1 1 auto;
  min-width: 0;
}

.editor-custom-props-fields .editor-custom-props-field--widget-url .props-form-url-open-btn {
  flex: 0 0 auto;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 28px;
  height: 28px;
  padding: 0;
  border: 1px solid rgba(59, 130, 246, 0.28);
  border-radius: 7px;
  background: #fff;
  color: #2563eb;
  cursor: pointer;
}

.editor-custom-props-fields .editor-custom-props-field--widget-url .props-form-url-open-btn:not(:disabled):hover {
  background: rgba(239, 246, 255, 0.95);
  border-color: rgba(59, 130, 246, 0.45);
}

.editor-custom-props-fields .editor-custom-props-field--widget-url .props-form-url-open-icon {
  width: 14px;
  height: 14px;
  display: block;
}

/* Цвет */
.editor-custom-props-fields .editor-custom-props-field--widget-color {
  border-left-color: #ec4899;
  background: linear-gradient(90deg, rgba(253, 242, 248, 0.72), transparent 42%);
}

.editor-custom-props-fields .editor-custom-props-field--widget-color .props-form-value {
  max-width: 160px;
  min-height: 32px;
  padding: 2px 4px;
  border-color: rgba(236, 72, 153, 0.28);
  background: #fff;
}

/* Выбор: select / radio / checkbox */
.editor-custom-props-fields .editor-custom-props-field--widget-select,
.editor-custom-props-fields .editor-custom-props-field--widget-radio,
.editor-custom-props-fields .editor-custom-props-field--widget-enum-checkbox,
.editor-custom-props-fields .editor-custom-props-field--widget-select-multiple {
  border-left-color: #6366f1;
  background: linear-gradient(90deg, rgba(238, 242, 255, 0.72), transparent 42%);
}

.editor-custom-props-fields .editor-custom-props-field--widget-select select.props-form-value,
.editor-custom-props-fields .editor-custom-props-field--widget-select-multiple select.props-form-value {
  border-color: rgba(99, 102, 241, 0.28);
  background: #eef2ff;
}

.editor-custom-props-fields .editor-custom-props-field--widget-radio .props-form-radio-label,
.editor-custom-props-fields .editor-custom-props-field--widget-enum-checkbox .props-form-enum-checkbox-label {
  padding: 3px 8px;
  border: 1px solid rgba(99, 102, 241, 0.22);
  border-radius: 999px;
  background: rgba(255, 255, 255, 0.88);
}

/* Справочники lookup */
.editor-custom-props-fields .editor-custom-props-field--widget-lookup-one,
.editor-custom-props-fields .editor-custom-props-field--widget-lookup-many,
.editor-custom-props-fields .editor-custom-props-field--widget-tags {
  border-left-color: #a855f7;
  background: linear-gradient(90deg, rgba(250, 245, 255, 0.72), transparent 42%);
}

.editor-custom-props-fields .editor-custom-props-field--widget-lookup-one select.props-form-value,
.editor-custom-props-fields .editor-custom-props-field--widget-lookup-many select.props-form-value {
  border-color: rgba(168, 85, 247, 0.28);
  background: #faf5ff;
}

/* Отношения / файлы / превью */
.editor-custom-props-fields .editor-custom-props-field--widget-relation,
.editor-custom-props-fields .editor-custom-props-field--widget-file,
.editor-custom-props-fields .editor-custom-props-field--widget-image,
.editor-custom-props-fields .editor-custom-props-field--widget-preview,
.editor-custom-props-fields .editor-custom-props-field--widget-attachments {
  border-left-color: #f43f5e;
  background: linear-gradient(90deg, rgba(255, 241, 242, 0.72), transparent 42%);
}

/* Cron / массив */
.editor-custom-props-fields .editor-custom-props-field--widget-cron-schedule,
.editor-custom-props-fields .editor-custom-props-field--widget-array {
  border-left-color: #64748b;
  background: linear-gradient(90deg, rgba(248, 250, 252, 0.72), transparent 42%);
}

.editor-custom-props-fields .editor-custom-props-field--widget-cron-schedule .props-form-value,
.editor-custom-props-fields .editor-custom-props-field--widget-array .props-form-value {
  font-family: ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", monospace;
}

/* Picker: связи и файлы */
.editor-custom-props-fields .props-form-picker {
  display: flex;
  flex-direction: column;
  gap: 6px;
  width: 100%;
  min-width: 0;
}

.editor-custom-props-fields .props-form-picker--compact {
  gap: 5px;
}

.editor-custom-props-fields .props-form-picker-row {
  display: flex;
  align-items: center;
  gap: 6px;
  width: 100%;
  min-width: 0;
}

.editor-custom-props-fields .props-form-picker-row select.props-form-value,
.editor-custom-props-fields .props-form-picker-row .props-form-file-select,
.editor-custom-props-fields .props-form-picker-row .props-form-link-select {
  flex: 1 1 auto;
  min-width: 0;
  max-width: none;
}

.editor-custom-props-fields .props-form-picker-actions {
  display: flex;
  flex-shrink: 0;
  align-items: center;
  gap: 4px;
}

.editor-custom-props-fields .props-form-picker-open {
  flex: 0 0 auto;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 28px;
  height: 28px;
  padding: 0;
  border: 1px solid rgba(148, 163, 184, 0.38);
  border-radius: 7px;
  background: #fff;
  color: #334155;
  font-size: 14px;
  line-height: 1;
  cursor: pointer;
}

.editor-custom-props-fields .props-form-picker-open:hover:not(:disabled) {
  border-color: #93c5fd;
  background: #eff6ff;
  color: #1d4ed8;
}

.editor-custom-props-fields .props-form-picker-open:disabled {
  opacity: 0.4;
  cursor: default;
}

.editor-custom-props-fields .props-form-picker-note {
  margin: 0;
  font-size: 10px;
  line-height: 1.3;
  color: #94a3b8;
}

.editor-custom-props-fields .props-form-link-manual,
.editor-custom-props-fields .props-form-file-manual {
  width: 100%;
  font-size: 12px;
}

.editor-custom-props-fields .props-form-picker--compact .props-form-link-manual {
  font-family: ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", monospace;
  font-size: 11px;
}

/* Lookup many: компактные чипы вместо длинного списка */
.editor-custom-props-fields .props-form-tags-list {
  display: flex;
  flex-direction: column;
  gap: 6px;
  max-height: 160px;
  overflow: auto;
  padding: 6px 8px;
  border: 1px solid rgba(148, 163, 184, 0.28);
  border-radius: 8px;
  background: #fff;
}

.editor-custom-props-fields .props-form-tags-list--chips {
  display: flex;
  flex-direction: row;
  flex-wrap: wrap;
  align-content: flex-start;
  gap: 4px;
  max-height: 120px;
  padding: 6px;
}

.editor-custom-props-fields .props-form-tags-list--chips .props-form-catalog-group {
  display: contents;
}

.editor-custom-props-fields .props-form-tags-list--chips .props-form-catalog-group-title {
  flex: 0 0 100%;
  margin: 2px 0 0;
  font-size: 9px;
  font-weight: 700;
  letter-spacing: 0.05em;
  text-transform: uppercase;
  color: #94a3b8;
}

.editor-custom-props-fields .props-form-tags-list--chips .props-form-catalog-group:first-child .props-form-catalog-group-title {
  margin-top: 0;
}

.editor-custom-props-fields .props-form-tag-option {
  display: inline-flex;
  align-items: center;
  gap: 5px;
  margin: 0;
  padding: 2px 8px;
  border: 1px solid rgba(148, 163, 184, 0.28);
  border-radius: 999px;
  background: #f8fafc;
  font-size: 11px;
  line-height: 1.25;
  color: #334155;
  cursor: pointer;
  white-space: nowrap;
}

.editor-custom-props-fields .props-form-tags-list--chips .props-form-tag-option:has(input:checked) {
  border-color: rgba(168, 85, 247, 0.45);
  background: #f3e8ff;
  color: #6b21a8;
}

.editor-custom-props-fields .props-form-tag-option input {
  width: 12px;
  height: 12px;
  margin: 0;
  accent-color: #a855f7;
}

.editor-custom-props-fields .props-form-tags-extra-wrap {
  margin-top: 2px;
}

.editor-custom-props-fields .props-form-tags-extra-label {
  display: flex;
  flex-direction: column;
  gap: 4px;
  font-size: 10px;
  color: #64748b;
}

.editor-custom-props-fields .props-form-tags-extra {
  font-size: 11px;
}

.editor-custom-props-fields .props-form-catalog-missing,
.editor-custom-props-fields .props-form-catalog-warn {
  margin: 0;
  font-size: 11px;
  line-height: 1.35;
}

.editor-custom-props-fields .props-form-catalog-missing {
  padding: 6px 8px;
  border-radius: 6px;
  background: #f8fafc;
  border: 1px dashed rgba(148, 163, 184, 0.45);
  color: #64748b;
}

.editor-custom-props-fields .props-form-catalog-warn {
  color: #b45309;
}

/* Файлы: список и загрузка */
.editor-custom-props-fields .props-form-file-list {
  display: flex;
  flex-direction: column;
  gap: 4px;
  margin-top: 2px;
}

.editor-custom-props-fields .props-form-file-item {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 8px;
  padding: 5px 8px;
  border-radius: 6px;
  background: rgba(255, 241, 242, 0.65);
  border: 1px solid rgba(244, 63, 94, 0.15);
}

.editor-custom-props-fields .props-form-file-item-name {
  font-size: 11px;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.editor-custom-props-fields .props-form-file-upload {
  display: flex;
  align-items: center;
  justify-content: center;
  min-height: 34px;
  margin-top: 2px;
  padding: 6px 10px;
  border: 1px dashed rgba(244, 63, 94, 0.35);
  border-radius: 8px;
  background: rgba(255, 241, 242, 0.45);
  color: #be123c;
  font-size: 11px;
  font-weight: 600;
  text-align: center;
  cursor: pointer;
  transition: background 0.15s ease, border-color 0.15s ease;
}

.editor-custom-props-fields .props-form-file-upload:hover,
.editor-custom-props-fields .props-form-file-upload:focus-visible {
  border-color: rgba(244, 63, 94, 0.55);
  background: rgba(255, 228, 230, 0.75);
  outline: none;
}

.editor-custom-props-fields .props-form-file-upload.is-uploading {
  opacity: 0.6;
  pointer-events: none;
}

.doc-props-aside .props-form-empty--editor-custom-hint {
  font-size: 12px;
  color: #64748b;
}

.doc-stack .file-content-input,
.doc-stack .file-content-preview,
.doc-stack .editor-wysiwyg-wrap {
  border: 0;
  border-radius: 0;
  padding: 0;
  margin: 0;
  min-height: 0;
  height: 100%;
  background: transparent;
  box-shadow: none;
}

.doc-stack .editor-code-wrap {
  flex: 1;
  min-height: 0;
  overflow: hidden;
}

.doc-stack .editor-code-wrap .file-content-input {
  flex: 1;
  min-height: 0;
  height: 100%;
  white-space: pre;
  overflow-x: auto;
  word-wrap: normal;
  tab-size: 2;
}

.doc-stack .editor-line-numbers {
  display: none;
}

.doc-stack .editor-code-wrap.line-numbers-on .editor-line-numbers {
  display: block;
  flex: 0 0 auto;
  align-self: stretch;
  height: 100%;
  overflow: hidden;
  box-sizing: border-box;
  min-width: 2.75em;
  padding: 12px 8px 12px 10px;
  font-size: 14px;
  line-height: 1.5;
  background: #eef2f7;
  color: #64748b;
  border-right: 1px solid #dbe3ee;
}

.doc-slab-content .doc-slab-main > .editor-surface {
  margin-left: 0;
  margin-right: 0;
  width: 100%;
  max-width: 100%;
  box-sizing: border-box;
}

.doc-body-main .doc-slab-content .doc-slab-main > .editor-surface .editor-code-wrap,
.doc-body-main .doc-slab-content .doc-slab-main > .editor-surface .editor-wysiwyg-wrap,
.doc-body-main .doc-slab-content .doc-slab-main > .editor-surface .file-content-preview {
  width: 100%;
  max-width: 100%;
  box-sizing: border-box;
}

.doc-slab-content .doc-slab-main .editor-wysiwyg-wrap {
  padding: 0;
  box-sizing: border-box;
}

.doc-stack .doc-slab-content .doc-slab-main > .editor-surface .file-content-preview,
.doc-slab-content .doc-slab-main > .editor-surface .file-content-preview {
  padding: 12px 16px;
  border: 0;
  border-radius: 0;
  background: transparent;
  box-sizing: border-box;
}

.doc-stack .doc-slab-content .doc-slab-main .editor-code-wrap .file-content-input,
.doc-slab-content .doc-slab-main .editor-code-wrap .file-content-input {
  padding: 12px 16px;
  border: 0;
  border-radius: 0;
  background: transparent;
  box-sizing: border-box;
}

.doc-stack .doc-slab-content .doc-slab-main .editor-code-wrap.line-numbers-on .file-content-input,
.doc-slab-content .doc-slab-main .editor-code-wrap.line-numbers-on .file-content-input {
  padding: 12px 12px 12px 14px;
}

.doc-slab-content .doc-slab-main .node-navigation-memory-body .node-navigation-preview.file-content-preview,
.doc-slab-content .doc-slab-main .node-navigation-hub .file-content-preview {
  margin: 0;
  padding: 0;
  border: 0;
  border-radius: 0;
  background: transparent;
  min-height: 0;
  overflow: visible;
  box-shadow: none;
}

.doc-slab-content .doc-slab-main .awn-databases-view-hub .awn-databases-view-record-body.file-content-preview {
  min-height: 0;
  height: auto;
  overflow: visible;
}

.doc-slab-content .doc-slab-main .node-navigation-memory-body .node-navigation-internal,
.doc-slab-content .doc-slab-main .node-navigation-memory-body .node-navigation-external,
.doc-slab-content .doc-slab-main .node-navigation-memory-body .node-navigation-tabular,
.doc-slab-content .doc-slab-main .node-navigation-memory-body .node-navigation-media {
  margin: 0;
  padding: 0;
}

.doc-stack .file-content-input {
  resize: none;
  overflow-y: auto;
  overflow-x: hidden;
}

.doc-stack .file-content-input:focus {
  box-shadow: none;
  border-color: transparent;
}

.doc-stack .file-content-preview {
  overflow-y: auto;
  overflow-x: auto;
}

.doc-slab-main .file-content-input,
.doc-slab-main .file-content-preview {
  min-height: 0;
}

.doc-stack .list-view {
  flex: 1;
  min-height: 0;
  border: 0;
  border-radius: 0;
  background: transparent;
  box-shadow: none;
}

.doc-slab-content .doc-slab-main > .list-view,
.doc-slab-content .doc-slab-main > .graph-view {
  flex: 1;
  min-height: 0;
  overflow: hidden;
}

.doc-slab-content .doc-slab-main > .preview-upload {
  flex: 0 0 auto;
  align-self: flex-start;
  width: 100%;
  max-width: 480px;
  min-height: 0;
  overflow: visible;
  padding: 8px 10px;
  box-sizing: border-box;
}

.doc-slab-content:has(> .doc-slab-main > .node-overview:not(.hidden)) .doc-slab-main,
.doc-slab-content:has(> .doc-slab-main > .workspace-scroll-host > .node-overview:not(.hidden)) .doc-slab-main,
.doc-slab-content:has(> .doc-slab-main > .topic-schema-panel:not(.hidden)) .doc-slab-main {
  flex: 0 0 auto;
  min-height: 0;
  overflow: visible;
}

.doc-slab-content .doc-slab-main > .node-overview,
.doc-slab-content .doc-slab-main > .workspace-scroll-host > .node-overview {
  flex: 0 0 auto;
  min-height: 0;
  min-width: 0;
  overflow: visible;
}

.doc-slab-content .doc-slab-main > .workspace-scroll-host:has(> .node-overview:not(.hidden)) {
  flex: 0 0 auto;
  min-height: 0;
  overflow: visible;
  display: block;
}

.doc-slab-content .doc-slab-main > .workspace-scroll-host {
  flex: 1;
  min-height: 0;
  min-width: 0;
}

.editor-surface > .workspace-scroll-host {
  flex: 1;
  min-height: 0;
  min-width: 0;
  display: flex;
  flex-direction: column;
}

.app.editor-autoheight .editor-surface > .workspace-scroll-host {
  flex: 0 0 auto;
  min-height: auto;
  overflow: visible;
}

.doc-slab-content .doc-slab-main > .node-thread {
  flex: 1;
  min-height: 0;
  overflow: hidden;
  display: flex;
  flex-direction: column;
  padding: 4px 0 8px;
  box-sizing: border-box;
}

.doc-slab-content:has(> .doc-slab-main > .node-thread:not(.hidden)),
.doc-slab-content:has(> .doc-slab-main > .node-journal:not(.hidden)) {
  padding: 8px 14px 16px;
}

/* Дискуссия / журнал: заполняют высоту области документа */
.doc-stack:has(.node-thread:not(.hidden)),
.doc-stack:has(.node-journal:not(.hidden)),
.doc-body-grid:has(.node-thread:not(.hidden)),
.doc-body-grid:has(.node-journal:not(.hidden)),
.doc-body-main:has(.node-thread:not(.hidden)),
.doc-body-main:has(.node-journal:not(.hidden)),
.doc-slab-content:has(> .doc-slab-main > .node-thread:not(.hidden)),
.doc-slab-content:has(> .doc-slab-main > .node-journal:not(.hidden)),
.doc-slab-main:has(> .node-thread:not(.hidden)),
.doc-slab-main:has(> .node-journal:not(.hidden)) {
  flex: 1 1 auto;
  min-height: 0;
  overflow: hidden;
}

.doc-stack:has(.node-thread:not(.hidden)),
.doc-stack:has(.node-journal:not(.hidden)) {
  height: 100%;
}

.doc-slab-main > .node-thread:not(.hidden),
.doc-slab-main > .node-journal:not(.hidden) {
  flex: 1;
  min-height: 0;
  display: flex;
  flex-direction: column;
  overflow: hidden;
}

.doc-slab-content .doc-slab-main > .list-view {
  flex: 1;
  min-height: 0;
  overflow: hidden;
  display: flex;
  flex-direction: column;
  padding: 8px 10px;
  box-sizing: border-box;
}

.doc-slab-content .doc-slab-main > .graph-view .graph-view-content {
  min-height: 240px;
  padding: 8px 10px;
  box-sizing: border-box;
}

.doc-slab-props #yaml-panel-label,
.doc-slab-props > .doc-slab-label:first-child {
  display: none !important;
}

.doc-slab-props .props-form-fields {
  gap: 6px;
}

.doc-slab-props .props-form-key-input,
.doc-slab-props input.props-form-value {
  border: 0;
  border-bottom: 1px solid var(--border);
  border-radius: 0;
  padding: 6px 2px;
  background: transparent;
  box-shadow: none;
}

.doc-slab-props .props-form-key-input:focus,
.doc-slab-props input.props-form-value:focus {
  border-bottom-color: var(--accent);
  box-shadow: none;
  outline: none;
}

.doc-slab-props .props-input {
  border: 0;
  border-top: 1px solid var(--border);
  border-radius: 0;
  background: transparent;
  padding: 8px 0 0;
  margin: 0;
}

.doc-slab-props .props-form-actions {
  margin-top: 2px;
}

.doc-slab-main .list-view-head {
  display: none;
}

.doc-slab-main .list-view-head.hidden {
  display: none;
}

.doc-slab-main .list-view-title {
  font-size: 12px;
  font-weight: 600;
  color: #334155;
  text-align: left;
}

.doc-slab-main .list-view-head-center {
  align-items: flex-start;
}

.doc-slab-main .list-view-content {
  flex: 1;
  min-height: 0;
  overflow: hidden;
  display: flex;
  flex-direction: column;
  padding: 0;
}

.doc-slab-main .list-view-content:not(:has(> .data-hub-list-view-wrap)):not(:has(> .media-list-view-wrap)) {
  overflow: auto;
  border: 1px solid var(--border);
  border-radius: 10px;
  background: var(--panel);
  padding: 12px;
  box-sizing: border-box;
}

.doc-slab-toolbar .editor-header-actions {
  display: flex;
  align-items: center;
  gap: 8px;
  flex-shrink: 0;
}

.doc-actions {
  display: flex;
  align-items: center;
  gap: 8px;
  flex-shrink: 0;
  margin-left: auto;
}


.yaml-panel {
  border: 1px solid var(--border);
  border-radius: 10px;
  background: #f8faff;
  padding: 10px;
  margin-top: 10px;
}

.form-props {
  display: grid;
  gap: 10px;
}

.form-props-title {
  margin: 0;
  font-size: 14px;
  font-weight: 600;
  color: var(--text);
}

.props-form-fields {
  display: grid;
  gap: 10px;
}

.props-form-row {
  display: grid;
  grid-template-columns: 80px 1fr;
  gap: 10px;
  align-items: center;
  font-size: 13px;
  color: var(--muted);
}

.props-form-key {
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
  font-weight: 500;
}

.props-form-key-input,
.props-form-value {
  width: 100%;
  padding: 7px 9px;
  border: 1px solid var(--border);
  border-radius: 8px;
  background: var(--panel);
  color: var(--text);
  font: inherit;
}

.props-form-key-input {
  color: var(--muted);
}

.props-form-value:focus,
.props-form-key-input:focus {
  outline: none;
  border-color: var(--accent);
  box-shadow: 0 0 0 2px rgba(59, 130, 246, 0.15);
}

.doc-slab-props.is-props-preview .props-form-actions {
  display: none;
}

.props-form-fields.is-readonly {
  display: block;
}

.props-preview-dl {
  margin: 0;
  padding: 0;
  border: 1px solid var(--border);
  border-radius: 8px;
  overflow: hidden;
  background: #fff;
}

.props-preview-dl dt {
  margin: 0;
  padding: 6px 10px 2px;
  font-size: 10px;
  font-weight: 600;
  letter-spacing: 0.03em;
  text-transform: lowercase;
  color: #64748b;
  background: #f8fafc;
  border-top: 1px solid var(--border);
}

.props-preview-dl dt:first-child {
  border-top: 0;
}

.props-preview-dl dd {
  margin: 0;
  padding: 2px 10px 8px;
  font-size: 12px;
  line-height: 1.4;
  color: var(--text);
  word-break: break-word;
  background: #fff;
  border-bottom: 1px solid var(--border);
}

.props-preview-dl dd:last-child {
  border-bottom: 0;
}

.props-preview-dl dd.is-empty {
  color: var(--muted);
}

.doc-props-aside .props-form-fields {
  display: flex;
  flex-direction: column;
  gap: 0;
  padding: 0;
  width: 100%;
  box-sizing: border-box;
}

.doc-props-aside .props-form-group {
  display: flex;
  flex-direction: column;
  gap: 0;
}

.doc-props-aside .props-form-group + .props-form-group {
  border-top: 0;
}

.doc-props-aside .props-form-group-title {
  margin: 0;
  padding: 6px 10px 7px;
  border-bottom: 1px solid rgba(148, 163, 184, 0.38);
  font-size: 9px;
  font-weight: 800;
  letter-spacing: 0.06em;
  text-transform: uppercase;
  color: #64748b;
  background: none;
}

.doc-props-aside .props-form-group-body {
  display: flex;
  flex-direction: column;
  background: #fff;
}

.doc-props-aside .props-form-fields > .props-form-group:first-child > .props-form-group-toggle {
  border-top: 1px solid rgba(148, 163, 184, 0.28);
}

.doc-props-aside .props-form-group-toggle {
  display: flex;
  align-items: center;
  gap: 6px;
  width: 100%;
  margin: 0;
  padding: 7px 10px 8px;
  border: 0;
  border-top: 1px solid rgba(226, 232, 240, 0.95);
  border-bottom: 1px solid rgba(226, 232, 240, 0.95);
  background: #f8fafc;
  cursor: pointer;
  text-align: left;
  font: inherit;
}

.doc-props-aside .props-form-group-toggle:hover {
  background: #f1f5f9;
}

.doc-props-aside .props-form-group-toggle .props-form-group-title {
  padding: 0;
  border: 0;
  background: none;
  flex: 1 1 auto;
  color: #475569;
  font-size: 10px;
  font-weight: 700;
  letter-spacing: 0.05em;
}

.props-form-group-caret {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  flex: 0 0 auto;
  width: 20px;
  height: 20px;
  border: 1px solid rgba(148, 163, 184, 0.35);
  border-radius: 5px;
  background: rgba(255, 255, 255, 0.95);
  color: #64748b;
  transition: color 0.15s ease, border-color 0.15s ease, background 0.15s ease;
}

.props-form-group-toggle:hover .props-form-group-caret,
.editor-custom-props-root-toggle:hover .props-form-group-caret,
.editor-custom-props-group-toggle:hover .props-form-group-caret {
  color: #334155;
  border-color: rgba(99, 102, 241, 0.35);
}

.props-form-group-caret .nav-book-toc-folder-chevron {
  width: 6px;
  height: 6px;
  margin-top: -2px;
  transform: rotate(-45deg);
  transition: transform 0.15s ease;
}

.editor-custom-props-bar:not(.is-root-collapsed) > .editor-custom-props-root-toggle .props-form-group-caret .nav-book-toc-folder-chevron,
.editor-custom-props-group:not(.is-collapsed) > .editor-custom-props-group-toggle .props-form-group-caret .nav-book-toc-folder-chevron,
.doc-props-aside .props-form-group:not(.is-collapsed) > .props-form-group-toggle .props-form-group-caret .nav-book-toc-folder-chevron {
  transform: rotate(45deg);
  margin-top: -4px;
}

.doc-props-aside .props-form-group-count {
  font-size: 9px;
  font-weight: 700;
  color: #94a3b8;
  background: rgba(148, 163, 184, 0.18);
  border-radius: 999px;
  padding: 1px 7px;
}

.doc-props-aside .props-form-group.is-collapsed .props-form-group-body {
  display: none;
}

.doc-props-aside .props-form-row {
  display: flex;
  flex-direction: column;
  gap: 6px;
  margin: 0;
  padding: 10px 11px;
  border-top: 1px solid rgba(241, 245, 249, 0.95);
}

.doc-props-aside .props-form-field--compact {
  display: grid;
  grid-template-columns: minmax(0, 0.95fr) minmax(0, 1.25fr);
  align-items: center;
  gap: 6px;
  padding: 4px 10px;
  min-height: 30px;
  width: 100%;
  box-sizing: border-box;
}

.doc-props-aside .props-form-field--preview {
  grid-template-columns: minmax(0, 1fr);
  padding: 8px 10px 10px;
  min-height: 0;
}

.doc-props-aside .props-form-field--taxonomy {
  grid-template-columns: minmax(0, 1fr);
  padding: 8px 10px 10px;
  min-height: 0;
}

.doc-props-aside .props-form-field--object-group {
  grid-template-columns: minmax(0, 1fr);
  padding: 8px 10px 10px;
  min-height: 0;
}

.doc-props-aside .props-form-field--object-group .props-form-value-wrap--object-group {
  width: 100%;
}

.doc-props-aside .props-form-field--taxonomy .props-form-value-wrap--taxonomy {
  width: 100%;
}

.doc-props-aside .props-form-field--wide {
  display: flex;
  flex-direction: column;
  align-items: stretch;
  gap: 6px;
  padding: 8px 10px 10px;
  min-height: 0;
  width: 100%;
  box-sizing: border-box;
}

.doc-props-aside .props-form-field--wide .props-form-field-head {
  width: 100%;
}

.doc-props-aside .props-form-field--wide .props-form-value-wrap {
  width: 100%;
}

.doc-props-aside .props-form-field--cron-schedule.hidden {
  display: none;
}

.doc-props-aside .props-form-field--preview .props-form-value-wrap--preview {
  width: 100%;
}

.doc-props-aside .props-form-field--attachments .props-form-value-wrap--attachments {
  width: 100%;
}

.doc-props-aside .props-form-attachments-list {
  display: flex;
  flex-direction: column;
  gap: 8px;
  margin-bottom: 10px;
}

.doc-props-aside .props-form-attachment-path-line {
  font-size: 10px;
  line-height: 1.25;
  color: #94a3b8;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.doc-props-aside .props-form-attachment-path-line--full {
  color: #64748b;
}

.doc-props-aside .props-form-attachment-path-line--short {
  color: #2563eb;
}

.doc-props-aside .props-form-attachment-item {
  display: flex;
  flex-direction: column;
  gap: 8px;
  padding: 10px;
  border-radius: 10px;
  box-sizing: border-box;
  width: 100%;
  max-width: 100%;
  transition: border-color 0.15s ease, background-color 0.15s ease, opacity 0.15s ease;
}

.doc-props-aside .props-form-attachment-item.is-in-body {
  border: 1px solid rgba(16, 185, 129, 0.42);
  background: rgba(16, 185, 129, 0.08);
  box-shadow: inset 0 0 0 1px rgba(16, 185, 129, 0.06);
  cursor: grab;
}

.doc-props-aside .props-form-attachment-item.is-unlinked {
  border: 1px dashed rgba(148, 163, 184, 0.55);
  background: rgba(248, 250, 252, 0.96);
  cursor: grab;
}

.doc-props-aside .props-form-attachment-item:active {
  cursor: grabbing;
}

.doc-props-aside .props-form-attachment-main {
  display: flex;
  align-items: flex-start;
  gap: 10px;
  min-width: 0;
}

.doc-props-aside .props-form-attachment-preview {
  width: 40px;
  height: 40px;
  flex-shrink: 0;
  display: flex;
  align-items: center;
  justify-content: center;
  border-radius: 8px;
  overflow: hidden;
  background: rgba(255, 255, 255, 0.82);
}

.doc-props-aside .props-form-attachment-item.is-in-body .props-form-attachment-preview {
  background: rgba(255, 255, 255, 0.92);
}

.doc-props-aside .props-form-attachment-item.is-unlinked .props-form-attachment-preview {
  background: rgba(241, 245, 249, 0.95);
}

.doc-props-aside .props-form-attachment-thumb {
  width: 40px;
  height: 40px;
  object-fit: cover;
  display: block;
}

.doc-props-aside .props-form-attachment-icon {
  width: 40px;
  height: 40px;
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: 18px;
}

.doc-props-aside .props-form-attachment-body {
  min-width: 0;
  flex: 1;
  display: flex;
  flex-direction: column;
  gap: 2px;
}

.doc-props-aside .props-form-attachment-name {
  font-size: 12px;
  font-weight: 600;
  line-height: 1.3;
  overflow: hidden;
  text-overflow: ellipsis;
  display: -webkit-box;
  -webkit-line-clamp: 2;
  -webkit-box-orient: vertical;
  white-space: normal;
  color: #0f172a;
}

.doc-props-aside .props-form-attachment-item.is-unlinked .props-form-attachment-name {
  font-weight: 500;
  color: #475569;
}

.doc-props-aside .props-form-attachment-storage-name {
  font-size: 10px;
  line-height: 1.25;
  color: #94a3b8;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.doc-props-aside .props-form-attachment-status {
  font-size: 10px;
  line-height: 1.2;
  letter-spacing: 0.01em;
  margin-top: 2px;
}

.doc-props-aside .props-form-attachment-item.is-in-body .props-form-attachment-status {
  color: #059669;
  font-weight: 600;
}

.doc-props-aside .props-form-attachment-item.is-unlinked .props-form-attachment-status {
  color: #94a3b8;
  font-style: italic;
}

.doc-props-aside .props-form-attachment-actions {
  display: flex;
  gap: 4px;
  flex-shrink: 0;
}

.doc-props-aside .props-form-attachment-item--compact .props-form-attachment-actions {
  align-self: start;
}

.doc-props-aside .props-form-attachment-toolbar {
  display: flex;
  flex-wrap: wrap;
  gap: 4px;
}

.doc-props-aside .props-form-attachment-action {
  min-width: 28px;
  height: 28px;
  padding: 0 6px;
  border: 1px solid rgba(148, 163, 184, 0.38);
  border-radius: 7px;
  background: rgba(255, 255, 255, 0.92);
  cursor: pointer;
  font-size: 13px;
  line-height: 1;
  color: #334155;
}

.doc-props-aside .props-form-attachment-item.is-in-body .props-form-attachment-action {
  border-color: rgba(16, 185, 129, 0.28);
}

.doc-props-aside .props-form-attachment-action:hover {
  background: #fff;
  border-color: rgba(100, 116, 139, 0.45);
}

.doc-props-aside .props-form-attachment-action--remove:hover {
  color: #dc2626;
  border-color: rgba(220, 38, 38, 0.35);
}

.props-form-attachment-action.has-icon,
.doc-props-aside .props-form-attachment-action.has-icon {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-width: 24px;
  width: 24px;
  height: 24px;
  padding: 0;
}

.props-form-attachment-action-icon {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 14px;
  height: 14px;
}

.props-form-attachment-action-icon svg {
  display: block;
  width: 14px;
  height: 14px;
}

.doc-props-aside .props-form-attachment-action--props.has-icon:hover {
  color: #2563eb;
  border-color: rgba(37, 99, 235, 0.35);
  background: #eff6ff;
}

.doc-props-aside .props-form-attachment-item.props-form-attachment-item--simple {
  display: grid;
  grid-template-columns: 40px minmax(0, 1fr) auto;
  align-items: center;
  gap: 8px;
  padding: 8px 10px;
  flex-direction: unset;
}

.doc-props-aside .props-form-attachment-item.props-form-attachment-item--simple .props-form-attachment-thumb,
.doc-props-aside .props-form-attachment-item.props-form-attachment-item--simple .props-form-attachment-icon {
  width: 40px;
  height: 40px;
  border-radius: 8px;
  object-fit: cover;
}

.doc-props-aside .props-form-attachment-item.props-form-attachment-item--simple .props-form-attachment-icon {
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: 18px;
  background: rgba(255, 255, 255, 0.82);
}

.doc-props-aside .props-form-attachment-item.props-form-attachment-item--simple .props-form-attachment-body {
  flex-direction: row;
  align-items: center;
  gap: 6px;
}

.doc-props-aside .props-form-attachment-item.props-form-attachment-item--simple .props-form-attachment-name {
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
  display: block;
  -webkit-line-clamp: unset;
  font-weight: 600;
}

.doc-props-aside .props-form-attachment-status--dot {
  flex-shrink: 0;
  font-size: 11px;
  line-height: 1;
  margin-top: 0;
  font-style: normal;
  font-weight: 700;
}

.doc-props-aside .props-form-attachment-item.props-form-attachment-item--simple.is-in-body .props-form-attachment-status--dot {
  color: #059669;
}

.doc-props-aside .props-form-attachment-item.props-form-attachment-item--simple.is-unlinked .props-form-attachment-status--dot {
  color: #94a3b8;
  font-weight: 400;
}

.doc-props-aside .props-form-attachment-item.props-form-attachment-item--simple .props-form-attachment-actions {
  align-self: center;
}

.attachment-sidecar-modal-card {
  width: min(420px, calc(100vw - 32px));
}

.attachment-sidecar-modal-path {
  margin: 0 0 12px;
  font-size: 11px;
  line-height: 1.35;
  color: #64748b;
  word-break: break-all;
}

.attachment-sidecar-field {
  display: flex;
  flex-direction: column;
  gap: 4px;
  margin-bottom: 10px;
}

.attachment-sidecar-field-label {
  font-size: 11px;
  font-weight: 600;
  color: #64748b;
}

.attachment-sidecar-field-input {
  width: 100%;
  box-sizing: border-box;
  border: 1px solid rgba(148, 163, 184, 0.45);
  border-radius: 8px;
  padding: 7px 9px;
  font-size: 13px;
  line-height: 1.35;
  color: #0f172a;
  background: #fff;
}

.attachment-sidecar-field-textarea {
  resize: vertical;
  min-height: 72px;
}

.attachment-sidecar-modal-actions {
  display: flex;
  flex-wrap: wrap;
  justify-content: flex-end;
  gap: 8px;
}

.attachment-sidecar-full-edit-btn {
  margin-right: auto;
}

.node-entry-overview-attachment-item .props-form-attachment-actions {
  margin-left: auto;
  flex: 0 0 auto;
}

.node-entry-overview-attachments-list .props-form-attachment-item--simple {
  gap: 8px;
}

.doc-props-aside .props-form-attachments-upload {
  width: 100%;
  min-height: 44px;
  border: 1px dashed var(--border-subtle, rgba(127, 127, 127, 0.35));
  border-radius: 8px;
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: 12px;
  color: var(--text-muted, #888);
  cursor: pointer;
}

.doc-props-aside .props-form-attachments-upload.is-dragover,
.doc-props-aside .props-form-attachments-upload:hover {
  border-color: var(--accent, #2563eb);
  color: var(--accent, #2563eb);
  background: rgba(37, 99, 235, 0.06);
}

.doc-props-aside .props-form-attachments-upload.is-uploading {
  opacity: 0.6;
  pointer-events: none;
}

.doc-props-aside .props-form-record-materials {
  margin-top: 8px;
}

.doc-props-aside .props-form-record-materials-add {
  width: 100%;
  min-height: 44px;
  border: 1px solid #dc2626;
  border-radius: 8px;
  background: #dc2626;
  color: #fff;
  font-size: 12px;
  font-weight: 600;
  cursor: pointer;
  transition: background-color 0.15s ease, border-color 0.15s ease;
}

.doc-props-aside .props-form-record-materials-add:hover:not(:disabled) {
  background: #b91c1c;
  border-color: #b91c1c;
}

.doc-props-aside .props-form-record-materials-add:disabled {
  opacity: 0.6;
  cursor: default;
}

.doc-props-aside .props-form-record-materials-status {
  width: 100%;
  min-height: 36px;
  border: 1px solid rgba(148, 163, 184, 0.45);
  border-radius: 8px;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 8px;
  padding: 0 10px;
  box-sizing: border-box;
  font-size: 11px;
  font-weight: 600;
  color: #64748b;
  background: rgba(248, 250, 252, 0.96);
}

.doc-props-aside .props-form-record-materials-status .record-materials-icon-wrap {
  flex: 0 0 auto;
}

.doc-props-aside .props-form-record-materials-status .record-materials-label {
  flex: 1 1 auto;
  min-width: 0;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.doc-props-aside .props-form-record-materials-count {
  flex: 0 0 auto;
  min-width: 18px;
  height: 18px;
  padding: 0 5px;
  border-radius: 999px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  font-size: 10px;
  font-weight: 700;
  line-height: 1;
  color: #0f766e;
  background: rgba(204, 251, 241, 0.9);
  border: 1px solid #99f6e4;
  font-variant-numeric: tabular-nums;
}

.doc-props-aside .props-form-attachments-orphans {
  margin-top: 10px;
  padding-top: 10px;
  border-top: 1px dashed var(--border-subtle, rgba(127, 127, 127, 0.25));
}

.doc-props-aside .props-form-attachments-orphans-title {
  margin: 0 0 8px;
  font-size: 11px;
  font-weight: 600;
  letter-spacing: 0.04em;
  text-transform: uppercase;
  color: var(--text-muted, #888);
}

.doc-props-aside .props-form-attachments-orphans-list {
  display: flex;
  flex-direction: column;
  gap: 6px;
}

.doc-props-aside .props-form-attachment-item--orphan {
  border-style: dashed;
  opacity: 0.92;
}

.doc-props-aside .props-form-attachment-item--orphan .props-form-attachment-status--dot {
  color: var(--text-muted, #888);
}

.doc-props-aside .props-form-attachment-action--register:hover {
  color: var(--accent, #2563eb);
}

.doc-props-aside .props-form-attachments-list.is-dragover-register {
  outline: 1px dashed var(--accent, #2563eb);
  outline-offset: 2px;
  border-radius: 8px;
}

.doc-props-aside .props-form-preview-thumb-wrap {
  width: 100%;
  min-height: 150px;
  max-height: none;
  height: auto;
  border-radius: 10px;
}

.doc-props-aside .props-form-preview-thumb-wrap.node-overview-thumb-wrap {
  flex: none;
  width: 100%;
  height: 150px;
  max-height: none;
  display: flex;
  align-items: center;
  justify-content: center;
  min-height: 150px;
}

.doc-props-aside .props-form-preview-thumb-wrap.node-overview-thumb-wrap[data-has-preview="1"] {
  height: auto;
  min-height: 0;
}

.doc-props-aside .props-form-preview-thumb-wrap > .node-overview-thumb,
.doc-props-aside .props-form-preview-thumb-wrap > .broken-image-placeholder {
  align-self: stretch;
  width: 100%;
}

.doc-props-aside .props-form-preview-thumb-wrap .node-overview-thumb-actions {
  display: flex;
  align-items: center;
  justify-content: center;
  align-content: center;
}

.doc-props-aside .props-form-preview-thumb-wrap .node-overview-thumb-action {
  flex-shrink: 0;
}

.doc-props-aside .props-form-preview-thumb-wrap .node-overview-thumb-edit-icon svg {
  display: block;
}

.doc-props-aside .props-form-preview-thumb-wrap .node-overview-thumb,
.doc-props-aside .props-form-preview-thumb-wrap .node-overview-thumb-placeholder {
  border-radius: 10px;
}

.doc-props-aside .props-form-preview-thumb-wrap .node-overview-thumb {
  width: 100%;
  height: auto;
  max-width: 100%;
  object-fit: initial;
  display: block;
}

.doc-props-aside .props-preview-field--preview {
  padding: 8px 10px 10px;
}

.doc-props-aside .props-preview-field--preview .props-form-preview-thumb-wrap {
  pointer-events: none;
}

.doc-props-aside .props-form-group-body .props-form-row:first-child {
  border-top: 0;
}

.doc-props-aside .props-form-field-head {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  gap: 3px;
}

.doc-props-aside .props-form-field--compact .props-form-field-head {
  flex: unset;
  min-width: 0;
  max-width: none;
  width: 100%;
}

.doc-props-aside .props-form-field-label {
  font-size: 12px;
  font-weight: 600;
  line-height: 1.25;
  color: #1e293b;
}

.props-form-field-label.has-field-icon,
.node-config-field-label.has-field-icon,
.props-preview-label.has-field-icon {
  display: inline-flex;
  align-items: center;
  gap: 5px;
}

.field-label-icon {
  flex-shrink: 0;
  line-height: 1;
}

.props-form-field-label--interactive {
  cursor: pointer;
  border-radius: 4px;
}

.props-form-field-label--interactive:focus-visible {
  outline: 2px solid rgba(59, 130, 246, 0.45);
  outline-offset: 1px;
}

.props-field-info-popover {
  position: fixed;
  z-index: 2400;
  padding: 12px 14px;
  border: 1px solid rgba(148, 163, 184, 0.35);
  border-radius: 10px;
  background: #fff;
  box-shadow: 0 14px 36px rgba(15, 23, 42, 0.16);
  max-height: min(420px, calc(100vh - 24px));
  overflow: auto;
  box-sizing: border-box;
}

.props-field-info-popover.hidden {
  display: none;
}

.props-field-info-popover-title {
  font-size: 13px;
  font-weight: 700;
  line-height: 1.3;
  color: #0f172a;
  margin-bottom: 6px;
}

.props-field-info-popover-key {
  margin-bottom: 4px;
}

.props-field-info-popover-key code {
  font-family: ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", monospace;
  font-size: 11px;
  font-weight: 600;
  color: #334155;
  background: #f1f5f9;
  border-radius: 4px;
  padding: 2px 6px;
}

.props-field-info-popover-type {
  font-size: 10px;
  font-weight: 600;
  letter-spacing: 0.02em;
  text-transform: uppercase;
  color: #94a3b8;
  margin-bottom: 8px;
}

.props-field-info-popover-hint {
  margin: 0 0 10px;
  font-size: 12px;
  line-height: 1.45;
  color: #475569;
  white-space: pre-wrap;
}

.props-field-info-popover-enum-title {
  font-size: 11px;
  font-weight: 700;
  color: #64748b;
  margin-bottom: 4px;
}

.props-field-info-popover-enum-list {
  margin: 0;
  padding-left: 16px;
  font-size: 11px;
  line-height: 1.45;
  color: #334155;
  display: grid;
  gap: 3px;
}

.field-label-icon--runtime-cron,
.field-label-icon--runtime-cron-schedule,
.field-label-icon--runtime-heartbeat,
.field-label-icon--runtime-commands,
.field-label-icon--runtime-load-always {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 14px;
  height: 14px;
  border-radius: 4px;
  line-height: 0;
}

.field-label-icon--runtime-load-always {
  color: #2563eb;
  background: #dbeafe;
  border: 1px solid rgba(96, 165, 250, 0.45);
}

.field-label-icon--runtime-cron,
.field-label-icon--runtime-cron-schedule {
  color: #c2410c;
  background: #ffedd5;
  border: 1px solid rgba(251, 146, 60, 0.45);
}

.field-label-icon--runtime-heartbeat {
  color: #be123c;
  background: #ffe4e6;
  border: 1px solid rgba(251, 113, 133, 0.45);
}

.field-label-icon--runtime-commands {
  color: #047857;
  background: #d1fae5;
  border: 1px solid rgba(52, 211, 153, 0.45);
}

.field-label-icon .menu-runtime-marker-svg {
  width: 10px;
  height: 10px;
}

.field-label-text {
  min-width: 0;
}

.doc-props-aside .props-form-field--compact .props-form-field-label {
  font-size: 11px;
  font-weight: 500;
  color: #475569;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
  width: 100%;
}

.doc-props-aside .props-form-field-label.is-required::after {
  content: " *";
  color: #dc2626;
  font-weight: 700;
}

.doc-props-aside .props-form-field-key {
  display: inline-block;
  padding: 1px 6px;
  border-radius: 5px;
  background: #f1f5f9;
  border: 1px solid rgba(148, 163, 184, 0.28);
  font-family: ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", monospace;
  font-size: 9px;
  font-weight: 600;
  line-height: 1.35;
  color: #64748b;
}

.doc-props-aside .props-form-field-hint {
  margin: -2px 0 0;
  font-size: 10px;
  line-height: 1.35;
  color: #94a3b8;
}

.doc-props-aside .props-form-key-input,
.doc-props-aside input.props-form-value {
  width: 100%;
  padding: 7px 9px;
  border: 1px solid rgba(148, 163, 184, 0.38);
  border-radius: 8px;
  background: #fff;
  color: var(--text);
  font-size: 12px;
  font-weight: 500;
  line-height: 1.35;
  box-shadow: 0 1px 0 rgba(255, 255, 255, 0.8) inset;
  transition: border-color 0.15s ease, box-shadow 0.15s ease;
}

.doc-props-aside .props-form-field--compact .props-form-value,
.doc-props-aside .props-form-field--compact .props-form-key-input {
  width: 100%;
  min-width: 0;
  padding: 3px 7px;
  border-radius: 6px;
  font-size: 11px;
  line-height: 1.3;
  box-sizing: border-box;
}

.doc-props-aside.doc-slab-props .props-form-field--compact .props-form-value,
.doc-props-aside.doc-slab-props .props-form-field--compact .props-form-key-input {
  border: 1px solid rgba(148, 163, 184, 0.38);
  border-radius: 6px;
  background: #fff;
  padding: 3px 7px;
}

.doc-props-aside .props-form-field--compact input.props-form-value.is-locked {
  background: #f8fafc;
  color: #64748b;
  border-color: rgba(148, 163, 184, 0.28);
  cursor: default;
}

.doc-props-aside .props-form-key-input {
  color: #334155;
  font-weight: 500;
}

.doc-props-aside .props-form-key-input:focus,
.doc-props-aside input.props-form-value:focus,
.doc-props-aside select.props-form-value:focus,
.doc-props-aside textarea.props-form-value:focus {
  outline: none;
  border-color: #60a5fa;
  box-shadow: 0 0 0 3px rgba(59, 130, 246, 0.14);
}

.doc-props-aside .props-form-value-wrap {
  display: flex;
  flex-direction: column;
  gap: 6px;
  width: 100%;
  min-width: 0;
}

.doc-props-aside .props-form-value-wrap--boolean {
  align-items: flex-start;
}

.doc-props-aside .props-form-value-wrap--url .props-form-url-input-row {
  display: flex;
  align-items: center;
  gap: 6px;
  width: 100%;
  min-width: 0;
}

.doc-props-aside .props-form-value-wrap--url .props-form-url-input-row .props-form-value {
  flex: 1 1 auto;
  min-width: 0;
}

.doc-props-aside .props-form-url-open-btn {
  flex: 0 0 auto;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 28px;
  height: 28px;
  padding: 0;
  border: 1px solid rgba(148, 163, 184, 0.38);
  border-radius: 6px;
  background: #fff;
  color: #64748b;
  cursor: pointer;
}

.doc-props-aside .props-form-field--compact .props-form-url-open-btn {
  width: 24px;
  height: 24px;
  border-radius: 5px;
}

.doc-props-aside .props-form-url-open-btn:not(:disabled):hover,
.doc-props-aside .props-form-url-open-btn:not(:disabled):focus-visible {
  color: var(--accent);
  border-color: rgba(59, 130, 246, 0.45);
  background: rgba(59, 130, 246, 0.06);
  outline: none;
}

.doc-props-aside .props-form-url-open-btn:disabled {
  opacity: 0.45;
  cursor: default;
}

.doc-props-aside .props-form-url-open-icon {
  width: 14px;
  height: 14px;
  display: block;
}

.doc-props-aside .props-form-field--compact .props-form-url-open-icon {
  width: 12px;
  height: 12px;
}

.doc-props-aside select.props-form-value,
.doc-props-aside textarea.props-form-value {
  width: 100%;
  padding: 7px 9px;
  border: 1px solid rgba(148, 163, 184, 0.38);
  border-radius: 8px;
  background: #fff;
  color: var(--text);
  font-size: 12px;
  font-weight: 500;
  line-height: 1.35;
  box-shadow: 0 1px 0 rgba(255, 255, 255, 0.8) inset;
  box-sizing: border-box;
}

.doc-props-aside .props-form-field--compact select.props-form-value,
.doc-props-aside .props-form-field--compact textarea.props-form-value {
  padding: 3px 7px;
  border-radius: 6px;
  font-size: 11px;
  line-height: 1.3;
}

.doc-props-aside textarea.props-form-value {
  resize: vertical;
  min-height: 52px;
}

.doc-props-aside .props-form-bool-label {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  font-size: 11px;
  font-weight: 500;
  color: #334155;
  cursor: pointer;
}

.doc-props-aside .props-form-value--bool {
  width: 14px;
  height: 14px;
  margin: 0;
  accent-color: #3b82f6;
}

.doc-props-aside .props-form-picker {
  display: flex;
  flex-direction: column;
  gap: 6px;
  width: 100%;
}

.doc-props-aside .props-form-picker-actions {
  display: flex;
  justify-content: flex-end;
  gap: 6px;
}

.doc-props-aside .props-form-picker-open {
  width: 28px;
  height: 28px;
  padding: 0;
  border: 1px solid rgba(148, 163, 184, 0.38);
  border-radius: 6px;
  background: #fff;
  color: #334155;
  font-size: 14px;
  line-height: 1;
  cursor: pointer;
}

.doc-props-aside .props-form-picker-open:hover:not(:disabled) {
  border-color: #93c5fd;
  background: #eff6ff;
  color: #1d4ed8;
}

.doc-props-aside .props-form-picker-open:disabled {
  opacity: 0.4;
  cursor: default;
}

.doc-props-aside .props-form-picker-note {
  margin: 0;
  font-size: 10px;
  color: #94a3b8;
}

.doc-props-aside .props-form-link-manual,
.doc-props-aside .props-form-file-manual {
  margin-top: 0;
}

.doc-props-aside .props-form-catalog-missing {
  margin: 0;
  padding: 6px 8px;
  border-radius: 6px;
  background: #f8fafc;
  border: 1px dashed rgba(148, 163, 184, 0.45);
  font-size: 11px;
  line-height: 1.35;
  color: #64748b;
}

.doc-props-aside .props-form-catalog-warn {
  margin: 6px 0 0;
  font-size: 11px;
  line-height: 1.35;
  color: #b45309;
}

.doc-props-aside .props-form-color-custom-wrap {
  display: flex;
  flex-direction: column;
  gap: 4px;
  margin-top: 6px;
}

.doc-props-aside .props-form-color-custom-label {
  font-size: 11px;
  color: #64748b;
}

.doc-props-aside .props-form-field--cron-schedule {
  grid-template-columns: minmax(0, 1fr);
  align-items: stretch;
  gap: 0;
  padding: 6px 10px 10px;
}

.doc-props-aside .props-form-field--cron-schedule .props-form-value-wrap--cron-schedule {
  width: 100%;
}

.doc-props-aside .props-form-value-wrap--cron-schedule {
  display: flex;
  flex-direction: column;
  gap: 8px;
  width: 100%;
}

.doc-props-aside .props-form-runtime-recurring,
.doc-props-aside .props-form-runtime-scheduled {
  display: flex;
  flex-direction: column;
  gap: 8px;
  width: 100%;
}

.doc-props-aside .props-form-runtime-recurring.hidden,
.doc-props-aside .props-form-runtime-scheduled.hidden {
  display: none;
}

.doc-props-aside .props-form-runtime-scheduled .props-form-value:disabled,
.doc-props-aside .props-form-runtime-scheduled select:disabled {
  opacity: 0.55;
  cursor: not-allowed;
}

.doc-props-aside .props-form-value-wrap--runtime-schedule-type {
  width: 100%;
}

.doc-props-aside .props-form-runtime-schedule-type {
  width: 100%;
}

.doc-props-aside .props-form-cron-intro {
  margin: 0 0 2px;
  font-size: 10px;
  line-height: 1.45;
  color: #64748b;
}

.doc-props-aside .props-form-cron-mode {
  width: 100%;
  margin: 0;
}

.doc-props-aside .props-form-cron-panel {
  display: none;
  width: 100%;
}

.doc-props-aside .props-form-cron-panel.is-active {
  display: flex;
  flex-direction: column;
  gap: 8px;
  width: 100%;
  padding-top: 2px;
}

.doc-props-aside .props-form-cron-panel-row {
  display: grid;
  grid-template-columns: minmax(0, 1fr) minmax(0, 1fr);
  gap: 6px;
  width: 100%;
}

.doc-props-aside .props-form-cron-weekdays {
  display: flex;
  flex-wrap: wrap;
  gap: 4px;
  margin: 0;
}

.doc-props-aside .props-form-cron-weekday-label {
  display: inline-flex;
  align-items: center;
  gap: 3px;
  padding: 4px 6px;
  border-radius: 6px;
  border: 1px solid rgba(148, 163, 184, 0.35);
  background: rgba(248, 250, 252, 0.85);
  font-size: 11px;
  line-height: 1;
  color: #334155;
  cursor: pointer;
  user-select: none;
}

.doc-props-aside .props-form-cron-weekday-label:has(input:checked) {
  border-color: rgba(14, 116, 144, 0.45);
  background: rgba(224, 242, 254, 0.95);
  color: #0f172a;
}

.doc-props-aside .props-form-cron-weekday {
  margin: 0;
}

.doc-props-aside .props-form-cron-timezone {
  width: 100%;
}

.doc-props-aside .props-form-cron-timezone:disabled {
  opacity: 0.55;
  cursor: not-allowed;
}

.doc-props-aside .props-form-cron-time {
  min-width: 0;
}

.doc-props-aside .props-form-cron-hint {
  margin: 4px 0 0;
  padding-top: 4px;
  border-top: 1px solid rgba(148, 163, 184, 0.2);
  font-size: 10px;
  line-height: 1.35;
  color: #64748b;
}

.doc-props-aside .props-form-cron-expression {
  font-family: ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", monospace;
  font-size: 11px;
  width: 100%;
}

.doc-props-aside .props-form-color-custom {
  width: 100%;
}

.doc-props-aside .props-form-catalog-add {
  margin-top: 8px;
}

.doc-props-aside .props-form-catalog-add-toggle {
  padding: 0;
  border: 0;
  background: transparent;
  font-size: 11px;
  font-weight: 600;
  color: #2563eb;
  cursor: pointer;
}

.doc-props-aside .props-form-catalog-add-toggle:hover {
  color: #1d4ed8;
  text-decoration: underline;
}

.doc-props-aside .props-form-catalog-add-form {
  display: flex;
  flex-direction: column;
  gap: 6px;
  margin-top: 6px;
  padding: 8px;
  border: 1px solid rgba(148, 163, 184, 0.35);
  border-radius: 6px;
  background: #f8fafc;
}

.doc-props-aside .props-form-catalog-add-form.hidden {
  display: none;
}

.doc-props-aside .props-form-catalog-add-hint {
  margin: 0;
  font-size: 10px;
  line-height: 1.35;
  color: #64748b;
}

.doc-props-aside .props-form-catalog-add-field {
  display: flex;
  flex-direction: column;
  gap: 3px;
  font-size: 11px;
  color: #475569;
}

.doc-props-aside .props-form-catalog-add-actions {
  display: flex;
  gap: 6px;
}

.doc-props-aside .props-form-catalog-add-save,
.doc-props-aside .props-form-catalog-add-cancel {
  padding: 4px 10px;
  border-radius: 6px;
  font-size: 11px;
  cursor: pointer;
}

.doc-props-aside .props-form-catalog-add-save {
  border: 1px solid #2563eb;
  background: #2563eb;
  color: #fff;
}

.doc-props-aside .props-form-catalog-add-cancel {
  border: 1px solid #cbd5e1;
  background: #fff;
  color: #475569;
}

.doc-props-aside .props-form-tags-list {
  display: flex;
  flex-direction: column;
  gap: 8px;
  max-height: 180px;
  overflow: auto;
  padding: 6px 8px;
  border: 1px solid rgba(148, 163, 184, 0.32);
  border-radius: 6px;
  background: #fff;
}

.awn-databases-create-taxonomy-wrap {
  display: flex;
  flex-direction: column;
  gap: 5px;
  margin: 0 0 4px;
  padding: 7px 9px;
  border-radius: 8px;
  border: 1px solid rgba(124, 58, 237, 0.22);
  background: rgba(245, 243, 255, 0.65);
}

.awn-databases-create-taxonomy-wrap.hidden {
  display: none;
}

.awn-databases-create-taxonomy-wrap .agents-registry-create-field {
  margin-bottom: 0;
}

.awn-databases-create-taxonomy-wrap .awn-databases-create-checkbox-field {
  margin-top: 0;
}

.awn-databases-modal-card .slug-input-row .slug-unlink-btn {
  z-index: 2;
}

.awn-databases-create-group-presets-wrap {
  display: flex;
  flex-direction: column;
  gap: 8px;
  margin-bottom: 4px;
}

.awn-databases-create-group-presets-wrap.hidden {
  display: none;
}

.awn-databases-create-group-presets .awn-databases-create-group-preset-btn[disabled],
.awn-databases-create-group-presets .awn-databases-create-group-preset-btn.is-disabled {
  opacity: 0.55;
  cursor: not-allowed;
  pointer-events: none;
}

.menu-awn-databases-store-group--builtin > .menu-awn-databases-store-group-head {
  border-left: 3px solid #7c3aed;
  background: linear-gradient(90deg, rgba(124, 58, 237, 0.1), rgba(124, 58, 237, 0.02) 72%);
}

.menu-awn-databases-store-group--builtin > .menu-awn-databases-store-group-head .menu-awn-databases-store-group-open-btn {
  color: #5b21b6;
}

.menu-awn-databases-store-builtin-badge {
  flex: 0 0 auto;
  margin-left: 6px;
  padding: 1px 5px;
  border-radius: 999px;
  border: 1px solid rgba(124, 58, 237, 0.28);
  background: rgba(237, 233, 254, 0.95);
  color: #6d28d9;
  font-size: 9px;
  font-weight: 700;
  letter-spacing: 0.04em;
  text-transform: uppercase;
  line-height: 1.3;
}

.props-form-taxonomy-section {
  display: grid;
  gap: 6px;
  padding: 6px 0;
  border-top: 1px solid var(--border-subtle, rgba(148, 163, 184, 0.25));
}

.props-form-taxonomy-section-head {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 6px;
  min-height: 0;
}

.doc-props-aside .props-form-taxonomy-block,
.doc-props-aside .props-form-taxonomy-list-block,
.doc-props-aside .props-form-object-group-block {
  display: flex;
  flex-direction: column;
  gap: 0;
  padding: 0;
  border: 1px solid rgba(148, 163, 184, 0.32);
  border-radius: 6px;
  background: #fff;
  overflow: hidden;
}

.doc-props-aside .props-form-taxonomy-block .props-form-taxonomy-section-head,
.doc-props-aside .props-form-taxonomy-list-block .props-form-taxonomy-section-head,
.doc-props-aside .props-form-object-group-block .props-form-taxonomy-section-head {
  margin: 0;
  padding: 5px 8px;
  border-bottom: 1px solid rgba(124, 58, 237, 0.18);
  background: rgba(245, 243, 255, 0.95);
}

.doc-props-aside .props-form-object-group-body {
  display: flex;
  flex-direction: column;
  gap: 0;
  padding: 0;
}

.doc-props-aside .props-form-object-group-body .props-form-object-group-subfield {
  border-top: 1px solid rgba(241, 245, 249, 0.95);
  margin: 0;
  padding: 4px 8px;
  min-height: 30px;
  align-items: start;
}

.doc-props-aside .props-form-object-group-body .props-form-object-group-subfield:first-child {
  border-top: 0;
}

.doc-props-aside .props-form-object-group-body .props-form-value-wrap--radio .props-form-radio-list,
.doc-props-aside .props-form-object-group-body .props-form-value-wrap--enum-checkbox .props-form-enum-checkbox-list {
  display: flex;
  flex-direction: column;
  flex-wrap: nowrap;
  align-items: flex-start;
  gap: 4px;
  width: 100%;
}

.doc-props-aside .props-form-object-group-body .props-form-radio-label,
.doc-props-aside .props-form-object-group-body .props-form-enum-checkbox-label {
  width: 100%;
  box-sizing: border-box;
}

.doc-props-aside .props-form-object-group-body .props-form-value,
.doc-props-aside .props-form-object-group-body select.props-form-value,
.doc-props-aside .props-form-object-group-body textarea.props-form-value {
  width: 100%;
  max-width: 100%;
  box-sizing: border-box;
}

.doc-props-aside .props-form-taxonomy-block .props-form-taxonomy-section-head .props-form-catalog-group-title,
.doc-props-aside .props-form-taxonomy-list-block .props-form-taxonomy-section-head .props-form-catalog-group-title {
  margin: 0;
  padding-top: 0;
  line-height: 1.2;
}

.doc-props-aside .props-form-taxonomy-block .props-form-taxonomy-section-head .props-form-taxonomy-add-btn {
  width: 22px;
  min-width: 22px;
  height: 22px;
  font-size: 14px;
}

.doc-props-aside .props-form-taxonomy-block > .props-form-taxonomy-add:not(.is-open) {
  display: none;
}

.doc-props-aside .props-form-taxonomy-block > .props-form-taxonomy-add.is-open {
  padding: 8px 8px 0;
  background: #f8fafc;
  border-bottom: 1px solid rgba(148, 163, 184, 0.22);
}

.doc-props-aside .props-form-taxonomy-block .props-form-tags-list,
.doc-props-aside .props-form-taxonomy-list-block .props-form-tags-list {
  max-height: 160px;
  margin: 0;
  padding: 6px 8px 8px;
  border: 0;
  border-radius: 0;
  background: transparent;
  overflow-x: auto;
  overflow-y: auto;
}

.doc-props-aside .props-form-taxonomy-block .props-form-tags-list--taxonomy-tree .props-form-tag-option {
  white-space: nowrap;
  min-width: max-content;
}

.doc-props-aside .props-form-taxonomy-block .props-form-tags-list--taxonomy-tree .props-form-tag-option span {
  flex: 0 0 auto;
}

.doc-props-aside .props-form-taxonomy-block .props-form-taxonomy-add-form,
.doc-props-aside .props-form-taxonomy-list-block .props-form-taxonomy-add-form,
.doc-props-aside .props-form-taxonomy-block .props-form-catalog-add-form.props-form-taxonomy-add-form {
  margin: 0;
  padding: 0 0 8px;
  border: 0;
  border-radius: 0;
  background: transparent;
  box-shadow: none;
}

.doc-props-aside .props-form-taxonomy-block .props-form-taxonomy-value-select {
  width: calc(100% - 16px);
  max-width: calc(100% - 16px);
  margin: 6px 8px 8px;
}

.doc-props-aside .props-form-taxonomy-add-form .props-form-taxonomy-slug-row {
  position: relative;
  display: block;
  width: 100%;
  min-width: 0;
}

.doc-props-aside .props-form-taxonomy-add-form .props-form-taxonomy-slug-row .slug-input {
  display: block;
  width: 100%;
  box-sizing: border-box;
  height: 22px;
  margin: 0;
  padding: 2px 30px 2px 7px;
  font-size: 12px;
  line-height: 1.3;
}

.doc-props-aside .props-form-taxonomy-add-form .props-form-taxonomy-slug-row .slug-unlink-btn {
  position: absolute;
  top: 50%;
  right: 4px;
  transform: translateY(-50%);
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 22px;
  min-width: 22px;
  height: 20px;
  padding: 0;
  margin: 0;
  font-size: 13px;
  line-height: 1;
}

.props-form-taxonomy-control-row {
  display: flex;
  align-items: stretch;
  gap: 6px;
}

.doc-props-aside .props-form-taxonomy-control-row .props-form-value {
  flex: 1 1 auto;
  min-width: 0;
}

.props-form-taxonomy-add-btn {
  flex: 0 0 auto;
  width: 28px;
  min-width: 28px;
  height: 28px;
  margin: 0;
  padding: 0;
  border: 1px solid rgba(124, 58, 237, 0.28);
  border-radius: 6px;
  background: rgba(237, 233, 254, 0.9);
  color: #6d28d9;
  font-size: 16px;
  font-weight: 600;
  line-height: 1;
  cursor: pointer;
}

.props-form-taxonomy-add-btn:hover,
.props-form-taxonomy-add-btn:focus-visible {
  border-color: rgba(124, 58, 237, 0.45);
  background: #ede9fe;
  color: #5b21b6;
}

.props-form-taxonomy-add-btn:disabled {
  opacity: 0.45;
  cursor: not-allowed;
}

.doc-props-aside .props-form-taxonomy-add-form {
  margin-top: 0;
}

.props-form-taxonomy-add.is-loading .props-form-taxonomy-add-form {
  opacity: 0.72;
  pointer-events: none;
}

.props-form-taxonomy-add-spinner {
  width: 14px;
  height: 14px;
  margin-left: 6px;
  vertical-align: middle;
  display: inline-block;
}

.doc-props-aside .props-form-catalog-add-save {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-width: 5.5rem;
}

.doc-props-aside .props-form-taxonomy-preview-select {
  color: #64748b;
  cursor: default;
}

.props-form-taxonomy-section:first-child {
  border-top: 0;
  padding-top: 0;
}

.doc-props-aside .props-form-catalog-group {
  display: flex;
  flex-direction: column;
  gap: 4px;
}

.doc-props-aside .props-form-catalog-group-title {
  font-size: 10px;
  font-weight: 600;
  letter-spacing: 0.04em;
  text-transform: uppercase;
  color: #64748b;
  padding-top: 2px;
}

.doc-props-aside .props-form-tags-extra-wrap {
  margin-top: 6px;
}

.doc-props-aside .props-form-tags-extra-label {
  display: flex;
  flex-direction: column;
  gap: 4px;
  font-size: 11px;
  color: #64748b;
}

.doc-props-aside .props-form-tags-extra {
  width: 100%;
  font-size: 12px;
}

.doc-props-aside .props-form-tag-option {
  display: flex;
  align-items: center;
  gap: 7px;
  font-size: 11px;
  line-height: 1.3;
  color: #334155;
  cursor: pointer;
}

.doc-props-aside .props-form-tag-option input {
  margin: 0;
  accent-color: #3b82f6;
}

.doc-props-aside select.props-form-value.is-locked,
.doc-props-aside textarea.props-form-value.is-locked,
.doc-props-aside .props-form-value.is-locked {
  background: #f8fafc;
  color: #64748b;
  border-color: rgba(148, 163, 184, 0.28);
  cursor: default;
}

.doc-props-aside .props-preview-list {
  display: flex;
  flex-direction: column;
}

.doc-props-aside .props-preview-field {
  display: flex;
  flex-direction: column;
  gap: 6px;
  padding: 10px 11px;
  border-top: 1px solid rgba(241, 245, 249, 0.95);
}

.doc-props-aside .props-preview-field--compact {
  flex-direction: row;
  align-items: baseline;
  gap: 8px;
  padding: 4px 10px;
  min-height: 26px;
}

.doc-props-aside .props-preview-field:first-child {
  border-top: 0;
}

.doc-props-aside .props-preview-field-head {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  gap: 3px;
}

.doc-props-aside .props-preview-label {
  font-size: 12px;
  font-weight: 600;
  line-height: 1.25;
  color: #1e293b;
}

.doc-props-aside .props-preview-field--compact .props-preview-label {
  flex: 0 0 38%;
  min-width: 0;
  font-size: 11px;
  font-weight: 500;
  color: #475569;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
}

.doc-props-aside .props-preview-key {
  display: inline-block;
  padding: 1px 6px;
  border-radius: 5px;
  background: #f1f5f9;
  border: 1px solid rgba(148, 163, 184, 0.28);
  font-family: ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", monospace;
  font-size: 9px;
  font-weight: 600;
  line-height: 1.35;
  color: #64748b;
}

.doc-props-aside .props-preview-value {
  margin: 0;
  padding: 7px 9px;
  font-size: 12px;
  font-weight: 400;
  line-height: 1.4;
  color: #334155;
  word-break: break-word;
  border: 1px solid rgba(148, 163, 184, 0.32);
  border-radius: 8px;
  background: #f8fafc;
}

.doc-props-aside .props-preview-field--compact .props-preview-value {
  flex: 1 1 auto;
  min-width: 0;
  padding: 0;
  border: 0;
  border-radius: 0;
  background: transparent;
  font-size: 11px;
  line-height: 1.3;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
}

.doc-props-aside .props-preview-value.is-empty {
  color: #94a3b8;
  font-style: italic;
}

.doc-props-aside .props-form-empty {
  margin: 0;
  padding: 14px 11px;
  font-size: 11px;
  line-height: 1.45;
  color: #94a3b8;
  text-align: center;
}

.doc-props-aside .props-form-actions {
  flex-direction: column;
  align-items: stretch;
  gap: 6px;
  margin: 0;
}

.doc-props-aside .props-form-actions-cluster {
  display: inline-flex;
  align-items: stretch;
  width: 100%;
  height: 28px;
  min-height: 28px;
  max-height: 28px;
  box-sizing: border-box;
  border: 1px solid rgba(148, 163, 184, 0.45);
  border-radius: 8px;
  background: #fff;
  overflow: hidden;
}

.doc-props-aside .props-form-cluster-btn {
  box-sizing: border-box;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  flex: 1 1 0;
  min-width: 0;
  height: 100%;
  margin: 0;
  padding: 5px 8px;
  border: 0;
  border-radius: 0;
  background: transparent;
  color: #64748b;
  font: inherit;
  font-size: 11px;
  font-weight: 600;
  line-height: 1.3;
  white-space: nowrap;
  cursor: pointer;
  transition: background 0.15s ease, color 0.15s ease;
}

.doc-props-aside .props-form-cluster-btn + .props-form-cluster-btn {
  border-left: 1px solid rgba(148, 163, 184, 0.45);
}

.doc-props-aside .props-form-cluster-btn:hover:not(:disabled):not(.active) {
  background: #f8fafc;
  color: #475569;
}

.doc-props-aside .props-form-cluster-btn.active {
  background: linear-gradient(180deg, #dbeafe 0%, #bfdbfe 100%);
  color: #1e3a8a;
}

.doc-props-aside .props-form-cluster-btn:first-child {
  color: #1e3a8a;
  background: linear-gradient(180deg, #eff6ff 0%, #dbeafe 100%);
}

.doc-props-aside .props-form-cluster-btn:first-child:hover:not(:disabled) {
  background: linear-gradient(180deg, #dbeafe 0%, #bfdbfe 100%);
  color: #1e3a8a;
}

.doc-props-aside .props-form-cluster-btn:disabled {
  opacity: 0.45;
  cursor: not-allowed;
}

.doc-props-aside .props-form-cluster-btn:focus-visible,
.doc-props-aside .props-form-schema-btn:focus-visible {
  outline: none;
  box-shadow: inset 0 0 0 2px rgba(59, 130, 246, 0.35);
}

.doc-props-aside .props-form-schema-btn {
  width: 100%;
  height: 28px;
  min-height: 28px;
}

.doc-props-aside .props-input {
  font-size: 11px;
  font-family: ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", monospace;
  min-height: 120px;
  padding: 10px;
  border: 1px solid rgba(148, 163, 184, 0.35);
  border-radius: 10px;
  background: #fff;
  margin-top: 8px;
  line-height: 1.45;
}

.doc-props-aside .doc-outline-content,
.doc-props-aside .doc-blocks-content,
.doc-props-aside .doc-links-content {
  width: 100%;
  box-sizing: border-box;
  border: 1px solid rgba(148, 163, 184, 0.32);
  border-radius: 12px;
  background: #fff;
  box-shadow: 0 1px 2px rgba(15, 23, 42, 0.04);
  padding: 8px;
}

.doc-props-aside .doc-block-btn {
  background: #f8fafc;
}

.doc-props-aside .doc-block-btn:hover {
  background: #eff6ff;
}

@media (max-width: 960px) {
  .doc-body-grid.has-props-aside {
    grid-template-columns: 1fr;
    grid-template-rows: minmax(0, 1fr) auto;
  }

  .doc-props-aside {
    border-left: 0;
    border-top: 1px solid var(--border);
    max-height: 40vh;
  }
}

.props-form-empty {
  margin: 0;
  font-size: 13px;
  color: var(--muted);
}

.props-form-actions {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
}

.props-form-btn {
  border: 1px solid var(--border);
  border-radius: 8px;
  background: var(--panel);
  color: var(--text);
  padding: 7px 12px;
  font-size: 13px;
  cursor: pointer;
}

.props-form-btn:hover {
  background: var(--panel-soft);
}

.props-form-btn-ghost {
  background: transparent;
  color: var(--muted);
}

.props-form-btn-ghost:hover {
  color: var(--text);
  background: var(--panel-soft);
}

.yaml-header {
  display: flex;
  align-items: center;
  justify-content: space-between;
  margin-bottom: 8px;
}

.main-actions-row {
  display: flex;
  gap: 8px;
}

.breadcrumbs {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 4px;
  min-width: 0;
  font-size: 12px;
  color: var(--muted);
}

.breadcrumb {
  padding: 2px 6px;
  border-radius: 6px;
  background: transparent;
  border: none;
  color: inherit;
  cursor: default;
  font: inherit;
}

.breadcrumb.is-link {
  cursor: pointer;
}

.breadcrumb.is-link:hover {
  background: var(--panel-soft);
  color: var(--text);
}

.breadcrumb.current {
  color: var(--text);
  font-weight: 600;
}

.breadcrumb-sep {
  opacity: 0.45;
  user-select: none;
}

.breadcrumbs.is-empty::before {
  content: "Выберите тему";
  color: var(--muted);
  font-size: 12px;
}

.content-header {
  display: block;
  margin-bottom: 10px;
}

.title-editor {
  margin-bottom: 0;
}

.title-label {
  display: block;
  color: var(--muted);
  font-size: 12px;
  margin-bottom: 6px;
}

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

.title-row .title-input,
.title-row .title-fixed-value {
  flex: 1;
  min-width: 0;
}

.danger-btn {
  border: 1px solid #ef4444;
  background: #fee2e2;
  color: #991b1b;
  border-radius: 8px;
  cursor: pointer;
}

.danger-btn:hover {
  background: #fecaca;
}

.title-input {
  flex: 1;
  width: 100%;
  min-width: 0;
  border: 1px solid var(--border);
  border-radius: 8px;
  background: var(--panel);
  color: var(--text);
  padding: 10px 12px;
  font-size: 15px;
}

.title-input:disabled {
  opacity: 1;
  color: var(--muted);
  background: #f8fafc;
  cursor: default;
}

.title-media-ext {
  flex-shrink: 0;
  font-size: 15px;
  font-weight: 600;
  color: var(--muted);
  user-select: none;
}

.title-fixed-value {
  display: flex;
  align-items: center;
  gap: 8px;
  flex: 1;
  width: 100%;
  min-width: 0;
  border: 1px solid var(--border);
  border-radius: 8px;
  background: #f8fafc;
  color: var(--muted);
  padding: 8px 12px;
  user-select: text;
  cursor: default;
}

.title-fixed-text {
  flex: 1;
  min-width: 0;
  font-size: 22px;
  font-weight: 600;
  line-height: 1.3;
  color: var(--text);
  font-family: ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace;
}

.title-fixed-lock {
  flex-shrink: 0;
  font-size: 14px;
  line-height: 1;
  color: var(--muted);
  opacity: 0.75;
}

.save-btn {
  border: 1px solid var(--accent);
  background: #dbeafe;
  color: #1e3a8a;
  border-radius: 8px;
  padding: 0 14px;
  cursor: pointer;
}

.save-btn:hover {
  background: #bfdbfe;
}

.save-btn .save-btn-lamp {
  width: 8px;
  height: 8px;
  border-radius: 999px;
  flex-shrink: 0;
  background: #cbd5e1;
  box-shadow: inset 0 0 0 1px rgba(148, 163, 184, 0.45);
}

.save-btn.is-dirty .save-btn-lamp {
  background: #ef4444;
  box-shadow: 0 0 0 4px rgba(239, 68, 68, 0.16);
}

.save-btn.is-saved .save-btn-lamp {
  background: #22c55e;
  box-shadow: 0 0 0 4px rgba(34, 197, 94, 0.16);
}

.file-path {
  display: contents;
}

.breadcrumb-part {
  color: var(--text);
  padding: 0;
  font-weight: 500;
}

.breadcrumb-sep {
  color: var(--muted);
  font-weight: 700;
}

.menu-folder-row .menu-folder,
.menu-item-row .menu-item {
  flex: 1;
  min-width: 0;
  width: auto;
}

.menu-bookmarks-empty {
  color: var(--muted);
  font-size: 12px;
  line-height: 1.45;
  padding: 8px 6px;
}

.add-node-btn {
  width: 22px;
  height: 22px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  align-self: center;
  margin: 0;
  padding: 0;
  border: 1px solid var(--border);
  border-radius: 5px;
  background: var(--panel);
  color: var(--muted);
  cursor: pointer;
  flex: 0 0 22px;
  font-size: 14px;
  font-weight: 600;
  line-height: 1;
  opacity: 0.2;
  transition: opacity 0.15s ease, background-color 0.15s ease, color 0.15s ease;
}

.add-node-btn:hover {
  background: var(--panel-soft);
  color: var(--text);
  opacity: 1;
}

.add-node-btn--adopt {
  width: auto;
  min-width: 22px;
  padding: 0 2px;
  flex: 0 0 auto;
  font-size: 9px;
  font-weight: 400;
  letter-spacing: -0.35px;
}

.add-node-btn--muted {
  opacity: 0.45;
}

.add-node-btn--muted:hover {
  opacity: 1;
}

.node-settings-btn {
  width: 22px;
  height: 22px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  align-self: center;
  margin: 0;
  padding: 0;
  border: 1px solid var(--border);
  border-radius: 5px;
  background: var(--panel);
  color: var(--muted);
  cursor: pointer;
  flex: 0 0 22px;
  font-size: 13px;
  line-height: 1;
  opacity: 0.2;
  transition: opacity 0.15s ease, background-color 0.15s ease, color 0.15s ease;
}

#menu .node-settings-btn {
  display: none;
}

.node-settings-btn:hover {
  background: var(--panel-soft);
  color: var(--text);
  opacity: 1;
}

.menu-item-row:hover .node-settings-btn,
.menu-item-row:hover .bookmark-btn,
.menu-folder-row:hover .node-settings-btn,
.menu-folder-row:hover .bookmark-btn,
.menu-folder-row:hover .add-node-btn,
.menu-folder-row--adopt:hover .add-node-btn,
.menu-folder-row:hover .menu-pin-branch-btn {
  opacity: 1;
}

.menu-card-actions {
  position: absolute;
  top: 6px;
  right: 6px;
  display: flex;
  gap: 4px;
  z-index: 2;
}

.menu-card-actions .bookmark-btn,
.menu-card-actions .node-settings-btn {
  opacity: 1;
  background: rgba(255, 255, 255, 0.92);
  box-shadow: 0 1px 2px rgba(15, 23, 42, 0.12);
}

.menu-card:not(:hover) .menu-card-actions .bookmark-btn,
.menu-card:not(:hover) .menu-card-actions .node-settings-btn {
  opacity: 0.35;
}

.menu-card:hover .menu-card-actions .bookmark-btn,
.menu-card:hover .menu-card-actions .node-settings-btn {
  opacity: 1;
}

.bookmark-btn {
  width: 22px;
  height: 22px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  align-self: center;
  margin: 0;
  padding: 0;
  border: 1px solid var(--border);
  border-radius: 5px;
  background: var(--panel);
  color: var(--muted);
  cursor: pointer;
  flex: 0 0 22px;
  font-size: 13px;
  line-height: 1;
  opacity: 0.2;
  transition: opacity 0.15s ease, background-color 0.15s ease, color 0.15s ease;
}

.bookmark-btn:hover,
.bookmark-btn.bookmarked {
  opacity: 1;
}

.bookmark-btn:hover {
  background: var(--panel-soft);
  color: var(--text);
}

.bookmark-btn.bookmarked {
  color: #d97706;
  border-color: #fcd34d;
  background: #fffbeb;
}

.editor-header {
  display: flex;
  align-items: center;
  justify-content: space-between;
  margin-bottom: 8px;
  gap: 12px;
}

.editor-header-actions {
  display: flex;
  align-items: center;
  gap: 8px;
  flex-shrink: 0;
}

.save-system-btn {
  flex: 0 0 auto;
  height: 42px;
  padding: 0 18px;
  font-weight: 600;
  white-space: nowrap;
}

.editor-view-cluster {
  display: inline-flex;
  align-items: stretch;
  flex-shrink: 0;
  box-sizing: border-box;
  height: 28px;
  min-height: 28px;
  max-height: 28px;
  gap: 0;
  border: 1px solid rgba(148, 163, 184, 0.45);
  border-radius: 8px;
  background: #fff;
  overflow: visible;
}

.editor-view-cluster.hidden {
  display: none;
}

.editor-view-toggle {
  display: inline-flex;
  align-items: stretch;
  height: 100%;
  gap: 0;
  border: 0;
  border-radius: 0;
  background: transparent;
  overflow: visible;
}

.editor-view-toggle.hidden {
  display: none;
}

.editor-view-btn,
.editor-view-cluster .editor-cluster-btn {
  box-sizing: border-box;
  position: relative;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: auto;
  min-width: 30px;
  height: 100%;
  min-height: 0;
  margin: 0;
  padding: 0 8px;
  border: 0;
  border-radius: 0;
  background: transparent;
  color: #64748b;
  cursor: pointer;
  flex-shrink: 0;
  transition: background 0.15s ease, color 0.15s ease;
}

.editor-view-btn + .editor-view-btn,
.editor-view-cluster .editor-cluster-btn {
  border-left: 1px solid rgba(148, 163, 184, 0.45);
}

.editor-view-cluster .editor-view-toggle:not(.hidden) + .editor-cluster-btn {
  border-left: 1px solid rgba(148, 163, 184, 0.45);
}

.editor-view-cluster.is-line-numbers-only .editor-cluster-btn:first-of-type {
  border-left: 0;
}

.editor-view-btn-icon {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  flex: 0 0 14px;
  width: 14px;
  height: 14px;
  line-height: 0;
}

.editor-view-btn-icon svg {
  width: 14px;
  height: 14px;
  display: block;
  flex-shrink: 0;
}

.editor-view-btn:hover:not(:disabled):not(.active),
.editor-view-cluster .editor-cluster-btn:hover:not(:disabled):not(.active) {
  background: #f8fafc;
  color: var(--text);
}

.editor-line-numbers-btn.active,
.editor-file-find-btn.active,
.editor-view-btn.active {
  background: linear-gradient(180deg, #dbeafe 0%, #bfdbfe 100%);
  color: #1e3a8a;
}

.editor-view-cluster .editor-view-toggle:not(.hidden) .editor-view-btn:first-child.active {
  border-top-left-radius: 6px;
  border-bottom-left-radius: 6px;
}

.editor-view-cluster .editor-cluster-btn:last-child.active,
.editor-view-cluster .editor-cluster-btn:last-child:focus-within {
  border-top-right-radius: 6px;
  border-bottom-right-radius: 6px;
}

.editor-view-cluster.is-line-numbers-only .editor-cluster-btn:first-of-type.active {
  border-top-left-radius: 6px;
  border-bottom-left-radius: 6px;
}

.editor-view-cluster:not(:has(.editor-cluster-btn:not(.hidden)))
  .editor-view-toggle:not(.hidden)
  .editor-view-btn:last-child.active {
  border-top-right-radius: 6px;
  border-bottom-right-radius: 6px;
}

.editor-view-cluster:has(.editor-cluster-btn:not(.hidden))
  .editor-view-toggle:not(.hidden)
  .editor-view-btn:last-child.active {
  border-top-right-radius: 0;
  border-bottom-right-radius: 0;
}

.editor-view-btn:disabled,
.editor-view-cluster .editor-cluster-btn:disabled {
  opacity: 0.45;
  cursor: not-allowed;
}

.editor-view-btn[data-tooltip]::after,
.editor-cluster-btn[data-tooltip]::after {
  content: attr(data-tooltip);
  position: absolute;
  bottom: calc(100% + 8px);
  left: 50%;
  z-index: 50;
  transform: translateX(-50%) translateY(2px);
  padding: 5px 9px;
  border-radius: 8px;
  background: #1e293b;
  color: #f8fafc;
  font-size: 11px;
  font-weight: 600;
  line-height: 1.2;
  white-space: nowrap;
  pointer-events: none;
  opacity: 0;
  visibility: hidden;
  transition: opacity 0.12s ease, transform 0.12s ease, visibility 0.12s ease;
  box-shadow: 0 6px 16px rgba(15, 23, 42, 0.18);
}

.editor-view-btn[data-tooltip]::before,
.editor-cluster-btn[data-tooltip]::before {
  content: "";
  position: absolute;
  bottom: calc(100% + 2px);
  left: 50%;
  z-index: 50;
  transform: translateX(-50%);
  border: 5px solid transparent;
  border-top-color: #1e293b;
  pointer-events: none;
  opacity: 0;
  visibility: hidden;
  transition: opacity 0.12s ease, visibility 0.12s ease;
}

#editor-view-wysiwyg-btn[data-tooltip]::after {
  max-width: 280px;
  white-space: normal;
  text-align: center;
}

.editor-view-btn:disabled[data-tooltip],
.editor-view-cluster .editor-cluster-btn:disabled[data-tooltip] {
  pointer-events: auto;
}

.editor-view-btn[data-tooltip]:hover::after,
.editor-view-btn[data-tooltip]:focus-visible::after,
.editor-cluster-btn[data-tooltip]:hover::after,
.editor-cluster-btn[data-tooltip]:focus-visible::after,
.editor-view-btn[data-tooltip]:hover::before,
.editor-view-btn[data-tooltip]:focus-visible::before,
.editor-cluster-btn[data-tooltip]:hover::before,
.editor-cluster-btn[data-tooltip]:focus-visible::before {
  opacity: 1;
  visibility: visible;
}

.editor-view-btn[data-tooltip]:hover::after,
.editor-view-btn[data-tooltip]:focus-visible::after,
.editor-cluster-btn[data-tooltip]:hover::after,
.editor-cluster-btn[data-tooltip]:focus-visible::after {
  transform: translateX(-50%) translateY(0);
}

.editor-view-btn:focus-visible,
.editor-view-cluster .editor-cluster-btn:focus-visible {
  outline: none;
  box-shadow: inset 0 0 0 2px rgba(59, 130, 246, 0.35);
}

.editor-label {
  color: var(--muted);
  font-size: 12px;
}

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

.editor-surface {
  display: flex;
  flex-direction: column;
  flex: 1;
  min-width: 0;
  min-height: 0;
  width: 100%;
}

.editor-surface .editor-code-wrap,
.editor-surface .editor-wysiwyg-wrap,
.editor-surface .file-content-preview {
  flex: 1;
  min-width: 0;
  min-height: 0;
  max-width: 100%;
}

.editor-wysiwyg-wrap {
  display: flex;
  flex-direction: column;
  min-height: 0;
  overflow: hidden;
}

.editor-wysiwyg-wrap .toastui-editor-defaultUI {
  display: flex;
  flex-direction: column;
  flex: 1;
  min-height: 0;
  width: 100%;
  max-width: 100%;
  border: 0;
  border-radius: 0;
  box-sizing: border-box;
  position: relative;
  isolation: isolate;
}

.editor-wysiwyg-wrap .toastui-editor-defaultUI-toolbar {
  flex-shrink: 0;
  width: 100%;
  max-width: 100%;
  margin: 0;
  padding-left: 0;
  padding-right: 0;
  border-radius: 0;
  box-sizing: border-box;
}

/* WYSIWYG: внешний скролл doc-slab-content (класс is-doc-editor-scroll-host из JS) */
.doc-body-main > .doc-slab-content.is-doc-editor-scroll-host {
  flex: 1 1 0;
  min-height: 0;
  overflow-x: clip;
  overflow-y: auto;
  overscroll-behavior: contain;
  -webkit-overflow-scrolling: touch;
  scrollbar-gutter: stable;
}

.doc-slab-content.is-doc-editor-scroll-host .doc-slab-main:has(> .editor-surface:not(.hidden)),
.doc-slab-content.is-doc-editor-scroll-host .doc-slab-main > .editor-surface:not(.hidden) {
  overflow: visible;
}

.doc-slab-content.is-doc-editor-scroll-host .editor-wysiwyg-wrap:not(.hidden) {
  overflow: visible;
}

.doc-slab-content.is-doc-editor-scroll-host
  .editor-wysiwyg-wrap:not(.hidden)
  .toastui-editor-defaultUI {
  flex-direction: column-reverse;
}

/* WYSIWYG: toolbar внизу doc-slab-content (над status-bar), title-bar уезжает при скролле */
.doc-slab-content.is-doc-editor-scroll-host .editor-wysiwyg-wrap.is-editor-toolbar-bottom-docked {
  padding-bottom: var(--editor-wysiwyg-toolbar-dock-height, 46px);
  box-sizing: border-box;
}

.doc-slab-content.is-doc-editor-scroll-host
  .editor-wysiwyg-wrap:not(.hidden)
  .toastui-editor-toolbar.is-editor-toolbar-bottom-docked {
  position: fixed;
  z-index: 100;
  margin: 0;
  box-sizing: border-box;
  background: #f7f9fc;
  box-shadow: 0 -1px 0 #ebedf2;
  overflow: visible;
}

.doc-slab-content.is-doc-editor-scroll-host
  .editor-wysiwyg-wrap:not(.hidden)
  .toastui-editor-toolbar.is-editor-toolbar-bottom-docked
  .toastui-editor-defaultUI-toolbar {
  background: #f7f9fc;
}

.editor-wysiwyg-wrap .toastui-editor-toolbar {
  position: relative;
  z-index: 3;
  overflow: visible;
}

.editor-wysiwyg-wrap .toastui-editor-main {
  z-index: 1;
}

/* Toast UI: подсказки скрыты у нижней dock-панели */
.editor-wysiwyg-wrap.is-editor-toolbar-bottom-docked .toastui-editor-tooltip {
  display: none !important;
  visibility: hidden !important;
  pointer-events: none !important;
}

.editor-wysiwyg-wrap:not(.hidden) .toastui-editor-dropdown-toolbar,
.editor-wysiwyg-wrap:not(.hidden) .toastui-editor-popup,
.editor-wysiwyg-wrap:not(.hidden) .toastui-editor-context-menu {
  z-index: 210;
}

.editor-wysiwyg-wrap
  .toastui-editor-toolbar.is-editor-toolbar-bottom-docked
  .toastui-editor-popup,
.editor-wysiwyg-wrap
  .toastui-editor-toolbar.is-editor-toolbar-bottom-docked
  .toastui-editor-dropdown-toolbar {
  margin-left: 0;
  margin-right: 0;
}

.editor-wysiwyg-wrap .toastui-editor-toolbar {
  width: 100%;
  max-width: 100%;
  box-sizing: border-box;
}

.editor-wysiwyg-wrap .toastui-editor-toolbar-item-wrapper:has(.awn-wysiwyg-highlight-toolbar) {
  position: relative;
  overflow: visible;
  display: inline-flex;
  align-items: center;
  margin: 0;
  height: auto;
  line-height: normal;
}

.awn-wysiwyg-highlight-toolbar {
  display: inline-flex;
  align-items: center;
  gap: 0;
  height: auto;
  margin: 0;
}

/* Match .toastui-editor-defaultUI-toolbar button exactly (normal + hover). */
.editor-wysiwyg-wrap .toastui-editor-defaultUI-toolbar .awn-wysiwyg-highlight-toolbar button {
  box-sizing: border-box;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 32px;
  height: 32px;
  margin: 7px 5px;
  padding: 0;
  border: 1px solid #f7f9fc;
  border-radius: 3px;
  background-color: transparent;
  background-image: none;
  color: #555;
  cursor: pointer;
  font: inherit;
  appearance: none;
  -webkit-appearance: none;
}

.editor-wysiwyg-wrap .toastui-editor-defaultUI-toolbar .awn-wysiwyg-highlight-toolbar button:not(:disabled):hover {
  border: 1px solid #e4e7ee;
  background-color: #fff;
}

.awn-wysiwyg-highlight-main-btn:disabled,
.awn-wysiwyg-highlight-menu-btn:disabled {
  opacity: 0.3;
  cursor: not-allowed;
}

.awn-wysiwyg-highlight-swatch {
  width: 10px;
  height: 10px;
  border-radius: 2px;
  flex-shrink: 0;
  box-shadow: inset 0 0 0 1px rgba(15, 23, 42, 0.12);
}

.awn-wysiwyg-highlight-swatch--yellow { background: #fef08a; }
.awn-wysiwyg-highlight-swatch--red { background: #fecaca; }
.awn-wysiwyg-highlight-swatch--green { background: #bbf7d0; }
.awn-wysiwyg-highlight-swatch--blue { background: #bfdbfe; }
.awn-wysiwyg-highlight-swatch--gray { background: #e2e8f0; }
.awn-wysiwyg-highlight-swatch--orange { background: #fed7aa; }
.awn-wysiwyg-highlight-swatch--purple { background: #e9d5ff; }

.awn-wysiwyg-highlight-menu-btn {
  gap: 2px;
}

.awn-wysiwyg-highlight-icon {
  display: inline-flex;
  width: 16px;
  height: 16px;
}

.awn-wysiwyg-highlight-icon svg {
  width: 16px;
  height: 16px;
  display: block;
}

.awn-wysiwyg-highlight-menu-btn svg {
  width: 10px;
  height: 10px;
  display: block;
  flex-shrink: 0;
}

.awn-wysiwyg-highlight-popover {
  position: absolute;
  top: calc(100% + 6px);
  right: 0;
  z-index: 50;
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  gap: 6px;
  padding: 8px;
  border: 1px solid rgba(148, 163, 184, 0.45);
  border-radius: 8px;
  background: #fff;
  box-shadow: 0 10px 24px rgba(15, 23, 42, 0.12);
}

.awn-wysiwyg-highlight-popover.hidden {
  display: none;
}

.awn-wysiwyg-highlight-tone-btn {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 28px;
  height: 28px;
  margin: 0;
  padding: 0;
  border: 1px solid rgba(148, 163, 184, 0.35);
  border-radius: 6px;
  background: #fff;
  cursor: pointer;
}

.awn-wysiwyg-highlight-tone-btn:hover:not(:disabled) {
  border-color: rgba(37, 99, 235, 0.45);
  background: #f8fafc;
}

.awn-wysiwyg-highlight-tone-btn:disabled {
  opacity: 0.45;
  cursor: not-allowed;
}

.awn-wysiwyg-highlight-tone-swatch {
  width: 16px;
  height: 16px;
  border-radius: 4px;
  box-shadow: inset 0 0 0 1px rgba(15, 23, 42, 0.1);
}

.awn-wysiwyg-highlight-tone-swatch--yellow { background: #fef08a; }
.awn-wysiwyg-highlight-tone-swatch--red { background: #fecaca; }
.awn-wysiwyg-highlight-tone-swatch--green { background: #bbf7d0; }
.awn-wysiwyg-highlight-tone-swatch--blue { background: #bfdbfe; }
.awn-wysiwyg-highlight-tone-swatch--gray { background: #e2e8f0; }
.awn-wysiwyg-highlight-tone-swatch--orange { background: #fed7aa; }
.awn-wysiwyg-highlight-tone-swatch--purple { background: #e9d5ff; }

.awn-wysiwyg-highlight-clear-btn {
  grid-column: 1 / -1;
  margin: 2px 0 0;
  padding: 6px 8px;
  border: 1px solid rgba(148, 163, 184, 0.35);
  border-radius: 6px;
  background: #f8fafc;
  color: #334155;
  font-size: 12px;
  line-height: 1.2;
  text-align: center;
  cursor: pointer;
}

.awn-wysiwyg-highlight-clear-btn:hover:not(:disabled) {
  border-color: rgba(37, 99, 235, 0.45);
  background: #fff;
}

.awn-wysiwyg-highlight-clear-btn:disabled {
  opacity: 0.45;
  cursor: not-allowed;
}

.editor-wysiwyg-wrap .toastui-editor-main {
  flex: 1;
  min-height: 0;
  position: relative;
  width: 100%;
  max-width: 100%;
  overflow: hidden;
  box-sizing: border-box;
}

.editor-wysiwyg-wrap .toastui-editor-main-container {
  position: relative !important;
  inset: auto !important;
  flex: 1;
  min-height: 0;
  display: flex;
  flex-direction: column;
  width: 100%;
  max-width: 100%;
  box-sizing: border-box;
}

.editor-wysiwyg-wrap .toastui-editor-ww-container {
  flex: 1;
  min-height: 0;
  display: flex;
  flex-direction: column;
  width: 100%;
  max-width: 100%;
  overflow: hidden;
  box-sizing: border-box;
}

.editor-wysiwyg-wrap .toastui-editor-ww-container > .toastui-editor,
.editor-wysiwyg-wrap .toastui-editor.ww-mode {
  flex: 1;
  min-height: 0;
  display: flex;
  flex-direction: column;
  width: 100%;
  max-width: 100%;
  box-sizing: border-box;
}

.editor-wysiwyg-wrap .toastui-editor-main-container,
.editor-wysiwyg-wrap .toastui-editor-ww-container {
  min-height: 0;
  flex: 1;
  height: 100%;
  max-height: 100%;
}

.editor-wysiwyg-wrap .toastui-editor-ww-container .toastui-editor-contents {
  flex: 1 1 auto;
  min-height: 0;
  height: 100% !important;
  max-height: 100%;
  padding: 0 !important;
  overflow-x: hidden !important;
  overflow-y: auto !important;
  -webkit-overflow-scrolling: touch;
}

.editor-wysiwyg-wrap .toastui-editor-defaultUI .ProseMirror {
  padding: 12px 16px 28px !important;
  box-sizing: border-box;
  width: 100%;
  max-width: 100%;
  height: auto !important;
  min-height: 0;
  overflow-x: hidden !important;
  overflow-y: visible !important;
}

.editor-wysiwyg-wrap.auto-height,
.editor-wysiwyg-wrap.auto-height .toastui-editor-defaultUI,
.editor-wysiwyg-wrap.auto-height .toastui-editor-main,
.editor-wysiwyg-wrap.auto-height .toastui-editor-main-container,
.editor-wysiwyg-wrap.auto-height .toastui-editor-ww-container,
.editor-wysiwyg-wrap.auto-height .toastui-editor-ww-container > .toastui-editor,
.editor-wysiwyg-wrap.auto-height .toastui-editor.ww-mode,
.editor-wysiwyg-wrap.auto-height .toastui-editor-ww-container .toastui-editor-contents,
.editor-wysiwyg-wrap.auto-height .ProseMirror {
  flex: 0 0 auto !important;
  height: auto !important;
  max-height: none !important;
  overflow: visible !important;
}

.editor-wysiwyg-wrap.auto-height .toastui-editor-defaultUI .ProseMirror {
  min-height: var(--editor-fill-min-height, 280px);
  padding-bottom: 48px !important;
}

.editor-wysiwyg-wrap .toastui-editor-contents {
  font-size: 14px;
  line-height: 1.6;
  color: #111827;
}

/* Toast UI defaults (h1 margin 52px, ul padding 24px…) — выравниваем с preview */
.editor-wysiwyg-wrap .toastui-editor-contents *:not(table) {
  box-sizing: border-box;
  line-height: inherit;
}

.editor-wysiwyg-wrap .toastui-editor-contents p {
  margin: 0 0 0.85em;
  color: inherit;
  overflow-wrap: anywhere;
  word-break: break-word;
}

.editor-wysiwyg-wrap .toastui-editor-contents p:last-child {
  margin-bottom: 0;
}

.editor-wysiwyg-wrap .toastui-editor-contents h1,
.editor-wysiwyg-wrap .toastui-editor-contents h2,
.editor-wysiwyg-wrap .toastui-editor-contents h3,
.editor-wysiwyg-wrap .toastui-editor-contents h4,
.editor-wysiwyg-wrap .toastui-editor-contents h5,
.editor-wysiwyg-wrap .toastui-editor-contents h6 {
  margin: 1.2em 0 0.5em;
  padding: 0;
  border: 0;
  line-height: 1.25;
  font-weight: 700;
  color: inherit;
}

.editor-wysiwyg-wrap .toastui-editor-contents h1:first-child,
.editor-wysiwyg-wrap .toastui-editor-contents h2:first-child,
.editor-wysiwyg-wrap .toastui-editor-contents h3:first-child,
.editor-wysiwyg-wrap .toastui-editor-contents h4:first-child,
.editor-wysiwyg-wrap .toastui-editor-contents h5:first-child,
.editor-wysiwyg-wrap .toastui-editor-contents h6:first-child {
  margin-top: 0;
}

.editor-wysiwyg-wrap .toastui-editor-contents h1 { font-size: 1.75em; }
.editor-wysiwyg-wrap .toastui-editor-contents h2 { font-size: 1.5em; }
.editor-wysiwyg-wrap .toastui-editor-contents h3 { font-size: 1.25em; }
.editor-wysiwyg-wrap .toastui-editor-contents h4 { font-size: 1.1em; }
.editor-wysiwyg-wrap .toastui-editor-contents h5 { font-size: 1em; }
.editor-wysiwyg-wrap .toastui-editor-contents h6 { font-size: 0.95em; }

.editor-wysiwyg-wrap .toastui-editor-contents ul,
.editor-wysiwyg-wrap .toastui-editor-contents ol,
.editor-wysiwyg-wrap .toastui-editor-contents blockquote,
.editor-wysiwyg-wrap .toastui-editor-contents pre {
  margin: 0 0 0.85em;
  color: inherit;
}

.editor-wysiwyg-wrap .toastui-editor-contents ul,
.editor-wysiwyg-wrap .toastui-editor-contents ol {
  padding-left: 1.4em;
}

.editor-wysiwyg-wrap .toastui-editor-contents blockquote {
  padding: 0 0 0 12px;
  border-left: 3px solid #cbd5e1;
  color: #475569;
}

.editor-wysiwyg-wrap .toastui-editor-contents blockquote p,
.editor-wysiwyg-wrap .toastui-editor-contents blockquote ul,
.editor-wysiwyg-wrap .toastui-editor-contents blockquote ol {
  color: inherit;
}

.editor-wysiwyg-wrap .toastui-editor-contents ul p,
.editor-wysiwyg-wrap .toastui-editor-contents ol p {
  margin: 0;
}

.editor-wysiwyg-wrap .toastui-editor-contents .task-list-item {
  margin-left: 0;
  padding-left: 1.75em;
  list-style: none;
}

.editor-wysiwyg-wrap .toastui-editor-contents .task-list-item::before {
  left: 0.1em;
}

.editor-wysiwyg-wrap .toastui-editor-contents table {
  display: block;
  width: 100%;
  max-width: 100%;
  overflow-x: auto;
  box-sizing: border-box;
}

.editor-wysiwyg-wrap .toastui-editor-contents img {
  max-width: 100%;
  box-sizing: border-box;
}

.editor-wysiwyg-wrap .toastui-editor-contents .toastui-editor-ww-code-block,
.editor-wysiwyg-wrap .toastui-editor-contents pre {
  max-width: 100%;
  box-sizing: border-box;
}

.editor-wysiwyg-wrap .toastui-editor-contents .toastui-editor-ww-code-block pre,
.editor-wysiwyg-wrap .ProseMirror.toastui-editor-contents pre {
  overflow-x: auto;
  overflow-y: hidden;
  max-width: 100%;
  white-space: pre;
  word-break: normal;
  overflow-wrap: normal;
}

.editor-wysiwyg-wrap .toastui-editor-contents .toastui-editor-ww-code-block pre code,
.editor-wysiwyg-wrap .ProseMirror.toastui-editor-contents pre code {
  display: block;
  white-space: pre;
  word-break: normal;
  overflow-wrap: normal;
}

.editor-code-wrap {
  display: flex;
  align-items: stretch;
  min-width: 0;
  width: 100%;
  min-height: 0;
  flex: 1;
}

.editor-line-numbers {
  display: none;
  flex: 0 0 auto;
  margin: 0;
  padding: 16px 8px 16px 4px;
  border: 0;
  border-right: 1px solid #dbe3ee;
  background: #eef2f7;
  color: #64748b;
  font-family: ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace;
  font-size: 14px;
  line-height: 1.5;
  text-align: right;
  overflow: hidden;
  user-select: none;
  white-space: pre;
  min-width: 2.75em;
}

.doc-slab-content .doc-slab-main .editor-line-numbers {
  padding: 12px 8px 12px 10px;
}

.editor-code-wrap.line-numbers-on .editor-line-numbers {
  display: block;
}

.editor-code-wrap .file-content-input {
  flex: 1;
  min-width: 0;
  min-height: 0;
}

/* Editor (WYSIWYG / preview / source): grow with content, scroll on workspace-pane. */
.app.editor-autoheight .workspace-pane {
  overflow-x: hidden;
  overflow-y: auto;
}

.app.editor-autoheight .workspace-body {
  flex: 0 0 auto;
  min-height: 100%;
  overflow: visible;
}

.app.editor-autoheight .doc-stack,
.app.editor-autoheight .doc-body-grid,
.app.editor-autoheight .doc-body-main,
.app.editor-autoheight .doc-slab-content,
.app.editor-autoheight .doc-slab-main {
  overflow: visible;
}

.app.editor-autoheight .doc-stack {
  height: auto;
  min-height: 100%;
}

.app.editor-autoheight .doc-body-grid,
.app.editor-autoheight .doc-body-main,
.app.editor-autoheight .doc-slab-content,
.app.editor-autoheight .doc-slab-main,
.app.editor-autoheight .editor-surface {
  flex: 0 0 auto;
  min-height: auto;
}

/* Редактор (preview / wysiwyg / source): скролл на doc-slab-content, не на workspace-pane */
.app.editor-autoheight:has(.doc-slab-main > .editor-surface:not(.hidden)) .workspace-pane {
  overflow: hidden;
}

.app.editor-autoheight:has(.doc-slab-main > .editor-surface:not(.hidden)) .workspace-body {
  flex: 1;
  min-height: 0;
  overflow: hidden;
}

.app.editor-autoheight:has(.doc-slab-main > .editor-surface:not(.hidden)) .doc-stack {
  height: 100%;
  min-height: 0;
  overflow: visible;
}

.app.editor-autoheight:has(.doc-slab-main > .editor-surface:not(.hidden)) .doc-body-grid,
.app.editor-autoheight:has(.doc-slab-main > .editor-surface:not(.hidden)) .doc-body-main {
  flex: 1 1 0;
  min-height: 0;
  overflow: hidden;
}

.app.editor-autoheight:has(.doc-slab-main > .editor-surface:not(.hidden)) .doc-slab-content {
  flex: 1 1 0;
  min-height: 0;
  overflow-x: hidden;
  overflow-y: scroll;
  overscroll-behavior: contain;
  -webkit-overflow-scrolling: touch;
  scrollbar-gutter: stable;
  scrollbar-width: thin;
  scrollbar-color: rgba(71, 85, 105, 0.78) rgba(148, 163, 184, 0.22);
}

.app.editor-autoheight:has(.doc-slab-main > .editor-surface:not(.hidden)) .doc-slab-main {
  flex: 0 0 auto;
  min-height: 0;
  overflow: visible;
}

.app.editor-autoheight:has(.doc-slab-main > .editor-surface:not(.hidden)) .doc-body-main {
  position: relative;
}

.doc-body-main:has(> .doc-slab-content > .doc-slab-main > .editor-surface:not(.hidden)) > .workspace-scroll-chrome {
  position: absolute;
  inset: 0;
  z-index: 40;
  pointer-events: none;
  opacity: 0;
  transition: opacity 0.2s ease;
}

.doc-body-main:has(> .doc-slab-content > .doc-slab-main > .editor-surface:not(.hidden)) > .workspace-scroll-chrome.is-active {
  opacity: 1;
}

.doc-body-main:has(> .doc-slab-content > .doc-slab-main > .editor-surface:not(.hidden)) > .scroll-top-btn--docked {
  position: absolute;
  right: calc(14px + var(--scroll-top-shift-x, 0px));
  bottom: calc(14px + var(--scroll-top-shift-y, 0px));
  z-index: 41;
  margin: 0;
  width: auto;
  max-width: none;
  align-self: auto;
  flex: none;
}

.doc-body-main .doc-slab-content:has(> .doc-slab-main > .editor-surface:not(.hidden))::-webkit-scrollbar {
  width: 10px;
  -webkit-appearance: none;
}

.doc-body-main .doc-slab-content:has(> .doc-slab-main > .editor-surface:not(.hidden))::-webkit-scrollbar-track {
  background: rgba(148, 163, 184, 0.22);
}

.doc-body-main .doc-slab-content:has(> .doc-slab-main > .editor-surface:not(.hidden))::-webkit-scrollbar-thumb {
  background: rgba(71, 85, 105, 0.62);
  border-radius: 999px;
  border: 2px solid rgba(248, 250, 252, 0.92);
  background-clip: padding-box;
}

.doc-body-main .doc-slab-content:has(> .doc-slab-main > .editor-surface:not(.hidden))::-webkit-scrollbar-thumb:hover {
  background: rgba(51, 65, 85, 0.82);
  background-clip: padding-box;
}

/* Overview / navigation: не схлопывать layout даже если editor-autoheight ещё на root */
.app.editor-autoheight:has(#node-overview-block:not(.hidden)) .workspace-pane {
  overflow: hidden;
}

.app.editor-autoheight:has(#node-overview-block:not(.hidden)) .workspace-body {
  flex: 1;
  min-height: 0;
  overflow: hidden;
}

.app.editor-autoheight:has(#node-overview-block:not(.hidden)) .doc-stack {
  height: 100%;
  min-height: 0;
  overflow: hidden;
}

.app.editor-autoheight:has(#node-overview-block:not(.hidden)) .doc-body-grid,
.app.editor-autoheight:has(#node-overview-block:not(.hidden)) .doc-body-main {
  flex: 1 1 0;
  min-height: 0;
  overflow: hidden;
}

.app.editor-autoheight:has(#node-overview-block:not(.hidden)) .doc-slab-content {
  flex: 1 1 0;
  min-height: 0;
  overflow-x: hidden;
  overflow-y: auto;
}

.app.editor-autoheight:has(#node-overview-block:not(.hidden)) .doc-slab-main {
  flex: 0 0 auto;
  min-height: 0;
  overflow: visible;
}

/* Editor + правая панель: два независимых скролла вместо прокрутки workspace-pane */
.app.editor-autoheight:has(#doc-body-grid.has-props-aside) .workspace-pane {
  overflow: hidden;
}

.app.editor-autoheight:has(#doc-body-grid.has-props-aside) .workspace-body {
  flex: 1;
  min-height: 0;
  overflow: hidden;
}

.app.editor-autoheight:has(#doc-body-grid.has-props-aside) .doc-stack {
  height: 100%;
  min-height: 0;
  overflow: hidden;
}

.app.editor-autoheight #doc-body-grid.has-props-aside,
.app.editor-autoheight .doc-body-grid.has-props-aside {
  flex: 1 1 0;
  min-height: 0;
  overflow: hidden;
}

.app.editor-autoheight #doc-body-grid.has-props-aside .doc-body-main,
.app.editor-autoheight .doc-body-grid.has-props-aside .doc-body-main {
  flex: 1 1 0;
  min-height: 0;
  overflow: hidden;
}

.app.editor-autoheight #doc-body-grid.has-props-aside .doc-props-aside,
.app.editor-autoheight .doc-body-grid.has-props-aside .doc-props-aside {
  min-height: 0;
  overflow: hidden;
}

.app.editor-autoheight #doc-body-grid.has-props-aside .doc-slab-content,
.app.editor-autoheight .doc-body-grid.has-props-aside .doc-slab-content {
  flex: 1 1 0;
  min-height: 0;
  overflow-x: hidden;
  overflow-y: scroll;
  overscroll-behavior: contain;
  -webkit-overflow-scrolling: touch;
  scrollbar-gutter: stable;
  scrollbar-width: thin;
  scrollbar-color: rgba(71, 85, 105, 0.78) rgba(148, 163, 184, 0.22);
}

.app.editor-autoheight #doc-body-grid.has-props-aside .doc-slab-main,
.app.editor-autoheight .doc-body-grid.has-props-aside .doc-slab-main {
  flex: 0 0 auto;
  min-height: 0;
  overflow: visible;
}

.app.editor-autoheight #doc-body-grid.has-props-aside .editor-code-wrap,
.app.editor-autoheight #doc-body-grid.has-props-aside .file-content-preview,
.app.editor-autoheight #doc-body-grid.has-props-aside .editor-wysiwyg-wrap,
.app.editor-autoheight .doc-body-grid.has-props-aside .editor-code-wrap,
.app.editor-autoheight .doc-body-grid.has-props-aside .file-content-preview,
.app.editor-autoheight .doc-body-grid.has-props-aside .editor-wysiwyg-wrap {
  min-height: 120px;
}

.app.editor-autoheight #doc-body-grid.has-props-aside .file-content-input,
.app.editor-autoheight .doc-body-grid.has-props-aside .file-content-input {
  min-height: 120px;
}

.app.editor-autoheight #doc-body-grid.has-props-aside .editor-wysiwyg-wrap.auto-height .toastui-editor-defaultUI .ProseMirror,
.app.editor-autoheight .doc-body-grid.has-props-aside .editor-wysiwyg-wrap.auto-height .toastui-editor-defaultUI .ProseMirror {
  min-height: 120px;
  padding-bottom: 16px !important;
}

.app.editor-autoheight .doc-stack .editor-code-wrap,
.app.editor-autoheight .editor-surface .editor-code-wrap,
.app.editor-autoheight .doc-stack .file-content-preview,
.app.editor-autoheight .editor-surface .file-content-preview {
  flex: 0 0 auto;
  overflow: visible;
  min-height: var(--editor-fill-min-height, 280px);
}

.app.editor-autoheight .doc-stack .editor-code-wrap .file-content-input,
.app.editor-autoheight .editor-surface .file-content-input {
  flex: 0 0 auto;
  height: auto;
  min-height: var(--editor-fill-min-height, 280px);
  overflow-x: auto;
  overflow-y: visible;
  resize: none;
  white-space: pre-wrap;
  word-break: break-word;
  overflow-wrap: anywhere;
}

.app.editor-autoheight .doc-stack .file-content-input {
  overflow: hidden;
}

.app.editor-autoheight .doc-stack .editor-code-wrap.line-numbers-on .editor-line-numbers {
  height: auto;
  align-self: auto;
  overflow: visible;
}

.app.editor-autoheight .doc-stack .editor-wysiwyg-wrap,
.app.editor-autoheight .editor-wysiwyg-wrap,
.app.editor-autoheight .editor-wysiwyg-wrap.auto-height {
  flex: 0 0 auto;
  height: auto !important;
  min-height: 0;
  width: 100%;
  max-width: 100%;
  overflow-x: hidden !important;
  overflow-y: visible !important;
  box-sizing: border-box;
}

.app.editor-autoheight .editor-wysiwyg-wrap .toastui-editor-defaultUI,
.app.editor-autoheight .editor-wysiwyg-wrap .toastui-editor-main,
.app.editor-autoheight .editor-wysiwyg-wrap .toastui-editor-main-container,
.app.editor-autoheight .editor-wysiwyg-wrap .toastui-editor-ww-container,
.app.editor-autoheight .editor-wysiwyg-wrap .toastui-editor-ww-container > .toastui-editor,
.app.editor-autoheight .editor-wysiwyg-wrap .toastui-editor.ww-mode {
  flex: 0 0 auto;
  position: relative !important;
  height: auto !important;
  max-height: none !important;
  min-height: 0;
  width: 100%;
  max-width: 100%;
  overflow-x: hidden !important;
  overflow-y: visible !important;
  box-sizing: border-box;
}

.app.editor-autoheight .editor-wysiwyg-wrap .toastui-editor-contents,
.app.editor-autoheight .editor-wysiwyg-wrap .toastui-editor-ww-container .toastui-editor-contents,
.app.editor-autoheight .editor-wysiwyg-wrap .ProseMirror {
  height: auto !important;
  max-height: none !important;
  min-height: var(--editor-fill-min-height, 280px);
  width: 100%;
  max-width: 100%;
  overflow-x: hidden !important;
  overflow-y: visible !important;
  box-sizing: border-box;
}

.editor-surface .file-content-input,
.editor-surface .file-content-preview {
  min-width: 0;
  max-width: 100%;
}

.file-content-input {
  width: 100%;
  margin: 0;
  padding: 16px;
  border: 1px solid var(--border);
  border-radius: 10px;
  background: var(--panel);
  color: #111827;
  font-family: ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace;
  font-size: 14px;
  line-height: 1.5;
  min-height: 280px;
  resize: vertical;
  box-sizing: border-box;
}

.file-content-preview {
  width: 100%;
  margin: 0;
  padding: 16px;
  border: 1px solid var(--border);
  border-radius: 10px;
  background: var(--panel);
  color: #111827;
  min-height: 280px;
  overflow-y: auto;
  overflow-x: auto;
  line-height: 1.6;
  box-sizing: border-box;
  overflow-wrap: anywhere;
  word-break: break-word;
}

.node-navigation-preview.file-content-preview,
.node-overview-content .node-entry-overview-manifest .node-navigation-preview.file-content-preview,
.node-overview-content .node-navigation-manifest .node-navigation-preview.file-content-preview {
  min-height: 0;
  padding: 0;
  border: 0;
  border-radius: 0;
  background: transparent;
  box-shadow: none;
  overflow: visible;
}

.file-content-preview h1,
.file-content-preview h2,
.file-content-preview h3,
.file-content-preview h4,
.file-content-preview h5,
.file-content-preview h6 {
  margin-top: 1.2em;
  margin-bottom: 0.5em;
  line-height: 1.25;
}

.file-content-preview h1:first-child,
.file-content-preview h2:first-child,
.file-content-preview h3:first-child,
.file-content-preview h4:first-child,
.file-content-preview h5:first-child,
.file-content-preview h6:first-child {
  margin-top: 0;
}

.file-content-preview p,
.file-content-preview ul,
.file-content-preview ol,
.file-content-preview blockquote,
.file-content-preview pre {
  margin: 0 0 0.85em;
}

.file-content-preview p {
  overflow-wrap: anywhere;
  word-break: break-word;
}

.file-content-preview ul,
.file-content-preview ol {
  padding-left: 1.4em;
}

.file-content-preview blockquote {
  border-left: 3px solid #cbd5e1;
  padding-left: 12px;
  color: #475569;
}

.file-content-preview hr {
  border: 0;
  border-top: 1px solid var(--border);
  margin: 1em 0;
}

.file-content-preview code {
  font-family: ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace;
  font-size: 0.92em;
  background: #f3f4f6;
  border-radius: 4px;
  padding: 0.1em 0.35em;
}

.file-content-preview a {
  color: #2563eb;
}

.file-content-preview mark,
.file-content-preview .md-highlight {
  border-radius: 4px;
  padding: 0.08em 0.28em;
  font: inherit;
  line-height: inherit;
  box-decoration-break: clone;
  -webkit-box-decoration-break: clone;
}

.file-content-preview .md-highlight--yellow,
.file-content-preview mark {
  background: #fef08a;
  color: #713f12;
}

.file-content-preview .md-highlight--red {
  background: #fecaca;
  color: #991b1b;
}

.file-content-preview .md-highlight--green {
  background: #bbf7d0;
  color: #166534;
}

.file-content-preview .md-highlight--blue {
  background: #bfdbfe;
  color: #1e40af;
}

.file-content-preview .md-highlight--gray {
  background: #e2e8f0;
  color: #334155;
}

.file-content-preview .md-highlight--orange {
  background: #fed7aa;
  color: #9a3412;
}

.file-content-preview .md-highlight--purple {
  background: #e9d5ff;
  color: #6b21a8;
}

/* Маркеры [marker:*] — в духе GitHub Alerts (.markdown-alert), цвет по типу */
.file-content-preview .md-marker-block {
  padding: 0.55rem 1rem 0.65rem;
  margin: 0.85rem 0;
  border-left: 0.25em solid #94a3b8;
  border-radius: 0 8px 8px 0;
  background: #f8fafc;
}

.file-content-preview .md-marker-block-title {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 0.35rem 0.45rem;
  margin: 0 0 0.4rem;
  font-weight: 600;
  line-height: 1.3;
}

.file-content-preview .md-marker-block-label {
  font-size: 0.9rem;
  cursor: default;
}

.file-content-preview .md-marker-block-title-aside {
  display: inline-flex;
  flex-wrap: wrap;
  align-items: center;
  justify-content: flex-end;
  gap: 0.35rem;
  margin-left: auto;
  font-weight: 400;
}

.file-content-preview .md-marker-block-inline-meta {
  display: inline-flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 0.35rem;
}

.file-content-preview .md-marker-block-counter {
  flex-shrink: 0;
}

.file-content-preview .md-marker-chip {
  display: inline-block;
  font-size: 0.68rem;
  line-height: 1.25;
  padding: 0.1rem 0.4rem;
  border-radius: 4px;
  border: 1px solid rgba(15, 23, 42, 0.08);
  background: rgba(255, 255, 255, 0.65);
  color: #475569;
}

.file-content-preview .md-marker-chip--added {
  color: #92400e;
}

.file-content-preview .md-marker-chip--updated {
  color: #1d4ed8;
}

.file-content-preview .md-marker-chip--review {
  color: #c2410c;
}

.file-content-preview .md-marker-chip--extra {
  border-style: dashed;
  border-color: rgba(100, 116, 139, 0.35);
  color: #64748b;
}

.file-content-preview .md-marker-chip-extra-icon {
  display: inline-block;
  margin-right: 0.2rem;
  font-size: 0.62rem;
  line-height: 1;
  color: #94a3b8;
  vertical-align: 0.05em;
}

.file-content-preview .md-marker-block-body {
  font-size: inherit;
  line-height: 1.55;
  color: #334155;
}

.file-content-preview .md-marker-block-body > :first-child {
  margin-top: 0;
}

.file-content-preview .md-marker-block-body > :last-child {
  margin-bottom: 0;
}

.file-content-preview .md-marker-block--idea {
  border-left-color: #1a7f37;
  background: #eefbf1;
}

.file-content-preview .md-marker-block--idea .md-marker-block-label {
  color: #1a7f37;
}

.file-content-preview .md-marker-block--important {
  border-left-color: #8250df;
  background: #f6f0ff;
}

.file-content-preview .md-marker-block--important .md-marker-block-label {
  color: #8250df;
}

.file-content-preview .md-marker-block--note {
  border-left-color: #0969da;
  background: #eef6ff;
}

.file-content-preview .md-marker-block--note .md-marker-block-label {
  color: #0969da;
}

.file-content-preview .md-marker-block--agent-note {
  border-left-color: #0d9488;
  background: #f0fdfa;
}

.file-content-preview .md-marker-block--agent-note .md-marker-block-label {
  color: #0f766e;
}

.file-content-preview .md-marker-block--todo {
  border-left-color: #57606a;
  background: #f6f8fa;
}

.file-content-preview .md-marker-block--todo .md-marker-block-label {
  color: #424a53;
}

.file-content-preview .md-marker-block--question {
  border-left-color: #6639ba;
  background: #f4f0ff;
}

.file-content-preview .md-marker-block--question .md-marker-block-label {
  color: #6639ba;
}

.file-content-preview .md-marker-block--mistake {
  border-left-color: #cf222e;
  background: #fff1f2;
}

.file-content-preview .md-marker-block--mistake .md-marker-block-label {
  color: #cf222e;
}

.file-content-preview .md-marker-block--term {
  border-left-color: #a21caf;
  background: #fdf4ff;
}

.file-content-preview .md-marker-block--term .md-marker-block-label {
  color: #86198f;
}

.file-content-preview .md-marker-block--repeat {
  border-left-color: #bf8700;
  background: #fff8e5;
}

.file-content-preview .md-marker-block--repeat .md-marker-block-label {
  color: #9a6700;
}

.editor-wysiwyg-wrap mark,
.editor-wysiwyg-wrap .md-highlight {
  border-radius: 4px;
  padding: 0.08em 0.28em;
  font: inherit;
  line-height: inherit;
  box-decoration-break: clone;
  -webkit-box-decoration-break: clone;
}

.editor-wysiwyg-wrap .md-highlight--yellow,
.editor-wysiwyg-wrap mark {
  background: #fef08a;
  color: #713f12;
}

.editor-wysiwyg-wrap .md-highlight--red {
  background: #fecaca;
  color: #991b1b;
}

.editor-wysiwyg-wrap .md-highlight--green {
  background: #bbf7d0;
  color: #166534;
}

.editor-wysiwyg-wrap .md-highlight--blue {
  background: #bfdbfe;
  color: #1e3a8a;
}

.editor-wysiwyg-wrap .md-highlight--gray {
  background: #e2e8f0;
  color: #334155;
}

.editor-wysiwyg-wrap .md-highlight--orange {
  background: #fed7aa;
  color: #9a3412;
}

.editor-wysiwyg-wrap .md-highlight--purple {
  background: #e9d5ff;
  color: #6b21a8;
}

.file-content-preview img,
.file-content-preview video,
.file-content-preview iframe {
  max-width: 100%;
  height: auto;
}

.file-content-table-wrap {
  max-width: 100%;
  margin: 0 0 1em;
  overflow-x: auto;
  overflow-y: hidden;
  -webkit-overflow-scrolling: touch;
  border: 1px solid #d1d5db;
  border-radius: 8px;
  background: #fff;
}

.file-content-preview table {
  width: 100%;
  min-width: max-content;
  max-width: none;
  border-collapse: collapse;
  border-spacing: 0;
  margin: 0;
  font-size: 0.94em;
  line-height: 1.45;
  table-layout: auto;
}

.file-content-preview .md-frontmatter-table {
  margin: 0 0 12px;
  max-width: 100%;
  overflow-x: auto;
  overflow-y: hidden;
  -webkit-overflow-scrolling: touch;
}

.file-content-preview .md-frontmatter-table + :is(h1, h2, h3, h4, h5, h6),
.file-content-preview .md-frontmatter-raw + :is(h1, h2, h3, h4, h5, h6) {
  margin-top: 0;
}

.file-content-preview .md-frontmatter-table table {
  width: 100%;
  min-width: 0;
  table-layout: auto;
  border: 1px solid #d0d7de;
  border-radius: 6px;
  border-collapse: separate;
  border-spacing: 0;
}

.file-content-preview .md-frontmatter-table th[scope="row"] {
  width: 1%;
  padding: 6px 13px;
  border: 1px solid #d0d7de;
  background: #f6f8fa;
  font-family: ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, monospace;
  font-size: 12px;
  font-weight: 600;
  color: #24292f;
  vertical-align: top;
  white-space: nowrap;
}

.file-content-preview .md-frontmatter-table td {
  padding: 6px 13px;
  border: 1px solid #d0d7de;
  background: #fff;
  color: #24292f;
  vertical-align: top;
  white-space: normal;
  overflow-wrap: anywhere;
  word-break: break-word;
  min-width: 0;
}

.file-content-preview .md-frontmatter-table tbody tr:first-child th[scope="row"],
.file-content-preview .md-frontmatter-table tbody tr:first-child td {
  border-top: 0;
}

.file-content-preview .md-frontmatter-raw {
  margin: 0 0 16px;
  padding: 10px 12px;
  border: 1px solid #d0d7de;
  border-radius: 6px;
  background: #f6f8fa;
  font-size: 12px;
  line-height: 1.45;
  overflow-x: auto;
}

.file-content-preview thead {
  background: #f3f4f6;
}

.file-content-preview th,
.file-content-preview td {
  border: 1px solid #d1d5db;
  padding: 8px 12px;
  text-align: left;
  vertical-align: top;
}

.file-content-preview th {
  font-weight: 600;
  color: #111827;
  white-space: nowrap;
}

.file-content-preview tbody tr:nth-child(even) {
  background: #f9fafb;
}

.file-content-preview tbody tr:hover {
  background: #f3f4f6;
}

.file-content-preview table code {
  white-space: nowrap;
}

.file-content-preview pre {
  background: #f3f4f6;
  border: 1px solid #e5e7eb;
  border-radius: 8px;
  padding: 10px;
  overflow-x: auto;
  overflow-y: hidden;
  max-width: 100%;
  white-space: pre;
  word-break: normal;
  overflow-wrap: normal;
}

.file-content-preview pre code.hljs {
  display: block;
  padding: 0;
  background: transparent;
  border-radius: 0;
  font-size: 0.92em;
  line-height: 1.5;
  white-space: pre;
  word-break: normal;
  overflow-wrap: normal;
}

.file-content-preview pre:has(> code.hljs) {
  background: #f6f8fa;
}

.node-entry-overview-code-showcase-body.file-content-preview,
.node-entry-overview-media-asset-code-preview.file-content-preview {
  background: #fff;
  border: 0;
  border-radius: 0;
  min-height: 0;
  padding: 0;
  box-shadow: none;
}

.node-entry-overview-code-showcase-body.file-content-preview pre,
.node-entry-overview-media-asset-code-preview.file-content-preview pre {
  border: 0;
  border-radius: 0;
  box-shadow: none;
}

.node-entry-overview-code-showcase-body.file-content-preview pre code,
.node-entry-overview-code-showcase-body.file-content-preview pre code.hljs,
.node-entry-overview-media-asset-code-preview.file-content-preview pre code,
.node-entry-overview-media-asset-code-preview.file-content-preview pre code.hljs {
  border: 0;
  border-radius: 0;
  box-shadow: none;
  background: transparent;
}

.node-entry-overview-code-showcase-body.file-content-preview .code-preview-with-line-numbers pre,
.node-entry-overview-code-showcase-body.file-content-preview .code-preview-with-line-numbers pre code,
.node-entry-overview-code-showcase-body.file-content-preview .code-preview-with-line-numbers pre code.hljs,
.node-entry-overview-media-asset-code-preview.file-content-preview .code-preview-with-line-numbers pre,
.node-entry-overview-media-asset-code-preview.file-content-preview .code-preview-with-line-numbers pre code,
.node-entry-overview-media-asset-code-preview.file-content-preview .code-preview-with-line-numbers pre code.hljs {
  white-space: pre;
  word-break: normal;
  overflow-wrap: normal;
  font-size: 13px;
  line-height: 1.55;
  border: 0;
  border-radius: 0;
  padding: 0;
  margin: 0;
}

.node-entry-overview-code-showcase-body.file-content-preview .code-preview-with-line-numbers pre {
  padding: 14px 14px 14px 12px;
  background: #fff;
}

.node-entry-overview-code-showcase-body.file-content-preview pre code.hljs,
.node-entry-overview-media-asset-code-preview.file-content-preview pre code.hljs {
  background: transparent;
}

.file-content-preview pre.mermaid {
  background: transparent;
  border: none;
  padding: 0;
  margin: 0;
  overflow: visible;
  white-space: normal;
}

.mermaid-diagram-frame {
  position: relative;
  margin: 1rem 0;
  padding: 40px 12px 14px;
  border: 1px solid #dbe3ee;
  border-radius: 12px;
  background: linear-gradient(180deg, #ffffff 0%, #f8fafc 100%);
  box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.85);
  overflow: visible;
  touch-action: pan-y pinch-zoom;
}

.mermaid-diagram-frame.is-mermaid-zoomed {
  overflow: auto;
  max-height: min(88vh, 1200px);
  touch-action: none;
  cursor: grab;
}

.mermaid-diagram-frame.is-mermaid-zoomed.is-mermaid-panning {
  overflow: hidden;
}

.mermaid-diagram-frame.is-mermaid-panning {
  cursor: grabbing;
}

.mermaid-diagram-frame pre.mermaid svg {
  display: block;
  width: 100%;
  max-width: 100%;
  height: auto;
  overflow: visible;
  shape-rendering: geometricPrecision;
  text-rendering: geometricPrecision;
  -webkit-tap-highlight-color: transparent;
}

.mermaid-diagram-frame pre.mermaid foreignObject,
.mermaid-diagram-frame pre.mermaid .nodeLabel,
.mermaid-diagram-frame pre.mermaid .label-container {
  overflow: visible;
}

.mermaid-diagram-frame pre.mermaid svg:focus,
.mermaid-diagram-frame pre.mermaid svg:focus-visible,
.mermaid-diagram-frame pre.mermaid svg *:focus,
.mermaid-diagram-frame pre.mermaid svg *:focus-visible {
  outline: none;
}

.mermaid-diagram-frame pre.mermaid a .nodeLabel,
.mermaid-diagram-frame pre.mermaid a .nodeLabel p {
  font-weight: inherit !important;
  color: #1d4ed8 !important;
  text-decoration: underline !important;
  text-decoration-thickness: 1.5px;
  text-underline-offset: 2px;
  cursor: pointer;
}

.mermaid-diagram-frame pre.mermaid a:hover .nodeLabel,
.mermaid-diagram-frame pre.mermaid a:hover .nodeLabel p {
  color: #1e40af !important;
}

.mermaid-diagram-frame.is-dark pre.mermaid a .nodeLabel,
.mermaid-diagram-frame.is-dark pre.mermaid a .nodeLabel p {
  color: #38bdf8 !important;
}

.mermaid-diagram-frame.is-dark pre.mermaid a:hover .nodeLabel,
.mermaid-diagram-frame.is-dark pre.mermaid a:hover .nodeLabel p {
  color: #7dd3fc !important;
}

.mermaid-diagram-frame.is-mermaid-panning,
.mermaid-diagram-frame.is-mermaid-panning pre.mermaid,
.mermaid-diagram-frame.is-mermaid-panning pre.mermaid svg,
.mermaid-diagram-frame.is-mermaid-panning pre.mermaid svg * {
  outline: none !important;
}

.mermaid-diagram-frame.is-mermaid-zoomed pre.mermaid svg {
  max-width: none;
}

.mermaid-diagram-frame.is-dark {
  border-color: #334155;
  background: linear-gradient(180deg, #111827 0%, #0f172a 100%);
  box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.04);
}

.mermaid-diagram-frame pre.mermaid {
  display: block;
  width: 100%;
  max-width: 100%;
  margin: 0;
  overflow: visible;
  user-select: none;
}

.mermaid-diagram-actions {
  position: absolute;
  top: 8px;
  right: 8px;
  z-index: 4;
  pointer-events: auto;
  display: inline-flex;
  align-items: center;
  justify-content: flex-end;
  gap: 6px;
  max-width: calc(100% - 16px);
}

.mermaid-diagram-theme-btn,
.mermaid-diagram-chrome-btn {
  position: static;
  flex-shrink: 0;
  display: inline-flex;
  align-items: center;
  justify-content: flex-start;
  gap: 6px;
  width: auto;
  max-width: calc(100% - 16px);
  min-height: 26px;
  padding: 4px 10px 4px 8px;
  border: 1px solid #cbd5e1;
  border-radius: 8px;
  background: rgba(255, 255, 255, 0.92);
  color: #475569;
  cursor: pointer;
  font-size: 11px;
  line-height: 1.25;
  font-family: ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
  transition: background 0.15s ease, border-color 0.15s ease, color 0.15s ease;
}

.mermaid-diagram-chrome-icon {
  width: 14px;
  height: 14px;
  flex-shrink: 0;
  display: block;
}

.mermaid-diagram-chrome-label {
  white-space: nowrap;
  font-weight: 500;
}

.mermaid-diagram-chrome-btn:disabled,
.mermaid-diagram-reset-zoom-btn:disabled {
  opacity: 0.45;
  cursor: default;
  pointer-events: none;
}

.mermaid-diagram-theme-text {
  min-width: 0;
  text-align: left;
}

.mermaid-diagram-theme-label {
  font-weight: 600;
  white-space: nowrap;
}

.mermaid-diagram-chrome-btn:hover:not(:disabled) {
  background: #ffffff;
  border-color: #94a3b8;
  color: #0f172a;
}

.mermaid-diagram-frame.is-dark .mermaid-diagram-chrome-btn {
  border-color: #475569;
  background: rgba(15, 23, 42, 0.88);
  color: #e2e8f0;
}

.mermaid-diagram-frame.is-dark .mermaid-diagram-chrome-btn:hover:not(:disabled) {
  background: #1e293b;
  border-color: #64748b;
  color: #f8fafc;
}

.mermaid-diagram-frame.is-mermaid-source-open .mermaid-diagram-source-btn {
  border-color: #6366f1;
  color: #4338ca;
  background: #eef2ff;
}

.mermaid-diagram-frame.is-dark.is-mermaid-source-open .mermaid-diagram-source-btn {
  border-color: #818cf8;
  color: #e0e7ff;
  background: rgba(49, 46, 129, 0.45);
}

.mermaid-diagram-refresh-btn.is-busy {
  opacity: 0.65;
  pointer-events: none;
}

.mermaid-diagram-lightbox {
  position: fixed;
  inset: 0;
  z-index: 12010;
  display: flex;
  align-items: center;
  justify-content: center;
  padding: 20px;
  background: rgba(248, 250, 252, 0.96);
}

.mermaid-diagram-lightbox.hidden {
  display: none;
}

.mermaid-diagram-lightbox.is-dark {
  background: rgba(15, 23, 42, 0.94);
}

.mermaid-diagram-lightbox-panel {
  display: flex;
  flex-direction: column;
  width: min(96vw, 1400px);
  max-height: calc(100vh - 40px);
  min-height: min(60vh, 480px);
  border: 1px solid #dbe3ee;
  border-radius: 12px;
  background: linear-gradient(180deg, #ffffff 0%, #f8fafc 100%);
  box-shadow: 0 24px 64px rgba(15, 23, 42, 0.22);
  overflow: hidden;
}

.mermaid-diagram-lightbox.is-dark .mermaid-diagram-lightbox-panel {
  border-color: #334155;
  background: linear-gradient(180deg, #111827 0%, #0f172a 100%);
}

.mermaid-diagram-lightbox-toolbar {
  position: static;
  flex-shrink: 0;
  justify-content: flex-end;
  max-width: none;
  padding: 10px 12px;
  border-bottom: 1px solid #e2e8f0;
  background: rgba(255, 255, 255, 0.92);
}

.mermaid-diagram-lightbox.is-dark .mermaid-diagram-lightbox-toolbar {
  border-bottom-color: #334155;
  background: rgba(15, 23, 42, 0.88);
}

.mermaid-diagram-lightbox-stage {
  display: flex;
  flex: 1 1 auto;
  align-items: center;
  justify-content: center;
  width: 100%;
  min-height: 0;
  padding: 16px;
  overflow: auto;
  position: relative;
  touch-action: none;
}

.mermaid-diagram-lightbox-stage pre.mermaid {
  width: 100%;
  max-width: 100%;
  margin: 0;
  overflow: visible;
}

.mermaid-diagram-lightbox-stage pre.mermaid svg {
  display: block;
  width: 100%;
  max-width: 100%;
  height: auto;
}

.mermaid-diagram-lightbox-stage.is-mermaid-zoomed pre.mermaid svg {
  max-width: none;
}

.mermaid-diagram-lightbox-stage .mermaid-diagram-viewport {
  width: 100%;
  max-height: none;
}

.mermaid-diagram-source-panel {
  display: none;
  margin: 0 0 0.5rem;
  border: 1px solid #e2e8f0;
  border-radius: 8px;
  background: #f8fafc;
  overflow: hidden;
}

.mermaid-diagram-frame.is-mermaid-source-open .mermaid-diagram-source-panel {
  display: block;
}

.mermaid-diagram-frame.is-mermaid-source-open {
  touch-action: auto;
  cursor: default;
}

.mermaid-diagram-frame.is-mermaid-source-open.is-mermaid-zoomed {
  touch-action: auto;
  cursor: default;
  overflow: visible;
}

.mermaid-diagram-source-body {
  position: relative;
}

.mermaid-diagram-source-copy-btn {
  position: absolute;
  top: 8px;
  right: 22px;
  z-index: 2;
}

.mermaid-diagram-source-copy-btn.is-copied {
  border-color: #22c55e;
  color: #15803d;
}

.mermaid-diagram-source-view {
  display: block;
  margin: 0;
  padding: 12px;
  max-height: min(420px, 50vh);
  overflow: auto;
  overscroll-behavior: contain;
  border: none;
  border-radius: 0;
  background: transparent;
  font-size: 12px;
  line-height: 1.45;
  white-space: pre-wrap;
  word-break: break-word;
  user-select: text;
  -webkit-user-select: text;
  cursor: text;
  touch-action: pan-y;
}

.mermaid-diagram-frame.is-mermaid-source-open pre.mermaid {
  display: none;
}

.mermaid-diagram-frame.is-dark .mermaid-diagram-source-panel {
  border-color: #334155;
  background: rgba(15, 23, 42, 0.65);
  color: #e2e8f0;
}

.mermaid-diagram-frame.is-dark .mermaid-diagram-source-copy-btn.is-copied {
  border-color: #4ade80;
  color: #bbf7d0;
}

.mermaid-diagram-source-view code {
  display: block;
  font-family: ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New",
    monospace;
  background: transparent;
  padding: 0;
  white-space: pre-wrap;
  word-break: break-word;
}

.mermaid-diagram-frame.is-dark .mermaid-diagram-theme-btn {
  border-color: #475569;
  background: rgba(15, 23, 42, 0.88);
  color: #e2e8f0;
}

.mermaid-diagram-theme-btn:hover {
  background: #ffffff;
  border-color: #94a3b8;
  color: #0f172a;
}

.mermaid-diagram-frame.is-dark .mermaid-diagram-theme-btn:hover {
  background: #1e293b;
  border-color: #64748b;
  color: #f8fafc;
}

.mermaid-diagram-frame.is-mermaid-zoomed .mermaid-diagram-reset-zoom-btn:not(:disabled) {
  border-color: #6366f1;
  color: #4338ca;
}

.mermaid-diagram-frame.is-dark.is-mermaid-zoomed .mermaid-diagram-reset-zoom-btn:not(:disabled) {
  border-color: #818cf8;
  color: #c7d2fe;
}

.mermaid-diagram-theme-icon {
  width: 14px;
  height: 14px;
  display: none;
}

.mermaid-diagram-theme-btn.is-theme-original .mermaid-diagram-theme-icon--original,
.mermaid-diagram-theme-btn.is-theme-light .mermaid-diagram-theme-icon--sun,
.mermaid-diagram-theme-btn.is-theme-dark .mermaid-diagram-theme-icon--moon {
  display: block;
}

.file-content-preview .mermaid {
  display: flex;
  justify-content: center;
  margin: 1rem 0;
  max-width: 100%;
  overflow-x: auto;
}

.mermaid-diagram-frame .mermaid {
  margin: 0;
}

.file-content-preview .mermaid svg {
  max-width: 100%;
  height: auto;
}

.file-content-preview code {
  font-family: ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace;
}

.file-content-preview .markdown-alert {
  padding: 0.5rem 1rem;
  margin: 0.75rem 0;
  border-left: 0.25em solid #94a3b8;
  border-radius: 0 8px 8px 0;
  background: #f8fafc;
}

.file-content-preview .markdown-alert > :first-child {
  margin-top: 0;
}

.file-content-preview .markdown-alert > :last-child {
  margin-bottom: 0;
}

.file-content-preview .markdown-alert-title {
  display: flex;
  align-items: center;
  gap: 0.5rem;
  margin: 0 0 0.35rem;
  font-weight: 600;
  line-height: 1.3;
}

.file-content-preview .markdown-alert-title .octicon {
  flex-shrink: 0;
  fill: currentColor;
}

.file-content-preview .markdown-alert-note,
.file-content-preview .markdown-alert-info {
  border-left-color: #0969da;
  background: #eef6ff;
}

.file-content-preview .markdown-alert-note .markdown-alert-title,
.file-content-preview .markdown-alert-info .markdown-alert-title {
  color: #0969da;
}

.file-content-preview .markdown-alert-tip {
  border-left-color: #1a7f37;
  background: #eefbf1;
}

.file-content-preview .markdown-alert-tip .markdown-alert-title {
  color: #1a7f37;
}

.file-content-preview .markdown-alert-important {
  border-left-color: #8250df;
  background: #f6f0ff;
}

.file-content-preview .markdown-alert-important .markdown-alert-title {
  color: #8250df;
}

.file-content-preview .markdown-alert-warning {
  border-left-color: #bf8700;
  background: #fff8e5;
}

.file-content-preview .markdown-alert-warning .markdown-alert-title {
  color: #9a6700;
}

.file-content-preview .markdown-alert-caution {
  border-left-color: #cf222e;
  background: #fff1f2;
}

.file-content-preview .markdown-alert-caution .markdown-alert-title {
  color: #cf222e;
}

.preview-upload {
  display: flex;
  flex-direction: column;
  width: 100%;
}

.preview-upload-card {
  display: flex;
  flex-direction: column;
  width: 100%;
  border: 1px solid var(--border);
  border-radius: 14px;
  overflow: hidden;
  background: var(--panel);
}

.preview-upload-card:has(.preview-upload-zone.has-image) {
  border-color: #334155;
}

.preview-upload-zone {
  min-height: 220px;
  max-height: min(320px, 42vh);
  border: 0;
  border-radius: 0;
  background:
    radial-gradient(circle at 20% 20%, rgba(59, 130, 246, 0.08), transparent 45%),
    radial-gradient(circle at 80% 80%, rgba(99, 102, 241, 0.08), transparent 40%),
    #f8fafc;
  display: flex;
  align-items: center;
  justify-content: center;
  padding: 20px;
  cursor: pointer;
  transition: background 0.15s ease, box-shadow 0.15s ease;
}

.preview-upload-zone:hover,
.preview-upload-zone:focus-visible {
  background:
    radial-gradient(circle at 20% 20%, rgba(59, 130, 246, 0.12), transparent 45%),
    radial-gradient(circle at 80% 80%, rgba(99, 102, 241, 0.1), transparent 40%),
    #f1f5f9;
  outline: none;
  box-shadow: inset 0 0 0 2px rgba(59, 130, 246, 0.18);
}

.preview-upload-zone.drag-over {
  background: #eff6ff;
  box-shadow: inset 0 0 0 2px rgba(59, 130, 246, 0.28);
}

.preview-upload-zone.is-uploading {
  opacity: 0.72;
  pointer-events: none;
}

.preview-upload-zone.has-image {
  padding: 16px;
  background: #0f172a;
  box-shadow: none;
}

.preview-upload-zone.has-image:hover,
.preview-upload-zone.has-image:focus-visible {
  background: #111827;
  box-shadow: inset 0 0 0 2px rgba(148, 163, 184, 0.35);
}

.preview-upload-card:not(:has(.preview-upload-zone.has-image)) .preview-upload-zone {
  margin: 12px;
  border: 2px dashed #cbd5e1;
  border-radius: 10px;
  min-height: 196px;
  max-height: min(280px, 38vh);
  box-sizing: border-box;
}

.preview-upload-card:not(:has(.preview-upload-zone.has-image)) .preview-upload-zone:hover,
.preview-upload-card:not(:has(.preview-upload-zone.has-image)) .preview-upload-zone:focus-visible {
  border-color: #93c5fd;
}

.preview-upload-card:not(:has(.preview-upload-zone.has-image)) .preview-upload-zone.drag-over {
  border-color: #3b82f6;
}

.preview-upload-placeholder {
  text-align: center;
  max-width: 320px;
}

.preview-upload-icon {
  display: block;
  font-size: 42px;
  margin-bottom: 10px;
}

.preview-upload-title {
  margin: 0 0 8px;
  font-size: 18px;
  font-weight: 700;
  color: var(--text);
}

.preview-upload-hint {
  margin: 0 0 14px;
  font-size: 13px;
  line-height: 1.5;
  color: var(--muted);
}

.preview-upload-placeholder .preview-action-paste {
  margin-top: 2px;
}

.preview-image {
  max-width: 100%;
  max-height: min(280px, 38vh);
  object-fit: contain;
  border-radius: 10px;
  box-shadow: 0 12px 32px rgba(15, 23, 42, 0.28);
}

.preview-upload-actions {
  display: flex;
  gap: 8px;
  padding: 10px 12px;
  background: #f8fafc;
  border-top: 1px solid var(--border);
}

.preview-upload-actions.hidden {
  display: none;
}

.preview-action-btn {
  min-height: 36px;
  padding: 0 16px;
  border-radius: 8px;
  font-size: 13px;
  font-weight: 600;
  cursor: pointer;
  transition: background 0.15s ease, border-color 0.15s ease;
}

.preview-action-replace {
  flex: 1;
  border: 1px solid var(--accent);
  background: #dbeafe;
  color: #1e3a8a;
}

.preview-action-paste {
  flex: 1;
  border: 1px solid var(--border);
  background: var(--panel);
  color: var(--text);
}

.preview-action-paste:hover {
  border-color: #93c5fd;
  background: #eff6ff;
  color: #1e3a8a;
}

.preview-action-replace:hover {
  background: #bfdbfe;
}

.preview-action-remove {
  flex: 1;
  border: 1px solid #ef4444;
  background: #fee2e2;
  color: #991b1b;
}

.preview-action-remove:hover {
  background: #fecaca;
}

.node-overview {
  position: relative;
  isolation: isolate;
  border: 1px solid var(--border);
  border-radius: 10px;
  background: var(--panel);
  min-height: 0;
  overflow: auto;
}

.node-overview::before {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  height: min(520px, 72%);
  pointer-events: none;
  z-index: 0;
  background:
    radial-gradient(ellipse 70% 55% at 12% 8%, rgba(99, 102, 241, 0.22), transparent 60%),
    radial-gradient(ellipse 65% 50% at 88% 14%, rgba(59, 130, 246, 0.18), transparent 55%),
    radial-gradient(ellipse 55% 45% at 72% 42%, rgba(167, 139, 250, 0.14), transparent 50%),
    radial-gradient(ellipse 40% 35% at 28% 68%, rgba(14, 165, 233, 0.08), transparent 45%),
    linear-gradient(
      180deg,
      rgba(238, 242, 255, 0.94) 0%,
      rgba(248, 250, 252, 0.72) 32%,
      rgba(255, 255, 255, 0.28) 58%,
      transparent 100%
    );
}

.node-overview::after {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  height: min(460px, 65%);
  pointer-events: none;
  z-index: 0;
  opacity: 0.4;
  background-image:
    linear-gradient(rgba(148, 163, 184, 0.11) 1px, transparent 1px),
    linear-gradient(90deg, rgba(148, 163, 184, 0.11) 1px, transparent 1px);
  background-size: 28px 28px;
  mask-image: linear-gradient(180deg, #000 0%, #000 35%, transparent 100%);
  -webkit-mask-image: linear-gradient(180deg, #000 0%, #000 35%, transparent 100%);
}

.node-overview-content {
  position: relative;
  z-index: 1;
  width: 100%;
  max-width: 100%;
  min-width: 0;
  box-sizing: border-box;
  padding: 20px 22px;
  overflow-x: clip;
}

.node-overview-hero {
  display: flex;
  flex-direction: column;
  gap: 0;
  margin-bottom: 22px;
}

.node-overview-hero-main {
  display: flex;
  gap: 20px;
  align-items: flex-start;
}

.node-overview-thumb-wrap {
  position: relative;
  flex: 0 0 120px;
  width: 120px;
  height: 120px;
  padding: 0;
  border-radius: 10px;
  border: 1px solid var(--border);
  background: #f1f5f9;
  overflow: hidden;
  display: flex;
  align-items: center;
  justify-content: center;
  cursor: pointer;
  transition: border-color 0.15s ease, box-shadow 0.15s ease;
}

.node-overview-thumb-wrap:hover,
.node-overview-thumb-wrap:focus-visible {
  border-color: #93c5fd;
  box-shadow: 0 0 0 2px rgba(147, 197, 253, 0.35);
  outline: none;
}

.node-overview-thumb-wrap.is-uploading {
  opacity: 0.65;
  pointer-events: none;
}

.node-overview-thumb-wrap.is-preview-loading {
  position: relative;
}

.node-overview-thumb-wrap.is-preview-loading > .node-overview-thumb {
  opacity: 0;
}

.node-overview-thumb-wrap.is-preview-loading::before {
  content: "";
  position: absolute;
  inset: 0;
  margin: auto;
  width: 22px;
  height: 22px;
  border: 2px solid #cbd5e1;
  border-top-color: #6366f1;
  border-radius: 50%;
  animation: menu-loading-spin 0.7s linear infinite;
  z-index: 1;
}

.node-overview-thumb-wrap[data-has-preview="1"] {
  cursor: default;
}

.node-overview-thumb-wrap:has(> .broken-image-placeholder) {
  align-items: stretch;
  border-color: #fca5a5;
  background: #fef2f2;
}

.node-overview-thumb-wrap > .broken-image-placeholder.node-overview-thumb {
  width: 100%;
  height: 100%;
  object-fit: cover;
  display: block;
  border-radius: 10px;
}

.doc-props-aside .props-form-preview-thumb-wrap > .broken-image-placeholder {
  width: 100%;
  height: 100%;
  object-fit: cover;
  border-radius: 10px;
}

.broken-image-placeholder {
  display: block;
  box-sizing: border-box;
  background: #fef2f2;
  border-radius: 10px;
}

.file-content-preview img.broken-image-placeholder,
.file-content-preview img.markdown-image-missing,
.node-navigation-preview img.broken-image-placeholder,
.node-navigation-preview img.markdown-image-missing,
.node-overview-excerpt img.broken-image-placeholder,
.node-overview-excerpt img.markdown-image-missing {
  width: 100%;
  max-width: min(100%, 220px);
  height: auto;
  min-height: 80px;
  aspect-ratio: 1 / 1;
  object-fit: cover;
  border-radius: 10px;
}

.node-overview-thumb-actions {
  position: absolute;
  inset: 0;
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 4px;
  background: rgba(15, 23, 42, 0.42);
  opacity: 0;
  transition: opacity 0.15s ease;
  pointer-events: none;
}

.node-overview-thumb-wrap:hover .node-overview-thumb-actions,
.node-overview-thumb-wrap:focus-within .node-overview-thumb-actions {
  opacity: 1;
  pointer-events: auto;
}

.node-overview-thumb-action {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 32px;
  height: 32px;
  padding: 0;
  border: 0;
  border-radius: 999px;
  background: rgba(255, 255, 255, 0.95);
  color: #0f172a;
  cursor: pointer;
  box-shadow: 0 2px 8px rgba(15, 23, 42, 0.18);
}

.node-overview-thumb-action:hover {
  background: #fff;
  transform: scale(1.04);
}

.node-overview-thumb-action--remove {
  color: #b91c1c;
}

.node-overview-thumb-edit-icon {
  display: inline-flex;
  align-items: center;
  justify-content: center;
}

.node-cover-icon {
  display: block;
  background-repeat: no-repeat;
  background-position: center;
}

.node-cover-icon--folder {
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='%23D4A72C'%3E%3Cpath d='M10.5 4.5a2 2 0 0 1 1.6.8l.9 1.2h5a2.5 2.5 0 0 1 2.5 2.5V17a2.5 2.5 0 0 1-2.5 2.5H6A2.5 2.5 0 0 1 3.5 17V7A2.5 2.5 0 0 1 6 4.5h4.5z'/%3E%3C/svg%3E");
}

.node-cover-icon--section {
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none'%3E%3Cpath d='M4.5 7.5A2 2 0 0 1 6.5 5.5H11l1.4 1.8H18a2 2 0 0 1 2 2v8.2a2 2 0 0 1-2 2H6.5a2 2 0 0 1-2-2V7.5z' fill='%233B82F6'/%3E%3Cpath d='M8 11.5h8M8 14.2h6.5M8 16.9H10.5' stroke='%23EFF6FF' stroke-width='1.45' stroke-linecap='round'/%3E%3C/svg%3E");
}

.node-cover-icon--file {
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='%236B7280'%3E%3Cpath d='M7.5 3.5h6.8L20.5 9v11A2.5 2.5 0 0 1 18 22.5H7.5A2.5 2.5 0 0 1 5 20V6A2.5 2.5 0 0 1 7.5 3.5zm6.3 1.8V9h3.7l-3.7-3.7z'/%3E%3C/svg%3E");
}

.node-cover-icon--agent-root {
  width: auto;
  height: auto;
  background-image: none;
  line-height: 1;
}

.node-cover-icon--agent-root::before {
  content: "🤖";
}

.node-overview-thumb-placeholder.node-cover-icon {
  width: 52px;
  height: 52px;
  background-size: 52px 52px;
  opacity: 0.72;
}

.node-overview-thumb-placeholder.node-cover-icon--agent-root {
  width: auto;
  height: auto;
  font-size: 44px;
  opacity: 0.82;
}

.node-overview-thumb-wrap > .node-cover-icon:not(.node-cover-icon--agent-root),
.node-overview-thumb-placeholder.node-cover-icon:not(.node-cover-icon--agent-root) {
  width: 52px;
  height: 52px;
  background-size: 52px 52px;
  opacity: 0.72;
}

.node-overview-thumb-wrap > .node-cover-icon--agent-root,
.node-overview-thumb-placeholder.node-cover-icon--agent-root {
  width: auto;
  height: auto;
  font-size: 44px;
  opacity: 0.82;
}

.node-cover-icon--in-focus-media:not(.node-cover-icon--agent-root) {
  width: 34px;
  height: 34px;
  background-size: 34px 34px;
}

.node-cover-icon--in-focus-media.node-cover-icon--agent-root {
  font-size: 30px;
}

.node-cover-icon--in-focus-table:not(.node-cover-icon--agent-root) {
  width: 26px;
  height: 26px;
  background-size: 26px 26px;
}

.node-cover-icon--in-focus-table.node-cover-icon--agent-root {
  font-size: 22px;
}

.node-cover-icon--in-home2-media:not(.node-cover-icon--agent-root) {
  width: 30px;
  height: 30px;
  background-size: 30px 30px;
}

.node-cover-icon--in-home2-media.node-cover-icon--agent-root {
  font-size: 28px;
}

.node-overview-thumb {
  width: 100%;
  height: 100%;
  object-fit: cover;
  display: block;
}

.node-overview-thumb-placeholder {
  flex: 0 0 auto;
}

.node-overview-thumb-emoji {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 100%;
  height: 100%;
  font-size: 44px;
  line-height: 1;
}

.menu-card-cover-emoji {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 40px;
  height: 40px;
  font-size: 28px;
  line-height: 1;
}

.home2-topic-card-emoji {
  font-size: 22px;
  line-height: 1;
}

.node-cover-emoji {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  font-size: inherit;
  line-height: 1;
}

.node-overview-head {
  flex: 1;
  min-width: 0;
}

.node-overview-head-top {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: 12px;
  margin-bottom: 6px;
}

.node-overview-head-top .node-overview-title {
  margin: 0;
  flex: 1;
  min-width: 0;
}

.node-overview-head-actions {
  display: flex;
  align-items: center;
  gap: 6px;
  flex: 0 0 auto;
}

.node-overview-action-btn {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 6px;
  border: 1px solid var(--border);
  border-radius: 8px;
  background: var(--panel);
  color: var(--text);
  font-size: 12px;
  font-weight: 600;
  padding: 6px 10px;
  cursor: pointer;
  white-space: nowrap;
  transition: border-color 0.15s ease, background-color 0.15s ease, color 0.15s ease;
}

.node-overview-action-btn:hover {
  border-color: #93c5fd;
  background: #eff6ff;
  color: #1d4ed8;
}

.node-overview-action-btn:disabled,
.node-overview-action-btn:disabled:hover {
  opacity: 0.45;
  cursor: not-allowed;
  border-color: var(--border);
  background: var(--panel);
  color: var(--text-muted, var(--text));
}

.node-overview-action-btn.is-active {
  border-color: #93c5fd;
  background: rgba(219, 234, 254, 0.88);
  color: #1e40af;
}

.node-overview-bookmark-btn.is-active .node-overview-action-btn-icon svg {
  fill: currentColor;
}

.node-overview-focus-btn.is-active .node-overview-action-btn-icon svg {
  stroke-width: 2.25;
}

.node-overview-main-btn.is-active .node-overview-action-btn-icon svg {
  stroke-width: 2.25;
  fill: currentColor;
}

.node-overview-slots-template-wrap {
  display: inline-flex;
  align-items: center;
  gap: 0.35rem;
  padding-right: 0.35rem;
  cursor: default;
}

.node-overview-slots-template-select {
  max-width: 7.5rem;
  height: 1.55rem;
  margin: 0;
  padding: 0 0.35rem;
  border: 1px solid rgba(148, 163, 184, 0.45);
  border-radius: 0.35rem;
  background: rgba(255, 255, 255, 0.92);
  font: inherit;
  font-size: 0.6875rem;
  font-weight: 600;
  color: inherit;
  cursor: pointer;
}

.node-overview-slots-template-wrap.is-active,
.node-overview-shared-slot-btn.is-active {
  border-color: #86efac;
  background: rgba(220, 252, 231, 0.92);
  color: #166534;
}

.node-overview-shared-slot-btn.is-active .node-overview-action-btn-icon svg {
  color: #166534;
}

.node-overview-action-btn-icon {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  flex: 0 0 auto;
}

.node-overview-action-btn--icon {
  gap: 0;
  width: 28px;
  min-width: 28px;
  height: 28px;
  padding: 0;
}

.node-navigation-hero-actions .node-overview-action-btn--icon {
  width: 27px;
  min-width: 27px;
  height: 27px;
  padding: 0;
}

.node-overview-title {
  display: inline-flex;
  align-items: baseline;
  flex-wrap: wrap;
  gap: 6px;
  margin: 0 0 6px;
  font-size: 22px;
  font-weight: 700;
  line-height: 1.25;
  color: var(--text);
}

.node-overview-type {
  display: inline-block;
  margin-bottom: 10px;
  padding: 2px 8px;
  border-radius: 6px;
  font-size: 11px;
  font-weight: 600;
  letter-spacing: 0.02em;
  color: #475569;
  background: #f1f5f9;
  border: 1px solid var(--border);
}

.node-overview-desc {
  margin: 0;
  font-size: 14px;
  line-height: 1.55;
  color: var(--muted);
}

.node-overview-meta-rows {
  display: grid;
  grid-template-columns: minmax(140px, 42%) minmax(0, 1fr);
  font-size: 12px;
  border: 1px solid var(--border);
  border-radius: 10px;
  overflow: hidden;
  background: var(--panel);
}

.node-overview-meta-row {
  display: contents;
}

.node-overview-meta-key {
  min-width: 0;
  padding: 8px 12px;
  line-height: 1.35;
  background: #f8fafc;
  border-right: 1px solid var(--border);
  border-bottom: 1px solid var(--border);
  display: flex;
  align-items: flex-start;
  gap: 4px;
}

.node-overview-meta-key.props-form-field-label--interactive {
  cursor: pointer;
}

.node-overview-meta-key-inner {
  min-width: 0;
  flex: 1;
}

.node-overview-meta-tree {
  display: flex;
  flex-direction: column;
  gap: 10px;
}

.node-overview-meta-tree-group-head {
  display: flex;
  align-items: center;
  gap: 6px;
  padding: 6px 12px;
  font-size: 11px;
  font-weight: 700;
  letter-spacing: 0.04em;
  text-transform: uppercase;
  color: #64748b;
  background: linear-gradient(180deg, #f8fafc 0%, #f1f5f9 100%);
  border-bottom: 1px solid var(--border);
}

.node-overview-meta-tree-group-title {
  flex: 1;
  min-width: 0;
}

.node-overview-meta-tree-group-count {
  font-size: 10px;
  font-weight: 700;
  color: #94a3b8;
  padding: 1px 6px;
  border-radius: 999px;
  background: #fff;
  border: 1px solid rgba(148, 163, 184, 0.35);
}

.node-overview-meta-tree-gutter {
  flex-shrink: 0;
  user-select: none;
  pointer-events: none;
}

.node-overview-meta-tree-gutter--group {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 16px;
  height: 16px;
  margin-top: 1px;
  border-radius: 4px;
  background: rgba(148, 163, 184, 0.2);
  box-shadow: inset 0 0 0 1px rgba(148, 163, 184, 0.28);
}

.node-overview-meta-tree-gutter--group::before {
  content: "";
  width: 0;
  height: 0;
  margin-top: 2px;
  border-left: 4px solid transparent;
  border-right: 4px solid transparent;
  border-top: 5px solid #64748b;
}

.node-overview-meta-tree-gutter--leaf {
  position: relative;
  width: 18px;
  min-height: 18px;
  align-self: center;
  flex-shrink: 0;
}

.node-overview-meta-tree-gutter--leaf::before,
.node-overview-meta-tree-gutter--leaf::after {
  content: "";
  position: absolute;
  background: #cbd5e1;
}

.node-overview-meta-tree-gutter--leaf::before {
  left: 8px;
  top: 0;
  bottom: 0;
  width: 1px;
}

.node-overview-meta-tree-gutter--leaf::after {
  left: 8px;
  top: 50%;
  width: 9px;
  height: 1px;
  transform: translateY(-50%);
}

.node-overview-meta-tree-gutter--leaf.is-last::before {
  bottom: 50%;
}

.node-overview-meta-rows--tree {
  display: flex;
  flex-direction: column;
  grid-template-columns: none;
  border: 1px solid var(--border);
  border-radius: 10px;
  overflow: hidden;
  background: var(--panel);
}

.node-overview-meta-rows--tree .node-overview-meta-row {
  display: grid;
  grid-template-columns: minmax(140px, 42%) minmax(0, 1fr);
  width: 100%;
}

.node-overview-meta-rows--tree .node-overview-meta-row:last-child .node-overview-meta-key,
.node-overview-meta-rows--tree .node-overview-meta-row:last-child .node-overview-meta-value {
  border-bottom: 0;
}

.node-overview-meta-row--tree-leaf .node-overview-meta-key {
  padding-left: 6px;
  align-items: center;
}

.node-overview-props-hub-tabs {
  display: flex;
  flex-wrap: wrap;
  gap: 6px;
  padding: 10px 12px 0;
  border-bottom: 1px solid rgba(148, 163, 184, 0.28);
  background: #fff;
}

.node-overview-props-hub-tab {
  appearance: none;
  border: 1px solid rgba(148, 163, 184, 0.35);
  border-radius: 8px 8px 0 0;
  border-bottom: 0;
  margin-bottom: -1px;
  padding: 6px 12px;
  font-size: 11px;
  font-weight: 700;
  letter-spacing: 0.03em;
  text-transform: uppercase;
  color: #64748b;
  background: #f8fafc;
  cursor: pointer;
}

.node-overview-props-hub-tab.is-active {
  color: #1e40af;
  background: #fff;
  border-color: rgba(96, 165, 250, 0.45);
  box-shadow: inset 0 2px 0 #3b82f6;
}

.node-overview-props-hub-tab--settings.is-active {
  color: #475569;
  border-color: rgba(148, 163, 184, 0.55);
  box-shadow: inset 0 2px 0 #64748b;
}

.node-overview-props-hub-panels {
  background: #fff;
}

.node-overview-props-hub-panels [data-hub-panel].hidden {
  display: none;
}

.node-overview-props-hub-fold > .node-overview-fold-body {
  padding: 0;
}

.node-overview-props-hub-fold > .node-overview-fold-head .node-overview-fold-title {
  flex-shrink: 0;
}

.node-overview-props-hub-fold-badges {
  display: flex;
  align-items: center;
  flex-wrap: wrap;
  justify-content: flex-end;
  gap: 8px;
  margin-left: auto;
  margin-right: 2px;
}

.node-overview-props-hub-fold-badge {
  display: inline-flex;
  align-items: center;
  gap: 5px;
  max-width: 100%;
}

.node-overview-props-hub-fold-badge-name {
  font-size: 9px;
  font-weight: 700;
  letter-spacing: 0.03em;
  text-transform: uppercase;
  color: #64748b;
  white-space: nowrap;
}

.node-overview-props-hub-fold-badge-num {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-width: 22px;
  height: 22px;
  padding: 0 5px;
  border-radius: 999px;
  font-size: 10px;
  font-weight: 800;
  line-height: 1;
  border: 1px solid transparent;
  box-sizing: border-box;
}

.node-overview-props-hub-fold-badge--awn .node-overview-props-hub-fold-badge-num {
  color: #1d4ed8;
  background: #dbeafe;
  border-color: rgba(59, 130, 246, 0.35);
}

.node-overview-props-hub-fold-badge--custom .node-overview-props-hub-fold-badge-num {
  color: #6d28d9;
  background: #ede9fe;
  border-color: rgba(139, 92, 246, 0.35);
}

.node-overview-props-hub-fold-badge--settings .node-overview-props-hub-fold-badge-num {
  color: #475569;
  background: #f1f5f9;
  border-color: rgba(148, 163, 184, 0.45);
}

.node-overview-props-hub-fold-badge--awn .node-overview-props-hub-fold-badge-name {
  color: #1e40af;
}

.node-overview-props-hub-fold-badge--custom .node-overview-props-hub-fold-badge-name {
  color: #5b21b6;
}

.node-overview-props-hub-fold-badge--settings .node-overview-props-hub-fold-badge-name {
  color: #64748b;
}

.node-overview-meta-value {
  min-width: 0;
  padding: 8px 12px;
  text-align: left;
  font-size: 13px;
  line-height: 1.4;
  color: var(--text);
  word-break: break-word;
  background: var(--panel);
  border-bottom: 1px solid var(--border);
}

.node-overview-meta-row:last-child .node-overview-meta-key,
.node-overview-meta-row:last-child .node-overview-meta-value {
  border-bottom: 0;
}

.node-overview-meta-key-id {
  font-family: ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", monospace;
  font-size: 11px;
  font-weight: 600;
  letter-spacing: 0.01em;
  color: #334155;
}

.node-overview-meta-key-label {
  font-family: inherit;
  font-size: 11px;
  font-weight: 400;
  color: #94a3b8;
}

.node-overview-meta-value.is-empty {
  color: var(--muted);
  font-style: italic;
}

.node-overview-meta-value-text {
  color: inherit;
}

.node-overview-meta-value-enum {
  color: #1d4ed8;
  font-weight: 600;
}

.node-overview-meta-row.is-schema-undefined .node-overview-meta-key {
  background: #fef2f2;
}

.node-overview-meta-row.is-schema-undefined .node-overview-meta-key-id {
  color: #dc2626;
}

.node-overview-meta-row.is-schema-undefined .node-overview-meta-value {
  color: #991b1b;
}

.node-overview-meta-table {
  width: 100%;
  border-collapse: collapse;
  font-size: 12px;
  margin-bottom: 0;
  border: 1px solid var(--border);
  border-radius: 10px;
  overflow: hidden;
  background: var(--panel);
}

.node-overview-meta-table th,
.node-overview-meta-table td {
  border-bottom: 1px solid var(--border);
  padding: 8px 12px;
  text-align: left;
  vertical-align: top;
}

.node-overview-meta-table tr:last-child th,
.node-overview-meta-table tr:last-child td {
  border-bottom: 0;
}

.node-overview-meta-table th {
  width: 42%;
  max-width: 280px;
  font-size: 11px;
  font-weight: 600;
  letter-spacing: 0;
  color: #64748b;
  background: #f8fafc;
  white-space: normal;
  line-height: 1.35;
}

.node-overview-meta-table td {
  font-size: 13px;
  line-height: 1.4;
  color: var(--text);
  word-break: break-word;
  background: var(--panel);
}

.node-overview-meta-table td.is-empty {
  color: var(--muted);
  font-style: italic;
}

.node-overview-excerpt {
  margin-top: 22px;
  border: 1px solid var(--border);
  border-radius: 10px;
  background: var(--panel);
  overflow: hidden;
}

.node-overview-excerpt-head {
  padding: 9px 14px;
  border-bottom: 1px solid var(--border);
  background: linear-gradient(135deg, #eef2f7 0%, #f8fafc 100%);
}

.node-overview-excerpt-label {
  display: block;
  margin: 0;
  font-size: 12px;
  font-weight: 700;
  text-transform: uppercase;
  letter-spacing: 0.06em;
  color: #475569;
}

.node-overview-excerpt-body {
  padding: 14px 16px 16px;
}

.node-overview-excerpt-text {
  margin: 0;
  font-size: 14px;
  line-height: 1.6;
  color: var(--text);
}

.node-overview-excerpt-text.file-content-preview {
  white-space: normal;
}

.node-overview-excerpt-text.file-content-preview > :first-child {
  margin-top: 0;
}

.node-overview-excerpt-text.file-content-preview > :last-child {
  margin-bottom: 0;
}

.repository-overview-actions {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
  margin-top: 14px;
}

.repository-overview-origin-link {
  color: var(--link);
  word-break: break-all;
}

.repository-overview-readme {
  margin-top: 0;
}

.repository-workspace-page {
  display: flex;
  flex-direction: column;
  gap: 18px;
}

.repository-workspace-dashboard {
  position: relative;
  overflow: hidden;
  border-radius: 14px;
  padding: 18px 18px 16px;
  color: #f8fafc;
  background-color: #0f172a;
  background-image:
    linear-gradient(rgba(255, 255, 255, 0.035) 1px, transparent 1px),
    linear-gradient(90deg, rgba(255, 255, 255, 0.035) 1px, transparent 1px);
  background-size: 22px 22px;
  box-shadow: inset 0 0 0 1px rgba(148, 163, 184, 0.18);
}

.repository-workspace-dashboard.is-light {
  border-radius: 18px;
  padding: 18px 20px 20px;
  color: #0f172a;
  background-color: #f8fafc;
  background-image:
    radial-gradient(circle at 100% 0%, rgba(56, 189, 248, 0.12), transparent 42%),
    radial-gradient(circle at 0% 100%, rgba(99, 102, 241, 0.1), transparent 38%),
    linear-gradient(160deg, #ffffff 0%, #f8fafc 58%, #f1f5f9 100%);
  background-size: auto;
  background-repeat: no-repeat;
  border: 1px solid rgba(148, 163, 184, 0.24);
  box-shadow:
    0 1px 2px rgba(15, 23, 42, 0.04),
    0 14px 30px rgba(15, 23, 42, 0.06);
}

.repository-workspace-dashboard.is-light::before {
  content: "";
  position: absolute;
  inset: 0 0 auto;
  height: 3px;
  background: linear-gradient(90deg, #6366f1, #38bdf8, #22c55e);
  opacity: 0.85;
}

.repository-workspace-dashboard-head {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
  margin-bottom: 14px;
}

.repository-workspace-dashboard-title {
  margin: 0;
  font-size: 1rem;
  font-weight: 700;
  letter-spacing: 0.02em;
  text-transform: uppercase;
  color: rgba(248, 250, 252, 0.92);
}

.repository-workspace-dashboard.is-light .repository-workspace-dashboard-title {
  font-size: 0.8125rem;
  letter-spacing: 0.08em;
  color: #64748b;
}

.repository-workspace-theme-toggle {
  display: inline-flex;
  flex-shrink: 0;
  padding: 2px;
  border-radius: 999px;
  background: rgba(255, 255, 255, 0.08);
  border: 1px solid rgba(255, 255, 255, 0.12);
}

.repository-workspace-dashboard.is-light .repository-workspace-theme-toggle {
  background: #f1f5f9;
  border-color: #cbd5e1;
}

.repository-workspace-theme-toggle-btn {
  margin: 0;
  padding: 4px 10px;
  border: 0;
  border-radius: 999px;
  background: transparent;
  color: rgba(226, 232, 240, 0.78);
  font-size: 0.6875rem;
  font-weight: 700;
  letter-spacing: 0.03em;
  text-transform: uppercase;
  line-height: 1.2;
  cursor: pointer;
  transition: background 0.15s ease, color 0.15s ease, box-shadow 0.15s ease;
  white-space: nowrap;
}

.repository-workspace-theme-toggle-btn.is-active {
  background: rgba(255, 255, 255, 0.14);
  color: #f8fafc;
  box-shadow: inset 0 0 0 1px rgba(255, 255, 255, 0.1);
}

.repository-workspace-dashboard.is-light .repository-workspace-theme-toggle-btn {
  color: #64748b;
}

.repository-workspace-dashboard.is-light .repository-workspace-theme-toggle-btn.is-active {
  background: #fff;
  color: #0f172a;
  box-shadow: 0 1px 4px rgba(15, 23, 42, 0.08);
}

.repository-workspace-theme-toggle-btn:focus {
  outline: none;
}

.repository-workspace-theme-toggle-btn:focus-visible {
  box-shadow: 0 0 0 2px rgba(99, 102, 241, 0.35);
}

.repository-workspace-dashboard-meta {
  display: none;
}

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

.repository-workspace-stat-card {
  position: relative;
  overflow: hidden;
  border-radius: 10px;
  padding: 12px 12px 10px;
  background: rgba(255, 255, 255, 0.06);
  border: 1px solid rgba(255, 255, 255, 0.1);
  transition: transform 0.16s ease, box-shadow 0.16s ease;
}

.repository-workspace-dashboard.is-light .repository-workspace-stat-card {
  border-radius: 14px;
  padding: 14px 14px 12px;
  background: rgba(255, 255, 255, 0.9);
  border: 1px solid rgba(148, 163, 184, 0.2);
  box-shadow:
    inset 0 1px 0 rgba(255, 255, 255, 0.85),
    0 4px 14px rgba(15, 23, 42, 0.04);
}

.repository-workspace-stat-card::before {
  content: "";
  position: absolute;
  inset: 0 auto 0 0;
  width: 4px;
  border-radius: 14px 0 0 14px;
  background: var(--repo-stat-accent, #6366f1);
  opacity: 0.9;
}

.repository-workspace-stat-card.is-tone-files {
  --repo-stat-accent: #3b82f6;
}

.repository-workspace-stat-card.is-tone-folders {
  --repo-stat-accent: #f59e0b;
}

.repository-workspace-stat-card.is-tone-size {
  --repo-stat-accent: #8b5cf6;
}

.repository-workspace-stat-card.is-tone-root {
  --repo-stat-accent: #10b981;
}

.repository-workspace-stat-card:hover {
  transform: translateY(-1px);
}

.repository-workspace-dashboard.is-light .repository-workspace-stat-card:hover {
  box-shadow:
    inset 0 1px 0 rgba(255, 255, 255, 0.9),
    0 8px 20px rgba(15, 23, 42, 0.08);
}

.repository-workspace-stat-icon {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 1.75rem;
  height: 1.75rem;
  margin-bottom: 0.45rem;
  border-radius: 8px;
  font-size: 0.95rem;
  line-height: 1;
  background: color-mix(in srgb, var(--repo-stat-accent, #6366f1) 22%, transparent);
  box-shadow: inset 0 0 0 1px color-mix(in srgb, var(--repo-stat-accent, #6366f1) 28%, transparent);
}

.repository-workspace-dashboard.is-light .repository-workspace-stat-icon {
  width: 2rem;
  height: 2rem;
  margin-bottom: 0.55rem;
  border-radius: 10px;
  font-size: 1rem;
  background: color-mix(in srgb, var(--repo-stat-accent, #6366f1) 12%, white);
  box-shadow: inset 0 0 0 1px color-mix(in srgb, var(--repo-stat-accent, #6366f1) 18%, transparent);
}

.repository-workspace-stat-value {
  font-size: 1.35rem;
  font-weight: 700;
  line-height: 1.15;
  color: #f8fafc;
}

.repository-workspace-dashboard.is-light .repository-workspace-stat-value {
  font-size: 1.625rem;
  font-weight: 800;
  line-height: 1.05;
  letter-spacing: -0.03em;
  color: #0f172a;
}

.repository-workspace-stat-label {
  margin-top: 0.25rem;
  font-size: 0.75rem;
  color: rgba(226, 232, 240, 0.72);
  text-transform: uppercase;
  letter-spacing: 0.04em;
}

.repository-workspace-dashboard.is-light .repository-workspace-stat-label {
  margin-top: 0.35rem;
  font-size: 0.6875rem;
  color: #64748b;
  letter-spacing: 0.06em;
  font-weight: 600;
}

.repository-workspace-stat-hint {
  margin-top: 0.2rem;
  font-size: 0.6875rem;
  color: rgba(226, 232, 240, 0.55);
}

.repository-workspace-ext-bars {
  margin-top: 16px;
}

.repository-workspace-dashboard.is-light .repository-workspace-ext-bars {
  margin-top: 18px;
  padding: 14px 14px 10px;
  border-radius: 14px;
  background: rgba(255, 255, 255, 0.72);
  border: 1px solid rgba(148, 163, 184, 0.18);
}

.repository-workspace-ext-bars-title {
  margin: 0 0 8px;
  font-size: 0.8125rem;
  font-weight: 600;
  color: rgba(248, 250, 252, 0.9);
}

.repository-workspace-dashboard.is-light .repository-workspace-ext-bars-title {
  margin-bottom: 10px;
  font-size: 0.75rem;
  font-weight: 700;
  letter-spacing: 0.06em;
  text-transform: uppercase;
  color: #64748b;
}

.repository-workspace-ext-row {
  display: grid;
  grid-template-columns: minmax(88px, 0.85fr) 1fr auto;
  gap: 10px;
  align-items: center;
  margin-bottom: 8px;
  font-size: 0.75rem;
}

.repository-workspace-ext-row:last-child {
  margin-bottom: 0;
}

.repository-workspace-ext-label {
  color: rgba(226, 232, 240, 0.82);
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.repository-workspace-dashboard.is-light .repository-workspace-ext-label {
  color: #334155;
  font-weight: 600;
}

.repository-workspace-ext-track {
  height: 8px;
  border-radius: 999px;
  background: rgba(255, 255, 255, 0.08);
  overflow: hidden;
}

.repository-workspace-dashboard.is-light .repository-workspace-ext-track {
  height: 9px;
  background: #e2e8f0;
  box-shadow: inset 0 1px 2px rgba(15, 23, 42, 0.06);
}

.repository-workspace-ext-fill {
  display: block;
  height: 100%;
  border-radius: inherit;
  background: linear-gradient(90deg, #6366f1, #38bdf8);
}

.repository-workspace-dashboard.is-light .repository-workspace-ext-fill {
  box-shadow: 0 0 0 1px rgba(99, 102, 241, 0.08);
}

.repository-workspace-ext-count {
  color: rgba(226, 232, 240, 0.72);
  white-space: nowrap;
}

.repository-workspace-dashboard.is-light .repository-workspace-ext-count {
  min-width: 4.5rem;
  text-align: right;
  color: #64748b;
  font-variant-numeric: tabular-nums;
}

.repository-workspace-root-listing {
  margin-top: 16px;
}

.repository-workspace-dashboard.is-light .repository-workspace-root-listing {
  margin-top: 18px;
  padding: 14px 14px 10px;
  border-radius: 14px;
  background: rgba(255, 255, 255, 0.72);
  border: 1px solid rgba(148, 163, 184, 0.18);
}

.repository-workspace-root-listing-title {
  margin: 0 0 8px;
  font-size: 0.8125rem;
  font-weight: 600;
  color: rgba(248, 250, 252, 0.9);
}

.repository-workspace-dashboard.is-light .repository-workspace-root-listing-title {
  margin-bottom: 10px;
  font-size: 0.75rem;
  font-weight: 700;
  letter-spacing: 0.06em;
  text-transform: uppercase;
  color: #64748b;
}

.repository-workspace-root-listing-empty {
  margin: 0;
  font-size: 0.75rem;
  color: rgba(226, 232, 240, 0.55);
}

.repository-workspace-dashboard.is-light .repository-workspace-root-listing-empty {
  color: #94a3b8;
}

.repository-workspace-root-list {
  list-style: none;
  margin: 0;
  padding: 0;
  display: flex;
  flex-direction: column;
  gap: 6px;
}

.repository-workspace-root-item {
  display: grid;
  grid-template-columns: auto 1fr;
  gap: 10px;
  align-items: center;
  padding: 7px 10px;
  border-radius: 10px;
  background: rgba(255, 255, 255, 0.04);
  border: 1px solid rgba(255, 255, 255, 0.06);
  font-size: 0.8125rem;
}

.repository-workspace-dashboard.is-light .repository-workspace-root-item {
  background: rgba(248, 250, 252, 0.9);
  border-color: rgba(148, 163, 184, 0.2);
}

.repository-workspace-root-icon {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 1.25rem;
  height: 1.25rem;
  flex-shrink: 0;
  font-size: 1rem;
  line-height: 1;
}

.repository-workspace-root-icon .material-file-icon {
  display: block;
  width: 18px;
  height: 18px;
  object-fit: contain;
}

.repository-workspace-root-item-main {
  min-width: 0;
}

.repository-workspace-root-item-name {
  display: block;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
  font-family: ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, monospace;
  font-size: 0.8125rem;
  color: rgba(248, 250, 252, 0.92);
}

.repository-workspace-dashboard.is-light .repository-workspace-root-item-name {
  color: #0f172a;
}

.repository-workspace-root-item-meta {
  display: block;
  margin-top: 2px;
  font-size: 0.6875rem;
  color: rgba(226, 232, 240, 0.55);
  font-variant-numeric: tabular-nums;
}

.repository-workspace-dashboard.is-light .repository-workspace-root-item-meta {
  color: #64748b;
}

.repository-workspace-meta-chips {
  display: flex;
  flex-wrap: wrap;
  gap: 6px;
  margin-top: 14px;
}

.repository-workspace-meta-chip {
  display: inline-flex;
  align-items: center;
  max-width: 100%;
  padding: 0.2rem 0.55rem;
  border-radius: 999px;
  font-size: 0.75rem;
  line-height: 1.3;
  color: #e2e8f0;
  background: rgba(255, 255, 255, 0.08);
  border: 1px solid rgba(255, 255, 255, 0.12);
  text-decoration: none;
  word-break: break-all;
}

.repository-workspace-dashboard.is-light .repository-workspace-meta-chip {
  color: #334155;
  background: rgba(255, 255, 255, 0.88);
  border: 1px solid rgba(148, 163, 184, 0.24);
}

.repository-workspace-actions {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
  margin-top: 14px;
}

.repository-workspace-action-btn {
  background: rgba(255, 255, 255, 0.1);
  border-color: rgba(255, 255, 255, 0.18);
  color: #f8fafc;
}

.repository-workspace-action-btn:hover,
.repository-workspace-action-btn:focus-visible {
  background: rgba(255, 255, 255, 0.16);
}

.repository-workspace-readme,
.repository-workspace-manifest-excerpt {
  margin-top: 0;
}

.repository-workspace-loading,
.repository-workspace-error {
  padding: 0.75rem 0;
  color: #64748b;
}

.repository-workspace-readme-empty {
  margin: 0;
  color: #94a3b8;
  font-size: 0.95rem;
  font-style: italic;
}

.workspace-path-header.is-repository-workspace .node-workspace-nav-controls,
.workspace-path-header.is-repository-workspace .node-default-landing-btn,
.workspace-path-header.is-media-library-workspace .node-workspace-nav-controls,
.workspace-path-header.is-media-library-workspace .node-default-landing-btn,
.workspace-path-header.is-media-library-workspace #workspace-path-toolbar {
  display: none;
}

.is-media-library-workspace-hub .node-navigation-hub-rail,
.is-media-library-workspace-hub .node-entry-overview-cross-slot-search,
.is-media-library-workspace-hub .node-entry-overview-browse-slot-counters,
.is-media-library-workspace-hub
  .node-entry-overview-hub-main-slot-counters:not(.node-entry-overview-hub-workspace-slot-counters) {
  display: none !important;
}

.node-overview-block.is-repository-workspace .node-navigation-outside-slots-warning,
.node-overview-block.is-repository-workspace .node-navigation-workspace-counter,
.node-overview-block.is-repository-workspace .node-navigation-elements-nav-accordion,
.is-repository-workspace-hub .node-navigation-workspace-counter,
.is-repository-workspace-hub .node-navigation-elements-nav-accordion,
.is-repository-workspace-hub .node-navigation-hub-rail {
  display: none !important;
}

.node-navigation-hub-main .repository-workspace-dashboard,
.node-navigation-hub-main .repository-workspace-readme {
  margin-top: 1rem;
}

.node-overview-thumb-wrap.is-repository-default-thumb {
  display: grid;
  place-items: center;
  cursor: default;
  background:
    radial-gradient(circle at 30% 20%, rgba(99, 102, 241, 0.16), transparent 58%),
    linear-gradient(145deg, #eef2ff, #f8fafc);
  border: 1px solid rgba(148, 163, 184, 0.28);
  box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.85);
}

.node-overview-thumb-wrap.is-repository-default-thumb .node-overview-thumb-actions {
  display: none;
}

.repository-hero-thumb-icon {
  font-size: 2.4rem;
  line-height: 1;
  filter: drop-shadow(0 2px 6px rgba(15, 23, 42, 0.12));
}

.is-repository-workspace-hub .node-entry-overview-tags,
.is-repository-workspace-hub .node-navigation-hero-meta-chip--quality {
  display: none !important;
}

.is-repository-workspace-hub .repository-workspace-actions {
  display: none;
}

.repository-workspace-mockup-cta-wrap {
  margin: 0.65rem 0 1.15rem;
}

.repository-workspace-mockup-cta {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 0.5rem;
  width: 100%;
  min-height: 2.85rem;
  padding: 0.7rem 1.1rem;
  border: 1px solid #4338ca;
  border-radius: 0.65rem;
  background: linear-gradient(180deg, #4f46e5 0%, #4338ca 100%);
  color: #fff;
  font-size: 0.95rem;
  font-weight: 600;
  cursor: pointer;
  box-shadow: 0 1px 2px rgba(30, 27, 75, 0.12), 0 4px 14px rgba(67, 56, 202, 0.22);
  transition: background 0.15s ease, border-color 0.15s ease, box-shadow 0.15s ease;
}

.repository-workspace-mockup-cta-icon {
  display: inline-flex;
  flex-shrink: 0;
  opacity: 0.95;
}

.repository-workspace-mockup-cta-icon svg {
  width: 1.125rem;
  height: 1.125rem;
}

.repository-workspace-mockup-cta-label {
  line-height: 1.2;
}

.repository-workspace-mockup-cta:hover,
.repository-workspace-mockup-cta:focus-visible {
  border-color: #3730a3;
  background: linear-gradient(180deg, #6366f1 0%, #4f46e5 100%);
  box-shadow: 0 2px 4px rgba(30, 27, 75, 0.14), 0 6px 18px rgba(67, 56, 202, 0.28);
  outline: none;
}

.repository-workspace-mockup-cta:disabled,
.repository-workspace-mockup-cta.is-disabled {
  cursor: not-allowed;
  opacity: 0.5;
  border-color: #4b5563;
  background: linear-gradient(180deg, #374151 0%, #1f2937 100%);
  box-shadow: none;
  pointer-events: none;
}

.repository-workspace-mockup-cta:disabled:hover,
.repository-workspace-mockup-cta:disabled:focus-visible,
.repository-workspace-mockup-cta.is-disabled:hover,
.repository-workspace-mockup-cta.is-disabled:focus-visible {
  border-color: #4b5563;
  background: linear-gradient(180deg, #374151 0%, #1f2937 100%);
  box-shadow: none;
}

.repository-workspace-dashboard.is-light .repository-workspace-mockup-cta:disabled,
.repository-workspace-dashboard.is-light .repository-workspace-mockup-cta.is-disabled {
  border-color: #d1d5db;
  background: #e5e7eb;
  color: #9ca3af;
}

.repository-workspace-dashboard.is-light .repository-workspace-mockup-cta {
  color: #fff;
}

.doc-body-main .doc-slab-content.is-repository-mockup-preview {
  display: flex;
  flex-direction: column;
  min-height: 0;
  padding: 0;
  --doc-slab-content-inline-inset: 0;
  overflow: hidden;
}

.doc-body-main .doc-slab-content.is-repository-mockup-preview > .doc-slab-main {
  display: flex;
  flex: 1 1 auto;
  flex-direction: column;
  min-height: 0;
  padding: 0;
  margin: 0;
}

.repository-mockup-preview {
  display: flex;
  flex: 1 1 auto;
  flex-direction: column;
  min-height: 0;
  margin: 0;
  border: 0;
  border-radius: 0;
  overflow: hidden;
  background: #0f172a;
}

.repository-mockup-preview.hidden {
  display: none !important;
}

.repository-mockup-preview-toolbar {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 0.75rem;
  padding: 0.45rem 0.65rem;
  background: rgba(15, 23, 42, 0.92);
  color: #e2e8f0;
  border-bottom: 1px solid rgba(148, 163, 184, 0.25);
}

.repository-mockup-preview-title {
  font-size: 0.8125rem;
  font-weight: 600;
  letter-spacing: 0.02em;
  text-transform: uppercase;
}

.repository-mockup-preview-close-btn {
  border: 0;
  border-radius: 0.375rem;
  padding: 0.35rem 0.65rem;
  background: rgba(148, 163, 184, 0.18);
  color: #f8fafc;
  font-size: 0.8125rem;
  cursor: pointer;
}

.repository-mockup-preview-close-btn:hover,
.repository-mockup-preview-close-btn:focus-visible {
  background: rgba(148, 163, 184, 0.3);
  outline: none;
}

.repository-mockup-preview-iframe {
  flex: 1 1 auto;
  width: 100%;
  min-height: 0;
  border: 0;
  background: #fff;
}

@media (max-width: 900px) {
  .repository-workspace-stat-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}

.node-overview-children {
  margin-bottom: 24px;
}

.node-overview-children-grid {
  display: grid;
  grid-template-columns: repeat(auto-fill, minmax(160px, 1fr));
  gap: 12px;
}

.menu-card--gallery {
  display: flex;
  flex-direction: column;
  border-radius: 12px;
  transition:
    border-color 0.15s ease,
    box-shadow 0.15s ease,
    transform 0.15s ease;
}

.menu-card--gallery .menu-card-body {
  display: flex;
  flex-direction: column;
  flex: 1;
  min-height: 0;
}

.menu-card--gallery .menu-card-cover {
  position: relative;
  width: 100%;
  height: 112px;
  overflow: hidden;
  margin: 0;
  padding: 0;
  background: linear-gradient(
    135deg,
    var(--node-color-bg, #ddd6fe) 0%,
    color-mix(in srgb, var(--node-color-bg, #bfdbfe) 42%, #ffffff) 100%
  );
  display: flex;
  align-items: center;
  justify-content: center;
}

.menu-card--gallery .menu-card-cover-img {
  display: block;
  width: 100%;
  height: 100%;
  margin: 0;
  padding: 0;
  border: 0;
  object-fit: cover;
  object-position: center;
}

.menu-card--gallery:not(.active):not(:hover):not(:focus-within) .menu-card-cover-img {
  opacity: 0.72;
  filter: saturate(0.75);
}

.menu-card--gallery:is(:hover, :focus-within, .active) .menu-card-cover-img {
  opacity: 1;
  filter: none;
}

.menu-card--gallery .menu-card-cover-icon {
  width: 40px;
  height: 40px;
  background-size: 40px 40px;
  opacity: 0.88;
  filter: saturate(0.9);
}

.menu-card--gallery:not(.active):not(:hover):not(:focus-within) .menu-card-cover-icon {
  opacity: 0.72;
  filter: saturate(0.75);
}

.menu-card--gallery:is(:hover, :focus-within, .active) .menu-card-cover-icon {
  opacity: 1;
  filter: none;
}

.menu-card--gallery .menu-card-cover-icon.node-cover-icon--agent-root {
  font-size: 36px;
}

.menu-card--gallery .menu-card-cover-emoji {
  width: 40px;
  height: 40px;
  font-size: 28px;
  opacity: 0.88;
}

.menu-card--gallery:not(.active):not(:hover):not(:focus-within) .menu-card-cover-emoji {
  opacity: 0.72;
}

.menu-card--gallery:is(:hover, :focus-within, .active) .menu-card-cover-emoji {
  opacity: 1;
}

.menu-card--gallery .menu-card-foot {
  margin-top: auto;
  padding: 12px 12px 13px;
  border-top: 1px solid rgba(15, 23, 42, 0.06);
  background: var(--panel);
}

.menu-card--gallery .menu-card-title-row {
  padding: 0;
  border-bottom: 0;
}

.menu-card--gallery .menu-card-title {
  padding: 0;
  border-bottom: 0;
  font-size: 13px;
  font-weight: 700;
  line-height: 1.35;
  color: #475569;
  background: transparent;
  display: -webkit-box;
  -webkit-line-clamp: 2;
  -webkit-box-orient: vertical;
  overflow: hidden;
  transition: color 0.15s ease;
}

.menu-card--gallery.has-node-color:is(:hover, :focus-within, .active) .menu-card-foot {
  background: color-mix(in srgb, var(--node-color-bg) 18%, var(--panel));
}

.menu-card--gallery.has-node-color:is(:hover, :focus-within, .active) .menu-card-title {
  color: var(--node-color-text);
  background: transparent;
}

.menu-card--gallery.has-node-color:is(:hover, :focus-within, .active) {
  border-color: color-mix(in srgb, var(--node-color-bg) 70%, var(--border));
  box-shadow: 0 6px 18px color-mix(in srgb, var(--node-color-bg) 24%, transparent);
}

.menu-card--gallery .menu-card-actions {
  top: 8px;
  right: 8px;
}

.menu-card--gallery .menu-card-actions .bookmark-btn,
.menu-card--gallery .menu-card-actions .node-settings-btn {
  opacity: 0.92;
  backdrop-filter: blur(4px);
}

.menu-card--folder {
  border-color: var(--border);
}

.node-overview-children-grid .menu-card-actions .bookmark-btn,
.node-overview-children-grid .menu-card-actions .node-settings-btn {
  opacity: 1;
}

/* Компактные gallery-карточки в блоке «Подразделы / Темы» на hub навигации */
.node-navigation-subsections .node-overview-children-grid {
  grid-template-columns: repeat(auto-fill, minmax(118px, 1fr));
  gap: 8px;
}

.node-navigation-subsections .menu-card--gallery {
  border-radius: 8px;
}

.node-navigation-subsections .menu-card--gallery .menu-card-cover {
  height: 64px;
}

.node-navigation-subsections .menu-card--gallery .menu-card-cover-icon {
  width: 28px;
  height: 28px;
  background-size: 28px 28px;
}

.node-navigation-subsections .menu-card--gallery .menu-card-cover-icon.node-cover-icon--agent-root {
  font-size: 24px;
}

.node-navigation-subsections .menu-card--gallery .menu-card-cover-emoji {
  width: 28px;
  height: 28px;
  font-size: 20px;
}

.node-navigation-subsections .menu-card--gallery .menu-card-foot {
  padding: 5px 8px 6px;
  min-height: 2.6em;
  display: flex;
  align-items: center;
}

.node-navigation-subsections .menu-card--gallery .menu-card-title-row {
  width: 100%;
  min-width: 0;
  flex-direction: column;
  align-items: stretch;
  gap: 2px;
}

.node-navigation-subsections .menu-card--gallery .menu-card-title-meta:empty {
  display: none;
}

.node-navigation-subsections .menu-card--gallery .menu-card-title {
  flex: none;
  width: 100%;
  font-size: 11px;
  font-weight: 650;
  line-height: 1.35;
  letter-spacing: -0.01em;
  color: #334155;
  display: -webkit-box;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 2;
  overflow: hidden;
  text-overflow: ellipsis;
  word-break: break-word;
  overflow-wrap: anywhere;
}

.node-navigation-subsections .menu-card--gallery.has-node-color .menu-card-title {
  color: var(--node-color-text, #334155);
}

.node-navigation-subsections .menu-card--gallery.has-node-color .menu-card-foot {
  background: color-mix(in srgb, var(--node-color-bg, #f8fafc) 12%, var(--panel));
}

.node-navigation-subsections .menu-card--gallery .menu-card-actions {
  top: 4px;
  right: 4px;
  gap: 2px;
}

.node-navigation-subsections .menu-card-actions .bookmark-btn,
.node-navigation-subsections .menu-card-actions .node-settings-btn {
  width: 20px;
  height: 20px;
  min-width: 20px;
  min-height: 20px;
  font-size: 11px;
}

.node-navigation-subsections .node-navigation-memory-head {
  margin-bottom: 4px;
}

.node-navigation-subsections .node-navigation-memory-head .node-navigation-memory-title {
  font-size: 11px;
}

.tabular-source-btn,
.data-hub-bundle-edit-btn,
.tabular-table-back-btn,
.data-hub-bundle-back-btn {
  border: 1px solid var(--border);
  border-radius: 8px;
  background: var(--panel);
  color: var(--text);
  font-size: 12px;
  font-weight: 600;
  padding: 6px 10px;
  cursor: pointer;
}

.tabular-source-btn:hover,
.data-hub-bundle-edit-btn:hover,
.tabular-table-back-btn:hover,
.data-hub-bundle-back-btn:hover {
  border-color: #93c5fd;
  background: #eff6ff;
}

.folder-browse-upload-btn {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 5px;
  width: auto;
  min-width: 0;
  height: 28px;
  margin: 0;
  padding: 0 8px 0 6px;
  border: 1px solid #86efac;
  border-radius: 8px;
  background: #f0fdf4;
  color: #166534;
  font: inherit;
  font-size: 11px;
  font-weight: 600;
  line-height: 1;
  white-space: nowrap;
  cursor: pointer;
  flex-shrink: 0;
  transition: background 0.15s ease, border-color 0.15s ease, color 0.15s ease;
}

.folder-browse-upload-btn.hidden {
  display: none;
}

.folder-browse-upload-btn:hover:not(:disabled),
.folder-browse-upload-btn:focus-visible:not(:disabled) {
  border-color: #4ade80;
  background: #dcfce7;
  color: #14532d;
}

.folder-browse-upload-btn:disabled,
.folder-browse-upload-btn.is-uploading {
  opacity: 0.65;
  cursor: wait;
}

.folder-browse-upload-icon {
  width: 14px;
  height: 14px;
  flex-shrink: 0;
  display: block;
}

.folder-browse-delete-selected-btn {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 4px;
  width: auto;
  min-width: 28px;
  height: 28px;
  margin: 0;
  padding: 0 6px;
  border: 1px solid rgba(239, 68, 68, 0.45);
  border-radius: 8px;
  background: #fef2f2;
  color: #b91c1c;
  font: inherit;
  line-height: 1;
  white-space: nowrap;
  cursor: pointer;
  flex-shrink: 0;
  transition: background 0.15s ease, border-color 0.15s ease, color 0.15s ease;
}

.folder-browse-delete-selected-count {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-width: 16px;
  height: 16px;
  padding: 0 4px;
  border-radius: 999px;
  font-size: 10px;
  font-weight: 700;
  font-variant-numeric: tabular-nums;
  line-height: 1;
  color: #991b1b;
  background: rgba(239, 68, 68, 0.14);
}

.folder-browse-delete-selected-btn.hidden {
  display: none;
}

.folder-browse-delete-selected-btn:hover:not(:disabled),
.folder-browse-delete-selected-btn:focus-visible:not(:disabled) {
  border-color: #f87171;
  background: #fee2e2;
  color: #991b1b;
}

.folder-browse-delete-selected-btn:disabled {
  opacity: 0.55;
  cursor: not-allowed;
}

.folder-browse-upload-btn.is-active {
  border-color: #16a34a;
  background: #bbf7d0;
  box-shadow: 0 0 0 2px rgba(34, 197, 94, 0.18);
}

.folder-browse-hub > .folder-browse-upload-host.is-open {
  margin-bottom: 12px;
}

.folder-browse-file-hub > .folder-browse-upload-host.is-open {
  margin: 0 0 16px;
}

.workspace-refresh-btn {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 28px;
  min-width: 28px;
  height: 28px;
  padding: 0;
  border: 1px solid #cbd5e1;
  border-radius: 8px;
  background: #fff;
  color: #374151;
  font: inherit;
  line-height: 1;
  cursor: pointer;
  flex-shrink: 0;
}

.workspace-refresh-btn.hidden {
  display: none;
}

.workspace-refresh-btn:hover:not(:disabled) {
  border-color: #93c5fd;
  background: #eff6ff;
  color: #1e40af;
}

.workspace-reveal-folder-btn {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 28px;
  min-width: 28px;
  height: 28px;
  padding: 0;
  border: 1px solid #cbd5e1;
  border-radius: 8px;
  background: #fff;
  line-height: 1;
  cursor: pointer;
  flex-shrink: 0;
  font: inherit;
  color: #374151;
}

.workspace-reveal-folder-btn:hover {
  border-color: #93c5fd;
  background: #eff6ff;
}

.workspace-reveal-folder-icon {
  width: 18px;
  height: 18px;
  flex-shrink: 0;
  display: block;
}

.workspace-refresh-icon {
  width: 18px;
  height: 18px;
  flex-shrink: 0;
}

.workspace-refresh-btn:disabled {
  opacity: 0.55;
  cursor: wait;
}

.workspace-refresh-btn.is-spinning .workspace-refresh-icon {
  animation: workspace-refresh-spin 0.75s linear infinite;
}

@keyframes workspace-refresh-spin {
  from {
    transform: rotate(0deg);
  }
  to {
    transform: rotate(360deg);
  }
}

.node-overview-memory {
  margin-bottom: 24px;
}

.node-overview-divider {
  margin-top: 8px;
  padding-top: 20px;
  border-top: 1px solid var(--border);
}

.node-overview-memory-minimal {
  display: flex;
  flex-direction: column;
  gap: 10px;
}

.node-overview-memory-link {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
  width: 100%;
  padding: 12px 14px;
  border: 1px solid var(--border);
  border-radius: 8px;
  text-decoration: none;
  color: var(--text);
  font: inherit;
  font-size: 14px;
  font-weight: 500;
  cursor: pointer;
  text-align: left;
  transition: border-color 0.15s, box-shadow 0.15s;
}

.node-overview-memory-link:focus-visible {
  outline: none;
}

.node-overview-memory-link--internal {
  background: linear-gradient(135deg, #f6f8fb, #eef2f6);
  border-color: #d5dee8;
}

.node-overview-memory-link--internal:hover,
.node-overview-memory-link--internal:focus-visible {
  background: linear-gradient(135deg, #eef2f6, #e6ebf1);
  border-color: #c5d0dc;
  box-shadow: 0 0 0 2px rgba(100, 116, 139, 0.08);
}

.node-overview-memory-link--internal .node-overview-memory-badge {
  background: rgba(255, 255, 255, 0.9);
  border-color: #d5dee8;
  color: #475569;
}

.node-overview-memory-link--external {
  background: linear-gradient(135deg, #faf9f7, #f3f1ed);
  border-color: #e3ddd4;
}

.node-overview-memory-link--external:hover,
.node-overview-memory-link--external:focus-visible {
  background: linear-gradient(135deg, #f3f1ed, #ebe7e0);
  border-color: #d5cec3;
  box-shadow: 0 0 0 2px rgba(120, 113, 108, 0.08);
}

.node-overview-memory-link--external .node-overview-memory-badge {
  background: rgba(255, 255, 255, 0.9);
  border-color: #e3ddd4;
  color: #57534e;
}

.node-overview-memory-link--tabular {
  background: linear-gradient(135deg, #f7faf8, #eef3ef);
  border-color: #d8e3dc;
}

.node-overview-memory-link--tabular:hover,
.node-overview-memory-link--tabular:focus-visible {
  background: linear-gradient(135deg, #eef3ef, #e4ebe6);
  border-color: #c8d5cc;
  box-shadow: 0 0 0 2px rgba(87, 124, 101, 0.08);
}

.node-overview-memory-link--tabular .node-overview-memory-badge {
  background: rgba(255, 255, 255, 0.9);
  border-color: #d8e3dc;
  color: #4b5563;
}

.node-overview-memory-link--empty {
  background: linear-gradient(135deg, #f8fafc, #f1f5f9) !important;
  border-color: #e2e8f0 !important;
  border-style: dashed;
}

.node-overview-memory-link--empty:hover,
.node-overview-memory-link--empty:focus-visible {
  background: linear-gradient(135deg, #f1f5f9, #e8edf2) !important;
  border-color: #cbd5e1 !important;
  box-shadow: 0 0 0 2px rgba(148, 163, 184, 0.1) !important;
}

.node-overview-memory-link--empty .node-overview-memory-link-title {
  color: #64748b;
}

.node-overview-memory-link--empty .node-overview-memory-link-desc,
.node-overview-memory-link--empty .node-overview-memory-link-path {
  color: #94a3b8;
}

.node-overview-memory-link--empty .node-overview-memory-badge {
  background: #e2e8f0 !important;
  border-color: #cbd5e1 !important;
  color: #64748b !important;
}

.node-overview-memory-link-body {
  display: flex;
  flex-direction: column;
  gap: 3px;
  min-width: 0;
  flex: 1;
}

.node-overview-memory-link-title {
  font-size: 14px;
  font-weight: 600;
  color: var(--text);
  line-height: 1.3;
}

.node-overview-memory-link-desc {
  font-size: 12px;
  font-weight: 400;
  line-height: 1.4;
  color: #475569;
}

.node-overview-memory-link-path {
  font-size: 11px;
  font-weight: 500;
  font-family: ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, monospace;
  line-height: 1.35;
  color: var(--muted);
  word-break: break-all;
}

.node-overview-media-link {
  grid-column: 1 / -1;
  display: flex;
  align-items: center;
  gap: 14px;
  width: 100%;
  padding: 14px 16px;
  border: 1px solid #e9d5ff;
  border-radius: 12px;
  background: linear-gradient(135deg, #fdf4ff 0%, #faf5ff 52%, #f5f3ff 100%);
  color: var(--text);
  font: inherit;
  text-align: left;
  cursor: pointer;
  transition: border-color 0.15s ease, box-shadow 0.15s ease, transform 0.15s ease;
}

.node-overview-media-link:hover,
.node-overview-media-link:focus-visible {
  border-color: #d8b4fe;
  box-shadow: 0 4px 18px rgba(124, 58, 237, 0.1);
  transform: translateY(-1px);
}

.node-overview-media-link:focus-visible {
  outline: none;
  box-shadow: 0 0 0 2px rgba(167, 139, 250, 0.28);
}

.node-overview-media-link--empty {
  border-style: dashed;
  border-color: #ddd6fe;
  background: linear-gradient(135deg, #faf5ff 0%, #f5f3ff 100%);
}

.node-overview-media-link--empty:hover,
.node-overview-media-link--empty:focus-visible {
  transform: none;
}

.node-overview-media-link-visual {
  position: relative;
  flex: 0 0 52px;
  width: 52px;
  height: 52px;
}

.node-overview-media-link-visual-icon {
  position: absolute;
  display: flex;
  align-items: center;
  justify-content: center;
  width: 28px;
  height: 28px;
  border-radius: 8px;
  background: rgba(255, 255, 255, 0.94);
  border: 1px solid #ede9fe;
  font-size: 14px;
  line-height: 1;
  box-shadow: 0 2px 8px rgba(124, 58, 237, 0.1);
  top: 0;
  left: 0;
}

.node-overview-media-link-visual-icon--b {
  top: 12px;
  left: 16px;
  z-index: 2;
}

.node-overview-media-link-visual-icon--c {
  top: 24px;
  left: 4px;
  z-index: 1;
}

.node-overview-media-link-body {
  display: flex;
  flex: 1;
  flex-direction: column;
  gap: 4px;
  min-width: 0;
}

.node-overview-media-link-title {
  font-size: 15px;
  font-weight: 700;
  color: #5b21b6;
}

.node-overview-media-link-desc {
  font-size: 13px;
  line-height: 1.45;
  color: #6b7280;
}

.node-overview-media-link-path {
  font-family: ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, monospace;
  font-size: 11px;
  line-height: 1.35;
  color: #7c3aed;
  word-break: break-all;
}

.node-overview-media-link-chips {
  display: flex;
  flex-wrap: wrap;
  gap: 6px;
  margin-top: 4px;
}

.node-overview-media-link-chip {
  display: inline-flex;
  align-items: center;
  padding: 2px 8px;
  border-radius: 999px;
  background: rgba(255, 255, 255, 0.82);
  border: 1px solid #e9d5ff;
  font-size: 11px;
  font-weight: 600;
  color: #6d28d9;
}

.node-overview-media-badge,
.node-overview-memory-badge {
  flex: 0 0 auto;
  align-self: center;
  min-width: 36px;
  padding: 6px 10px;
  border-radius: 999px;
  border: 1px solid transparent;
  font-size: 13px;
  font-weight: 700;
  line-height: 1.2;
  text-align: center;
}

.node-overview-media-badge {
  background: rgba(255, 255, 255, 0.9);
  border-color: #ddd6fe;
  color: #6d28d9;
}

.node-overview-memory-badge {
  margin-left: 4px;
}

.tabular-meta {
  margin: 0;
  font-size: 12px;
  font-weight: 600;
  color: #475569;
}

.tabular-meta--muted {
  font-weight: 500;
  color: var(--muted);
}

.tabular-table tfoot th.tabular-table-footer {
  position: static;
  top: auto;
  background: #f8fafc;
  border-top: 1px solid var(--border);
  border-bottom: none;
  font-weight: 600;
  white-space: normal;
}

.tabular-table tfoot tr + tr th.tabular-table-footer {
  border-top: 0;
  padding-top: 0;
}

.tabular-table-wrap {
  overflow: auto;
  border: 1px solid var(--border);
  border-radius: 10px;
  background: var(--panel);
}

.tabular-table {
  width: 100%;
  border-collapse: collapse;
  font-size: 12px;
}

.tabular-table th,
.tabular-table td {
  padding: 8px 10px;
  border-bottom: 1px solid var(--border);
  text-align: left;
  vertical-align: top;
}

.tabular-table th {
  position: sticky;
  top: 0;
  background: #f1f5f9;
  font-weight: 700;
  white-space: nowrap;
}

.tabular-table tbody tr:hover {
  background: #f8fafc;
}

.node-overview-sections {
  display: flex;
  flex-direction: column;
  gap: 0;
}

.node-overview-fold {
  margin-top: 22px;
}

.node-overview-fold.is-disabled > .node-overview-fold-head {
  cursor: not-allowed;
  opacity: 0.45;
  pointer-events: none;
}

.node-overview-fold.is-disabled > .node-overview-fold-body {
  display: none;
}

.node-overview-fold.is-disabled > .node-overview-fold-head .node-overview-fold-chevron {
  opacity: 0.35;
}

.node-overview-fold-head {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
  padding: 9px 12px 9px 14px;
  border-radius: 8px;
  background: linear-gradient(135deg, #eef2f7 0%, #f8fafc 100%);
  cursor: pointer;
  list-style: none;
  user-select: none;
  transition: background-color 0.15s ease;
}

.node-overview-fold-head::-webkit-details-marker {
  display: none;
}

.node-overview-fold-head::marker {
  content: "";
}

.node-overview-fold-head:hover {
  background: linear-gradient(135deg, #e2e8f0 0%, #f1f5f9 100%);
}

.node-overview-fold-title {
  font-size: 12px;
  font-weight: 700;
  text-transform: uppercase;
  letter-spacing: 0.06em;
  color: #475569;
}

.node-overview-fold-chevron {
  width: 22px;
  height: 22px;
  border-radius: 6px;
  display: grid;
  place-items: center;
  color: #64748b;
  background: rgba(255, 255, 255, 0.72);
  flex-shrink: 0;
  transition: background-color 0.15s ease, color 0.15s ease;
}

.node-overview-fold-head:hover .node-overview-fold-chevron {
  color: #334155;
  background: #fff;
}

.node-overview-fold-chevron::before {
  content: "";
  width: 6px;
  height: 6px;
  border-right: 2px solid currentColor;
  border-bottom: 2px solid currentColor;
  transform: rotate(-45deg) translateY(-1px);
  transition: transform 0.2s ease;
}

.node-overview-fold[open] > .node-overview-fold-head .node-overview-fold-chevron::before {
  transform: rotate(45deg) translateY(-2px);
}

.node-overview-fold-body {
  padding-top: 12px;
  padding-left: 4px;
}

/* Вложенные пункты обзора — «веточки» от заголовка секции */
.node-overview-branch-list {
  position: relative;
  margin-left: 8px;
  padding-left: 22px;
}

.node-overview-branch-list::before {
  content: "";
  position: absolute;
  left: 0;
  top: 10px;
  bottom: 10px;
  width: 2px;
  border-radius: 2px;
  background: linear-gradient(180deg, #b8c5d4 0%, #d5dee8 45%, #b8c5d4 100%);
  pointer-events: none;
}

.node-overview-branch-list:has(> :only-child)::before {
  top: 0;
  bottom: 50%;
}

.node-overview-branch-list > * {
  position: relative;
}

.node-overview-branch-list > *::before {
  content: "";
  position: absolute;
  left: -22px;
  top: 50%;
  width: 16px;
  height: 2px;
  background: #b8c5d4;
  transform: translateY(-50%);
  pointer-events: none;
  transition: background-color 0.15s ease;
}

.node-overview-branch-list > *::after {
  content: "";
  position: absolute;
  left: -25px;
  top: 50%;
  width: 7px;
  height: 7px;
  margin-top: -3.5px;
  border-radius: 50%;
  background: #f8fafc;
  border: 2px solid #94a3b8;
  box-sizing: border-box;
  pointer-events: none;
  z-index: 1;
  transition: border-color 0.15s ease, background-color 0.15s ease;
}

.node-overview-branch-list > *:hover::before,
.node-overview-branch-list > *:focus-visible::before {
  background: #7c93a8;
}

.node-overview-branch-list > *:hover::after,
.node-overview-branch-list > *:focus-visible::after {
  border-color: #64748b;
  background: #fff;
}

.node-overview-fold .node-overview-memory,
.node-overview-fold .node-overview-children,
.node-overview-fold .node-overview-section,
.node-overview-fold .node-overview-todo,
.node-overview-fold .node-overview-props,
.node-overview-fold .node-overview-types {
  margin-bottom: 0;
}

.node-overview-section-title {
  margin: 0 0 10px;
  font-size: 12px;
  font-weight: 700;
  text-transform: uppercase;
  letter-spacing: 0.05em;
  color: var(--muted);
}

.node-overview-links {
  display: grid;
  grid-template-columns: repeat(auto-fill, minmax(200px, 1fr));
  gap: 8px;
}

.node-overview-link {
  display: flex;
  align-items: center;
  gap: 8px;
  padding: 10px 12px;
  border: 1px solid var(--border);
  border-radius: 8px;
  background: var(--panel);
  color: var(--text);
  font-size: 13px;
  font-weight: 500;
  text-align: left;
  cursor: pointer;
  transition: border-color 0.15s ease, background-color 0.15s ease;
}

.node-overview-link:hover {
  border-color: #93c5fd;
  background: #eff6ff;
}

.node-overview-link-icon {
  flex: 0 0 auto;
  font-size: 15px;
  line-height: 1;
}

.node-overview-link-label {
  flex: 1;
  min-width: 0;
}

.node-overview-todo {
  margin-bottom: 0;
}

.node-overview-todo-actions {
  display: flex;
  justify-content: flex-end;
  margin-bottom: 10px;
}

.node-overview-todo-edit-btn {
  flex: 0 0 auto;
}

.node-overview-todo-body {
  padding: 14px 16px;
  border: 1px solid var(--border);
  border-radius: 10px;
  background: #f8fafc;
}

.node-overview-todo-body--empty {
  font-size: 13px;
  line-height: 1.5;
  color: var(--muted);
}

.node-overview-todo-content {
  margin: 0;
  font-family: inherit;
  font-size: 13px;
  line-height: 1.55;
  color: #334155;
}

.node-overview-todo-path {
  display: block;
  margin-top: 8px;
  font-size: 11px;
  font-family: ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, monospace;
  color: var(--muted);
}

.list-view {
  border: 1px solid var(--border);
  border-radius: 10px;
  background: var(--panel);
  min-height: 0;
  display: flex;
  flex-direction: column;
}

.list-view-title {
  flex: 0 0 auto;
  width: 100%;
  font-size: 13px;
  color: var(--muted);
  padding: 0;
  text-align: center;
}

.list-view-content {
  margin: 0;
  padding: 12px;
  font-size: 13px;
  line-height: 1.5;
  color: #111827;
  flex: 1;
  min-height: 0;
  overflow: auto;
  box-sizing: border-box;
}

.list-view-head {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
  padding: 10px 12px;
  border-bottom: 1px solid var(--border);
}

.list-view-head-center {
  flex: 1;
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 2px;
  min-width: 0;
}

.list-view-slot-types {
  font-size: 11px;
  color: var(--muted);
  text-align: center;
  line-height: 1.35;
  max-width: 100%;
}

.list-view-slot-policy-warning {
  font-size: 11px;
  color: #b45309;
  text-align: center;
  line-height: 1.35;
  max-width: 100%;
}

.list-view--no-head .list-view-head {
  display: none;
}

.list-view--no-head .list-view-content {
  padding-top: 0;
}

.doc-slab-main .list-view.list-view--no-head .list-view-content:not(:has(> .data-hub-list-view-wrap)):not(:has(> .media-list-view-wrap)) {
  border: 0;
  border-radius: 0;
  background: transparent;
  padding: 0;
}

.doc-slab-content .doc-slab-main > .list-view.list-view--no-head {
  border: 0;
  background: transparent;
}

.external-create-btn {
  font-size: 12px;
  padding: 5px 10px;
  white-space: nowrap;
  border: 1px solid #16a34a;
  background: #dcfce7;
  color: #166534;
  font-weight: 600;
}

.external-create-btn:hover:not(:disabled) {
  background: #bbf7d0;
}

.external-create-btn:disabled {
  opacity: 0.7;
  cursor: default;
}

.external-create-section-btn {
  font-size: 12px;
  padding: 5px 10px;
  white-space: nowrap;
  border: 1px solid #ca8a04;
  background: #fef9c3;
  color: #854d0e;
  border-radius: 8px;
  cursor: pointer;
  font-weight: 600;
}

.external-create-section-btn:hover:not(:disabled) {
  background: #fef08a;
}

.external-create-section-btn:disabled {
  background: #f3f4f6;
  border-color: #e5e7eb;
  color: #9ca3af;
  cursor: not-allowed;
  opacity: 1;
}

.external-view-select {
  border: 1px solid var(--border);
  border-radius: 8px;
  background-color: var(--panel);
  color: var(--text);
  font-size: 12px;
  padding: 5px 28px 5px 10px;
  cursor: pointer;
  appearance: none;
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' fill='%236b7280' viewBox='0 0 20 20'%3E%3Cpath d='M5.5 7.5 10 12l4.5-4.5'/%3E%3C/svg%3E");
  background-repeat: no-repeat;
  background-position: right 8px center;
  background-size: 12px 12px;
}

.external-view-select:focus {
  outline: none;
  border-color: var(--accent);
  box-shadow: 0 0 0 2px rgba(59, 130, 246, 0.12);
}

.mindmap-layout-select {
  border: 1px solid var(--border);
  border-radius: 8px;
  background-color: var(--panel);
  color: var(--text);
  font-size: 12px;
  padding: 5px 28px 5px 10px;
  cursor: pointer;
  appearance: none;
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' fill='%236b7280' viewBox='0 0 20 20'%3E%3Cpath d='M5.5 7.5 10 12l4.5-4.5'/%3E%3C/svg%3E");
  background-repeat: no-repeat;
  background-position: right 8px center;
  background-size: 12px 12px;
}

.mindmap-layout-select:focus {
  outline: none;
  border-color: var(--accent);
  box-shadow: 0 0 0 2px rgba(59, 130, 246, 0.12);
}

.media-view-select {
  border: 1px solid var(--border);
  border-radius: 8px;
  background-color: var(--panel);
  color: var(--text);
  font-size: 12px;
  padding: 5px 28px 5px 10px;
  cursor: pointer;
  appearance: none;
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' fill='%236b7280' viewBox='0 0 20 20'%3E%3Cpath d='M5.5 7.5 10 12l4.5-4.5'/%3E%3C/svg%3E");
  background-repeat: no-repeat;
  background-position: right 8px center;
  background-size: 12px 12px;
}

.media-view-select:focus {
  outline: none;
  border-color: var(--accent);
  box-shadow: 0 0 0 2px rgba(59, 130, 246, 0.12);
}

.media-upload-btn {
  border: 1px solid #16a34a;
  border-radius: 8px;
  background: #dcfce7;
  color: #166534;
  font-size: 11px;
  font-weight: 600;
  line-height: 1.35;
  padding: 0 10px;
  white-space: nowrap;
  cursor: pointer;
}

.media-upload-btn:hover,
.media-upload-btn:focus-visible {
  border-color: #16a34a;
  background: #bbf7d0;
  outline: none;
}

.media-upload-btn.is-active {
  border-color: #15803d;
  background: #bbf7d0;
  box-shadow: 0 0 0 2px rgba(34, 197, 94, 0.18);
}

.media-list-view-wrap {
  display: flex;
  flex-direction: column;
  gap: 16px;
  min-height: min(320px, 40vh);
}

.doc-slab-main .list-view-content:has(> .media-list-view-wrap),
.doc-slab-main .list-view-content:has(> .data-hub-list-view-wrap) {
  display: flex;
  flex-direction: column;
  flex: 1;
  min-height: 0;
  overflow: hidden;
}

.doc-slab-main .list-view-content > .media-list-view-wrap,
.doc-slab-main .list-view-content > .data-hub-list-view-wrap {
  flex: 1;
  min-height: 0;
  gap: 8px;
}

.data-hub-list-view-wrap {
  display: flex;
  flex-direction: column;
  gap: 8px;
  min-height: min(320px, 40vh);
}

.doc-slab-main .data-hub-list-view-wrap {
  min-height: 0;
}

.data-hub-list-view-split {
  display: flex;
  align-items: stretch;
  gap: 0;
  min-height: min(400px, 52vh);
  border: 1px solid var(--border);
  border-radius: 12px;
  overflow: hidden;
  background: var(--panel);
}

.doc-slab-main .data-hub-list-view-split {
  flex: 1;
  min-height: 0;
}

/* Data hub / list-view: внешний doc-slab-content не скроллится — только внутренние деревья */
.doc-body-main .doc-slab-content:has(> .doc-slab-main > .list-view:not(.hidden)) {
  overflow: hidden;
  min-height: 0;
}

.doc-slab-content:has(> .doc-slab-main > .list-view:not(.hidden)) .doc-slab-main {
  flex: 1 1 0;
  min-height: 0;
  overflow: hidden;
}

/* Data hub: плоский layout без вложенной карточки и боковых inset */
.doc-body-main .doc-slab-content:has(.data-hub-list-view-wrap) {
  padding: 0;
}

.doc-slab-content .doc-slab-main > .list-view:has(.data-hub-list-view-wrap) {
  padding: 0;
  border: 0;
  border-radius: 0;
  background: transparent;
  min-height: 0;
}

.doc-slab-main .list-view:has(.data-hub-list-view-wrap) > .list-view-head,
.data-hub-panel > .list-view-head {
  display: none;
}

.doc-slab-main .list-view-content:has(> .data-hub-list-view-wrap) {
  padding: 0;
}

.doc-slab-main .data-hub-list-view-wrap {
  gap: 0;
}

.doc-slab-main .data-hub-list-view-split {
  border: 0;
  border-radius: 0;
}

.doc-slab-main .data-hub-panel .data-hub-all-items-view {
  padding: 12px;
}

.doc-slab-main .data-hub-all-items-grid,
.doc-slab-main .data-hub-all-items-loose-section {
  width: 100%;
  margin: 0;
}

/* Боковые деревья в data hub: слоты и разделы — отступы на секции, как у контента */
.data-hub-list-view-split > .storage-slot-tree,
.data-hub-panel .media-list-view-split > .media-section-tree {
  flex: 0 0 min(168px, 30%);
  max-width: 200px;
  padding: 12px 12px 0;
  box-sizing: border-box;
  background: var(--panel-2, var(--panel));
  display: flex;
  flex-direction: column;
  overflow: hidden;
  align-self: stretch;
}

.data-hub-list-view-split .storage-slot-tree-list,
.data-hub-panel .media-section-tree-list {
  padding: 0;
  flex: 1;
  min-height: 0;
  overflow-x: hidden;
  overflow-y: auto;
  scrollbar-gutter: stable;
  overscroll-behavior: contain;
  -webkit-overflow-scrolling: touch;
}

.storage-tree-policy-divider {
  margin-top: 8px;
}

.storage-tree-policy-footer {
  flex-shrink: 0;
  margin-top: 8px;
}

.storage-tree-policy-plaque {
  padding: 8px 10px;
  border-radius: 8px;
  border: 1px solid #fde68a;
  background: #fef9c3;
  display: flex;
  flex-direction: column;
  gap: 6px;
}

.storage-tree-policy-footer--has-warning .storage-tree-policy-plaque {
  border-color: #fcd34d;
  background: #fef3c7;
}

.storage-tree-policy-types {
  font-size: 10px;
  line-height: 1.45;
  color: #713f12;
}

.storage-tree-policy-warning {
  font-size: 10px;
  line-height: 1.45;
  color: #b45309;
  font-weight: 600;
}

.data-hub-list-view-split > .storage-slot-tree > .storage-slot-tree-loading,
.data-hub-list-view-split > .storage-slot-tree > .media-section-tree-loading {
  padding: 0;
}

.data-hub-list-view-split .media-section-tree-divider,
.data-hub-panel .media-section-tree-divider {
  margin: 4px 0;
  background: var(--border);
}

.storage-slot-tree {
  flex: 0 0 min(168px, 30%);
  max-width: 200px;
  border-right: 1px solid var(--border);
  overflow: auto;
  background: var(--panel-2, var(--panel));
}

.storage-slot-tree-list {
  padding: 6px 0;
}

.storage-slot-tree-item--group.is-active {
  background: transparent;
}

.storage-slot-memory-mode-item.is-active {
  background: rgba(59, 130, 246, 0.12);
}

.storage-slot-tree-item.is-disabled,
.storage-slot-tree-item:disabled {
  opacity: 0.45;
  cursor: not-allowed;
}

.storage-slot-tree-item--count-only {
  cursor: default;
  opacity: 1;
}

.storage-slot-tree-item--count-only:hover,
.storage-slot-tree-item--count-only:focus-visible {
  background: transparent;
  color: inherit;
}

.storage-slot-tree-item--count-only .media-section-tree-count {
  color: #64748b;
  background: rgba(148, 163, 184, 0.14);
}

.storage-slot-tree-divider {
  margin-top: 4px;
}

.storage-slot-tree-group-label,
.media-section-tree-group-label.storage-slot-tree-group-label {
  padding: 8px 12px 4px;
  font-size: 11px;
  font-weight: 600;
  letter-spacing: 0.04em;
  text-transform: uppercase;
  color: #64748b;
}

.storage-slot-tree-loading,
.data-hub-all-items-loading {
  padding: 10px 12px;
  font-size: 12px;
  color: var(--muted);
}

.data-hub-panel-empty-state {
  flex: 1;
  min-height: 0;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: flex-start;
  gap: 10px;
  padding: 48px 24px 24px;
  text-align: center;
  box-sizing: border-box;
}

.data-hub-panel-empty-state--loading .data-hub-panel-empty-state-icon {
  animation: data-hub-panel-pulse 1.2s ease-in-out infinite;
}

.data-hub-panel-empty-state-icon {
  font-size: 36px;
  line-height: 1;
  opacity: 0.72;
}

.data-hub-panel-empty-state-message {
  margin: 0;
  max-width: 28ch;
  font-size: 14px;
  line-height: 1.45;
  color: var(--text);
}

.data-hub-panel-empty-state-path {
  margin: 0;
  font-family: var(--mono, ui-monospace, monospace);
  font-size: 11px;
  color: var(--muted);
}

.data-hub-panel-empty-state--missing .data-hub-panel-empty-state-message {
  color: #b45309;
}

.data-hub-panel-empty-state-action {
  margin-top: 4px;
  padding: 8px 16px;
  border: 1px solid #16a34a;
  border-radius: 8px;
  background: #22c55e;
  color: #fff;
  font-size: 13px;
  font-weight: 600;
  cursor: pointer;
  transition: background 0.15s ease, border-color 0.15s ease;
}

.data-hub-panel-empty-state-action:hover:not(:disabled) {
  background: #16a34a;
  border-color: #15803d;
}

.workspace-system-notice {
  display: flex;
  align-items: flex-start;
  gap: 12px;
  flex: 0 0 auto;
  margin: 0 0 12px;
  padding: 12px 16px;
  border: 1px solid transparent;
  border-radius: 8px;
  box-sizing: border-box;
}

.workspace-system-notice-icon {
  flex-shrink: 0;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 20px;
  height: 20px;
  margin-top: 1px;
  line-height: 1;
}

.workspace-system-notice-icon svg {
  display: block;
  width: 16px;
  height: 16px;
}

.workspace-system-notice-body {
  flex: 1 1 auto;
  min-width: 0;
}

.workspace-system-notice-title {
  margin: 0 0 4px;
  font-size: 11px;
  font-weight: 700;
  letter-spacing: 0.06em;
  text-transform: uppercase;
  color: inherit;
}

.workspace-system-notice-message {
  margin: 0;
  font-size: 13px;
  line-height: 1.5;
  color: inherit;
}

.workspace-system-notice-path {
  margin: 6px 0 0;
  font-family: var(--mono, ui-monospace, monospace);
  font-size: 11px;
  line-height: 1.4;
  color: inherit;
  opacity: 0.82;
  word-break: break-word;
}

.workspace-system-notice-actions {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 8px 12px;
  margin-top: 10px;
}

.workspace-system-notice-action {
  display: inline-flex;
  align-items: center;
  min-height: 30px;
  padding: 4px 10px;
  border: 1px solid rgba(148, 163, 184, 0.55);
  border-radius: 8px;
  background: #fff;
  color: #334155;
  font-size: 12px;
  font-weight: 600;
  cursor: pointer;
  transition: background 0.15s ease, border-color 0.15s ease, color 0.15s ease;
}

.workspace-system-notice-action:hover:not(:disabled) {
  border-color: #cbd5e1;
  background: #f1f5f9;
  color: #0f172a;
}

.workspace-system-notice-action:disabled {
  opacity: 0.55;
  cursor: not-allowed;
}

.workspace-system-notice-action--primary {
  border-color: #0d6efd;
  background: #0d6efd;
  color: #fff;
}

.workspace-system-notice-action--primary:hover:not(:disabled) {
  border-color: #0b5ed7;
  background: #0b5ed7;
  color: #fff;
}

.workspace-system-notice-action--primary:disabled {
  border-color: #9ec5fe;
  background: #9ec5fe;
  color: #fff;
  opacity: 1;
}

.workspace-system-notice-action--accent {
  border-color: #9ec5fe;
  background: #cfe2ff;
  color: #084298;
}

.workspace-system-notice-action--accent:hover:not(:disabled) {
  border-color: #9ec5fe;
  background: #b6d4fe;
  color: #052c65;
}

.workspace-system-notice-action-hint {
  font-size: 12px;
  line-height: 1.4;
  color: inherit;
  opacity: 0.82;
}

.workspace-system-notice--info,
.workspace-system-notice--offer {
  color: #055160;
  border-color: #b6effb;
  background: #cff4fc;
}

.workspace-system-notice--info .workspace-system-notice-icon,
.workspace-system-notice--offer .workspace-system-notice-icon {
  color: #087990;
}

.workspace-system-notice--danger {
  color: #58151c;
  border-color: #f1aeb5;
  background: #f8d7da;
}

.workspace-system-notice--danger .workspace-system-notice-icon {
  color: #b02a37;
}

.workspace-system-notice--danger .workspace-system-notice-title {
  color: #842029;
}

.workspace-system-notice--warning {
  color: #664d03;
  border-color: #ffecb5;
  background: #fff3cd;
}

.workspace-system-notice--warning .workspace-system-notice-icon {
  color: #997404;
}

.workspace-system-notice--warning .workspace-system-notice-title {
  color: #664d03;
}

.section-readme-card--offer {
  box-sizing: border-box;
}

.data-hub-slug-warning.node-navigation-hero-path {
  box-sizing: border-box;
}

.doc-slab-main > .data-hub-slug-warning {
  align-self: flex-start;
  margin: 8px 14px 0;
}

#title-slug-row .data-hub-slug-warning.node-navigation-hero-path {
  margin: 6px 0 0;
}

.doc-slab-main > .section-readme-card--offer {
  margin: 0 0 10px;
}

.node-navigation-hub > .data-hub-slug-warning,
#node-overview-content > .data-hub-slug-warning {
  align-self: flex-start;
  margin: 0 0 8px;
}

.node-navigation-hub > .node-navigation-hero + .data-hub-slug-warning,
.node-navigation-hub > .node-entry-overview-section-readme-offer + .data-hub-slug-warning,
#node-overview-content > .node-navigation-hero + .data-hub-slug-warning,
.node-entry-overview-section-readme-offer + .data-hub-slug-warning {
  margin: 0 0 8px;
}

.node-navigation-hub > .section-readme-card--offer,
.node-navigation-hub > .node-entry-overview-section-readme-offer,
#node-overview-content > .section-readme-card--offer {
  margin: 0 0 12px;
}

.node-entry-overview-section-readme-offer .section-readme-card {
  margin-bottom: 0;
}

.external-list-view-body > .data-hub-slug-warning,
.media-list-view-body > .data-hub-slug-warning {
  align-self: flex-start;
  margin: 0 0 8px;
}

.external-list-view-body > .section-readme-card--offer + .data-hub-slug-warning,
.media-list-view-body > .section-readme-card--offer + .data-hub-slug-warning,
.external-list-view-body > .section-readme-card--offer,
.media-list-view-body > .section-readme-card--offer {
  margin: 0 0 12px;
}

.data-hub-panel .data-hub-all-items-view {
  flex: 1;
  min-height: 0;
  justify-content: flex-start;
}

.data-hub-panel-body > .media-list-view-wrap,
.data-hub-panel-body > .data-hub-all-items-view,
.data-hub-panel-body > .data-hub-bundle-preview,
.data-hub-panel-body > .editor-surface.data-hub-bundle-editor-surface {
  flex: 1;
  min-height: 0;
}

.data-hub-panel-body > .editor-surface.data-hub-bundle-editor-surface {
  border: 0;
  border-radius: 0;
  background: transparent;
}

.data-hub-bundle-preview {
  display: flex;
  flex-direction: column;
  min-height: 0;
  padding: 12px 16px 16px;
  overflow: auto;
}

.data-hub-bundle-preview-body {
  min-width: 0;
  font-size: 14px;
  line-height: 1.6;
  color: var(--text);
}

.data-hub-bundle-preview-body.file-content-preview {
  margin: 0;
  padding: 0;
  border: 0;
  border-radius: 0;
  background: transparent;
  box-shadow: none;
}

.data-hub-bundle-preview-body.file-content-preview > :first-child {
  margin-top: 0;
}

.data-hub-bundle-preview-body.file-content-preview > :last-child {
  margin-bottom: 0;
}

.data-hub-bundle-preview-body.file-content-preview p,
.data-hub-bundle-preview-body.file-content-preview ul,
.data-hub-bundle-preview-body.file-content-preview ol,
.data-hub-bundle-preview-body.file-content-preview blockquote,
.data-hub-bundle-preview-body.file-content-preview pre {
  margin: 0 0 0.75em;
}

.data-hub-bundle-preview-body.file-content-preview p:last-child,
.data-hub-bundle-preview-body.file-content-preview ul:last-child,
.data-hub-bundle-preview-body.file-content-preview ol:last-child {
  margin-bottom: 0;
}

.data-hub-bundle-tabular-preview .tabular-table-wrap {
  margin: 0;
}

.data-hub-panel .media-list-view-wrap {
  flex: 1;
  min-height: 0;
  gap: 0;
  border: none;
  border-radius: 0;
}

.data-hub-panel .media-list-view-wrap .media-list-view-split {
  flex: 1;
  min-height: 0;
  border: none;
  border-radius: 0;
}

.data-hub-all-items-view {
  display: flex;
  flex-direction: column;
  gap: 14px;
  padding: 12px 16px 24px;
  min-height: 0;
  flex: 1;
  overflow: auto;
  box-sizing: border-box;
}

.data-hub-all-items-grid {
  display: grid;
  grid-template-columns: repeat(auto-fill, minmax(168px, 1fr));
  gap: 10px;
  width: min(100%, 720px);
  margin: 0 auto;
}

.data-hub-all-items-loose-section {
  width: min(100%, 720px);
  margin: 0 auto;
  border-top: 1px solid var(--border);
  padding-top: 12px;
}

.data-hub-slot-card {
  margin: 0;
  min-height: 112px;
}

.data-hub-slot-card-btn {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 8px;
  width: 100%;
  height: 100%;
  min-height: 112px;
  padding: 12px;
  border: 1px solid var(--border);
  border-radius: 12px;
  background: linear-gradient(180deg, #ffffff 0%, #f8fbff 100%);
  text-align: left;
  font: inherit;
  color: inherit;
  cursor: pointer;
  transition:
    border-color 0.15s ease,
    box-shadow 0.15s ease,
    transform 0.15s ease;
}

.data-hub-slot-card-btn:hover:not(:disabled) {
  border-color: #93c5fd;
  box-shadow: 0 4px 14px rgba(37, 99, 235, 0.1);
  transform: translateY(-1px);
}

.data-hub-slot-card-btn:focus-visible {
  outline: 2px solid #2563eb;
  outline-offset: 2px;
}

.data-hub-slot-card-btn:disabled {
  cursor: not-allowed;
}

.data-hub-slot-card.has-items .data-hub-slot-card-btn {
  border-color: #bfdbfe;
}

.data-hub-slot-card.is-missing .data-hub-slot-card-btn,
.data-hub-slot-card.is-disabled .data-hub-slot-card-btn {
  background: #f8fafc;
  border-style: dashed;
  border-color: #e2e8f0;
}

.data-hub-slot-card-icon {
  font-size: 22px;
  line-height: 1;
}

.data-hub-slot-card-body {
  display: flex;
  flex: 1;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  gap: 6px;
  min-width: 0;
  text-align: center;
}

.data-hub-slot-card-label {
  font-size: 13px;
  font-weight: 700;
  line-height: 1.25;
  color: #0f172a;
}

.data-hub-slot-card-status {
  font-size: 12px;
  line-height: 1.3;
  color: var(--muted);
}

.data-hub-slot-card.is-missing .data-hub-slot-card-status {
  color: #b45309;
  font-weight: 600;
}

.data-hub-slot-card.has-items .data-hub-slot-card-status {
  color: #1d4ed8;
  font-weight: 600;
}

.data-hub-slot-card-path {
  align-self: stretch;
  margin-top: auto;
  width: 100%;
  text-align: center;
  font-family: var(--mono, ui-monospace, monospace);
  font-size: 10px;
  line-height: 1.35;
  color: #94a3b8;
  word-break: break-all;
}

.data-hub-all-items-loose-head {
  margin: 0 0 8px;
  font-size: 12px;
  font-weight: 700;
  color: var(--muted);
}

.data-hub-all-items-loose-list {
  margin: 0;
  padding: 0 0 0 18px;
  font-size: 12px;
  color: var(--text);
}

.data-hub-all-items-loose-item + .data-hub-all-items-loose-item {
  margin-top: 4px;
}

@keyframes data-hub-panel-pulse {
  0%,
  100% {
    opacity: 0.45;
  }
  50% {
    opacity: 1;
  }
}

.data-hub-panel {
  flex: 1;
  min-width: 0;
  min-height: 0;
  display: flex;
  flex-direction: column;
  overflow: hidden;
}

.data-hub-panel-body {
  flex: 1;
  min-height: 0;
  display: flex;
  flex-direction: column;
  overflow: hidden;
}

.node-entry-overview-slot-tree-wrap {
  margin-bottom: 12px;
}

.node-entry-overview-slot-tree.storage-slot-tree {
  width: 100%;
  max-width: none;
  flex: none;
  padding: 8px 10px;
  box-sizing: border-box;
  border: 1px solid var(--border);
  border-radius: 10px;
  background: var(--panel-2, var(--panel));
}

.node-entry-overview-slot-tree .storage-slot-tree-list {
  display: flex;
  flex-direction: column;
  gap: 2px;
  padding: 0;
  overflow: visible;
  min-height: 0;
}

.node-entry-overview-slot-tree .media-section-tree-row {
  width: 100%;
  max-width: none;
}

.node-entry-overview-slot-tree .storage-slot-tree-divider,
.node-entry-overview-slot-tree .media-section-tree-divider {
  flex-basis: 100%;
  height: 1px;
  margin: 2px 0;
}

.node-entry-overview-slot-tree .storage-tree-policy-footer {
  flex-basis: 100%;
  margin-top: 6px;
}

.node-entry-overview-slot-counters {
  margin: 0 0 12px;
  min-height: 0;
  width: 100%;
  min-width: 0;
  max-width: 100%;
}

.node-navigation-hub-main > .node-entry-overview-slot-counters {
  margin-bottom: 0;
}

.node-navigation-hub-main > .node-entry-overview-hub-main-slot-counters {
  margin: 0 0 12px;
  width: 100%;
  min-width: 0;
}

.node-navigation-hub-main:has(> .node-entry-overview-slot-counters:first-child) {
  gap: 14px;
}

.node-entry-overview-slot-counters[data-loading="true"] {
  visibility: hidden;
  min-height: 72px;
}

.node-entry-overview-slot-counters .node-navigation-workspace-counter.is-active {
  border-color: transparent;
  background: transparent;
  color: #92400e;
  box-shadow: none;
  opacity: 1;
}

.node-entry-overview-slot-counters .node-navigation-workspace-counter.is-active .node-navigation-workspace-counter-value {
  color: #b45309;
}

.node-entry-overview-slot-counters .node-navigation-workspace-counter.is-active.is-empty .node-navigation-workspace-counter-value,
.node-entry-overview-slot-counters .node-navigation-workspace-counter.is-active.is-empty .node-navigation-workspace-counter-flag {
  color: #b45309;
}

.node-entry-overview-slot-counters .node-navigation-workspace-counter.is-active.is-empty .node-navigation-workspace-counter-label,
.node-entry-overview-slot-counters .node-navigation-workspace-counter.is-active.is-empty .node-navigation-workspace-counter-label-main {
  color: #92400e;
  opacity: 1;
}

.node-entry-overview-slot-counters .node-navigation-workspace-counter.is-flag.is-active {
  color: #991b1b;
}

.node-entry-overview-slot-counters .node-navigation-workspace-counter.is-flag.is-active .node-navigation-workspace-counter-value,
.node-entry-overview-slot-counters .node-navigation-workspace-counter.is-flag.is-active .node-navigation-workspace-counter-flag,
.node-entry-overview-slot-counters .node-navigation-workspace-counter.is-flag.is-active .node-navigation-workspace-counter-label,
.node-entry-overview-slot-counters .node-navigation-workspace-counter.is-flag.is-active .node-navigation-workspace-counter-label-main {
  color: #b91c1c;
}

.node-entry-overview-browse-slot-counters {
  margin: 0 0 10px;
  min-height: 40px;
  contain: layout style;
}

.node-entry-overview-browse-panel > .node-entry-overview-browse-slot-counters + .node-entry-overview-browse-hero-nav {
  margin-top: 0;
}

.node-entry-overview-memory-mode-counters {
  margin-top: 8px;
}

.node-entry-overview-memory-mode-counter-list {
  grid-template-columns: repeat(3, minmax(0, 1fr));
}

.node-entry-overview-memory-mode-counter-list .node-navigation-workspace-counter {
  min-height: 56px;
  padding: 8px 6px;
}

.node-entry-overview-memory-mode-counter-list .node-navigation-workspace-counter-value {
  font-size: 18px;
}

.doc-slab-main .list-view-content > .media-list-view-wrap {
  flex: 1;
  min-height: 0;
  gap: 8px;
}

.doc-slab-main .media-list-view-wrap {
  min-height: 0;
}

.doc-slab-main .media-list-view-wrap .media-list-view-split {
  flex: 1;
  min-height: 0;
}

.doc-slab-main .data-hub-panel .media-list-view-wrap {
  min-height: 0;
  gap: 0;
}

.doc-slab-main .data-hub-panel .media-list-view-wrap .media-list-view-split {
  flex: 1;
  min-height: 0;
  border: none;
  border-radius: 0;
  align-self: stretch;
}

.doc-slab-main .data-hub-list-view-split {
  align-self: stretch;
}

.doc-slab-main .data-hub-list-view-split > .storage-slot-tree,
.doc-slab-main .data-hub-panel .media-list-view-split > .media-section-tree {
  min-height: 0;
}

.media-list-view-split {
  display: flex;
  align-items: stretch;
  gap: 0;
  min-height: min(400px, 52vh);
  border: 1px solid var(--border);
  border-radius: 12px;
  overflow: hidden;
  background: var(--panel);
}

.doc-slab-main .media-list-view-split {
  min-height: 0;
}

.media-section-tree {
  flex: 0 0 220px;
  max-width: 240px;
  border-right: 1px solid var(--border);
  padding: 10px 6px 12px;
  overflow: auto;
  background: #f8fafc;
}

.media-section-tree-head {
  margin: 0;
  padding: 4px 8px 8px;
  font-size: 11px;
  font-weight: 700;
  letter-spacing: 0.04em;
  text-transform: uppercase;
  color: var(--muted);
}

.media-section-tree-list {
  display: flex;
  flex-direction: column;
  gap: 2px;
}

.media-section-tree-row {
  display: flex;
  align-items: stretch;
  gap: 2px;
  min-width: 0;
}

.media-section-tree-row .media-section-tree-item {
  flex: 1;
  min-width: 0;
}

.media-section-tree-row .media-section-tree-settings-btn {
  align-self: center;
  margin-right: 2px;
}

.media-section-tree-row:hover .media-section-tree-settings-btn,
.media-section-tree-row:has(.media-section-tree-item.is-active) .media-section-tree-settings-btn {
  opacity: 1;
}

.media-section-tree-settings-btn.is-missing {
  opacity: 0.35;
}

.media-section-tree-divider {
  height: 1px;
  margin: 6px 8px;
  background: #e2e8f0;
}

.media-section-tree-item {
  display: flex;
  align-items: center;
  gap: 8px;
  width: 100%;
  min-height: 32px;
  padding: 5px 8px;
  border: 1px solid transparent;
  border-radius: 8px;
  background: transparent;
  color: #334155;
  font-size: 13px;
  line-height: 1.3;
  text-align: left;
  cursor: pointer;
  transition:
    background 0.12s ease,
    border-color 0.12s ease,
    color 0.12s ease;
}

.media-section-tree-item:hover {
  background: #f1f5f9;
}

.media-section-tree-item.is-active {
  border-color: #bfdbfe;
  background: #eff6ff;
  color: #1d4ed8;
  font-weight: 600;
}

.media-section-tree-item.is-empty:not(.is-active) {
  opacity: 0.72;
}

.media-section-tree-item--unregistered {
  color: #94a3b8;
  font-weight: 500;
}

.media-section-tree-item--unregistered:hover,
.media-section-tree-item--unregistered:focus-visible {
  color: #64748b;
  background: transparent;
  border-color: var(--border);
}

.media-section-tree-item--unregistered.is-active {
  color: #64748b;
  border-color: #e2e8f0;
  background: #f8fafc;
  font-weight: 500;
}

.media-section-tree-item--unregistered.is-active:hover,
.media-section-tree-item--unregistered.is-active:focus-visible {
  color: #64748b;
  border-color: var(--border);
}

.media-section-tree-item--unregistered .media-section-tree-count {
  color: #94a3b8;
  background: #f1f5f9;
}

.media-section-tree-item--unregistered.is-active .media-section-tree-count {
  color: #64748b;
  background: #e2e8f0;
}

.media-section-tree-label--unregistered {
  min-width: 0;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.media-section-tree-icon {
  flex: 0 0 auto;
  width: 18px;
  text-align: center;
  font-size: 14px;
  line-height: 1;
}

.media-section-tree-label {
  flex: 1;
  min-width: 0;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.media-section-tree-count {
  flex: 0 0 auto;
  min-width: 2.5em;
  padding: 1px 5px;
  border-radius: 999px;
  background: #e2e8f0;
  color: #64748b;
  font-size: 11px;
  font-weight: 600;
  font-variant-numeric: tabular-nums;
  text-align: center;
}

.media-section-tree-item.is-active .media-section-tree-count {
  background: #dbeafe;
  color: #1d4ed8;
}

.media-section-tree-empty {
  margin: 2px 8px 8px;
  padding: 8px 10px;
  border-radius: 8px;
  background: #f8fafc;
  color: var(--muted);
  font-size: 12px;
  line-height: 1.45;
}

.media-section-folder-head {
  margin: -12px -12px 12px;
  padding: 10px 12px;
  background: #f1f5f9;
  border-bottom: 1px solid #e2e8f0;
}

.section-readme-card:not(.workspace-system-notice) {
  margin: 0 0 14px;
  padding: 12px 14px;
  border: 1px solid #dbeafe;
  border-radius: 10px;
  background: #f8fbff;
}

.section-readme-card-title:not(.workspace-system-notice-title) {
  margin: 0 0 4px;
  font-size: 13px;
  font-weight: 600;
  color: #0f172a;
}

.section-readme-card-hint:not(.workspace-system-notice-message) {
  margin: 0 0 10px;
  font-size: 12px;
  line-height: 1.45;
  color: #64748b;
}

.section-readme-card-btn:not(.workspace-system-notice-action) {
  display: inline-flex;
  align-items: center;
  min-height: 30px;
  padding: 4px 10px;
  border: 1px solid #bfdbfe;
  border-radius: 8px;
  background: #eff6ff;
  color: #1d4ed8;
  font-size: 12px;
  font-weight: 600;
  cursor: pointer;
}

.section-readme-card-btn:not(.workspace-system-notice-action):hover {
  background: #dbeafe;
}

.media-list-view-wrap.is-sections-panel-hidden .media-section-tree {
  display: none;
}

.media-list-view-wrap.is-sections-panel-hidden .media-list-view-split {
  border: 0;
}

.storage-sections-panel-toggle {
  display: inline-flex;
  align-items: center;
  gap: 6px;
  min-height: 32px;
  padding: 0 10px;
  border: 1px solid var(--border);
  border-radius: 8px;
  background: #fff;
  color: #334155;
  font-size: 12px;
  line-height: 1.2;
  cursor: pointer;
  user-select: none;
}

.storage-sections-panel-toggle input {
  margin: 0;
  accent-color: #2563eb;
}

.storage-sections-panel-toggle-label {
  white-space: nowrap;
}

.media-list-view-body--solo,
.external-list-view-body--solo {
  padding: 12px;
}

.media-section-folder-title {
  margin: 0;
  font-size: 15px;
  font-weight: 600;
  color: #0f172a;
}

.media-section-subfolder-list {
  list-style: none;
  margin: 0 0 14px;
  padding: 0;
  display: flex;
  flex-direction: column;
  gap: 6px;
}

.media-section-subfolder-btn {
  display: flex;
  align-items: center;
  width: 100%;
  min-height: 34px;
  padding: 6px 10px;
  border: 1px solid #e2e8f0;
  border-radius: 8px;
  background: #f8fafc;
  color: #334155;
  font-size: 13px;
  text-align: left;
  cursor: pointer;
}

.media-section-subfolder-btn:hover {
  background: #eff6ff;
  border-color: #bfdbfe;
  color: #1d4ed8;
}

.media-bulk-upload-host {
  display: none;
  width: 100%;
  padding: 0 0 4px;
  flex-shrink: 0;
}

.media-bulk-upload-host.is-open {
  display: block;
}

.media-bulk-upload-panel {
  position: relative;
  width: 100%;
}

.media-bulk-upload-close {
  position: absolute;
  top: 8px;
  right: 8px;
  z-index: 2;
}

.media-bulk-upload-zone {
  width: 100%;
  min-height: 152px;
  padding: 20px 24px;
  border: 2px dashed #cbd5e1;
  border-radius: 14px;
  background: linear-gradient(180deg, #f8fafc 0%, #f1f5f9 100%);
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  text-align: center;
  cursor: pointer;
  transition:
    border-color 0.15s ease,
    background 0.15s ease,
    box-shadow 0.15s ease;
}

.media-bulk-upload-zone:hover,
.media-bulk-upload-zone:focus-visible {
  border-color: var(--accent);
  background: #eff6ff;
  box-shadow: 0 0 0 3px rgba(59, 130, 246, 0.12);
  outline: none;
}

.media-bulk-upload-zone.is-dragover {
  border-color: var(--accent);
  background: #dbeafe;
}

.media-bulk-upload-zone.is-uploading {
  cursor: wait;
  border-style: solid;
  border-color: var(--accent);
  background: #fff;
}

.media-bulk-upload-idle.hidden,
.media-bulk-upload-progress.hidden {
  display: none;
}

.media-bulk-upload-icon {
  font-size: 32px;
  line-height: 1;
  margin-bottom: 8px;
}

.media-bulk-upload-title {
  margin: 0 0 4px;
  font-size: 15px;
  font-weight: 600;
  color: #0f172a;
}

.media-bulk-upload-hint {
  margin: 0;
  font-size: 12px;
  color: var(--muted);
  max-width: 28em;
}

.media-bulk-upload-progress {
  width: 100%;
  max-width: 320px;
}

.media-bulk-upload-progress-percent {
  font-size: 28px;
  font-weight: 700;
  font-variant-numeric: tabular-nums;
  color: var(--accent);
  margin-bottom: 10px;
}

.media-bulk-upload-progress-track {
  height: 8px;
  border-radius: 999px;
  background: #e2e8f0;
  overflow: hidden;
  margin-bottom: 8px;
}

.media-bulk-upload-progress-fill {
  height: 100%;
  width: 0%;
  border-radius: inherit;
  background: linear-gradient(90deg, #3b82f6, #2563eb);
  transition: width 0.2s ease;
}

.media-bulk-upload-progress-label {
  margin: 0;
  font-size: 12px;
  color: var(--muted);
  word-break: break-word;
}

.media-list-view-body {
  flex: 1;
  min-width: 0;
  min-height: 0;
  padding: 12px;
  overflow: auto;
}

.doc-slab-main .media-list-view-body:has(> .external-table-wrap),
.doc-slab-main .external-list-view-body:has(> .external-table-wrap) {
  display: flex;
  flex-direction: column;
}

.doc-slab-main .media-list-view-body > .list-section,
.doc-slab-main .external-list-view-body > .list-section {
  flex: 0 0 auto;
}

.doc-slab-main .media-list-view-body > .external-table-wrap,
.doc-slab-main .external-list-view-body > .external-table-wrap {
  flex: 1;
  min-height: 0;
}

@media (max-width: 900px) {
  .media-list-view-split {
    flex-direction: column;
    min-height: 0;
  }

  .media-section-tree {
    flex: 0 0 auto;
    max-width: none;
    border-right: 0;
    border-bottom: 1px solid var(--border);
    padding-bottom: 8px;
  }

  .media-section-tree-list {
    flex-direction: row;
    flex-wrap: wrap;
    gap: 6px;
    padding: 0 4px 4px;
  }

  .media-section-tree-divider {
    display: none;
  }

  .media-section-tree-item {
    width: auto;
    max-width: 100%;
  }
}

.media-usage-dashboard {
  display: flex;
  flex-direction: column;
  gap: 16px;
}

.media-dashboard-stats {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 12px;
}

.media-dashboard-stat-card {
  display: flex;
  align-items: center;
  gap: 12px;
  padding: 14px 16px;
  border: 1px solid var(--border);
  border-radius: 12px;
  background: #fff;
}

.media-dashboard-stat-icon {
  width: 40px;
  height: 40px;
  border-radius: 10px;
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: 18px;
  flex-shrink: 0;
}

.media-dashboard-stat-icon.is-total {
  background: #ede9fe;
  color: #6d28d9;
}

.media-dashboard-stat-icon.is-used {
  background: #ffedd5;
  color: #c2410c;
}

.media-dashboard-stat-icon.is-unused {
  background: #f1f5f9;
  color: #64748b;
}

.media-dashboard-stat-value {
  font-size: 24px;
  font-weight: 700;
  line-height: 1.1;
  color: #0f172a;
  font-variant-numeric: tabular-nums;
}

.media-dashboard-stat-label {
  font-size: 12px;
  color: var(--muted);
  margin-top: 2px;
}

.media-dashboard-inventory {
  border: 1px solid var(--border);
  border-radius: 12px;
  background: #fff;
  overflow: hidden;
}

.media-dashboard-inventory-head {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
  flex-wrap: wrap;
  padding: 14px 16px;
  border-bottom: 1px solid var(--border);
  background: #f8fafc;
}

.media-dashboard-inventory-title {
  margin: 0;
  font-size: 15px;
  font-weight: 700;
  color: #0f172a;
}

.media-dashboard-inventory-meta {
  display: flex;
  align-items: center;
  gap: 12px;
  flex-wrap: wrap;
}

.media-dashboard-results {
  font-size: 12px;
  color: var(--muted);
  white-space: nowrap;
}

.media-dashboard-filters {
  display: flex;
  align-items: center;
  gap: 8px;
  flex-wrap: wrap;
}

.media-dashboard-filter-select {
  min-width: 128px;
  padding: 5px 8px;
  border: 1px solid var(--border);
  border-radius: 8px;
  background: #fff;
  font-size: 12px;
  color: #334155;
}

.media-dashboard-filter-select:focus {
  outline: none;
  border-color: var(--accent);
}

.media-dashboard-table-wrap {
  overflow: auto;
}

.media-dashboard-table {
  width: 100%;
  border-collapse: collapse;
  font-size: 13px;
}

.media-dashboard-table th,
.media-dashboard-table td {
  padding: 10px 12px;
  border-bottom: 1px solid #eef2f7;
  text-align: left;
  vertical-align: middle;
}

.media-dashboard-table th {
  font-size: 12px;
  font-weight: 600;
  color: #64748b;
  background: #fff;
  white-space: nowrap;
}

.media-dashboard-sort-btn {
  border: none;
  background: transparent;
  padding: 0;
  font: inherit;
  color: inherit;
  cursor: pointer;
}

.media-dashboard-sort-btn.is-active {
  color: #0f172a;
}

.media-dashboard-cell-actions {
  display: inline-flex;
  align-items: center;
  gap: 6px;
  white-space: nowrap;
  min-width: 176px;
}

.media-action-btn-text {
  width: auto;
  min-width: 0;
  height: 28px;
  padding: 0 8px;
  font-size: 10px;
  line-height: 1;
}

.media-path-popover {
  position: fixed;
  z-index: 1100;
  width: min(320px, calc(100vw - 24px));
  padding: 10px;
  border: 1px solid var(--border);
  border-radius: 12px;
  background: var(--panel);
  box-shadow: 0 14px 32px rgba(15, 23, 42, 0.16);
  display: flex;
  flex-direction: column;
  gap: 6px;
}

.media-path-popover-title {
  margin: 0 0 2px;
  font-size: 11px;
  font-weight: 700;
  color: #64748b;
  word-break: break-word;
}

.media-path-popover-action {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  gap: 3px;
  width: 100%;
  border: 1px solid var(--border);
  border-radius: 8px;
  background: #fff;
  padding: 8px 10px;
  text-align: left;
  cursor: pointer;
  transition: background 0.15s ease, border-color 0.15s ease;
}

.media-path-popover-action:hover,
.media-path-popover-action:focus-visible {
  background: #eff6ff;
  border-color: #bfdbfe;
}

.media-path-popover-action-label {
  font-size: 12px;
  font-weight: 600;
  color: #0f172a;
}

.media-path-popover-action-hint {
  font-size: 11px;
  line-height: 1.35;
  color: #64748b;
  font-family: ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace;
  word-break: break-all;
}

.media-action-btn-icon-only {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 28px;
  height: 28px;
  min-width: 28px;
  padding: 0;
  font-size: 13px;
  line-height: 1;
}

.media-action-btn--danger {
  color: #b91c1c;
  border-color: rgba(185, 28, 28, 0.35);
}

.media-action-btn--danger:hover {
  background: #fef2f2;
  border-color: rgba(185, 28, 28, 0.45);
  color: #991b1b;
}

.media-action-btn.node-overview-focus-btn.is-active,
.media-action-btn.node-overview-main-btn.is-active {
  border-color: #93c5fd;
  background: rgba(219, 234, 254, 0.88);
  color: #1e40af;
}

.media-action-btn-icon {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 14px;
  height: 14px;
  line-height: 0;
}

.media-action-btn-icon svg {
  width: 14px;
  height: 14px;
  display: block;
}

.media-dashboard-cell-preview {
  width: 72px;
}

.media-dashboard-preview {
  width: 48px;
  height: 48px;
  border-radius: 8px;
  overflow: hidden;
  background: #f1f5f9;
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: 20px;
}

.media-dashboard-preview img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  display: block;
}

.media-dashboard-preview.is-fallback {
  color: #64748b;
}

.media-dashboard-preview.is-clickable {
  cursor: pointer;
}

.media-dashboard-preview.is-clickable:hover {
  background: #e2e8f0;
}

.media-dashboard-filename {
  font-weight: 600;
  color: #0f172a;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
}

.media-dashboard-cell-name {
  max-width: 0;
  width: 38%;
  min-width: 140px;
}

.media-dashboard-filemeta {
  margin-top: 2px;
  font-size: 11px;
  color: var(--muted);
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
}

.media-dashboard-cell-directory {
  color: #475569;
  font-size: 12px;
  word-break: break-all;
}

.media-dashboard-usage-badge {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-width: 28px;
  height: 24px;
  padding: 0 8px;
  border-radius: 999px;
  font-size: 12px;
  font-weight: 700;
  font-variant-numeric: tabular-nums;
}

.media-dashboard-usage-badge.is-used {
  background: #dcfce7;
  color: #166534;
}

.media-dashboard-usage-badge.is-unused {
  background: #f1f5f9;
  color: #64748b;
}

.media-dashboard-empty {
  padding: 24px 16px;
  text-align: center;
  color: var(--muted);
  font-size: 13px;
}

@media (max-width: 760px) {
  .media-dashboard-stats {
    grid-template-columns: 1fr;
  }

  .media-dashboard-cell-directory {
    display: none;
  }

  .media-dashboard-table th:nth-child(4),
  .media-dashboard-table td:nth-child(4) {
    display: none;
  }
}

.media-images-grid {
  display: grid;
  grid-template-columns: repeat(auto-fill, minmax(168px, 1fr));
  gap: 10px;
}

.media-image-card {
  border: 1px solid var(--border);
  border-radius: 10px;
  background: #fff;
  overflow: hidden;
  display: flex;
  flex-direction: column;
}

.media-image-thumb {
  height: 110px;
  background: #f1f5f9;
  display: flex;
  align-items: center;
  justify-content: center;
  overflow: hidden;
  cursor: pointer;
}

.media-image-thumb img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  display: block;
}

.media-image-thumb-error {
  background: linear-gradient(135deg, #e5edff, #f5f8ff);
}

.media-image-fallback {
  font-size: 28px;
}

.media-image-name {
  padding: 6px 8px;
  font-size: 12px;
  font-weight: 600;
  word-break: break-word;
}

.media-file-name {
  padding: 6px 8px 2px;
  font-size: 12px;
  font-weight: 600;
  word-break: break-word;
  cursor: pointer;
}

.media-file-name:hover {
  color: var(--accent, #2563eb);
}

.media-image-path,
.media-file-path {
  padding: 0 8px 6px;
  font-size: 11px;
  color: var(--muted);
  word-break: break-word;
}

.media-file-list {
  list-style: none;
  margin: 0;
  padding: 0;
  display: flex;
  flex-direction: column;
  gap: 8px;
}

.media-file-item {
  display: flex;
  align-items: center;
  gap: 10px;
  padding: 10px 12px;
  border: 1px solid var(--border);
  border-radius: 10px;
  background: #fff;
}

.media-file-icon {
  font-size: 20px;
  flex-shrink: 0;
}

.media-file-body {
  flex: 1;
  min-width: 0;
}

.media-file-size {
  font-size: 11px;
  color: var(--muted);
  margin-top: 2px;
}

.media-action-btn,
.media-sidecar-back-btn,
.external-memory-back-btn {
  box-sizing: border-box;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  border: 1px solid var(--border);
  border-radius: 8px;
  background: #fff;
  padding: 5px 9px;
  font-size: 11px;
  font-weight: 600;
  line-height: 1.25;
  white-space: nowrap;
  flex-shrink: 0;
  cursor: pointer;
  color: var(--text);
  transition: background 0.15s ease, border-color 0.15s ease;
}

.media-action-btn:hover,
.media-sidecar-back-btn:hover,
.external-memory-back-btn:hover {
  background: #eff6ff;
  border-color: #bfdbfe;
  color: #1e3a8a;
}

.node-entry-overview-media-asset-actions .media-action-btn.media-action-btn--entry-overview-preview,
.media-action-btn.media-action-btn--entry-overview-preview {
  gap: 6px;
  width: auto;
  min-width: 0;
  height: auto;
  min-height: 28px;
  padding: 4px 10px;
  color: #fff;
  border-color: #dc2626;
  background: #ef4444;
}

.node-entry-overview-media-asset-actions .media-action-btn.media-action-btn--entry-overview-preview:hover,
.media-action-btn.media-action-btn--entry-overview-preview:hover {
  background: #dc2626;
  border-color: #b91c1c;
  color: #fff;
}

.media-action-btn.media-action-btn--entry-overview-preview .media-action-btn-icon,
.media-action-btn.media-action-btn--entry-overview-preview .media-action-btn-icon svg {
  color: #fff;
  stroke: #fff;
}

.media-action-btn.media-action-btn--entry-overview-preview .media-action-btn-text {
  height: auto;
  padding: 0;
  font-size: 11px;
  font-weight: 600;
  line-height: 1.2;
  white-space: nowrap;
  color: #fff;
}

.media-sidecar-back-btn,
.external-memory-back-btn {
  margin-right: 8px;
}

.list-item-with-actions {
  display: flex;
  align-items: center;
  gap: 10px;
}

.list-item-with-actions .list-item-path {
  flex: 1;
  min-width: 0;
}

.list-item-actions {
  display: flex;
  flex-shrink: 0;
  gap: 6px;
  align-items: center;
}

.media-file-actions,
.media-image-actions,
.media-player-actions {
  display: flex;
  flex-shrink: 0;
  gap: 6px;
  align-items: center;
}

.media-file-actions,
.media-player-actions {
  justify-content: flex-end;
}

.media-image-actions {
  padding: 0 8px 8px;
  flex-direction: column;
  align-items: stretch;
  margin-top: auto;
}

.media-image-actions .media-action-btn-icon-only {
  width: 100%;
}

.media-player-list {
  display: flex;
  flex-direction: column;
  gap: 12px;
}

.media-player-item {
  border: 1px solid var(--border);
  border-radius: 10px;
  background: #fff;
  padding: 10px 12px;
}

.media-player-meta {
  margin-bottom: 8px;
}

.media-audio-player,
.media-video-player {
  width: 100%;
}

.media-video-player {
  max-height: 320px;
  background: #000;
  border-radius: 8px;
}

.external-list-view-main,
.media-list-view-main {
  flex: 1;
  min-width: 0;
  min-height: 0;
  display: flex;
  flex-direction: column;
}

.external-list-section-head.hidden {
  display: none;
}

.external-list-section-head .media-section-folder-head,
.media-list-section-head .media-section-folder-head {
  margin: 0;
  border-bottom: none;
  background: #f1f5f9;
  display: flex;
  align-items: center;
  gap: 12px;
  flex-wrap: wrap;
}

.external-list-section-head .media-section-folder-title,
.media-list-section-head .media-section-folder-title {
  font-size: 15px;
  font-weight: 600;
  color: #0f172a;
  flex: 0 0 auto;
}

.external-list-section-head .node-navigation-section-search,
.media-list-section-head .node-navigation-section-search {
  flex: 1 1 180px;
  max-width: 320px;
  margin-left: auto;
}

.media-list-section-head.hidden {
  display: none;
}

.media-list-view-body,
.external-list-view-body {
  flex: 1;
  min-height: 0;
  overflow: auto;
}

.external-list-toolbar {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
  flex-wrap: wrap;
  padding: 10px 12px;
  border-bottom: 1px solid var(--border);
  background: #fff;
}

.external-list-results-count {
  font-size: 12px;
  color: var(--muted);
  white-space: nowrap;
}

.external-list-toolbar-controls {
  display: flex;
  align-items: center;
  gap: 8px;
  flex: 1;
  min-width: 0;
  justify-content: flex-end;
}

.external-list-filter-input {
  flex: 1 1 220px;
  min-width: 160px;
  max-width: 360px;
  padding: 6px 10px;
  border: 1px solid var(--border);
  border-radius: 8px;
  font-size: 12px;
  color: #0f172a;
  background: #fff;
}

.external-list-filter-input:focus {
  outline: none;
  border-color: var(--accent);
}

.external-list-sort-select {
  min-width: 120px;
  padding: 5px 8px;
  border: 1px solid var(--border);
  border-radius: 8px;
  background: #fff;
  font-size: 12px;
  color: #334155;
}

.external-list-sort-select:focus {
  outline: none;
  border-color: var(--accent);
}

.external-list-sort-dir-btn {
  width: 32px;
  height: 32px;
  padding: 0;
  border: 1px solid var(--border);
  border-radius: 8px;
  background: #fff;
  font-size: 14px;
  line-height: 1;
  color: #334155;
  cursor: pointer;
}

.external-list-sort-dir-btn:hover {
  background: #f8fafc;
  border-color: #cbd5e1;
}

.external-list-columns-wrap {
  position: relative;
  flex-shrink: 0;
}

.external-list-columns-btn {
  padding: 5px 10px;
  border: 1px solid var(--border);
  border-radius: 8px;
  background: #fff;
  font-size: 12px;
  color: #334155;
  cursor: pointer;
  white-space: nowrap;
}

.external-list-columns-btn:hover {
  background: #f8fafc;
  border-color: #cbd5e1;
}

.external-list-columns-panel {
  position: absolute;
  top: calc(100% + 6px);
  right: 0;
  z-index: 40;
  min-width: 220px;
  max-width: min(320px, 70vw);
  max-height: min(420px, 60vh);
  overflow: auto;
  padding: 8px 0;
  border: 1px solid var(--border);
  border-radius: 10px;
  background: #fff;
  box-shadow: 0 10px 28px rgba(15, 23, 42, 0.12);
}

.external-list-columns-panel.hidden {
  display: none;
}

.external-list-columns-panel-head {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 8px;
  padding: 0 10px 6px;
  border-bottom: 1px solid rgba(148, 163, 184, 0.22);
  margin-bottom: 4px;
}

.external-list-columns-panel-title {
  font-size: 11px;
  font-weight: 700;
  color: #64748b;
  text-transform: uppercase;
  letter-spacing: 0.04em;
}

.external-list-columns-panel-actions {
  display: flex;
  gap: 4px;
}

.external-list-columns-action-btn {
  border: 0;
  background: transparent;
  color: #2563eb;
  font: inherit;
  font-size: 11px;
  cursor: pointer;
  padding: 2px 4px;
}

.external-list-columns-action-btn:hover {
  text-decoration: underline;
}

.external-list-columns-panel-list {
  display: flex;
  flex-direction: column;
  gap: 2px;
  padding: 0 6px;
}

.external-list-columns-option {
  display: flex;
  align-items: center;
  gap: 8px;
  padding: 5px 6px;
  border-radius: 6px;
  font-size: 12px;
  color: #0f172a;
  cursor: pointer;
}

.external-list-columns-option:hover {
  background: #f8fafc;
}

.external-list-columns-option input {
  margin: 0;
  flex-shrink: 0;
}

.external-table-wrap {
  overflow: auto;
  border: 1px solid var(--border);
  border-radius: 10px;
  background: var(--panel);
}

.external-table {
  width: 100%;
  min-width: 960px;
  border-collapse: collapse;
  font-size: 12px;
}

.external-table th,
.external-table td {
  border-bottom: 1px solid var(--border);
  padding: 8px 10px;
  text-align: left;
  vertical-align: middle;
}

.external-table th {
  position: sticky;
  top: 0;
  z-index: 1;
  background: #f1f5f9;
  font-weight: 700;
  white-space: nowrap;
  color: #334155;
}

.external-table-sort-header {
  cursor: pointer;
  user-select: none;
}

.external-table-sort-header:hover,
.external-table-sort-header:focus-visible {
  color: #1d4ed8;
  outline: none;
}

.external-table-sort-header.is-active {
  color: #1d4ed8;
}

.external-table td {
  white-space: nowrap;
  color: #0f172a;
}

.external-table-file-cell {
  font-weight: 500;
  max-width: 220px;
  overflow: hidden;
  text-overflow: ellipsis;
}

.external-table td:last-child,
.external-table th:last-child {
  white-space: normal;
  word-break: break-word;
  min-width: 140px;
}

.external-table tbody tr {
  cursor: pointer;
}

.external-table tbody tr:hover,
.external-table tbody tr:focus-visible {
  background: #f8fafc;
  outline: none;
}

.external-table-cover-cell {
  width: 52px;
  text-align: center;
}

.external-table-cover-thumb {
  display: block;
  width: 36px;
  height: 36px;
  margin: 0 auto;
  object-fit: cover;
  border-radius: 6px;
  border: 1px solid #e2e8f0;
  background: #f8fafc;
  cursor: zoom-in;
}

.external-table-cover-cell:has(.external-table-cover-thumb:not(.broken-image-placeholder)):hover .external-table-cover-thumb {
  border-color: #93c5fd;
  box-shadow: 0 0 0 2px rgba(147, 197, 253, 0.28);
}

.external-table-cover-thumb.broken-image-placeholder {
  border-color: #fecaca;
  background: #fef2f2;
}

.external-table-color-cell {
  display: flex;
  align-items: center;
  gap: 6px;
}

.external-table-color-swatch {
  width: 14px;
  height: 14px;
  border-radius: 4px;
  border: 1px solid #cbd5e1;
  flex-shrink: 0;
}

.external-cards-grid {
  display: grid;
  grid-template-columns: repeat(auto-fill, minmax(220px, 1fr));
  gap: 10px;
}

.external-card {
  border: 1px solid var(--border);
  border-radius: 10px;
  background: #fff;
  overflow: hidden;
}

.external-card-image {
  position: relative;
  height: 110px;
  background: linear-gradient(135deg, #e5edff, #f5f8ff);
  display: flex;
  align-items: center;
  justify-content: center;
  color: #6b7280;
  font-size: 12px;
  overflow: hidden;
}

.external-card-status {
  position: absolute;
  top: 8px;
  left: 8px;
  z-index: 2;
  max-width: calc(100% - 16px);
  padding: 3px 8px;
  border-radius: 999px;
  font-size: 11px;
  font-weight: 600;
  line-height: 1.2;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
  background: rgba(15, 23, 42, 0.78);
  color: #fff;
  backdrop-filter: blur(4px);
}

.external-card-status--open {
  background: rgba(22, 101, 52, 0.88);
}

.external-card-status--draft {
  background: rgba(161, 98, 7, 0.9);
}

.external-card-status--closed {
  background: rgba(185, 28, 28, 0.88);
}

.external-card-status--none {
  background: rgba(100, 116, 139, 0.88);
}

.external-card-status--default {
  background: rgba(100, 116, 139, 0.78);
}

.external-card-cover-img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  display: block;
}

.external-card-cover-icon {
  width: 42px;
  height: 42px;
  opacity: 0.55;
}

.external-card-body {
  padding: 8px 10px;
}

.external-card-file-name {
  font-size: 13px;
  font-weight: 600;
  color: #0f172a;
  line-height: 1.3;
  word-break: break-word;
}

.external-card-path {
  margin-top: 4px;
  font-family: ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace;
  font-size: 11px;
  color: #64748b;
  line-height: 1.35;
  word-break: break-word;
}

.external-calendar-grid {
  display: grid;
  grid-template-columns: repeat(7, minmax(80px, 1fr));
  gap: 8px;
}

.external-calendar-day {
  border: 1px solid var(--border);
  border-radius: 8px;
  min-height: 74px;
  padding: 6px;
  background: #fff;
}

.external-calendar-day-title {
  font-size: 11px;
  color: var(--muted);
  margin-bottom: 4px;
}

.external-calendar-item {
  font-size: 11px;
  background: #eef4ff;
  border-radius: 6px;
  padding: 2px 5px;
  margin-bottom: 3px;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
}

.external-index-section {
  border: 1px solid var(--border);
  border-radius: 10px;
  background: #fff;
  margin-bottom: 10px;
  overflow: hidden;
}

.external-index-section-title {
  padding: 8px 12px;
  font-size: 12px;
  font-weight: 600;
  background: #f8fbff;
  border-bottom: 1px solid var(--border);
  color: #1e3a8a;
}

.external-index-list {
  list-style: none;
  margin: 0;
  padding: 6px 0;
}

.external-index-item {
  padding: 6px 12px;
  font-size: 12px;
  cursor: pointer;
}

.external-index-item:hover {
  background: var(--panel-soft);
}

.external-moc-grid {
  display: grid;
  grid-template-columns: repeat(auto-fill, minmax(220px, 1fr));
  gap: 10px;
}

.external-moc-card {
  border: 1px solid var(--border);
  border-radius: 10px;
  background: #fff;
  overflow: hidden;
}

.external-moc-card-title {
  padding: 8px 12px;
  font-size: 12px;
  font-weight: 600;
  background: #fef9c3;
  border-bottom: 1px solid #fde68a;
  color: #854d0e;
  text-transform: capitalize;
}

.external-moc-list {
  list-style: none;
  margin: 0;
  padding: 6px 0;
}

.external-moc-item {
  padding: 6px 12px;
  font-size: 12px;
  cursor: pointer;
}

.external-moc-item:hover {
  background: var(--panel-soft);
}

.list-view-content .node-mindmap-wrap {
  min-height: 480px;
  border: 1px solid var(--border);
  border-radius: 10px;
  background: #eef2f7;
}

.external-cheatsheet {
  display: flex;
  flex-direction: column;
  gap: 12px;
}

.external-cheatsheet-intro {
  margin: 0;
  font-size: 12px;
  line-height: 1.45;
  color: var(--muted);
}

.external-cheatsheet-grid {
  display: grid;
  grid-template-columns: repeat(auto-fill, minmax(260px, 1fr));
  gap: 10px;
}

.external-cheatsheet-card {
  border: 1px solid var(--border);
  border-radius: 10px;
  background: linear-gradient(165deg, #fffef8 0%, #fff 42%, #f8fafc 100%);
  padding: 10px 12px;
  cursor: pointer;
  transition: border-color 0.15s ease, box-shadow 0.15s ease;
}

.external-cheatsheet-card:hover {
  border-color: #c7d2fe;
  box-shadow: 0 4px 14px rgba(99, 102, 241, 0.1);
}

.external-cheatsheet-card.is-active {
  border-color: #6366f1;
  box-shadow: 0 0 0 2px rgba(99, 102, 241, 0.2);
}

.external-cheatsheet-card-head {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: 8px;
  margin-bottom: 6px;
}

.external-cheatsheet-card-title {
  margin: 0;
  font-size: 14px;
  font-weight: 700;
  line-height: 1.3;
  color: #1e293b;
}

.external-cheatsheet-badge {
  flex-shrink: 0;
  font-size: 11px;
  font-weight: 700;
  color: #15803d;
  background: #dcfce7;
  border-radius: 999px;
  padding: 2px 6px;
}

.external-cheatsheet-facts {
  margin: 0 0 8px;
  padding-left: 16px;
  font-size: 11px;
  line-height: 1.45;
  color: #475569;
}

.external-cheatsheet-facts li + li {
  margin-top: 2px;
}

.external-cheatsheet-path {
  font-size: 10px;
  line-height: 1.35;
  color: var(--muted);
  word-break: break-all;
}

.external-graph-wrap {
  position: relative;
  overflow: hidden;
  padding: 0;
  min-height: 520px;
  border-radius: 12px;
  border: 1px solid rgba(148, 163, 184, 0.16);
  background: #070b14;
  cursor: grab;
  user-select: none;
  touch-action: none;
}

.external-graph-space-bg {
  position: absolute;
  inset: 0;
  z-index: 0;
  pointer-events: none;
  overflow: hidden;
  border-radius: inherit;
  background: linear-gradient(165deg, #050810 0%, #0a1020 42%, #060a14 100%);
}

.external-graph-nebula {
  position: absolute;
  border-radius: 50%;
  filter: blur(42px);
  opacity: 0.75;
  animation: graph-nebula-drift 28s ease-in-out infinite alternate;
}

.external-graph-nebula--violet {
  width: 58%;
  height: 52%;
  left: -8%;
  top: -6%;
  background: radial-gradient(circle, rgba(124, 58, 237, 0.34) 0%, rgba(88, 28, 135, 0.12) 45%, transparent 72%);
  animation-duration: 32s;
}

.external-graph-nebula--blue {
  width: 52%;
  height: 48%;
  right: -10%;
  bottom: -8%;
  background: radial-gradient(circle, rgba(59, 130, 246, 0.28) 0%, rgba(37, 99, 235, 0.1) 48%, transparent 74%);
  animation-duration: 36s;
  animation-delay: -8s;
}

.external-graph-nebula--cyan {
  width: 38%;
  height: 34%;
  left: 34%;
  top: 38%;
  background: radial-gradient(circle, rgba(34, 211, 238, 0.16) 0%, rgba(6, 182, 212, 0.06) 50%, transparent 72%);
  animation-duration: 24s;
  animation-delay: -4s;
}

.external-graph-stars {
  position: absolute;
  inset: 0;
}

.external-graph-star {
  position: absolute;
  border-radius: 50%;
  background: #fff;
  box-shadow: 0 0 4px rgba(255, 255, 255, 0.45);
  animation: graph-star-twinkle ease-in-out infinite;
}

@keyframes graph-nebula-drift {
  0% {
    transform: translate(0, 0) scale(1);
  }

  100% {
    transform: translate(2.5%, 3%) scale(1.06);
  }
}

@keyframes graph-star-twinkle {
  0%,
  100% {
    opacity: 0.35;
    transform: scale(1);
  }

  50% {
    opacity: 1;
    transform: scale(1.15);
  }
}

.external-graph-wrap.is-panning,
.external-graph-wrap.is-dragging-node {
  cursor: grabbing;
}

.external-graph-canvas {
  position: relative;
  z-index: 1;
  display: block;
  width: 100%;
  height: 100%;
  min-height: 520px;
  background: transparent;
  border-radius: 12px;
}

.external-graph-viewport {
  transition: none;
}

.external-graph-wrap.is-entering .external-graph-node {
  opacity: 0.12;
}

.external-graph-wrap.is-settled .external-graph-node {
  opacity: 1;
}

.external-graph-node {
  transition: opacity 0.55s ease;
}

.external-graph-wrap.is-entering .external-graph-link {
  opacity: 0.06;
}

.external-graph-wrap.is-settled .external-graph-link {
  opacity: 1;
}

.external-graph-link {
  stroke: rgba(255, 255, 255, 0.3);
  stroke-width: 1.05;
  transition: stroke 0.2s ease, opacity 0.45s ease;
}

.external-graph-link-weak {
  stroke: rgba(255, 255, 255, 0.16);
  stroke-width: 0.85;
}

.external-graph-wrap.is-focusing .external-graph-link {
  opacity: 0.2;
}

.external-graph-wrap.is-focusing .external-graph-link.highlighted {
  opacity: 1;
  stroke: rgba(167, 139, 250, 0.92);
  stroke-width: 1.45;
}

.external-graph-glow {
  fill: rgba(167, 139, 250, 0.32);
  opacity: 0;
  transition: opacity 0.12s ease;
}

.external-graph-glow.file {
  fill: rgba(156, 163, 175, 0.28);
}

.external-graph-glow.folder {
  fill: rgba(250, 204, 21, 0.28);
}

.external-graph-glow.repositories {
  fill: rgba(34, 197, 94, 0.3);
}

.external-graph-glow.iblock {
  fill: rgba(167, 139, 250, 0.34);
}

.external-graph-glow.media-libraries {
  fill: rgba(244, 114, 182, 0.32);
}

.external-graph-glow.channels {
  fill: rgba(56, 189, 248, 0.32);
}

.external-graph-glow.active,
.external-graph-node.hovered .external-graph-glow,
.external-graph-node.highlighted .external-graph-glow {
  opacity: 1;
}

.external-graph-node.hovered .external-graph-glow,
.external-graph-node.highlighted .external-graph-glow {
  animation: graph-node-glow 1.8s ease-in-out infinite;
}

@keyframes graph-node-glow {
  0%,
  100% {
    opacity: 0.55;
  }

  50% {
    opacity: 1;
  }
}

.external-graph-dot {
  stroke-width: 0;
  transition: fill 0.2s ease;
}

.external-graph-node.hovered .external-graph-dot,
.external-graph-node.highlighted .external-graph-dot {
  filter: drop-shadow(0 0 5px rgba(255, 255, 255, 0.35));
}

.external-graph-dot.file {
  fill: #9ca3af;
}

.external-graph-dot.folder {
  fill: #facc15;
  stroke: rgba(250, 204, 21, 0.45);
  stroke-width: 1;
}

.external-graph-dot.repositories {
  fill: #22c55e;
  stroke: rgba(34, 197, 94, 0.45);
  stroke-width: 1;
}

.external-graph-dot.iblock {
  fill: #a78bfa;
  stroke: rgba(167, 139, 250, 0.5);
  stroke-width: 1;
}

.external-graph-dot.media-libraries {
  fill: #f472b6;
  stroke: rgba(244, 114, 182, 0.48);
  stroke-width: 1;
}

.external-graph-dot.channels {
  fill: #38bdf8;
  stroke: rgba(56, 189, 248, 0.48);
  stroke-width: 1;
}

.external-graph-dot.active,
.external-graph-node.hovered .external-graph-dot,
.external-graph-node.highlighted .external-graph-dot {
  fill: #ffffff;
}

.external-graph-node.hovered .external-graph-dot.file,
.external-graph-node.highlighted .external-graph-dot.file {
  fill: #d1d5db;
}

.external-graph-node.hovered .external-graph-dot.folder,
.external-graph-node.highlighted .external-graph-dot.folder {
  fill: #fde047;
}

.external-graph-node.hovered .external-graph-dot.repositories,
.external-graph-node.highlighted .external-graph-dot.repositories {
  fill: #4ade80;
}

.external-graph-node.hovered .external-graph-dot.iblock,
.external-graph-node.highlighted .external-graph-dot.iblock {
  fill: #c4b5fd;
}

.external-graph-node.hovered .external-graph-dot.media-libraries,
.external-graph-node.highlighted .external-graph-dot.media-libraries {
  fill: #f9a8d4;
}

.external-graph-node.hovered .external-graph-dot.channels,
.external-graph-node.highlighted .external-graph-dot.channels {
  fill: #7dd3fc;
}

.external-graph-preview-halo {
  fill: none;
  stroke-width: 2;
  opacity: 0;
  pointer-events: none;
  transition: opacity 0.12s ease;
}

.external-graph-preview-halo.file {
  stroke: rgba(156, 163, 175, 0.72);
}

.external-graph-preview-halo.folder {
  stroke: rgba(250, 204, 21, 0.78);
}

.external-graph-preview-halo.repositories {
  stroke: rgba(34, 197, 94, 0.72);
}

.external-graph-preview-halo.iblock {
  stroke: rgba(167, 139, 250, 0.78);
}

.external-graph-preview-halo.media-libraries {
  stroke: rgba(244, 114, 182, 0.75);
}

.external-graph-preview-halo.channels {
  stroke: rgba(56, 189, 248, 0.75);
}

.external-graph-preview-halo.active,
.external-graph-node.has-preview.hovered .external-graph-preview-halo,
.external-graph-node.has-preview.highlighted .external-graph-preview-halo {
  opacity: 1;
}

.external-graph-node.has-preview.hovered .external-graph-preview-halo,
.external-graph-node.has-preview.highlighted .external-graph-preview-halo {
  animation: graph-preview-halo-pulse 1.8s ease-in-out infinite;
}

@keyframes graph-preview-halo-pulse {
  0%,
  100% {
    opacity: 0.55;
  }

  50% {
    opacity: 1;
  }
}

.external-graph-wrap.is-light .external-graph-preview-halo.file {
  stroke: rgba(100, 116, 139, 0.82);
}

.external-graph-wrap.is-light .external-graph-preview-halo.folder {
  stroke: rgba(202, 138, 4, 0.88);
}

.external-graph-preview-frame {
  stroke-width: 1.5;
  pointer-events: none;
}

.external-graph-preview-media-bg {
  fill: rgba(15, 23, 42, 0.92);
  stroke: rgba(100, 116, 139, 0.45);
}

.external-graph-wrap.is-light .external-graph-preview-media-bg {
  fill: #cbd5e1;
  stroke: rgba(100, 116, 139, 0.55);
}

.external-graph-preview-caption-bar {
  fill: rgba(15, 23, 42, 0.9);
  stroke: rgba(100, 116, 139, 0.35);
  stroke-width: 1;
  pointer-events: none;
}

.external-graph-wrap.is-light .external-graph-preview-caption-bar {
  fill: rgba(255, 255, 255, 0.96);
  stroke: rgba(148, 163, 184, 0.45);
}

.external-graph-preview-caption-text {
  fill: rgba(248, 250, 252, 0.95);
  font-size: 10px;
  font-weight: 650;
  pointer-events: none;
}

.external-graph-wrap.is-light .external-graph-preview-caption-text {
  fill: #0f172a;
}

.external-graph-preview-frame.file {
  stroke: rgba(156, 163, 175, 0.95);
}

.external-graph-preview-frame.folder {
  stroke: rgba(250, 204, 21, 0.95);
}

.external-graph-preview-frame.active,
.external-graph-node.hovered .external-graph-preview-frame,
.external-graph-node.highlighted .external-graph-preview-frame {
  stroke-width: 2;
}

.external-graph-preview-image {
  pointer-events: none;
  opacity: 0.72;
  transition: opacity 0.22s ease;
}

.external-graph-preview-image.is-loaded {
  opacity: 1;
}

.external-graph-node.has-preview .external-graph-label {
  font-size: 11px;
}

.agent-visualization-pane .agent-rmm-mockup-links {
  position: absolute;
  left: 50%;
  bottom: 12px;
  z-index: 5;
  transform: translateX(-50%);
  display: flex;
  align-items: center;
  gap: 8px;
  pointer-events: auto;
}

.agent-rmm-mockup-btn {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-height: 28px;
  padding: 5px 14px;
  border: 1px solid rgba(202, 138, 4, 0.55);
  border-radius: 999px;
  background: linear-gradient(180deg, #fde047 0%, #facc15 48%, #eab308 100%);
  color: #422006;
  font-size: 11px;
  font-weight: 650;
  line-height: 1.2;
  text-decoration: none;
  white-space: nowrap;
  box-shadow:
    0 8px 20px rgba(180, 83, 9, 0.28),
    inset 0 1px 0 rgba(255, 255, 255, 0.45);
  transition:
    background 0.12s ease,
    border-color 0.12s ease,
    box-shadow 0.12s ease,
    transform 0.12s ease;
}

.agent-rmm-mockup-btn:hover {
  border-color: rgba(161, 98, 7, 0.7);
  background: linear-gradient(180deg, #fef08a 0%, #fde047 50%, #f59e0b 100%);
  color: #3f2208;
  box-shadow:
    0 10px 24px rgba(180, 83, 9, 0.34),
    inset 0 1px 0 rgba(255, 255, 255, 0.55);
}

.agent-visualization-pane .agent-rmm-content:has(.external-graph-wrap.is-light) .agent-rmm-mockup-btn {
  border-color: rgba(202, 138, 4, 0.65);
  color: #422006;
  box-shadow:
    0 6px 18px rgba(180, 83, 9, 0.22),
    inset 0 1px 0 rgba(255, 255, 255, 0.5);
}

.agent-visualization-pane .agent-rmm-content:has(.external-graph-wrap.is-light) .agent-rmm-mockup-btn:hover {
  border-color: rgba(161, 98, 7, 0.75);
  color: #3f2208;
}

.agent-visualization-pane .agent-rmm-graph-chrome {
  position: absolute;
  inset: 10px;
  z-index: 4;
  pointer-events: none;
}

.agent-visualization-pane .agent-rmm-graph-chrome.hidden {
  display: none;
}

.agent-visualization-pane .agent-rmm-graph-chrome-bottom-left {
  position: absolute;
  left: 0;
  bottom: 0;
  z-index: 1;
  pointer-events: auto;
}

.agent-rmm-graph-theme-toggle {
  display: inline-flex;
  flex-shrink: 0;
  padding: 2px;
  border-radius: 999px;
  background: rgba(15, 23, 42, 0.72);
  border: 1px solid rgba(148, 163, 184, 0.22);
  box-shadow: 0 8px 24px rgba(2, 6, 23, 0.35);
}

.agent-rmm-graph-theme-btn {
  display: inline-flex;
  align-items: center;
  gap: 5px;
  margin: 0;
  padding: 4px 9px;
  border: 0;
  border-radius: 999px;
  background: transparent;
  color: rgba(226, 232, 240, 0.82);
  font-size: 11px;
  font-weight: 650;
  line-height: 1.2;
  cursor: pointer;
  transition: background 0.12s ease, color 0.12s ease;
  white-space: nowrap;
}

.agent-rmm-graph-theme-btn.is-active {
  background: rgba(255, 255, 255, 0.12);
  color: #f8fafc;
  box-shadow: inset 0 0 0 1px rgba(255, 255, 255, 0.08);
}

.agent-rmm-graph-theme-icon {
  font-size: 13px;
  line-height: 1;
}

.agent-visualization-pane .agent-rmm-graph-chrome-top-left {
  position: absolute;
  top: 0;
  left: 0;
  z-index: 1;
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  gap: 6px;
  pointer-events: auto;
}

.agent-visualization-pane .agent-rmm-graph-chrome-top-center {
  position: absolute;
  top: 0;
  left: 50%;
  z-index: 2;
  transform: translateX(-50%);
  width: min(380px, calc(100% - 240px));
  pointer-events: auto;
}

.agent-rmm-graph-search {
  position: relative;
  display: block;
  width: 100%;
}

.agent-rmm-graph-search-icon {
  position: absolute;
  left: 12px;
  top: 50%;
  transform: translateY(-50%);
  font-size: 14px;
  line-height: 1;
  color: rgba(148, 163, 184, 0.95);
  pointer-events: none;
}

.agent-rmm-graph-search-input {
  width: 100%;
  box-sizing: border-box;
  margin: 0;
  padding: 8px 14px 8px 34px;
  border: 1px solid rgba(148, 163, 184, 0.28);
  border-radius: 999px;
  background: rgba(15, 23, 42, 0.78);
  color: #f1f5f9;
  font-size: 12px;
  line-height: 1.25;
  box-shadow: 0 8px 24px rgba(2, 6, 23, 0.35);
  outline: none;
}

.agent-rmm-graph-search-input::placeholder {
  color: rgba(148, 163, 184, 0.82);
}

.agent-rmm-graph-search-input:focus {
  border-color: rgba(165, 180, 252, 0.55);
  box-shadow:
    0 8px 24px rgba(2, 6, 23, 0.35),
    0 0 0 2px rgba(99, 102, 241, 0.22);
}

.agent-rmm-graph-search-input::-webkit-search-cancel-button {
  cursor: pointer;
}

.agent-visualization-pane .agent-rmm-graph-chrome .agent-rmm-preview-setting {
  position: static;
  pointer-events: auto;
  margin: 0;
  box-shadow: 0 8px 24px rgba(2, 6, 23, 0.35);
}

.agent-rmm-graph-index-btn {
  margin: 0;
  padding: 6px 10px;
  border: 1px solid rgba(148, 163, 184, 0.22);
  border-radius: 8px;
  background: rgba(15, 23, 42, 0.72);
  color: rgba(226, 232, 240, 0.88);
  font-size: 11px;
  font-weight: 600;
  line-height: 1.2;
  letter-spacing: 0.01em;
  white-space: nowrap;
  cursor: not-allowed;
  box-shadow: 0 8px 24px rgba(2, 6, 23, 0.35);
  transition: border-color 0.12s ease, background 0.12s ease, opacity 0.12s ease;
}

.agent-rmm-graph-index-btn:disabled {
  opacity: 0.52;
}

.agent-rmm-graph-index-btn:not(:disabled):hover {
  border-color: rgba(165, 180, 252, 0.45);
  background: rgba(30, 41, 59, 0.82);
  cursor: pointer;
}

.agent-visualization-pane .agent-rmm-content:has(.external-graph-wrap.is-light) .agent-rmm-graph-index-btn {
  background: rgba(255, 255, 255, 0.94);
  border-color: rgba(148, 163, 184, 0.42);
  color: #475569;
  box-shadow: 0 6px 20px rgba(15, 23, 42, 0.08);
}

.agent-visualization-pane .agent-rmm-content:has(.external-graph-wrap.is-light) .agent-rmm-graph-theme-toggle {
  background: rgba(255, 255, 255, 0.94);
  border-color: rgba(148, 163, 184, 0.42);
  box-shadow: 0 6px 20px rgba(15, 23, 42, 0.08);
}

.agent-visualization-pane .agent-rmm-content:has(.external-graph-wrap.is-light) .agent-rmm-graph-theme-btn {
  color: #64748b;
}

.agent-visualization-pane .agent-rmm-content:has(.external-graph-wrap.is-light) .agent-rmm-graph-theme-btn.is-active {
  background: rgba(59, 130, 246, 0.14);
  color: #1d4ed8;
  box-shadow: inset 0 0 0 1px rgba(59, 130, 246, 0.22);
}

.agent-visualization-pane .agent-rmm-graph-chrome .agent-rmm-zoom {
  position: absolute;
  top: 0;
  right: 0;
  left: auto;
  bottom: auto;
  pointer-events: auto;
  margin: 0;
  background: transparent;
  border: none;
  border-radius: 0;
  box-shadow: none;
}

.external-graph-controls--embed {
  position: static;
  flex-direction: row;
  gap: 4px;
  border-radius: 8px;
  background: rgba(15, 23, 42, 0.72);
  border: 1px solid rgba(148, 163, 184, 0.22);
}

.external-graph-preview-chrome-bar {
  fill: rgba(15, 23, 42, 0.72);
  pointer-events: none;
}

.external-graph-preview-chrome-id {
  fill: #f8fafc;
  font-size: 10px;
  font-weight: 700;
  letter-spacing: 0.02em;
  pointer-events: none;
}

.external-graph-preview-chrome-title {
  fill: rgba(248, 250, 252, 0.92);
  font-size: 9px;
  font-weight: 650;
  letter-spacing: 0.01em;
  pointer-events: none;
}

.external-graph-wrap.is-light .external-graph-preview-chrome-bar {
  fill: rgba(248, 250, 252, 0.94);
}

.external-graph-wrap.is-light .external-graph-preview-chrome-id {
  fill: #0f172a;
}

.external-graph-wrap.is-light .external-graph-preview-chrome-title {
  fill: #334155;
}

.external-graph-dot-id {
  fill: rgba(248, 250, 252, 0.92);
  font-size: 8px;
  font-weight: 700;
  pointer-events: none;
}

.external-graph-dot-status {
  stroke: rgba(255, 255, 255, 0.9);
  stroke-width: 1.25;
  pointer-events: none;
}

.external-graph-dot-status-emoji {
  font-size: 6px;
  pointer-events: none;
}

.external-graph-preview-id-bg {
  display: none;
}

.external-graph-preview-id-text {
  display: none;
}

.external-graph-preview-status-dot {
  stroke: rgba(255, 255, 255, 0.85);
  stroke-width: 1.5;
  pointer-events: none;
}

.external-graph-preview-status-emoji {
  fill: #fff;
  font-size: 7px;
  pointer-events: none;
}

.external-graph-preview-meta-bg {
  display: none;
}

.external-graph-preview-meta-line {
  display: none;
}

.external-graph-node.hovered .external-graph-preview-image,
.external-graph-node.highlighted .external-graph-preview-image,
.external-graph-node.active .external-graph-preview-image {
  opacity: 1;
}

.external-graph-wrap--previews .external-graph-node.has-preview .external-graph-glow {
  display: none;
}

.external-graph-wrap--previews .external-graph-node.has-preview .external-graph-glow.file {
  fill: rgba(156, 163, 175, 0.24);
}

.external-graph-wrap--previews .external-graph-node.has-preview .external-graph-glow.folder {
  fill: rgba(250, 204, 21, 0.24);
}

.external-graph-wrap--previews .external-graph-node.preview-missing .external-graph-glow {
  fill: rgba(255, 255, 255, 0.28);
}

.external-graph-wrap--previews .external-graph-node.preview-missing .external-graph-dot {
  fill: #ffffff;
  stroke: rgba(255, 255, 255, 0.45);
  stroke-width: 1;
}

.external-graph-wrap--previews .external-graph-node.preview-missing.hovered .external-graph-dot,
.external-graph-wrap--previews .external-graph-node.preview-missing.highlighted .external-graph-dot,
.external-graph-wrap--previews .external-graph-node.preview-missing.active .external-graph-dot {
  fill: #ffffff;
}

.external-graph-label {
  fill: rgba(255, 255, 255, 0.62);
  font-size: 11px;
  font-family: ui-sans-serif, system-ui, -apple-system, sans-serif;
  pointer-events: none;
  transition: fill 0.2s ease, opacity 0.35s ease;
}

.external-graph-node.hovered .external-graph-label,
.external-graph-node.active .external-graph-label,
.external-graph-node.highlighted .external-graph-label {
  fill: rgba(255, 255, 255, 0.95);
}

.external-graph-wrap.is-focusing .external-graph-node:not(.highlighted):not(.hovered) {
  opacity: 0.38;
  transition: opacity 0.25s ease;
}

.external-graph-wrap.is-focusing .external-graph-node.highlighted,
.external-graph-wrap.is-focusing .external-graph-node.hovered {
  opacity: 1;
  transition: opacity 0.25s ease;
}

.external-graph-node.disabled .external-graph-dot,
.external-graph-node.disabled .external-graph-glow {
  opacity: 0.42;
}

.external-graph-node.disabled .external-graph-label {
  fill: rgba(255, 255, 255, 0.34);
}

.external-graph-wrap.is-light {
  background: #f3f6fb;
  border-color: rgba(148, 163, 184, 0.38);
}

.external-graph-wrap.is-light .external-graph-space-bg {
  background: linear-gradient(168deg, #fcfdff 0%, #f3f7fc 42%, #e9f0f8 100%);
}

.external-graph-wrap.is-light .external-graph-space-bg::before {
  content: "";
  position: absolute;
  inset: 0;
  background-image:
    linear-gradient(rgba(100, 116, 139, 0.09) 1px, transparent 1px),
    linear-gradient(90deg, rgba(100, 116, 139, 0.09) 1px, transparent 1px);
  background-size: 22px 22px;
  opacity: 0.85;
  mask-image: radial-gradient(ellipse 88% 78% at 50% 44%, #000 18%, transparent 100%);
}

.external-graph-wrap.is-light .external-graph-space-bg::after {
  content: "";
  position: absolute;
  inset: 0;
  background:
    radial-gradient(ellipse 55% 42% at 18% 22%, rgba(59, 130, 246, 0.07) 0%, transparent 72%),
    radial-gradient(ellipse 48% 40% at 82% 78%, rgba(14, 165, 233, 0.06) 0%, transparent 70%),
    radial-gradient(ellipse 36% 30% at 52% 58%, rgba(99, 102, 241, 0.05) 0%, transparent 68%);
  pointer-events: none;
}

.external-graph-wrap.is-light .external-graph-nebula {
  opacity: 0.42;
  filter: blur(56px);
}

.external-graph-wrap.is-light .external-graph-nebula--violet {
  background: radial-gradient(circle, rgba(99, 102, 241, 0.14) 0%, rgba(79, 70, 229, 0.05) 48%, transparent 74%);
}

.external-graph-wrap.is-light .external-graph-nebula--blue {
  background: radial-gradient(circle, rgba(37, 99, 235, 0.12) 0%, rgba(59, 130, 246, 0.04) 50%, transparent 76%);
}

.external-graph-wrap.is-light .external-graph-nebula--cyan {
  background: radial-gradient(circle, rgba(6, 182, 212, 0.1) 0%, rgba(14, 165, 233, 0.04) 52%, transparent 74%);
}

.external-graph-wrap.is-light .external-graph-star {
  background: rgba(59, 130, 246, 0.28);
  box-shadow: 0 0 2px rgba(37, 99, 235, 0.2);
  opacity: 0.55;
}

.external-graph-wrap.is-light .external-graph-label {
  fill: #475569;
}

.external-graph-wrap.is-light .external-graph-node.hovered .external-graph-label,
.external-graph-wrap.is-light .external-graph-node.active .external-graph-label,
.external-graph-wrap.is-light .external-graph-node.highlighted .external-graph-label {
  fill: #0f172a;
}

.external-graph-wrap.is-light .external-graph-dot-id {
  fill: #334155;
}

.external-graph-wrap.is-light .external-graph-preview-chrome-bar {
  fill: rgba(241, 245, 249, 0.92);
}

.external-graph-wrap.is-light .external-graph-preview-chrome-id {
  fill: #1e293b;
}

.external-graph-wrap.is-light .external-graph-preview-frame {
  fill: rgba(255, 255, 255, 0.55);
}

.external-graph-wrap.is-light .external-graph-link {
  stroke: rgba(59, 130, 246, 0.28);
}

.external-graph-wrap.is-light .external-graph-link-weak {
  stroke: rgba(148, 163, 184, 0.32);
}

.external-graph-wrap.is-light .external-graph-node.disabled .external-graph-label {
  fill: rgba(100, 116, 139, 0.45);
}

.external-graph-wrap.is-light .external-graph-label-title {
  fill: rgba(30, 41, 59, 0.88);
}

.external-graph-wrap.is-light .external-graph-label-sub {
  fill: rgba(71, 85, 105, 0.62);
}

.external-graph-wrap.is-light .external-graph-node.hovered .external-graph-label-title,
.external-graph-wrap.is-light .external-graph-node.active .external-graph-label-title,
.external-graph-wrap.is-light .external-graph-node.highlighted .external-graph-label-title {
  fill: #0f172a;
}

.external-graph-wrap.is-light .external-graph-node.hovered .external-graph-label-sub,
.external-graph-wrap.is-light .external-graph-node.active .external-graph-label-sub,
.external-graph-wrap.is-light .external-graph-node.highlighted .external-graph-label-sub {
  fill: rgba(51, 65, 85, 0.78);
}

.external-graph-controls {
  position: absolute;
  right: 12px;
  bottom: 12px;
  display: flex;
  flex-direction: column;
  gap: 4px;
  z-index: 3;
}

.external-graph-controls--head {
  position: static;
  flex-direction: row;
  gap: 4px;
  z-index: auto;
}

.external-graph-control-btn {
  width: 28px;
  height: 28px;
  border: 1px solid rgba(255, 255, 255, 0.18);
  border-radius: 6px;
  background: rgba(12, 18, 32, 0.82);
  backdrop-filter: blur(6px);
  color: rgba(255, 255, 255, 0.92);
  font-size: 15px;
  line-height: 1;
  cursor: pointer;
  transition: background 0.12s ease, border-color 0.12s ease;
}

.external-graph-control-btn:hover {
  background: rgba(24, 32, 52, 0.92);
  border-color: rgba(167, 139, 250, 0.45);
}

.external-graph-control-btn.is-active {
  border-color: rgba(167, 139, 250, 0.75);
  background: rgba(59, 130, 246, 0.42);
  color: #fff;
}

.node-graph-wrap {
  min-height: 520px;
}

.graph-view {
  flex: 1;
  min-height: 0;
  display: flex;
  flex-direction: column;
}

.graph-view-content {
  flex: 1;
  min-height: 480px;
  border: 1px solid rgba(148, 163, 184, 0.16);
  border-radius: 10px;
  overflow: hidden;
  background: #070b14;
}

.graph-view-content .external-graph-wrap {
  min-height: 480px;
  height: 100%;
}

.graph-view-content .external-graph-canvas {
  width: 100%;
  height: 100%;
  min-height: 480px;
  display: block;
}

.graph-view.is-mindmap {
  min-height: 0;
}

.graph-view.is-mindmap .graph-view-content {
  display: flex;
  flex-direction: column;
  flex: 1;
  min-height: 0;
  overflow: hidden;
  background: #e8ecf1;
  border-color: var(--border);
}

.graph-view.is-mindmap .graph-view-content > .node-mindmap-wrap {
  flex: 1;
  min-height: 0;
  margin: 0;
  border: 0;
  border-radius: 0;
  background: transparent;
}

.mindmap-view-bar {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: 12px;
  padding: 8px 10px 4px;
  flex-shrink: 0;
}

.mindmap-view-bar.hidden {
  display: none;
}

.mindmap-view-bar--embedded {
  padding: 0 2px 4px;
  justify-content: flex-end;
}

.mindmap-view-hint {
  margin: 0;
  flex: 1;
  min-width: 0;
  font-size: 12px;
  line-height: 1.45;
  color: var(--muted);
}

.mindmap-layout-toggle {
  display: inline-flex;
  flex-shrink: 0;
  border: 1px solid var(--border);
  border-radius: 8px;
  overflow: hidden;
  background: var(--panel);
}

.mindmap-layout-btn {
  min-width: 38px;
  height: 28px;
  padding: 0 10px;
  border: 0;
  background: transparent;
  color: var(--text);
  font-size: 16px;
  font-weight: 700;
  line-height: 1;
  cursor: pointer;
}

.mindmap-layout-btn + .mindmap-layout-btn {
  border-left: 1px solid var(--border);
}

.mindmap-layout-btn:hover {
  background: var(--panel-soft);
}

.mindmap-layout-btn.is-active {
  background: #dbeafe;
  color: #1d4ed8;
}

.mindmap-layout-btn:focus-visible {
  outline: 2px solid var(--accent);
  outline-offset: -2px;
  z-index: 1;
}

.external-mindmap-shell {
  display: flex;
  flex-direction: column;
  gap: 6px;
  min-height: 480px;
}

.external-mindmap-host {
  flex: 1;
  min-height: 420px;
}

.external-mindmap-host .node-mindmap-wrap {
  min-height: 420px;
  height: 100%;
}

.mindmap-view-hint code {
  font-size: 11px;
}

.node-mindmap-wrap {
  height: 100%;
  min-height: 480px;
  display: flex;
  flex-direction: column;
}

.node-mindmap-viewport {
  flex: 1;
  min-height: 0;
  overflow: auto;
  cursor: grab;
}

.node-mindmap-viewport:active {
  cursor: grabbing;
}

.node-mindmap-canvas {
  position: relative;
  box-sizing: border-box;
}

.node-mindmap-links {
  position: absolute;
  top: 0;
  left: 0;
  pointer-events: none;
  overflow: visible;
}

.node-mindmap-link {
  fill: none;
  stroke: #94a3b8;
  stroke-width: 1.5;
}

.node-mindmap-node {
  position: absolute;
  display: inline-flex;
  align-items: center;
  gap: 6px;
  padding: 6px 12px;
  border: 1px solid rgba(15, 23, 42, 0.1);
  border-radius: 999px;
  font-size: 13px;
  font-weight: 500;
  white-space: nowrap;
  box-shadow: 0 1px 2px rgba(15, 23, 42, 0.08);
  transform: translate(-50%, -50%);
  cursor: pointer;
  background: #f1f5f9;
  color: #1e293b;
}

.node-mindmap-node--root {
  background: #fbcfe8;
}

.node-mindmap-node--topic {
  background: #bfdbfe;
}

.node-mindmap-node--leaf {
  background: #f8fafc;
  font-weight: 400;
}

.node-mindmap-node.is-active {
  outline: 2px solid #2563eb;
  outline-offset: 2px;
}

.node-mindmap-node:hover:not(.is-active) {
  filter: brightness(0.97);
}

.node-mindmap-toggle {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 18px;
  height: 18px;
  border: 1px solid #94a3b8;
  border-radius: 50%;
  background: #fff;
  font-size: 12px;
  line-height: 1;
  flex-shrink: 0;
}

.node-mindmap-label {
  max-width: min(360px, 42vw);
  overflow: hidden;
  text-overflow: ellipsis;
}

.node-mindmap-wrap--knowledge-map-v2 .node-knowledge-map-node {
  flex-direction: row;
  flex-wrap: wrap;
  align-items: center;
  gap: 4px 6px;
  padding: 8px 14px;
  border-radius: 12px;
  border-width: 1px;
  border-style: solid;
  white-space: normal;
  min-width: 88px;
  max-width: min(280px, 38vw);
  color: #f8fafc;
  box-shadow: 0 2px 8px rgba(15, 23, 42, 0.18);
}

.node-mindmap-wrap--knowledge-map-v2 .node-knowledge-map-node .node-mindmap-label {
  font-weight: 600;
  line-height: 1.25;
  max-width: none;
}

.node-knowledge-map-type {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 18px;
  height: 18px;
  border-radius: 999px;
  background: rgba(255, 255, 255, 0.18);
  font-size: 11px;
  line-height: 1;
  flex-shrink: 0;
}

.node-knowledge-map-description {
  flex: 1 1 100%;
  font-size: 11px;
  line-height: 1.35;
  color: rgba(248, 250, 252, 0.82);
  max-width: 100%;
  overflow: hidden;
  text-overflow: ellipsis;
  display: -webkit-box;
  -webkit-line-clamp: 2;
  -webkit-box-orient: vertical;
}

.node-knowledge-map-node--size-small {
  padding: 5px 10px;
  font-size: 11px;
}

.node-knowledge-map-node--size-medium {
  padding: 8px 14px;
  font-size: 13px;
}

.node-knowledge-map-node--size-large {
  padding: 10px 18px;
  font-size: 15px;
}

.node-knowledge-map-node--size-junction {
  padding: 4px 8px;
  min-width: 56px;
  border-radius: 999px;
  font-size: 11px;
}

.node-knowledge-map-node--layout-independent {
  box-shadow: 0 0 0 2px rgba(99, 102, 241, 0.35), 0 2px 8px rgba(15, 23, 42, 0.18);
}

.node-knowledge-map-link {
  stroke-width: 2;
  opacity: 0.92;
}

.node-knowledge-map-node--color-blue { background: #1d4ed8; border-color: rgba(96, 165, 250, 0.55); }
.node-knowledge-map-node--color-teal { background: #0f766e; border-color: rgba(45, 211, 191, 0.55); }
.node-knowledge-map-node--color-slate { background: #334155; border-color: rgba(148, 163, 184, 0.55); }
.node-knowledge-map-node--color-amber { background: #b45309; border-color: rgba(251, 191, 36, 0.55); }
.node-knowledge-map-node--color-red { background: #b91c1c; border-color: rgba(248, 113, 113, 0.55); }
.node-knowledge-map-node--color-purple { background: #7e22ce; border-color: rgba(192, 132, 252, 0.55); }
.node-knowledge-map-node--color-green { background: #15803d; border-color: rgba(74, 222, 128, 0.55); }
.node-knowledge-map-node--color-pink { background: #be185d; border-color: rgba(244, 114, 182, 0.55); }

.node-knowledge-map-node.is-active {
  outline-color: #fbbf24;
}

.list-section {
  border: 1px solid var(--border);
  border-radius: 10px;
  background: #f8fbff;
  margin-bottom: 10px;
  overflow: hidden;
  flex-shrink: 0;
}

.list-section:last-child {
  margin-bottom: 0;
}

.list-section-header {
  padding: 8px 10px;
  font-size: 12px;
  font-weight: 600;
  color: var(--muted);
  border-bottom: 1px solid var(--border);
  background: #eef4ff;
}

.list-items {
  list-style: none;
  margin: 0;
  padding: 6px;
}

.list-item {
  display: flex;
  align-items: center;
  gap: 8px;
  min-width: 0;
  border: 1px solid transparent;
  border-radius: 8px;
  padding: 6px 8px;
}

.list-item:hover {
  background: var(--panel-soft);
  border-color: #e3eaf8;
}

.list-item-icon {
  width: 18px;
  text-align: center;
  color: var(--muted);
  font-size: 13px;
}

.list-item-path {
  flex: 1;
  min-width: 0;
  font-family: ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace;
  font-size: 12px;
  color: #1f2937;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.external-list-item-title {
  flex: 1;
  min-width: 0;
  font-size: 13px;
  font-weight: 500;
  color: #1f2937;
  word-break: break-word;
}

.external-list-item-date {
  flex-shrink: 0;
  margin-left: auto;
  font-size: 11px;
  line-height: 1.3;
  color: var(--muted);
  white-space: nowrap;
}

.list-empty {
  color: var(--muted);
  font-size: 13px;
  padding: 8px 4px;
}

.hidden {
  display: none !important;
}

.props-input {
  width: 100%;
  min-height: 140px;
  border: 1px solid var(--border);
  border-radius: 8px;
  background: #f8faff;
  color: #111827;
  padding: 10px;
  font-family: ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace;
  font-size: 13px;
  line-height: 1.45;
  resize: vertical;
}

.props-raw-yaml {
  margin-top: 2px;
}

.toast {
  position: fixed;
  left: 50%;
  top: 50%;
  transform: translate(-50%, -50%);
  background: rgba(17, 24, 39, 0.95);
  color: #fff;
  padding: 10px 16px;
  border-radius: 8px;
  font-size: 14px;
  z-index: 10150;
  opacity: 0;
  pointer-events: none;
  transition: opacity 0.2s ease;
}

.toast.show {
  opacity: 1;
}

.toast.is-multiline {
  max-width: min(520px, calc(100vw - 32px));
  white-space: pre-wrap;
  text-align: left;
  line-height: 1.45;
  padding: 14px 18px;
}

.toast.success {
  background: rgba(21, 128, 61, 0.95);
}

.toast.error {
  background: rgba(185, 28, 28, 0.95);
}

.modal-overlay {
  position: fixed;
  inset: 0;
  background: rgba(15, 23, 42, 0.45);
  display: flex;
  align-items: center;
  justify-content: center;
  z-index: 1100;
  padding: 16px;
  overflow-y: auto;
}

.modal-overlay.hidden {
  display: none;
}

.modal-card {
  width: min(420px, 92vw);
  background: var(--panel);
  border: 1px solid var(--border);
  border-radius: 12px;
  padding: 16px;
}

.create-memory-card {
  width: min(560px, 96vw);
}

.create-memory-hint {
  margin: 0 0 12px;
  font-size: 12px;
  color: var(--muted);
  line-height: 1.4;
}

.modal-hint {
  margin: 0 0 12px;
  font-size: 12px;
  color: var(--muted);
  line-height: 1.45;
}

.move-modal-field {
  display: flex;
  flex-direction: column;
  gap: 6px;
  margin-bottom: 12px;
}

.move-modal-field-label {
  font-size: 12px;
  color: var(--muted);
}

.move-modal-field-input {
  width: 100%;
  border: 1px solid var(--border);
  border-radius: 8px;
  padding: 8px 10px;
  font: inherit;
  background: var(--panel);
  color: inherit;
}

.list-item-action-btn {
  border: 1px solid var(--border);
  background: var(--panel);
  color: inherit;
  border-radius: 6px;
  padding: 2px 8px;
  font-size: 12px;
  cursor: pointer;
}

.list-item-action-btn:hover {
  background: var(--hover);
}

.list-item-action-btn--danger {
  color: #b91c1c;
  border-color: rgba(185, 28, 28, 0.35);
}

.create-memory-names-list {
  display: flex;
  flex-direction: column;
  gap: 8px;
  margin-bottom: 14px;
}

.create-memory-name-row {
  display: grid;
  grid-template-columns: 18px minmax(0, 1.15fr) minmax(0, 0.95fr);
  align-items: start;
  gap: 6px;
  min-width: 0;
}

.slug-field-row--compact {
  margin-top: 0;
}

.slug-field-row--compact .slug-field-hint {
  display: none;
}

#create-section-modal .slug-field-row {
  margin-bottom: 12px;
}

#create-section-modal .slug-input-row .slug-input,
#create-section-modal .slug-input-wrap .slug-input {
  height: 36px;
  font-size: 13px;
  padding-right: 34px;
}

.create-memory-name-index {
  font-size: 12px;
  font-weight: 600;
  color: var(--muted);
  text-align: center;
  line-height: 1;
  margin-top: 10px;
}

.create-memory-name-row .popover-input,
.create-memory-name-row .create-memory-slug-input {
  width: 100%;
  min-width: 0;
  height: 36px;
  margin: 0;
  box-sizing: border-box;
}

.create-memory-name-row .create-memory-slug-input {
  font-size: 12px;
  padding-right: 34px;
  font-family: ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, monospace;
}

.create-memory-name-row .slug-input-wrap {
  min-width: 0;
  margin-top: 0;
}

.create-memory-after-fieldset {
  margin: 0 0 14px;
  padding: 0;
  border: 0;
  min-width: 0;
}

.create-memory-after-fieldset .popover-label {
  margin-bottom: 8px;
}

.create-memory-after-option {
  display: flex;
  align-items: flex-start;
  gap: 8px;
  margin-top: 6px;
  font-size: 13px;
  line-height: 1.35;
  color: var(--text-muted, #475569);
  cursor: pointer;
  user-select: none;
}

.create-memory-after-option input {
  margin: 2px 0 0;
  flex-shrink: 0;
}

.create-memory-mask-fieldset {
  margin: 0 0 14px;
  padding: 0;
  border: 0;
  min-width: 0;
}

.create-memory-mask-fieldset .popover-label {
  margin-bottom: 8px;
}

.create-memory-mask-hint {
  margin: 0 0 8px;
  font-size: 12px;
  line-height: 1.4;
  color: var(--text-muted, #64748b);
}

.create-memory-mask-hint code {
  font-size: 11px;
}

.create-memory-mask-preview-line {
  margin: 0;
  font-family: ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, monospace;
  font-size: 12px;
  line-height: 1.4;
  color: var(--text-muted, #64748b);
}

.create-memory-format-fieldset {
  margin: 0 0 14px;
  padding: 0;
  border: 0;
  min-width: 0;
}

.create-memory-format-fieldset .popover-label {
  margin-bottom: 8px;
}

.create-memory-format-row {
  display: flex;
  align-items: flex-start;
  gap: 10px;
  min-width: 0;
}

.create-memory-format-label {
  flex: 0 0 auto;
  font-size: 13px;
  color: var(--text-muted, #475569);
  line-height: 38px;
}

.create-memory-format-picker {
  position: relative;
  flex: 1 1 auto;
  min-width: 0;
}

.create-memory-format-trigger {
  width: 100%;
  min-height: 38px;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 10px;
  padding-right: 10px;
  text-align: left;
  cursor: pointer;
}

.create-memory-format-trigger.is-disabled,
.create-memory-format-trigger:disabled {
  opacity: 0.65;
  cursor: not-allowed;
}

.create-memory-format-trigger-label {
  flex: 1 1 auto;
  min-width: 0;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.create-memory-format-trigger-chevron {
  flex: 0 0 auto;
  font-size: 11px;
  color: var(--text-muted, #64748b);
  transition: transform 0.16s ease;
}

.create-memory-format-picker.is-open .create-memory-format-trigger-chevron {
  transform: rotate(180deg);
}

.create-memory-format-panel {
  position: absolute;
  z-index: 30;
  top: calc(100% + 6px);
  left: 0;
  right: 0;
  display: flex;
  flex-direction: column;
  gap: 8px;
  padding: 8px;
  border: 1px solid var(--border, #dbe3ee);
  border-radius: 12px;
  background: var(--surface, #fff);
  box-shadow: 0 16px 40px rgba(15, 23, 42, 0.14);
}

.create-memory-format-panel.hidden {
  display: none;
}

.create-memory-format-search-wrap {
  flex: 0 0 auto;
}

.create-memory-format-search {
  width: 100%;
  min-height: 34px;
}

.create-memory-format-options {
  max-height: min(280px, 42vh);
  overflow: auto;
  display: flex;
  flex-direction: column;
  gap: 8px;
  padding-right: 2px;
}

.create-memory-format-group {
  display: flex;
  flex-direction: column;
  gap: 4px;
}

.create-memory-format-group-title {
  padding: 2px 8px;
  font-size: 11px;
  font-weight: 600;
  letter-spacing: 0.04em;
  text-transform: uppercase;
  color: var(--text-muted, #64748b);
}

.create-memory-format-option {
  width: 100%;
  min-height: 36px;
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  grid-template-areas:
    "label ext"
    "meta meta";
  align-items: center;
  gap: 2px 10px;
  padding: 7px 10px;
  border: 1px solid transparent;
  border-radius: 9px;
  background: transparent;
  color: inherit;
  text-align: left;
  cursor: pointer;
}

.create-memory-format-option:hover,
.create-memory-format-option:focus-visible {
  background: color-mix(in srgb, var(--accent, #2563eb) 8%, transparent);
  border-color: color-mix(in srgb, var(--accent, #2563eb) 18%, transparent);
  outline: none;
}

.create-memory-format-option.is-selected {
  background: color-mix(in srgb, var(--accent, #2563eb) 12%, transparent);
  border-color: color-mix(in srgb, var(--accent, #2563eb) 28%, transparent);
}

.create-memory-format-option-label {
  grid-area: label;
  font-size: 13px;
  font-weight: 600;
}

.create-memory-format-option-ext {
  grid-area: ext;
  font-size: 11px;
  padding: 2px 6px;
  border-radius: 999px;
  background: color-mix(in srgb, var(--text-muted, #64748b) 12%, transparent);
  color: var(--text-muted, #475569);
}

.create-memory-format-option-meta {
  grid-area: meta;
  min-width: 0;
}

.create-memory-format-option-hint {
  font-size: 12px;
  color: var(--text-muted, #64748b);
}

.create-memory-format-empty {
  padding: 14px 10px;
  text-align: center;
  font-size: 13px;
  color: var(--text-muted, #64748b);
}

.create-memory-card.is-mask-mode .create-memory-name-row:not(:first-child) {
  display: none;
}

.create-memory-card.is-mask-mode .create-memory-name-row {
  grid-template-columns: 18px minmax(0, 1fr);
}

.create-memory-card.is-mask-mode .create-memory-name-row .slug-input-wrap {
  display: none;
}

.agents-registry-card {
  width: min(820px, 100%);
  max-height: min(calc(100vh - 32px), 900px);
  display: flex;
  flex-direction: column;
  overflow: hidden;
  margin: auto;
}

.md-showcase-card,
.api-docs-card {
  width: min(920px, 96vw);
  max-height: min(88vh, 900px);
  display: flex;
  flex-direction: column;
  padding: 0;
  overflow: hidden;
}

.md-showcase-header {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: 12px;
  padding: 16px 16px 12px;
  border-bottom: 1px solid var(--border);
  background: var(--panel-soft);
}

.md-showcase-header .modal-message {
  margin-bottom: 4px;
}

.md-showcase-subtitle {
  margin: 0;
  font-size: 12px;
  color: var(--muted);
}

.md-showcase-content {
  padding: 16px 20px 20px;
  overflow: auto;
  flex: 1;
  min-height: 0;
}

.md-showcase-card {
  width: min(1080px, 96vw);
}

.preview-image-demo {
  margin: 24px 0;
  padding: 16px;
  border: 1px dashed #cbd5e1;
  border-radius: 12px;
  background: #f8fafc;
}

.preview-image-demo-title {
  margin: 0 0 4px;
  font-size: 15px;
  font-weight: 700;
  color: #0f172a;
}

.preview-image-demo-note {
  margin: 0 0 14px;
  font-size: 12px;
  line-height: 1.45;
  color: #64748b;
}

.preview-image-frame,
.preview-image-demo :is(.img-style-card, .img-style-clamp, .img-style-grid, .img-style-lightbox, .img-style-overview, .img-style-auto) img,
.preview-image-demo .img-style-figure img {
  padding: 10px;
  border: 1px solid #cbd5e1;
  border-radius: 12px;
  background: #fff;
  box-shadow: 0 1px 2px rgba(15, 23, 42, 0.06);
  box-sizing: border-box;
}

.img-style-card {
  display: flex;
  flex-wrap: wrap;
  gap: 12px;
}

.img-style-card img {
  display: block;
  max-width: min(50%, 520px);
  max-height: 360px;
  width: auto;
  height: auto;
  object-fit: contain;
}

.img-style-clamp {
  display: flex;
  flex-wrap: wrap;
  gap: 12px;
}

.img-style-clamp img {
  display: block;
  max-width: clamp(180px, 45vw, 520px);
  max-height: 420px;
  width: auto;
  height: auto;
  object-fit: contain;
}

.img-style-figure {
  display: flex;
  flex-wrap: wrap;
  gap: 14px;
}

.img-style-figure figure {
  margin: 0;
  max-width: min(100%, 280px);
}

.img-style-figure img {
  display: block;
  width: 100%;
  max-height: 220px;
  object-fit: contain;
}

.img-style-figure figcaption {
  margin-top: 8px;
  font-size: 12px;
  line-height: 1.4;
  color: #64748b;
  text-align: center;
}

.img-style-grid {
  display: grid;
  grid-template-columns: repeat(auto-fill, minmax(160px, 1fr));
  gap: 12px;
}

.img-style-grid img {
  display: block;
  width: 100%;
  height: 140px;
  object-fit: cover;
  margin: 0;
}

.img-style-lightbox {
  display: flex;
  flex-wrap: wrap;
  gap: 12px;
}

.img-style-lightbox img {
  display: block;
  max-width: clamp(160px, 30%, 320px);
  max-height: 280px;
  width: auto;
  height: auto;
  object-fit: contain;
  cursor: zoom-in;
}

.img-style-compare {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 16px;
}

.img-style-compare-col {
  padding: 12px;
  border: 1px solid #e2e8f0;
  border-radius: 10px;
  background: #fff;
}

.img-style-compare-label {
  margin: 0 0 10px;
  font-size: 11px;
  font-weight: 700;
  letter-spacing: 0.04em;
  text-transform: uppercase;
  color: #64748b;
}

.img-style-overview {
  display: flex;
  flex-direction: column;
  gap: 10px;
}

.img-style-overview img {
  display: block;
  max-width: clamp(200px, 48%, 480px);
  max-height: 360px;
  width: auto;
  height: auto;
  object-fit: contain;
  margin: 0 auto;
}

.img-style-editor {
  display: flex;
  flex-direction: column;
  gap: 10px;
}

.img-style-editor img {
  display: block;
  max-width: 100%;
  width: 100%;
  height: auto;
  margin: 0;
  padding: 0;
  border: 0;
  border-radius: 8px;
  background: transparent;
  box-shadow: none;
}

.img-style-auto {
  display: flex;
  flex-wrap: wrap;
  align-items: flex-start;
  gap: 12px;
}

.img-style-auto img {
  display: block;
  width: auto;
  height: auto;
  object-fit: contain;
}

.img-style-auto img.is-wide {
  max-width: min(70%, 560px);
  max-height: 320px;
  margin: 0 auto;
}

.img-style-auto img.is-compact {
  max-width: 240px;
  max-height: 240px;
}

.preview-image-lightbox {
  position: fixed;
  inset: 0;
  z-index: 12000;
  display: flex;
  align-items: center;
  justify-content: center;
  padding: 24px;
  background: rgba(15, 23, 42, 0.82);
}

.preview-image-lightbox.hidden {
  display: none;
}

.preview-image-lightbox-img {
  display: block;
  max-width: min(96vw, 1200px);
  max-height: 90vh;
  width: auto;
  height: auto;
  object-fit: contain;
  border-radius: 12px;
  box-shadow: 0 20px 60px rgba(0, 0, 0, 0.35);
}

.preview-image-lightbox-close {
  position: absolute;
  top: 16px;
  right: 16px;
  width: 40px;
  height: 40px;
  border: 0;
  border-radius: 999px;
  background: rgba(255, 255, 255, 0.14);
  color: #fff;
  font-size: 28px;
  line-height: 1;
  cursor: pointer;
}

.preview-image-lightbox-close:hover {
  background: rgba(255, 255, 255, 0.24);
}

.preview-image-lightbox-nav {
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
  width: 48px;
  height: 72px;
  border: 0;
  border-radius: 12px;
  background: rgba(255, 255, 255, 0.12);
  color: #fff;
  font-size: 36px;
  line-height: 1;
  cursor: pointer;
  z-index: 1;
}

.preview-image-lightbox-nav:hover:not(:disabled) {
  background: rgba(255, 255, 255, 0.22);
}

.preview-image-lightbox-nav:disabled {
  opacity: 0.25;
  cursor: default;
}

.preview-image-lightbox-prev {
  left: 16px;
}

.preview-image-lightbox-next {
  right: 16px;
}

.preview-image-lightbox-counter {
  position: absolute;
  bottom: 20px;
  left: 50%;
  transform: translateX(-50%);
  padding: 6px 12px;
  border-radius: 999px;
  background: rgba(15, 23, 42, 0.55);
  color: #fff;
  font-size: 13px;
  line-height: 1.2;
  pointer-events: none;
  z-index: 1;
}

@media (max-width: 760px) {
  .preview-image-lightbox-nav {
    width: 40px;
    height: 56px;
    font-size: 30px;
  }

  .preview-image-lightbox-prev {
    left: 8px;
  }

  .preview-image-lightbox-next {
    right: 8px;
  }
}

@media (max-width: 760px) {
  .img-style-compare {
    grid-template-columns: 1fr;
  }
}

.components-ideas-draft-nav {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
  padding: 10px 16px;
  border-bottom: 1px solid var(--border);
  background: var(--panel);
}

.components-ideas-draft-tab {
  appearance: none;
  border: 1px solid var(--border);
  border-radius: 999px;
  background: var(--panel-soft);
  color: var(--text);
  font: inherit;
  font-size: 12px;
  line-height: 1.2;
  padding: 6px 12px;
  cursor: pointer;
  transition: background 0.15s ease, border-color 0.15s ease, color 0.15s ease;
}

.components-ideas-draft-tab:hover {
  border-color: rgba(59, 130, 246, 0.45);
  background: #eef3ff;
}

.components-ideas-draft-tab.active {
  border-color: var(--accent);
  background: rgba(59, 130, 246, 0.12);
  color: #1d4ed8;
  font-weight: 600;
}

.components-ideas-gallery {
  display: flex;
  flex-direction: column;
  gap: 20px;
  margin-top: 28px;
  padding-top: 24px;
  border-top: 1px solid var(--border);
}

.components-ideas-gallery img {
  display: block;
  width: 100%;
  height: auto;
  border-radius: 10px;
  border: 1px solid var(--border);
  background: var(--panel-soft);
}

.components-ideas-gallery-empty {
  margin: 0;
  font-size: 13px;
  color: var(--muted);
  line-height: 1.5;
}

.components-ideas-title-templates {
  margin-top: 28px;
  padding-top: 24px;
  border-top: 1px solid var(--border);
}

.components-ideas-title-templates-heading {
  margin: 0 0 16px;
  font-size: 13px;
  font-weight: 700;
  letter-spacing: 0.03em;
  color: #475569;
}

.components-ideas-content .components-ideas-title-templates .node-navigation-title-template:first-of-type {
  margin-top: 0;
  padding-top: 0;
  border-top: none;
}

.api-docs-header,
.docs-modal-header {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: 12px;
  padding: 16px 16px 12px;
  border-bottom: 1px solid var(--border);
  background: var(--panel-soft);
}

.docs-modal-toolbar {
  display: flex;
  align-items: center;
  gap: 8px;
  flex-shrink: 0;
}

.docs-toolbar-btn {
  height: 28px;
  min-height: 28px;
  padding: 0 12px;
  border: 1px solid var(--border);
  border-radius: 8px;
  background-color: var(--panel);
  color: var(--text);
  font-size: 11px;
  font-weight: 600;
  line-height: 1;
  white-space: nowrap;
  cursor: pointer;
  flex-shrink: 0;
}

.docs-toolbar-btn:hover {
  background-color: var(--panel-soft);
  border-color: color-mix(in srgb, var(--accent) 35%, var(--border));
}

.docs-toolbar-btn:focus-visible {
  outline: none;
  border-color: var(--accent);
  box-shadow: 0 0 0 2px rgba(59, 130, 246, 0.12);
}

.docs-toolbar-btn[aria-expanded="true"] {
  background-color: color-mix(in srgb, var(--accent) 12%, var(--panel));
  border-color: var(--accent);
  color: var(--accent);
}

.mcp-docs-help-lead,
.mcp-docs-help-foot {
  margin: 0 0 12px;
  font-size: 12px;
  line-height: 1.5;
  color: var(--text);
}

.mcp-docs-help-foot {
  margin-top: 14px;
  margin-bottom: 0;
  color: var(--muted);
}

.api-docs-method-resource {
  background: #ecfdf5;
  color: #047857;
}

.api-docs-method-prompt {
  background: #f3e8ff;
  color: #6b21a8;
}

.api-docs-method-cap {
  background: #f1f5f9;
  color: #475569;
}

.api-docs-method-root {
  background: #fff7ed;
  color: #c2410c;
}

.api-docs-method-sample {
  background: #fce7f3;
  color: #9d174d;
}

.docs-version-select {
  height: 28px;
  min-width: 200px;
  max-width: min(280px, 42vw);
  padding: 4px 28px 4px 10px;
  border: 1px solid var(--border);
  border-radius: 8px;
  background-color: var(--panel);
  color: var(--text);
  font-size: 11px;
  font-weight: 600;
  cursor: pointer;
  appearance: none;
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' fill='%236b7280' viewBox='0 0 20 20'%3E%3Cpath d='M5.5 7.5 10 12l4.5-4.5'/%3E%3C/svg%3E");
  background-repeat: no-repeat;
  background-position: right 8px center;
  background-size: 12px 12px;
}

.docs-version-select:focus {
  outline: none;
  border-color: var(--accent);
  box-shadow: 0 0 0 2px rgba(59, 130, 246, 0.12);
}

.api-docs-header .modal-message {
  margin-bottom: 4px;
}

.api-docs-subtitle {
  margin: 0;
  font-size: 12px;
  color: var(--muted);
}

.api-docs-notes {
  padding: 10px 16px;
  border-bottom: 1px solid var(--border);
  background: #fffbeb;
  color: #92400e;
  font-size: 12px;
  line-height: 1.45;
}

.api-docs-notes p {
  margin: 0 0 4px;
}

.api-docs-notes p:last-child {
  margin-bottom: 0;
}

.api-docs-body {
  display: flex;
  flex-direction: column;
  flex: 1;
  min-height: 0;
  overflow: hidden;
}

.api-docs-search-bar {
  flex-shrink: 0;
  padding: 10px 16px;
  border-bottom: 1px solid var(--border);
  background: var(--panel);
}

.docs-search-input {
  width: 100%;
  height: 32px;
  padding: 0 12px;
  border: 1px solid var(--border);
  border-radius: 8px;
  background: var(--panel-soft);
  color: var(--text);
  font-size: 12px;
}

.docs-search-input:focus {
  outline: none;
  border-color: var(--accent);
  box-shadow: 0 0 0 2px rgba(59, 130, 246, 0.12);
}

.docs-search-input::placeholder {
  color: var(--muted);
}

.api-docs-search-empty {
  margin: 8px 0 0;
  font-size: 12px;
  color: var(--muted);
}

.api-docs-content {
  padding: 12px 16px 16px;
  overflow: auto;
  flex: 1;
  min-height: 0;
}

.api-docs-accordion {
  border: 1px solid var(--border);
  border-radius: 10px;
  background: var(--panel);
  margin-bottom: 10px;
  overflow: hidden;
}

.api-docs-accordion:last-child {
  margin-bottom: 0;
}

.api-docs-accordion-summary {
  display: flex;
  align-items: center;
  justify-content: flex-start;
  gap: 8px;
  padding: 10px 12px;
  cursor: pointer;
  list-style: none;
  user-select: none;
  background: var(--panel-soft);
}

.api-docs-accordion-summary:hover {
  background: color-mix(in srgb, var(--accent) 6%, var(--panel-soft));
}

.api-docs-accordion[open] > .api-docs-accordion-summary {
  background: color-mix(in srgb, var(--accent) 8%, var(--panel-soft));
  border-bottom: 1px solid var(--border);
}

.api-docs-accordion-summary::-webkit-details-marker {
  display: none;
}

.api-docs-accordion-summary::before {
  content: "";
  width: 0;
  height: 0;
  border-top: 5px solid transparent;
  border-bottom: 5px solid transparent;
  border-left: 6px solid var(--muted);
  flex-shrink: 0;
  margin-right: 4px;
  transition: transform 0.15s ease;
}

.api-docs-accordion[open] > .api-docs-accordion-summary::before {
  transform: rotate(90deg);
}

.api-docs-group-title {
  margin: 0;
  flex: 1 1 auto;
  min-width: 0;
  text-align: left;
  font-size: 13px;
  font-weight: 700;
  color: #1e3a8a;
  letter-spacing: 0.03em;
}

.api-docs-accordion-count {
  margin-left: auto;
  font-size: 11px;
  font-weight: 600;
  color: var(--muted);
  background: var(--panel);
  border: 1px solid var(--border);
  border-radius: 999px;
  padding: 2px 8px;
  flex-shrink: 0;
}

.api-docs-accordion-body {
  padding: 10px 12px 12px;
  background: #f8fafc;
  border-top: none;
}

.api-docs-accordion-body > .api-docs-endpoint:first-child {
  margin-top: 10px;
}

.api-docs-group + .api-docs-group {
  margin-top: 18px;
}

.api-docs-accordion-body .api-docs-endpoint {
  border: 1px solid color-mix(in srgb, var(--border) 85%, #94a3b8);
  border-radius: 8px;
  background: #ffffff;
  padding: 10px 12px;
  box-shadow: 0 1px 2px rgba(15, 23, 42, 0.04);
}

.api-docs-endpoint {
  border: 1px solid var(--border);
  border-radius: 8px;
  background: var(--panel-soft);
  padding: 10px 12px;
}

.api-docs-endpoint + .api-docs-endpoint {
  margin-top: 8px;
}

.api-docs-endpoint-head {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 8px;
  margin-bottom: 6px;
}

.api-docs-method {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-width: 52px;
  padding: 2px 8px;
  border-radius: 6px;
  font-size: 11px;
  font-weight: 800;
  letter-spacing: 0.04em;
  font-family: ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace;
}

.api-docs-method-get {
  background: #dbeafe;
  color: #1e40af;
}

.api-docs-method-post {
  background: #dcfce7;
  color: #166534;
}

.api-docs-method-put {
  background: #fef3c7;
  color: #92400e;
}

.api-docs-method-delete {
  background: #fee2e2;
  color: #991b1b;
}

.api-docs-method-mcp {
  background: #ede9fe;
  color: #5b21b6;
}

.mcp-docs-notes {
  background: #f5f3ff;
  color: #5b21b6;
  flex: 0 0 200px;
  height: 200px;
  min-height: 200px;
  max-height: 200px;
  overflow-y: auto;
  box-sizing: border-box;
}

.mcp-docs-config {
  margin: 0;
  padding: 10px 16px;
  border-bottom: 1px solid var(--border);
  background: #0f172a;
  color: #e2e8f0;
  font-size: 11px;
  line-height: 1.45;
  flex: 0 0 200px;
  height: 200px;
  min-height: 200px;
  max-height: 200px;
  overflow-y: auto;
  box-sizing: border-box;
  white-space: pre-wrap;
  word-break: break-word;
}

.mcp-instances-panel {
  padding: 12px 16px 16px;
  overflow-y: auto;
  flex: 1 1 auto;
  min-height: 240px;
}

.mcp-instances-list {
  display: flex;
  flex-direction: column;
  gap: 12px;
  margin: 12px 0;
}

.mcp-instance-row {
  border: 1px solid var(--border);
  border-radius: 8px;
  padding: 10px 12px;
  margin: 0;
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 8px 12px;
}

.mcp-instance-row legend {
  font-weight: 600;
  padding: 0 4px;
}

.mcp-instance-row label {
  display: flex;
  flex-direction: column;
  gap: 4px;
  font-size: 12px;
}

.mcp-instance-wide {
  grid-column: 1 / -1;
}

.mcp-instance-row input,
.mcp-instance-row select {
  font: inherit;
  padding: 6px 8px;
  border: 1px solid var(--border);
  border-radius: 6px;
}

.mcp-instances-actions {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
  align-items: center;
}

.api-docs-path {
  font-family: ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace;
  font-size: 12px;
  color: #0f172a;
  word-break: break-all;
}

.api-docs-desc {
  margin: 0 0 8px;
  font-size: 13px;
  line-height: 1.45;
  color: var(--text);
}

.api-docs-meta {
  display: grid;
  gap: 4px;
  font-size: 12px;
  line-height: 1.4;
  color: var(--muted);
}

.api-docs-meta code {
  font-family: ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace;
  font-size: 11px;
  color: #334155;
  word-break: break-word;
}

.agents-registry-card > .modal-message {
  flex-shrink: 0;
  margin-bottom: 10px;
}

.agents-registry-hint {
  margin: 0 0 10px;
  font-size: 12px;
  color: var(--muted);
  line-height: 1.4;
  flex-shrink: 0;
}

.agents-registry-list {
  display: flex;
  flex-direction: column;
  gap: 10px;
  flex: 1;
  min-height: 0;
  overflow: auto;
  margin-bottom: 12px;
  padding-right: 2px;
}

.agents-registry-toolbar {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 8px;
  margin-bottom: 10px;
  flex-shrink: 0;
}

.agents-registry-toolbar-label {
  font-size: 12px;
  font-weight: 600;
  color: var(--muted);
}

.agents-registry-sort-btn {
  border: 1px solid var(--border);
  border-radius: 999px;
  background: var(--panel-soft);
  color: var(--text);
  font-size: 12px;
  font-weight: 600;
  padding: 5px 10px;
  cursor: pointer;
}

.agents-registry-sort-btn:hover {
  border-color: var(--accent);
  background: #eff6ff;
  color: #1e3a8a;
}

.agents-registry-order {
  display: flex;
  flex-direction: column;
  gap: 2px;
  padding-bottom: 1px;
}

.agents-registry-order-btn {
  width: 28px;
  height: 16px;
  border: 1px solid var(--border);
  border-radius: 4px;
  background: var(--panel);
  color: var(--muted);
  font-size: 11px;
  line-height: 1;
  padding: 0;
  cursor: pointer;
}

.agents-registry-order-btn:hover:not(:disabled) {
  border-color: var(--accent);
  color: var(--text);
  background: var(--panel-soft);
}

.agents-registry-order-btn:disabled {
  opacity: 0.35;
  cursor: default;
}

.agents-registry-row {
  display: flex;
  flex-direction: column;
  gap: 6px;
  padding: 8px;
  border: 1px solid var(--border);
  border-radius: 10px;
  background: var(--panel-soft);
}

.agents-registry-row-body {
  display: flex;
  align-items: stretch;
  gap: 10px;
  min-width: 0;
}

.agents-registry-preview-slot {
  position: relative;
  flex: 0 0 72px;
  width: 72px;
  min-height: 72px;
  border: 1px dashed #cbd5e1;
  border-radius: 8px;
  background: #f8fafc;
  overflow: hidden;
  cursor: pointer;
  display: flex;
  align-items: center;
  justify-content: center;
}

.agents-registry-preview-slot:hover,
.agents-registry-preview-slot:focus-visible {
  border-color: #93c5fd;
  background: #eff6ff;
  outline: none;
}

.agents-registry-preview-slot.has-image {
  border-style: solid;
  border-color: var(--border);
  background: #f1f5f9;
}

.agents-registry-preview-slot.is-uploading {
  opacity: 0.65;
  pointer-events: none;
}

.agents-registry-preview-file-input {
  position: absolute;
  width: 0;
  height: 0;
  opacity: 0;
  pointer-events: none;
}

.agents-registry-preview-placeholder {
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  gap: 2px;
  padding: 6px;
  text-align: center;
  color: #64748b;
  pointer-events: none;
}

.agents-registry-preview-slot.has-image .agents-registry-preview-placeholder {
  display: none;
}

.agents-registry-preview-placeholder-icon {
  font-size: 20px;
  line-height: 1;
  color: #94a3b8;
}

.agents-registry-preview-placeholder-text {
  font-size: 9px;
  line-height: 1.2;
}

.agents-registry-preview-emoji {
  position: absolute;
  inset: 0;
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: 30px;
  line-height: 1;
  pointer-events: none;
}

.agents-registry-preview-placeholder.hidden {
  visibility: hidden;
}

.agents-registry-preview-remove-btn {
  position: absolute;
  top: 4px;
  right: 4px;
  z-index: 2;
  width: 20px;
  height: 20px;
  border: 1px solid rgba(185, 28, 28, 0.25);
  border-radius: 999px;
  background: rgba(255, 255, 255, 0.92);
  color: #b91c1c;
  font-size: 14px;
  line-height: 1;
  padding: 0;
  cursor: pointer;
  display: none;
}

.agents-registry-preview-slot.has-image .agents-registry-preview-remove-btn {
  display: inline-flex;
  align-items: center;
  justify-content: center;
}

.agents-registry-preview-remove-btn:hover {
  background: #fef2f2;
  border-color: rgba(185, 28, 28, 0.4);
}

.agents-registry-preview-thumb {
  position: absolute;
  inset: 0;
  display: block;
  width: 100%;
  height: 100%;
  object-fit: cover;
}

.agents-registry-row-content {
  flex: 1;
  min-width: 0;
  display: flex;
  flex-direction: column;
  gap: 6px;
}

.agents-registry-row-main {
  display: grid;
  grid-template-columns:
    28px
    minmax(0, 0.95fr)
    minmax(0, 1.55fr)
    minmax(82px, 92px)
    32px
    28px;
  gap: 6px;
  align-items: end;
}

.agents-registry-readonly-value {
  min-height: 31px;
  display: flex;
  align-items: center;
  padding: 6px 7px;
  border: 1px solid var(--border);
  border-radius: 7px;
  background: #fff;
  color: var(--text);
  font-size: 12px;
  line-height: 1.35;
  overflow: hidden;
  text-overflow: ellipsis;
}

.agents-registry-details-row {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  gap: 8px 12px;
  align-items: end;
}

.agents-registry-orchestrator-field {
  min-width: 0;
  justify-self: end;
}

.agents-registry-orchestrator-field > span {
  text-transform: none;
  font-size: 11px;
  letter-spacing: 0;
}

.agents-registry-orchestrator {
  display: inline-flex;
  align-items: center;
  justify-content: flex-start;
  gap: 5px;
  width: auto;
  min-width: 32px;
  min-height: 30px;
  padding: 0 8px;
  border: 1px solid var(--border);
  border-radius: 7px;
  background: var(--panel);
  color: var(--muted);
  cursor: pointer;
  user-select: none;
  white-space: nowrap;
  transition: border-color 0.15s ease, background 0.15s ease, box-shadow 0.15s ease, color 0.15s ease;
}

.agents-registry-orchestrator:hover {
  border-color: rgba(245, 158, 11, 0.45);
  background: #fffbeb;
  color: #92400e;
}

.agents-registry-orchestrator:has(input:checked) {
  border-color: rgba(245, 158, 11, 0.65);
  background: linear-gradient(180deg, #fef3c7 0%, #fde68a 100%);
  color: #92400e;
  box-shadow:
    0 0 0 2px rgba(245, 158, 11, 0.14),
    0 1px 2px rgba(217, 119, 6, 0.12);
}

.agents-registry-orchestrator:has(input:focus-visible) {
  outline: none;
  box-shadow:
    0 0 0 3px rgba(245, 158, 11, 0.18),
    0 1px 2px rgba(245, 158, 11, 0.08);
}

.agents-registry-orchestrator input {
  position: absolute;
  opacity: 0;
  width: 1px;
  height: 1px;
  margin: 0;
  pointer-events: auto;
}

.agents-registry-orchestrator span {
  display: inline-flex;
  align-items: center;
  justify-content: flex-start;
  gap: 4px;
  line-height: 1;
  font-size: 11px;
  font-weight: 600;
}

.agents-registry-orchestrator span::before {
  content: "○";
  font-size: 14px;
  line-height: 1;
  opacity: 0.75;
}

.agents-registry-orchestrator:has(input:checked) span::before {
  content: "●";
  opacity: 1;
  color: #b45309;
}

.agents-registry-row.is-orchestrator {
  border-color: rgba(245, 158, 11, 0.28);
  background: linear-gradient(180deg, #fff 0%, #fffbeb 100%);
}

.agents-registry-comment-field,
.agents-registry-vault-field,
.agents-registry-details-row .agents-registry-path-field {
  min-width: 0;
}

.agents-registry-vault-field {
  display: flex;
  flex-direction: column;
  gap: 6px;
}

.agents-registry-field-label {
  display: block;
  font-size: 10px;
  font-weight: 600;
  text-transform: uppercase;
  letter-spacing: 0.05em;
  color: var(--muted);
  line-height: 1.2;
}

.agents-registry-vault-label-row {
  display: flex;
  align-items: center;
  gap: 3px;
  min-width: 0;
}

.agents-registry-vault-hint-mark {
  font-size: 10px;
  font-weight: 700;
  line-height: 1;
  color: #94a3b8;
}

.agents-registry-comment-input {
  width: 100%;
  min-width: 0;
  min-height: 31px;
  height: 31px;
  border: 1px solid var(--border);
  border-radius: 7px;
  background: var(--panel);
  color: var(--text);
  font-size: 12px;
  padding: 6px 7px;
  line-height: 1.25;
  resize: vertical;
}

.agents-registry-vault-controls {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 8px 10px;
  min-width: 0;
}

.agents-registry-vault-use {
  display: inline-flex;
  align-items: center;
  gap: 6px;
  min-height: 31px;
  margin: 0;
  font-size: 11px;
  line-height: 1.2;
  color: #475569;
  cursor: pointer;
  user-select: none;
  flex-shrink: 0;
  white-space: nowrap;
}

.agents-registry-vault-use input {
  width: 14px;
  height: 14px;
  margin: 0;
  flex-shrink: 0;
}

.agents-registry-vault-name {
  display: inline-flex;
  align-items: center;
  min-height: 31px;
  padding: 0 8px;
  border: 1px solid var(--border);
  border-radius: 7px;
  background: #f8fafc;
  color: var(--muted);
  font-family: ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, monospace;
  font-size: 12px;
  line-height: 1.25;
  flex-shrink: 0;
}

.agents-registry-vault-name[hidden] {
  display: none;
}

.agents-registry-path-dot[data-state="manifest"],
.agents-registry-legend-dot[data-state="manifest"] {
  background: #22c55e;
  box-shadow: 0 0 0 4px rgba(34, 197, 94, 0.16);
}

.agents-registry-discover-card {
  width: min(760px, calc(100vw - 32px));
  max-height: min(80vh, 760px);
  display: flex;
  flex-direction: column;
}

.agents-registry-discover-header {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: 12px;
  padding: 16px 16px 10px;
  border-bottom: 1px solid var(--border);
}

.agents-registry-discover-subtitle {
  margin: 0;
  font-size: 12px;
  color: var(--muted);
}

.agents-registry-discover-toolbar {
  display: flex;
  align-items: center;
  gap: 8px;
  padding: 10px 16px;
  border-bottom: 1px solid var(--border);
}

.agents-registry-discover-list {
  padding: 10px;
  overflow: auto;
  flex: 1;
  min-height: 0;
  display: flex;
  flex-direction: column;
  gap: 8px;
}

.agents-registry-discover-item {
  display: flex;
  gap: 10px;
  align-items: stretch;
  width: 100%;
  padding: 8px;
  border: 1px solid var(--border);
  border-radius: 10px;
  background: var(--panel-soft);
  text-align: left;
  cursor: pointer;
}

.agents-registry-discover-item:hover {
  border-color: #93c5fd;
  background: #eff6ff;
}

.agents-registry-discover-preview {
  width: 72px;
  min-height: 72px;
}

.agents-registry-discover-preview-fallback {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 100%;
  height: 100%;
  min-height: 72px;
  font-size: 24px;
  font-weight: 700;
  line-height: 1;
  color: #475569;
  pointer-events: none;
}

.agents-registry-preview-slot.has-image .agents-registry-discover-preview-fallback {
  display: none;
}

.agents-registry-discover-meta {
  flex: 1;
  min-width: 0;
  display: flex;
  flex-direction: column;
  gap: 4px;
}

.agents-registry-discover-name {
  font-size: 13px;
  font-weight: 700;
}

.agents-registry-discover-path {
  font-family: ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace;
  font-size: 11px;
  color: #64748b;
  word-break: break-all;
}

.agents-registry-discover-comment {
  font-size: 12px;
  color: #475569;
}

.agents-registry-discover-status {
  padding: 16px;
  color: var(--muted);
  font-size: 13px;
}

.agents-registry-field {
  display: flex;
  flex-direction: column;
  gap: 3px;
  min-width: 0;
}

.agents-registry-field > span {
  font-size: 10px;
  text-transform: uppercase;
  letter-spacing: 0.05em;
  color: var(--muted);
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
}

.agents-registry-field input[type="text"],
.agents-registry-field input[type="url"],
.agents-registry-select {
  width: 100%;
  min-width: 0;
  border: 1px solid var(--border);
  border-radius: 7px;
  background: var(--panel);
  color: var(--text);
  font: inherit;
  font-size: 12px;
  padding: 6px 7px;
  line-height: 1.25;
}

.agents-registry-field input[type="url"] {
  font-family: ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New",
    monospace;
  font-size: 11px;
}

.agents-registry-path-field input[type="text"] {
  font-family: ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace;
  font-size: 11px;
}

.agents-registry-path-field input[type="text"]:disabled {
  opacity: 1;
  cursor: not-allowed;
  background: #f8fafc;
  color: #64748b;
}

.agents-registry-path-label {
  display: inline-flex;
  align-items: center;
  gap: 6px;
}

.agents-registry-path-dot,
.agents-registry-legend-dot {
  flex-shrink: 0;
  width: 8px;
  height: 8px;
  border-radius: 999px;
  background: #cbd5e1;
  box-shadow: inset 0 0 0 1px rgba(148, 163, 184, 0.45);
}

.agents-registry-path-dot[data-state="checking"],
.agents-registry-legend-dot[data-state="checking"] {
  background: #cbd5e1;
  box-shadow: inset 0 0 0 1px rgba(148, 163, 184, 0.45);
}

.agents-registry-path-dot[data-state="exists"],
.agents-registry-legend-dot[data-state="exists"] {
  background: #22c55e;
  box-shadow: 0 0 0 4px rgba(34, 197, 94, 0.16);
}

.agents-registry-path-dot[data-state="missing"],
.agents-registry-legend-dot[data-state="missing"] {
  background: #f59e0b;
  box-shadow: 0 0 0 4px rgba(245, 158, 11, 0.18);
}

.agents-registry-path-dot[data-state="invalid"],
.agents-registry-legend-dot[data-state="invalid"] {
  background: #ef4444;
  box-shadow: 0 0 0 4px rgba(239, 68, 68, 0.16);
}

.agents-registry-select {
  cursor: pointer;
  font-size: 11px;
  padding-right: 4px;
}

.agents-registry-environment-field,
.agents-registry-default-field {
  min-width: 0;
}

.agents-registry-default {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 32px;
  min-height: 30px;
  padding: 0;
  border: 1px solid var(--border);
  border-radius: 7px;
  background: var(--panel);
  color: var(--muted);
  cursor: pointer;
  user-select: none;
  transition: border-color 0.15s ease, background 0.15s ease, box-shadow 0.15s ease, color 0.15s ease;
}

.agents-registry-default:hover {
  border-color: #93c5fd;
  background: #f8fbff;
  color: #334155;
}

.agents-registry-default:has(input:checked) {
  border-color: #60a5fa;
  background: linear-gradient(180deg, #dbeafe 0%, #bfdbfe 100%);
  color: #1e3a8a;
  box-shadow:
    0 0 0 2px rgba(59, 130, 246, 0.14),
    0 1px 2px rgba(37, 99, 235, 0.12);
}

.agents-registry-default:has(input:focus-visible) {
  outline: none;
  box-shadow:
    0 0 0 3px rgba(59, 130, 246, 0.18),
    0 1px 2px rgba(59, 130, 246, 0.08);
}

.agents-registry-default input {
  position: absolute;
  opacity: 0;
  width: 1px;
  height: 1px;
  pointer-events: none;
}

.agents-registry-default span {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  line-height: 1;
}

.agents-registry-default span::before {
  content: "☆";
  font-size: 14px;
  line-height: 1;
  opacity: 0.75;
}

.agents-registry-default:has(input:checked) span::before {
  content: "★";
  opacity: 1;
  color: #1d4ed8;
}

.agents-registry-row.is-inactive {
  opacity: 0.72;
}

.agents-registry-row.is-missing-folder {
  opacity: 0.82;
  border-color: #fecaca;
  background: #fff7f7;
}

.agents-registry-row.is-inactive .agents-registry-readonly-value {
  color: #64748b;
}

.agents-registry-row-actions {
  display: flex;
  align-items: end;
  justify-content: center;
  min-width: 28px;
}

.agents-registry-active-btn {
  width: 28px;
  height: 30px;
  border: 1px solid var(--border);
  border-radius: 7px;
  background: transparent;
  color: #94a3b8;
  font-size: 15px;
  line-height: 1;
  padding: 0;
  cursor: pointer;
  margin-bottom: 0;
}

.agents-registry-delete-btn {
  width: 28px;
  height: 30px;
  border: 1px solid var(--border);
  border-radius: 7px;
  background: transparent;
  color: var(--muted);
  font-size: 13px;
  line-height: 1;
  padding: 0;
  cursor: pointer;
  margin-bottom: 0;
}

.agents-registry-delete-btn:hover:not(:disabled) {
  color: #b91c1c;
  border-color: rgba(185, 28, 28, 0.35);
  background: rgba(254, 242, 242, 0.8);
}

.agents-registry-delete-btn:disabled {
  opacity: 0.35;
  cursor: not-allowed;
}

.agents-registry-active-btn[aria-pressed="true"] {
  color: #16a34a;
  border-color: rgba(22, 163, 74, 0.35);
  background: rgba(22, 163, 74, 0.08);
  box-shadow: 0 0 0 3px rgba(34, 197, 94, 0.12);
}

.agents-registry-active-btn:hover {
  border-color: #93c5fd;
  background: #eff6ff;
}

.agents-registry-active-btn[aria-pressed="true"]:hover {
  border-color: rgba(22, 163, 74, 0.45);
  background: rgba(22, 163, 74, 0.12);
}

.agents-registry-footer-actions {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 8px;
}

.agents-registry-discover-actions {
  position: relative;
  display: inline-flex;
  align-items: center;
  gap: 4px;
  max-width: 100%;
}

.agents-registry-discover-help-btn {
  flex: 0 0 auto;
  width: 28px;
  height: 28px;
  padding: 0;
  border: 1px solid rgba(148, 163, 184, 0.45);
  border-radius: 999px;
  background: #f8fafc;
  color: #475569;
  font-size: 13px;
  font-weight: 700;
  line-height: 1;
  cursor: pointer;
  transition: background 0.15s ease, color 0.15s ease, border-color 0.15s ease;
}

.agents-registry-discover-help-btn:hover,
.agents-registry-discover-help-btn[aria-expanded="true"] {
  background: #eef2ff;
  border-color: rgba(99, 102, 241, 0.35);
  color: #4338ca;
}

.agents-registry-discover-help-popover {
  position: absolute;
  right: 0;
  bottom: calc(100% + 8px);
  z-index: 30;
  width: min(320px, calc(100vw - 48px));
  padding: 12px 14px;
  border: 1px solid var(--border);
  border-radius: 10px;
  background: var(--panel);
  box-shadow: 0 12px 32px rgba(15, 23, 42, 0.14);
}

.agents-registry-discover-help-popover.hidden {
  display: none;
}

.agents-registry-discover-help-title {
  font-size: 12px;
  font-weight: 700;
  color: #0f172a;
  margin-bottom: 6px;
}

.agents-registry-discover-help-lead,
.agents-registry-discover-help-foot,
.agents-registry-discover-help-label {
  margin: 0 0 6px;
  font-size: 11px;
  line-height: 1.45;
  color: #475569;
}

.agents-registry-discover-help-label {
  font-weight: 600;
  color: #334155;
}

.agents-registry-discover-help-lead code,
.agents-registry-discover-help-foot code {
  font-size: 10px;
}

.agents-registry-discover-help-sample {
  margin: 0 0 8px;
  padding: 8px 10px;
  border-radius: 7px;
  background: #f1f5f9;
  border: 1px solid rgba(148, 163, 184, 0.35);
  font-family: ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace;
  font-size: 10px;
  line-height: 1.4;
  color: #0f172a;
  white-space: pre-wrap;
  overflow-x: auto;
}

.agents-registry-create-card,
.app-landing-create-card {
  width: min(420px, calc(100vw - 32px));
}

.agents-registry-create-field {
  margin-bottom: 10px;
}

.agents-registry-create-path-field {
  margin-bottom: 10px;
}

.agents-registry-create-slug-field {
  margin-bottom: 14px;
}

.agents-registry-slug-input {
  font-family: ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace;
  font-size: 11px;
}

.agents-registry-create-description-input {
  width: 100%;
  min-width: 0;
  min-height: 52px;
  resize: vertical;
  border: 1px solid var(--border);
  border-radius: 7px;
  background: var(--panel);
  color: var(--text);
  font: inherit;
  font-size: 12px;
  line-height: 1.35;
  padding: 6px 7px;
}

.agents-registry-create-field.is-invalid input,
.agents-registry-create-field.is-invalid textarea,
.agents-registry-create-path-field.is-invalid input,
.agents-registry-create-slug-field.is-invalid input {
  border-color: #ef4444;
  box-shadow: 0 0 0 1px rgba(239, 68, 68, 0.18);
}

.agents-registry-create-footnote {
  margin: 4px 0 0;
  font-size: 10px;
  line-height: 1.35;
  color: #94a3b8;
}

.agents-registry-create-error {
  margin: 0;
  font-size: 11px;
  line-height: 1.35;
  color: #b91c1c;
}

.agents-registry-footer {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
  flex-wrap: wrap;
  flex-shrink: 0;
}

.agents-registry-status-legend {
  flex: 1 1 100%;
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 8px 18px;
  margin: 0;
  padding: 10px 0 0;
  list-style: none;
  border-top: 1px solid var(--border);
  font-size: 11px;
  line-height: 1.35;
  color: #64748b;
}

.agents-registry-status-legend li {
  display: inline-flex;
  align-items: center;
  gap: 6px;
}

.agents-registry-vault-footnote {
  flex: 1 1 100%;
  margin: 0;
  padding: 0 0 2px;
  font-size: 10px;
  line-height: 1.35;
  color: #64748b;
}

.agents-registry-footer .modal-actions {
  margin-left: auto;
}

.agents-registry-footer .save-btn,
.agents-registry-footer .external-create-btn,
.agents-registry-footer .external-create-section-btn,
.agents-registry-footer .agents-registry-sort-btn {
  min-height: 36px;
  padding: 0 14px;
  font-size: 13px;
  font-weight: 600;
  border-radius: 8px;
}

@media (max-width: 640px) {
  .agents-registry-details-row {
    grid-template-columns: 1fr;
  }
}

@media (max-width: 640px) {
  .agents-registry-row-main {
    grid-template-columns: 28px minmax(0, 1fr) 28px;
    grid-template-areas:
      "order name active"
      "comment comment comment"
      "env env default";
  }

  .agents-registry-row-main > :nth-child(1) {
    grid-area: order;
  }

  .agents-registry-row-main > :nth-child(2) {
    grid-area: name;
  }

  .agents-registry-row-main > :nth-child(3) {
    grid-area: comment;
  }

  .agents-registry-row-main > :nth-child(4) {
    grid-area: env;
  }

  .agents-registry-row-main > :nth-child(5) {
    grid-area: default;
    justify-self: start;
  }

  .agents-registry-row-main > :nth-child(6) {
    grid-area: active;
  }
}

.modal-message {
  font-size: 15px;
  margin-bottom: 14px;
}

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

#confirm-modal {
  z-index: 1200;
}

.confirm-modal-card {
  width: min(440px, 94vw);
  padding: 20px 20px 18px;
  border-radius: 16px;
  box-shadow: 0 24px 48px rgba(15, 23, 42, 0.18);
}

.confirm-modal-card.is-danger {
  border-color: rgba(239, 68, 68, 0.28);
}

.confirm-modal-card.is-warning {
  border-color: rgba(245, 158, 11, 0.34);
}

.confirm-modal-card.is-info {
  border-color: rgba(99, 102, 241, 0.28);
}

.confirm-modal-icon {
  width: 48px;
  height: 48px;
  border-radius: 14px;
  display: grid;
  place-items: center;
  font-size: 24px;
  line-height: 1;
  margin-bottom: 12px;
  background: #f1f5f9;
}

.confirm-modal-card.is-danger .confirm-modal-icon {
  background: #fee2e2;
}

.confirm-modal-card.is-warning .confirm-modal-icon {
  background: #fef3c7;
}

.confirm-modal-card.is-info .confirm-modal-icon {
  background: rgba(99, 102, 241, 0.12);
}

.confirm-modal-title {
  margin: 0 0 8px;
  font-size: 18px;
  font-weight: 800;
  color: #0f172a;
  line-height: 1.25;
}

.confirm-modal-message {
  margin: 0 0 12px;
  font-size: 14px;
  line-height: 1.5;
  color: #334155;
}

.confirm-modal-message.is-preformatted {
  white-space: pre-wrap;
  font-family: ui-monospace, SFMono-Regular, Menlo, monospace;
  font-size: 12px;
  line-height: 1.45;
  max-height: min(52vh, 360px);
  overflow: auto;
  padding: 10px 12px;
  border-radius: 10px;
  background: #f8fafc;
  border: 1px solid rgba(148, 163, 184, 0.28);
}

.confirm-modal-hint {
  margin: 0 0 16px;
  padding: 10px 12px;
  border-radius: 10px;
  background: #f8fafc;
  border: 1px solid rgba(148, 163, 184, 0.24);
  font-size: 12px;
  line-height: 1.45;
  color: #64748b;
}

.confirm-modal-hint.hidden {
  display: none;
}

.confirm-modal-actions {
  margin-top: 4px;
}

.confirm-modal-card.is-warning .confirm-modal-actions .danger-btn {
  background: #d97706;
  border-color: #b45309;
}

.confirm-modal-card.is-warning .confirm-modal-actions .danger-btn:hover {
  background: #b45309;
}

.create-node-card {
  width: min(420px, 94vw);
  padding: 16px;
}

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

.create-node-header .modal-message {
  margin: 0;
  flex: 1;
  min-width: 0;
}

.create-node-header .modal-close-btn {
  position: static;
  flex-shrink: 0;
}

.modal-close-btn {
  width: 32px;
  height: 32px;
  padding: 0;
  border: none;
  border-radius: 8px;
  background: transparent;
  color: var(--muted);
  font-size: 24px;
  line-height: 1;
  cursor: pointer;
  display: flex;
  align-items: center;
  justify-content: center;
  transition: background 0.15s ease, color 0.15s ease;
}

.modal-close-btn:hover {
  background: var(--bg);
  color: var(--text);
}

.modal-close-btn:focus-visible {
  outline: 2px solid var(--accent, #2563eb);
  outline-offset: 2px;
}

.create-node-vault-option {
  display: flex;
  align-items: flex-start;
  gap: 8px;
  margin-top: 10px;
  font-size: 13px;
  line-height: 1.35;
  color: #475569;
  cursor: pointer;
  user-select: none;
}

.create-node-vault-option.hidden {
  display: none;
}

.create-node-vault-option input {
  margin: 2px 0 0;
  flex-shrink: 0;
}

.create-node-vault-option.is-disabled {
  cursor: default;
  color: #64748b;
}

.create-node-vault-option.is-disabled input {
  cursor: not-allowed;
}

.create-form-indexing-option,
.create-form-git-rename-option {
  margin-top: 10px;
}

.create-form-git-rename-option.is-disabled {
  opacity: 0.72;
  cursor: not-allowed;
}

.create-form-git-rename-option.is-disabled input {
  cursor: not-allowed;
}

.create-form-indexing-option.is-disabled,
.awn-databases-create-checkbox-field.is-disabled {
  opacity: 0.72;
  cursor: not-allowed;
}

.create-form-indexing-option.is-disabled input,
.awn-databases-create-checkbox-field.is-disabled input {
  cursor: not-allowed;
}

.create-node-actions.has-manifest-option {
  grid-template-columns: repeat(3, minmax(0, 1fr));
}

.create-node-actions.has-free-memory-option {
  grid-template-columns: repeat(3, minmax(0, 1fr));
}

.create-node-action-btn--free-memory {
  border-color: rgba(148, 163, 184, 0.35);
  background: #f8fafc;
  color: #475569;
}

.create-node-action-btn--free-memory:hover {
  border-color: rgba(100, 116, 139, 0.45);
  background: #f1f5f9;
}

.create-node-action-btn--upload {
  width: 100%;
  margin-top: 0;
}

.create-node-action-btn--upload.is-uploading {
  opacity: 0.65;
  cursor: wait;
}

.create-free-memory-upload-wrap {
  display: flex;
  flex-direction: column;
  gap: 8px;
  margin-top: 10px;
}

.create-free-memory-upload-wrap.hidden {
  display: none;
}

.create-free-memory-upload-hint {
  margin: 0;
  font-size: 12px;
  line-height: 1.45;
  color: #64748b;
}

.create-node-action-btn--primary {
  border-color: #86efac;
  background: #f0fdf4;
  color: #166534;
  font-weight: 600;
}

.create-node-action-btn--primary:hover {
  border-color: #4ade80;
  background: #dcfce7;
}

.create-node-action-btn.hidden {
  display: none;
}

.create-node-actions {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 8px;
  margin-top: 14px;
}

.create-node-catalog-wrap {
  margin-top: 14px;
}

.create-node-catalog-wrap.hidden,
.create-node-service-docs-wrap.hidden,
.create-node-shared-themes-wrap.hidden,
.create-node-shared-taxonomies-wrap.hidden,
.create-node-divider.hidden,
.create-node-structure-label.hidden {
  display: none;
}

.create-node-shared-taxonomies-wrap {
  margin-top: 12px;
}

.create-node-shared-taxonomies-hint {
  margin: 4px 0 10px;
  font-size: 12px;
  line-height: 1.45;
  color: #64748b;
}

.create-node-action-btn--taxonomy {
  width: 100%;
  border-color: rgba(244, 114, 182, 0.35);
  background: #fff1f2;
  color: #9f1239;
}

.create-node-action-btn--taxonomy:hover:not(:disabled) {
  border-color: rgba(244, 114, 182, 0.55);
  background: #ffe4e6;
}

.create-node-action-btn--taxonomy:disabled {
  opacity: 0.45;
  cursor: not-allowed;
}

.create-node-service-docs-wrap {
  margin-top: 12px;
}

.create-node-shared-themes-wrap {
  margin-top: 12px;
}

.create-node-shared-themes-hint {
  margin: 4px 0 10px;
  font-size: 12px;
  line-height: 1.45;
  color: #64748b;
}

.create-node-shared-themes-actions-wrap {
  display: flex;
  flex-direction: column;
  gap: 8px;
}

.create-node-shared-themes-actions {
  display: grid;
  gap: 8px;
}

.create-node-shared-themes-actions--cols-3 {
  grid-template-columns: repeat(3, minmax(0, 1fr));
}

.create-node-shared-themes-actions .create-node-shared-theme-btn {
  font-size: 13px;
  text-align: center;
  white-space: normal;
}

.create-node-shared-theme-btn--full {
  grid-column: 1 / -1;
}

.create-node-shared-theme-btn--created,
.create-node-shared-theme-btn:disabled {
  opacity: 0.45;
  cursor: not-allowed;
}

.create-node-shared-theme-btn:disabled:hover {
  border-color: var(--border);
  background: var(--bg);
}

.create-node-divider {
  margin: 14px 0;
  border: 0;
  border-top: 1px solid var(--border);
}

.create-node-manual-section .popover-label:first-child {
  margin-top: 0;
}

.create-node-service-docs-actions-wrap {
  display: flex;
  flex-direction: column;
  gap: 8px;
}

.create-node-service-docs-actions {
  display: grid;
  gap: 8px;
}

.create-node-service-docs-actions--cols-3 {
  grid-template-columns: repeat(3, minmax(0, 1fr));
}

.create-node-service-docs-footnotes {
  display: flex;
  flex-direction: column;
  gap: 3px;
  margin-top: 8px;
  text-align: left;
}

.create-node-service-docs-footnotes .create-node-service-docs-footnote {
  margin: 0;
  font-size: 11px;
  line-height: 1.4;
  color: #64748b;
  text-align: left;
}

.create-node-service-doc-ref {
  font-size: 0.78em;
  font-weight: 600;
  line-height: 0;
  color: #dc2626;
  letter-spacing: 0;
}

.create-node-service-doc-btn {
  padding: 8px 5px;
  font-size: 12px;
  text-align: center;
  white-space: normal;
}

.create-node-service-doc-btn--full {
  grid-column: 1 / -1;
}

.create-node-service-docs-footnote {
  margin: 2px 0 0;
  font-size: 11px;
  line-height: 1.4;
  color: #64748b;
}

.create-node-service-doc-btn:disabled {
  opacity: 0.45;
  cursor: not-allowed;
}

.create-node-service-doc-btn:disabled:hover {
  border-color: var(--border);
  background: var(--bg);
}

.stub-static-mark {
  color: #dc2626;
  font-weight: 700;
  font-size: 0.92em;
  letter-spacing: 0.01em;
  white-space: nowrap;
}

.stub-todo-mark {
  display: inline-block;
  margin-left: 0.15em;
  padding: 0 0.35em;
  border-radius: 4px;
  background: #fef3c7;
  color: #b45309;
  font-weight: 700;
  font-size: 0.72em;
  letter-spacing: 0.04em;
  text-transform: uppercase;
  vertical-align: 0.08em;
  white-space: nowrap;
}

.create-node-service-doc-btn .stub-static-mark {
  font-size: 10px;
  font-weight: 700;
}

.create-node-structure-label {
  margin-top: 12px;
  margin-bottom: -6px;
}

.create-node-catalog-actions {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 8px;
}

.create-node-catalog-btn {
  font-size: 13px;
}

.create-node-catalog-btn:disabled {
  opacity: 0.45;
  cursor: not-allowed;
}

.create-node-catalog-btn:disabled:hover {
  border-color: var(--border);
  background: var(--bg);
}

.create-node-actions.create-node-actions--service {
  margin-top: 8px;
}

.create-node-actions.create-node-actions--static-stubs {
  margin-top: 8px;
}

.create-node-actions.create-node-actions--static-stubs .create-node-action-btn:disabled {
  opacity: 0.45;
  cursor: not-allowed;
}

.create-node-actions.create-node-actions--static-stubs .create-node-action-btn:disabled:hover {
  border-color: var(--border);
  background: var(--bg);
}

@media (max-width: 520px) {
  .create-node-catalog-actions,
  .create-node-service-docs-actions--cols-3,
  .create-node-shared-themes-actions--cols-3,
  .create-node-actions.has-free-memory-option,
  .create-node-actions.has-manifest-option {
    grid-template-columns: 1fr;
  }
}

.create-node-action-btn {
  padding: 10px 12px;
  border: 1px solid var(--border);
  border-radius: 8px;
  background: var(--bg);
  color: var(--text);
  font-size: 13px;
  font-weight: 500;
  line-height: 1.25;
  text-align: center;
  cursor: pointer;
  transition: border-color 0.15s ease, background 0.15s ease;
}

.create-node-action-btn:hover {
  border-color: var(--accent, #2563eb);
  background: var(--panel);
}

.popover-label {
  display: block;
  font-size: 12px;
  color: var(--muted);
  margin-bottom: 6px;
}

.popover-input {
  width: 100%;
  border: 1px solid var(--border);
  border-radius: 8px;
  padding: 9px 10px;
  font-size: 14px;
  margin-bottom: 10px;
}

.popover-actions {
  display: flex;
  gap: 8px;
}

@media (max-width: 900px) {
  .app {
    grid-template-columns: 1fr;
  }

  .agent-canvas-stack,
  .agent-canvas-pane,
  .home-pane,
  .home-pane-2,
  .sidebar-shell,
  .workspace-pane {
    grid-column: 1;
  }

  .app-header {
    flex-wrap: wrap;
  }

  .app-header-tools {
    flex-basis: 100%;
    justify-content: stretch;
  }

  .content-search-wrap {
    flex: 1 1 auto;
    max-width: none;
  }

  .header-tool-buttons {
    flex: 0 0 auto;
    overflow: visible;
  }

  .app.app-landing-view .header-tool-buttons {
    flex: 1 1 0;
    overflow: visible;
  }

  .sidebar,
  .sidebar-shell,
  .sidebar-resize-bar,
  .workspace-pane,
  .app-footer {
    border-right: 0;
    border-bottom: 1px solid var(--border);
  }

  .sidebar-resize-bar {
    display: none;
  }

  .app-footer {
    border-bottom: 0;
  }

  .workspace-path-toolbar-block .doc-actions {
    width: 100%;
    margin-left: 0;
    justify-content: flex-end;
    flex-wrap: wrap;
  }
}

.file-history-card {
  width: min(640px, 94vw);
}

.file-history-list {
  display: flex;
  flex-direction: column;
  gap: 8px;
  max-height: min(52vh, 420px);
  overflow: auto;
  margin-top: 12px;
}

.file-history-empty {
  margin: 0;
  padding: 12px;
  border-radius: 8px;
  background: #f8fafc;
  color: var(--muted);
  font-size: 13px;
  line-height: 1.45;
}

.file-history-row {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
  padding: 10px 12px;
  border: 1px solid var(--border);
  border-radius: 8px;
  background: #fff;
}

.file-history-row-meta {
  min-width: 0;
}

.file-history-row-title {
  font-size: 13px;
  font-weight: 600;
  color: var(--text);
}

.file-history-row-size {
  margin-top: 2px;
  font-size: 11px;
  color: var(--muted);
}

.file-history-row-actions {
  display: flex;
  gap: 6px;
  flex-shrink: 0;
}

.file-history-action-btn {
  padding: 4px 10px;
  font-size: 12px;
}

.file-history-preview-wrap {
  margin-top: 14px;
  border-top: 1px solid var(--border);
  padding-top: 12px;
}

.file-history-preview-wrap.hidden {
  display: none;
}

.file-history-preview-head {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 8px;
  margin-bottom: 8px;
}

.file-history-preview-content {
  margin: 0;
  max-height: min(36vh, 280px);
  overflow: auto;
  padding: 10px 12px;
  border-radius: 8px;
  border: 1px solid var(--border);
  background: #0f172a;
  color: #e2e8f0;
  font-size: 12px;
  line-height: 1.45;
  white-space: pre-wrap;
  word-break: break-word;
}

.document-viewer-card {
  width: min(960px, 96vw);
  max-height: min(92vh, 900px);
  display: flex;
  flex-direction: column;
  padding: 0;
  overflow: hidden;
}

.document-viewer-header {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: 12px;
  padding: 14px 16px;
  border-bottom: 1px solid var(--border);
  flex-shrink: 0;
}

.document-viewer-heading {
  min-width: 0;
}

.document-viewer-heading .modal-message {
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.document-viewer-meta {
  margin: 4px 0 0;
  font-size: 12px;
  color: var(--muted);
}

.document-viewer-toolbar {
  display: flex;
  align-items: center;
  gap: 8px;
  flex-shrink: 0;
}

.document-viewer-toolbar .ghost-btn,
.document-viewer-fallback-btn {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-height: 36px;
  padding: 0 16px;
  border: 1px solid var(--border);
  border-radius: 8px;
  background: #fff;
  color: var(--text);
  font-size: 13px;
  font-weight: 600;
  font-family: inherit;
  line-height: 1.2;
  white-space: nowrap;
  cursor: pointer;
  transition:
    background 0.15s ease,
    border-color 0.15s ease,
    color 0.15s ease,
    box-shadow 0.15s ease;
}

.document-viewer-toolbar .ghost-btn:hover,
.document-viewer-fallback-btn:hover {
  background: var(--bg);
  border-color: #cbd5e1;
  color: var(--text);
  box-shadow: 0 1px 2px rgba(15, 23, 42, 0.06);
}

.document-viewer-toolbar .ghost-btn:focus-visible,
.document-viewer-fallback-btn:focus-visible {
  outline: 2px solid var(--accent, #2563eb);
  outline-offset: 2px;
}

.document-viewer-fallback-btn {
  margin-top: 4px;
}

.document-viewer-body {
  position: relative;
  flex: 1 1 auto;
  min-height: 0;
  overflow: auto;
  background: #f1f5f9;
  -webkit-overflow-scrolling: touch;
}

.document-viewer-body:has(.document-viewer-iframe:not(.hidden)),
.document-viewer-body:has(.document-viewer-loading:not(.hidden)) {
  min-height: min(62vh, 560px);
}

.document-viewer-loading {
  display: flex;
  align-items: center;
  justify-content: center;
  min-height: 240px;
  color: var(--muted);
  font-size: 14px;
}

.document-viewer-iframe {
  display: block;
  width: 100%;
  min-height: min(70vh, 640px);
  border: 0;
  background: #fff;
}

.document-viewer-body:has(.document-viewer-content:not(.hidden)) {
  padding: 0;
  background: #fff;
}

.document-viewer-content {
  box-sizing: border-box;
  width: 100%;
  max-width: none;
  margin: 0;
}

.document-viewer-content--docx {
  padding: 0;
  background: #fff;
  color: #0f172a;
  line-height: 1.55;
  border: 0;
  border-radius: 0;
  box-shadow: none;
}

.document-viewer-content--sheet {
  max-width: none;
  padding: 0;
  background: transparent;
  border: 0;
  box-shadow: none;
}

.document-viewer-content--docx p {
  margin: 0 0 0.75em;
}

.document-viewer-content--docx table {
  width: 100%;
  border-collapse: collapse;
  margin: 0.75em 0;
}

.document-viewer-content--docx td,
.document-viewer-content--docx th {
  border: 1px solid #cbd5e1;
  padding: 6px 8px;
  vertical-align: top;
}

.document-viewer-content--text {
  padding: 0;
  border: 0;
  border-radius: 0;
  box-shadow: none;
  overflow: hidden;
}

.document-viewer-text {
  margin: 0;
  padding: 0;
  font-size: 13px;
  line-height: 1.5;
  white-space: pre-wrap;
  word-break: break-word;
  color: #0f172a;
  background: #fff;
}

.document-viewer-sheet-tabs {
  display: flex;
  flex-wrap: wrap;
  gap: 6px;
  margin-bottom: 12px;
}

.document-viewer-sheet-tab {
  border: 1px solid var(--border);
  background: #fff;
  color: var(--text);
  border-radius: 999px;
  padding: 4px 12px;
  font-size: 12px;
  cursor: pointer;
}

.document-viewer-sheet-tab.is-active {
  background: var(--accent, #2563eb);
  border-color: transparent;
  color: #fff;
}

.document-viewer-sheet-wrap {
  overflow: auto;
  background: #fff;
  border: 1px solid var(--border);
  border-radius: 8px;
}

.document-viewer-sheet-wrap table {
  width: 100%;
  border-collapse: collapse;
  font-size: 12px;
}

.document-viewer-sheet-wrap td,
.document-viewer-sheet-wrap th {
  border: 1px solid #e2e8f0;
  padding: 6px 8px;
  vertical-align: top;
  white-space: nowrap;
}

.document-viewer-sheet-wrap tr:nth-child(even) td {
  background: #f8fafc;
}

.document-viewer-fallback {
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  gap: 10px;
  min-height: 240px;
  padding: 24px;
  text-align: center;
}

.document-viewer-fallback-lead {
  margin: 0;
  font-size: 15px;
  color: var(--text);
}

.document-viewer-fallback-note {
  margin: 0;
  max-width: 420px;
  font-size: 13px;
  color: var(--muted);
  line-height: 1.45;
}

body.document-viewer-open {
  overflow: hidden;
}

/* ── Discuss panel (agent chat context) ── */

.discuss-aside {
  position: relative;
  align-self: stretch;
  display: flex;
  flex-direction: column;
  flex: 0 0 var(--discuss-panel-width, var(--sidebar-width, 280px));
  width: var(--discuss-panel-width, var(--sidebar-width, 280px));
  min-height: 0;
  min-width: 280px;
  max-width: 520px;
  overflow: hidden;
  border-left: 3px solid #6366f1;
  background: #fafbff;
  box-sizing: border-box;
}

.discuss-aside-resizer {
  position: absolute;
  left: 0;
  top: 0;
  bottom: 0;
  width: 6px;
  cursor: col-resize;
  z-index: 2;
  touch-action: none;
}

.discuss-aside-resizer:hover,
body.is-discuss-resizing .discuss-aside-resizer {
  background: rgba(99, 102, 241, 0.18);
}

.discuss-aside.is-hidden {
  display: none;
}

.app.editor-autoheight .discuss-aside.is-viewport-sized {
  position: sticky;
  top: 0;
  align-self: flex-start;
}

.discuss-aside-tabs {
  display: flex;
  align-items: stretch;
  gap: 4px;
  width: 100%;
  padding: 3px;
  border-radius: 10px;
  background: #eef2ff;
  border: 1px solid #c7d2fe;
}

.discuss-aside-tab {
  flex: 1;
  min-width: 0;
  border: 0;
  border-radius: 8px;
  background: transparent;
  color: #4338ca;
  font-size: 12px;
  font-weight: 600;
  line-height: 1.2;
  padding: 7px 8px;
  cursor: pointer;
  transition: background 0.15s, color 0.15s, box-shadow 0.15s;
}

.discuss-aside-tabs:has(.discuss-aside-tab:nth-child(3)) .discuss-aside-tab {
  font-size: 11px;
  padding: 7px 5px;
}

.discuss-aside-tab:hover:not(.is-active) {
  background: rgba(255, 255, 255, 0.65);
}

.discuss-aside-tab.is-active {
  background: #fff;
  color: #312e81;
  box-shadow: 0 1px 3px rgba(99, 102, 241, 0.18);
}

.discuss-aside-tab:focus-visible {
  outline: 2px solid #6366f1;
  outline-offset: 1px;
}

.discuss-aside-view {
  display: none;
  flex: 1 1 auto;
  min-height: 0;
  overflow: hidden;
  flex-direction: column;
}

.discuss-aside-view.is-active {
  display: flex;
  flex-direction: column;
}

.discuss-agent-preview-wrap {
  flex-shrink: 0;
  margin: 0;
  padding: 0;
  border: 0;
  border-radius: 0;
  border-bottom: 1px solid var(--border);
  box-sizing: border-box;
  width: 100%;
  overflow: hidden;
  background: #0f172a;
}

.discuss-aside > .discuss-agent-preview-wrap.agent-preview-wrap {
  padding: 0;
  border: 0;
  border-radius: 0;
  background: #0f172a;
}

.discuss-aside > .discuss-agent-preview-wrap.agent-preview-portrait:not(.hidden) {
  animation: none;
}

.discuss-aside > .discuss-agent-preview-wrap .agent-preview-frame {
  border-radius: 0;
  height: auto;
  max-height: none;
}

.discuss-aside > .discuss-agent-preview-wrap .agent-preview-thumb {
  display: block;
  width: 100%;
  height: 120px;
  max-height: none;
  object-fit: cover;
  object-position: center 28%;
}

.discuss-agent-preview-wrap.agent-preview-openable {
  cursor: pointer;
}

.discuss-agent-preview-wrap.agent-preview-openable:focus-visible {
  outline: 2px solid #6366f1;
  outline-offset: -2px;
}

.discuss-aside-shell-view {
  flex: 1 1 auto;
  min-height: 0;
  overflow: hidden;
  background: #0f1020;
  position: relative;
}

.discuss-voice-chat-dropzone {
  position: absolute;
  inset: 0;
  z-index: 4;
  display: none;
  align-items: center;
  justify-content: center;
  padding: 16px;
  border: 2px dashed transparent;
  background: rgba(15, 16, 32, 0.72);
  color: #e0e7ff;
  font-size: 13px;
  font-weight: 600;
  text-align: center;
  pointer-events: none;
}

body.is-voice-chat-drop-active .discuss-voice-chat-dropzone {
  display: flex;
  pointer-events: auto;
}

body.is-voice-chat-drop-active .discuss-voice-chat-dropzone.is-active,
.discuss-aside.is-voice-chat-drop-target .discuss-voice-chat-dropzone.is-active {
  border-color: #818cf8;
  background: rgba(49, 46, 129, 0.82);
  box-shadow: inset 0 0 0 1px rgba(129, 140, 248, 0.35);
}

.is-dragging-voice-chat-context,
.is-dragging-menu-link {
  opacity: 0.72;
}

#app-footer-ideas-btn[draggable="true"],
#agent-todo-preview-toggle[draggable="true"] {
  cursor: grab;
}

#app-footer-ideas-btn.is-dragging-voice-chat-context,
#agent-todo-preview-toggle.is-dragging-voice-chat-context {
  cursor: grabbing;
}

.discuss-aside.is-voice-chat-drop-target {
  box-shadow: inset 0 0 0 2px #6366f1;
}

body.is-cms-page-picker-active {
  cursor: crosshair;
}

body.is-cms-page-picker-active #discuss-aside,
body.is-cms-page-picker-active #discuss-aside * {
  cursor: default;
}

.cms-page-picker-root {
  position: fixed;
  inset: 0;
  z-index: 12000;
  pointer-events: none;
  display: none;
}

.cms-page-picker-root.is-active {
  display: block;
}

.cms-page-picker-hint {
  position: fixed;
  top: 12px;
  left: 50%;
  transform: translateX(-50%);
  z-index: 12002;
  max-width: min(92vw, 520px);
  padding: 8px 14px;
  border-radius: 999px;
  background: rgba(15, 23, 42, 0.92);
  color: #e2e8f0;
  font-size: 13px;
  font-weight: 600;
  line-height: 1.35;
  box-shadow: 0 8px 28px rgba(15, 23, 42, 0.28);
  pointer-events: none;
}

.cms-page-picker-highlight {
  position: fixed;
  z-index: 12001;
  display: none;
  border: 2px solid #6366f1;
  border-radius: 6px;
  background: rgba(99, 102, 241, 0.12);
  box-shadow: 0 0 0 1px rgba(99, 102, 241, 0.35), inset 0 0 0 1px rgba(255, 255, 255, 0.35);
  pointer-events: none;
  transition: top 0.05s ease, left 0.05s ease, width 0.05s ease, height 0.05s ease;
}

.cms-page-picker-highlight-tag {
  position: absolute;
  top: 4px;
  right: 4px;
  z-index: 1;
  max-width: calc(100% - 8px);
  padding: 2px 7px;
  border-radius: 6px;
  background: rgba(15, 23, 42, 0.92);
  color: #c7d2fe;
  font-family: ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, monospace;
  font-size: 11px;
  font-weight: 700;
  line-height: 1.2;
  letter-spacing: 0.02em;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
  box-shadow: 0 4px 12px rgba(15, 23, 42, 0.24);
  pointer-events: none;
}

.cms-page-picker-highlight-tag[hidden] {
  display: none;
}

.discuss-shell-iframe {
  position: absolute;
  inset: 0;
  display: block;
  width: 100%;
  height: 100%;
  border: 0;
  background: #0f1020;
}

.discuss-aside-title {
  margin: 0;
  font-size: 14px;
  font-weight: 700;
  color: var(--text);
}

.discuss-aside-sub {
  margin: 2px 0 0;
  font-size: 11px;
  color: var(--muted);
  line-height: 1.35;
}

.discuss-aside-close-btn {
  border: 0;
  background: transparent;
  color: var(--muted);
  font-size: 20px;
  line-height: 1;
  cursor: pointer;
  padding: 0 4px;
}

.discuss-aside-close-btn:hover {
  color: var(--text);
}

.discuss-context-section {
  flex-shrink: 0;
  padding: 10px 12px 8px 14px;
  border-bottom: 1px solid var(--border);
}

.discuss-context-head {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 8px;
  margin-bottom: 8px;
}

.discuss-context-label {
  font-size: 11px;
  font-weight: 700;
  text-transform: uppercase;
  letter-spacing: 0.04em;
  color: var(--muted);
}

.discuss-context-add-btn {
  border: 1px solid var(--border);
  border-radius: 6px;
  background: #fff;
  color: var(--text);
  font-size: 11px;
  padding: 3px 8px;
  cursor: pointer;
}

.discuss-context-add-btn:hover:not(:disabled) {
  border-color: #93c5fd;
  color: #1d4ed8;
}

.discuss-context-add-btn:disabled {
  opacity: 0.45;
  cursor: default;
}

.discuss-context-dropzone {
  min-height: 56px;
  border: 1px dashed #c7d2fe;
  border-radius: 10px;
  background: #fff;
  padding: 8px;
  transition: border-color 0.15s, background 0.15s;
}

.discuss-context-dropzone.is-drop-target {
  border-color: #6366f1;
  background: #eef2ff;
}

.discuss-context-list {
  list-style: none;
  margin: 0;
  padding: 0;
  display: flex;
  flex-direction: column;
  gap: 6px;
}

.discuss-context-chip {
  display: flex;
  align-items: stretch;
  gap: 4px;
}

.discuss-context-chip-main {
  flex: 1;
  min-width: 0;
  display: flex;
  align-items: center;
  gap: 6px;
  border: 1px solid #e2e8f0;
  border-radius: 8px;
  background: #f8fafc;
  padding: 6px 8px;
  text-align: left;
  cursor: pointer;
  font-size: 12px;
  color: var(--text);
}

.discuss-context-chip-main:hover {
  border-color: #93c5fd;
  background: #eff6ff;
}

.discuss-context-chip-icon {
  flex-shrink: 0;
}

.discuss-context-chip-label {
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.discuss-context-chip-remove {
  flex-shrink: 0;
  width: 28px;
  border: 1px solid #e2e8f0;
  border-radius: 8px;
  background: #fff;
  color: var(--muted);
  cursor: pointer;
  font-size: 16px;
  line-height: 1;
}

.discuss-context-chip-remove:hover {
  color: #b91c1c;
  border-color: #fecaca;
  background: #fef2f2;
}

.discuss-context-hint {
  margin: 0;
  font-size: 11px;
  color: var(--muted);
  line-height: 1.4;
}

.discuss-messages-panel {
  position: relative;
  flex: 1 1 auto;
  min-height: 96px;
  min-width: 0;
  display: flex;
  flex-direction: column;
}

.discuss-messages-scroll-host {
  position: relative;
  flex: 1 1 auto;
  min-height: 0;
  min-width: 0;
  display: flex;
  flex-direction: column;
}

.discuss-messages-scroll-host > .discuss-messages-wrap {
  flex: 1 1 auto;
  min-height: 0;
}

.discuss-messages-wrap {
  position: relative;
  flex: 1 1 auto;
  min-height: 0;
  overflow-x: hidden;
  overflow-y: auto;
  overscroll-behavior: contain;
  -webkit-overflow-scrolling: touch;
  padding: 10px 12px 14px 14px;
}

.discuss-messages-scroll-chrome {
  position: sticky;
  top: -10px;
  z-index: 3;
  margin: -10px -12px 8px -14px;
  pointer-events: none;
  opacity: 0;
  transition: opacity 0.2s ease;
}

.discuss-messages-scroll-chrome .scroll-depth-indicator {
  top: 10px;
  right: 12px;
}

.discuss-messages-list {
  list-style: none;
  margin: 0;
  padding: 0;
  display: flex;
  flex-direction: column;
  gap: 10px;
}

.discuss-messages-empty {
  margin: 0;
  font-size: 12px;
  color: var(--muted);
}

.discuss-message {
  border: 1px solid #e2e8f0;
  border-radius: 10px;
  background: #fff;
  padding: 8px 10px;
}

.discuss-message--assistant {
  border-color: #ddd6fe;
  background: #f5f3ff;
}

.discuss-message--system {
  border-color: #fde68a;
  background: #fffbeb;
}

.discuss-message-head {
  font-size: 10px;
  font-weight: 700;
  color: var(--muted);
  margin-bottom: 4px;
}

.discuss-message-body {
  font-size: 12px;
  line-height: 1.45;
  white-space: pre-wrap;
  word-break: break-word;
}

.discuss-composer {
  flex: 0 0 auto;
  margin-top: auto;
  border-top: 1px solid var(--border);
  padding: 10px 12px 12px 14px;
  background: #fff;
  box-shadow: 0 -10px 24px rgba(15, 23, 42, 0.06);
  z-index: 1;
}

.discuss-composer-input {
  width: 100%;
  box-sizing: border-box;
  border: 1px solid var(--border);
  border-radius: 8px;
  padding: 8px 10px;
  font: inherit;
  font-size: 12px;
  line-height: 1.45;
  resize: vertical;
  min-height: 72px;
}

.discuss-composer-input:focus {
  outline: none;
  border-color: #6366f1;
  box-shadow: 0 0 0 3px rgba(99, 102, 241, 0.15);
}

.discuss-composer-actions {
  display: flex;
  flex-wrap: wrap;
  gap: 6px;
  margin-top: 8px;
}

.discuss-composer-btn {
  border: 1px solid var(--border);
  border-radius: 8px;
  background: #fff;
  color: var(--text);
  font-size: 12px;
  padding: 6px 10px;
  cursor: pointer;
}

.discuss-composer-btn:hover {
  border-color: #93c5fd;
  background: #f8fafc;
}

.discuss-composer-btn--primary {
  background: #4f46e5;
  border-color: #4f46e5;
  color: #fff;
}

.discuss-composer-btn--primary:hover {
  background: #4338ca;
  border-color: #4338ca;
}

.discuss-composer-btn--ghost {
  color: var(--muted);
}

.discuss-panel-toggle-btn.is-active {
  border-color: #6366f1;
  background: #eef2ff;
  color: #4338ca;
}

.header-tool-btn.discuss-panel-toggle-btn {
  position: relative;
}

.discuss-panel-context-badge {
  position: absolute;
  top: 2px;
  right: 2px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-width: 14px;
  height: 14px;
  padding: 0 3px;
  border-radius: 999px;
  background: #6366f1;
  color: #fff;
  font-size: 9px;
  font-weight: 700;
  line-height: 1;
}

@media (max-width: 960px) {
  .app.app-landing-view.app-landing-discuss-open {
    grid-template-columns: 1fr;
    grid-template-rows: auto minmax(0, 1fr) auto;
  }

  .app.app-landing-view.app-landing-discuss-open .app-landing-pane:not(.hidden) {
    grid-column: 1;
    grid-row: 2 / 3;
  }

  .app.app-landing-view.app-landing-discuss-open .workspace-pane,
  .app.home-view.app-home-discuss-open .workspace-pane {
    grid-column: 1;
    grid-row: 2 / 3;
    position: fixed;
    left: 0;
    right: 0;
    bottom: 0;
    z-index: 40;
    max-height: 42vh;
    border-top: 3px solid #6366f1;
    background: #fafbff;
    box-shadow: 0 -8px 32px rgba(15, 23, 42, 0.18);
  }

  .app.home-view.app-home-discuss-open {
    grid-template-columns: var(--sidebar-width) var(--sidebar-resize-bar-width) minmax(0, 1fr);
  }

  .app.home-view.app-home-discuss-open .agent-canvas-stack:not(.app-landing-stack) {
    grid-column: 3;
    grid-row: 2 / 3;
  }

  .workspace-body {
    flex-direction: column;
  }

  .discuss-aside {
    flex: 0 0 auto;
    width: 100%;
    max-width: none;
    min-width: 0;
    border-left: 0;
    border-top: 3px solid #6366f1;
    max-height: 38vh;
  }

  .discuss-aside-resizer {
    display: none;
  }
}

/* ── Node overview: type-specific custom fields form ─────────────────────── */

.node-type-fields-form {
  display: flex;
  flex-direction: column;
  gap: 14px;
  padding: 2px 0 4px;
}

.node-type-field-row {
  display: flex;
  flex-direction: column;
  gap: 5px;
}

.node-type-field-label {
  font-size: 12px;
  font-weight: 600;
  color: var(--muted, #64748b);
  letter-spacing: 0.01em;
  cursor: default;
}

.node-type-field-required {
  color: #ef4444;
  font-weight: 700;
}

.type-field-ctrl {
  width: 100%;
  padding: 7px 10px;
  font-size: 13px;
  line-height: 1.5;
  color: var(--text, #1e293b);
  background: var(--surface, #fff);
  border: 1px solid var(--border, #e2e8f0);
  border-radius: 7px;
  outline: none;
  transition: border-color 0.15s, box-shadow 0.15s;
  box-sizing: border-box;
}

.type-field-ctrl:focus {
  border-color: #6366f1;
  box-shadow: 0 0 0 3px rgba(99, 102, 241, 0.12);
}

.type-field-ctrl--textarea {
  resize: vertical;
  min-height: 70px;
  font-family: inherit;
}

.type-field-ctrl--select {
  cursor: pointer;
}

.type-field-ctrl--color {
  padding: 2px 6px;
  height: 34px;
  cursor: pointer;
}

.type-field-ctrl--boolean {
  display: flex;
  align-items: center;
  gap: 8px;
  font-size: 13px;
  color: var(--text, #1e293b);
  cursor: pointer;
  user-select: none;
}

.type-field-ctrl--boolean input[type="checkbox"] {
  width: 16px;
  height: 16px;
  cursor: pointer;
  accent-color: #6366f1;
}

.node-type-fields-footer {
  display: flex;
  justify-content: flex-end;
  padding-top: 4px;
  border-top: 1px solid var(--border, #e2e8f0);
  margin-top: 4px;
}

.node-type-fields-save-btn {
  padding: 7px 20px;
  font-size: 13px;
  font-weight: 600;
  color: #fff;
  background: #6366f1;
  border: none;
  border-radius: 7px;
  cursor: pointer;
  transition: background 0.15s, opacity 0.15s;
}

.node-type-fields-save-btn:hover {
  background: #4f46e5;
}

.node-type-fields-save-btn:disabled {
  opacity: 0.5;
  cursor: not-allowed;
}

/* Режим печати: только содержимое документа, без UI-хрома и боковых панелей */
.app-print-mode .app-header,
.app-print-mode .sidebar-shell,
.app-print-mode .sidebar-resize-bar,
.app-print-mode #discuss-aside,
.app-print-mode .discuss-aside,
.app-print-mode .discuss-aside-resizer,
.app-print-mode #context-buffer-band,
.app-print-mode #file-hub-band,
.app-print-mode .context-buffer-band,
.app-print-mode #workspace-path-header,
.app-print-mode .workspace-scroll-chrome-store,
.app-print-mode .workspace-scroll-chrome,
.app-print-mode .scroll-top-btn,
.app-print-mode .doc-head-block,
.app-print-mode .doc-props-aside,
.app-print-mode #yaml-form-panel,
.app-print-mode .doc-aside-toolbar,
.app-print-mode .doc-aside-fields-card,
.app-print-mode .doc-aside-panel-footer,
.app-print-mode #editor-custom-props-bar,
.app-print-mode #editor-title-bar,
.app-print-mode .editor-code-wrap,
.app-print-mode #editor-line-numbers,
.app-print-mode #content-loading,
.app-print-mode #preview-upload-block,
.app-print-mode #graph-view-block,
.app-print-mode #agent-system-type-inspector,
.app-print-mode .list-view-head,
.app-print-mode .external-list-section-head,
.app-print-mode .external-list-toolbar,
.app-print-mode .media-list-toolbar,
.app-print-mode .media-section-tree,
.app-print-mode .storage-slot-tree,
.app-print-mode .data-hub-list-view-split > .storage-slot-tree,
.app-print-mode .media-list-view-split > .media-section-tree,
.app-print-mode .external-list-view-split > .storage-slot-tree,
.app-print-mode .external-list-view-split > .media-section-tree,
.app-print-mode .node-navigation-hero,
.app-print-mode .node-entry-overview-hero-nav,
.app-print-mode .node-navigation-manifest-nav,
.app-print-mode .node-navigation-workspace-counters,
.app-print-mode .node-entry-overview-slot-counters,
.app-print-mode .node-entry-overview-memory-trail,
.app-print-mode .node-entry-overview-slot-panel,
.app-print-mode .node-entry-overview-search-bar,
.app-print-mode .node-entry-overview-cross-slot-search,
.app-print-mode .node-entry-overview-hub-top-slot-counters,
.app-print-mode .node-entry-overview-hub-main-slot-counters,
.app-print-mode .node-entry-overview-section-list,
.app-print-mode .node-entry-overview-attachments,
.app-print-mode .node-slot-strip,
.app-print-mode .node-navigation-hero-settings-slots,
.app-print-mode .node-navigation-block--subsections,
.app-print-mode .node-navigation-subsections,
.app-print-mode .node-navigation-memory-head,
.app-print-mode .node-navigation-section-search,
.app-print-mode .node-navigation-preview-note,
.app-print-mode .node-navigation-memory-notice,
.app-print-mode .node-navigation-title-template,
.app-print-mode .node-navigation-types,
.app-print-mode .node-overview-types,
.app-print-mode .node-overview-types-fold,
.app-print-mode .node-overview-action-btn,
.app-print-mode .node-entry-overview-copy-actions,
.app-print-mode .node-navigation-hub-rail,
.app-print-mode .node-navigation-hub-rail-resize-bar,
.app-print-mode .node-navigation-hub-rail-toggle,
.app-print-mode .node-comments,
.app-print-mode .external-file-comments,
.app-print-mode .media-file-comments,
.app-print-mode #node-config-panel,
.app-print-mode #topic-schema-panel,
.app-print-mode .editor-wysiwyg-wrap .toastui-editor-toolbar,
.app-print-mode .editor-wysiwyg-wrap .toastui-editor-defaultUI-toolbar,
.app-print-mode .editor-wysiwyg-wrap .toastui-editor-mode-switch,
.app-print-mode .editor-view-cluster,
.app-print-mode .workspace-links-menu-wrap,
.app-print-mode .workspace-print-btn,
.app-print-mode .workspace-reveal-folder-btn,
.app-print-mode .folder-browse-upload-btn,
.app-print-mode .folder-browse-delete-selected-btn,
.app-print-mode .folder-browse-file-rename-btn,
.app-print-mode .folder-browse-file-hero-actions,
.app-print-mode .workspace-refresh-btn,
.app-print-mode .app-footer,
.app-print-mode #app-footer {
  display: none !important;
}

.app-print-mode.app,
#app-root.app.app-print-mode {
  grid-template-columns: 1fr !important;
  height: auto !important;
  min-height: 0 !important;
  max-height: none !important;
  overflow: visible !important;
}

.app-print-mode .workspace-pane,
.app-print-mode .workspace-body,
.app-print-mode .workspace-body.is-print-layout,
.app-print-mode .content.doc-stack,
.app-print-mode #doc-body-grid,
.app-print-mode #doc-body-grid.is-print-layout,
.app-print-mode #doc-body-grid.has-props-aside,
.app-print-mode #doc-body-grid.is-print-layout.has-props-aside,
.app-print-mode .doc-body-main,
.app-print-mode .doc-slab-content,
.app-print-mode .doc-slab-main,
.app-print-mode .workspace-scroll-host,
.app-print-mode .editor-surface,
.app-print-mode #node-overview-block,
.app-print-mode #node-overview-content,
.app-print-mode .node-navigation-hub,
.app-print-mode .node-navigation-hub--split {
  width: 100% !important;
  max-width: none !important;
  min-width: 0 !important;
  flex: 1 1 auto !important;
  overflow: visible !important;
  display: block !important;
}

.app-print-mode .node-navigation-hub--split .node-navigation-hub-main {
  border-right: 0 !important;
  padding-right: 0 !important;
}

.app-print-mode .workspace-pane {
  grid-column: 1 / -1 !important;
  border: 0 !important;
  background: #fff !important;
  box-shadow: none !important;
}

.app-print-mode .workspace-body,
.app-print-mode .workspace-body.is-print-layout {
  display: block !important;
  padding: 0 !important;
  background: #fff !important;
}

.app-print-mode .workspace-body > .content.doc-stack {
  width: 100% !important;
  max-width: none !important;
  height: auto !important;
  min-height: 0 !important;
}

.app-print-mode .content.doc-stack {
  padding: 0 !important;
  gap: 0 !important;
  height: auto !important;
  overflow: visible !important;
  background: #fff !important;
}

.app-print-mode #doc-body-grid,
.app-print-mode #doc-body-grid.has-props-aside,
.app-print-mode #doc-body-grid.is-print-layout,
.app-print-mode #doc-body-grid.is-print-layout.has-props-aside {
  display: block !important;
  grid-template-columns: minmax(0, 1fr) !important;
  margin: 0 !important;
  border: 0 !important;
  background: #fff !important;
  box-shadow: none !important;
  overflow: visible !important;
}

.app-print-mode .doc-body-main,
.app-print-mode #doc-body-grid.has-props-aside .doc-body-main {
  border: 0 !important;
  border-right: 0 !important;
  background: #fff !important;
  box-shadow: none !important;
}

.app-print-mode .doc-slab-content,
.app-print-mode .doc-slab,
.app-print-mode .doc-slab-main {
  border: 0 !important;
  box-shadow: none !important;
  background: #fff !important;
  padding: 0 !important;
  margin: 0 !important;
}

.app-print-mode .media-list-view-split,
.app-print-mode .external-list-view-split,
.app-print-mode .data-hub-list-view-split {
  display: block !important;
}

.app-print-mode .external-list-view-main,
.app-print-mode .media-list-view-main,
.app-print-mode .data-hub-panel,
.app-print-mode .data-hub-panel-body,
.app-print-mode .external-list-view-split > :not(.storage-slot-tree):not(.media-section-tree),
.app-print-mode .media-list-view-split > :not(.media-section-tree),
.app-print-mode .data-hub-list-view-split > :not(.storage-slot-tree) {
  width: 100% !important;
  max-width: none !important;
}

.app-print-mode .doc-slab-content,
.app-print-mode .node-overview-content,
.app-print-mode .editor-surface,
.app-print-mode .file-content-preview,
.app-print-mode .list-view-content,
.app-print-mode .node-navigation-preview,
.app-print-mode .node-navigation-memory-body,
.app-print-mode .node-navigation-manifest,
.app-print-mode .node-entry-overview-manifest,
.app-print-mode .node-navigation-tabular,
.app-print-mode .node-navigation-todo-content,
.app-print-mode .editor-wysiwyg-wrap .toastui-editor-contents,
.app-print-mode .editor-wysiwyg-wrap .ProseMirror {
  max-width: none !important;
  overflow: visible !important;
  height: auto !important;
  min-height: 0 !important;
  background: #fff !important;
  color: #000 !important;
  border: 0 !important;
  box-shadow: none !important;
}

.app-print-mode .editor-wysiwyg-wrap .toastui-editor-defaultUI,
.app-print-mode .editor-wysiwyg-wrap .toastui-editor-main,
.app-print-mode .editor-wysiwyg-wrap .toastui-editor-main-container,
.app-print-mode .editor-wysiwyg-wrap .toastui-editor-ww-container {
  border: 0 !important;
  box-shadow: none !important;
  background: #fff !important;
}

.app-print-mode .node-navigation-memory-card,
.app-print-mode .node-navigation-manifest,
.app-print-mode .node-entry-overview-manifest {
  border: 0 !important;
  box-shadow: none !important;
  background: #fff !important;
  padding-left: 0 !important;
  padding-right: 0 !important;
}

.app-print-mode .node-entry-overview-tag {
  border-color: #cbd5e1 !important;
  background: #f8fafc !important;
  color: #0f172a !important;
  box-shadow: none !important;
}

.app-print-mode .file-content-preview blockquote,
.app-print-mode .toastui-editor-contents blockquote,
.app-print-mode .ProseMirror blockquote {
  border: 0 !important;
  border-left: 0 !important;
  background: transparent !important;
  padding-left: 0 !important;
  color: inherit !important;
}

.app-print-mode .file-content-preview pre,
.app-print-mode .file-content-preview pre:has(> code.hljs),
.app-print-mode .toastui-editor-contents pre,
.app-print-mode .ProseMirror pre,
.app-print-mode .file-content-preview .code-preview-with-line-numbers,
.app-print-mode .file-content-preview .code-preview-line-numbers {
  border: 0 !important;
  border-radius: 0 !important;
  background: transparent !important;
  box-shadow: none !important;
}

.app-print-mode .file-content-preview code,
.app-print-mode .file-content-preview pre code,
.app-print-mode .file-content-preview pre code.hljs,
.app-print-mode .toastui-editor-contents code,
.app-print-mode .ProseMirror code {
  border: 0 !important;
  border-radius: 0 !important;
  background: transparent !important;
  padding: 0 !important;
  color: inherit !important;
}

.app-print-mode .file-content-preview table,
.app-print-mode .toastui-editor-contents table,
.app-print-mode .ProseMirror table {
  border: 0 !important;
  border-collapse: collapse !important;
  background: transparent !important;
  box-shadow: none !important;
}

.app-print-mode .file-content-preview thead,
.app-print-mode .file-content-preview tbody tr,
.app-print-mode .file-content-preview tbody tr:nth-child(even),
.app-print-mode .file-content-preview tbody tr:hover,
.app-print-mode .toastui-editor-contents thead,
.app-print-mode .toastui-editor-contents tbody tr,
.app-print-mode .ProseMirror thead,
.app-print-mode .ProseMirror tbody tr {
  background: transparent !important;
}

.app-print-mode .file-content-preview th,
.app-print-mode .file-content-preview td,
.app-print-mode .toastui-editor-contents th,
.app-print-mode .toastui-editor-contents td,
.app-print-mode .ProseMirror th,
.app-print-mode .ProseMirror td {
  border: 0 !important;
  background: transparent !important;
  box-shadow: none !important;
}

.app-print-mode .file-content-preview mark,
.app-print-mode .file-content-preview .md-highlight,
.app-print-mode .toastui-editor-contents mark,
.app-print-mode .ProseMirror mark {
  background: transparent !important;
  color: inherit !important;
  padding: 0 !important;
  border-radius: 0 !important;
}

.app-print-mode .file-content-preview a,
.app-print-mode .toastui-editor-contents a,
.app-print-mode .ProseMirror a {
  color: inherit !important;
  text-decoration: underline !important;
}

.app-print-mode .file-content-preview hr,
.app-print-mode .toastui-editor-contents hr,
.app-print-mode .ProseMirror hr {
  border: 0 !important;
  border-top: 1px solid #000 !important;
  background: transparent !important;
}

.app-print-mode .file-content-preview img,
.app-print-mode .toastui-editor-contents img,
.app-print-mode .ProseMirror img {
  box-shadow: none !important;
  border: 0 !important;
}

@media print {
  @page {
    margin: 12mm;
  }

  .app-header,
  .app-footer,
  #app-footer,
  .sidebar-shell,
  .sidebar-resize-bar,
  #discuss-aside,
  .discuss-aside,
  .discuss-aside-resizer,
  #workspace-path-header,
  .workspace-scroll-chrome-store,
  .workspace-scroll-chrome,
  .scroll-top-btn,
  .doc-head-block,
  .doc-props-aside,
  #yaml-form-panel,
  .doc-aside-toolbar,
  .doc-aside-fields-card,
  .doc-aside-panel-footer,
  #editor-custom-props-bar,
  #editor-title-bar,
  .editor-code-wrap,
  #editor-line-numbers,
  .list-view-head,
  .external-list-section-head,
  .external-list-toolbar,
  .media-list-toolbar,
  .media-section-tree,
  .storage-slot-tree,
  .data-hub-list-view-split > .storage-slot-tree,
  .node-entry-overview-hero-nav,
  .node-navigation-manifest-nav,
  .node-navigation-workspace-counters,
  .node-entry-overview-slot-counters,
  .node-entry-overview-cross-slot-search,
  .node-entry-overview-hub-top-slot-counters,
  .node-entry-overview-hub-main-slot-counters,
  .node-navigation-hub-rail,
  .node-navigation-hub-rail-resize-bar,
  .node-navigation-hub-rail-toggle,
  .node-overview-action-btn,
  .external-file-comments,
  .media-file-comments,
  #node-config-panel,
  #topic-schema-panel,
  .editor-view-cluster,
  .workspace-print-btn,
  .workspace-links-menu-wrap,
  .workspace-reveal-folder-btn,
  .workspace-refresh-btn,
  .editor-wysiwyg-wrap .toastui-editor-toolbar,
  .editor-wysiwyg-wrap .toastui-editor-defaultUI-toolbar {
    display: none !important;
  }

  html,
  body,
  .app,
  #app-root.app {
    grid-template-columns: 1fr !important;
    height: auto !important;
    min-height: 0 !important;
    max-height: none !important;
    overflow: visible !important;
    background: #fff !important;
  }

  .workspace-pane {
    width: 100% !important;
    max-width: none !important;
    grid-column: 1 / -1 !important;
    border: 0 !important;
    background: #fff !important;
    overflow: visible !important;
  }

  .workspace-body,
  .workspace-body.is-print-layout {
    display: block !important;
    overflow: visible !important;
    background: #fff !important;
  }

  .workspace-body > .content.doc-stack {
    width: 100% !important;
    max-width: none !important;
  }

  .content.doc-stack {
    padding: 0 !important;
    gap: 0 !important;
    overflow: visible !important;
    background: #fff !important;
  }

  #doc-body-grid,
  #doc-body-grid.has-props-aside,
  #doc-body-grid.is-print-layout,
  #doc-body-grid.is-print-layout.has-props-aside,
  .doc-body-grid,
  .doc-body-grid.has-props-aside {
    display: block !important;
    grid-template-columns: minmax(0, 1fr) !important;
    margin: 0 !important;
    border: 0 !important;
    background: #fff !important;
    overflow: visible !important;
  }

  .doc-body-main,
  .doc-body-grid.has-props-aside .doc-body-main {
    border: 0 !important;
    border-right: 0 !important;
    background: #fff !important;
  }

  .doc-slab-content,
  .doc-slab-main,
  .editor-surface,
  .workspace-scroll-host,
  .file-content-preview,
  .node-overview-content,
  .editor-wysiwyg-wrap .toastui-editor-contents,
  .editor-wysiwyg-wrap .ProseMirror {
    overflow: visible !important;
    height: auto !important;
    max-height: none !important;
    background: #fff !important;
    color: #000 !important;
    border: 0 !important;
    box-shadow: none !important;
  }

  .media-list-view-split,
  .external-list-view-split,
  .data-hub-list-view-split {
    display: block !important;
  }

  .external-list-view-main,
  .media-list-view-main,
  .data-hub-panel,
  .data-hub-panel-body {
    width: 100% !important;
    max-width: none !important;
  }

  .file-content-preview blockquote,
  .toastui-editor-contents blockquote,
  .ProseMirror blockquote {
    border: 0 !important;
    background: transparent !important;
    padding-left: 0 !important;
    color: inherit !important;
  }

  .file-content-preview pre,
  .file-content-preview pre:has(> code.hljs),
  .toastui-editor-contents pre,
  .ProseMirror pre {
    border: 0 !important;
    border-radius: 0 !important;
    background: transparent !important;
  }

  .file-content-preview code,
  .file-content-preview pre code,
  .file-content-preview pre code.hljs,
  .toastui-editor-contents code,
  .ProseMirror code {
    border: 0 !important;
    border-radius: 0 !important;
    background: transparent !important;
    padding: 0 !important;
    color: inherit !important;
  }

  .file-content-preview table,
  .toastui-editor-contents table,
  .ProseMirror table,
  .file-content-preview th,
  .file-content-preview td,
  .toastui-editor-contents th,
  .toastui-editor-contents td,
  .ProseMirror th,
  .ProseMirror td {
    border: 0 !important;
    background: transparent !important;
  }

  .file-content-preview thead,
  .file-content-preview tbody tr,
  .file-content-preview tbody tr:nth-child(even),
  .toastui-editor-contents thead,
  .toastui-editor-contents tbody tr,
  .ProseMirror thead,
  .ProseMirror tbody tr {
    background: transparent !important;
  }

  .file-content-preview mark,
  .file-content-preview .md-highlight,
  .toastui-editor-contents mark,
  .ProseMirror mark {
    background: transparent !important;
    color: inherit !important;
    padding: 0 !important;
  }

  .file-content-preview a,
  .toastui-editor-contents a,
  .ProseMirror a {
    color: inherit !important;
  }

  .file-content-preview img,
  .toastui-editor-contents img,
  .ProseMirror img {
    box-shadow: none !important;
    border: 0 !important;
    max-width: 100% !important;
  }
}

.section-schema-footer {
  justify-content: space-between;
}

.section-schema-save-btn {
  border: 1px solid #86efac;
  border-radius: 7px;
  background: #ecfdf5;
  color: #166534;
  font: inherit;
  font-size: 11px;
  font-weight: 600;
  padding: 5px 12px;
  cursor: pointer;
}

.section-schema-save-btn.is-dirty {
  border-color: #4ade80;
  background: #dcfce7;
  box-shadow: 0 0 0 2px rgba(74, 222, 128, 0.18);
}

.section-schema-save-btn:disabled {
  opacity: 0.65;
  cursor: wait;
}

.node-entry-overview-section-schema {
  margin-top: 4px;
  padding: 14px 16px 16px;
  border: 1px solid rgba(148, 163, 184, 0.28);
  border-radius: 14px;
  background: rgba(255, 255, 255, 0.82);
  box-shadow: 0 8px 24px rgba(15, 23, 42, 0.04);
}

.section-schema-meta {
  margin: 6px 0 0;
  font-size: 11px;
  line-height: 1.45;
  color: var(--muted);
}

.section-schema-meta-label {
  font-weight: 600;
  color: #64748b;
}

.section-schema-path {
  font-family: ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace;
  font-size: 11px;
}

/* ── 404 Not Found ── */
.not-found-standalone {
  margin: 0;
  min-height: 100vh;
  background: #f8fafc;
}

.not-found-page,
.not-found-pane {
  position: relative;
  min-height: 100%;
  display: flex;
  align-items: center;
  justify-content: center;
  padding: 32px 20px 48px;
  box-sizing: border-box;
  overflow: hidden;
}

.not-found-standalone .not-found-page {
  min-height: 100vh;
}

.not-found-pane {
  align-items: center;
  justify-content: center;
  padding: 0;
}

.not-found-bg {
  position: absolute;
  inset: 0;
  pointer-events: none;
  background:
    radial-gradient(ellipse 70% 55% at 12% 8%, rgba(99, 102, 241, 0.22), transparent 60%),
    radial-gradient(ellipse 65% 50% at 88% 18%, rgba(59, 130, 246, 0.18), transparent 55%),
    radial-gradient(ellipse 55% 45% at 72% 88%, rgba(167, 139, 250, 0.16), transparent 50%),
    radial-gradient(ellipse 40% 35% at 28% 72%, rgba(14, 165, 233, 0.1), transparent 45%),
    linear-gradient(160deg, #eef2ff 0%, #f8fafc 42%, #f0f9ff 100%);
}

.not-found-bg::before {
  content: "";
  position: absolute;
  inset: 0;
  opacity: 0.45;
  background-image:
    linear-gradient(rgba(148, 163, 184, 0.12) 1px, transparent 1px),
    linear-gradient(90deg, rgba(148, 163, 184, 0.12) 1px, transparent 1px);
  background-size: 28px 28px;
  mask-image: radial-gradient(ellipse 85% 75% at 50% 45%, #000 20%, transparent 100%);
}

.not-found-orbit {
  position: absolute;
  border-radius: 999px;
  border: 1px dashed rgba(99, 102, 241, 0.18);
  pointer-events: none;
  animation: not-found-orbit-spin 28s linear infinite;
}

.not-found-orbit--one {
  width: min(520px, 90vw);
  height: min(520px, 90vw);
  top: 8%;
  right: -8%;
}

.not-found-orbit--two {
  width: min(360px, 70vw);
  height: min(360px, 70vw);
  bottom: 4%;
  left: -6%;
  animation-direction: reverse;
  animation-duration: 36s;
}

@keyframes not-found-orbit-spin {
  from { transform: rotate(0deg); }
  to { transform: rotate(360deg); }
}

.not-found-inner {
  position: relative;
  z-index: 1;
  width: min(640px, 100%);
  display: flex;
  flex-direction: column;
  align-items: center;
  text-align: center;
  gap: 14px;
}

.not-found-visual {
  position: relative;
  width: min(280px, 72vw);
  height: 120px;
  margin-bottom: 4px;
}

.not-found-code {
  position: absolute;
  inset: 0;
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: clamp(4.5rem, 16vw, 7rem);
  font-weight: 900;
  letter-spacing: -0.06em;
  line-height: 1;
  background: linear-gradient(135deg, rgba(30, 58, 138, 0.14) 0%, rgba(67, 56, 202, 0.1) 45%, rgba(37, 99, 235, 0.08) 100%);
  -webkit-background-clip: text;
  background-clip: text;
  color: transparent;
  user-select: none;
}

.not-found-mascot {
  position: absolute;
  left: 50%;
  bottom: 0;
  transform: translateX(-50%);
  width: 56px;
  height: 56px;
  animation: not-found-mascot-float 4s ease-in-out infinite;
}

.not-found-mascot--lost .not-found-mascot-face {
  width: 56px;
  height: 56px;
  border-radius: 18px;
  background: linear-gradient(180deg, #ffffff 0%, #eef2ff 100%);
  border: 2px solid rgba(99, 102, 241, 0.25);
  box-shadow: 0 10px 28px rgba(59, 130, 246, 0.18);
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  justify-content: center;
  column-gap: 10px;
  row-gap: 4px;
  padding-top: 14px;
  box-sizing: border-box;
  position: relative;
}

.not-found-mascot-antenna {
  position: absolute;
  top: -12px;
  left: 50%;
  width: 2px;
  height: 12px;
  margin-left: -1px;
  background: #6366f1;
  border-radius: 999px;
}

.not-found-mascot-antenna::after {
  content: "";
  position: absolute;
  top: -5px;
  left: 50%;
  width: 8px;
  height: 8px;
  margin-left: -4px;
  border-radius: 999px;
  background: #818cf8;
  box-shadow: 0 0 10px rgba(99, 102, 241, 0.55);
  animation: not-found-antenna-blink 2.4s ease-in-out infinite;
}

.not-found-mascot-eye {
  width: 8px;
  height: 8px;
  border-radius: 999px;
  background: #312e81;
}

.not-found-mascot-mouth {
  flex-basis: 100%;
  width: 14px;
  height: 8px;
  border: 2px solid #6366f1;
  border-top: 0;
  border-radius: 0 0 10px 10px;
}

.not-found-mascot--lost .not-found-mascot-eye:first-child {
  transform: translateY(-1px);
}

.not-found-mascot--lost .not-found-mascot-eye:last-child {
  transform: translate(2px, 1px);
}

@keyframes not-found-mascot-float {
  0%, 100% { transform: translateX(-50%) translateY(0); }
  50% { transform: translateX(-50%) translateY(-6px); }
}

@keyframes not-found-antenna-blink {
  0%, 100% { opacity: 1; }
  50% { opacity: 0.35; }
}

.not-found-eyebrow {
  margin: 0;
  font-size: 12px;
  font-weight: 600;
  letter-spacing: 0.08em;
  text-transform: uppercase;
  color: #6366f1;
}

.not-found-title {
  margin: 0;
  font-size: clamp(1.6rem, 4vw, 2.25rem);
  font-weight: 800;
  letter-spacing: -0.03em;
  line-height: 1.1;
  color: #0f172a;
}

.not-found-lead {
  margin: 0;
  max-width: 520px;
  font-size: 15px;
  line-height: 1.65;
  color: #475569;
}

.not-found-path-card {
  width: 100%;
  margin-top: 6px;
  padding: 14px 16px;
  border-radius: 14px;
  border: 1px solid rgba(255, 255, 255, 0.85);
  background: rgba(255, 255, 255, 0.78);
  backdrop-filter: blur(10px);
  box-shadow:
    0 1px 2px rgba(15, 23, 42, 0.04),
    0 12px 32px rgba(59, 130, 246, 0.08);
  text-align: left;
}

.not-found-path-label {
  display: block;
  margin-bottom: 8px;
  font-size: 11px;
  font-weight: 600;
  letter-spacing: 0.06em;
  text-transform: uppercase;
  color: #64748b;
}

.not-found-path {
  display: block;
  overflow-x: auto;
  white-space: pre-wrap;
  word-break: break-all;
  font-family: ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace;
  font-size: 13px;
  line-height: 1.5;
  color: #1e293b;
}

.not-found-actions {
  display: flex;
  flex-wrap: wrap;
  gap: 10px;
  justify-content: center;
  margin-top: 8px;
}

.not-found-btn {
  appearance: none;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-height: 42px;
  padding: 0 18px;
  border-radius: 12px;
  border: 1px solid #cbd5e1;
  background: rgba(255, 255, 255, 0.92);
  color: #0f172a;
  font: inherit;
  font-size: 14px;
  font-weight: 600;
  text-decoration: none;
  cursor: pointer;
  transition: transform 0.15s ease, box-shadow 0.15s ease, border-color 0.15s ease;
}

.not-found-btn:hover {
  transform: translateY(-1px);
  border-color: #94a3b8;
  box-shadow: 0 8px 20px rgba(15, 23, 42, 0.08);
}

.not-found-btn--primary {
  border-color: transparent;
  background: linear-gradient(135deg, #4338ca 0%, #2563eb 100%);
  color: #fff;
  box-shadow: 0 10px 24px rgba(59, 130, 246, 0.28);
}

.not-found-btn--primary:hover {
  border-color: transparent;
  box-shadow: 0 14px 28px rgba(59, 130, 246, 0.34);
}

.not-found-footnote {
  margin: 10px 0 0;
  font-size: 13px;
  font-style: italic;
  color: #94a3b8;
}

@media (max-width: 640px) {
  .not-found-actions {
    width: 100%;
    flex-direction: column;
  }

  .not-found-btn {
    width: 100%;
  }
}

/* ── Status pages: maintenance (503) + shared with 404 layout ── */
.status-standalone {
  margin: 0;
  min-height: 100vh;
  background: #fffbeb;
}

.status-standalone--maintenance {
  background: #fffbeb;
}

.status-page,
.maintenance-pane {
  position: relative;
  min-height: 100%;
  display: flex;
  align-items: center;
  justify-content: center;
  padding: 32px 20px 48px;
  box-sizing: border-box;
  overflow: hidden;
}

.status-standalone .status-page {
  min-height: 100vh;
}

.maintenance-pane {
  align-items: center;
  justify-content: center;
  padding: 0;
}

.status-bg {
  position: absolute;
  inset: 0;
  pointer-events: none;
  background:
    radial-gradient(ellipse 70% 55% at 12% 8%, rgba(245, 158, 11, 0.22), transparent 60%),
    radial-gradient(ellipse 65% 50% at 88% 18%, rgba(251, 191, 36, 0.18), transparent 55%),
    radial-gradient(ellipse 55% 45% at 72% 88%, rgba(249, 115, 22, 0.14), transparent 50%),
    radial-gradient(ellipse 40% 35% at 28% 72%, rgba(234, 179, 8, 0.1), transparent 45%),
    linear-gradient(160deg, #fff7ed 0%, #fffbeb 42%, #fefce8 100%);
}

.status-bg::before {
  content: "";
  position: absolute;
  inset: 0;
  opacity: 0.45;
  background-image:
    linear-gradient(rgba(217, 119, 6, 0.1) 1px, transparent 1px),
    linear-gradient(90deg, rgba(217, 119, 6, 0.1) 1px, transparent 1px);
  background-size: 28px 28px;
  mask-image: radial-gradient(ellipse 85% 75% at 50% 45%, #000 20%, transparent 100%);
}

.status-orbit {
  position: absolute;
  border-radius: 999px;
  border: 1px dashed rgba(245, 158, 11, 0.22);
  pointer-events: none;
  animation: not-found-orbit-spin 28s linear infinite;
}

.status-orbit--one {
  width: min(520px, 90vw);
  height: min(520px, 90vw);
  top: 8%;
  right: -8%;
}

.status-orbit--two {
  width: min(360px, 70vw);
  height: min(360px, 70vw);
  bottom: 4%;
  left: -6%;
  animation-direction: reverse;
  animation-duration: 36s;
}

.status-inner {
  position: relative;
  z-index: 1;
  width: min(640px, 100%);
  display: flex;
  flex-direction: column;
  align-items: center;
  text-align: center;
  gap: 14px;
}

.status-visual {
  position: relative;
  width: min(280px, 72vw);
  height: 120px;
  margin-bottom: 4px;
}

.status-code {
  position: absolute;
  inset: 0;
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: clamp(4.5rem, 16vw, 7rem);
  font-weight: 900;
  letter-spacing: -0.06em;
  line-height: 1;
  background: linear-gradient(135deg, rgba(180, 83, 9, 0.16) 0%, rgba(217, 119, 6, 0.12) 45%, rgba(234, 179, 8, 0.1) 100%);
  -webkit-background-clip: text;
  background-clip: text;
  color: transparent;
  user-select: none;
}

.status-mascot {
  position: absolute;
  left: 50%;
  bottom: 0;
  transform: translateX(-50%);
  width: 56px;
  height: 56px;
  animation: not-found-mascot-float 4s ease-in-out infinite;
}

.status-mascot--service .status-mascot-face {
  width: 56px;
  height: 56px;
  border-radius: 18px;
  background: linear-gradient(180deg, #fde68a 0%, #f59e0b 100%);
  border: 2px solid rgba(180, 83, 9, 0.28);
  box-shadow: 0 10px 24px rgba(180, 83, 9, 0.18);
  position: relative;
}

.status-mascot-antenna {
  position: absolute;
  top: -14px;
  left: 50%;
  width: 2px;
  height: 12px;
  margin-left: -1px;
  background: #b45309;
  border-radius: 999px;
}

.status-mascot-antenna::after {
  content: "";
  position: absolute;
  top: -5px;
  left: 50%;
  width: 8px;
  height: 8px;
  margin-left: -4px;
  border-radius: 999px;
  background: #fbbf24;
  box-shadow: 0 0 10px rgba(251, 191, 36, 0.8);
  animation: not-found-antenna-blink 2.4s ease-in-out infinite;
}

.status-mascot-eye {
  position: absolute;
  top: 18px;
  width: 8px;
  height: 8px;
  border-radius: 999px;
  background: #78350f;
}

.status-mascot-eye:first-of-type {
  left: 14px;
}

.status-mascot-eye:last-of-type {
  right: 14px;
}

.status-mascot-mouth {
  position: absolute;
  left: 50%;
  bottom: 12px;
  width: 16px;
  height: 4px;
  margin-left: -8px;
  border-radius: 999px;
  background: rgba(120, 53, 15, 0.55);
}

.status-mascot-badge {
  position: absolute;
  right: -8px;
  bottom: -4px;
  width: 22px;
  height: 22px;
  display: grid;
  place-items: center;
  border-radius: 999px;
  background: #fff7ed;
  border: 1px solid rgba(217, 119, 6, 0.35);
  font-size: 12px;
  box-shadow: 0 6px 14px rgba(180, 83, 9, 0.16);
}

.status-eyebrow {
  margin: 0;
  font-size: 12px;
  font-weight: 700;
  letter-spacing: 0.08em;
  text-transform: uppercase;
  color: #b45309;
}

.status-title {
  margin: 0;
  font-size: clamp(1.6rem, 4vw, 2.2rem);
  line-height: 1.15;
  color: #7c2d12;
}

.status-lead {
  margin: 0;
  max-width: 52ch;
  font-size: 15px;
  line-height: 1.6;
  color: #92400e;
}

.status-actions {
  display: flex;
  flex-wrap: wrap;
  gap: 10px;
  justify-content: center;
  margin-top: 6px;
}

.status-btn {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-height: 40px;
  padding: 0 16px;
  border-radius: 999px;
  border: 1px solid rgba(217, 119, 6, 0.28);
  background: rgba(255, 255, 255, 0.92);
  color: #9a3412;
  font: inherit;
  font-size: 14px;
  font-weight: 600;
  text-decoration: none;
  cursor: pointer;
  transition: transform 0.15s ease, box-shadow 0.15s ease, border-color 0.15s ease;
}

.status-btn:hover {
  transform: translateY(-1px);
  border-color: rgba(217, 119, 6, 0.45);
  box-shadow: 0 10px 24px rgba(180, 83, 9, 0.12);
}

.status-btn--primary {
  border-color: transparent;
  background: linear-gradient(135deg, #f59e0b 0%, #ea580c 100%);
  color: #fff7ed;
  box-shadow: 0 12px 28px rgba(234, 88, 12, 0.28);
}

.status-btn--primary:hover {
  border-color: transparent;
  box-shadow: 0 14px 28px rgba(234, 88, 12, 0.34);
}

.status-footnote {
  margin: 10px 0 0;
  font-size: 13px;
  font-style: italic;
  color: #d97706;
}

.app.maintenance-view {
  grid-template-columns: 1fr;
  grid-template-rows: 1fr;
  overflow: hidden;
}

.app.maintenance-view .app-header,
.app.maintenance-view .app-footer,
.app.maintenance-view #app-footer,
.app.maintenance-view .content-search-wrap,
.app.maintenance-view .sidebar-shell,
.app.maintenance-view .sidebar,
.app.maintenance-view .sidebar-resize-bar,
.app.maintenance-view .workspace-pane {
  display: none !important;
}

.app.maintenance-view .agent-canvas-pane:not(#maintenance-pane) {
  display: none !important;
}

.app.maintenance-view .agent-canvas-stack:not(.app-landing-stack) {
  display: flex;
  grid-row: 1 / -1;
  grid-column: 1 / -1;
  min-height: 100%;
}

.app.maintenance-view #maintenance-pane.agent-canvas-pane:not(.hidden) {
  display: flex;
  grid-row: auto;
  grid-column: auto;
  flex: 1 1 auto;
  min-height: 0;
}

@media (max-width: 640px) {
  .status-actions {
    width: 100%;
    flex-direction: column;
  }

  .status-btn {
    width: 100%;
  }
}

/* ── Mobile viewport blocker (≤900px) ── */
.app-mobile-blocker {
  display: none;
}

@media (max-width: 900px) {
  .app-mobile-blocker {
    position: fixed;
    inset: 0;
    z-index: 10150;
    display: flex;
    align-items: center;
    justify-content: center;
    padding: 28px 18px 40px;
    box-sizing: border-box;
    overflow: hidden;
    touch-action: none;
  }

  html:has(#app-mobile-blocker),
  body:has(#app-mobile-blocker) {
    overflow: hidden !important;
  }

  .app-mobile-blocker-bg {
    background:
      radial-gradient(ellipse 70% 55% at 10% 12%, rgba(236, 72, 153, 0.2), transparent 58%),
      radial-gradient(ellipse 65% 50% at 90% 16%, rgba(59, 130, 246, 0.18), transparent 55%),
      radial-gradient(ellipse 55% 45% at 70% 88%, rgba(167, 139, 250, 0.16), transparent 50%),
      linear-gradient(160deg, #fdf2f8 0%, #f8fafc 42%, #eff6ff 100%);
  }

  .app-mobile-blocker-code {
    position: absolute;
    inset: 0;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: clamp(4rem, 18vw, 6.5rem);
    line-height: 1;
    filter: grayscale(0.15) saturate(1.1);
    opacity: 0.92;
    user-select: none;
    animation: app-mobile-blocker-phone-wobble 3.2s ease-in-out infinite;
  }

  .app-mobile-blocker-mascot {
    z-index: 1;
  }

  .app-mobile-blocker-mascot-badge {
    position: absolute;
    right: -10px;
    bottom: -4px;
    font-size: 22px;
    line-height: 1;
    transform: rotate(12deg);
    filter: drop-shadow(0 4px 8px rgba(15, 23, 42, 0.12));
    animation: app-mobile-blocker-badge-pop 2.8s ease-in-out infinite;
  }

  .app-mobile-blocker-eyebrow {
    color: #db2777;
  }

  .app-mobile-blocker-emoji {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    justify-content: center;
    gap: 10px 14px;
    margin-top: 4px;
    font-size: clamp(1.35rem, 5vw, 1.75rem);
    line-height: 1;
  }

  .app-mobile-blocker-emoji span {
    display: inline-block;
    animation: app-mobile-blocker-emoji-bounce 2.4s ease-in-out infinite;
  }

  .app-mobile-blocker-emoji span:nth-child(2) {
    animation-delay: 0.12s;
  }

  .app-mobile-blocker-emoji span:nth-child(3) {
    animation-delay: 0.24s;
  }

  .app-mobile-blocker-emoji span:nth-child(4) {
    animation-delay: 0.36s;
  }

  .app-mobile-blocker-emoji span:nth-child(5) {
    animation-delay: 0.48s;
  }

  .app-mobile-blocker-emoji span:nth-child(6) {
    animation-delay: 0.6s;
  }

  .app-mobile-blocker-tip {
    margin: 2px 0 0;
    max-width: 420px;
    font-size: 14px;
    line-height: 1.5;
    color: #64748b;
  }

  .app-mobile-blocker-footnote {
    color: #be185d;
  }
}

@keyframes app-mobile-blocker-phone-wobble {
  0%,
  100% {
    transform: rotate(-6deg) scale(1);
  }
  50% {
    transform: rotate(6deg) scale(1.04);
  }
}

@keyframes app-mobile-blocker-badge-pop {
  0%,
  100% {
    transform: rotate(12deg) scale(1);
  }
  50% {
    transform: rotate(-8deg) scale(1.12);
  }
}

@keyframes app-mobile-blocker-emoji-bounce {
  0%,
  100% {
    transform: translateY(0);
  }
  40% {
    transform: translateY(-7px);
  }
}

@media (max-width: 900px) and (prefers-reduced-motion: reduce) {
  .app-mobile-blocker-code,
  .app-mobile-blocker-mascot-badge,
  .app-mobile-blocker-emoji span,
  .app-mobile-blocker .not-found-mascot {
    animation: none !important;
  }
}

@media print {
  .app-mobile-blocker {
    display: none !important;
  }
}

/* ── Classic Windows TreeView sidebar ─────────────────────────────────────── */

.sidebar-slab-menu {
  --menu-win-text: #000000;
  --menu-win-muted: #606060;
  --menu-win-line: #808080;
  --menu-win-hover: #e5f3ff;
  --menu-win-active-bg: #316ac5;
  --menu-win-active-text: #ffffff;
  --menu-win-row-h: 24px;
  --menu-win-font: 12px;
  --menu-win-indent: 16px;
  --menu-win-toggle-w: 12px;
  --menu-win-toggle-gap: 4px;
  --menu-win-toggle-slot: calc(var(--menu-win-toggle-w) + var(--menu-win-toggle-gap));
  --menu-win-sort-w: 18px;
  --menu-win-branch-x: calc(var(--menu-win-toggle-w) / 2);
  --menu-win-branch-x-sort: calc(var(--menu-win-sort-w) + var(--menu-win-branch-x));
  --menu-win-branch-w: calc(var(--menu-win-toggle-slot) - var(--menu-win-branch-x));
  --menu-win-label-pad-left: 4px;
  --menu-sidebar-pad-x: 12px;
  --menu-system-file-dot-left: 8px;
  --menu-system-file-dot-size: 8px;
  --menu-system-file-dot-gap: 6px;
}

.sidebar-slab-menu .sidebar-menu-before-tree,
.sidebar-tree-band-panel .sidebar-menu-before-tree {
  padding-left: 0;
  padding-right: 0;
}

.sidebar-slab-menu .menu {
  padding: 0 var(--menu-sidebar-pad-x) 8px;
  background: #ffffff;
  font-family: Tahoma, "Segoe UI", "MS Sans Serif", sans-serif;
}

.sidebar-slab-menu .menu-agent-pane:not(.is-menu-view-flat) {
  font-size: var(--menu-win-font);
}

/* Rows */
.sidebar-slab-menu .menu-agent-pane:not(.is-menu-view-flat) .menu-folder,
.sidebar-slab-menu .menu-agent-pane:not(.is-menu-view-flat) .menu-item,
.sidebar-slab-menu .menu-agent-pane:not(.is-menu-view-flat) .menu-section-row .menu-section-title {
  font-size: var(--menu-win-font);
  line-height: 1.25;
  color: var(--menu-win-text);
  border: none;
  border-radius: 0;
  margin-bottom: 0;
  min-height: var(--menu-win-row-h);
  background: transparent;
  padding: 1px 4px 1px var(--menu-win-label-pad-left);
  display: flex;
  align-items: center;
  box-sizing: border-box;
}

.sidebar-slab-menu .menu-agent-pane:not(.is-menu-view-flat) .menu-folder::before,
.sidebar-slab-menu .menu-agent-pane:not(.is-menu-view-flat) .menu-item:not(.system-file-item)::before {
  content: none;
  display: none;
}

.sidebar-slab-menu .menu-agent-pane:not(.is-menu-view-flat) .menu-folder.has-menu-tree-status,
.sidebar-slab-menu .menu-agent-pane:not(.is-menu-view-flat) .menu-item.has-menu-tree-status {
  padding-left: var(--menu-win-label-pad-left);
}

.sidebar-slab-menu .menu-agent-pane:not(.is-menu-view-flat) .menu-section-row--empty .menu-section-title,
.sidebar-slab-menu .menu-agent-pane:not(.is-menu-view-flat) .menu-section-title--empty {
  color: var(--menu-win-muted);
  padding-left: var(--menu-win-label-pad-left);
}

.sidebar-slab-menu
  .menu-agent-pane:not(.is-menu-view-flat)
  .menu-section-row--empty
  .menu-section-title::before {
  content: none;
  display: none;
}

/* Top-level categories — bold like Windows tree roots */
.sidebar-slab-menu
  .menu-agent-pane:not(.is-menu-view-flat)
  .tree-children[data-sort-folder="."]
  > .menu-section
  > .menu-folder-row
  .menu-folder-name,
.sidebar-slab-menu
  .menu-agent-pane:not(.is-menu-view-flat)
  .tree-children[data-sort-folder="."]
  > .menu-section
  > .menu-section-row
  .menu-section-name,
.sidebar-slab-menu .menu-agent-pane:not(.is-menu-view-flat) .menu-workspace-head .menu-folder-name,
.sidebar-slab-menu .menu-agent-pane:not(.is-menu-view-flat) .menu-service-title,
.sidebar-slab-menu .menu-agent-pane:not(.is-menu-view-flat) .menu-shared-title,
.sidebar-slab-menu .menu-agent-pane:not(.is-menu-view-flat) .menu-agent-system-title {
  font-weight: 700;
}

/* Nested indent — ровно один шаг на уровень */
.sidebar-slab-menu .menu-agent-pane:not(.is-menu-view-flat) .tree-children {
  margin-left: 0;
  margin-top: 0;
  padding-left: var(--menu-win-indent);
  border-left: none;
}

.sidebar-slab-menu .menu-agent-pane:not(.is-menu-view-flat) .tree-children .tree-children {
  padding-left: var(--menu-win-indent);
}

.sidebar-slab-menu .menu-agent-pane:not(.is-menu-view-flat) .tree-children.menu-container-body,
.sidebar-slab-menu .menu-agent-pane:not(.is-menu-view-flat) .menu-container-section > .tree-children {
  margin-left: 0;
  padding-left: 0;
  border-left: none;
}

.sidebar-slab-menu .menu-agent-pane:not(.is-menu-view-flat) .tree-children.menu-workspace-body,
.sidebar-slab-menu .menu-agent-pane:not(.is-menu-view-flat) .menu-workspace-root-section > .tree-children {
  margin-left: 0;
  padding-left: 0;
  border-left: none;
}

.sidebar-slab-menu .menu-agent-pane:not(.is-menu-view-flat) .tree-children.menu-nested-container-body,
.sidebar-slab-menu .menu-agent-pane:not(.is-menu-view-flat) .tree-children.menu-service-body,
.sidebar-slab-menu .menu-agent-pane:not(.is-menu-view-flat) .tree-children.menu-shared-body,
.sidebar-slab-menu .menu-agent-pane:not(.is-menu-view-flat) .menu-git-repo-body,
.sidebar-slab-menu .menu-agent-pane:not(.is-menu-view-flat) .tree-children.menu-agent-system-body,
.sidebar-slab-menu .menu-agent-pane:not(.is-menu-view-flat) .tree-children.menu-agent-system-domain-body {
  margin-left: 0;
  padding-left: 0;
  border-left: none;
}

/* Dotted branch lines (веточки) */
.sidebar-slab-menu .menu-agent-pane:not(.is-menu-view-flat) .menu-tree-toggle-spacer {
  box-sizing: border-box;
  width: var(--menu-win-toggle-slot);
  height: var(--menu-win-toggle-w);
  flex: 0 0 var(--menu-win-toggle-slot);
}

.sidebar-slab-menu .menu-agent-pane:not(.is-menu-view-flat) .menu-item-row,
.sidebar-slab-menu .menu-agent-pane:not(.is-menu-view-flat) .system-file-row {
  gap: 1px;
  margin-bottom: 0;
  display: flex;
  align-items: center;
}

.sidebar-slab-menu .menu-agent-pane:not(.is-menu-view-flat) .menu-tree-branch > .menu-folder-row,
.sidebar-slab-menu .menu-agent-pane:not(.is-menu-view-flat) .menu-tree-branch > .menu-section-row,
.sidebar-slab-menu .menu-agent-pane:not(.is-menu-view-flat) .menu-item-row.menu-tree-branch,
.sidebar-slab-menu .menu-agent-pane:not(.is-menu-view-flat) .system-file-row.menu-tree-branch {
  position: relative;
  z-index: 1;
}

.sidebar-slab-menu .menu-agent-pane:not(.is-menu-view-flat) .menu-tree-branch > .menu-folder-row::before,
.sidebar-slab-menu .menu-agent-pane:not(.is-menu-view-flat) .menu-tree-branch > .menu-section-row::before,
.sidebar-slab-menu .menu-agent-pane:not(.is-menu-view-flat) .menu-item-row.menu-tree-branch::before,
.sidebar-slab-menu .menu-agent-pane:not(.is-menu-view-flat) .system-file-row.menu-tree-branch::before {
  content: "";
  position: absolute;
  left: var(--menu-win-branch-x);
  top: 0;
  bottom: 0;
  border-left: 1px dotted var(--menu-win-line);
  pointer-events: none;
  z-index: 0;
}

.sidebar-slab-menu .menu-agent-pane:not(.is-menu-view-flat) .menu-tree-branch-last > .menu-folder-row::before,
.sidebar-slab-menu .menu-agent-pane:not(.is-menu-view-flat) .menu-tree-branch-last > .menu-section-row::before,
.sidebar-slab-menu .menu-agent-pane:not(.is-menu-view-flat) .menu-item-row.menu-tree-branch-last::before,
.sidebar-slab-menu .menu-agent-pane:not(.is-menu-view-flat) .system-file-row.menu-tree-branch-last::before {
  bottom: 50%;
}

.sidebar-slab-menu .menu-agent-pane:not(.is-menu-view-flat) .menu-tree-branch > .menu-folder-row::after,
.sidebar-slab-menu .menu-agent-pane:not(.is-menu-view-flat) .menu-tree-branch > .menu-section-row::after,
.sidebar-slab-menu .menu-agent-pane:not(.is-menu-view-flat) .menu-item-row.menu-tree-branch::after,
.sidebar-slab-menu .menu-agent-pane:not(.is-menu-view-flat) .system-file-row.menu-tree-branch::after {
  content: "";
  position: absolute;
  left: var(--menu-win-branch-x);
  top: 50%;
  width: var(--menu-win-branch-w);
  border-top: 1px dotted var(--menu-win-line);
  pointer-events: none;
  z-index: 0;
}

/* Веточки с учётом ⠿-ручки сортировки слева от toggle */
.sidebar-slab-menu
  .menu-agent-pane:not(.is-menu-view-flat)
  .menu-tree-branch
  > .menu-folder-row.menu-sort-row::before,
.sidebar-slab-menu
  .menu-agent-pane:not(.is-menu-view-flat)
  .menu-tree-branch
  > .menu-section-row.menu-sort-row::before,
.sidebar-slab-menu .menu-agent-pane:not(.is-menu-view-flat) .menu-item-row.menu-tree-branch.menu-sort-row::before,
.sidebar-slab-menu
  .menu-agent-pane:not(.is-menu-view-flat)
  .system-file-row.menu-tree-branch.menu-sort-row::before {
  left: var(--menu-win-branch-x-sort);
}

.sidebar-slab-menu
  .menu-agent-pane:not(.is-menu-view-flat)
  .menu-tree-branch
  > .menu-folder-row.menu-sort-row::after,
.sidebar-slab-menu
  .menu-agent-pane:not(.is-menu-view-flat)
  .menu-tree-branch
  > .menu-section-row.menu-sort-row::after,
.sidebar-slab-menu .menu-agent-pane:not(.is-menu-view-flat) .menu-item-row.menu-tree-branch.menu-sort-row::after,
.sidebar-slab-menu
  .menu-agent-pane:not(.is-menu-view-flat)
  .system-file-row.menu-tree-branch.menu-sort-row::after {
  left: var(--menu-win-branch-x-sort);
}

/* +/- toggle boxes */
.sidebar-slab-menu .menu-agent-pane:not(.is-menu-view-flat) .folder-toggle-btn {
  box-sizing: border-box;
  width: var(--menu-win-toggle-w);
  height: var(--menu-win-toggle-w);
  min-width: var(--menu-win-toggle-w);
  flex: 0 0 var(--menu-win-toggle-w);
  margin-right: var(--menu-win-toggle-gap);
  padding: 0;
  border: 1px solid var(--menu-win-line);
  border-radius: 0;
  background: #ffffff;
  color: #000000;
  font-family: Tahoma, "Segoe UI", sans-serif;
  font-size: 9px;
  font-weight: 700;
  line-height: 1;
  display: inline-flex;
  align-items: center;
  justify-content: center;
}

.sidebar-slab-menu .menu-agent-pane:not(.is-menu-view-flat) .folder-toggle-btn:hover:not(:disabled) {
  background: #ffffff;
  color: #000000;
}

.sidebar-slab-menu .menu-agent-pane:not(.is-menu-view-flat) .folder-toggle-btn:disabled {
  opacity: 0.35;
  border-color: #c0c0c0;
}

.sidebar-slab-menu .menu-agent-pane:not(.is-menu-view-flat) .folder-toggle-btn--lock-open {
  opacity: 0.55;
}

.sidebar-slab-menu .menu-agent-pane:not(.is-menu-view-flat) .menu-tree-type-icon {
  width: 16px;
  height: 16px;
  min-width: 16px;
  min-height: 16px;
  background-size: 16px 16px;
  background-position: center center;
  align-self: center;
}

.sidebar-slab-menu .menu-agent-pane:not(.is-menu-view-flat) .menu-tree-type-icon--agent {
  width: 16px;
  min-width: 16px;
  height: 16px;
  min-height: 16px;
  background-size: 16px 16px;
}

.sidebar-slab-menu .menu-agent-pane:not(.is-menu-view-flat) .menu-tree-type-icon--container {
  width: 14px;
  min-width: 14px;
  height: 16px;
  min-height: 16px;
  font-size: 10px;
  line-height: 1;
}

.sidebar-slab-menu .menu-agent-pane:not(.is-menu-view-flat) .menu-folder-name,
.sidebar-slab-menu .menu-agent-pane:not(.is-menu-view-flat) .menu-item-name {
  align-items: center;
  min-height: 16px;
  gap: 4px;
}

.sidebar-slab-menu .menu-agent-pane:not(.is-menu-view-flat) .menu-tree-status {
  width: 14px;
  height: 16px;
  font-size: 10px;
  align-self: center;
}

.sidebar-slab-menu .menu-agent-pane:not(.is-menu-view-flat) .menu-tree-id-badge {
  min-width: 16px;
  height: 16px;
  margin-right: 1px;
  align-self: center;
}

.sidebar-slab-menu .menu-agent-pane:not(.is-menu-view-flat) .menu-tree-title-text {
  line-height: 16px;
}

/* Classic folder / document icons — inline only (см. ::before выше) */
.sidebar-slab-menu .menu-agent-pane:not(.is-menu-view-flat) .menu-folder.menu-folder-agent-root::before,
.sidebar-slab-menu .menu-agent-pane:not(.is-menu-view-flat) .menu-folder.menu-folder-container-root::before {
  content: none;
  display: none;
}

/* Row layout */
.sidebar-slab-menu .menu-agent-pane:not(.is-menu-view-flat) .menu-sort-handle {
  width: var(--menu-win-sort-w);
  height: var(--menu-win-row-h);
  flex: 0 0 var(--menu-win-sort-w);
  margin: 0;
  padding: 0;
  border-radius: 0;
}

.sidebar-slab-menu .menu-agent-pane:not(.is-menu-view-flat) .menu-folder-row,
.sidebar-slab-menu .menu-agent-pane:not(.is-menu-view-flat) .menu-item-row,
.sidebar-slab-menu .menu-agent-pane:not(.is-menu-view-flat) .menu-section-row,
.sidebar-slab-menu .menu-agent-pane:not(.is-menu-view-flat) .system-file-row {
  gap: 0;
  margin-bottom: 0;
  align-items: center;
}

.sidebar-slab-menu .menu-agent-pane:not(.is-menu-view-flat) .menu-section-row .folder-toggle-btn {
  flex: 0 0 var(--menu-win-toggle-w);
}

.sidebar-slab-menu .menu-agent-pane:not(.is-menu-view-flat) .menu-section {
  margin-bottom: 0;
}

/* Hover */
.sidebar-slab-menu .menu-agent-pane:not(.is-menu-view-flat) .menu-folder:hover,
.sidebar-slab-menu .menu-agent-pane:not(.is-menu-view-flat) .menu-item:hover,
.sidebar-slab-menu .menu-agent-pane:not(.is-menu-view-flat) .menu-section-row .menu-section-title:hover {
  background: var(--menu-win-hover);
  color: var(--menu-win-text);
}

.sidebar-slab-menu .menu-agent-pane:not(.is-menu-view-flat) .menu-folder.has-node-color:hover,
.sidebar-slab-menu .menu-agent-pane:not(.is-menu-view-flat) .menu-item.has-node-color:hover {
  background: var(--menu-win-hover);
  color: var(--menu-win-text);
}

/* Selection — Windows XP blue */
.sidebar-slab-menu .menu-agent-pane:not(.is-menu-view-flat) .menu-item.active,
.sidebar-slab-menu .menu-agent-pane:not(.is-menu-view-flat) .menu-folder.active {
  background: var(--menu-win-active-bg);
  color: var(--menu-win-active-text);
  font-weight: 400;
}

.sidebar-slab-menu .menu-agent-pane:not(.is-menu-view-flat) .menu-item.system-file-item {
  flex: 1;
  min-width: 0;
  min-height: var(--menu-win-row-h);
  padding: 1px 4px 1px
    calc(
      var(--menu-system-file-dot-left) + var(--menu-system-file-dot-size) +
        var(--menu-system-file-dot-gap)
    );
  font-size: var(--menu-win-font);
  cursor: grab;
}

.sidebar-slab-menu .menu-agent-pane:not(.is-menu-view-flat) .menu-item.system-file-item::before {
  left: var(--menu-system-file-dot-left);
  top: 50%;
  transform: translateY(-50%);
  width: var(--menu-system-file-dot-size);
  height: var(--menu-system-file-dot-size);
  border-radius: 999px;
}

.sidebar-slab-menu .menu-agent-pane:not(.is-menu-view-flat) .menu-item.active.system-file-item::before {
  filter: brightness(0) invert(1);
  opacity: 0.95;
}

.sidebar-slab-menu .menu-agent-pane:not(.is-menu-view-flat) .menu-item.has-node-color.active,
.sidebar-slab-menu .menu-agent-pane:not(.is-menu-view-flat) .menu-folder.has-node-color.active {
  background: var(--menu-win-active-bg);
  color: var(--menu-win-active-text);
}

.sidebar-slab-menu .menu-workspace-head.menu-folder-row,
.sidebar-slab-menu .menu-service-head.menu-folder-row,
.sidebar-slab-menu .menu-shared-head.menu-folder-row {
  gap: 0;
  margin-bottom: 0;
}

/* Colored zone blocks — WS / agent-kit / shared / system */
.sidebar-slab-menu .menu-workspace-section {
  margin: 0 0 6px;
  padding: 2px 4px 2px;
  border: 1px solid #86efac;
  border-radius: 8px;
  background: #f0fdf4;
  box-sizing: border-box;
}

.sidebar-slab-menu .menu-workspace-head .menu-folder.menu-folder-agent-root,
.sidebar-slab-menu .menu-workspace-head .menu-folder-name {
  color: #166534;
  font-weight: 700;
}

.sidebar-slab-menu .menu-service-section {
  margin: 0 0 6px;
  padding: 2px 4px 2px;
  border: 1px solid #fde68a;
  border-radius: 8px;
  background: #fffbeb;
  box-sizing: border-box;
}

.sidebar-slab-menu .menu-service-head .menu-folder.menu-folder-service-root,
.sidebar-slab-menu .menu-service-title {
  color: #92400e;
  font-weight: 700;
}

.sidebar-slab-menu .menu-service-body {
  margin-left: 0;
  padding-left: 0;
  border-left: none;
}

.sidebar-slab-menu .menu-shared-section {
  margin: 0 0 6px;
  padding: 2px 4px 2px;
  border: 1px solid #bfdbfe;
  border-radius: 8px;
  background: #eff6ff;
  box-sizing: border-box;
}

.sidebar-slab-menu .menu-shared-head .menu-folder.menu-folder-shared-root,
.sidebar-slab-menu .menu-shared-title {
  color: #1e40af;
  font-weight: 700;
}

.sidebar-slab.sidebar-slab-menu-channels-band {
  flex-shrink: 0;
  padding: 0;
  border-bottom: none;
  box-sizing: border-box;
  overflow: visible;
}

.sidebar-slab.sidebar-slab-menu-channels-band:not(.is-collapsed) {
  display: flex;
  flex-direction: column;
  flex: 0 1 auto;
  min-height: 0;
  overflow: hidden;
}

.sidebar.is-channels-focus {
  overflow: hidden;
  display: flex;
  flex-direction: column;
}

.sidebar.is-channels-focus .sidebar-slab-agent {
  flex-shrink: 0;
}

.sidebar.is-channels-focus .sidebar-slab-menu-tree-band {
  display: none !important;
}

.sidebar.is-channels-focus .sidebar-slab-menu {
  display: flex !important;
  flex: 0 0 auto;
  flex-direction: column;
  min-height: 0;
  overflow: visible;
  border-bottom: 0;
}

.sidebar.is-channels-focus .sidebar-slab-menu .menu-scroll-shell,
.sidebar.is-channels-focus .sidebar-slab-menu .menu-view-ghost-strip {
  display: none !important;
}

.sidebar.is-channels-focus .sidebar-slab-menu > .menu-sidebar-bottom > :not(#menu-agent-stats) {
  display: none !important;
}

.sidebar.is-channels-focus .sidebar-slab-menu > .menu-sidebar-bottom > #menu-agent-stats:not(.hidden) {
  display: block;
  flex-shrink: 0;
}

.sidebar.is-channels-focus .sidebar-slab-menu > .menu-sidebar-bottom {
  flex: 0 0 auto;
  margin-top: 0;
  border-top: 0;
  background: transparent;
  box-shadow: none;
}

.sidebar.is-channels-focus .sidebar-slab.sidebar-slab-menu-channels-band:not(.is-collapsed) {
  flex: 1 1 0;
  min-height: 0;
  max-height: none;
  overflow: hidden;
  border-bottom: none !important;
  box-shadow: none;
}

.sidebar.is-channels-focus .menu-awn-channels-band-body {
  flex: 1 1 0;
  min-height: 0;
  overflow: hidden;
  border-bottom: none !important;
  box-shadow: none;
  outline: none;
  padding-bottom: 8px;
  background: #fff1f2;
}

.sidebar-slab.sidebar-slab-menu-channels-band:not(.is-collapsed) .menu-awn-channels-band-head {
  flex-shrink: 0;
}

.menu-awn-channels-band-head {
  position: relative;
  display: flex;
  align-items: center;
  overflow: visible;
  background: linear-gradient(135deg, #7f1d1d 0%, #dc2626 52%, #fca5a5 100%);
}

.menu-awn-channels-help-popover {
  position: absolute;
  top: calc(100% + 6px);
  right: 8px;
  z-index: 140;
  width: min(320px, calc(100vw - 24px));
  max-height: min(70vh, 420px);
  overflow-y: auto;
  overscroll-behavior: contain;
  padding: 10px 12px;
  border: 1px solid rgba(252, 165, 165, 0.85);
  border-radius: 10px;
  background: rgba(255, 241, 242, 0.98);
  box-shadow: 0 12px 28px rgba(127, 29, 29, 0.22);
}

.menu-awn-channels-help-popover.hidden {
  display: none;
}

.menu-awn-channels-help-popover.menu-awn-channels-thesis {
  margin: 0;
  max-height: min(70vh, 420px);
  background: rgba(255, 241, 242, 0.98);
}

.menu-awn-channels-band-head .sidebar-accent-band-toggle--channels {
  flex: 1 1 auto;
  min-width: 0;
  margin-bottom: 0;
  background: transparent;
  color: #fef2f2;
  align-items: center;
  padding: 10px 12px;
  font-size: 12px;
  line-height: 1.35;
  font-weight: 600;
  min-height: 0;
  height: auto;
}

.menu-awn-channels-band-head .sidebar-accent-band-toggle--channels .sidebar-accent-band-toggle-main {
  align-items: center;
  gap: 6px;
}

.menu-awn-channels-band-head .sidebar-accent-band-toggle--channels:hover {
  filter: brightness(1.04);
}

.menu-awn-channels-band-head .sidebar-accent-band-toggle--channels:focus-visible {
  outline: 2px solid rgba(255, 255, 255, 0.88);
  outline-offset: -2px;
}

.menu-awn-channels-band-head .sidebar-accent-band-chevron {
  border-right-color: rgba(255, 255, 255, 0.95);
  border-bottom-color: rgba(255, 255, 255, 0.95);
}

.menu-awn-channels-band-title.sidebar-accent-band-title {
  flex: 1 1 auto;
  min-width: 0;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
  line-height: 1.35;
  font-size: inherit;
  font-weight: inherit;
  text-align: left;
  color: #fef2f2;
}

.menu-awn-channels-band-head-actions {
  flex: 0 0 auto;
  display: inline-flex;
  align-items: center;
  gap: 4px;
  padding: 7px 8px 7px 0;
  overflow: visible;
  pointer-events: auto;
}

.menu-awn-channels-band-head-actions .menu-refresh-btn,
.menu-awn-channels-band-head-actions .menu-band-help-btn,
.menu-awn-channels-band-head-actions .menu-band-search-btn {
  position: relative;
  z-index: 1;
  width: 22px;
  height: 22px;
  min-height: 22px;
  flex: 0 0 22px;
  border: 1px solid rgba(185, 28, 28, 0.32);
  border-radius: 4px;
  background: rgba(255, 255, 255, 0.42);
  color: #991b1b;
  font-size: 11px;
  line-height: 1;
  padding: 0;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  pointer-events: auto;
  cursor: pointer;
  transition: background-color 0.15s ease, border-color 0.15s ease, color 0.15s ease;
}

.menu-awn-channels-band-head-actions .menu-band-help-btn {
  font-size: 12px;
  font-weight: 700;
}

.menu-awn-channels-band-head-actions .menu-refresh-btn:hover:not(:disabled),
.menu-awn-channels-band-head-actions .menu-band-help-btn:hover:not(:disabled),
.menu-awn-channels-band-head-actions .menu-band-search-btn:hover:not(:disabled) {
  border-color: rgba(185, 28, 28, 0.48);
  background: rgba(255, 255, 255, 0.72);
  color: #dc2626;
}

.menu-awn-channels-band-head-actions .menu-band-search-btn.is-active {
  border-color: rgba(220, 38, 38, 0.55);
  background: #fee2e2;
  color: #991b1b;
}

.menu-awn-channels-band-head-actions .menu-refresh-btn:focus,
.menu-awn-channels-band-head-actions .menu-band-help-btn:focus,
.menu-awn-channels-band-head-actions .menu-band-search-btn:focus {
  outline: none;
}

.menu-awn-channels-band-head-actions .menu-refresh-btn:focus-visible,
.menu-awn-channels-band-head-actions .menu-band-help-btn:focus-visible,
.menu-awn-channels-band-head-actions .menu-band-search-btn:focus-visible {
  box-shadow: 0 0 0 2px rgba(220, 38, 38, 0.32);
}

.menu-awn-channels-band-head-actions .menu-refresh-btn svg,
.menu-awn-channels-band-head-actions .menu-band-search-btn svg {
  width: 13px;
  height: 13px;
  display: block;
  flex-shrink: 0;
  fill: none;
  stroke: currentColor;
  stroke-width: 2;
  stroke-linecap: round;
  stroke-linejoin: round;
  transform-origin: 50% 50%;
}

.menu-awn-channels-band-body {
  display: flex;
  flex-direction: column;
  gap: 3px;
  padding: 8px 10px 10px;
  box-sizing: border-box;
  flex: 1 1 auto;
  min-height: 0;
  overflow: hidden;
  background: linear-gradient(
    180deg,
    rgba(252, 165, 165, 0.38) 0%,
    rgba(254, 242, 242, 0.92) 22%,
    rgba(255, 241, 242, 0.98) 100%
  );
  border-bottom: none;
  box-shadow: none;
}

.menu-awn-channels-toolbar,
.menu-awn-channels-toolbar-row--search,
.menu-awn-channels-flow-strip,
.menu-awn-channels-footer-caption {
  flex-shrink: 0;
}

.menu-awn-channels-band-body .menu-awn-channels-flow-strip {
  display: none; /* временно: поток Входящие/Обсуждения/Исходящие в сайдбаре */
  align-items: center;
  justify-content: center;
  gap: 4px;
  flex: 0 0 auto;
  margin: 0 0 0.35rem;
  padding: 6px 8px;
  background: linear-gradient(180deg, rgba(254, 226, 226, 0.45) 0%, rgba(255, 255, 255, 0) 100%);
  box-sizing: border-box;
}

.menu-awn-channels-band-body .menu-awn-channels-flow-strip .menu-view-ghost-btn {
  border: 0;
  background: transparent;
  color: #9f1239;
  font: inherit;
  font-size: 10px;
  font-weight: 600;
  line-height: 1.2;
  padding: 3px 6px;
  border-radius: 6px;
  cursor: pointer;
  white-space: nowrap;
}

.menu-awn-channels-band-body .menu-awn-channels-flow-strip .menu-view-ghost-btn:hover {
  color: #991b1b;
  background: rgba(255, 255, 255, 0.55);
}

.menu-awn-channels-band-body .menu-awn-channels-flow-strip .menu-view-ghost-btn.is-active {
  color: #7f1d1d;
  background: rgba(255, 255, 255, 0.78);
  box-shadow: inset 0 -2px 0 #dc2626;
}

.menu-awn-channels-thesis {
  margin: 0 0 0.3rem;
  padding: 0.35rem 0.45rem;
  font-size: 0.6rem;
  line-height: 1.35;
  color: #7f1d1d;
  border: 1px solid rgba(248, 113, 113, 0.45);
  border-radius: 6px;
  background: rgba(255, 255, 255, 0.58);
  box-sizing: border-box;
  max-height: min(16vh, 112px);
  overflow-y: auto;
  overscroll-behavior: contain;
}

.menu-awn-channels-thesis-p {
  margin: 0 0 0.28rem;
}

.menu-awn-channels-thesis-p:last-child {
  margin-bottom: 0;
}

.menu-awn-channels-thesis-p--lead {
  margin-bottom: 0.25rem;
}

.menu-awn-channels-thesis-list {
  margin: 0 0 0.28rem;
  padding-left: 1rem;
  display: flex;
  flex-direction: column;
  gap: 0.12rem;
}

.menu-awn-channels-thesis-list li {
  padding: 0;
}

.menu-awn-channels-thesis code {
  font-size: 0.575rem;
  padding: 0 0.15rem;
  border-radius: 3px;
  background: rgba(254, 226, 226, 0.65);
  color: #991b1b;
}

.menu-awn-channels-band-body[hidden],
.menu-awn-channels-band.is-collapsed > .menu-awn-channels-band-body {
  display: none !important;
}

.menu-awn-channels-band.is-collapsed .menu-awn-channels-band-head {
  border-bottom: 0;
}

.menu-awn-channels-scope-caption {
  margin: 0 0 0.35rem;
  padding: 0.35rem 0.45rem;
  font-size: 0.6875rem;
  line-height: 1.35;
  font-weight: 600;
  color: #991b1b;
  text-align: center;
  border: 1px solid rgba(248, 113, 113, 0.55);
  border-radius: 6px;
  background: rgba(255, 255, 255, 0.72);
  box-sizing: border-box;
}

.menu-awn-channels-toolbar {
  display: flex;
  flex-direction: column;
  gap: 0.35rem;
  margin: 0;
}

.menu-awn-channels-toolbar-row {
  display: flex;
  flex-wrap: nowrap;
  align-items: stretch;
  gap: 0.35rem;
}

.menu-awn-channels-index-row {
  flex: 1 1 auto;
  min-width: 0;
  margin: 0;
  gap: 0.35rem;
  display: flex;
  align-items: center;
  min-height: 30px;
}

.menu-awn-channels-index-row .node-navigation-workspace-counter-topic-index {
  flex: 1 1 auto;
  min-width: 0;
  min-height: 30px;
  height: 30px;
  padding: 0 8px;
  border-color: rgba(252, 165, 165, 0.85);
  background: rgba(255, 255, 255, 0.92);
  color: #991b1b;
  font-size: 11px;
  line-height: 1.15;
  box-sizing: border-box;
  display: flex;
  align-items: center;
  justify-content: center;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
}

.menu-awn-channels-index-row .node-navigation-workspace-counter-topic-index.is-available {
  border-color: rgba(220, 38, 38, 0.45);
  background: rgba(254, 242, 242, 0.95);
  color: #991b1b;
}

.menu-awn-channels-index-row .node-navigation-workspace-counter-topic-index.is-generated:hover,
.menu-awn-channels-index-row .node-navigation-workspace-counter-topic-index.is-available:hover {
  border-color: rgba(220, 38, 38, 0.62);
  background: #fee2e2;
  color: #7f1d1d;
}

.menu-awn-channels-index-row .node-navigation-workspace-counter-topic-index-refresh {
  display: flex;
  align-items: center;
  justify-content: center;
  flex-shrink: 0;
  flex: 0 0 30px;
  width: 30px;
  min-width: 30px;
  height: 30px;
  min-height: 30px;
  padding: 0;
  font-size: 12px;
  border-color: rgba(252, 165, 165, 0.85);
  background: rgba(255, 255, 255, 0.92);
  color: #b91c1c;
  box-sizing: border-box;
}

.menu-awn-channels-index-row .node-navigation-workspace-counter-topic-index-refresh:hover:not(:disabled) {
  border-color: rgba(220, 38, 38, 0.55);
  background: #fee2e2;
  color: #991b1b;
}

.menu-awn-channels-toolbar-row--search {
  margin: 0;
}

.menu-awn-channels-toolbar:not(.is-search-open) .menu-awn-channels-toolbar-row--search {
  display: none;
}

.menu-awn-channels-search-wrap {
  width: 100%;
  min-width: 0;
  margin: 0;
}

.menu-awn-channels-search-wrap .menu-search-bar {
  min-height: 32px;
  height: 32px;
  padding: 0 10px;
  border-color: rgba(252, 165, 165, 0.85);
  background: rgba(255, 255, 255, 0.92);
  border-radius: 6px;
  box-sizing: border-box;
}

.menu-awn-channels-search-wrap .menu-search-bar:focus-within {
  border-color: #dc2626;
  box-shadow: 0 0 0 2px rgba(220, 38, 38, 0.14);
}

.menu-awn-channels-toolbar-row.menu-awn-channels-actions-row {
  align-items: center;
}

.menu-awn-channels-actions-row {
  align-items: center;
  gap: 0.35rem;
  min-height: 30px;
  width: 100%;
  min-width: 0;
  box-sizing: border-box;
}

.menu-awn-channels-actions-row .menu-awn-channels-create-btn.menu-static-action-btn {
  margin: 0;
  flex-shrink: 0;
  align-self: center;
}

.menu-awn-channels-create-btn--icon {
  flex: 0 0 30px;
  width: 30px;
  min-width: 30px;
  margin: 0;
  padding: 0;
  min-height: 30px;
  height: 30px;
  box-sizing: border-box;
  display: grid;
  place-items: center;
  font-size: 11px;
  font-weight: 700;
  line-height: 1;
  padding-bottom: 1px;
  border-color: rgba(248, 113, 113, 0.55);
  background: rgba(255, 255, 255, 0.88);
  color: #991b1b;
}

.menu-awn-channels-create-btn--icon:hover:not(:disabled) {
  border-color: rgba(220, 38, 38, 0.55);
  background: #fee2e2;
  color: #7f1d1d;
}

.menu-awn-channels-list.menu-awn-databases-stores {
  margin: 0;
  padding: 0;
  gap: 2px;
  flex: 1 1 auto;
  min-height: 2rem;
  max-height: none;
  overflow-y: auto;
  overflow-x: hidden;
  overscroll-behavior: contain;
}

.menu-awn-channels-band-body .menu-awn-databases-store.menu-awn-channels-item {
  border-color: rgba(252, 165, 165, 0.45);
  background: rgba(255, 255, 255, 0.72);
}

.menu-awn-channels-band-body .menu-awn-databases-store.menu-awn-channels-item:hover {
  background: rgba(255, 255, 255, 0.95);
  border-color: rgba(220, 38, 38, 0.38);
}

.menu-awn-channels-band-body .menu-awn-databases-store-meta {
  margin-left: auto;
  padding-left: 0.25rem;
  justify-content: flex-end;
  align-self: center;
  min-width: 0;
}

.menu-awn-channels-band-body .menu-awn-databases-store-badge.menu-awn-channels-key-btn {
  box-sizing: border-box;
  height: 1.125rem;
  margin: 0;
  padding: 0 0.4rem;
  border: 1px dashed rgba(248, 113, 113, 0.45);
  border-radius: 0.25rem;
  font-size: 0.625rem;
  font-weight: 600;
  line-height: 1;
  font-family: inherit;
  cursor: pointer;
  color: #9f1239;
  background: rgba(254, 242, 242, 0.85);
  max-width: 6.5rem;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.menu-awn-channels-band-body .menu-awn-databases-store-badge.menu-awn-channels-key-btn:hover,
.menu-awn-channels-band-body .menu-awn-databases-store-badge.menu-awn-channels-key-btn:focus-visible {
  color: #7f1d1d;
  background: #fee2e2;
  border-color: rgba(220, 38, 38, 0.5);
  border-style: solid;
  outline: none;
}

.menu-awn-channels-band-body .menu-awn-databases-store.menu-awn-channels-item--pending {
  cursor: default;
  background: rgba(255, 255, 255, 0.32);
  border-color: rgba(252, 165, 165, 0.22);
  color: #9f1239;
  box-shadow: none;
}

.menu-awn-channels-band-body .menu-awn-databases-store.menu-awn-channels-item--pending:hover {
  background: rgba(255, 255, 255, 0.48);
  border-color: rgba(252, 165, 165, 0.32);
}

.menu-awn-channels-item--pending .menu-awn-databases-store-kind-wrap {
  opacity: 0.42;
  filter: grayscale(0.2);
}

.menu-awn-channels-item--pending .menu-awn-databases-store-name {
  color: #9f1239;
  font-weight: 500;
}

.menu-awn-channels-band-body .menu-awn-databases-store.menu-awn-channels-item:not(.menu-awn-channels-item--pending) {
  cursor: pointer;
}

.menu-awn-channels-band-body .menu-awn-databases-store-badge.menu-awn-channels-slug-badge {
  box-sizing: border-box;
  height: 1.125rem;
  margin: 0;
  padding: 0 0.4rem;
  border: 1px solid rgba(248, 113, 113, 0.45);
  border-radius: 0.25rem;
  font-size: 0.625rem;
  font-weight: 600;
  line-height: 1;
  color: #991b1b;
  background: rgba(254, 242, 242, 0.9);
  max-width: 6.5rem;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.menu-awn-channels-band-body .menu-awn-databases-store.menu-awn-channels-item.is-active {
  background: #fecaca;
  color: #7f1d1d;
  box-shadow: inset 0 0 0 1px rgba(220, 38, 38, 0.45);
}

.menu-awn-channels-band-body .menu-awn-databases-store.menu-awn-channels-item.is-active .menu-awn-databases-store-name {
  font-weight: 600;
}

.menu-awn-channels-group-divider,
.menu-awn-channels-user-divider {
  margin: 0.35rem 0 0.1rem;
  padding: 0.4rem 0.5rem 0.1rem;
  list-style: none;
  font-size: 0.6875rem;
  font-weight: 600;
  color: #991b1b;
  border-top: 1px solid rgba(252, 165, 165, 0.45);
  pointer-events: none;
  user-select: none;
}

.menu-awn-channels-group-divider--first,
.menu-awn-channels-user-divider.menu-awn-channels-group-divider--first {
  margin-top: 0.1rem;
  padding-top: 0.15rem;
  border-top: none;
}

.awn-channels-create-presets-group-label {
  margin: 0.35rem 0 0.05rem;
  padding: 0.35rem 0.35rem 0.05rem;
  font-size: 0.6875rem;
  font-weight: 600;
  line-height: 1.25;
  color: #991b1b;
  border-top: 1px solid rgba(252, 165, 165, 0.45);
  pointer-events: none;
  user-select: none;
}

.awn-channels-create-presets-group-label--first {
  margin-top: 0;
  padding-top: 0.1rem;
  border-top: none;
}

.menu-awn-channels-empty {
  list-style: none;
  margin: 0;
  padding: 0.5rem 0.35rem;
  font-size: 0.6875rem;
  line-height: 1.35;
  color: #9f1239;
  text-align: center;
}

.awn-channels-create-presets-wrap {
  margin: 0.35rem 0 0.5rem;
  display: flex;
  flex-direction: column;
  gap: 0.35rem;
}

.awn-channels-create-presets-search-input {
  width: 100%;
  box-sizing: border-box;
  margin: 0;
}

.awn-channels-create-presets {
  display: flex;
  flex-direction: column;
  gap: 4px;
  max-height: 18rem;
  overflow-y: auto;
  overscroll-behavior: contain;
  margin: 0;
  padding: 0.35rem 0.4rem;
  border: 1px solid rgba(252, 165, 165, 0.35);
  border-radius: 8px;
  background: rgba(255, 255, 255, 0.45);
  box-sizing: border-box;
}

.awn-channels-create-presets-empty {
  margin: 0;
  padding: 0.5rem 0.35rem;
  font-size: 0.75rem;
  line-height: 1.35;
  color: #9f1239;
  text-align: center;
}

.awn-channels-create-preset-btn {
  display: flex;
  flex-direction: row;
  align-items: center;
  gap: 0.5rem;
  width: 100%;
  box-sizing: border-box;
  margin: 0;
  padding: 0.45rem 0.55rem;
  min-height: 2.85rem;
  max-height: 2.85rem;
  overflow: hidden;
  text-align: left;
  line-height: 1.35;
  font: inherit;
  font-size: 0.6875rem;
  border: 1px solid rgba(248, 113, 113, 0.32);
  border-radius: 6px;
  background: rgba(255, 255, 255, 0.92);
  color: #7f1d1d;
  cursor: pointer;
}

.awn-channels-create-preset-btn:hover {
  border-color: rgba(220, 38, 38, 0.45);
  background: #fff5f5;
}

.awn-channels-create-preset-btn-icon {
  flex: 0 0 18px;
  line-height: 1;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 18px;
  height: 18px;
  margin-top: 0;
  color: #b91c1c;
}

.awn-channels-create-preset-btn-body {
  flex: 1 1 auto;
  min-width: 0;
  display: flex;
  flex-direction: column;
  align-items: stretch;
  gap: 0.18rem;
}

.awn-channels-create-preset-btn-title-row {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 0.5rem;
  min-width: 0;
  width: 100%;
}

.awn-channel-preset-icon--svg,
.awn-channels-create-preset-btn-icon.awn-channel-preset-icon--svg {
  width: 14px;
  height: 14px;
}

.awn-channel-preset-icon-svg {
  display: block;
}

.menu-awn-databases-store-kind.menu-awn-databases-store-kind--channel.awn-channel-preset-icon--svg {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 14px;
  min-width: 14px;
  font-size: 0;
  line-height: 0;
}

.menu-awn-databases-store-kind.menu-awn-databases-store-kind--channel.awn-channel-preset-icon--emoji {
  font-size: 0.75rem;
  line-height: 1;
}

.menu-awn-channels-band-body .menu-awn-databases-store-kind.menu-awn-databases-store-kind--channel.awn-channel-preset-icon--svg {
  color: #b91c1c;
}

.menu-awn-channels-band-body
  .menu-awn-databases-store-kind.menu-awn-databases-store-kind--channel-custom.awn-channel-preset-icon--svg {
  color: #9f1239;
  opacity: 0.92;
}

.menu-awn-channels-band-body .menu-awn-databases-store-kind .awn-channel-preset-icon-svg {
  stroke-width: 2.15;
}

.awn-channels-create-preset-btn-name {
  flex: 1 1 auto;
  min-width: 0;
  font-weight: 600;
  color: #7f1d1d;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.awn-channels-create-preset-btn-hint {
  min-width: 0;
  font-weight: 400;
  font-size: 0.625rem;
  line-height: 1.35;
  color: #9f1239;
  opacity: 0.88;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
}

.awn-channels-create-preset-btn-slug {
  flex: 0 0 auto;
  max-width: 7rem;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
  font-family: ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, monospace;
  font-size: 0.5625rem;
  font-weight: 700;
  letter-spacing: 0.01em;
  line-height: 1.2;
  padding: 0.15rem 0.35rem;
  border-radius: 0.25rem;
  border: 1px solid rgba(220, 38, 38, 0.4);
  background: linear-gradient(180deg, #fff5f5 0%, #fee2e2 100%);
  color: #991b1b;
  box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.65);
}

.menu-awn-channels-item-name.menu-awn-databases-store-name {
  white-space: normal;
  word-break: break-word;
  line-height: 1.3;
}

.awn-channels-create-preset-btn.is-active .awn-channels-create-preset-btn-slug {
  border-color: rgba(185, 28, 28, 0.55);
  background: #fecaca;
  color: #7f1d1d;
}

.awn-channels-create-preset-btn.is-active {
  border-color: rgba(220, 38, 38, 0.55);
  background: #fee2e2;
  color: #7f1d1d;
  box-shadow: inset 0 0 0 1px rgba(220, 38, 38, 0.25);
}

.menu-awn-channels-footer-caption {
  margin: 0.35rem 0 0;
  font-size: 0.625rem;
  line-height: 1.35;
  color: #9f1239;
  text-align: center;
}

.menu-awn-databases-band {
  flex-shrink: 0;
  padding: 0;
  margin: 0;
  box-sizing: border-box;
}

.menu-awn-databases-band-head {
  display: flex;
  align-items: center;
  overflow: visible;
  background: linear-gradient(135deg, #5b21b6 0%, #7c3aed 52%, #a78bfa 100%);
}

.menu-awn-databases-band-head .sidebar-accent-band-toggle--awn-databases {
  flex: 1 1 auto;
  min-width: 0;
  margin-bottom: 0;
  background: transparent;
  color: #f5f3ff;
}

.menu-awn-databases-band-head .sidebar-accent-band-toggle--awn-databases:hover {
  filter: brightness(1.04);
}

.menu-awn-databases-band-head .sidebar-accent-band-toggle--awn-databases:focus-visible {
  outline: 2px solid rgba(255, 255, 255, 0.88);
  outline-offset: -2px;
}

.menu-awn-databases-band-head .sidebar-accent-band-chevron {
  border-right-color: rgba(255, 255, 255, 0.95);
  border-bottom-color: rgba(255, 255, 255, 0.95);
}

.menu-awn-databases-band-title.sidebar-accent-band-title {
  flex: 1 1 auto;
  min-width: 0;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
}

.menu-awn-databases-band-head-actions {
  flex: 0 0 auto;
  display: inline-flex;
  align-items: center;
  gap: 4px;
  padding: 7px 8px 7px 0;
  overflow: visible;
  pointer-events: auto;
}

.menu-awn-databases-band-head-actions .menu-refresh-btn,
.menu-awn-databases-band-head-actions .menu-band-help-btn,
.menu-awn-databases-band-head-actions .menu-band-search-btn {
  position: relative;
  z-index: 1;
  width: 22px;
  height: 22px;
  min-height: 22px;
  flex: 0 0 22px;
  border: 1px solid rgba(91, 33, 182, 0.32);
  border-radius: 4px;
  background: rgba(255, 255, 255, 0.42);
  color: #5b21b6;
  font-size: 11px;
  line-height: 1;
  padding: 0;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  pointer-events: auto;
  cursor: pointer;
  transition: background-color 0.15s ease, border-color 0.15s ease, color 0.15s ease;
}

.menu-awn-databases-band-head-actions .menu-band-help-btn {
  font-size: 12px;
  font-weight: 700;
}

.menu-awn-databases-band-head-actions .menu-refresh-btn:hover:not(:disabled),
.menu-awn-databases-band-head-actions .menu-band-help-btn:hover:not(:disabled),
.menu-awn-databases-band-head-actions .menu-band-search-btn:hover:not(:disabled) {
  border-color: rgba(91, 33, 182, 0.48);
  background: rgba(255, 255, 255, 0.72);
  color: #6d28d9;
}

.menu-awn-databases-band-head-actions .menu-refresh-btn:focus,
.menu-awn-databases-band-head-actions .menu-band-help-btn:focus,
.menu-awn-databases-band-head-actions .menu-band-search-btn:focus {
  outline: none;
}

.menu-awn-databases-band-head-actions .menu-refresh-btn:focus-visible,
.menu-awn-databases-band-head-actions .menu-band-help-btn:focus-visible,
.menu-awn-databases-band-head-actions .menu-band-search-btn:focus-visible {
  box-shadow: 0 0 0 2px rgba(124, 58, 237, 0.32);
}

.menu-awn-databases-band-head-actions .menu-refresh-btn svg,
.menu-awn-databases-band-head-actions .menu-band-search-btn svg {
  width: 13px;
  height: 13px;
  display: block;
  flex-shrink: 0;
  fill: none;
  stroke: currentColor;
  stroke-width: 2;
  stroke-linecap: round;
  stroke-linejoin: round;
  transform-origin: 50% 50%;
}

.menu-awn-databases-band-head-actions .menu-refresh-btn.is-spinning {
  animation: none;
}

.menu-awn-databases-band-head-actions .menu-refresh-btn.is-spinning svg {
  animation: workspace-refresh-spin 0.75s linear infinite;
}

.menu-awn-databases-band-body {
  display: flex;
  flex-direction: column;
  gap: 5px;
  padding: 8px 10px 10px;
  box-sizing: border-box;
  background: #f5f3ff;
  border-bottom: 1px solid rgba(196, 181, 253, 0.45);
}

.menu-awn-databases-band-body[hidden],
.menu-awn-databases-band-accordion.is-collapsed > .menu-awn-databases-band-body {
  display: none !important;
}

.menu-awn-databases-band-accordion.is-collapsed .menu-awn-databases-band-head {
  border-bottom: 0;
}

.menu-media-library-band {
  flex-shrink: 0;
  padding: 0;
  margin: 0;
  box-sizing: border-box;
}

.menu-media-library-band-head {
  display: flex;
  align-items: center;
  overflow: visible;
  background: linear-gradient(135deg, #0e7490 0%, #06b6d4 52%, #67e8f9 100%);
}

.menu-media-library-band-head .sidebar-accent-band-toggle--media-library {
  flex: 1 1 auto;
  min-width: 0;
  margin-bottom: 0;
  background: transparent;
  color: #ecfeff;
}

.menu-media-library-band-head .sidebar-accent-band-toggle--media-library:hover {
  filter: brightness(1.04);
}

.menu-media-library-band-head .sidebar-accent-band-toggle--media-library:focus-visible {
  outline: 2px solid rgba(255, 255, 255, 0.88);
  outline-offset: -2px;
}

.menu-media-library-band-head .sidebar-accent-band-chevron {
  border-right-color: rgba(255, 255, 255, 0.95);
  border-bottom-color: rgba(255, 255, 255, 0.95);
}

.menu-media-library-band-title.sidebar-accent-band-title {
  flex: 1 1 auto;
  min-width: 0;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
}

.menu-media-library-band-head-actions {
  flex: 0 0 auto;
  display: inline-flex;
  align-items: center;
  gap: 4px;
  padding: 7px 8px 7px 0;
  overflow: visible;
  pointer-events: auto;
}

.menu-media-library-band-head-actions .menu-refresh-btn,
.menu-media-library-band-head-actions .menu-band-help-btn,
.menu-media-library-band-head-actions .menu-band-search-btn {
  position: relative;
  z-index: 1;
  width: 22px;
  height: 22px;
  min-height: 22px;
  flex: 0 0 22px;
  border: 1px solid rgba(14, 116, 144, 0.32);
  border-radius: 4px;
  background: rgba(255, 255, 255, 0.42);
  color: #0e7490;
  font-size: 11px;
  line-height: 1;
  padding: 0;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  pointer-events: auto;
  cursor: pointer;
  transition: background-color 0.15s ease, border-color 0.15s ease, color 0.15s ease;
}

.menu-media-library-band-head-actions .menu-band-help-btn {
  font-size: 12px;
  font-weight: 700;
}

.menu-media-library-band-head-actions .menu-refresh-btn:hover:not(:disabled),
.menu-media-library-band-head-actions .menu-band-help-btn:hover:not(:disabled),
.menu-media-library-band-head-actions .menu-band-search-btn:hover:not(:disabled),
.menu-media-library-band-head-actions .menu-band-search-btn.is-active {
  border-color: rgba(14, 116, 144, 0.48);
  background: rgba(255, 255, 255, 0.72);
  color: #0891b2;
}

.menu-media-library-band-head-actions .menu-band-search-btn.is-active {
  border-color: rgba(8, 145, 178, 0.62);
  background: rgba(255, 255, 255, 0.88);
  box-shadow: 0 0 0 1px rgba(6, 182, 212, 0.22);
}

.menu-media-library-band-head-actions .menu-refresh-btn:focus,
.menu-media-library-band-head-actions .menu-band-help-btn:focus,
.menu-media-library-band-head-actions .menu-band-search-btn:focus {
  outline: none;
}

.menu-media-library-band-head-actions .menu-refresh-btn:focus-visible,
.menu-media-library-band-head-actions .menu-band-help-btn:focus-visible,
.menu-media-library-band-head-actions .menu-band-search-btn:focus-visible {
  box-shadow: 0 0 0 2px rgba(6, 182, 212, 0.32);
}

.menu-media-library-band-head-actions .menu-refresh-btn svg,
.menu-media-library-band-head-actions .menu-band-search-btn svg {
  width: 13px;
  height: 13px;
  display: block;
  flex-shrink: 0;
  fill: none;
  stroke: currentColor;
  stroke-width: 2;
  stroke-linecap: round;
  stroke-linejoin: round;
  transform-origin: 50% 50%;
}

.menu-media-library-band-body {
  display: flex;
  flex-direction: column;
  gap: 0.5rem;
  padding: 8px 10px 10px;
  box-sizing: border-box;
  background: linear-gradient(
    180deg,
    rgba(103, 232, 249, 0.35) 0%,
    rgba(236, 254, 255, 0.95) 28%,
    rgba(240, 253, 250, 0.98) 100%
  );
  border-bottom: 1px solid rgba(34, 211, 238, 0.35);
}

.menu-media-library-band-body[hidden],
.menu-media-library-band-accordion.is-collapsed > .menu-media-library-band-body {
  display: none !important;
}

.menu-media-library-band-accordion.is-collapsed .menu-media-library-band-head {
  border-bottom: 0;
}

.menu-media-library-toolbar {
  display: flex;
  flex-direction: column;
  gap: 0.35rem;
  margin: 0;
}

.menu-media-library-toolbar-row {
  display: flex;
  flex-wrap: nowrap;
  align-items: stretch;
  gap: 0.35rem;
}

.menu-media-library-toolbar-row--search {
  margin: 0;
}

.menu-media-library-search-wrap {
  width: 100%;
  min-width: 0;
  margin: 0;
}

.menu-media-library-search-wrap .menu-search-bar {
  min-height: 32px;
  height: 32px;
  padding: 0 10px;
  border-color: rgba(34, 211, 238, 0.65);
  background: rgba(255, 255, 255, 0.92);
  border-radius: 6px;
  box-sizing: border-box;
}

.menu-media-library-search-wrap .menu-search-bar:focus-within {
  border-color: #0891b2;
  box-shadow: 0 0 0 2px rgba(6, 182, 212, 0.18);
}

.menu-media-library-search-wrap .menu-search-input {
  font-size: 12px;
  line-height: 1.2;
  padding: 5px 0;
}

.menu-media-library-search-wrap .menu-search-icon {
  color: #0891b2;
}

.menu-media-library-toolbar-row.menu-media-library-actions-row {
  align-items: center;
}

.menu-media-library-actions-row {
  align-items: center;
  gap: 0.35rem;
  min-height: 30px;
}

.menu-media-library-actions-row .menu-media-library-create-btn.menu-static-action-btn {
  margin: 0;
  flex-shrink: 0;
  align-self: center;
}

.menu-media-library-create-btn--icon {
  flex: 0 0 30px;
  width: 30px;
  min-width: 30px;
  margin: 0;
  padding: 0;
  min-height: 30px;
  height: 30px;
  box-sizing: border-box;
  display: grid;
  place-items: center;
  font-size: 11px;
  font-weight: 700;
  line-height: 1;
  padding-bottom: 1px;
  border-color: rgba(14, 116, 144, 0.35);
  background: rgba(255, 255, 255, 0.88);
  color: #0e7490;
}

.menu-media-library-create-btn--icon:hover:not(:disabled) {
  border-color: rgba(8, 145, 178, 0.55);
  background: #ecfeff;
  color: #0e7490;
}

.menu-media-library-toolbar .menu-media-library-index-row.node-navigation-workspace-counter-topic-index-row {
  flex: 1 1 auto;
  min-width: 0;
  margin: 0;
  align-items: center;
  gap: 0.35rem;
  min-height: 30px;
}

.menu-media-library-index-row .node-navigation-workspace-counter-topic-index {
  display: flex;
  align-items: center;
  justify-content: center;
  box-sizing: border-box;
  min-height: 30px;
  height: 30px;
  padding: 0 8px;
  border-color: rgba(34, 211, 238, 0.65);
  background: rgba(255, 255, 255, 0.92);
  color: #0e7490;
  font-size: 11px;
}

.menu-media-library-index-row .node-navigation-workspace-counter-topic-index.is-available {
  border-color: rgba(8, 145, 178, 0.45);
  background: rgba(236, 254, 255, 0.95);
  color: #0c4a6e;
}

.menu-media-library-index-row .node-navigation-workspace-counter-topic-index.is-generated:hover,
.menu-media-library-index-row .node-navigation-workspace-counter-topic-index.is-available:hover {
  border-color: rgba(8, 145, 178, 0.62);
  background: #cffafe;
  color: #0c4a6e;
}

.menu-media-library-index-row .node-navigation-workspace-counter-topic-index-refresh {
  display: flex;
  align-items: center;
  justify-content: center;
  flex-shrink: 0;
  box-sizing: border-box;
  width: 30px;
  height: 30px;
  min-height: 30px;
  border-color: rgba(34, 211, 238, 0.65);
  background: rgba(255, 255, 255, 0.92);
  color: #0891b2;
}

.menu-media-library-index-row .node-navigation-workspace-counter-topic-index-refresh:hover,
.menu-media-library-index-row .node-navigation-workspace-counter-topic-index-refresh:focus-visible {
  border-color: rgba(8, 145, 178, 0.62);
  background: #cffafe;
  color: #0c4a6e;
}

.menu-media-library-list.menu-awn-databases-stores {
  margin: 0;
  padding: 0;
  gap: 2px;
}

.menu-media-library-band-body .menu-awn-databases-store {
  border-color: rgba(34, 211, 238, 0.35);
  background: rgba(255, 255, 255, 0.72);
}

.menu-media-library-band-body .menu-awn-databases-store:hover {
  background: rgba(255, 255, 255, 0.95);
  border-color: rgba(8, 145, 178, 0.45);
}

.menu-media-library-band-body .menu-awn-databases-store-meta {
  margin-left: auto;
  padding-left: 0.25rem;
  justify-content: flex-end;
  align-self: center;
  min-width: 0;
}

.menu-media-library-band-body .menu-awn-databases-store-badge.menu-media-library-slug-badge,
.menu-media-library-band-body .menu-awn-databases-store-badge.menu-media-library-key-btn {
  box-sizing: border-box;
  height: 1.125rem;
  margin: 0;
  padding: 0 0.4rem;
  border: 1px solid rgba(34, 211, 238, 0.45);
  border-radius: 0.25rem;
  font-size: 0.625rem;
  font-weight: 600;
  line-height: 1;
  letter-spacing: 0.01em;
  max-width: 6.5rem;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.menu-media-library-band-body .menu-awn-databases-store-badge.menu-media-library-slug-badge {
  color: #0e7490;
  background: rgba(236, 254, 255, 0.9);
}

.menu-media-library-band-body .menu-awn-databases-store-badge.menu-media-library-key-btn {
  font-family: inherit;
  cursor: pointer;
  color: #64748b;
  background: rgba(248, 250, 252, 0.85);
  border-color: rgba(148, 163, 184, 0.4);
  border-style: dashed;
}

.menu-media-library-band-body .menu-awn-databases-store-badge.menu-media-library-key-btn:hover,
.menu-media-library-band-body .menu-awn-databases-store-badge.menu-media-library-key-btn:focus-visible {
  color: #0e7490;
  background: #ecfeff;
  border-color: rgba(8, 145, 178, 0.45);
  border-style: solid;
  outline: none;
}

.menu-media-library-band-body .menu-awn-databases-store.menu-media-library-item.is-active .menu-media-library-slug-badge {
  color: #0c4a6e;
  background: rgba(255, 255, 255, 0.72);
  border-color: rgba(8, 145, 178, 0.5);
}

.menu-media-library-band-body .menu-awn-databases-store.menu-media-library-item.is-active {
  background: #a5f3fc;
  color: #0c4a6e;
  box-shadow: inset 0 0 0 1px rgba(8, 145, 178, 0.55);
}

.menu-media-library-band-body .menu-awn-databases-store.menu-media-library-item.is-active .menu-awn-databases-store-name {
  font-weight: 600;
}

.menu-media-library-empty {
  list-style: none;
  margin: 0;
  padding: 0.5rem 0.35rem;
  font-size: 0.6875rem;
  line-height: 1.35;
  color: #64748b;
  text-align: center;
}

.menu-media-library-empty.is-error {
  color: #b91c1c;
}

.menu-media-library-intro {
  margin: 0;
  font-size: 0.75rem;
  line-height: 1.4;
  color: #155e75;
}

.menu-media-library-placeholder {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 0.35rem;
  padding: 0.65rem 0.5rem;
  border: 1px dashed rgba(14, 116, 144, 0.35);
  border-radius: 0.5rem;
  background: rgba(255, 255, 255, 0.55);
  text-align: center;
}

.menu-media-library-placeholder-icon {
  font-size: 1.25rem;
  line-height: 1;
  opacity: 0.85;
}

.menu-media-library-placeholder-title {
  margin: 0;
  font-size: 0.8125rem;
  font-weight: 700;
  color: #0e7490;
}

.menu-media-library-placeholder-text {
  margin: 0;
  font-size: 0.6875rem;
  line-height: 1.35;
  color: #64748b;
  max-width: 16rem;
}

.menu-media-library-band-body .menu-awn-databases-store.menu-media-library-item--pending {
  cursor: default;
  background: rgba(255, 255, 255, 0.32);
  border-color: rgba(34, 211, 238, 0.18);
  color: #94a3b8;
  box-shadow: none;
}

.menu-media-library-band-body .menu-awn-databases-store.menu-media-library-item--pending:hover {
  background: rgba(255, 255, 255, 0.48);
  border-color: rgba(34, 211, 238, 0.26);
}

.menu-media-library-item--pending .menu-awn-databases-store-kind-wrap {
  opacity: 0.42;
  filter: grayscale(0.35);
}

.menu-media-library-item--pending .menu-awn-databases-store-name {
  color: #94a3b8;
  font-weight: 500;
}

.menu-media-library-item--pending .menu-media-library-key-btn {
  opacity: 0.72;
}

.menu-media-library-item--pending:hover .menu-media-library-key-btn {
  opacity: 1;
}

.menu-media-library-user-divider {
  margin: 0.35rem 0 0.1rem;
  padding: 0.4rem 0.5rem 0.1rem;
  list-style: none;
  font-size: 0.6875rem;
  font-weight: 600;
  letter-spacing: 0;
  text-transform: none;
  color: #155e75;
  border-top: 1px solid rgba(34, 211, 238, 0.4);
  pointer-events: none;
  user-select: none;
}

.menu-media-library-footer-caption {
  margin: 0.35rem 0 0;
  padding-top: 0.35rem;
  border-top: 1px solid rgba(34, 211, 238, 0.4);
  font-size: 0.6875rem;
  font-weight: 600;
  line-height: 1.3;
  color: #155e75;
  text-align: center;
  opacity: 0.9;
}

.menu-awn-scripts-band {
  flex-shrink: 0;
  padding: 0;
  margin: 0;
  box-sizing: border-box;
}

.menu-awn-scripts-band-head {
  display: flex;
  align-items: center;
  overflow: visible;
  background: linear-gradient(135deg, #92400e 0%, #d97706 52%, #fbbf24 100%);
}

.menu-awn-scripts-band-head .sidebar-accent-band-toggle--awn-scripts {
  flex: 1 1 auto;
  min-width: 0;
  margin-bottom: 0;
  background: transparent;
  color: #fffbeb;
}

.menu-awn-scripts-band-head .sidebar-accent-band-toggle--awn-scripts:hover {
  filter: brightness(1.04);
}

.menu-awn-scripts-band-head .sidebar-accent-band-toggle--awn-scripts:focus-visible {
  outline: 2px solid rgba(255, 255, 255, 0.88);
  outline-offset: -2px;
}

.menu-awn-scripts-band-head .sidebar-accent-band-chevron {
  border-right-color: rgba(255, 255, 255, 0.95);
  border-bottom-color: rgba(255, 255, 255, 0.95);
}

.menu-awn-scripts-band.is-ui-locked .menu-awn-scripts-band-toggle-btn:disabled {
  cursor: not-allowed;
  opacity: 0.72;
}

.menu-awn-scripts-band.is-ui-locked .sidebar-accent-band-chevron {
  opacity: 0.35;
}

.menu-awn-scripts-band .sidebar-accent-band-lock {
  flex: 0 0 auto;
  font-size: 12px;
  line-height: 1;
  opacity: 0.85;
}

.menu-awn-scripts-band.is-ui-locked .menu-awn-scripts-band-head-actions .menu-band-help-btn {
  opacity: 0.85;
}

.menu-awn-scripts-band-title.sidebar-accent-band-title {
  flex: 1 1 auto;
  min-width: 0;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
}

.menu-awn-scripts-band-head-actions {
  flex: 0 0 auto;
  display: inline-flex;
  align-items: center;
  gap: 4px;
  padding: 7px 8px 7px 0;
  overflow: visible;
  pointer-events: auto;
}

.menu-awn-scripts-band-head-actions .menu-refresh-btn,
.menu-awn-scripts-band-head-actions .menu-band-help-btn,
.menu-awn-scripts-band-head-actions .menu-band-search-btn {
  position: relative;
  z-index: 1;
  width: 22px;
  height: 22px;
  min-height: 22px;
  flex: 0 0 22px;
  border: 1px solid rgba(146, 64, 14, 0.32);
  border-radius: 4px;
  background: rgba(255, 255, 255, 0.42);
  color: #92400e;
  font-size: 11px;
  line-height: 1;
  padding: 0;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  pointer-events: auto;
  cursor: pointer;
  transition: background-color 0.15s ease, border-color 0.15s ease, color 0.15s ease;
}

.menu-awn-scripts-band-head-actions .menu-band-help-btn {
  font-size: 12px;
  font-weight: 700;
}

.menu-awn-scripts-band-head-actions .menu-refresh-btn:hover:not(:disabled),
.menu-awn-scripts-band-head-actions .menu-band-help-btn:hover:not(:disabled),
.menu-awn-scripts-band-head-actions .menu-band-search-btn:hover:not(:disabled) {
  border-color: rgba(146, 64, 14, 0.48);
  background: rgba(255, 255, 255, 0.72);
  color: #b45309;
}

.menu-awn-scripts-band-head-actions .menu-refresh-btn:focus,
.menu-awn-scripts-band-head-actions .menu-band-help-btn:focus,
.menu-awn-scripts-band-head-actions .menu-band-search-btn:focus {
  outline: none;
}

.menu-awn-scripts-band-head-actions .menu-refresh-btn:focus-visible,
.menu-awn-scripts-band-head-actions .menu-band-help-btn:focus-visible,
.menu-awn-scripts-band-head-actions .menu-band-search-btn:focus-visible {
  box-shadow: 0 0 0 2px rgba(217, 119, 6, 0.32);
}

.menu-awn-scripts-band-head-actions .menu-refresh-btn svg,
.menu-awn-scripts-band-head-actions .menu-band-search-btn svg {
  width: 13px;
  height: 13px;
  display: block;
  flex-shrink: 0;
  fill: none;
  stroke: currentColor;
  stroke-width: 2;
  stroke-linecap: round;
  stroke-linejoin: round;
  transform-origin: 50% 50%;
}

.menu-awn-scripts-band-body {
  display: flex;
  flex-direction: column;
  gap: 0.5rem;
  padding: 8px 10px 10px;
  box-sizing: border-box;
  background: linear-gradient(
    180deg,
    rgba(251, 191, 36, 0.35) 0%,
    rgba(255, 251, 235, 0.95) 28%,
    rgba(254, 252, 232, 0.98) 100%
  );
  border-bottom: 1px solid rgba(217, 119, 6, 0.35);
}

.menu-awn-scripts-band-body[hidden],
.menu-awn-scripts-band-accordion.is-collapsed > .menu-awn-scripts-band-body {
  display: none !important;
}

.menu-awn-scripts-band-accordion.is-collapsed .menu-awn-scripts-band-head {
  border-bottom: 0;
}

.menu-awn-scripts-intro {
  margin: 0;
  font-size: 0.75rem;
  line-height: 1.4;
  color: #92400e;
}

.menu-awn-scripts-intro code {
  font-size: 0.7rem;
}

.menu-awn-scripts-placeholder {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 0.35rem;
  padding: 0.65rem 0.5rem;
  border: 1px dashed rgba(146, 64, 14, 0.35);
  border-radius: 0.5rem;
  background: rgba(255, 255, 255, 0.55);
  text-align: center;
}

.menu-awn-scripts-placeholder-icon {
  font-size: 1.25rem;
  line-height: 1;
  opacity: 0.85;
}

.menu-awn-scripts-placeholder-title {
  margin: 0;
  font-size: 0.8125rem;
  font-weight: 700;
  color: #92400e;
}

.menu-awn-scripts-placeholder-text {
  margin: 0;
  font-size: 0.6875rem;
  line-height: 1.35;
  color: #64748b;
  max-width: 16rem;
}

.menu-awn-scripts-placeholder-text code {
  font-size: 0.65rem;
}

.menu-awn-scripts-open-btn {
  width: 100%;
  margin-top: 0.15rem;
}

.menu-awn-scripts-footer-caption {
  margin: 0.15rem 0 0;
  padding-top: 0.35rem;
  border-top: 1px solid rgba(217, 119, 6, 0.35);
  font-size: 0.6875rem;
  font-weight: 600;
  line-height: 1.3;
  color: #92400e;
  text-align: center;
  opacity: 0.85;
}

.menu-awn-scripts-footer-caption code {
  font-size: 0.65rem;
}

.menu-repositories-band {
  flex-shrink: 0;
  padding: 0;
  margin: 0;
  box-sizing: border-box;
}

.menu-repositories-band-head {
  display: flex;
  align-items: center;
  overflow: visible;
  background: linear-gradient(135deg, #1e3a8a 0%, #2563eb 52%, #60a5fa 100%);
}

.menu-repositories-band-head .sidebar-accent-band-toggle--repositories {
  flex: 1 1 auto;
  min-width: 0;
  margin-bottom: 0;
  background: transparent;
  color: #eff6ff;
}

.menu-repositories-band-head .sidebar-accent-band-toggle--repositories:hover {
  filter: brightness(1.04);
}

.menu-repositories-band-head .sidebar-accent-band-toggle--repositories:focus-visible {
  outline: 2px solid rgba(255, 255, 255, 0.88);
  outline-offset: -2px;
}

.menu-repositories-band-head .sidebar-accent-band-chevron {
  border-right-color: rgba(255, 255, 255, 0.95);
  border-bottom-color: rgba(255, 255, 255, 0.95);
}

.menu-repositories-band-title.sidebar-accent-band-title {
  flex: 1 1 auto;
  min-width: 0;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
}

.menu-repositories-band-head-actions {
  flex: 0 0 auto;
  display: inline-flex;
  align-items: center;
  gap: 4px;
  padding: 7px 8px 7px 0;
  overflow: visible;
  pointer-events: auto;
}

.menu-repositories-band-head-actions .menu-refresh-btn,
.menu-repositories-band-head-actions .menu-band-help-btn,
.menu-repositories-band-head-actions .menu-band-search-btn {
  position: relative;
  z-index: 1;
  width: 22px;
  height: 22px;
  min-height: 22px;
  flex: 0 0 22px;
  border: 1px solid rgba(37, 99, 235, 0.32);
  border-radius: 4px;
  background: rgba(255, 255, 255, 0.42);
  color: #1e40af;
  font-size: 11px;
  line-height: 1;
  padding: 0;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  pointer-events: auto;
  cursor: pointer;
  transition: background-color 0.15s ease, border-color 0.15s ease, color 0.15s ease;
}

.menu-repositories-band-head-actions .menu-band-help-btn {
  font-size: 12px;
  font-weight: 700;
}

.menu-repositories-band-head-actions .menu-refresh-btn:hover:not(:disabled),
.menu-repositories-band-head-actions .menu-band-help-btn:hover:not(:disabled),
.menu-repositories-band-head-actions .menu-band-search-btn:hover:not(:disabled) {
  border-color: rgba(37, 99, 235, 0.48);
  background: rgba(255, 255, 255, 0.72);
  color: #2563eb;
}

.menu-repositories-band-head-actions .menu-refresh-btn:focus,
.menu-repositories-band-head-actions .menu-band-help-btn:focus,
.menu-repositories-band-head-actions .menu-band-search-btn:focus {
  outline: none;
}

.menu-repositories-band-head-actions .menu-refresh-btn:focus-visible,
.menu-repositories-band-head-actions .menu-band-help-btn:focus-visible,
.menu-repositories-band-head-actions .menu-band-search-btn:focus-visible {
  box-shadow: 0 0 0 2px rgba(37, 99, 235, 0.32);
}

.menu-repositories-band-head-actions .menu-refresh-btn svg,
.menu-repositories-band-head-actions .menu-band-search-btn svg {
  width: 13px;
  height: 13px;
  display: block;
  flex-shrink: 0;
  fill: none;
  stroke: currentColor;
  stroke-width: 2;
  stroke-linecap: round;
  stroke-linejoin: round;
  transform-origin: 50% 50%;
}

.menu-repositories-band-head-actions .menu-refresh-btn.is-spinning {
  animation: none;
}

.menu-repositories-band-head-actions .menu-refresh-btn.is-spinning svg {
  animation: workspace-refresh-spin 0.75s linear infinite;
}

.menu-band-search-btn:disabled {
  opacity: 0.42;
  cursor: not-allowed;
}

.menu-band-help-btn.ui-tooltip-host[data-tooltip]::after {
  left: auto;
  right: 0;
  max-width: 260px;
  white-space: normal;
  text-align: left;
  z-index: 220;
  transform: translateY(-2px);
}

.menu-band-help-btn.ui-tooltip-host[data-tooltip-pos="top"]::after {
  bottom: calc(100% + 8px);
}

.menu-band-help-btn.ui-tooltip-host[data-tooltip-pos="top"]:hover::after,
.menu-band-help-btn.ui-tooltip-host[data-tooltip-pos="top"]:focus-visible::after {
  transform: translateY(0);
}

.menu-band-help-btn.ui-tooltip-host[data-tooltip-pos="top"]::before {
  left: auto;
  right: 8px;
  transform: none;
  z-index: 220;
}

.menu-repositories-band-body {
  display: flex;
  flex-direction: column;
  gap: 5px;
  padding: 8px 10px 10px;
  box-sizing: border-box;
  background: #eff6ff;
  border-bottom: 1px solid rgba(147, 197, 253, 0.45);
}

.menu-repositories-band-body[hidden],
.menu-repositories-band-accordion.is-collapsed > .menu-repositories-band-body {
  display: none !important;
}

.menu-repositories-band-accordion.is-collapsed .menu-repositories-band-head {
  border-bottom: 0;
}

.menu-static-footer {
  flex-shrink: 0;
  padding: 0;
  margin: 0;
  box-sizing: border-box;
}

.menu-static-footer-toggle-btn {
  min-height: 0;
}

.menu-static-footer-action {
  letter-spacing: 0;
  text-transform: none;
  background: transparent;
  padding: 0;
}

.menu-static-footer-body {
  display: flex;
  flex-direction: column;
  gap: 5px;
  padding: 8px 10px 10px;
  box-sizing: border-box;
  background: #f5f3ff;
}

.menu-static-footer-search-toolbar {
  flex-shrink: 0;
  position: sticky;
  top: 0;
  z-index: 2;
  display: flex;
  flex-direction: column;
  gap: 4px;
  margin: -2px 0 4px;
  padding-bottom: 2px;
  background: #f5f3ff;
}

.menu-static-footer-search-wrap {
  width: 100%;
  min-width: 0;
  margin: 0;
}

.menu-static-footer-search-wrap .menu-search-bar {
  min-height: 32px;
  height: 32px;
  padding: 0 10px;
  border-color: rgba(167, 139, 250, 0.75);
  background: rgba(255, 255, 255, 0.94);
  border-radius: 6px;
  box-sizing: border-box;
}

.menu-static-footer-search-wrap .menu-search-bar:focus-within {
  border-color: #7c3aed;
  box-shadow: 0 0 0 2px rgba(124, 58, 237, 0.14);
}

.menu-static-footer-search-empty {
  margin: 0;
  padding: 4px 2px 0;
  font-size: 0.75rem;
  line-height: 1.35;
  color: #6b7280;
  text-align: center;
}

.menu-static-footer-search-empty.hidden {
  display: none;
}

.menu-static-footer-sections {
  display: flex;
  flex-direction: column;
  gap: 5px;
  min-width: 0;
}

.menu-static-section.menu-static-accordion.is-search-hidden {
  display: none !important;
}

.menu-static-footer-body[hidden],
.menu-static-footer-accordion.is-collapsed > .menu-static-footer-body {
  display: none !important;
}

.menu-static-footer-accordion.is-collapsed {
  padding-bottom: 0;
}

.menu-sidebar-bottom .menu-agent-stats:not(.hidden) {
  box-sizing: border-box;
}

.menu-static-section {
  margin: 0;
  border-radius: 8px;
  box-sizing: border-box;
  overflow: hidden;
}

.menu-static-section--storage-schemes {
  border: 1px solid #c4b5fd;
  background: #f5f3ff;
  overflow: visible;
}

.menu-static-section--vendor {
  border: 1px solid #86efac;
  background: #f0fdf4;
}

.menu-static-section--settings {
  border: 1px solid #cbd5e1;
  background: #f8fafc;
}

.menu-static-section--server-sync {
  border: 1px solid #fdba74;
  background: #fff7ed;
}

.menu-static-section--indexing {
  border: 1px solid #f9a8d4;
  background: #fdf2f8;
}

.menu-static-section--languagetool {
  border: 1px solid #5eead4;
  background: #f0fdfa;
}

.menu-static-section--images {
  border: 1px solid #f0abfc;
  background: #fdf4ff;
}

.menu-static-section--google-drive {
  border: 1px solid #93c5fd;
  background: #eff6ff;
}

.menu-static-section--awn-dialogs {
  border: 1px solid #a5b4fc;
  background: #eef2ff;
}

.menu-static-section--awn-facts {
  border: 1px solid #c4b5fd;
  background: #f5f3ff;
}

.menu-static-section--glossary {
  border: 1px solid #e9d5ff;
  background: #fdf4ff;
}

.menu-static-section--awn-temp {
  border: 1px solid #fcd34d;
  background: #fffbeb;
}

.menu-static-section--awn-recycle {
  border: 1px solid #d1d5db;
  background: #f9fafb;
}

.menu-static-section--awn-backup {
  border: 1px solid #86efac;
  background: #f0fdf4;
}

.menu-static-section--awn-dashboards {
  border: 1px solid #bfdbfe;
  background: #eff6ff;
}

.menu-awn-dashboards-stats {
  margin: 0 0 0.5rem;
  font-size: 0.8125rem;
  line-height: 1.35;
  color: #374151;
}

.menu-awn-dashboards-stats.is-empty {
  color: #6b7280;
}

.menu-awn-dashboards-stats.is-error {
  color: #b91c1c;
}

.menu-awn-dashboards-list {
  display: flex;
  flex-direction: column;
  gap: 6px;
  margin-bottom: 0.5rem;
}

.menu-awn-dashboards-item {
  display: flex;
  flex-direction: column;
  gap: 2px;
  width: 100%;
  padding: 8px 10px;
  border: 1px solid #dbeafe;
  border-radius: 8px;
  background: #fff;
  text-align: left;
  cursor: pointer;
}

.menu-awn-dashboards-item:hover {
  border-color: #93c5fd;
  background: #f8fbff;
}

.menu-awn-dashboards-item.is-active {
  border-color: #3b82f6;
  box-shadow: 0 0 0 1px rgba(59, 130, 246, 0.25);
}

.menu-awn-dashboards-item-name {
  font-size: 0.8125rem;
  font-weight: 700;
  color: #1e3a8a;
}

.menu-awn-dashboards-item-meta {
  font-size: 0.75rem;
  color: #64748b;
}

.menu-awn-dashboards-empty {
  margin: 0 0 0.5rem;
  font-size: 0.8125rem;
  color: #6b7280;
}

.awn-dashboards-toolbar-btn .awn-dashboards-toolbar-btn-icon svg {
  display: block;
  width: 16px;
  height: 16px;
}

.awn-dashboard-shell {
  display: flex;
  flex-direction: column;
  gap: 14px;
}

.awn-dashboard-page-head {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: 12px;
  padding: 16px 18px;
  border: 1px solid #e2e8f0;
  border-radius: 16px;
  background: #fff;
}

.awn-dashboard-eyebrow {
  margin: 0 0 4px;
  font-size: 11px;
  font-weight: 700;
  letter-spacing: 0.06em;
  text-transform: uppercase;
  color: #6366f1;
}

.awn-dashboard-title {
  margin: 0 0 6px;
  font-size: 22px;
  font-weight: 800;
  color: #1e3a8a;
}

.awn-dashboard-lead {
  margin: 0;
  font-size: 13px;
  color: #64748b;
}

.awn-dashboard-open-folder-btn {
  flex: 0 0 auto;
  padding: 8px 12px;
  border: 1px solid #dbeafe;
  border-radius: 10px;
  background: #eff6ff;
  color: #1d4ed8;
  font-size: 12px;
  font-weight: 700;
  cursor: pointer;
}

.awn-dashboard-todo-plaque {
  padding: 16px 18px;
  border: 1px dashed rgba(99, 102, 241, 0.35);
  border-radius: 16px;
  background: rgba(238, 242, 255, 0.55);
}

.awn-dashboard-todo-plaque-head {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: 12px;
  margin-bottom: 14px;
}

.awn-dashboard-todo-plaque-title {
  margin: 0 0 6px;
  font-size: 18px;
  font-weight: 800;
  color: #1e3a8a;
}

.awn-dashboard-todo-plaque-badge {
  flex: 0 0 auto;
  padding: 6px 10px;
  border-radius: 999px;
  border: 1px dashed rgba(99, 102, 241, 0.35);
  background: rgba(255, 255, 255, 0.72);
  font-size: 11px;
  font-weight: 700;
  letter-spacing: 0.04em;
  text-transform: uppercase;
  color: #4338ca;
}

.awn-dashboard-todo-plaque-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 12px;
}

.awn-dashboard-todo-plaque-block {
  padding: 12px 14px;
  border: 1px solid rgba(255, 255, 255, 0.85);
  border-radius: 12px;
  background: rgba(255, 255, 255, 0.78);
}

.awn-dashboard-todo-plaque-block h4 {
  margin: 0 0 8px;
  font-size: 12px;
  font-weight: 800;
  letter-spacing: 0.04em;
  text-transform: uppercase;
  color: #4338ca;
}

.awn-dashboard-todo-plaque-block ul {
  margin: 0;
  padding-left: 18px;
  font-size: 12px;
  line-height: 1.55;
  color: #475569;
}

.awn-dashboard-todo-plaque-block li + li {
  margin-top: 6px;
}

.awn-dashboard-todo-plaque-block code {
  font-size: 11px;
}

.awn-dashboard-todo-plaque-foot {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 8px 10px;
  margin-top: 14px;
  padding-top: 12px;
  border-top: 1px solid rgba(99, 102, 241, 0.15);
  font-size: 12px;
  color: #64748b;
}

.awn-dashboard-todo-plaque-chat-label {
  font-weight: 700;
  color: #4338ca;
}

.awn-dashboard-todo-plaque-chat-link {
  color: #1d4ed8;
  font-weight: 700;
  text-decoration: none;
}

.awn-dashboard-todo-plaque-chat-link:hover {
  text-decoration: underline;
}

.awn-dashboard-todo-plaque-chat-id {
  padding: 2px 6px;
  border-radius: 6px;
  background: rgba(255, 255, 255, 0.85);
  font-size: 11px;
  color: #334155;
}

.awn-dashboard-todo-plaque-copy-btn {
  margin-left: auto;
  padding: 6px 10px;
  border: 1px solid #dbeafe;
  border-radius: 8px;
  background: #eff6ff;
  color: #1d4ed8;
  font-size: 11px;
  font-weight: 700;
  cursor: pointer;
}

@media (max-width: 760px) {
  .awn-dashboard-todo-plaque-grid {
    grid-template-columns: 1fr;
  }

  .awn-dashboard-todo-plaque-copy-btn {
    margin-left: 0;
  }
}

.awn-dashboard-grid {
  display: grid;
  grid-template-columns: repeat(var(--awn-dashboard-cols, 12), minmax(0, 1fr));
  gap: 14px;
  grid-auto-rows: minmax(96px, auto);
}

.awn-dashboard-widget {
  display: flex;
  flex-direction: column;
  min-height: 96px;
  padding: 14px;
  border-radius: 16px;
  border: 1px solid rgba(255, 255, 255, 0.75);
  background: rgba(255, 255, 255, 0.82);
  backdrop-filter: blur(10px);
  box-shadow: 0 12px 32px rgba(59, 130, 246, 0.06);
}

.awn-dashboard-widget-head {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: 8px;
  margin-bottom: 10px;
}

.awn-dashboard-widget-title {
  margin: 0;
  font-size: 13px;
  font-weight: 700;
  color: #1e293b;
}

.awn-dashboard-widget-badge {
  flex: 0 0 auto;
  padding: 2px 7px;
  border-radius: 999px;
  background: #f1f5f9;
  font-size: 10px;
  font-weight: 700;
  text-transform: uppercase;
  color: #64748b;
}

.awn-dashboard-widget-body {
  flex: 1;
  min-height: 0;
}

.awn-dashboard-dql-host {
  display: flex;
  flex-direction: column;
  min-height: 0;
  height: 100%;
}

.awn-dashboard-dql-scroll {
  flex: 1;
  min-height: 0;
  overflow: auto;
  max-height: 100%;
}

.awn-dashboard-dql-table {
  width: 100%;
  border-collapse: collapse;
  font-size: 11px;
}

.awn-dashboard-dql-table th,
.awn-dashboard-dql-table td {
  padding: 4px 6px;
  border-bottom: 1px solid #e2e8f0;
  text-align: left;
  vertical-align: top;
}

.awn-dashboard-dql-table th {
  position: sticky;
  top: 0;
  background: rgba(248, 250, 252, 0.95);
  font-weight: 700;
  color: #475569;
}

.awn-dashboard-dql-meta {
  margin: 6px 0 0;
  font-size: 10px;
  color: #94a3b8;
}

.awn-dashboard-dql-empty {
  margin: 0;
  font-size: 12px;
  color: #64748b;
}

.awn-dashboard-dql-empty.is-error {
  color: #dc2626;
}

.awn-dashboard-dql-refresh-btn {
  border: 0;
  background: #f1f5f9;
  border-radius: 6px;
  width: 26px;
  height: 22px;
  font-size: 14px;
  line-height: 1;
  cursor: pointer;
  color: #475569;
}

.awn-dashboard-dql-refresh-btn:hover:not(:disabled) {
  background: #e2e8f0;
}

.awn-dashboard-dql-refresh-btn:disabled {
  opacity: 0.5;
  cursor: wait;
}

/* DQL fence blocks in markdown preview */
.awn-fence-block--dql {
  margin: 12px 0;
  border-radius: 12px;
  border: 1px solid #c7d2fe;
  background: linear-gradient(180deg, #f8fafc 0%, #eef2ff 100%);
  box-shadow: 0 4px 14px rgba(79, 70, 229, 0.08);
  overflow: hidden;
  isolation: isolate;
}

.awn-fence-block--dql > .awn-fence-target {
  padding: 0;
  border-radius: inherit;
  overflow: hidden;
}

.awn-dql-block {
  overflow: hidden;
  border-radius: 11px;
}

.awn-dql-block-head {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 8px;
  padding: 10px 12px;
  border-bottom: 1px solid #c7d2fe;
  background: rgba(255, 255, 255, 0.65);
  border-radius: 11px 11px 0 0;
}

.awn-dql-block-body:last-child {
  border-radius: 0 0 11px 11px;
}

.awn-dql-block-badge {
  padding: 2px 8px;
  border-radius: 999px;
  font-size: 10px;
  font-weight: 800;
  letter-spacing: 0.04em;
  text-transform: uppercase;
  color: #3730a3;
  background: #e0e7ff;
}

.awn-dql-block-tag {
  font-size: 11px;
  font-weight: 700;
  color: #4338ca;
  background: transparent;
}

.awn-dql-block-kind {
  font-size: 11px;
  color: #64748b;
}

.awn-dql-block-query {
  margin: 0;
  border-bottom: 1px solid #e2e8f0;
}

.awn-dql-block-query-summary {
  cursor: pointer;
  padding: 8px 12px;
  font-size: 11px;
  color: #475569;
  list-style: none;
}

.awn-dql-block-query-summary::-webkit-details-marker {
  display: none;
}

.awn-dql-block-query-pre {
  margin: 0;
  padding: 8px 12px 12px;
  font-size: 11px;
  line-height: 1.45;
  white-space: pre-wrap;
  color: #334155;
  background: rgba(255, 255, 255, 0.5);
  border-top: 1px dashed #cbd5e1;
}

.awn-dql-block-body {
  padding: 10px 12px 12px;
}

.awn-dql-table {
  width: 100%;
  border-collapse: collapse;
  font-size: 12px;
}

.awn-dql-table th,
.awn-dql-table td {
  padding: 4px 6px;
  border-bottom: 1px solid #e2e8f0;
  text-align: left;
}

.awn-dql-meta {
  margin: 8px 0 0;
  font-size: 10px;
  color: #94a3b8;
}

.awn-dql-empty {
  margin: 0;
  font-size: 13px;
  font-weight: 600;
  color: #64748b;
}

.awn-dql-empty-hint {
  margin: 6px 0 0;
  font-size: 11px;
  color: #94a3b8;
  line-height: 1.4;
}

.awn-dashboard-widget-foot {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 8px;
  margin-top: 10px;
  padding-top: 8px;
  border-top: 1px solid #e2e8f0;
}

.awn-dashboard-widget-source {
  font-size: 10px;
  font-weight: 700;
  letter-spacing: 0.04em;
  text-transform: uppercase;
  color: #94a3b8;
}

.awn-dashboard-widget-link {
  border: 0;
  background: transparent;
  padding: 0;
  font-size: 11px;
  font-weight: 700;
  color: #2563eb;
  cursor: pointer;
}

.awn-dashboard-stat-value {
  font-size: 24px;
  font-weight: 800;
  color: #1e3a8a;
  font-variant-numeric: tabular-nums;
}

.awn-dashboard-stat-value.is-error {
  color: #b91c1c;
  font-size: 14px;
}

.awn-dashboard-stat-sub {
  margin-top: 4px;
  font-size: 12px;
  color: #64748b;
}

.awn-dashboard-list {
  margin: 0;
  padding: 0;
  list-style: none;
  display: flex;
  flex-direction: column;
  gap: 8px;
}

.awn-dashboard-list-item {
  display: grid;
  grid-template-columns: auto minmax(0, 1fr);
  gap: 8px;
  align-items: start;
  font-size: 13px;
  line-height: 1.4;
  color: #334155;
}

.awn-dashboard-check {
  width: 14px;
  height: 14px;
  margin-top: 2px;
  border-radius: 4px;
  border: 1.5px solid #cbd5e1;
}

.awn-dashboard-list-empty {
  margin: 0;
  font-size: 13px;
  color: #64748b;
}

.awn-dashboard-list-empty.is-error {
  color: #b91c1c;
}

.awn-dashboard-calendar-caption {
  margin-bottom: 8px;
  font-size: 13px;
  font-weight: 700;
  color: #1e3a8a;
  text-transform: capitalize;
}

.awn-dashboard-calendar-weekdays,
.awn-dashboard-calendar-grid {
  display: grid;
  grid-template-columns: repeat(7, minmax(0, 1fr));
  gap: 4px;
}

.awn-dashboard-calendar-weekdays {
  margin-bottom: 4px;
  font-size: 10px;
  font-weight: 700;
  color: #94a3b8;
  text-align: center;
}

.awn-dashboard-calendar-day {
  display: flex;
  align-items: center;
  justify-content: center;
  min-height: 24px;
  border-radius: 6px;
  font-size: 11px;
  color: #334155;
}

.awn-dashboard-calendar-day.is-today {
  background: #2563eb;
  color: #fff;
  font-weight: 700;
}

.awn-dashboard-calendar-day.is-empty {
  visibility: hidden;
}

.awn-dashboard-markdown {
  font-size: 13px;
  line-height: 1.5;
  color: #475569;
  white-space: pre-wrap;
}

.awn-dashboard-stub {
  font-size: 12px;
  line-height: 1.45;
  color: #64748b;
}

.awn-dashboard-stub strong {
  display: block;
  margin-bottom: 4px;
  color: #1e3a8a;
}

.awn-dashboard-stub code,
.awn-dashboard-stub-hint code {
  font-size: 11px;
  background: #f1f5f9;
  padding: 1px 4px;
  border-radius: 4px;
}

.awn-dashboard-stub-hint {
  margin-top: 6px;
  font-size: 11px;
}

.awn-dashboard-activity-item {
  grid-template-columns: auto minmax(0, 1fr);
}

.awn-dashboard-activity-dot {
  width: 8px;
  height: 8px;
  margin-top: 6px;
  border-radius: 50%;
  background: linear-gradient(135deg, #3b82f6, #8b5cf6);
}

.awn-dashboard-activity-copy {
  display: flex;
  flex-direction: column;
  gap: 2px;
  min-width: 0;
}

.awn-dashboard-activity-title {
  font-size: 13px;
  font-weight: 600;
  color: #1e293b;
}

.awn-dashboard-activity-meta {
  font-size: 11px;
  color: #94a3b8;
}

.awn-dashboard-bars {
  display: flex;
  flex-direction: column;
  gap: 8px;
}

.awn-dashboard-bar-row {
  display: grid;
  grid-template-columns: 28px minmax(0, 1fr) auto;
  gap: 8px;
  align-items: center;
}

.awn-dashboard-bar-label {
  font-size: 11px;
  font-weight: 700;
  color: #64748b;
}

.awn-dashboard-bar-track {
  height: 8px;
  border-radius: 999px;
  background: #e2e8f0;
  overflow: hidden;
}

.awn-dashboard-bar-fill {
  display: block;
  height: 100%;
  border-radius: inherit;
  background: linear-gradient(90deg, #2563eb, #60a5fa);
}

.awn-dashboard-bar-value {
  font-size: 11px;
  font-weight: 700;
  color: #1e3a8a;
  font-variant-numeric: tabular-nums;
}

.awn-dashboard-bar-note {
  margin: 10px 0 0;
  font-size: 11px;
  color: #94a3b8;
}

.awn-dashboard-chart {
  min-height: 120px;
}

.awn-dashboard-chart-bars {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(28px, 1fr));
  gap: 8px;
  align-items: end;
  height: 120px;
}

.awn-dashboard-chart-bar-col {
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: flex-end;
  gap: 6px;
  height: 100%;
}

.awn-dashboard-chart-bar-fill {
  display: block;
  width: 100%;
  max-width: 36px;
  min-height: 8px;
  border-radius: 6px 6px 2px 2px;
  background: linear-gradient(180deg, #60a5fa, #2563eb);
}

.awn-dashboard-chart-bar-label {
  font-size: 10px;
  font-weight: 700;
  color: #64748b;
}

.awn-dashboard-chart-svg {
  display: block;
  width: 100%;
  height: auto;
}

.awn-dashboard-chart-line {
  fill: none;
  stroke: #2563eb;
  stroke-width: 2.5;
  stroke-linecap: round;
  stroke-linejoin: round;
}

.awn-dashboard-chart-dot {
  fill: #fff;
  stroke: #2563eb;
  stroke-width: 2;
}

.awn-dashboard-chart-legend {
  display: flex;
  flex-wrap: wrap;
  gap: 8px 12px;
  margin-top: 8px;
  font-size: 10px;
  color: #64748b;
}

.awn-dashboard-chart-legend strong {
  color: #1e3a8a;
}

.awn-dashboard-chart--pie {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 12px 16px;
}

.awn-dashboard-chart-pie-ring {
  width: 96px;
  height: 96px;
  border-radius: 50%;
  flex-shrink: 0;
}

.awn-dashboard-chart--pie.is-donut .awn-dashboard-chart-pie-ring {
  mask: radial-gradient(circle 58% at 50% 50%, transparent 58%, #000 59%);
  -webkit-mask: radial-gradient(circle 58% at 50% 50%, transparent 58%, #000 59%);
}

.awn-dashboard-chart-pie-legend {
  list-style: none;
  margin: 0;
  padding: 0;
  font-size: 10px;
  color: #64748b;
  display: grid;
  gap: 4px;
}

.awn-dashboard-chart-pie-legend li {
  display: flex;
  align-items: center;
  gap: 6px;
}

.awn-dashboard-chart-swatch {
  width: 8px;
  height: 8px;
  border-radius: 2px;
  flex-shrink: 0;
}

.awn-dashboard-chart-hbars {
  display: grid;
  gap: 6px;
}

.awn-dashboard-chart-hbar-row {
  display: grid;
  grid-template-columns: minmax(48px, 28%) 1fr auto;
  gap: 8px;
  align-items: center;
  font-size: 10px;
}

.awn-dashboard-chart-hbar-label {
  color: #64748b;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.awn-dashboard-chart-hbar-track {
  display: block;
  height: 10px;
  border-radius: 999px;
  background: #e2e8f0;
  overflow: hidden;
}

.awn-dashboard-chart-hbar-fill {
  display: block;
  height: 100%;
  border-radius: 999px;
  background: linear-gradient(90deg, #7c6cff, #5b9dff);
}

.awn-dashboard-chart-hbar-value {
  font-weight: 700;
  color: #1e3a8a;
  min-width: 1.5em;
  text-align: right;
}

.awn-dashboard-loading,
.awn-dashboard-empty {
  padding: 20px;
  border-radius: 14px;
  border: 1px dashed #cbd5e1;
  background: #f8fafc;
  color: #64748b;
  font-size: 14px;
}

.awn-dashboard-empty-hint {
  margin: 8px 0 0;
  font-size: 12px;
}

.menu-awn-temp-stats {
  margin: 0 0 0.5rem;
  font-size: 0.8125rem;
  line-height: 1.35;
  color: #374151;
}

.menu-awn-temp-stats.is-empty {
  color: #6b7280;
}

.menu-awn-temp-stats.is-error {
  color: #b91c1c;
}

.node-journal {
  flex: 1 1 auto;
  min-height: 0;
  overflow: hidden;
  padding: 0;
  display: flex;
  flex-direction: column;
}

.node-journal-content,
.workspace-journal-host {
  flex: 1 1 auto;
  min-height: 0;
  display: flex;
  flex-direction: column;
  width: 100%;
  max-width: none;
  margin: 0;
}

.node-journal .workspace-journal-host,
.node-journal .workspace-journal-panel {
  flex: 1 1 auto;
  min-height: 0;
  max-height: none;
}

.node-journal .workspace-journal-list {
  min-height: 0;
  padding: 14px 18px 24px;
  gap: 12px;
}

.node-journal .workspace-journal-item {
  padding: 14px 16px;
}

.node-journal .workspace-journal-item-path-row {
  margin-top: 10px;
  padding-left: 1px;
}

.workspace-journal-panel {
  flex: 1 1 auto;
  min-height: 320px;
  display: flex;
  flex-direction: column;
  gap: 0;
  border: 1px solid rgba(148, 163, 184, 0.28);
  border-radius: 14px;
  overflow: clip;
  background: linear-gradient(165deg, #ffffff 0%, #f8fafc 48%, #f0fdf4 100%);
  box-shadow:
    0 1px 2px rgba(15, 23, 42, 0.04),
    0 10px 28px rgba(34, 197, 94, 0.05);
}

.workspace-journal-intro {
  margin: 0;
  padding: 14px 16px 0;
  font-size: 13px;
  line-height: 1.45;
  color: #64748b;
}

.workspace-journal-toolbar {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 8px 12px;
  padding: 10px 16px 12px;
}

.workspace-journal-filter {
  min-width: 132px;
  height: 30px;
  padding: 0 10px;
  border-radius: 8px;
  border: 1px solid rgba(148, 163, 184, 0.45);
  background: rgba(255, 255, 255, 0.92);
  font: inherit;
  font-size: 13px;
}

.workspace-journal-count {
  font-size: 12px;
  color: #94a3b8;
}

.workspace-journal-list {
  list-style: none;
  margin: 0;
  padding: 12px 14px 16px;
  flex: 1 1 auto;
  min-height: 0;
  overflow: auto;
  display: flex;
  flex-direction: column;
  gap: 10px;
  border-top: 1px solid rgba(148, 163, 184, 0.14);
  background:
    radial-gradient(ellipse 90% 70% at 12% 0%, rgba(34, 197, 94, 0.08), transparent 58%),
    radial-gradient(ellipse 80% 55% at 100% 100%, rgba(59, 130, 246, 0.06), transparent 52%),
    linear-gradient(180deg, rgba(255, 255, 255, 0.55) 0%, rgba(241, 245, 249, 0.35) 100%);
}

.workspace-journal-item {
  display: grid;
  grid-template-columns: 36px minmax(0, 1fr);
  gap: 12px 14px;
  align-items: start;
  padding: 13px 15px;
  border: 1px solid rgba(148, 163, 184, 0.24);
  border-radius: 14px;
  background: rgba(255, 255, 255, 0.94);
  box-shadow:
    0 1px 2px rgba(15, 23, 42, 0.04),
    0 8px 20px rgba(15, 23, 42, 0.03);
  transition:
    border-color 0.15s ease,
    box-shadow 0.15s ease,
    transform 0.15s ease;
}

.workspace-journal-item:hover {
  border-color: rgba(148, 163, 184, 0.38);
  box-shadow:
    0 2px 6px rgba(15, 23, 42, 0.05),
    0 10px 24px rgba(15, 23, 42, 0.05);
}

.workspace-journal-item-icon {
  margin-top: 2px;
}

.workspace-journal-item-main {
  min-width: 0;
  display: flex;
  flex-direction: column;
  gap: 8px;
}

.workspace-journal-item.is-notify {
  border-color: rgba(59, 130, 246, 0.34);
  background: linear-gradient(135deg, rgba(239, 246, 255, 0.96) 0%, rgba(255, 255, 255, 0.94) 72%);
  box-shadow:
    inset 3px 0 0 rgba(59, 130, 246, 0.72),
    0 1px 2px rgba(15, 23, 42, 0.04);
}

.workspace-journal-item-head {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: 12px 16px;
}

.workspace-journal-item-meta {
  display: inline-flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 6px 8px;
  min-width: 0;
}

.workspace-journal-item-author {
  font-size: 12px;
  color: #94a3b8;
}

.workspace-journal-item-author::before {
  content: "·";
  margin-right: 8px;
  color: #cbd5e1;
}

.workspace-journal-item-notify {
  font-size: 12px;
  line-height: 1;
}

.workspace-journal-item-time-col {
  flex: 0 0 auto;
  display: flex;
  flex-direction: column;
  align-items: flex-end;
  gap: 2px;
  text-align: right;
  white-space: nowrap;
}

.workspace-journal-item-time {
  font-size: 13px;
  font-weight: 700;
  color: #0f172a;
  font-variant-numeric: tabular-nums;
}

.workspace-journal-item-date {
  font-size: 11px;
  font-weight: 500;
  color: #94a3b8;
  text-transform: lowercase;
}

.workspace-journal-type-badge {
  display: inline-block;
  padding: 1px 7px;
  border-radius: 999px;
  font-size: 11px;
  font-weight: 600;
  letter-spacing: 0.02em;
  text-transform: lowercase;
  background: rgba(148, 163, 184, 0.16);
  color: #475569;
}

.workspace-journal-type-badge--life {
  background: rgba(244, 114, 182, 0.16);
  color: #be185d;
}

.workspace-journal-type-badge--action {
  background: rgba(59, 130, 246, 0.14);
  color: #1d4ed8;
}

.workspace-journal-type-badge--ui {
  background: rgba(34, 197, 94, 0.14);
  color: #15803d;
}

.workspace-journal-type-badge--system {
  background: rgba(100, 116, 139, 0.16);
  color: #334155;
}

.workspace-journal-item-body {
  white-space: pre-wrap;
  font-size: 14px;
  line-height: 1.58;
  color: #1e293b;
}

.workspace-journal-item-footer {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 8px 12px;
  padding-top: 8px;
  border-top: 1px solid rgba(148, 163, 184, 0.16);
}

.workspace-journal-item-path-row {
  margin-top: 8px;
  line-height: 1.4;
}

.workspace-journal-item-path {
  display: inline-flex;
  align-items: center;
  max-width: 100%;
  padding: 0;
  border: 0;
  background: none;
  font: inherit;
  font-size: 12px;
  color: #2563eb;
  text-align: left;
  word-break: break-all;
  cursor: pointer;
}

.workspace-journal-item-path:hover {
  text-decoration: underline;
}

.workspace-journal-item-file {
  margin: 0;
  font-size: 11px;
  color: #94a3b8;
  font-family: ui-monospace, SFMono-Regular, Menlo, monospace;
}

.workspace-journal-composer {
  flex: 0 0 auto;
  display: flex;
  flex-direction: column;
  gap: 8px;
  margin: 0;
  padding: 12px 14px 14px;
  border-top: 1px solid rgba(148, 163, 184, 0.14);
  background: rgba(255, 255, 255, 0.96);
  backdrop-filter: blur(10px);
}

.workspace-journal-composer-toolbar {
  display: grid;
  grid-template-columns: minmax(148px, auto) 1fr auto;
  align-items: center;
  gap: 10px 12px;
}

.workspace-journal-field {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  min-width: 0;
}

.workspace-journal-field-label {
  flex: 0 0 auto;
  font-size: 12px;
  font-weight: 600;
  color: #64748b;
  white-space: nowrap;
}

.workspace-journal-input {
  width: 100%;
  min-height: 3.25rem;
  max-height: 9rem;
  resize: vertical;
  padding: 10px 12px;
  border-radius: 10px;
  border: 1px solid rgba(148, 163, 184, 0.35);
  background: #fff;
  font: inherit;
  font-size: 14px;
  line-height: 1.45;
  box-sizing: border-box;
}

.workspace-journal-type,
.workspace-journal-submit {
  height: 34px;
  padding: 0 12px;
  border-radius: 8px;
  border: 1px solid rgba(148, 163, 184, 0.45);
  background: #fff;
  font: inherit;
  font-size: 13px;
  box-sizing: border-box;
}

.workspace-journal-type {
  min-width: 132px;
  max-width: 100%;
  flex: 1 1 auto;
  cursor: pointer;
  appearance: auto;
  -webkit-appearance: menulist;
}

.workspace-journal-submit {
  justify-self: end;
  border-color: rgba(34, 197, 94, 0.45);
  background: rgba(34, 197, 94, 0.12);
  color: #166534;
  font-weight: 600;
  cursor: pointer;
  white-space: nowrap;
}

.workspace-journal-submit:disabled {
  opacity: 0.45;
  cursor: default;
}

.workspace-journal-notify {
  display: inline-flex;
  align-items: center;
  justify-content: flex-end;
  gap: 6px;
  font-size: 13px;
  color: #475569;
  white-space: nowrap;
}

.workspace-journal-composer-hint {
  font-size: 12px;
  color: #94a3b8;
}

@media (max-width: 640px) {
  .workspace-journal-composer-toolbar {
    grid-template-columns: 1fr;
  }

  .workspace-journal-notify {
    justify-content: flex-start;
  }

  .workspace-journal-submit {
    justify-self: stretch;
    width: 100%;
  }
}

.workspace-journal-empty,
.workspace-journal-loading,
.workspace-journal-error {
  padding: 36px 16px;
  text-align: center;
  color: #94a3b8;
  font-size: 13px;
  line-height: 1.5;
}

.workspace-journal-error {
  color: #dc2626;
}

.workspace-path-header.is-node-journal .node-workspace-domain-select {
  min-width: 124px;
}

.menu-awn-databases-stores {
  list-style: none;
  margin: 0;
  padding: 0;
  display: flex;
  flex-direction: column;
  gap: 0.35rem;
}

.sidebar.is-menu-bottom-focus .menu-awn-databases-band:not(.is-collapsed),
.sidebar.is-menu-bottom-focus .menu-media-library-band:not(.is-collapsed),
.sidebar.is-menu-bottom-focus .menu-awn-scripts-band:not(.is-collapsed),
.sidebar.is-menu-bottom-focus .menu-repositories-band:not(.is-collapsed),
.sidebar.is-menu-bottom-focus .menu-static-footer:not(.is-collapsed),
.sidebar.is-menu-bottom-focus .menu-system-environment:not(.hidden).is-open {
  flex: 1 1 0;
  min-height: 0;
  display: flex;
  flex-direction: column;
  overflow: hidden;
}

.sidebar.is-menu-bottom-focus .menu-awn-databases-band-head,
.sidebar.is-menu-bottom-focus .menu-media-library-band-head,
.sidebar.is-menu-bottom-focus .menu-awn-scripts-band-head,
.sidebar.is-menu-bottom-focus .menu-repositories-band-head,
.sidebar.is-menu-bottom-focus .menu-static-footer-toggle-btn,
.sidebar.is-menu-bottom-focus .menu-system-environment-host {
  flex-shrink: 0;
}

.sidebar.is-menu-bottom-focus .menu-awn-databases-band-body,
.sidebar.is-menu-bottom-focus .menu-media-library-band-body,
.sidebar.is-menu-bottom-focus .menu-awn-scripts-band-body,
.sidebar.is-menu-bottom-focus .menu-repositories-band-body,
.sidebar.is-menu-bottom-focus .menu-static-footer-body,
.sidebar.is-menu-bottom-focus .menu-system-environment.is-open > .menu-system-environment-grid {
  flex: 1 1 0;
  min-height: 0;
  overflow-x: hidden;
  overflow-y: auto;
  overscroll-behavior: contain;
  -webkit-overflow-scrolling: touch;
}

.sidebar.is-menu-bottom-focus .menu-awn-databases-band-body > *,
.sidebar.is-menu-bottom-focus .menu-media-library-band-body > *,
.sidebar.is-menu-bottom-focus .menu-awn-scripts-band-body > *,
.sidebar.is-menu-bottom-focus .menu-repositories-band-body > *,
.sidebar.is-menu-bottom-focus .menu-static-footer-body > *,
.sidebar.is-menu-bottom-focus .menu-system-environment.is-open > .menu-system-environment-grid > * {
  flex-shrink: 0;
}

.menu-static-footer-sections > .menu-static-section {
  flex-shrink: 0;
}

.sidebar.is-menu-bottom-focus .menu-repositories-band-body .menu-repositories-list {
  max-height: none;
  overflow: visible;
}

.menu-awn-databases-store {
  display: flex;
  align-items: center;
  gap: 0.4rem;
  font-size: 0.8125rem;
  line-height: 1.3;
  padding: 0.25rem 0.35rem;
  border-radius: 0.375rem;
  background: rgba(255, 255, 255, 0.55);
}

.menu-awn-databases-store-kind {
  flex-shrink: 0;
  display: inline-flex;
  width: 14px;
  height: 14px;
  background-repeat: no-repeat;
  background-position: center center;
  background-size: 14px 14px;
}

.menu-awn-databases-store-kind--collection {
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%237c3aed' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M12 2 2 7l10 5 10-5-10-5z'/%3E%3Cpath d='M2 12l10 5 10-5'/%3E%3Cpath d='M2 17l10 5 10-5'/%3E%3C/svg%3E");
}

.menu-awn-databases-store-kind-wrap {
  flex-shrink: 0;
  display: inline-flex;
  align-items: center;
  gap: 2px;
}

.menu-awn-databases-store-kind-letter {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-width: 1.125rem;
  height: 1.125rem;
  padding: 0 0.2rem;
  font-size: 0.625rem;
  font-weight: 700;
  line-height: 1;
  letter-spacing: 0;
  text-transform: lowercase;
  border-radius: 3px;
  border: 1px solid transparent;
  box-sizing: border-box;
  white-space: nowrap;
}

.menu-awn-databases-store-kind-letter-md {
  color: #6d28d9;
  background: #f5f3ff;
  border-color: #ddd6fe;
}

.menu-awn-databases-store-kind-letter-md-lite {
  color: #7e22ce;
  background: #faf5ff;
  border-color: #e9d5ff;
}

.menu-awn-databases-store-kind-letter-csv {
  color: #0369a1;
  background: #f0f9ff;
  border-color: #bae6fd;
}

.menu-awn-databases-store-kind-letter-csv-files {
  color: #0e7490;
  background: #ecfeff;
  border-color: #a5f3fc;
}

.menu-awn-databases-store-kind-letter-files {
  color: #047857;
  background: #ecfdf5;
  border-color: #a7f3d0;
}

.menu-awn-databases-store-hierarchy-badge {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 1.125rem;
  height: 1.125rem;
  flex-shrink: 0;
  border-radius: 3px;
  color: #0f766e;
  background: #ecfdf5;
  border: 1px solid #99f6e4;
  box-sizing: border-box;
}

.menu-awn-databases-store-hierarchy-badge svg {
  width: 0.7rem;
  height: 0.7rem;
}

.menu-awn-databases-store.is-active .menu-awn-databases-store-hierarchy-badge {
  color: #115e59;
  background: #ccfbf1;
  border-color: #5eead4;
}

.menu-awn-databases-store-kind--single {
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%230891b2' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M14 2H6a2 2 0 0 0-2 2v16a2 2 0 0 0 2 2h12a2 2 0 0 0 2-2V8z'/%3E%3Cpath d='M14 2v6h6'/%3E%3Ccircle cx='12' cy='15' r='1.75' fill='%230891b2' stroke='none'/%3E%3C/svg%3E");
}

.menu-awn-databases-store-kind--group {
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23059669' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M22 19a2 2 0 0 1-2 2H4a2 2 0 0 1-2-2V5a2 2 0 0 1 2-2h5l2 3h9a2 2 0 0 1 2 2z'/%3E%3C/svg%3E");
}

.menu-awn-databases-store-group {
  list-style: none;
  border-radius: 0.375rem;
  background: rgba(255, 255, 255, 0.45);
  border: 1px solid rgba(124, 58, 237, 0.15);
  overflow: hidden;
  --menu-awn-databases-branch-x: var(--menu-win-branch-x, 6px);
  --menu-awn-databases-nest-inset: calc(var(--menu-win-toggle-slot, 16px) + var(--menu-win-toggle-gap, 4px));
}

.menu-awn-databases-store-group.is-empty {
  border-style: dashed;
  border-color: rgba(124, 58, 237, 0.28);
  background: rgba(255, 255, 255, 0.24);
}

.menu-awn-databases-store-group.is-empty .menu-awn-databases-store-group-head {
  color: #64748b;
}

.menu-awn-databases-store-group.is-empty.is-active .menu-awn-databases-store-group-head {
  color: #6d28d9;
}

.menu-awn-databases-store-group-head {
  display: flex;
  align-items: center;
  gap: 0.4rem;
  padding: 0.25rem 0.35rem;
  font-size: 0.8125rem;
  line-height: 1.3;
}

.menu-awn-databases-store-group-head .folder-toggle-btn {
  box-sizing: border-box;
  width: 12px;
  height: 12px;
  min-width: 12px;
  flex: 0 0 12px;
  margin-right: 2px;
  padding: 0;
  border: 1px solid #808080;
  border-radius: 0;
  background: #ffffff;
  color: #000000;
  font-family: Tahoma, "Segoe UI", sans-serif;
  font-size: 9px;
  font-weight: 700;
  line-height: 1;
}

.menu-awn-databases-store-group-head .folder-toggle-btn:hover:not(:disabled) {
  background: #ffffff;
  color: #000000;
}

.menu-awn-databases-store-group-head .folder-toggle-btn:disabled {
  opacity: 0.35;
  border-color: #c0c0c0;
}

.menu-awn-databases-store-group-head .folder-toggle-btn--empty-group {
  border-style: dashed;
  border-color: #c4b5fd;
  color: #8b5cf6;
}

.menu-awn-databases-store-group-open-btn {
  flex: 1 1 auto;
  min-width: 0;
  margin: 0;
  padding: 0;
  border: 0;
  background: transparent;
  color: inherit;
  font: inherit;
  text-align: left;
  cursor: pointer;
  display: inline-flex;
  align-items: center;
}

.menu-awn-databases-store-group-open-btn:hover,
.menu-awn-databases-store-group-open-btn:focus-visible {
  color: #5b21b6;
}

.menu-awn-databases-store-group-open-btn:focus-visible {
  outline: 2px solid rgba(124, 58, 237, 0.35);
  outline-offset: 1px;
}

.menu-awn-databases-store-group-open-btn .menu-awn-databases-store-name {
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.menu-awn-databases-store-group-actions {
  flex-shrink: 0;
  margin-left: auto;
  display: inline-flex;
  align-items: center;
  gap: 0.35rem;
}

.menu-awn-databases-store-group-body {
  padding: 0 0.35rem 0.35rem;
  display: flex;
  flex-direction: column;
  gap: 0.35rem;
}

.menu-awn-databases-store-group.is-collapsed .menu-awn-databases-store-group-body {
  display: none;
}

.menu-awn-databases-group-create-btn {
  box-sizing: border-box;
  min-width: 1.125rem;
  width: 1.125rem;
  height: 1.125rem;
  padding: 0;
  margin: 0;
  border: none;
  border-radius: 999px;
  background: #7c3aed;
  color: #fff;
  cursor: pointer;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  flex-shrink: 0;
  line-height: 0;
  -webkit-tap-highlight-color: transparent;
  touch-action: manipulation;
}

.menu-awn-databases-group-create-btn:hover {
  background: #6d28d9;
}

.menu-awn-databases-group-create-btn:focus {
  outline: none;
}

.menu-awn-databases-group-create-btn:focus-visible {
  outline: 2px solid rgba(124, 58, 237, 0.45);
  outline-offset: 1px;
}

.menu-awn-databases-group-create-icon {
  width: 0.625rem;
  height: 0.625rem;
  display: block;
  flex-shrink: 0;
}

.menu-awn-databases-store-group-children {
  list-style: none;
  margin: 0;
  padding: 0;
  display: flex;
  flex-direction: column;
  gap: 0;
}

.menu-awn-databases-store-group-children .menu-awn-databases-store {
  position: relative;
  z-index: 1;
  margin: 0;
  padding: 0.25rem 0;
  padding-left: var(--menu-awn-databases-nest-inset);
  border-radius: 0;
  background: transparent;
}

.menu-awn-databases-store-group-children .menu-awn-databases-store:hover {
  background: rgba(124, 58, 237, 0.08);
  border-radius: 0.375rem;
}

.menu-awn-databases-store-group-children .menu-awn-databases-store.is-active {
  background: #fef9c3;
  color: #854d0e;
  box-shadow: inset 0 0 0 1px #fde047;
  border-radius: 0.375rem;
}

.menu-awn-databases-store-group-children .menu-awn-databases-store.menu-tree-branch::before {
  content: "";
  position: absolute;
  left: var(--menu-awn-databases-branch-x);
  top: 0;
  bottom: 0;
  border-left: 1px dotted var(--menu-win-line, #808080);
  pointer-events: none;
  z-index: 0;
}

.menu-awn-databases-store-group-children .menu-awn-databases-store.menu-tree-branch:first-child::before {
  top: -0.25rem;
}

.menu-awn-databases-store-group-children .menu-awn-databases-store.menu-tree-branch-last::before {
  bottom: 50%;
}

.menu-awn-databases-store-group-children .menu-awn-databases-store.menu-tree-branch::after {
  content: "";
  position: absolute;
  left: var(--menu-awn-databases-branch-x);
  top: 50%;
  width: calc(var(--menu-awn-databases-nest-inset) - var(--menu-awn-databases-branch-x));
  border-top: 1px dotted var(--menu-win-line, #808080);
  pointer-events: none;
  z-index: 0;
}

.awn-databases-view-modal-kind.is-group {
  background: #ecfdf5;
  color: #047857;
}

.awn-databases-view-group-children {
  list-style: none;
  margin: 0;
  padding: 0.15rem 0;
  display: flex;
  flex-direction: column;
  gap: 0.35rem;
}

.awn-databases-view-group-child {
  margin: 0;
}

.awn-databases-view-group-child-btn {
  width: 100%;
  display: flex;
  align-items: center;
  gap: 0.4rem;
  text-align: left;
  padding: 0.3rem 0.4rem;
  border-radius: 0.375rem;
  border: 1px solid rgba(124, 58, 237, 0.12);
  background: rgba(255, 255, 255, 0.55);
  cursor: pointer;
  font: inherit;
  color: inherit;
  box-sizing: border-box;
  transition: background 0.12s ease, border-color 0.12s ease;
}

.awn-databases-view-group-child-btn:hover {
  background: rgba(124, 58, 237, 0.08);
  border-color: rgba(124, 58, 237, 0.22);
}

.awn-databases-view-group-child-kind {
  flex-shrink: 0;
}

.awn-databases-view-group-child-name {
  flex: 1 1 auto;
  min-width: 0;
  font-size: 0.8125rem;
  font-weight: 600;
  line-height: 1.25;
  color: #0f172a;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.awn-databases-view-group-child-meta {
  flex-shrink: 0;
}

.awn-databases-view-group-children.is-skeleton {
  min-height: 12.5rem;
}

.awn-databases-view-group-child.is-skeleton {
  padding: 0.15rem 0.2rem;
}

.awn-databases-view-group-child-skeleton-line {
  display: block;
  height: 1.75rem;
  border-radius: 0.375rem;
  background: linear-gradient(90deg, #f1f5f9 0%, #e2e8f0 45%, #f1f5f9 100%);
  background-size: 200% 100%;
  animation: awn-databases-view-group-skeleton 1.2s ease-in-out infinite;
}

@keyframes awn-databases-view-group-skeleton {
  0% {
    background-position: 100% 0;
  }

  100% {
    background-position: -100% 0;
  }
}

.awn-databases-view-elements-main.is-group-mode .awn-databases-view-table-wrap {
  border: none;
  border-radius: 0;
  background: transparent;
  padding: 0;
}

.awn-databases-view-elements-main.is-group-mode .awn-databases-view-elements-head {
  gap: 0.25rem;
}

.awn-databases-view-elements-main.is-single-mode .awn-databases-view-elements-head {
  display: none;
}

.awn-databases-view-elements-main.is-single-mode .awn-databases-view-table-wrap {
  border: none;
  border-radius: 0;
  background: transparent;
  padding: 0;
}

.awn-databases-view-store-panel.is-loading {
  opacity: 0.72;
  pointer-events: none;
  transition: opacity 0.15s ease;
}

.awn-databases-view-store-panel.is-loading .awn-databases-view-group-children:not(.is-skeleton) {
  filter: saturate(0.92);
}

.menu-awn-databases-store:hover .menu-awn-databases-store-kind--collection {
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%235b21b6' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M12 2 2 7l10 5 10-5-10-5z'/%3E%3Cpath d='M2 12l10 5 10-5'/%3E%3Cpath d='M2 17l10 5 10-5'/%3E%3C/svg%3E");
}

.menu-awn-databases-store:hover .menu-awn-databases-store-kind--single {
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%230e7490' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M14 2H6a2 2 0 0 0-2 2v16a2 2 0 0 0 2 2h12a2 2 0 0 0 2-2V8z'/%3E%3Cpath d='M14 2v6h6'/%3E%3Ccircle cx='12' cy='15' r='1.75' fill='%230e7490' stroke='none'/%3E%3C/svg%3E");
}

.menu-awn-databases-store-name {
  flex: 1;
  min-width: 0;
  font-size: 0.8125rem;
  font-weight: 600;
  line-height: 1.25;
  color: #0f172a;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.menu-awn-databases-store-meta {
  flex-shrink: 0;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 0.3rem;
}

.menu-awn-databases-store-badge {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  flex-shrink: 0;
}

.menu-awn-databases-store-badge--count {
  min-width: 1.125rem;
  height: 1.125rem;
  padding: 0 0.2rem;
  border-radius: 999px;
  background: #22c55e;
  color: #fff;
  font-size: 0.625rem;
  font-weight: 700;
  line-height: 1;
}

.menu-awn-databases-store-badge--count.is-zero {
  background: #e2e8f0;
  color: #475569;
}

.menu-awn-databases-store-group-empty-hint {
  margin: 0;
  padding: 0;
  padding-left: var(--menu-awn-databases-nest-inset);
  list-style: none;
}

.menu-awn-databases-store-group-empty-state {
  display: flex;
  align-items: center;
  justify-content: center;
  min-height: 2.75rem;
  padding: 0.35rem 0;
  margin: 0;
}

.awn-databases-empty-folder-icon,
.menu-awn-databases-store-group-empty-icon,
.node-navigation-hub-rail-slot-empty-icon {
  width: 32px;
  height: 32px;
  flex: 0 0 32px;
  opacity: 0.65;
  background: center / contain no-repeat
    url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%2394a3b8' stroke-width='1.6' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M4 7.5V5a2 2 0 0 1 2-2h4l2 2.5H18a2 2 0 0 1 2 2v8a2 2 0 0 1-2 2H6a2 2 0 0 1-2-2v-1.5'/%3E%3Cpath d='M8 13h8' stroke-dasharray='2.5 2.5'/%3E%3C/svg%3E");
}

.node-navigation-hub-rail-slot-empty-state {
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  gap: 6px;
  min-height: 2.75rem;
  padding: 10px 8px 12px;
  margin: 0;
  text-align: center;
}

.node-navigation-hub-rail-slot-empty-state.hidden {
  display: none;
}

.node-navigation-hub-rail-slot-empty-text {
  margin: 0;
  font-size: 11px;
  line-height: 1.4;
  color: #94a3b8;
}

.menu-awn-databases-store--empty {
  color: #64748b;
  font-size: 0.75rem;
  background: transparent;
}

.menu-awn-databases-store--empty.is-error {
  color: #b91c1c;
}

.menu-awn-databases-store--platform-note {
  color: #7c3aed;
  font-size: 0.6875rem;
  font-weight: 600;
  letter-spacing: 0.02em;
  text-transform: uppercase;
  padding: 0.2rem 0.5rem 0.05rem;
  cursor: default;
  background: transparent;
}

.menu-awn-databases-toolbar {
  display: flex;
  flex-direction: column;
  gap: 0.35rem;
  margin: 0;
}

.menu-awn-databases-toolbar-row {
  display: flex;
  flex-wrap: nowrap;
  align-items: stretch;
  gap: 0.35rem;
}

.menu-awn-databases-index-row {
  margin: 0.15rem 0 0;
  width: 100%;
}

.menu-awn-databases-index-row .node-navigation-workspace-counter-topic-index {
  min-height: 30px;
  height: 30px;
  padding: 0 8px;
  border-color: rgba(196, 181, 253, 0.85);
  background: rgba(255, 255, 255, 0.92);
  color: #6d28d9;
  font-size: 11px;
}

.menu-awn-databases-index-row .node-navigation-workspace-counter-topic-index.is-available {
  border-color: rgba(124, 58, 237, 0.45);
  background: rgba(245, 243, 255, 0.95);
  color: #5b21b6;
}

.menu-awn-databases-index-row .node-navigation-workspace-counter-topic-index.is-generated:hover,
.menu-awn-databases-index-row .node-navigation-workspace-counter-topic-index.is-available:hover {
  border-color: rgba(124, 58, 237, 0.62);
  background: #ede9fe;
  color: #5b21b6;
}

.menu-awn-databases-index-row .node-navigation-workspace-counter-topic-index-refresh {
  width: 30px;
  height: 30px;
  min-height: 30px;
  border-color: rgba(196, 181, 253, 0.85);
  background: rgba(255, 255, 255, 0.92);
  color: #7c3aed;
}

.menu-awn-databases-index-row .node-navigation-workspace-counter-topic-index-refresh:hover,
.menu-awn-databases-index-row .node-navigation-workspace-counter-topic-index-refresh:focus-visible {
  border-color: rgba(124, 58, 237, 0.62);
  background: #ede9fe;
  color: #5b21b6;
}

.menu-awn-databases-toolbar-row--search {
  margin: 0;
}

.menu-awn-databases-search-wrap {
  width: 100%;
  min-width: 0;
  margin: 0;
}

.menu-awn-databases-search-wrap .menu-search-bar {
  min-height: 32px;
  height: 32px;
  padding: 0 10px;
  border-color: rgba(196, 181, 253, 0.85);
  background: rgba(255, 255, 255, 0.92);
  border-radius: 6px;
  box-sizing: border-box;
}

.menu-awn-databases-search-wrap .menu-search-bar:focus-within {
  border-color: #7c3aed;
  box-shadow: 0 0 0 2px rgba(124, 58, 237, 0.14);
}

.menu-awn-databases-search-wrap .menu-search-input {
  font-size: 12px;
  line-height: 1.2;
  padding: 5px 0;
}

.menu-awn-databases-search-wrap .menu-search-icon {
  color: #8b5cf6;
}

.menu-awn-databases-create-btn {
  flex: 1 1 0;
  min-width: 0;
  width: auto;
  margin: 0;
  font-size: 0.6875rem;
  padding: 0.25rem 0.35rem;
  min-height: 1.6rem;
  white-space: nowrap;
}

.menu-awn-databases-create-btn--static {
  border-color: rgba(220, 38, 38, 0.35);
  background:
    linear-gradient(135deg, rgba(220, 38, 38, 0.06) 0%, rgba(248, 113, 113, 0.04) 100%),
    #fff;
  color: #991b1b;
}

.menu-awn-databases-create-btn--static:disabled {
  opacity: 0.72;
  cursor: not-allowed;
}

.menu-awn-databases-create-btn--static .stub-static-mark {
  font-size: 9px;
  font-weight: 700;
}

.menu-awn-databases-store {
  cursor: pointer;
}

.menu-awn-databases-store:hover {
  background: rgba(255, 255, 255, 0.85);
}

.menu-awn-databases-footer-caption {
  margin: 0.5rem 0 0;
  padding-top: 0.35rem;
  border-top: 1px solid rgba(196, 181, 253, 0.45);
  font-size: 0.6875rem;
  font-weight: 600;
  line-height: 1.3;
  color: #7c6f9b;
  text-align: center;
}

.menu-repositories-toolbar {
  display: flex;
  align-items: stretch;
  gap: 0.35rem;
  margin: 0 0 0.35rem;
}

.menu-repositories-shortcuts-row {
  display: flex;
  align-items: center;
  gap: 0;
  margin: 0 0 0.35rem;
}

.menu-repositories-shortcuts-row.hidden {
  display: none;
}

.menu-repositories-shortcuts-row > .menu-repositories-index-row {
  flex: 1 1 auto;
  width: 100%;
  min-width: 0;
  margin: 0;
  align-items: center;
  gap: 0.35rem;
  min-height: 30px;
}

.menu-repositories-shortcuts-row .menu-repositories-index-open {
  display: flex;
  align-items: center;
  justify-content: center;
  box-sizing: border-box;
  flex: 1 1 auto;
  min-width: 0;
  min-height: 30px;
  height: 30px;
  padding: 0 8px;
  border-color: rgba(37, 99, 235, 0.4);
  background: rgba(255, 255, 255, 0.92);
  color: #1d4ed8;
  font-size: 11px;
  line-height: 1.2;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
}

.menu-repositories-shortcuts-row .menu-repositories-index-open.is-available {
  border-color: rgba(37, 99, 235, 0.45);
  background: rgba(239, 246, 255, 0.95);
  color: #1e40af;
}

.menu-repositories-shortcuts-row .menu-repositories-index-open.is-generated:hover,
.menu-repositories-shortcuts-row .menu-repositories-index-open.is-available:hover {
  border-color: rgba(37, 99, 235, 0.62);
  background: #dbeafe;
  color: #1e3a8a;
}

.menu-repositories-shortcuts-row .menu-repositories-index-refresh {
  display: flex;
  align-items: center;
  justify-content: center;
  flex: 0 0 30px;
  box-sizing: border-box;
  width: 30px;
  min-width: 30px;
  height: 30px;
  min-height: 30px;
  padding: 0;
  border-color: rgba(37, 99, 235, 0.4);
  background: rgba(255, 255, 255, 0.92);
  color: #2563eb;
  font-size: 14px;
  line-height: 1;
}

.menu-repositories-shortcuts-row .menu-repositories-index-refresh:hover,
.menu-repositories-shortcuts-row .menu-repositories-index-refresh:focus-visible {
  border-color: rgba(37, 99, 235, 0.62);
  background: #dbeafe;
  color: #1e3a8a;
}

.menu-repositories-toolbar-row--search {
  margin: 0 0 0.35rem;
}

.menu-repositories-search-wrap {
  width: 100%;
  min-width: 0;
  margin: 0;
}

.menu-repositories-search-wrap .menu-search-bar {
  min-height: 32px;
  height: 32px;
  padding: 0 10px;
  border-color: rgba(147, 197, 253, 0.85);
  background: rgba(255, 255, 255, 0.92);
  border-radius: 6px;
  box-sizing: border-box;
}

.menu-repositories-search-wrap .menu-search-bar:focus-within {
  border-color: #2563eb;
  box-shadow: 0 0 0 2px rgba(37, 99, 235, 0.14);
}

.menu-repositories-groups-btn,
.menu-repositories-create-btn {
  flex: 1 1 0;
  min-width: 0;
  width: auto;
  margin: 0;
  font-size: 0.6875rem;
  padding: 0.28rem 0.45rem;
  min-height: 1.75rem;
  white-space: nowrap;
}

.menu-awn-channels-toolbar .menu-awn-channels-actions-row {
  width: 100%;
  min-width: 0;
}

.menu-awn-channels-toolbar .menu-awn-channels-index-row.node-navigation-workspace-counter-topic-index-row {
  flex: 1 1 auto;
  min-width: 0;
  margin: 0;
  align-items: center;
  gap: 0.35rem;
  min-height: 30px;
}

.menu-repositories-groups-btn {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 0.35rem;
  color: #1d4ed8;
  border-color: rgba(37, 99, 235, 0.28);
  background: rgba(219, 234, 254, 0.72);
}

.menu-repositories-groups-btn:hover,
.menu-repositories-groups-btn:focus-visible {
  color: #1e40af;
  border-color: rgba(37, 99, 235, 0.45);
  background: rgba(219, 234, 254, 0.98);
}

.menu-repositories-groups-icon {
  width: 0.9rem;
  height: 0.9rem;
  flex: 0 0 auto;
  display: block;
}

.menu-repositories-groups-label {
  overflow: hidden;
  text-overflow: ellipsis;
}

.menu-repositories-list {
  list-style: none;
  margin: 0.25rem 0 0;
  padding: 0;
  display: flex;
  flex-direction: column;
  gap: 0.35rem;
  min-height: 2.5rem;
  max-height: min(36vh, 280px);
  overflow-y: auto;
  overflow-x: hidden;
  overscroll-behavior: contain;
  transition: opacity 0.15s ease;
}

.menu-repositories-list > .menu-repository-item--empty,
.menu-repositories-list > .menu-repository-item--skeleton {
  border-radius: 0.375rem;
  background: rgba(255, 255, 255, 0.45);
  border: 1px dashed rgba(37, 99, 235, 0.2);
}

.menu-repositories-list.is-loading {
  opacity: 0.55;
  pointer-events: none;
}

.menu-repository-item {
  display: grid;
  grid-template-columns: auto auto 1fr;
  align-items: center;
  gap: 0.35rem 0.45rem;
  font-size: 0.8125rem;
  line-height: 1.3;
  padding: 0.3rem 0.35rem;
  border-radius: 0.375rem;
  background: rgba(255, 255, 255, 0.55);
  cursor: pointer;
}

.menu-repository-leading {
  display: inline-flex;
  align-items: center;
  gap: 0.2rem;
  flex-shrink: 0;
}

.menu-repository-git-icon {
  width: 1rem;
  height: 1rem;
  padding: 0;
  border: 0;
  background: transparent;
}

.menu-repository-git-icon .menu-marker-svg {
  width: 0.875rem;
  height: 0.875rem;
}

.menu-repository-item--has-preview {
  grid-template-columns: auto auto 1fr auto;
}

.menu-repository-preview-btn {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 1.75rem;
  height: 1.75rem;
  padding: 0;
  border: 0;
  border-radius: 0.375rem;
  background: rgba(99, 102, 241, 0.12);
  color: #4338ca;
  cursor: pointer;
  flex-shrink: 0;
}

.menu-repository-preview-btn:hover,
.menu-repository-preview-btn:focus-visible {
  background: rgba(99, 102, 241, 0.22);
  outline: none;
}

.menu-repository-item--unregistered {
  grid-template-columns: auto 1fr auto;
  cursor: default;
  background: rgba(251, 191, 36, 0.1);
}

.menu-repository-item--unregistered:hover,
.menu-repository-item--unregistered:focus-visible {
  background: rgba(251, 191, 36, 0.1);
}

.menu-repository-item:hover,
.menu-repository-item:focus-visible {
  background: rgba(255, 255, 255, 0.88);
  outline: none;
}

.menu-repository-item--empty {
  cursor: default;
  color: #6b7280;
  background: transparent;
}

.menu-repository-item--empty.is-error {
  color: #b91c1c;
}

.menu-repository-status {
  flex-shrink: 0;
  font-size: 0.625rem;
  font-weight: 700;
  letter-spacing: 0.02em;
  text-transform: uppercase;
  padding: 0.12rem 0.35rem;
  border-radius: 999px;
  background: rgba(99, 102, 241, 0.12);
  color: #4338ca;
}

.menu-repository-status.is-active {
  background: rgba(16, 185, 129, 0.14);
  color: #047857;
}

.menu-repository-status.is-study {
  background: rgba(59, 130, 246, 0.12);
  color: #1d4ed8;
}

.menu-repository-status.is-archived {
  background: rgba(107, 114, 128, 0.14);
  color: #4b5563;
}

.menu-repository-status.is-unregistered {
  background: rgba(251, 191, 36, 0.18);
  color: #b45309;
}

.menu-repository-adopt-btn {
  flex-shrink: 0;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 1.35rem;
  height: 1.35rem;
  padding: 0;
  border: 1px solid rgba(180, 83, 9, 0.35);
  border-radius: 0.3rem;
  background: rgba(255, 255, 255, 0.85);
  color: #b45309;
  cursor: pointer;
}

.menu-repository-adopt-btn:hover,
.menu-repository-adopt-btn:focus-visible {
  background: #fff;
  outline: none;
  border-color: rgba(180, 83, 9, 0.55);
}

.menu-repository-body {
  display: flex;
  flex-direction: row;
  align-items: center;
  gap: 0.4rem;
  flex: 1 1 auto;
  min-width: 0;
}

.menu-repository-group {
  list-style: none;
  border-radius: 0.375rem;
  background: rgba(255, 255, 255, 0.45);
  border: 1px solid rgba(37, 99, 235, 0.15);
  overflow: hidden;
  --menu-repositories-branch-x: var(--menu-win-branch-x, 6px);
  --menu-repositories-nest-inset: calc(var(--menu-win-toggle-slot, 16px) + var(--menu-win-toggle-gap, 4px));
}

.menu-repository-group.is-empty {
  border-style: dashed;
  border-color: rgba(37, 99, 235, 0.28);
  background: rgba(255, 255, 255, 0.24);
}

.menu-repository-group-head {
  display: flex;
  align-items: center;
  gap: 0.4rem;
  padding: 0.25rem 0.35rem;
  font-size: 0.6875rem;
  font-weight: 700;
  letter-spacing: 0.03em;
  text-transform: uppercase;
  color: #1e40af;
  line-height: 1.3;
}

.menu-repository-group-head--unregistered {
  color: #b45309;
}

.menu-repository-group-head .folder-toggle-btn {
  box-sizing: border-box;
  width: 12px;
  height: 12px;
  min-width: 12px;
  flex: 0 0 12px;
  margin-right: 2px;
  padding: 0;
  border: 1px solid #808080;
  border-radius: 0;
  background: #ffffff;
  color: #000000;
  font-family: Tahoma, "Segoe UI", sans-serif;
  font-size: 9px;
  font-weight: 700;
  line-height: 1;
}

.menu-repository-group-head .folder-toggle-btn:hover:not(:disabled) {
  background: #ffffff;
  color: #000000;
}

.menu-repository-group-head .folder-toggle-btn:disabled {
  opacity: 0.35;
  border-color: #c0c0c0;
}

.menu-repository-group-head .folder-toggle-btn--empty-group {
  border-style: dashed;
  border-color: rgba(37, 99, 235, 0.45);
  color: #2563eb;
}

.menu-repository-group-label {
  flex: 1 1 auto;
  min-width: 0;
  display: flex;
  align-items: center;
  gap: 0.35rem;
}

.menu-repository-group-title {
  min-width: 0;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.menu-repository-group-count {
  margin-left: auto;
  flex-shrink: 0;
  font-size: 0.625rem;
  font-weight: 700;
  color: #94a3b8;
}

.menu-repository-group-body {
  padding: 0 0.35rem 0.35rem;
  display: flex;
  flex-direction: column;
  gap: 0;
}

.menu-repository-group.is-collapsed > .menu-repository-group-body {
  display: none;
}

.menu-repository-group-drag-handle {
  cursor: grab;
  opacity: 0.45;
  flex-shrink: 0;
}

.menu-repository-group-drag-handle:hover,
.menu-repository-group-drag-handle:focus-visible {
  opacity: 0.95;
}

.menu-repository-item.is-repository-group-dragging {
  opacity: 0.45;
}

.menu-repository-group.is-repository-group-drop-target {
  outline: 2px solid rgba(37, 99, 235, 0.55);
  outline-offset: 1px;
  background: rgba(37, 99, 235, 0.06);
}

.menu-repository-group-drop-empty {
  margin: 0.15rem 0 0.2rem;
  padding: 0.35rem 0.5rem;
  border: 1px dashed rgba(148, 163, 184, 0.55);
  border-radius: 0.375rem;
  font-size: 0.75rem;
  line-height: 1.3;
  color: #94a3b8;
  text-align: center;
  list-style: none;
}

.menu-repository-group.is-repository-group-drop-target .menu-repository-group-drop-empty {
  border-color: rgba(99, 102, 241, 0.65);
  color: #4338ca;
  background: rgba(99, 102, 241, 0.08);
}

.menu-repository-group-children {
  list-style: none;
  margin: 0;
  padding: 0;
  display: flex;
  flex-direction: column;
  gap: 0;
}

.menu-repository-group-children > .menu-repository-item {
  position: relative;
  z-index: 1;
  margin: 0;
  padding: 0.25rem 0;
  padding-left: var(--menu-repositories-nest-inset);
  border-radius: 0;
  background: transparent;
}

.menu-repository-group-children > .menu-repository-item:hover,
.menu-repository-group-children > .menu-repository-item:focus-visible {
  background: rgba(37, 99, 235, 0.08);
  border-radius: 0.375rem;
}

.menu-repository-group-children > .menu-repository-item.menu-tree-branch::before {
  content: "";
  position: absolute;
  left: var(--menu-repositories-branch-x);
  top: 0;
  bottom: 0;
  border-left: 1px dotted var(--menu-win-line, #808080);
  pointer-events: none;
  z-index: 0;
}

.menu-repository-group-children > .menu-repository-item.menu-tree-branch:first-child::before {
  top: -0.25rem;
}

.menu-repository-group-children > .menu-repository-item.menu-tree-branch-last::before {
  bottom: 50%;
}

.menu-repository-group-children > .menu-repository-item.menu-tree-branch::after {
  content: "";
  position: absolute;
  left: var(--menu-repositories-branch-x);
  top: 50%;
  width: calc(var(--menu-repositories-nest-inset) - var(--menu-repositories-branch-x));
  border-top: 1px dotted var(--menu-win-line, #808080);
  pointer-events: none;
  z-index: 0;
}

.menu-repository-group-children > .menu-repository-item--unregistered:hover,
.menu-repository-group-children > .menu-repository-item--unregistered:focus-visible {
  background: rgba(251, 191, 36, 0.14);
}

.menu-repository-item--skeleton {
  min-height: 2rem;
}

.repository-create-fields {
  display: flex;
  flex-direction: column;
  gap: 0.65rem;
}

.repository-create-fields.is-loading {
  opacity: 0.65;
  pointer-events: none;
}

.repository-create-fields select,
.repository-create-fields input[type="text"],
.repository-create-fields input[type="url"],
.repository-create-fields textarea {
  width: 100%;
  font: inherit;
  font-size: 0.8125rem;
  padding: 0.45rem 0.55rem;
  border: 1px solid #cbd5e1;
  border-radius: 0.375rem;
  background: #fff;
  color: #0f172a;
}

#repository-create-modal .create-form-indexing-option,
#media-library-create-modal .create-form-indexing-option {
  margin-top: 0.35rem;
  margin-bottom: 0;
}

#repository-create-modal .modal-actions {
  margin-top: 1rem;
  padding-top: 0.85rem;
  border-top: 1px solid #e2e8f0;
}

.repository-groups-modal-card {
  width: min(32rem, calc(100vw - 2rem));
  max-height: min(80vh, 36rem);
  display: flex;
  flex-direction: column;
  padding: 0;
  overflow: hidden;
}

.repository-groups-modal-header {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: 0.75rem;
  padding: 1rem 1rem 0.65rem;
  border-bottom: 1px solid #e2e8f0;
}

.repository-groups-modal-heading .modal-message {
  margin: 0;
  font-size: 1rem;
  line-height: 1.25;
}

.repository-groups-modal-subtitle {
  margin: 0.35rem 0 0;
  font-size: 0.75rem;
  line-height: 1.35;
  color: #64748b;
}

.repository-groups-modal-subtitle code {
  font-size: 0.6875rem;
}

.repository-groups-modal-close {
  flex-shrink: 0;
}

.repository-groups-modal-toolbar {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 0.75rem;
  padding: 0.55rem 1rem;
  border-bottom: 1px solid #eef2f7;
  background: #f8fafc;
}

.repository-groups-modal-toolbar-label {
  font-size: 0.6875rem;
  font-weight: 700;
  letter-spacing: 0.03em;
  text-transform: uppercase;
  color: #6d28d9;
}

.repository-groups-add-btn {
  flex-shrink: 0;
  margin: 0;
  padding: 0.28rem 0.55rem;
  border: 1px solid rgba(109, 40, 217, 0.28);
  border-radius: 0.375rem;
  background: #fff;
  color: #6d28d9;
  font: inherit;
  font-size: 0.6875rem;
  font-weight: 600;
  cursor: pointer;
}

.repository-groups-add-btn:hover,
.repository-groups-add-btn:focus-visible {
  background: #f5f3ff;
  border-color: rgba(109, 40, 217, 0.45);
  outline: none;
}

.repository-groups-modal-body {
  flex: 1 1 auto;
  min-height: 0;
  padding: 0.65rem 1rem 0.75rem;
  overflow: auto;
}

.repository-groups-table-head,
.repository-groups-row {
  display: grid;
  grid-template-columns: 1.35rem minmax(5.5rem, 0.9fr) minmax(7rem, 1.4fr) 2rem;
  gap: 0.45rem;
  align-items: center;
}

.repository-groups-table-head {
  margin-bottom: 0.35rem;
  padding: 0 0.15rem;
  font-size: 0.625rem;
  font-weight: 700;
  letter-spacing: 0.04em;
  text-transform: uppercase;
  color: #94a3b8;
}

.repository-groups-list {
  list-style: none;
  margin: 0;
  padding: 0;
  display: flex;
  flex-direction: column;
  gap: 0.4rem;
}

.repository-groups-row {
  padding: 0.35rem;
  border: 1px solid #e2e8f0;
  border-radius: 0.5rem;
  background: #fff;
}

.repository-groups-row.is-dragging {
  opacity: 0.72;
  border-color: rgba(109, 40, 217, 0.35);
  box-shadow: 0 4px 14px rgba(109, 40, 217, 0.12);
}

.repository-groups-row--default {
  background: #fafafa;
  border-color: #e5e7eb;
}

.repository-groups-cell--handle {
  display: flex;
  align-items: center;
  justify-content: center;
}

.repository-groups-sort-handle {
  cursor: grab;
  color: #94a3b8;
}

.repository-groups-sort-handle:active {
  cursor: grabbing;
}

.repository-groups-cell input {
  width: 100%;
  box-sizing: border-box;
  font: inherit;
  font-size: 0.75rem;
  padding: 0.38rem 0.5rem;
  border: 1px solid #cbd5e1;
  border-radius: 0.375rem;
  background: #fff;
  color: #0f172a;
}

.repository-groups-cell input.is-readonly {
  background: #f1f5f9;
  color: #64748b;
  cursor: default;
}

.repository-groups-cell--actions {
  display: flex;
  align-items: center;
  justify-content: center;
}

.repository-groups-row-remove {
  flex-shrink: 0;
  width: 1.65rem;
  height: 1.65rem;
  padding: 0;
  border: 1px solid rgba(185, 28, 28, 0.22);
  border-radius: 0.35rem;
  background: #fff;
  color: #b91c1c;
  font-size: 1rem;
  line-height: 1;
  cursor: pointer;
}

.repository-groups-row-remove:hover:not(:disabled),
.repository-groups-row-remove:focus-visible:not(:disabled) {
  background: #fef2f2;
  border-color: rgba(185, 28, 28, 0.4);
  outline: none;
}

.repository-groups-row-remove:disabled {
  opacity: 0.35;
  cursor: not-allowed;
  border-color: #e2e8f0;
  color: #94a3b8;
}

.repository-groups-modal-actions {
  padding: 0.75rem 1rem 1rem;
  border-top: 1px solid #e2e8f0;
  margin: 0;
}

.agents-registry-create-field input.is-readonly {
  background: #f8fafc;
  color: #64748b;
}

.menu-repository-name-wrap,
.menu-repository-name-row {
  display: flex;
  align-items: center;
  gap: 0.3rem;
  min-width: 0;
  max-width: 100%;
}

.menu-repository-book-icon {
  flex: 0 0 auto;
  width: 1rem;
  font-size: 0.8125rem;
  line-height: 1;
  text-align: center;
}

.menu-repository-id-badge {
  flex-shrink: 0;
  align-self: center;
}

.menu-repository-name {
  flex: 1 1 auto;
  min-width: 0;
  font-size: 0.8125rem;
  font-weight: 600;
  line-height: 1.25;
  color: #1f2937;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.menu-repository-meta,
.menu-repository-meta-row {
  flex-shrink: 0;
  margin-left: auto;
  padding-left: 0.25rem;
  display: inline-flex;
  align-items: center;
  justify-content: flex-end;
  gap: 0.35rem;
  min-width: 0;
}

.menu-repository-slug {
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
  min-width: 0;
}

.menu-repositories-band-body .menu-repository-slug-badge {
  box-sizing: border-box;
  display: inline-flex;
  align-items: center;
  height: 1.125rem;
  margin: 0;
  padding: 0 0.4rem;
  border: 1px solid rgba(37, 99, 235, 0.35);
  border-radius: 0.25rem;
  font-size: 0.625rem;
  font-weight: 600;
  line-height: 1;
  letter-spacing: 0.01em;
  color: #1d4ed8;
  background: rgba(239, 246, 255, 0.92);
  max-width: 6.5rem;
}

.menu-repository-files-badge {
  flex-shrink: 0;
}

.menu-repository-item.is-dragging-voice-chat-context {
  opacity: 0.72;
  outline: 1px dashed rgba(109, 40, 217, 0.45);
  outline-offset: 1px;
}

.menu-repositories-footer-caption {
  margin: 0.5rem 0 0;
  padding-top: 0.35rem;
  border-top: 1px solid rgba(147, 197, 253, 0.45);
  font-size: 0.6875rem;
  font-weight: 600;
  line-height: 1.3;
  color: #1e40af;
  text-align: center;
}

.awn-databases-modal-card {
  max-width: 28rem;
}

.awn-channels-create-modal-card {
  width: min(36rem, calc(100vw - 2rem));
  max-width: min(36rem, calc(100vw - 2rem));
}

.awn-databases-modal-card .slug-field-row {
  margin-bottom: 10px;
}

.awn-databases-modal-card #awn-databases-create-parent-hint {
  margin-top: 4px;
}

.awn-databases-view-comments-mount {
  margin-top: 18px;
}

.awn-databases-view-comments-mount .node-comments {
  margin-top: 0;
}

.awn-databases-view-iblock-comments-mount {
  margin-top: 18px;
}

.awn-databases-view-record-panel .awn-databases-view-record-comments-mount {
  margin-top: 0.75rem;
  padding-top: 0;
  border-top: none;
}

.awn-databases-view-comments-mount .node-comments.is-disabled .node-comments-composer {
  opacity: 0.72;
}

.awn-databases-view-comments-mount .node-comments.is-disabled .node-comments-input {
  cursor: not-allowed;
}

.awn-databases-view-hub {
  position: relative;
  display: flex;
  flex-direction: column;
  gap: 0.75rem;
}

.awn-databases-view-hub.folder-browse-hub {
  gap: 0.75rem;
}

.awn-databases-view-hub.is-initial-loading {
  min-height: min(55vh, 420px);
}

.awn-databases-view-loading-overlay {
  position: absolute;
  inset: 0;
  z-index: 6;
  display: flex;
  align-items: center;
  justify-content: center;
  background: rgba(255, 255, 255, 0.78);
  backdrop-filter: blur(1px);
}

.awn-databases-view-loading-overlay.is-initial {
  background: #ffffff;
  backdrop-filter: none;
}

.awn-databases-view-loading-overlay.hidden {
  display: none;
}

.awn-databases-view-loading-spinner {
  width: 28px;
  height: 28px;
  border: 2.5px solid #e2e8f0;
  border-top-color: #7c3aed;
  border-radius: 50%;
  animation: awn-databases-view-iblock-spin 0.7s linear infinite;
}

.awn-databases-view-hub.is-initial-loading .awn-databases-view-page-body {
  visibility: hidden;
  pointer-events: none;
}

.awn-databases-view-page-body {
  display: flex;
  flex-direction: column;
  gap: 0.55rem;
}

.awn-databases-view-iblock-layout {
  display: flex;
  flex-direction: column;
  gap: 0.85rem;
  min-height: 0;
}

.awn-databases-view-iblock-layout.is-record-mode {
  display: none;
}

.awn-databases-view-iblock-layout.is-record-mode .awn-databases-view-schema-panel,
.awn-databases-view-iblock-layout.is-record-mode .awn-databases-view-elements-main {
  display: none;
}

.awn-databases-view-iblock-description-block {
  display: flex;
  flex-direction: column;
  gap: 0;
}

.awn-databases-view-iblock-description-block.hidden {
  display: none;
}

.awn-databases-view-description-card {
  border: 1px solid #e2e8f0;
  border-radius: 0.75rem;
  background: #fff;
  box-shadow: 0 1px 2px rgba(15, 23, 42, 0.04);
  overflow: hidden;
}

.awn-databases-view-description-card-head {
  padding: 0.85rem 0.95rem;
  background: linear-gradient(180deg, #f8fafc 0%, #f1f5f9 100%);
  border-bottom: none;
}

.awn-databases-view-iblock-card-head {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: 0.75rem;
  position: relative;
  min-height: 4.75rem;
  box-sizing: border-box;
}

.awn-databases-view-iblock-card-head-actions {
  flex: 0 0 auto;
  margin-left: auto;
  padding-top: 0.1rem;
}

.awn-databases-view-iblock-card-head-actions.hidden {
  display: none;
}

.awn-databases-view-iblock-card-head-actions .node-navigation-hero-actions {
  justify-content: flex-end;
}

.awn-databases-view-iblock-description-block.is-loading:not(.is-skeleton) .awn-databases-view-description-card {
  opacity: 0.88;
  transition: opacity 0.15s ease;
}

.awn-databases-view-iblock-description-block.is-loading:not(.is-skeleton) .awn-databases-view-iblock-card-head::after {
  content: "";
  position: absolute;
  top: 0.95rem;
  right: 0.95rem;
  width: 14px;
  height: 14px;
  border: 2px solid #cbd5e1;
  border-top-color: #7c3aed;
  border-radius: 50%;
  animation: awn-databases-view-iblock-spin 0.7s linear infinite;
  pointer-events: none;
}

@keyframes awn-databases-view-iblock-spin {
  to {
    transform: rotate(360deg);
  }
}

.awn-databases-view-iblock-description-block.is-skeleton .awn-databases-view-title.is-skeleton-block,
.awn-databases-view-iblock-description-block.is-skeleton .awn-databases-view-kind-badge.is-skeleton-badge,
.awn-databases-view-iblock-description-block.is-skeleton .awn-databases-view-path.is-skeleton-path {
  display: inline-block;
  color: transparent;
  border-radius: 0.35rem;
  background: linear-gradient(90deg, #eef2f7 0%, #e2e8f0 45%, #eef2f7 100%);
  background-size: 200% 100%;
  animation: awn-databases-view-group-skeleton 1.2s ease-in-out infinite;
}

.awn-databases-view-iblock-description-block.is-skeleton .awn-databases-view-title.is-skeleton-block {
  width: min(240px, 58%);
  height: 1.25rem;
}

.awn-databases-view-iblock-description-block.is-skeleton .awn-databases-view-kind-badge.is-skeleton-badge {
  width: 7.5rem;
  height: 1.125rem;
}

.awn-databases-view-iblock-description-block.is-skeleton .awn-databases-view-path.is-skeleton-path {
  width: min(300px, 78%);
  height: 0.875rem;
}

.awn-databases-view-table--skeleton {
  min-height: 14rem;
}

.awn-databases-view-table--skeleton td.is-skeleton {
  padding-top: 0.55rem;
  padding-bottom: 0.55rem;
}

.awn-databases-view-table-skeleton-line {
  display: block;
  height: 0.75rem;
  border-radius: 0.3rem;
  background: linear-gradient(90deg, #f1f5f9 0%, #e2e8f0 45%, #f1f5f9 100%);
  background-size: 200% 100%;
  animation: awn-databases-view-group-skeleton 1.2s ease-in-out infinite;
}

.awn-databases-view-table--skeleton tbody tr:nth-child(3n + 2) .awn-databases-view-table-skeleton-line {
  width: 72%;
}

.awn-databases-view-table--skeleton tbody tr:nth-child(3n) .awn-databases-view-table-skeleton-line {
  width: 56%;
}

.awn-databases-view-iblock-card-head-main {
  flex: 1 1 auto;
  display: flex;
  flex-direction: column;
  gap: 0.35rem;
  min-width: 0;
}

.awn-databases-view-iblock-title-row {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 0.5rem 0.65rem;
  min-width: 0;
}

.awn-databases-view-iblock-card .awn-databases-view-title {
  margin: 0;
  font-size: clamp(1.0625rem, 2.2vw, 1.25rem);
  line-height: 1.3;
  font-weight: 700;
  color: #0f172a;
  word-break: break-word;
}

.awn-databases-view-iblock-card .awn-databases-view-path {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  gap: 0.15rem;
  font-size: 0.8125rem;
  line-height: 1.35;
  color: #64748b;
  font-family: ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, monospace;
}

.awn-databases-view-iblock-card .awn-databases-view-path-line {
  display: block;
}

.awn-databases-view-iblock-card .awn-databases-view-id-path {
  margin: 0;
  font-family: inherit;
  font-size: 0.75rem;
  line-height: 1.35;
}

.awn-databases-view-iblock-card .awn-databases-view-id-path .node-navigation-hero-path-fix--id {
  margin-left: 0.35rem;
}

.node-navigation-hub.is-media-library-workspace-hub > .node-navigation-hub-main {
  gap: 8px;
}

.node-navigation-hub.is-awn-channel-workspace-hub > .node-navigation-hub-main > .node-entry-overview-hub-top-slot-counters {
  margin: 0 0 4px;
}

.node-navigation-hub.is-awn-channel-workspace-hub
  > .node-navigation-hub-main
  > .node-entry-overview-hub-workspace-slot-counters
  .node-navigation-workspace-counter-list {
  grid-template-columns: repeat(3, minmax(0, 1fr));
}

.node-navigation-hub.is-media-library-workspace-hub .media-library-workspace-iblock-layout {
  display: flex;
  flex-direction: column;
  gap: 0;
  margin-bottom: 0;
}

.node-navigation-hub.is-media-library-workspace-hub .media-library-workspace-iblock-layout .awn-databases-view-schema-panel {
  margin: 0;
  gap: 0;
}

.node-navigation-hub.is-media-library-workspace-hub .media-library-workspace-iblock-block .awn-databases-view-iblock-card {
  border: 1px solid #e2e8f0;
  border-bottom: none;
  border-radius: 12px 12px 0 0;
  background: #fff;
  box-shadow: 0 1px 2px rgba(15, 23, 42, 0.04);
}

.node-navigation-hub.is-media-library-workspace-hub .media-library-workspace-iblock-layout .awn-databases-view-schema-fields-accordion {
  border-radius: 0 0 12px 12px;
}

.node-navigation-hub.is-media-library-workspace-hub .media-library-workspace-iblock-layout .awn-databases-view-schema-fields-accordion .awn-databases-view-accordion-body {
  padding-bottom: 0.55rem;
}

.node-navigation-hub.is-media-library-workspace-hub .media-library-workspace-iblock-layout .topic-schema-panel {
  padding-bottom: 0;
}

.node-navigation-hub.is-media-library-workspace-hub .node-entry-overview-browse-panel > .node-entry-overview-browse-hero-nav.node-navigation-manifest-nav {
  margin-top: 0;
  margin-bottom: 8px;
}

.is-media-library-workspace-hub .media-library-workspace-iblock-block .awn-databases-view-kind-badge.is-media-library {
  color: #0e7490;
  background: #ecfeff;
  border: 1px solid #a5f3fc;
}

.awn-databases-view-kind-badge.is-media-library {
  color: #0e7490;
  background: #ecfeff;
  border: 1px solid #a5f3fc;
}

.awn-channel-workspace-hero-icon-wrap {
  flex: 0 0 auto;
  display: flex;
  align-items: center;
  justify-content: center;
  width: 3.25rem;
  height: 3.25rem;
  border-radius: 12px;
  background: linear-gradient(165deg, #fff5f5 0%, #fee2e2 55%, #fecaca 100%);
  border: 1px solid rgba(248, 113, 113, 0.55);
  box-shadow:
    0 1px 2px rgba(185, 28, 28, 0.1),
    inset 0 1px 0 rgba(255, 255, 255, 0.75);
  color: #b91c1c;
}

.awn-channel-workspace-hero-icon {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 1.75rem;
  height: 1.75rem;
  line-height: 1;
}

.awn-channel-workspace-hero-icon.awn-channel-preset-icon--emoji {
  font-size: 1.5rem;
}

.awn-channel-workspace-hero-icon .awn-channel-preset-icon-svg {
  display: block;
}

.has-awn-channel-hero-icon .awn-databases-view-description-card-head {
  background: linear-gradient(180deg, #fff5f5 0%, #fef2f2 42%, #f8fafc 100%);
}

.is-awn-channel-workspace-hub .media-library-workspace-iblock-block .awn-databases-view-kind-badge.is-awn-channel,
.awn-databases-view-kind-badge.is-awn-channel {
  color: #991b1b;
  background: #fef2f2;
  border: 1px solid #fecaca;
}

.node-navigation-hub.is-media-library-workspace-hub.is-awn-channel-workspace-hub .media-library-workspace-iblock-block .awn-databases-view-iblock-card {
  border-color: rgba(252, 165, 165, 0.55);
  box-shadow: 0 1px 2px rgba(127, 29, 29, 0.06);
}

.node-navigation-hub.is-media-library-workspace-hub.is-awn-channel-workspace-hub
  .media-library-workspace-iblock-layout
  .awn-databases-view-schema-fields-accordion {
  border-color: rgba(252, 165, 165, 0.55);
}

#node-overview-block.is-awn-channel-workspace .node-overview-content {
  background: linear-gradient(180deg, #fff1f2 0%, #fff5f5 280px, #ffffff 460px);
  border-color: rgba(248, 113, 113, 0.22);
}

.node-navigation-hub.is-awn-channel-workspace-hub .node-entry-overview-browse-panel > .node-entry-overview-browse-hero-nav.node-navigation-manifest-nav {
  background: rgba(255, 241, 242, 0.9);
  border-color: rgba(252, 165, 165, 0.34);
}

.menu-awn-databases-store-id-badge {
  flex-shrink: 0;
  align-self: center;
}

.awn-databases-view-iblock-card .awn-databases-view-path.hidden {
  display: none;
}

.awn-databases-view-iblock-card > .awn-databases-view-iblock-brief-fold {
  border: 0;
  border-radius: 0;
  box-shadow: none;
  background: transparent;
  border-top: 1px solid #e2e8f0;
}

.awn-databases-view-iblock-card > .awn-databases-view-iblock-brief-fold > .awn-databases-view-accordion-summary {
  border-radius: 0;
}

.awn-databases-view-iblock-brief-fold {
  border-top: 1px solid #e2e8f0;
}

.awn-databases-view-iblock-brief-fold.is-empty .awn-databases-view-iblock-brief-title {
  color: #64748b;
}

.awn-databases-view-iblock-description-body {
  border-top: 0;
  padding-top: 0;
}

.awn-databases-view-iblock-brief-fold.is-empty .awn-databases-view-iblock-description-empty {
  margin-top: 0.85rem;
}

.awn-databases-view-iblock-description-empty {
  margin: 0 0.95rem 0.95rem;
  padding: 10px 12px;
  border-radius: 10px;
  background: rgba(248, 250, 252, 0.92);
  border: 1px dashed rgba(148, 163, 184, 0.42);
  font-size: 13px;
  line-height: 1.45;
  color: #64748b;
}

.awn-databases-view-iblock-description-body.hidden {
  display: none;
}

.awn-databases-view-iblock-description {
  font-size: 0.875rem;
  line-height: 1.55;
  color: #475569;
  padding: 0.85rem 0.95rem;
  background: #fff;
}

.awn-databases-view-iblock-description.hidden {
  display: none;
}

.awn-databases-view-iblock-description :is(p, ul, ol) {
  margin: 0 0 0.5rem;
}

.awn-databases-view-iblock-description :is(p, ul, ol):last-child {
  margin-bottom: 0;
}

.awn-databases-view-iblock-description :is(h1, h2, h3) {
  margin: 0 0 0.45rem;
  font-size: 0.9375rem;
  line-height: 1.35;
  color: #334155;
}

.awn-databases-view-elements-main {
  display: flex;
  flex-direction: column;
  gap: 0.55rem;
  min-width: 0;
  width: 100%;
}

.awn-databases-view-elements-head {
  display: flex;
  flex-direction: column;
  gap: 0.45rem;
}

.awn-databases-view-elements-title {
  margin: 0;
  font-size: 0.8125rem;
  font-weight: 700;
  color: #334155;
  text-transform: uppercase;
  letter-spacing: 0.04em;
}

.awn-databases-view-elements-head .awn-databases-view-toolbar {
  margin: 0;
}

@media (max-width: 960px) {
  .awn-databases-view-elements-head {
    gap: 0.35rem;
  }
}

.awn-databases-view-page-header .awn-databases-view-path {
  margin-top: 0.25rem;
  font-size: 0.8125rem;
  color: #64748b;
}

.node-overview.is-awn-databases-view .node-overview-content {
  display: block;
  overflow: visible;
}

.node-overview.is-awn-databases-view .awn-databases-view-hub {
  min-height: 0;
}

.awn-databases-view-schema-panel {
  flex: 0 0 auto;
  display: flex;
  flex-direction: column;
  gap: 0.75rem;
  margin-bottom: 0;
  padding: 0;
  border: none;
  border-radius: 0;
  background: transparent;
  width: 100%;
}

.awn-databases-view-schema-panel.hidden {
  display: none;
}

.awn-databases-view-schema-panel.is-editing .awn-databases-view-schema-read {
  display: none;
}

.awn-databases-view-element-schema-panel.topic-schema-panel {
  margin: 0;
  padding: 0;
  border: 0;
  background: transparent;
  box-shadow: none;
}

.awn-databases-view-schema-fields-accordion .awn-databases-view-accordion-body {
  padding: 0.75rem 0.9rem 0.9rem;
  gap: 0.65rem;
}

.awn-databases-view-schema-fields-accordion .awn-databases-view-element-schema-panel.topic-schema-panel {
  padding: 0;
  gap: 0.65rem;
}

.awn-databases-view-schema-fields-accordion .topic-schema-head {
  margin: 0;
}

.awn-databases-view-schema-fields-accordion .topic-schema-base-card {
  margin: 0;
}

.awn-databases-view-accordion {
  border: 1px solid #e2e8f0;
  border-radius: 0.75rem;
  background: #fff;
  box-shadow: 0 1px 2px rgba(15, 23, 42, 0.04);
  overflow: hidden;
}

.awn-databases-view-accordion.hidden {
  display: none;
}

.awn-databases-view-accordion-summary {
  display: grid;
  grid-template-columns: auto minmax(0, 1fr) auto;
  align-items: center;
  gap: 0.65rem 0.85rem;
  padding: 0.7rem 0.9rem;
  cursor: pointer;
  list-style: none;
  user-select: none;
  background: linear-gradient(180deg, #f8fafc 0%, #f1f5f9 100%);
  border-bottom: 1px solid transparent;
  transition: background 0.12s ease, border-color 0.12s ease;
}

.awn-databases-view-accordion-summary::-webkit-details-marker {
  display: none;
}

.awn-databases-view-accordion[open] > .awn-databases-view-accordion-summary {
  border-bottom-color: #e2e8f0;
  background: linear-gradient(180deg, #ffffff 0%, #f8fafc 100%);
}

.awn-databases-view-accordion-summary:hover {
  background: linear-gradient(180deg, #ffffff 0%, #f1f5f9 100%);
}

.awn-databases-view-accordion-summary:hover .awn-databases-view-accordion-toggle {
  border-color: #bfdbfe;
  background: #eff6ff;
  color: var(--accent, #2563eb);
}

.awn-databases-view-accordion-toggle {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 24px;
  height: 24px;
  border: 1px solid #dbe3ee;
  border-radius: 5px;
  background: #f8fafc;
  color: #64748b;
  flex-shrink: 0;
  pointer-events: none;
  transition: border-color 0.12s ease, background 0.12s ease, color 0.12s ease;
}

.awn-databases-view-accordion-toggle .nav-book-toc-folder-chevron {
  width: 8px;
  height: 8px;
  border-width: 2px;
  margin-top: -1px;
}

.awn-databases-view-accordion:not([open]) > .awn-databases-view-accordion-summary .nav-book-toc-folder-chevron {
  transform: rotate(-45deg);
}

.awn-databases-view-accordion[open] > .awn-databases-view-accordion-summary .nav-book-toc-folder-chevron {
  transform: rotate(45deg);
  margin-top: -3px;
}

.awn-databases-view-accordion-summary-main {
  min-width: 0;
  display: flex;
  align-items: center;
  flex-wrap: wrap;
  gap: 0.5rem;
}

.awn-databases-view-accordion-title {
  font-size: 0.75rem;
  font-weight: 700;
  color: #334155;
  text-transform: uppercase;
  letter-spacing: 0.04em;
}

.awn-databases-view-accordion-meta {
  display: inline-flex;
  align-items: center;
  padding: 0.15rem 0.5rem;
  border-radius: 999px;
  font-size: 0.6875rem;
  font-weight: 600;
  line-height: 1.2;
  color: #475569;
  background: #fff;
  border: 1px solid #e2e8f0;
}

.awn-databases-view-accordion-meta:empty {
  display: none;
}

.awn-databases-view-accordion-actions {
  display: inline-flex;
  align-items: center;
  justify-content: flex-end;
  flex-wrap: wrap;
  gap: 0.45rem;
  margin-left: auto;
}

.awn-databases-view-accordion-actions .awn-databases-view-schema-file,
.awn-databases-view-accordion-actions .awn-databases-view-schema-btn {
  box-sizing: border-box;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-height: 22px;
  margin: 0;
  padding: 0.12rem 0.4rem;
  font-size: 0.6875rem;
  line-height: 1.2;
  border-radius: 0.3rem;
  white-space: nowrap;
}

.awn-databases-view-accordion-actions .awn-databases-view-schema-btn {
  font-family: inherit;
  font-weight: 600;
  background: #fff;
  border: 1px solid #cbd5e1;
  color: #334155;
  cursor: pointer;
  transition: background 0.12s ease, border-color 0.12s ease;
}

.awn-databases-view-accordion-actions .awn-databases-view-schema-btn:hover {
  background: #f1f5f9;
  border-color: #94a3b8;
}

.awn-databases-view-accordion-body {
  display: flex;
  flex-direction: column;
  gap: 0;
  padding: 0;
  background: #fff;
}

.awn-databases-view-accordion-body .awn-databases-view-schema-edit,
.awn-databases-view-accordion-body .awn-databases-view-scheme-mod-edit,
.awn-databases-view-accordion-body .awn-databases-view-schema-hint,
.awn-databases-view-accordion-body .awn-databases-view-schema-fields-hint {
  padding: 0.75rem 0.9rem;
}

@media (max-width: 720px) {
  .awn-databases-view-accordion-summary {
    grid-template-columns: auto minmax(0, 1fr);
  }

  .awn-databases-view-accordion-actions {
    grid-column: 2;
    justify-content: flex-start;
    margin-left: 0;
  }
}

.awn-databases-view-schema-settings,
.awn-databases-view-schema-fields-section {
  display: flex;
  flex-direction: column;
  gap: 0;
}

.awn-databases-view-schema-fields-section,
.awn-databases-view-schema-fields-accordion {
  margin-top: 0;
}

.awn-databases-view-schema-fields-section.hidden,
.awn-databases-view-schema-fields-accordion.hidden {
  display: none;
}

.awn-databases-view-iblock-outside-structure-row:not([hidden]) {
  margin-top: 0.15rem;
}

.awn-databases-view-schema-panel.has-outside-structure-warning .awn-databases-view-iblock-outside-structure-row {
  margin-top: 0.35rem;
}

.awn-databases-view-schema-block {
  display: flex;
  flex-direction: column;
  gap: 0.65rem;
  padding: 0.85rem 0.95rem;
  border: 1px solid #e2e8f0;
  border-radius: 0.65rem;
  background: linear-gradient(180deg, #ffffff 0%, #f8fafc 100%);
  box-shadow: 0 1px 2px rgba(15, 23, 42, 0.04);
}

.awn-databases-view-schema-block-head {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 0.75rem;
  flex-wrap: wrap;
}

.awn-databases-view-schema-block-head-right {
  display: inline-flex;
  align-items: center;
  gap: 0.5rem;
  margin-left: auto;
  flex-shrink: 0;
}

.awn-databases-view-schema-block-title-wrap {
  display: flex;
  align-items: center;
  flex-wrap: wrap;
  gap: 0.45rem;
  min-width: 0;
}

.awn-databases-view-schema-section-title {
  margin: 0;
  font-size: 0.75rem;
  font-weight: 700;
  color: #334155;
  text-transform: uppercase;
  letter-spacing: 0.04em;
}

.awn-databases-view-schema-fields-count {
  display: inline-flex;
  align-items: center;
  padding: 0.15rem 0.5rem;
  border-radius: 999px;
  font-size: 0.6875rem;
  font-weight: 600;
  line-height: 1.2;
  color: #475569;
  background: #f1f5f9;
  border: 1px solid #e2e8f0;
}

.awn-databases-view-schema-fields-count:empty {
  display: none;
}

.awn-databases-view-toolbar {
  flex: 0 0 auto;
  display: flex;
  align-items: center;
  gap: 0.65rem;
  margin-bottom: 0.55rem;
  flex-wrap: wrap;
}

.awn-databases-view-toolbar-controls {
  display: inline-flex;
  align-items: center;
  gap: 0.5rem;
  flex-shrink: 0;
  margin-left: auto;
}

.awn-databases-view-columns-wrap {
  position: relative;
  flex-shrink: 0;
}

.awn-databases-view-columns-sort {
  margin-left: 0;
}

.awn-databases-view-toolbar .node-navigation-list-sort {
  margin-left: 0;
}

.awn-databases-view-toolbar .node-navigation-list-sort-toggle {
  min-height: 30px;
}

.awn-databases-view-toolbar .node-navigation-list-sort-btn.folder-browse-images-cols-btn {
  height: 26px;
  min-height: 26px;
}

.awn-databases-view-layout-control {
  flex-shrink: 0;
  display: inline-flex;
  align-items: center;
  gap: 0.35rem;
}

.awn-databases-view-toolbar .awn-databases-view-layout-btn {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-width: 28px;
  width: 28px;
  height: 26px;
  padding: 0;
  font-size: 12px;
  line-height: 1;
}

.awn-databases-view-layout-btn-icon {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  line-height: 0;
}

.awn-databases-view-layout-btn-icon svg {
  display: block;
}

.awn-databases-view-records-toc {
  margin-top: 0.1rem;
}

.awn-databases-view-records-toc.nav-book-toc-tree--guide .nav-book-toc-list--root {
  padding-top: 8px;
}

.awn-databases-view-records-toc .nav-book-toc-link {
  width: 100%;
}

.awn-databases-view-records-toc .nav-book-toc-entry.is-system .nav-book-toc-link-text {
  opacity: 0.72;
}

.awn-databases-view-section-panel {
  flex: 0 0 auto;
  margin-bottom: 0;
}

.awn-databases-view-schema-head {
  display: flex;
  align-items: flex-start;
  justify-content: flex-end;
  gap: 0.75rem;
  flex-wrap: wrap;
  margin-bottom: 0.45rem;
}

.awn-databases-view-schema-read.hidden,
.awn-databases-view-schema-edit.hidden {
  display: none;
}

.awn-databases-view-schema-file {
  font-family: ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, monospace;
  font-size: 0.6875rem;
  padding: 0.12rem 0.4rem;
  border-radius: 0.3rem;
  background: #ede9fe;
  color: #5b21b6;
  border: 1px solid #ddd6fe;
}

.awn-databases-view-schema-actions {
  display: flex;
  flex-wrap: wrap;
  justify-content: flex-end;
  gap: 0.35rem;
}

.awn-databases-view-schema-btn {
  padding: 0.28rem 0.55rem;
  border: 1px solid #cbd5e1;
  border-radius: 0.35rem;
  background: #fff;
  font-size: 0.75rem;
  line-height: 1.3;
  color: #334155;
  cursor: pointer;
  transition: background 0.12s ease, border-color 0.12s ease;
}

.awn-databases-view-schema-btn:hover {
  background: #f1f5f9;
  border-color: #94a3b8;
}

.awn-databases-view-schema-btn.is-primary {
  background: #4f46e5;
  border-color: #4338ca;
  color: #fff;
}

.awn-databases-view-schema-btn.is-primary:hover {
  background: #4338ca;
  border-color: #3730a3;
}

.awn-databases-view-schema-textarea {
  display: block;
  width: 100%;
  min-height: 9rem;
  resize: vertical;
  box-sizing: border-box;
  padding: 0.45rem 0.55rem;
  border: 1px solid #cbd5e1;
  border-radius: 0.4rem;
  background: #fff;
  font-family: ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, monospace;
  font-size: 0.75rem;
  line-height: 1.45;
  color: #0f172a;
}

.awn-databases-view-schema-edit-actions {
  display: flex;
  flex-wrap: wrap;
  gap: 0.35rem;
  margin-top: 0.45rem;
}

.awn-databases-view-schema-hint,
.awn-databases-view-schema-fields-hint {
  margin: 0;
  padding: 0.55rem 0.65rem;
  font-size: 0.8125rem;
  line-height: 1.5;
  color: #475569;
  background: #f8fafc;
  border: 1px solid #e2e8f0;
  border-radius: 0.45rem;
}

.awn-databases-view-schema-hint.hidden,
.awn-databases-view-schema-fields-hint.hidden {
  display: none;
}

.awn-databases-view-schema-meta-sections {
  display: flex;
  flex-direction: column;
  gap: 0.65rem;
}

.awn-databases-view-schema-meta-group {
  padding: 0.65rem 0.75rem;
  border: 1px solid #e8edf3;
  border-radius: 0.5rem;
  background: #fff;
}

.awn-databases-view-schema-meta-group-title {
  margin: 0 0 0.45rem;
  font-size: 0.6875rem;
  font-weight: 700;
  color: #64748b;
  text-transform: uppercase;
  letter-spacing: 0.04em;
}

.awn-databases-view-schema-store-doc {
  margin-top: 0.15rem;
  padding: 0.65rem 0.75rem;
  border: 1px solid #e8edf3;
  border-radius: 0.5rem;
  background: #fff;
  font-size: 0.8125rem;
  line-height: 1.55;
  color: #334155;
}

.awn-databases-view-schema-store-doc.hidden {
  display: none;
}

.awn-databases-view-schema-store-doc :is(h1, h2, h3, p) {
  margin: 0 0 0.45rem;
}

.awn-databases-view-schema-store-doc :is(h1, h2, h3) {
  font-size: 0.875rem;
  color: #1e293b;
}

.awn-databases-view-schema-table tbody tr.is-inherited td {
  opacity: 0.72;
}

.awn-databases-view-schema-table tbody tr.is-inherited .awn-databases-view-schema-key::after {
  content: " ↑";
  font-size: 0.625rem;
  color: #94a3b8;
  font-weight: 600;
}

.awn-databases-view-schema-meta {
  display: grid;
  grid-template-columns: minmax(7rem, 9.5rem) minmax(0, 1fr);
  gap: 0.45rem 0.85rem;
  margin: 0;
  padding: 0.15rem 0;
}

.awn-databases-view-schema-meta-label {
  margin: 0;
  color: #64748b;
  font-size: 0.75rem;
  font-weight: 600;
  line-height: 1.45;
}

.awn-databases-view-schema-meta-value {
  margin: 0;
  font-size: 0.8125rem;
  line-height: 1.45;
  color: #1e293b;
  word-break: break-word;
}

.awn-databases-view-schema-meta-value.is-description {
  color: #475569;
}

.awn-databases-view-schema-meta-value code,
.awn-databases-view-schema-meta-id {
  display: inline-block;
  padding: 0.08rem 0.35rem;
  border-radius: 0.3rem;
  background: #f1f5f9;
  border: 1px solid #e2e8f0;
  font-family: ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, monospace;
  font-size: 0.75rem;
  color: #334155;
  word-break: break-all;
}

.awn-databases-view-schema-meta-id {
  color: #5b21b6;
  background: #f5f3ff;
  border-color: #ddd6fe;
}

.awn-databases-view-schema-meta .awn-databases-view-kind-badge {
  margin: 0;
}

.awn-databases-view-collection-type-badge {
  display: inline-flex;
  align-items: center;
  padding: 0.12rem 0.45rem;
  border-radius: 999px;
  font-size: 0.6875rem;
  font-weight: 600;
  line-height: 1.2;
  border: 1px solid transparent;
}

.awn-databases-view-collection-type-badge.is-md {
  color: #6d28d9;
  background: #f5f3ff;
  border-color: #ddd6fe;
}

.awn-databases-view-collection-type-badge.is-md-lite {
  color: #7e22ce;
  background: #faf5ff;
  border-color: #e9d5ff;
}

.awn-databases-view-collection-type-badge.is-csv {
  color: #0369a1;
  background: #f0f9ff;
  border-color: #bae6fd;
}

.awn-databases-view-collection-type-badge.is-csv-files {
  color: #0e7490;
  background: #ecfeff;
  border-color: #a5f3fc;
}

.awn-databases-view-collection-type-badge.is-files {
  color: #047857;
  background: #ecfdf5;
  border-color: #a7f3d0;
}

.awn-databases-view-schema-fields-wrap.hidden {
  display: none;
}

.awn-databases-view-schema-table-wrap {
  border: none;
  border-radius: 0;
  background: #fff;
  overflow-x: auto;
  box-shadow: none;
}

.awn-databases-view-schema-table {
  width: 100%;
  border-collapse: collapse;
  font-size: 0.8125rem;
}

.awn-databases-view-schema-table th,
.awn-databases-view-schema-table td {
  padding: 0.45rem 0.6rem;
  text-align: left;
  border-bottom: 1px solid #f1f5f9;
  vertical-align: top;
}

.awn-databases-view-schema-table tbody tr:last-child td {
  border-bottom: none;
}

.awn-databases-view-schema-table tbody tr:hover td {
  background: #fafbff;
}

.awn-databases-view-schema-table th {
  background: #f8fafc;
  font-size: 0.6875rem;
  font-weight: 700;
  color: #64748b;
  text-transform: uppercase;
  letter-spacing: 0.03em;
  white-space: nowrap;
}

.awn-databases-view-schema-meta-label {
  width: 38%;
  font-weight: 600;
  color: #475569;
  white-space: nowrap;
}

.awn-databases-view-schema-key {
  font-family: ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, monospace;
  font-size: 0.75rem;
  color: #5b21b6;
  white-space: nowrap;
}

.awn-databases-view-schema-type {
  font-family: ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, monospace;
  font-size: 0.75rem;
  color: #0f766e;
}

.awn-databases-view-schema-table td.is-required {
  color: #047857;
  font-weight: 600;
}

.awn-databases-view-schema-table td.is-optional {
  color: #94a3b8;
}

.awn-databases-view-schema-default {
  font-family: ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, monospace;
  font-size: 0.75rem;
  color: #475569;
}

.awn-databases-view-section-panel.hidden {
  display: none;
}

.awn-databases-view-section-head {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 0.5rem;
  margin-bottom: 0.35rem;
}

.awn-databases-view-section-label {
  margin: 0;
  font-size: 0.6875rem;
  font-weight: 700;
  color: #64748b;
  text-transform: uppercase;
  letter-spacing: 0.03em;
}

.awn-databases-view-section-create-btn {
  flex-shrink: 0;
  padding: 0.18rem 0.45rem;
  border: 1px solid #cbd5e1;
  border-radius: 0.35rem;
  background: #fff;
  font-size: 0.6875rem;
  line-height: 1.3;
  color: #475569;
  cursor: pointer;
  transition: background 0.12s ease, border-color 0.12s ease, color 0.12s ease;
}

.awn-databases-view-section-create-btn:hover:not(:disabled) {
  background: #f8fafc;
  border-color: #94a3b8;
  color: #334155;
}

.awn-databases-view-section-create-btn:disabled {
  opacity: 0.55;
  cursor: default;
}

.awn-databases-view-section-create-form {
  display: grid;
  gap: 0.45rem;
  margin-bottom: 0.45rem;
  padding: 0.45rem;
  border: 1px solid #e2e8f0;
  border-radius: 0.45rem;
  background: #f8fafc;
}

.awn-databases-view-section-create-form.hidden {
  display: none;
}

.awn-databases-view-section-search-wrap {
  margin-bottom: 0.35rem;
}

.awn-databases-view-section-search-input {
  display: block;
  width: 100%;
  box-sizing: border-box;
  border: 1px solid #cbd5e1;
  border-radius: 0.45rem;
  padding: 0.35rem 0.55rem;
  font-size: 0.75rem;
  line-height: 1.3;
  background: #fff;
  color: #0f172a;
}

.awn-databases-view-section-search-input:focus {
  outline: none;
  border-color: #7c3aed;
  box-shadow: 0 0 0 2px rgba(124, 58, 237, 0.15);
}

.awn-databases-view-section-create-name-field {
  margin: 0;
}

.awn-databases-view-section-create-slug-row {
  margin: 0;
}

.awn-databases-view-section-create-slug-row .slug-input,
.awn-databases-view-add-records-form .awn-databases-add-slug-row .slug-input {
  padding: 6px 34px 6px 7px;
  font-size: 12px;
  line-height: 1.25;
  border-radius: 7px;
  margin-bottom: 0;
  border-color: var(--border);
  background: var(--panel);
  color: var(--text);
}

.awn-databases-view-section-create-slug-row .slug-field-hint {
  margin: 0.2rem 0 0;
}

.awn-databases-view-section-create-submit-btn {
  flex-shrink: 0;
  padding: 0.28rem 0.55rem;
  border: 1px solid #4338ca;
  border-radius: 0.35rem;
  background: #4f46e5;
  font-size: 0.75rem;
  line-height: 1.3;
  color: #fff;
  cursor: pointer;
  transition: background 0.12s ease, border-color 0.12s ease;
}

.awn-databases-view-section-create-submit-btn:hover:not(:disabled) {
  background: #4338ca;
  border-color: #3730a3;
}

.awn-databases-view-section-create-submit-btn:disabled {
  opacity: 0.55;
  cursor: default;
}

.awn-databases-view-section-tree {
  --awn-section-tree-gutter-w: 14px;
  --awn-section-tree-line: #cbd5e1;
  display: flex;
  flex-direction: column;
  gap: 0.1rem;
  padding: 0.35rem;
  border: 1px solid #e2e8f0;
  border-radius: 0.45rem;
  background: #fff;
}

.awn-databases-view-section-tree-row {
  display: flex;
  align-items: stretch;
  gap: 0.2rem;
  min-width: 0;
}

.awn-databases-view-section-tree-row.is-nested {
  /* depth handled on item via --tree-depth */
}

.awn-databases-view-section-tree-row .awn-databases-view-section-tree-item {
  flex: 1;
  min-width: 0;
  width: auto;
}

.awn-databases-view-section-tree-actions {
  display: inline-flex;
  align-items: center;
  gap: 0.25rem;
  flex-shrink: 0;
  align-self: center;
  margin-right: 0.15rem;
  opacity: 0;
  pointer-events: none;
  transition: opacity 0.12s ease;
}

.awn-databases-view-section-tree-row:hover .awn-databases-view-section-tree-actions,
.awn-databases-view-section-tree-row.is-active .awn-databases-view-section-tree-actions,
.awn-databases-view-section-tree-row:focus-within .awn-databases-view-section-tree-actions {
  opacity: 1;
  pointer-events: auto;
}

.awn-databases-view-section-tree-id {
  display: inline-flex;
  align-items: center;
  flex-shrink: 0;
}

.awn-databases-view-section-tree-id .awn-databases-view-record-id-assign-btn {
  min-width: 1.5rem;
  height: 1.5rem;
  padding: 0 0.35rem;
  font-size: 0.625rem;
}

.awn-databases-view-section-tree-actions .awn-databases-view-section-slug-fix-btn {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-width: 1.5rem;
  height: 1.5rem;
  padding: 0 0.35rem;
  border: 0;
  border-radius: 999px;
  background: #dc2626;
  color: #fff;
  font-family: inherit;
  font-size: 0.5625rem;
  font-weight: 800;
  line-height: 1;
  letter-spacing: 0.02em;
  text-transform: uppercase;
  cursor: pointer;
  flex-shrink: 0;
}

.awn-databases-view-section-tree-actions .awn-databases-view-section-slug-fix-btn:hover:not(:disabled) {
  background: #b91c1c;
}

.awn-databases-view-section-tree-actions .awn-databases-view-section-slug-fix-btn:disabled {
  opacity: 0.55;
  cursor: not-allowed;
}

.awn-databases-view-section-tree-actions .awn-databases-view-edit-btn {
  width: 1.5rem;
  height: 1.5rem;
}

.awn-databases-view-section-tree-actions .awn-databases-view-edit-btn svg {
  width: 0.85rem;
  height: 0.85rem;
}

.awn-databases-view-section-tree-gutters {
  display: inline-flex;
  flex-shrink: 0;
  align-self: stretch;
  align-items: stretch;
  margin-right: 0.1rem;
  pointer-events: none;
  user-select: none;
}

.awn-databases-view-section-tree-gutter {
  position: relative;
  flex: 0 0 var(--awn-section-tree-gutter-w);
  width: var(--awn-section-tree-gutter-w);
  min-height: 100%;
}

.awn-databases-view-section-tree-gutter--line::before {
  content: "";
  position: absolute;
  left: 50%;
  top: 0;
  bottom: 0;
  width: 1px;
  margin-left: -0.5px;
  background: var(--awn-section-tree-line);
}

.awn-databases-view-section-tree-gutter--joint::before,
.awn-databases-view-section-tree-gutter--joint::after {
  content: "";
  position: absolute;
  background: var(--awn-section-tree-line);
  pointer-events: none;
}

.awn-databases-view-section-tree-gutter--joint::before {
  left: 50%;
  top: 0;
  bottom: 0;
  width: 1px;
  margin-left: -0.5px;
}

.awn-databases-view-section-tree-gutter--joint.is-last::before {
  bottom: 50%;
}

.awn-databases-view-section-tree-gutter--joint::after {
  left: 50%;
  top: 50%;
  width: calc(var(--awn-section-tree-gutter-w) * 0.55);
  height: 1px;
  transform: translateY(-50%);
}

.awn-databases-view-section-tree-row:hover .awn-databases-view-section-tree-gutter--line::before,
.awn-databases-view-section-tree-row:hover .awn-databases-view-section-tree-gutter--joint::before,
.awn-databases-view-section-tree-row:hover .awn-databases-view-section-tree-gutter--joint::after,
.awn-databases-view-section-tree-row:focus-within .awn-databases-view-section-tree-gutter--line::before,
.awn-databases-view-section-tree-row:focus-within .awn-databases-view-section-tree-gutter--joint::before,
.awn-databases-view-section-tree-row:focus-within .awn-databases-view-section-tree-gutter--joint::after {
  background: #94a3b8;
}

.awn-databases-view-section-tree-row.is-active .awn-databases-view-section-tree-gutter--line::before,
.awn-databases-view-section-tree-row.is-active .awn-databases-view-section-tree-gutter--joint::before,
.awn-databases-view-section-tree-row.is-active .awn-databases-view-section-tree-gutter--joint::after {
  background: #c4b5fd;
}

.awn-databases-view-section-tree-item {
  display: flex;
  align-items: center;
  gap: 0.35rem;
  box-sizing: border-box;
  padding: 0.32rem 0.45rem;
  border: 0;
  border-radius: 0.35rem;
  background: transparent;
  text-align: left;
  font-size: 0.8125rem;
  line-height: 1.3;
  color: #334155;
  cursor: pointer;
  text-decoration: none;
  transition: background 0.12s ease, color 0.12s ease;
}

.awn-databases-view-section-tree-item:hover {
  background: #f8fafc;
}

.awn-databases-view-section-tree-item.is-active {
  background: #f5f3ff;
  color: #5b21b6;
  font-weight: 600;
}

.awn-databases-view-section-tree-row.is-active .awn-databases-view-section-tree-item {
  background: #f5f3ff;
  color: #5b21b6;
  font-weight: 600;
}

.awn-databases-view-section-tree-item.is-active .awn-databases-view-section-tree-icon {
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='%23ede9fe' stroke='%237c3aed' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M22 19a2 2 0 0 1-2 2H4a2 2 0 0 1-2-2V5a2 2 0 0 1 2-2h5l2 3h9a2 2 0 0 1 2 2z'/%3E%3C/svg%3E");
}

.awn-databases-view-section-tree-icon {
  flex-shrink: 0;
  width: 14px;
  height: 14px;
  background-repeat: no-repeat;
  background-position: center center;
  background-size: 14px 14px;
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='%23fef9c3' stroke='%23ca8a04' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M22 19a2 2 0 0 1-2 2H4a2 2 0 0 1-2-2V5a2 2 0 0 1 2-2h5l2 3h9a2 2 0 0 1 2 2z'/%3E%3C/svg%3E");
}

.awn-databases-view-section-tree-label {
  min-width: 0;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.awn-databases-view-section-notices {
  display: flex;
  flex-direction: column;
  gap: 10px;
  margin-top: 10px;
}

.awn-databases-view-section-notices.hidden {
  display: none;
}

.awn-databases-view-section-notices .section-readme-card {
  margin: 0;
}

.awn-databases-view-section-notices .data-hub-slug-warning {
  margin: 0;
}

.awn-databases-view-section-tree-row--unregistered .awn-databases-view-section-tree-item {
  border-style: dashed;
}

.awn-databases-view-section-tree-item--unregistered {
  opacity: 0.92;
}

.awn-databases-view-section-tree-item--unregistered.is-active {
  opacity: 1;
}

.awn-databases-view-section-tree-label--unregistered {
  font-style: italic;
}

.awn-databases-view-section-tree-empty {
  margin: 0;
  padding: 0.45rem 0.55rem;
  font-size: 0.75rem;
  line-height: 1.35;
  color: #94a3b8;
  text-align: center;
}

.awn-databases-view-search-wrap {
  position: relative;
  flex: 1;
  min-width: 0;
}

.awn-databases-view-search-input {
  width: 100%;
  box-sizing: border-box;
  border: 1px solid #cbd5e1;
  border-radius: 0.45rem;
  padding: 0.4rem 5.75rem 0.4rem 0.55rem;
  font-size: 0.8125rem;
  line-height: 1.3;
  background: #fff;
  color: #0f172a;
}

.awn-databases-view-search-input:focus {
  outline: none;
  border-color: #7c3aed;
  box-shadow: 0 0 0 2px rgba(124, 58, 237, 0.15);
}

.awn-databases-view-count {
  position: absolute;
  top: 50%;
  right: 0.55rem;
  transform: translateY(-50%);
  pointer-events: none;
  font-size: 0.6875rem;
  font-weight: 600;
  color: #94a3b8;
  white-space: nowrap;
  line-height: 1;
}

.awn-databases-view-table-wrap {
  border: none;
  border-radius: 0;
  background: transparent;
  overflow-x: auto;
  padding: 0;
}

.awn-databases-view-table-wrap:has(.awn-databases-view-records-toc) {
  border: none;
  border-radius: 0;
  background: transparent;
  padding: 0;
}

.awn-databases-view-records {
  overflow: visible;
  padding-bottom: 0;
}

.awn-databases-view-empty {
  padding: 0.85rem 0.75rem;
}

.awn-databases-view-empty-state {
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  gap: 0.45rem;
  min-height: 3rem;
  text-align: center;
}

.awn-databases-view-empty-text {
  font-size: 0.8125rem;
  color: #64748b;
}

.awn-databases-view-table {
  width: 100%;
  min-width: max-content;
  border-collapse: collapse;
  table-layout: auto;
  font-size: 0.8125rem;
}

.awn-databases-view-table thead th {
  position: sticky;
  top: 0;
  z-index: 1;
  padding: 0.45rem 0.55rem;
  text-align: left;
  font-size: 0.6875rem;
  font-weight: 700;
  letter-spacing: 0.02em;
  text-transform: uppercase;
  color: #64748b;
  background: #f8fafc;
  border-bottom: 1px solid #e2e8f0;
}

.awn-databases-view-record-row td {
  padding: 0.4rem 0.55rem;
  vertical-align: middle;
  border-bottom: 1px solid #f1f5f9;
}

.awn-databases-view-record-row:last-child td {
  border-bottom: none;
  padding-bottom: 0;
}

.awn-databases-view-record-row.is-system td {
  background: #fafafa;
}

.awn-databases-view-record-id {
  min-width: 6.5rem;
  max-width: 12rem;
  font-family: ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, monospace;
  font-size: 0.75rem;
  color: #475569;
  word-break: break-word;
}

.awn-databases-view-record-id-wrap {
  display: inline-flex;
  align-items: center;
  gap: 0.35rem;
  min-width: 0;
  max-width: 100%;
}

.awn-databases-view-record-id-label {
  min-width: 0;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.awn-databases-view-record-edit-icon-btn {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 1.75rem;
  height: 1.75rem;
  padding: 0;
  flex-shrink: 0;
}

.awn-databases-view-record-edit-icon-btn .node-overview-action-btn-icon {
  flex-shrink: 0;
}

.awn-databases-view-record-awn-id-badge {
  flex-shrink: 0;
  min-width: 0;
}

.awn-databases-view-record-id-assign-btn {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 1.35rem;
  height: 1.35rem;
  padding: 0;
  border: 0;
  border-radius: 999px;
  background: #16a34a;
  color: #fff;
  font-family: inherit;
  font-size: 0.5625rem;
  font-weight: 800;
  line-height: 1;
  letter-spacing: 0.02em;
  text-transform: uppercase;
  cursor: pointer;
  flex-shrink: 0;
}

.awn-databases-view-record-id-assign-btn:hover:not(:disabled) {
  background: #15803d;
}

.awn-databases-view-record-id-assign-btn:disabled {
  opacity: 0.55;
  cursor: wait;
}

.awn-databases-view-record-title {
  display: flex;
  align-items: center;
  gap: 0.35rem;
  min-width: 0;
  color: #0f172a;
}

.awn-databases-view-record-title > span:first-child {
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.awn-databases-view-record-badge {
  flex-shrink: 0;
  font-size: 0.625rem;
  font-weight: 700;
  text-transform: uppercase;
  letter-spacing: 0.03em;
  color: #64748b;
  background: #e2e8f0;
  border-radius: 999px;
  padding: 0.1rem 0.35rem;
}

.awn-databases-view-record-parent {
  min-width: 5rem;
  max-width: 10rem;
  font-family: ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, monospace;
  font-size: 0.75rem;
  color: #64748b;
}

.awn-databases-view-record-field {
  min-width: 4.5rem;
  max-width: 14rem;
  color: #334155;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.awn-databases-view-record-field.awn-databases-view-record-field-preview,
.awn-databases-view-record-field.external-table-cover-cell {
  max-width: none;
  white-space: normal;
  overflow: visible;
}

.awn-databases-view-record-actions {
  text-align: center;
  white-space: nowrap;
}

.awn-databases-view-edit-btn {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 1.75rem;
  height: 1.75rem;
  padding: 0;
  border: 1px solid #cbd5e1;
  border-radius: 0.375rem;
  background: #fff;
  color: #334155;
  line-height: 0;
  cursor: pointer;
}

.awn-databases-view-edit-btn .node-overview-action-btn-icon {
  display: inline-flex;
  align-items: center;
  justify-content: center;
}

.awn-databases-view-edit-btn svg {
  display: block;
}

.awn-databases-view-edit-btn:hover {
  border-color: #7c3aed;
  color: #5b21b6;
  background: #f5f3ff;
}


.awn-databases-view-record-row {
  cursor: pointer;
}

.awn-databases-view-record-row:hover td {
  background: #f8fafc;
}

.awn-databases-view-record-row:focus-visible {
  outline: 2px solid #7c3aed;
  outline-offset: -2px;
}

.awn-databases-view-table--transposed {
  min-width: max-content;
  width: 100%;
}

.awn-databases-view-table--transposed th,
.awn-databases-view-table--transposed td {
  padding: 0.4rem 0.55rem;
  text-align: left;
  vertical-align: middle;
}

.awn-databases-view-table--transposed .awn-databases-view-transposed-corner,
.awn-databases-view-table--transposed .awn-databases-view-transposed-field-label {
  position: sticky;
  left: 0;
  z-index: 2;
  width: 1%;
  min-width: 7.5rem;
  max-width: 11rem;
  font-size: 0.6875rem;
  font-weight: 700;
  letter-spacing: 0.02em;
  text-transform: uppercase;
  color: #64748b;
  background: #f8fafc;
  border-right: 1px solid #e2e8f0;
  white-space: nowrap;
}

.awn-databases-view-table--transposed .awn-databases-view-transposed-record-head {
  min-width: 8rem;
  max-width: 14rem;
  font-size: 0.75rem;
  font-weight: 600;
  color: #0f172a;
  cursor: pointer;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
}

.awn-databases-view-table--transposed .awn-databases-view-transposed-record-head:hover {
  color: #5b21b6;
  background: #f5f3ff;
}

.awn-databases-view-table--transposed .awn-databases-view-transposed-record-head.is-system {
  color: #64748b;
}

.awn-databases-view-table--transposed .awn-databases-view-transposed-field-value {
  min-width: 7rem;
  cursor: pointer;
  color: #334155;
}

.awn-databases-view-table--transposed .awn-databases-view-transposed-field-value:hover {
  background: #f8fafc;
}

.awn-databases-view-table--transposed .awn-databases-view-transposed-field-value.is-system {
  background: #fafafa;
}

.awn-databases-view-table--transposed .awn-databases-view-transposed-field-value.awn-databases-view-record-id {
  padding-top: 0.3rem;
  padding-bottom: 0.3rem;
}

.awn-databases-view-table--transposed .awn-databases-view-transposed-field-row td {
  border-bottom: 1px solid #f1f5f9;
}

.awn-databases-view-table--transposed .awn-databases-view-transposed-field-row:last-child td {
  border-bottom: none;
}

.awn-databases-view-cards-grid-wrap {
  margin: 0;
  padding: 0.65rem;
}

.awn-databases-view-cards-grid-wrap .folder-browse-images-grid {
  border-radius: 10px;
  overflow: hidden;
}

.awn-databases-view-record-grid-card {
  cursor: pointer;
}

.awn-databases-view-record-grid-card.is-system {
  background: #fafafa;
}

.awn-databases-view-record-grid-card:focus-visible {
  outline: 2px solid rgba(124, 58, 237, 0.45);
  outline-offset: -2px;
}

.awn-databases-view-record-grid-thumb-placeholder {
  background: linear-gradient(145deg, #f8fafc 0%, #e2e8f0 100%);
}

.awn-databases-view-record-grid-thumb-label {
  display: block;
  max-width: calc(100% - 1rem);
  padding: 0 0.75rem;
  text-align: center;
  font-size: 0.8125rem;
  font-weight: 600;
  line-height: 1.35;
  color: #475569;
  word-break: break-word;
}

.awn-databases-view-record-grid-footer {
  flex-direction: column;
  align-items: stretch;
  gap: 0.35rem;
}

.awn-databases-view-record-grid-footer-main {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: 8px;
  min-width: 0;
}

.awn-databases-view-record-grid-footer-main .folder-browse-image-name {
  display: -webkit-box;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 2;
  overflow: hidden;
  word-break: break-word;
}

.awn-databases-view-record-grid-footer-main .folder-browse-image-size {
  flex-shrink: 0;
  max-width: 42%;
  overflow: hidden;
  text-overflow: ellipsis;
}

.awn-databases-view-record-grid-footer-actions {
  display: flex;
  align-items: center;
  justify-content: flex-start;
  min-width: 0;
}

.awn-databases-view-record-grid-footer-actions .awn-databases-view-record-id-wrap {
  max-width: 100%;
}

.awn-databases-view-record-grid-footer-actions .awn-databases-view-record-edit-icon-btn,
.awn-databases-view-record-grid-footer-actions .awn-databases-view-record-awn-id-badge,
.awn-databases-view-record-grid-footer-actions .awn-databases-view-record-id-assign-btn {
  flex-shrink: 0;
}

.awn-databases-view-record-grid-footer-actions .node-overview-edit-btn {
  min-height: 26px;
  padding: 0.2rem 0.55rem;
  font-size: 0.75rem;
}

.awn-databases-view-property-catalog,
.awn-databases-view-entity-types {
  display: flex;
  flex-direction: column;
  gap: 1rem;
}

.awn-databases-view-property-table td,
.awn-databases-view-property-table th {
  vertical-align: top;
}

.awn-databases-view-property-desc {
  color: #475569;
  font-size: 0.8125rem;
  line-height: 1.45;
}

.awn-databases-view-property-row {
  cursor: pointer;
}

.awn-databases-view-property-row:hover td {
  background: #f8fafc;
}

.awn-databases-view-entity-type {
  border: 1px solid #e2e8f0;
  border-radius: 0.65rem;
  background: #fff;
  padding: 0.85rem 1rem;
  cursor: pointer;
}

.awn-databases-view-entity-type:hover {
  border-color: #cbd5e1;
  box-shadow: 0 1px 3px rgba(15, 23, 42, 0.06);
}

.awn-databases-view-entity-type-head {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: 0.75rem;
  margin-bottom: 0.5rem;
}

.awn-databases-view-entity-type-title-wrap {
  display: flex;
  flex-wrap: wrap;
  align-items: baseline;
  gap: 0.5rem;
  min-width: 0;
}

.awn-databases-view-entity-type-title {
  margin: 0;
  font-size: 0.9375rem;
  font-weight: 600;
  color: #0f172a;
}

.awn-databases-view-entity-type-id {
  font-size: 0.75rem;
  color: #64748b;
  background: #f1f5f9;
  border-radius: 0.35rem;
  padding: 0.1rem 0.4rem;
}

.awn-databases-view-entity-type-desc {
  margin: 0 0 0.65rem;
  color: #64748b;
  font-size: 0.8125rem;
  line-height: 1.45;
}

.awn-databases-view-entity-type-empty {
  margin: 0;
  color: #94a3b8;
  font-size: 0.8125rem;
}

.awn-databases-view-record-fields-subtitle {
  margin: 0.75rem 0 0.35rem;
  padding-top: 0.5rem;
  border-top: 1px solid #e2e8f0;
  font-size: 0.75rem;
  font-weight: 600;
  color: #64748b;
  text-transform: uppercase;
  letter-spacing: 0.03em;
}

.awn-databases-view-record-field-row.is-body-field dt {
  font-family: ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, monospace;
  font-size: 0.75rem;
}

.awn-databases-view-record-panel {
  display: flex;
  flex-direction: column;
  gap: 0.75rem;
}

.awn-databases-view-record-fields .node-navigation-hub {
  width: 100%;
}

.awn-databases-view-record-fields .node-navigation-hub-main {
  min-width: 0;
}

.awn-databases-view-record-csv-preview {
  margin: 0;
  white-space: pre-wrap;
  word-break: break-word;
  font-family: ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, monospace;
  font-size: 0.8125rem;
}

.awn-databases-view-record-toolbar {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 0.65rem;
  flex-wrap: wrap;
}

.awn-databases-view-record-back-btn,
.awn-databases-view-record-edit-btn {
  border: 1px solid #cbd5e1;
  border-radius: 0.45rem;
  background: #fff;
  color: #334155;
  font-size: 0.8125rem;
  padding: 0.35rem 0.65rem;
  cursor: pointer;
}

.awn-databases-view-record-toolbar .node-overview-edit-btn {
  min-height: 27px;
}

.awn-databases-view-record-back-btn:hover {
  border-color: #94a3b8;
  background: #f8fafc;
}

.awn-databases-view-record-fields-list {
  display: grid;
  gap: 0.45rem;
  margin: 0;
  padding: 0.75rem;
  border: 1px solid #e2e8f0;
  border-radius: 0.5rem;
  background: #f8fafc;
}

.awn-databases-view-record-field-row {
  display: grid;
  grid-template-columns: minmax(5rem, 12rem) 1fr;
  gap: 0.65rem;
  font-size: 0.8125rem;
}

.awn-databases-view-record-field-row dt {
  margin: 0;
  color: #64748b;
  font-weight: 600;
}

.awn-databases-view-record-field-row dd {
  margin: 0;
  color: #0f172a;
  word-break: break-word;
}

.awn-databases-view-record-body {
  border: 1px solid #e2e8f0;
  border-radius: 0.5rem;
  background: #fff;
  padding: 0.85rem 1rem;
  font-size: 0.875rem;
  line-height: 1.55;
}

.awn-databases-view-record-body.file-content-preview {
  min-height: 0;
  height: auto;
  margin: 0;
  box-shadow: none;
  overflow: visible;
}

.doc-stack .awn-databases-view-record-body.file-content-preview,
.doc-slab-main .awn-databases-view-record-body.file-content-preview {
  height: auto;
  min-height: 0;
  overflow: visible;
}

.awn-databases-view-record-body.file-content-preview:empty,
.awn-databases-view-single-content.file-content-preview:empty {
  display: none;
}

.awn-databases-view-single-card {
  overflow: hidden;
}

.awn-databases-view-single-card-head {
  justify-content: flex-end;
  min-height: 0;
  padding: 0.65rem 0.95rem;
}

.awn-databases-view-single-card-body {
  padding: 0.85rem 1rem;
  border-top: 1px solid #e2e8f0;
}

.awn-databases-view-single-card-body:has(.awn-databases-view-csv-table-wrap) {
  padding: 0;
  border-top: none;
}

.node-overview-content .awn-databases-view-single-content:has(.awn-databases-view-csv-table-wrap) {
  min-height: 0;
  height: auto;
  margin: 0;
  padding: 0;
  border: 0;
  border-radius: 0;
  background: transparent;
  box-shadow: none;
  overflow: visible;
}

.node-overview-content .awn-databases-view-single-content .awn-databases-view-csv-table-wrap {
  overflow: auto;
  background: transparent;
}

.node-overview-content .awn-databases-view-single-content .awn-databases-view-csv-table th,
.node-overview-content .awn-databases-view-single-content .awn-databases-view-csv-table td {
  border: 0;
  border-bottom: 1px solid #e2e8f0;
  padding: 0.45rem 0.65rem;
}

.node-overview-content .awn-databases-view-single-content .awn-databases-view-csv-table tbody tr:last-child td {
  border-bottom: 0;
}

.node-overview-content .awn-databases-view-single-content .awn-databases-view-csv-table tbody tr:nth-child(even),
.node-overview-content .awn-databases-view-single-content .awn-databases-view-csv-table tbody tr:hover {
  background: transparent;
}

.awn-databases-view-single-content {
  border: none;
  border-radius: 0;
  background: transparent;
  padding: 0;
  font-size: 0.875rem;
  line-height: 1.55;
}

.awn-databases-view-single-content.file-content-preview {
  min-height: 0;
  height: auto;
  margin: 0;
  box-shadow: none;
  overflow: visible;
}

.doc-stack .awn-databases-view-single-content.file-content-preview,
.doc-slab-main .awn-databases-view-single-content.file-content-preview {
  height: auto;
  min-height: 0;
  overflow: visible;
}

.awn-databases-view-csv-table-wrap {
  overflow: auto;
  background: #fff;
}

.awn-databases-view-csv-table {
  width: 100%;
  border-collapse: collapse;
  font-size: 0.8125rem;
}

.awn-databases-view-csv-table th,
.awn-databases-view-csv-table td {
  padding: 0.45rem 0.65rem;
  border-bottom: 1px solid #e2e8f0;
  text-align: left;
  vertical-align: top;
  white-space: nowrap;
}

.awn-databases-view-csv-table th {
  position: sticky;
  top: 0;
  background: #f8fafc;
  color: #334155;
  font-weight: 600;
  white-space: normal;
  line-height: 1.25;
}

.awn-databases-view-csv-table-col-title {
  display: block;
  font-weight: 600;
}

.awn-databases-view-csv-table-col-key {
  display: block;
  margin-top: 0.12rem;
  font-size: 0.6875rem;
  font-weight: 500;
  color: #64748b;
}

.awn-databases-view-csv-table th.is-unknown-column {
  background: #fef2f2;
}

.awn-databases-view-csv-table th.is-unknown-column .awn-databases-view-csv-table-col-title,
.awn-databases-view-csv-table th.is-unknown-column .awn-databases-view-csv-table-col-key {
  color: #dc2626;
}

.awn-databases-view-csv-table tbody tr:last-child td {
  border-bottom: none;
}

.awn-databases-view-csv-empty-row {
  color: #64748b;
  font-style: italic;
  white-space: normal;
}

.menu-awn-databases-store.is-active,
.menu-awn-databases-store-group.is-active .menu-awn-databases-store-group-head {
  background: #fef9c3;
  color: #854d0e;
  box-shadow: inset 0 0 0 1px #fde047;
}

.menu-awn-databases-store.is-active .menu-awn-databases-store-name,
.menu-awn-databases-store-group.is-active .menu-awn-databases-store-name {
  font-weight: 600;
}

.awn-databases-view-header {
  flex: 0 0 auto;
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: 0.75rem;
  margin-bottom: 0.55rem;
}

.awn-databases-view-header-main {
  flex: 1;
  min-width: 0;
}

.awn-databases-view-title-row {
  display: flex;
  align-items: center;
  flex-wrap: wrap;
  gap: 0.45rem;
}

.awn-databases-view-title {
  margin: 0;
  font-size: 1.0625rem;
  font-weight: 700;
  line-height: 1.25;
  color: #0f172a;
}

.awn-databases-view-kind-badge {
  display: inline-flex;
  align-items: center;
  padding: 0.12rem 0.45rem;
  border-radius: 999px;
  font-size: 0.625rem;
  font-weight: 700;
  letter-spacing: 0.03em;
  text-transform: uppercase;
  line-height: 1.2;
}

.awn-databases-view-kind-badge.is-collection {
  color: #5b21b6;
  background: #f5f3ff;
  border: 1px solid #ddd6fe;
}

.awn-databases-view-kind-badge.is-single {
  color: #0e7490;
  background: #ecfeff;
  border: 1px solid #a5f3fc;
}

.awn-databases-view-kind-badge.is-group {
  color: #047857;
  background: #ecfdf5;
  border: 1px solid #a7f3d0;
}

.awn-databases-view-kind-badge.is-storage-csv {
  color: #1d4ed8;
  background: #eff6ff;
  border-color: #bfdbfe;
}

.awn-databases-view-kind-badge.is-storage-csv-files {
  color: #0e7490;
  background: #ecfeff;
  border-color: #a5f3fc;
}

.awn-databases-view-kind-badge.is-storage-md {
  color: #5b21b6;
  background: #f5f3ff;
  border-color: #ddd6fe;
}

.awn-databases-view-path {
  margin-top: 0.3rem;
  font-family: ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, monospace;
  font-size: 0.6875rem;
  line-height: 1.35;
  color: #64748b;
}

.awn-databases-view-actions {
  flex: 0 0 auto;
}

.awn-databases-view-manifest {
  width: 100%;
  max-width: none;
  align-self: stretch;
  box-sizing: border-box;
  margin: 0;
  padding: 0.55rem 0.65rem;
  border-radius: 0.45rem;
  background: #f8fafc;
  border: 1px solid #e2e8f0;
  font-size: 0.8125rem;
  line-height: 1.45;
  color: #334155;
}

.awn-databases-view-manifest.hidden {
  display: none;
}

.awn-databases-view-manifest :first-child {
  margin-top: 0;
}

.awn-databases-view-manifest :last-child {
  margin-bottom: 0;
}

.awn-databases-view-manifest h1,
.awn-databases-view-manifest h2,
.awn-databases-view-manifest h3 {
  margin: 0 0 0.35rem;
  font-size: 0.875rem;
  line-height: 1.3;
  color: #0f172a;
}

.awn-databases-view-manifest p {
  margin: 0 0 0.35rem;
}

.awn-databases-view-manifest ul,
.awn-databases-view-manifest ol {
  margin: 0.15rem 0 0.35rem;
  padding-left: 1.1rem;
}

.awn-databases-view-manifest code {
  font-size: 0.75em;
}

.awn-databases-view-actions {
  display: grid;
  gap: 0.5rem;
  margin-top: 0.75rem;
  padding-top: 0.75rem;
  border-top: 1px solid #e2e8f0;
}

.awn-databases-view-add-records-form,
.awn-databases-view-add-files-form {
  display: grid;
  gap: 0.5rem;
}

.awn-databases-view-add-records-form .awn-databases-add-slug-row {
  margin: 0;
}

.awn-databases-view-add-records-form .awn-databases-add-slug-row.hidden {
  display: none;
}

.awn-databases-view-add-records-form.hidden,
.awn-databases-view-add-files-form.hidden {
  display: none;
}

.awn-databases-view-add-files-form .awn-databases-upload-btn {
  align-self: flex-start;
}

.awn-databases-view-add-files-form .awn-databases-upload-hint {
  margin: 0;
  font-size: 0.75rem;
  color: #64748b;
}

.awn-databases-add-parent-field .awn-databases-add-parent-input.hidden,
.awn-databases-add-parent-field .awn-databases-add-parent-select.hidden {
  display: none;
}

.awn-databases-create-checkbox-group {
  display: flex;
  flex-direction: column;
  gap: 0.55rem;
  margin-top: 0.65rem;
  margin-bottom: 0.1rem;
}

.awn-databases-modal-card .awn-databases-create-checkbox-group .awn-databases-create-checkbox-field {
  margin: 0;
}

.awn-databases-create-checkbox-field {
  display: flex;
  align-items: flex-start;
  gap: 0.5rem;
  font-size: 0.8125rem;
  color: var(--text);
  cursor: pointer;
  user-select: none;
}

.awn-databases-create-checkbox-field input[type="checkbox"] {
  margin-top: 0.15rem;
  flex-shrink: 0;
}

.awn-databases-create-checkbox-field .awn-databases-create-checkbox-label {
  line-height: 1.35;
  text-transform: none;
  letter-spacing: normal;
  font-size: inherit;
  color: inherit;
}

.awn-databases-create-checkbox-field code {
  font-size: 0.92em;
}

.awn-databases-create-checkbox-field.is-disabled,
.agents-registry-create-field.is-disabled {
  opacity: 0.5;
  cursor: default;
}

.agents-registry-create-field.is-disabled .agents-registry-select,
.agents-registry-create-field.is-disabled input,
.agents-registry-create-field.is-disabled textarea,
.awn-databases-create-checkbox-field.is-disabled input[type="checkbox"] {
  cursor: not-allowed;
}

.awn-databases-create-file-types-picker {
  display: flex;
  flex-direction: column;
  gap: 0.45rem;
}

.awn-databases-create-file-types-presets {
  display: flex;
  flex-wrap: wrap;
  gap: 0.35rem;
}

.awn-databases-create-file-types-presets.is-disabled {
  pointer-events: none;
  opacity: 0.55;
}

.awn-databases-create-file-type-chip {
  margin: 0;
  padding: 0.2rem 0.45rem;
  border: 1px solid #cbd5e1;
  border-radius: 999px;
  background: #fff;
  color: #475569;
  font-size: 0.6875rem;
  line-height: 1.3;
  cursor: pointer;
}

.awn-databases-create-file-type-chip:hover:not(:disabled) {
  border-color: #94a3b8;
  color: #334155;
}

.awn-databases-create-file-type-chip.is-active {
  border-color: #047857;
  background: #ecfdf5;
  color: #047857;
}

.awn-databases-create-file-type-chip:disabled {
  cursor: not-allowed;
  opacity: 0.65;
}

.menu-static-summary {
  display: flex;
  align-items: center;
  flex-wrap: nowrap;
  gap: 6px;
  min-height: 30px;
  padding: 5px 8px 5px 10px;
  cursor: pointer;
  list-style: none;
  user-select: none;
  box-sizing: border-box;
  background: transparent;
  transition: background 0.15s ease;
}

.menu-static-section:hover > .menu-static-summary {
  background: rgba(255, 255, 255, 0.45);
}

.menu-static-section--storage-schemes:not([open]) > .menu-static-summary {
  border-radius: 7px;
}

.menu-static-section--storage-schemes[open] > .menu-static-summary {
  border-bottom: 1px solid rgba(196, 181, 253, 0.55);
  border-radius: 7px 7px 0 0;
}

.menu-static-section--vendor[open] > .menu-static-summary {
  border-bottom: 1px solid rgba(134, 239, 172, 0.55);
}

.menu-static-section--settings[open] > .menu-static-summary {
  border-bottom: 1px solid rgba(203, 213, 225, 0.75);
}

.menu-static-section--server-sync[open] > .menu-static-summary {
  border-bottom: 1px solid rgba(253, 186, 116, 0.55);
}

.menu-static-section--indexing[open] > .menu-static-summary {
  border-bottom: 1px solid rgba(249, 168, 212, 0.55);
}

.menu-static-section--languagetool[open] > .menu-static-summary {
  border-bottom: 1px solid rgba(94, 234, 212, 0.55);
}

.menu-static-section--images[open] > .menu-static-summary {
  border-bottom: 1px solid rgba(240, 171, 252, 0.55);
}

.menu-static-section--google-drive[open] > .menu-static-summary {
  border-bottom: 1px solid rgba(147, 197, 253, 0.55);
}

.menu-static-section--awn-dialogs[open] > .menu-static-summary {
  border-bottom: 1px solid rgba(165, 180, 252, 0.55);
}

.menu-static-summary::-webkit-details-marker {
  display: none;
}

.menu-static-summary-actions {
  flex: 0 0 22px;
  width: 22px;
  height: 22px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  margin-left: auto;
  margin-right: 0;
}

.menu-static-summary-refresh-btn {
  box-sizing: border-box;
  width: 22px;
  height: 22px;
  min-width: 22px;
  min-height: 22px;
  padding: 0;
  border: 1px solid transparent;
  border-radius: 6px;
  background: transparent;
  color: #64748b;
  cursor: pointer;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  line-height: 0;
  flex-shrink: 0;
  vertical-align: middle;
  -webkit-tap-highlight-color: transparent;
  touch-action: manipulation;
}

.menu-static-summary-refresh-btn:hover:not(.is-spinning) {
  border-color: #c4b5fd;
  background: #f5f3ff;
  color: #4f46e5;
}

.menu-static-summary-refresh-btn.is-spinning {
  pointer-events: none;
  cursor: wait;
  opacity: 0.85;
}

.menu-static-summary-refresh-btn:focus {
  outline: none;
}

.menu-static-summary-refresh-btn:focus-visible {
  outline: 2px solid rgba(124, 58, 237, 0.35);
  outline-offset: 1px;
}

.menu-static-summary-refresh-icon {
  width: 14px;
  height: 14px;
  display: block;
  flex-shrink: 0;
  transform-origin: 50% 50%;
  will-change: transform;
}

.menu-static-summary-refresh-btn.is-spinning .menu-static-summary-refresh-icon {
  animation: workspace-refresh-spin 0.75s linear infinite;
}

.menu-static-status-dot.is-empty {
  opacity: 0.55;
  filter: grayscale(1);
}

.menu-static-status-dot.is-active {
  opacity: 1;
  filter: none;
}

.menu-awn-facts-stats {
  margin: 0 0 0.35rem;
  font-size: 0.75rem;
  line-height: 1.35;
  color: #5b21b6;
}

.menu-awn-facts-stats.is-empty {
  color: #7c6f9a;
}

.menu-awn-facts-stats.is-error {
  color: #b91c1c;
}

.menu-awn-dialogs-stats {
  margin: 0 0 6px;
  font-size: 10px;
  font-weight: 700;
  line-height: 1.2;
  color: #4338ca;
}

.menu-awn-dialogs-stats.is-empty {
  color: #6366f1;
}

.menu-awn-dialogs-stats.is-error {
  color: #dc2626;
}

.menu-awn-dialogs-runtimes {
  list-style: none;
  margin: 10px 0 0;
  padding: 0;
  display: grid;
  gap: 6px;
}

.menu-awn-dialogs-runtimes-empty {
  margin: 0;
  padding: 8px 10px;
  border-radius: 6px;
  background: #ffffff;
  border: 1px solid rgba(165, 180, 252, 0.35);
  color: #64748b;
  font-size: 12px;
}

.menu-awn-dialogs-runtimes-empty.is-error {
  color: #fca5a5;
}

.menu-awn-dialogs-runtime-row {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 8px;
  padding: 0.25rem 0.35rem;
  border-radius: 6px;
  background: #ffffff;
  border: 1px solid rgba(165, 180, 252, 0.28);
}

.menu-awn-dialogs-runtime-btn {
  flex: 1 1 auto;
  min-width: 0;
  border: 0;
  background: transparent;
  color: #4338ca;
  border-radius: 4px;
  padding: 4px 6px;
  text-align: left;
  font: inherit;
  font-size: 12px;
  font-weight: 600;
  cursor: pointer;
}

.menu-awn-dialogs-runtime-btn:hover {
  background: #eef2ff;
  color: #3730a3;
}

.menu-awn-dialogs-runtime-meta {
  flex: 0 0 auto;
  font-size: 10px;
  font-weight: 600;
  color: #94a3b8;
  white-space: nowrap;
}

.menu-static-body {
  padding: 6px 8px 8px 11px;
  background: #fff;
}

.menu-static-section[open] > .menu-static-body {
  border-radius: 0 0 7px 7px;
}

.menu-static-path {
  margin-bottom: 6px;
  font-size: 10px;
  font-weight: 600;
  line-height: 1.3;
  color: #64748b;
  font-family: ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, monospace;
}

.menu-static-description {
  margin: 0;
  font-size: 11px;
  font-weight: 500;
  line-height: 1.35;
  color: #475569;
}

.menu-static-title {
  display: inline-flex;
  align-items: center;
  gap: 5px;
  min-width: 0;
  font-size: 12px;
  font-weight: 700;
  line-height: 1.25;
  flex-wrap: nowrap;
}

.menu-static-title > span[aria-hidden="true"] {
  flex: 0 0 auto;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 14px;
  min-width: 14px;
  margin-top: 0;
  font-size: 10px;
  line-height: 1;
}

.menu-static-title:not(:has(.menu-static-title-text)) {
  align-items: center;
}

.menu-static-title:not(:has(.menu-static-title-text)) > span[aria-hidden="true"] {
  margin-top: 0;
}

.menu-static-summary > .menu-static-title {
  flex: 1 1 auto;
  min-width: 0;
}

.menu-static-title-text {
  display: block;
  flex: 1 1 auto;
  min-width: 0;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.menu-static-subtitle {
  display: inline;
  font-size: inherit;
  font-weight: 500;
  color: #64748b;
  line-height: inherit;
}

.menu-static-subtitle::before {
  content: " · ";
  color: #94a3b8;
  font-weight: 400;
}

.menu-static-subtitle.stub-static-mark {
  font-size: 11px;
  font-weight: 600;
}

.menu-static-title .stub-static-mark {
  font-size: 10px;
  font-weight: 700;
}

.menu-static-title-text .menu-static-todo-prefix {
  margin-right: 0.2em;
  font-size: 11px;
}

.menu-static-title,
.menu-static-title--google-drive,
.menu-static-title--storage-schemes,
.menu-static-title--awn-dialogs,
.menu-static-title--awn-facts,
.menu-static-title--glossary,
.menu-static-title--vendor,
.menu-static-title--settings,
.menu-static-title--server-sync,
.menu-static-title--indexing,
.menu-static-title--languagetool,
.menu-static-title--images {
  color: #1e293b;
}

.menu-languagetool-scope {
  display: flex;
  flex-wrap: wrap;
  gap: 6px;
  margin: 0 0 0.5rem;
  padding: 0;
  list-style: none;
}

.menu-languagetool-scope li {
  padding: 2px 8px;
  border: 1px solid #99f6e4;
  border-radius: 999px;
  background: #fff;
  font-size: 0.75rem;
  line-height: 1.35;
  color: #0f766e;
}

.menu-images-tools-scope {
  display: flex;
  flex-wrap: wrap;
  gap: 6px;
  margin: 0 0 0.5rem;
  padding: 0;
  list-style: none;
}

.menu-images-tools-scope li {
  padding: 2px 8px;
  border: 1px solid #f0abfc;
  border-radius: 999px;
  background: #fff;
  font-size: 0.75rem;
  line-height: 1.35;
  color: #a21caf;
}

.menu-index-block {
  display: grid;
  gap: 6px;
  padding-top: 8px;
  margin-top: 8px;
  border-top: 1px dashed var(--border);
}

.menu-index-block:first-of-type {
  margin-top: 0;
  padding-top: 0;
  border-top: 0;
}

.menu-index-block-title {
  display: flex;
  align-items: center;
  gap: 6px;
  flex-wrap: wrap;
  font-size: 12px;
  font-weight: 700;
  color: #0f766e;
}

.menu-static-action-btn--secondary {
  margin-top: 2px;
  background: #f8fafc;
  color: #334155;
  border-color: #cbd5e1;
}

.menu-static-action-btn--secondary:hover {
  background: #f1f5f9;
  color: #0f172a;
}

.menu-index-block--pipeline .menu-static-action-btn--secondary {
  margin-top: 6px;
}

.workspace-index-run-log-card {
  width: min(920px, 96vw);
  max-height: min(86vh, 920px);
  display: flex;
  flex-direction: column;
}

.workspace-index-run-log-header {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: 12px;
}

.workspace-index-run-log-subtitle {
  margin: 4px 0 0;
  font-size: 12px;
  color: #64748b;
}

.workspace-index-run-log-toolbar {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
  margin-top: 12px;
}

.workspace-index-run-log-input {
  flex: 1 1 220px;
  min-width: 180px;
  padding: 6px 10px;
  border: 1px solid #cbd5e1;
  border-radius: 6px;
  font-size: 13px;
}

.workspace-index-run-log-meta {
  margin-top: 8px;
  font-size: 12px;
  color: #64748b;
}

.workspace-index-run-log-list {
  margin-top: 10px;
  overflow: auto;
  flex: 1 1 auto;
  min-height: 180px;
  max-height: min(62vh, 640px);
  border: 1px solid #e2e8f0;
  border-radius: 8px;
  background: #f8fafc;
}

.workspace-index-run-log-item {
  padding: 6px 10px;
  border-bottom: 1px solid #e2e8f0;
  font-size: 12px;
  line-height: 1.35;
  word-break: break-all;
}

.workspace-index-run-log-item:last-child {
  border-bottom: none;
}

.workspace-index-run-log-item code {
  font-family: ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace;
  color: #0f172a;
}

.workspace-index-run-log-empty {
  margin: 0;
  padding: 16px 12px;
  font-size: 13px;
  color: #64748b;
}

.workspace-index-run-log-empty.is-error {
  color: #b91c1c;
}

.menu-link-index-probe {
  display: flex;
  flex-wrap: wrap;
  gap: 6px;
  align-items: center;
  margin-top: 2px;
}

.menu-link-index-probe-input {
  flex: 1 1 180px;
  min-width: 0;
  min-height: 32px;
  padding: 0 10px;
  border: 1px solid #cbd5e1;
  border-radius: 8px;
  background: #fff;
  font-size: 12px;
  color: #0f172a;
}

.menu-link-index-probe-input:focus {
  outline: none;
  border-color: #14b8a6;
  box-shadow: 0 0 0 2px rgba(20, 184, 166, 0.18);
}

.menu-link-index-probe .menu-static-action-btn--secondary {
  margin-top: 0;
  flex: 0 0 auto;
}

.menu-link-index-probe-result {
  font-size: 11px;
  line-height: 1.45;
  color: #475569;
  word-break: break-word;
}

.workspace-index-catalog-item--link {
  padding-top: 10px;
  padding-bottom: 10px;
}

.workspace-index-catalog-link-edge {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 6px;
  line-height: 1.35;
}

.workspace-index-catalog-link-from,
.workspace-index-catalog-link-to {
  font-size: 11px;
  word-break: break-word;
}

.workspace-index-catalog-link-arrow {
  color: #64748b;
  font-weight: 700;
}

.workspace-index-catalog-link-target {
  display: block;
  margin-top: 4px;
  font-size: 10px;
  color: #94a3b8;
}

.workspace-index-catalog-badge--kind.is-wikilink {
  background: #ecfdf5;
  color: #047857;
}

.workspace-index-catalog-badge--kind.is-markdown {
  background: #eff6ff;
  color: #1d4ed8;
}

.workspace-index-catalog-badge--kind.is-relation {
  background: #fdf4ff;
  color: #a21caf;
}

.workspace-index-catalog-card {
  width: min(920px, calc(100vw - 32px));
  max-height: calc(100vh - 48px);
  display: grid;
  grid-template-rows: auto auto auto 1fr auto;
  gap: 10px;
}

/* Ширина .modal-card по умолчанию 420px — переопределяем для редактора сущностей */
.modal-card.entity-registry-editor-card {
  width: min(960px, calc(100vw - 32px));
  max-height: calc(100vh - 32px);
  padding: 0;
  overflow: hidden;
}

@media (max-width: 860px) {
  .entity-registry-editor-layout {
    grid-template-columns: 1fr;
    max-height: none;
  }

  .entity-registry-editor-types,
  .entity-registry-editor-list-pane,
  .entity-registry-editor-detail {
    border-right: none;
    border-bottom: 1px solid var(--border-subtle, rgba(0, 0, 0, 0.08));
    max-height: 32vh;
  }

  .entity-registry-editor-detail {
    border-bottom: none;
  }

  .entity-registry-editor-search-bar {
    grid-template-columns: 1fr 1fr;
    align-items: stretch;
  }

  .entity-registry-editor-search-field--grow {
    grid-column: 1 / -1;
  }

  .entity-registry-editor-search-actions {
    grid-column: 1 / -1;
    justify-content: stretch;
  }

  .entity-registry-editor-search-actions .entity-editor-tool-btn {
    flex: 1 1 auto;
  }
}

.workspace-index-catalog-header {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: 12px;
}

.workspace-index-catalog-subtitle {
  margin: 4px 0 0;
  font-size: 12px;
  color: #64748b;
}

.workspace-index-catalog-toolbar {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
}

.workspace-index-catalog-input {
  min-width: 160px;
  flex: 1 1 180px;
  padding: 6px 10px;
  border: 1px solid var(--border);
  border-radius: 8px;
  font-size: 12px;
}

.workspace-index-catalog-field.hidden {
  display: none;
}

.workspace-index-catalog-meta {
  font-size: 11px;
  color: #64748b;
}

.workspace-index-catalog-list {
  overflow: auto;
  display: grid;
  gap: 10px;
  padding-right: 4px;
}

.workspace-index-catalog-item {
  border: 1px solid var(--border);
  border-radius: 10px;
  padding: 10px 12px;
  background: #fff;
}

.workspace-index-catalog-item-head {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 8px;
  margin-bottom: 6px;
  font-size: 12px;
}

.workspace-index-catalog-badge {
  font-size: 11px;
  color: #64748b;
}

.workspace-index-catalog-preview {
  margin: 0 0 6px;
  font-size: 12px;
  line-height: 1.45;
  color: #334155;
  white-space: pre-wrap;
}

.workspace-index-catalog-vector {
  font-size: 11px;
  font-family: ui-monospace, SFMono-Regular, Menlo, monospace;
  color: #0f766e;
}

.workspace-index-catalog-fields {
  width: 100%;
  border-collapse: collapse;
  font-size: 12px;
}

.workspace-index-catalog-fields th,
.workspace-index-catalog-fields td {
  border-top: 1px solid #e2e8f0;
  padding: 4px 6px;
  text-align: left;
  vertical-align: top;
}

.workspace-index-catalog-fields thead th {
  color: #475569;
  font-size: 11px;
  text-transform: uppercase;
  letter-spacing: 0.03em;
}

.workspace-index-catalog-fields tbody th {
  width: 18%;
  color: #64748b;
  font-weight: 600;
}

.workspace-index-catalog-field-type {
  width: 12%;
  color: #0f766e;
  font-family: ui-monospace, SFMono-Regular, Menlo, monospace;
  font-size: 11px;
}

.workspace-index-catalog-field-title {
  width: 28%;
  color: #334155;
}

.workspace-index-catalog-context {
  margin-left: 8px;
  font-size: 11px;
  color: #64748b;
  font-family: ui-monospace, SFMono-Regular, Menlo, monospace;
}

.workspace-index-catalog-empty {
  margin: 0;
  padding: 16px;
  text-align: center;
  color: #64748b;
  font-size: 13px;
}

.workspace-index-catalog-empty.is-error {
  color: #b91c1c;
}

.workspace-index-catalog-footer {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto minmax(0, 1fr);
  align-items: center;
  gap: 12px;
}

.workspace-index-catalog-footer .menu-static-action-btn {
  flex-shrink: 0;
}

#workspace-index-catalog-prev-btn {
  justify-self: start;
}

#workspace-index-catalog-next-btn {
  justify-self: end;
}

.workspace-index-catalog-page {
  justify-self: center;
  font-size: 12px;
  color: #64748b;
  white-space: nowrap;
  line-height: 1.2;
  min-width: 5.5rem;
  text-align: center;
}

.editor-file-find-bar {
  display: flex;
  align-items: center;
  gap: 6px;
  margin: 0 0 8px;
  padding: 6px 8px;
  border: 1px solid var(--border);
  border-radius: 10px;
  background: #f8fafc;
}

.editor-file-find-bar.hidden {
  display: none;
}

.editor-file-find-input {
  flex: 1 1 auto;
  min-width: 120px;
  padding: 6px 10px;
  border: 1px solid #cbd5e1;
  border-radius: 8px;
  font-size: 12px;
  background: #fff;
}

.editor-file-find-count {
  flex: 0 0 auto;
  min-width: 3.5rem;
  font-size: 11px;
  color: #64748b;
  text-align: center;
  white-space: nowrap;
}

.editor-file-find-btn {
  flex: 0 0 auto;
  min-width: 28px;
  height: 28px;
  border: 1px solid #cbd5e1;
  border-radius: 8px;
  background: #fff;
  color: #334155;
  font-size: 12px;
  line-height: 1;
  cursor: pointer;
}

.editor-file-find-btn:hover {
  background: #f1f5f9;
}

.editor-file-find-btn--close {
  font-size: 16px;
}

.editor-file-find-mark {
  background: #fef08a;
  color: inherit;
  border-radius: 2px;
  padding: 0 1px;
}

.editor-file-find-mark.is-active {
  background: #facc15;
  outline: 1px solid #ca8a04;
}

.menu-index-block--monitor {
  border-top: 1px solid rgba(148, 163, 184, 0.35);
  padding-top: 10px;
}

.menu-index-monitor-summary {
  margin: 0 0 8px;
  font-size: 11px;
  font-weight: 600;
  line-height: 1.4;
}

.menu-index-monitor-summary.is-ok {
  color: #15803d;
}

.menu-index-monitor-summary.is-stale {
  color: #b45309;
}

.menu-index-monitor-summary.is-partial,
.menu-index-monitor-summary.is-empty {
  color: #64748b;
}

.menu-index-monitor-summary.is-error {
  color: #b91c1c;
}

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

@media (max-width: 420px) {
  .menu-index-monitor-grid {
    grid-template-columns: 1fr;
  }
}

.menu-index-monitor-card {
  border: 1px solid var(--border);
  border-radius: 8px;
  padding: 8px 10px;
  background: #fff;
}

.menu-index-monitor-card-head {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 8px;
  margin-bottom: 4px;
}

.menu-index-monitor-card-title {
  font-size: 11px;
  font-weight: 700;
  color: #334155;
}

.menu-index-monitor-badge {
  flex: 0 0 auto;
  padding: 1px 6px;
  border-radius: 999px;
  font-size: 10px;
  font-weight: 700;
  line-height: 1.4;
  text-transform: uppercase;
}

.menu-index-monitor-badge.is-ok {
  background: #dcfce7;
  color: #166534;
}

.menu-index-monitor-badge.is-stale {
  background: #fef3c7;
  color: #92400e;
}

.menu-index-monitor-badge.is-error {
  background: #fee2e2;
  color: #b91c1c;
}

.menu-index-monitor-badge.is-empty,
.menu-index-monitor-badge.is-partial {
  background: #f1f5f9;
  color: #64748b;
}

.menu-index-monitor-lines {
  margin: 0;
  padding-left: 16px;
  font-size: 10px;
  line-height: 1.45;
  color: #475569;
}

.menu-index-monitor-lines li {
  margin: 0;
}

.menu-static-google-drive-stats {
  margin: 0;
  font-size: 11px;
  font-weight: 600;
  line-height: 1.35;
  color: #1d4ed8;
}

.menu-static-google-drive-stats--summary {
  flex: 0 0 auto;
  min-width: 0;
  max-width: 42%;
  margin-left: 4px;
  text-align: right;
  font-size: 10px;
  font-weight: 700;
  line-height: 1.2;
  color: #2563eb;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
}


.menu-static-google-drive-stats.is-empty,
.menu-static-google-drive-stats--summary.is-empty {
  color: #64748b;
  font-weight: 600;
}

.menu-static-google-drive-stats.is-error,
.menu-static-google-drive-stats--summary.is-error {
  color: #b91c1c;
}

.menu-google-drive-files {
  list-style: none;
  margin: 6px 0 0;
  padding: 0;
  max-height: 200px;
  overflow-y: auto;
}

.menu-google-drive-file-row {
  display: flex;
  align-items: center;
  gap: 8px;
  min-height: 22px;
  padding: 3px 0;
  border-bottom: 1px solid rgba(147, 197, 253, 0.28);
}

.menu-google-drive-file-row:last-child {
  border-bottom: 0;
}

.menu-google-drive-file-name {
  flex: 1 1 auto;
  min-width: 0;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
  font-size: 10px;
  font-weight: 600;
  line-height: 1.25;
  color: #1e3a5f;
  font-family: ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, monospace;
}

.menu-google-drive-file-size {
  flex: 0 0 auto;
  font-size: 10px;
  font-weight: 600;
  line-height: 1.25;
  color: #64748b;
  white-space: nowrap;
}

.menu-google-drive-files-empty {
  margin: 0;
  padding: 4px 0 2px;
  font-size: 10px;
  font-weight: 500;
  line-height: 1.3;
  color: #64748b;
  list-style: none;
}

.menu-google-drive-files-empty.is-error {
  color: #b91c1c;
}

.menu-static-action-btn {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 100%;
  margin: 8px 0 0;
  padding: 7px 10px;
  border: 1px solid rgba(66, 133, 244, 0.35);
  border-radius: 8px;
  background:
    linear-gradient(135deg, rgba(66, 133, 244, 0.08) 0%, rgba(52, 168, 83, 0.06) 100%),
    #fff;
  color: #1e3a5f;
  font-size: 11px;
  font-weight: 700;
  line-height: 1.2;
  cursor: pointer;
  transition: border-color 0.15s ease, opacity 0.15s ease;
}

.menu-static-action-btn:hover:not(:disabled) {
  border-color: rgba(66, 133, 244, 0.55);
}

.menu-static-action-btn:disabled,
.menu-static-action-btn.is-loading {
  opacity: 0.72;
  cursor: wait;
}

.menu-static-action-btn--google-drive {
  margin-top: 6px;
}

.menu-static-action-btn.menu-media-library-create-btn--icon,
.menu-static-action-btn.menu-awn-channels-create-btn--icon {
  width: 30px;
  min-width: 30px;
  max-width: 30px;
  flex: 0 0 30px;
  height: 30px;
  min-height: 30px;
  margin: 0;
  padding: 0 0 1px;
  box-sizing: border-box;
  border-radius: 6px;
  font-family: inherit;
  font-size: 11px;
  font-weight: 700;
  line-height: 1;
  letter-spacing: 0;
  display: grid;
  place-items: center;
  text-align: center;
  -webkit-font-smoothing: antialiased;
  background: rgba(255, 255, 255, 0.88);
  background-image: none;
}

.menu-static-action-btn.menu-media-library-create-btn--icon {
  border-color: rgba(14, 116, 144, 0.35);
  color: #0e7490;
}

.menu-static-action-btn.menu-media-library-create-btn--icon:hover:not(:disabled) {
  border-color: rgba(8, 145, 178, 0.55);
  background: #ecfeff;
  color: #0e7490;
}

.menu-static-action-btn.menu-awn-channels-create-btn--icon {
  border-color: rgba(248, 113, 113, 0.55);
  color: #991b1b;
}

.menu-static-action-btn.menu-awn-channels-create-btn--icon:hover:not(:disabled) {
  border-color: rgba(220, 38, 38, 0.55);
  background: #fee2e2;
  color: #7f1d1d;
}

.menu-static-drop-hint {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 6px;
  margin: 0;
  padding: 7px 8px;
  border: 1px dashed #60a5fa;
  border-radius: 6px;
  background: rgba(255, 255, 255, 0.72);
  color: #2563eb;
  font-size: 11px;
  font-weight: 600;
  line-height: 1.2;
  text-align: center;
  pointer-events: none;
  user-select: none;
}

.menu-static-drop-icon {
  font-size: 14px;
  line-height: 1;
}

.sidebar-slab-menu .menu-agent-system-section {
  margin: 0 0 6px;
  padding: 2px 4px 2px;
  border: 1px solid #c7d2fe;
  border-radius: 8px;
  background: #eef2ff;
  box-sizing: border-box;
}

.sidebar-slab-menu .menu-agent-system-head .menu-folder.menu-folder-agent-system-root,
.sidebar-slab-menu .menu-agent-system-title {
  color: #4338ca;
  font-weight: 700;
}

.sidebar-slab-menu .menu-container-section {
  margin: 0 0 4px;
  padding: 0;
  border-left: 2px solid #93c5fd;
  border-radius: 0;
  background: transparent;
  box-sizing: border-box;
}

.sidebar-slab-menu .menu-workspace-root-section {
  margin: 0 0 4px;
  padding: 0;
  border-left: 2px solid #86efac;
  border-radius: 0;
  background: transparent;
  box-sizing: border-box;
}

.sidebar-slab-menu .menu-system-files-section {
  --menu-system-files-pad-left: 10px;
  margin: 0 0 4px;
  padding: 0 0 0 var(--menu-system-files-pad-left);
  border-left: 2px solid #c0c0c0;
  border-radius: 0;
  background: transparent;
  box-sizing: border-box;
}

.sidebar-slab-menu .menu-agent-pane:not(.is-menu-view-flat) .tree-children > .menu-container-section,
.sidebar-slab-menu .menu-agent-pane:not(.is-menu-view-flat) .tree-children > .menu-workspace-root-section,
.sidebar-slab-menu .menu-agent-pane:not(.is-menu-view-flat) .tree-children > .menu-system-files-section,
.sidebar-slab-menu .menu-agent-pane:not(.is-menu-view-flat) .tree-children > .menu-service-section,
.sidebar-slab-menu .menu-agent-pane:not(.is-menu-view-flat) .tree-children > .menu-shared-section,
.sidebar-slab-menu .menu-agent-pane:not(.is-menu-view-flat) .tree-children > .menu-agent-system-section {
  margin-left: calc(-1 * var(--menu-win-indent));
  width: calc(100% + var(--menu-win-indent));
  max-width: calc(100% + var(--menu-win-indent));
}

/* Tree lines must not clip inside colored boxes */
.sidebar-slab-menu .menu-section,
.sidebar-slab-menu .tree-children,
.sidebar-slab-menu .menu-workspace-section,
.sidebar-slab-menu .menu-service-section,
.sidebar-slab-menu .menu-shared-section,
.sidebar-slab-menu .menu-agent-system-section,
.sidebar-slab-menu .menu-container-section,
.sidebar-slab-menu .menu-workspace-root-section,
.sidebar-slab-menu .menu-system-files-section {
  overflow: visible;
}

.sidebar-slab-menu .menu-tree-divider {
  height: 1px;
  margin: 6px 0;
  background: #c0c0c0;
}

.sidebar-slab-menu .menu-agent-pane:not(.is-menu-view-flat) .tree-children > .menu-tree-divider {
  margin-left: calc(-1 * var(--menu-win-indent));
  width: calc(100% + var(--menu-win-indent));
  max-width: calc(100% + var(--menu-win-indent));
}

.sidebar-slab-menu .menu-tree-divider--workspace {
  margin-top: 4px;
  margin-bottom: 6px;
}

.sidebar-slab-menu .menu-agent-pane:not(.is-menu-view-flat) .menu-folder-label {
  display: inline-flex;
  align-items: center;
  gap: 4px;
  min-width: 0;
  max-width: 100%;
  min-height: calc(var(--menu-win-row-h) - 2px);
}

.sidebar-slab-menu .menu-agent-pane:not(.is-menu-view-flat) .menu-tree-preview {
  width: calc(var(--menu-win-row-h) - 4px);
  height: calc(var(--menu-win-row-h) - 4px);
  border-radius: 2px;
  border-color: #c0c0c0;
  background: #ffffff;
  flex: 0 0 auto;
  align-self: center;
  overflow: hidden;
}

.sidebar-slab-menu .menu-agent-pane:not(.is-menu-view-flat) .menu-tree-preview-img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  display: block;
}

/* Action buttons — show on row hover only */
.sidebar-slab-menu .menu-agent-pane:not(.is-menu-view-flat) .menu-folder-row .add-node-btn,
.sidebar-slab-menu .menu-agent-pane:not(.is-menu-view-flat) .menu-folder-row .menu-pin-branch-btn,
.sidebar-slab-menu .menu-agent-pane:not(.is-menu-view-flat) .menu-folder-row .node-settings-btn,
.sidebar-slab-menu .menu-agent-pane:not(.is-menu-view-flat) .menu-folder-row .bookmark-btn,
.sidebar-slab-menu .menu-agent-pane:not(.is-menu-view-flat) .menu-item-row .node-settings-btn,
.sidebar-slab-menu .menu-agent-pane:not(.is-menu-view-flat) .menu-item-row .bookmark-btn {
  opacity: 0;
  transition: opacity 0.1s ease;
}

.sidebar-slab-menu .menu-agent-pane:not(.is-menu-view-flat) .menu-folder-row:hover .add-node-btn,
.sidebar-slab-menu .menu-agent-pane:not(.is-menu-view-flat) .menu-folder-row:hover .menu-pin-branch-btn,
.sidebar-slab-menu .menu-agent-pane:not(.is-menu-view-flat) .menu-folder-row:hover .node-settings-btn,
.sidebar-slab-menu .menu-agent-pane:not(.is-menu-view-flat) .menu-folder-row:hover .bookmark-btn,
.sidebar-slab-menu .menu-agent-pane:not(.is-menu-view-flat) .menu-item-row:hover .node-settings-btn,
.sidebar-slab-menu .menu-agent-pane:not(.is-menu-view-flat) .menu-item-row:hover .bookmark-btn,
.sidebar-slab-menu .menu-agent-pane:not(.is-menu-view-flat) .menu-folder-row .menu-pin-branch-btn.is-active {
  opacity: 1;
}

/* Badges */
.sidebar-slab-menu .menu-intake-badges,
.sidebar-slab-menu .menu-runtime-badges {
  transform: scale(0.88);
  transform-origin: left center;
}

.sidebar-slab-menu .menu-folder-row:not(:hover) .menu-intake-badges,
.sidebar-slab-menu .menu-item-row:not(:hover) .menu-intake-badges,
.sidebar-slab-menu .menu-folder-row:not(:hover) .menu-runtime-badges,
.sidebar-slab-menu .menu-item-row:not(:hover) .menu-runtime-badges {
  opacity: 0.65;
}

.sidebar-slab-menu .menu-agent-pane:not(.is-menu-view-flat) .system-file-group-label {
  display: block;
  margin: 4px 0 1px;
  padding: 0;
  min-height: 0;
  box-sizing: border-box;
  text-transform: none;
  letter-spacing: normal;
  font-size: inherit;
  color: inherit;
}

.sidebar-slab-menu .menu-system-files-section > .system-file-group-label:first-child {
  margin-top: 2px;
}

.sidebar-slab-menu
  .menu-agent-pane:not(.is-menu-view-flat)
  .menu-tree-divider--system-files
  + .system-file-group-label,
.sidebar-slab-menu
  .menu-agent-pane:not(.is-menu-view-flat)
  .menu-tree-divider--system-files
  + .menu-system-files-section
  > .system-file-group-label:first-child {
  margin-top: 2px;
}

.sidebar-slab-menu .menu-agent-pane:not(.is-menu-view-flat) .system-file-row + .system-file-group-label {
  margin-top: 6px;
  padding-top: 5px;
  border-top: 1px solid #d4d4d4;
}

.sidebar-slab-menu .menu-agent-pane:not(.is-menu-view-flat) .system-file-group-label-text {
  display: block;
  min-width: 0;
  padding: 0 4px 0 var(--menu-win-label-pad-left);
  font-size: var(--menu-win-font);
  font-weight: 700;
  line-height: 1.25;
  letter-spacing: normal;
  text-transform: none;
  color: var(--menu-win-text);
  user-select: none;
}

.sidebar-slab-menu
  .menu-agent-pane:not(.is-menu-view-flat)
  .menu-system-files-section
  .system-file-group-label-text {
  padding: 0 4px 0 0;
  font-size: 10px;
  font-weight: 600;
  letter-spacing: 0.05em;
  text-transform: uppercase;
  color: var(--menu-win-muted);
}

/* Sidebar search — оригинальный вид, не classic tree */
.sidebar-slab-menu .menu-search-wrap .menu-search-bar,
.sidebar-tree-band-panel .menu-search-wrap .menu-search-bar {
  border-radius: 8px;
  border-color: var(--border);
  background: var(--panel);
  min-height: 32px;
  height: 32px;
  padding: 0 10px;
  gap: 8px;
  box-sizing: border-box;
  transition: border-color 0.15s ease, box-shadow 0.15s ease, background 0.15s ease;
}

.sidebar-slab-menu .menu-search-wrap .menu-search-bar:focus-within,
.sidebar-tree-band-panel .menu-search-wrap .menu-search-bar:focus-within {
  border-color: var(--accent);
  background: #fff;
  box-shadow: 0 0 0 2px rgba(59, 130, 246, 0.12);
}

.sidebar-slab-menu .menu-search-wrap .menu-search-input,
.sidebar-tree-band-panel .menu-search-wrap .menu-search-input {
  font-size: 13px;
  padding: 5px 0;
}

.sidebar-slab-menu .menu-search-wrap .menu-search-icon,
.sidebar-tree-band-panel .menu-search-wrap .menu-search-icon {
  color: #94a3b8;
}

.sidebar-slab-menu .menu-agent-stats {
  margin-top: 0;
}

/* Flat list — compact rows, no tree/zone chrome */
.sidebar-slab-menu .menu-agent-pane.is-menu-view-flat .tree-children,
.sidebar-slab-menu .menu.is-menu-view-flat .tree-children {
  margin: 0 !important;
  padding: 0 !important;
  border: none !important;
}

.sidebar-slab-menu .menu-agent-pane.is-menu-view-flat .menu-workspace-section,
.sidebar-slab-menu .menu-agent-pane.is-menu-view-flat .menu-service-section,
.sidebar-slab-menu .menu-agent-pane.is-menu-view-flat .menu-shared-section,
.sidebar-slab-menu .menu-agent-pane.is-menu-view-flat .menu-agent-system-section,
.sidebar-slab-menu .menu-agent-pane.is-menu-view-flat .menu-container-section,
.sidebar-slab-menu .menu-agent-pane.is-menu-view-flat .menu-workspace-root-section,
.sidebar-slab-menu .menu-agent-pane.is-menu-view-flat .menu-system-files-section,
.sidebar-slab-menu .menu-agent-pane.is-menu-view-flat .menu-nested-container-section,
.sidebar-slab-menu .menu-agent-pane.is-menu-view-flat .menu-section {
  margin: 0;
  padding: 0;
  border: none;
  border-radius: 0;
  background: transparent;
  overflow: visible;
}

.sidebar-slab-menu .menu-agent-pane.is-menu-view-flat .menu-tree-branch {
  margin: 0;
  padding: 0;
}

.sidebar-slab-menu .menu-agent-pane.is-menu-view-flat .menu-folder-row,
.sidebar-slab-menu .menu-agent-pane.is-menu-view-flat .menu-item-row,
.sidebar-slab-menu .menu-agent-pane.is-menu-view-flat .system-file-row {
  gap: 0;
  margin: 0;
  padding: 0;
  width: 100%;
  min-height: var(--menu-win-row-h);
  align-items: center;
}

.sidebar-slab-menu .menu-agent-pane.is-menu-view-flat .menu-section-row {
  display: none !important;
}

.sidebar-slab-menu .menu-agent-pane.is-menu-view-flat .folder-toggle-btn,
.sidebar-slab-menu .menu-agent-pane.is-menu-view-flat .menu-sort-handle,
.sidebar-slab-menu .menu-agent-pane.is-menu-view-flat .menu-tree-toggle-spacer,
.sidebar-slab-menu .menu-agent-pane.is-menu-view-flat .menu-tree-divider,
.sidebar-slab-menu .menu-agent-pane.is-menu-view-flat .menu-tree-type-icon,
.sidebar-slab-menu .menu-agent-pane.is-menu-view-flat .menu-folder-row .menu-pin-branch-btn,
.sidebar-slab-menu .menu-agent-pane.is-menu-view-flat .menu-folder-row .add-node-btn,
.sidebar-slab-menu .menu-agent-pane.is-menu-view-flat .menu-tree-branch > .menu-folder-row::before,
.sidebar-slab-menu .menu-agent-pane.is-menu-view-flat .menu-tree-branch > .menu-folder-row::after,
.sidebar-slab-menu .menu-agent-pane.is-menu-view-flat .menu-tree-branch > .menu-section-row::before,
.sidebar-slab-menu .menu-agent-pane.is-menu-view-flat .menu-tree-branch > .menu-section-row::after,
.sidebar-slab-menu .menu-agent-pane.is-menu-view-flat .menu-item-row.menu-tree-branch::before,
.sidebar-slab-menu .menu-agent-pane.is-menu-view-flat .menu-item-row.menu-tree-branch::after,
.sidebar-slab-menu .menu-agent-pane.is-menu-view-flat .system-file-row.menu-tree-branch::before,
.sidebar-slab-menu .menu-agent-pane.is-menu-view-flat .system-file-row.menu-tree-branch::after {
  display: none !important;
}

.sidebar-slab-menu .menu-agent-pane.is-menu-view-flat .menu-folder,
.sidebar-slab-menu .menu-agent-pane.is-menu-view-flat .menu-item,
.sidebar-slab-menu .menu-agent-pane.is-menu-view-flat .system-file-item {
  flex: 1 1 auto;
  min-width: 0;
  min-height: var(--menu-win-row-h);
  margin: 0;
  padding: 1px 4px 1px var(--menu-win-label-pad-left);
  border: none;
  border-radius: 0;
  background: transparent;
  font-size: var(--menu-win-font);
  font-family: Tahoma, "Segoe UI", sans-serif;
  line-height: 1.25;
  color: var(--menu-win-text);
}

.sidebar-slab-menu .menu-agent-pane.is-menu-view-flat .menu-item.system-file-item {
  padding-left: calc(
    var(--menu-system-file-dot-left) + var(--menu-system-file-dot-size) + var(--menu-system-file-dot-gap)
  );
}

.sidebar-slab-menu .menu-agent-pane.is-menu-view-flat .menu-folder:hover,
.sidebar-slab-menu .menu-agent-pane.is-menu-view-flat .menu-item:hover,
.sidebar-slab-menu .menu-agent-pane.is-menu-view-flat .system-file-item:hover {
  background: var(--menu-win-hover);
  color: var(--menu-win-text);
}

.sidebar-slab-menu .menu-agent-pane.is-menu-view-flat .menu-item.active,
.sidebar-slab-menu .menu-agent-pane.is-menu-view-flat .menu-folder.active,
.sidebar-slab-menu .menu-agent-pane.is-menu-view-flat .system-file-item.active {
  background: var(--menu-win-active-bg);
  color: var(--menu-win-active-text);
  font-weight: 400;
}

.sidebar-slab-menu .menu-agent-pane.is-menu-view-flat .menu-item.has-node-color.active,
.sidebar-slab-menu .menu-agent-pane.is-menu-view-flat .menu-folder.has-node-color.active {
  background: var(--menu-win-active-bg);
  color: var(--menu-win-active-text);
}

.sidebar-slab-menu .menu-agent-pane.is-menu-view-flat .system-file-group-label {
  margin: 6px 0 2px;
  padding: 0 4px;
  font-size: 10px;
  font-weight: 700;
  color: var(--menu-win-muted);
}

.sidebar-slab-menu .menu-agent-pane.is-menu-view-flat .menu-workspace-head .menu-folder-name,
.sidebar-slab-menu .menu-agent-pane.is-menu-view-flat .menu-service-title,
.sidebar-slab-menu .menu-agent-pane.is-menu-view-flat .menu-shared-title,
.sidebar-slab-menu .menu-agent-pane.is-menu-view-flat .menu-agent-system-title {
  font-weight: 600;
}

.sidebar-slab-menu .menu-agent-pane.is-menu-view-cards .menu-card {
  border-radius: 0;
  border-color: #808080;
}

/* ── Classic Windows TreeView — navigation hub rail slots ─────────────────── */

.node-navigation-hub-rail-slot-tree .nav-book-toc-tree--classic {
  --nav-toc-win-text: #000000;
  --nav-toc-win-muted: #606060;
  --nav-toc-win-line: #808080;
  --nav-toc-win-hover: #e5f3ff;
  --nav-toc-win-active-bg: #316ac5;
  --nav-toc-win-active-text: #ffffff;
  --nav-toc-win-row-h: 24px;
  --nav-toc-win-font: 12px;
  --nav-toc-win-indent: 16px;
  --nav-toc-win-toggle-w: 12px;
  --nav-toc-win-toggle-gap: 4px;
  --nav-toc-win-toggle-slot: calc(var(--nav-toc-win-toggle-w) + var(--nav-toc-win-toggle-gap));
  --nav-toc-win-branch-x: calc(var(--nav-toc-win-toggle-w) / 2);
  --nav-toc-win-branch-w: calc(var(--nav-toc-win-toggle-slot) - var(--nav-toc-win-branch-x));
  --nav-toc-win-label-pad-left: 4px;
  font-family: Tahoma, "Segoe UI", "MS Sans Serif", sans-serif;
  font-size: var(--nav-toc-win-font);
  color: var(--nav-toc-win-text);
  background: transparent;
}

.node-navigation-hub-rail-slot-tree .nav-book-toc-tree--classic .nav-book-toc-list--root {
  margin: 0;
  padding: 2px 0 4px;
  border-left: 0;
}

.node-navigation-hub-rail-slot-tree .nav-book-toc-tree--classic .nav-book-toc-folder {
  margin: 0;
}

.node-navigation-hub-rail-slot-tree .nav-book-toc-tree--classic .nav-book-toc-folder-head {
  display: flex;
  align-items: center;
  gap: 0;
  width: 100%;
  min-width: 0;
  min-height: var(--nav-toc-win-row-h);
  margin: 0;
  padding: 1px 2px 1px var(--nav-toc-win-label-pad-left);
  border: 0;
  border-radius: 0;
  background: transparent;
  box-shadow: none;
  box-sizing: border-box;
  overflow: visible;
  position: relative;
  z-index: 1;
}

.node-navigation-hub-rail-slot-tree .nav-book-toc-tree--classic.nav-book-toc-tree--rail .nav-book-toc-folder-head {
  grid-template-columns: unset;
}

.node-navigation-hub-rail-slot-tree .nav-book-toc-tree--classic .nav-book-toc-folder--root > .nav-book-toc-folder-head {
  padding-left: var(--nav-toc-win-label-pad-left);
}

.node-navigation-hub-rail-slot-tree .nav-book-toc-tree--classic .nav-book-toc-folder-toggle-spacer {
  box-sizing: border-box;
  width: var(--nav-toc-win-toggle-slot);
  height: var(--nav-toc-win-toggle-w);
  flex: 0 0 var(--nav-toc-win-toggle-slot);
}

.node-navigation-hub-rail-slot-tree .nav-book-toc-tree--classic .nav-book-toc-folder-toggle--classic {
  box-sizing: border-box;
  width: var(--nav-toc-win-toggle-w);
  height: var(--nav-toc-win-toggle-w);
  min-width: var(--nav-toc-win-toggle-w);
  flex: 0 0 var(--nav-toc-win-toggle-w);
  margin: 0 var(--nav-toc-win-toggle-gap) 0 0;
  padding: 0;
  border: 1px solid var(--nav-toc-win-line);
  border-radius: 0;
  background: #ffffff;
  color: #000000;
  font-family: Tahoma, "Segoe UI", sans-serif;
  font-size: 9px;
  font-weight: 700;
  line-height: 1;
  display: inline-flex;
  align-items: center;
  justify-content: center;
}

.node-navigation-hub-rail-slot-tree .nav-book-toc-tree--classic .nav-book-toc-folder-toggle--classic:hover:not(:disabled),
.node-navigation-hub-rail-slot-tree .nav-book-toc-tree--classic .nav-book-toc-folder-toggle--classic:focus-visible {
  background: #ffffff;
  color: #000000;
  border-color: var(--nav-toc-win-line);
  outline: none;
}

.node-navigation-hub-rail-slot-tree .nav-book-toc-tree--classic .nav-book-toc-folder-toggle--classic:disabled {
  opacity: 0.35;
  border-color: #c0c0c0;
}

.node-navigation-hub-rail-slot-tree .nav-book-toc-tree--classic .nav-book-toc-folder-label {
  display: inline-flex;
  align-items: center;
  gap: 4px;
  min-width: 0;
  flex: 1 1 auto;
  overflow: hidden;
  margin: 0;
  padding: 0;
  border: 0;
  background: transparent;
  font-size: var(--nav-toc-win-font);
  font-weight: 400;
  line-height: 1.25;
  letter-spacing: 0;
  text-transform: none;
  color: var(--nav-toc-win-text);
  text-align: left;
}

.node-navigation-hub-rail-slot-tree .nav-book-toc-tree--classic .nav-book-toc-folder--root > .nav-book-toc-folder-head .nav-book-toc-folder-label {
  font-weight: 700;
}

.node-navigation-hub-rail-slot-tree .nav-book-toc-tree--classic .nav-book-toc-folder-text {
  min-width: 0;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.node-navigation-hub-rail-slot-tree .nav-book-toc-tree--classic .nav-book-toc-status,
.node-navigation-hub-rail-slot-tree .nav-book-toc-tree--classic .nav-book-toc-link > .nav-book-toc-status,
.node-navigation-hub-rail-slot-tree .nav-book-toc-tree--classic .nav-book-toc-folder-label > .nav-book-toc-status {
  flex-shrink: 0;
  margin-right: 2px;
  align-self: center;
}

.node-navigation-hub-rail-slot-tree .nav-book-toc-tree--classic .nav-book-toc-id-badge {
  margin-right: 3px;
  align-self: center;
}

.node-navigation-hub-rail-slot-tree .nav-book-toc-tree--classic .nav-book-toc-folder-icon {
  width: 14px;
  height: 14px;
}

.node-navigation-hub-rail-slot-tree .nav-book-toc-tree--classic .nav-book-toc-folder-count {
  flex: 0 0 auto;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-width: 18px;
  height: 18px;
  margin: 0;
  padding: 0 5px;
  border: 1px solid #c0c0c0;
  border-radius: 999px;
  background: #ffffff;
  color: var(--nav-toc-win-muted);
  font-size: 10px;
  font-weight: 700;
  line-height: 1;
  font-variant-numeric: tabular-nums;
  box-sizing: border-box;
}

.node-navigation-hub-rail-slot-tree .nav-book-toc-tree--classic .nav-book-toc-folder-count.is-expanded-visible {
  background: #f1f5f9;
  border-color: #cbd5e1;
  color: #475569;
  font-weight: 700;
}

.node-navigation-hub-rail-slot-tree .nav-book-toc-tree--classic .nav-book-toc-folder-leaders {
  display: inline-flex;
  align-items: center;
  flex: 1 1 auto;
  flex-shrink: 0;
  min-width: max-content;
  margin: 0 0 0 4px;
  gap: 4px;
  overflow: visible;
}

.node-navigation-hub-rail-slot-tree .nav-book-toc-tree--classic .nav-book-toc-folder-leaders::before {
  flex: 1 1 auto;
  min-width: 4px;
}

.node-navigation-hub-rail-slot-tree .nav-book-toc-tree--classic .nav-book-toc-folder-create-btn {
  flex: 0 0 auto;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 18px;
  height: 18px;
  margin: 0;
  padding: 0;
  border: 1px solid #c0c0c0;
  border-radius: 999px;
  background: #ffffff;
  color: #475569;
  font-size: 12px;
  font-weight: 700;
  line-height: 1;
  cursor: pointer;
  box-sizing: border-box;
}

.node-navigation-hub-rail-slot-tree .nav-book-toc-tree--classic .nav-book-toc-folder-create-btn:hover,
.node-navigation-hub-rail-slot-tree .nav-book-toc-tree--classic .nav-book-toc-folder-create-btn:focus-visible {
  border-color: #94a3b8;
  background: #eff6ff;
  color: #1d4ed8;
  outline: none;
}

.node-navigation-hub-rail-slot-tree .nav-book-toc-tree--classic .nav-book-toc-folder-head:has(.nav-book-toc-folder-label.is-current) .nav-book-toc-folder-create-btn {
  border-color: rgba(255, 255, 255, 0.45);
  background: rgba(255, 255, 255, 0.16);
  color: inherit;
}

.node-navigation-hub-rail-slot-tree .nav-book-toc-tree--classic .nav-book-toc-folder-head:has(.nav-book-toc-folder-label.is-current) .nav-book-toc-folder-create-btn:hover,
.node-navigation-hub-rail-slot-tree .nav-book-toc-tree--classic .nav-book-toc-folder-head:has(.nav-book-toc-folder-label.is-current) .nav-book-toc-folder-create-btn:focus-visible {
  background: rgba(255, 255, 255, 0.28);
  color: inherit;
}

.node-navigation-hub-rail-slot-tree .nav-book-toc-tree--classic .nav-book-toc-folder-leaders.has-nav-book-toc-folder-create-btn .nav-book-toc-folder-count {
  margin-right: 0;
}

#navigation-hub-rail-folder-create-popover {
  position: fixed;
  z-index: 12050;
  min-width: 168px;
}

.node-navigation-hub-rail-slot-tree .nav-book-toc-tree--classic .nav-book-toc-folder > .nav-book-toc-list {
  margin: 0;
  padding: 0 0 0 var(--nav-toc-win-indent);
  border-left: 0;
  overflow: visible;
}

.node-navigation-hub-rail-slot-tree .nav-book-toc-tree--classic .nav-book-toc-tree-branch.nav-book-toc-folder > .nav-book-toc-folder-head,
.node-navigation-hub-rail-slot-tree .nav-book-toc-tree--classic .nav-book-toc-tree-branch.nav-book-toc-entry > .nav-book-toc-link {
  position: relative;
  z-index: 1;
}

.node-navigation-hub-rail-slot-tree .nav-book-toc-tree--classic .nav-book-toc-tree-branch.nav-book-toc-folder > .nav-book-toc-folder-head::before,
.node-navigation-hub-rail-slot-tree .nav-book-toc-tree--classic .nav-book-toc-tree-branch.nav-book-toc-entry > .nav-book-toc-link::before {
  content: "";
  position: absolute;
  left: var(--nav-toc-win-branch-x);
  top: 0;
  bottom: 0;
  border-left: 1px dotted var(--nav-toc-win-line);
  pointer-events: none;
  z-index: 0;
}

.node-navigation-hub-rail-slot-tree .nav-book-toc-tree--classic .nav-book-toc-tree-branch-last.nav-book-toc-folder > .nav-book-toc-folder-head::before,
.node-navigation-hub-rail-slot-tree .nav-book-toc-tree--classic .nav-book-toc-tree-branch-last.nav-book-toc-entry > .nav-book-toc-link::before {
  bottom: 50%;
}

.node-navigation-hub-rail-slot-tree .nav-book-toc-tree--classic .nav-book-toc-tree-branch.nav-book-toc-folder > .nav-book-toc-folder-head::after,
.node-navigation-hub-rail-slot-tree .nav-book-toc-tree--classic .nav-book-toc-tree-branch.nav-book-toc-entry > .nav-book-toc-link::after {
  content: "";
  position: absolute;
  left: var(--nav-toc-win-branch-x);
  top: 50%;
  width: var(--nav-toc-win-branch-w);
  border-top: 1px dotted var(--nav-toc-win-line);
  pointer-events: none;
  z-index: 0;
}

.node-navigation-hub-rail-slot-tree .nav-book-toc-tree--classic .nav-book-toc-entry {
  margin: 0;
  position: relative;
  overflow: visible;
}

.node-navigation-hub-rail-slot-tree .nav-book-toc-tree--classic .nav-book-toc-tree-branch.nav-book-toc-entry > .nav-book-toc-link {
  padding-left: calc(var(--nav-toc-win-toggle-slot) + var(--nav-toc-win-label-pad-left));
}

.node-navigation-hub-rail-slot-tree .nav-book-toc-tree--classic .nav-book-toc-link {
  position: relative;
  z-index: 1;
  display: flex;
  align-items: center;
  gap: 4px;
  width: 100%;
  min-height: var(--nav-toc-win-row-h);
  margin: 0;
  padding: 1px 4px 1px var(--nav-toc-win-label-pad-left);
  border: 0;
  border-radius: 0;
  background: transparent;
  font-size: var(--nav-toc-win-font);
  line-height: 1.25;
  color: var(--nav-toc-win-text);
  box-sizing: border-box;
  overflow: visible;
  cursor: pointer;
  pointer-events: auto;
}

.node-navigation-hub-rail-slot-tree .nav-book-toc-tree--classic .nav-book-toc-link-text,
.node-navigation-hub-rail-slot-tree .nav-book-toc-tree--classic .nav-book-toc-folder-label {
  pointer-events: auto;
}

.node-navigation-hub-rail-slot-tree .nav-book-toc-tree--classic .nav-book-toc-link-text {
  display: inline-flex;
  align-items: center;
  gap: 4px;
  min-width: 0;
  flex: 0 1 auto;
  justify-content: flex-start;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.node-navigation-hub-rail-slot-tree .nav-book-toc-tree--classic .nav-book-toc-link-leading,
.node-navigation-hub-rail-slot-tree .nav-book-toc-tree--classic .nav-book-toc-link-preview {
  width: 16px;
  height: 16px;
  flex: 0 0 16px;
  border-radius: 2px;
}

.node-navigation-hub-rail-slot-tree .nav-book-toc-tree--classic .nav-book-toc-link-preview-img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}

.node-navigation-hub-rail-slot-tree .nav-book-toc-tree--classic .nav-book-toc-leaders {
  display: flex;
  align-items: center;
  flex: 1 1 auto;
  flex-shrink: 0;
  min-width: max-content;
  margin: 0 0 0 4px;
  height: auto;
  background: none;
  overflow: visible;
  gap: 4px;
}

.node-navigation-hub-rail-slot-tree .nav-book-toc-tree--classic .nav-book-toc-leaders::before {
  content: "";
  flex: 1 1 auto;
  min-width: 8px;
  height: 0;
  border-bottom: 1px dotted var(--nav-toc-win-line);
}

.node-navigation-hub-rail-slot-tree .nav-book-toc-tree--classic .nav-book-toc-leaders.has-nav-book-toc-attachments-badge::before,
.node-navigation-hub-rail-slot-tree .nav-book-toc-tree--classic .nav-book-toc-leaders.has-nav-book-toc-materials-badge::before,
.node-navigation-hub-rail-slot-tree .nav-book-toc-tree--classic .nav-book-toc-leaders.has-nav-book-toc-viz-maps-badge::before,
.node-navigation-hub-rail-slot-tree .nav-book-toc-tree--classic .nav-book-toc-leaders.has-nav-book-toc-unread-badge::before,
.node-navigation-hub-rail-slot-tree .nav-book-toc-tree--classic .nav-book-toc-leaders.has-nav-book-toc-link-indicators::before,
.node-navigation-hub-rail-slot-tree .nav-book-toc-tree--classic .nav-book-toc-folder-leaders.has-nav-book-toc-folder-count-badge::before {
  margin-right: 4px;
}

.node-navigation-hub-rail-slot-tree .nav-book-toc-tree--classic .nav-book-toc-leaders:not(.has-nav-book-toc-attachments-badge):not(.has-nav-book-toc-materials-badge):not(.has-nav-book-toc-viz-maps-badge):not(.has-nav-book-toc-unread-badge):not(.has-nav-book-toc-link-indicators):not(.has-nav-book-toc-folder-count-badge)::before {
  margin-right: 0;
}

.node-navigation-hub-rail-slot-tree .nav-book-toc-tree--classic .nav-book-toc-leaders[aria-hidden="true"]::before {
  content: "";
}

.node-navigation-hub-rail-slot-tree .nav-book-toc-tree--classic .nav-book-toc-folder-head:hover,
.node-navigation-hub-rail-slot-tree .nav-book-toc-tree--classic .nav-book-toc-link:hover,
.node-navigation-hub-rail-slot-tree .nav-book-toc-tree--classic .nav-book-toc-folder-head:focus-within,
.node-navigation-hub-rail-slot-tree .nav-book-toc-tree--classic .nav-book-toc-link:focus-visible {
  background: var(--nav-toc-win-hover);
  color: var(--nav-toc-win-text);
}

.node-navigation-hub-rail-slot-tree .nav-book-toc-tree--classic .nav-book-toc-folder-label.is-current,
.node-navigation-hub-rail-slot-tree .nav-book-toc-tree--classic .nav-book-toc-link.is-current {
  background: var(--nav-toc-win-active-bg);
  color: var(--nav-toc-win-active-text);
  font-weight: 400;
  border-radius: 0;
}

.node-navigation-hub-rail-slot-tree .nav-book-toc-tree--classic .nav-book-toc-folder-head:has(.nav-book-toc-folder-label.is-current) {
  background: var(--nav-toc-win-active-bg);
  color: var(--nav-toc-win-active-text);
}

.node-navigation-hub-rail-slot-tree .nav-book-toc-tree--classic .nav-book-toc-folder-head:has(.nav-book-toc-folder-label.is-current) .nav-book-toc-folder-label {
  background: transparent;
  color: inherit;
}

.node-navigation-hub-rail-slot-tree .nav-book-toc-tree--classic .nav-book-toc-folder-head:has(.nav-book-toc-folder-label.is-current) .nav-book-toc-folder-count {
  border-color: rgba(255, 255, 255, 0.45);
  background: rgba(255, 255, 255, 0.16);
  color: inherit;
  opacity: 1;
}

.node-navigation-hub-rail-slot-tree .nav-book-toc-tree--classic .nav-book-toc-folder-head:has(.nav-book-toc-folder-label.is-current) .nav-book-toc-folder-leaders::before,
.node-navigation-hub-rail-slot-tree .nav-book-toc-tree--classic .nav-book-toc-link.is-current .nav-book-toc-leaders::before {
  border-bottom-color: rgba(255, 255, 255, 0.55);
}

.node-navigation-hub-rail-slot-tree .nav-book-toc-tree--classic .nav-book-toc-folder-label.is-current .nav-book-toc-folder-text,
.node-navigation-hub-rail-slot-tree .nav-book-toc-tree--classic .nav-book-toc-link.is-current .nav-book-toc-link-text {
  color: inherit;
}

.node-navigation-hub-rail-slot-tree .nav-book-toc-tree--classic .nav-book-toc-folder--unregistered .nav-book-toc-folder-label {
  color: var(--nav-toc-win-muted);
  font-weight: 400;
}

.node-navigation-hub-rail-slot-tree .nav-book-toc-tree--classic .nav-book-toc-folder--unregistered > .nav-book-toc-folder-head {
  border: 0;
  background: transparent;
}

.node-navigation-hub-rail-slot-body:has(.nav-book-toc-tree--classic) {
  padding: 0 4px 6px;
  overflow: visible;
}

.node-navigation-hub-rail-slot-tree .nav-book-toc-tree--classic,
.node-navigation-hub-rail-slot-tree .nav-book-toc-tree--classic .nav-book-toc-list,
.node-navigation-hub-rail-slot-tree .nav-book-toc-tree--classic .nav-book-toc-folder,
.node-navigation-hub-rail-slot-tree .nav-book-toc-tree--classic .nav-book-toc-entry {
  overflow: visible;
}

.header-tool-btn--companion {
  border-color: #c4b5fd;
  background: linear-gradient(180deg, #faf5ff 0%, #f3e8ff 100%);
  color: #5b21b6;
  padding-inline: 8px;
}

.header-tool-btn--companion:hover {
  border-color: #a78bfa;
  background: #ede9fe;
  color: #4c1d95;
}

.header-tool-btn-icon {
  display: block;
  width: 20px;
  height: 20px;
}
.external-graph-glow.repositories.is-satellite-root { fill: rgba(34, 197, 94, 0.42); }
.external-graph-glow.iblock.is-satellite-root { fill: rgba(167, 139, 250, 0.46); }
.external-graph-glow.media-libraries.is-satellite-root { fill: rgba(244, 114, 182, 0.42); }
.external-graph-glow.channels.is-satellite-root { fill: rgba(56, 189, 248, 0.42); }
.external-graph-dot.repositories.is-satellite-root { fill: #15803d; stroke: rgba(187, 247, 208, 0.85); stroke-width: 1.6; }
.external-graph-dot.iblock.is-satellite-root { fill: #6d28d9; stroke: rgba(221, 214, 254, 0.85); stroke-width: 1.6; }
.external-graph-dot.media-libraries.is-satellite-root { fill: #be185d; stroke: rgba(251, 207, 232, 0.85); stroke-width: 1.6; }
.external-graph-dot.channels.is-satellite-root { fill: #0369a1; stroke: rgba(186, 230, 253, 0.85); stroke-width: 1.6; }
.external-graph-node.has-glyph .external-graph-dot { fill: rgba(15, 23, 42, 0.72); stroke-width: 1.35; }
.external-graph-node.has-glyph .external-graph-dot.repositories { stroke: rgba(74, 222, 128, 0.72); }
.external-graph-node.has-glyph .external-graph-dot.iblock { stroke: rgba(196, 181, 253, 0.78); }
.external-graph-node.has-glyph .external-graph-dot.media-libraries { stroke: rgba(249, 168, 212, 0.78); }
.external-graph-node.has-glyph .external-graph-dot.channels { stroke: rgba(125, 211, 252, 0.78); }
.external-graph-glyph { fill: #fff; font-size: 11px; font-family: "Apple Color Emoji", "Segoe UI Emoji", "Noto Color Emoji", sans-serif; pointer-events: none; user-select: none; }
.external-graph-glyph.is-satellite-root { font-size: 15px; }
.external-graph-label-title { fill: rgba(255, 255, 255, 0.88); font-weight: 650; font-size: 12px; }
.external-graph-label-sub { fill: rgba(255, 255, 255, 0.48); font-size: 9px; letter-spacing: 0.02em; }
.external-graph-node.hovered .external-graph-label-title, .external-graph-node.active .external-graph-label-title, .external-graph-node.highlighted .external-graph-label-title { fill: #fff; }
.external-graph-node.hovered .external-graph-label-sub, .external-graph-node.active .external-graph-label-sub, .external-graph-node.highlighted .external-graph-label-sub { fill: rgba(255, 255, 255, 0.72); }

.modal-card.content-search-advanced-modal-card {
  width: min(860px, calc(100vw - 32px));
  max-height: min(86vh, 760px);
  display: flex;
  flex-direction: column;
  gap: 14px;
  padding: 18px 20px 16px;
  box-shadow: 0 24px 48px rgba(15, 23, 42, 0.18);
}

.app-floating-hint {
  position: fixed;
  z-index: 10050;
  max-width: min(320px, calc(100vw - 16px));
  padding: 8px 10px;
  border-radius: 8px;
  background: rgba(15, 23, 42, 0.96);
  border: 1px solid rgba(148, 163, 184, 0.28);
  color: #f8fafc;
  font-size: 12px;
  line-height: 1.45;
  pointer-events: none;
  box-shadow: 0 10px 28px rgba(15, 23, 42, 0.28);
}

.app-floating-hint.hidden {
  display: none;
}

/* Privacy mode — заглушка маскировки чувствительных данных */
.is-privacy-mode [data-sensitive],
.is-privacy-mode input[type="password"],
.is-privacy-mode .props-form-value--secret,
.is-privacy-mode .props-form-value--password,
.is-privacy-mode .app-lock-input[type="password"] {
  filter: blur(6px);
  -webkit-user-select: none;
  user-select: none;
  pointer-events: none;
}

.is-privacy-mode [data-sensitive]::selection,
.is-privacy-mode input[type="password"]::selection,
.is-privacy-mode .props-form-value--secret::selection,
.is-privacy-mode .props-form-value--password::selection {
  background: transparent;
}

.context-buffer-band--global {
  flex: 0 0 auto;
  align-self: stretch;
  z-index: 45;
  position: relative;
  margin: 0;
  padding: 0.45rem 16px 0.4rem;
  border: none;
  border-top: 1px solid var(--border);
  border-radius: 0;
  box-sizing: border-box;
  background: linear-gradient(180deg, rgba(248, 250, 252, 0.98) 0%, rgba(241, 245, 249, 0.99) 100%);
  box-shadow:
    inset 0 1px 0 rgba(255, 255, 255, 0.85),
    0 -1px 0 rgba(99, 102, 241, 0.12);
  backdrop-filter: blur(6px);
  min-width: 0;
  pointer-events: auto;
}

.app.not-found-view .context-buffer-band--global,
.app.not-found-view .file-hub-band {
  display: none !important;
}

.context-buffer-band--global.is-disabled {
  opacity: 0.48;
  pointer-events: none;
  filter: grayscale(0.3);
  user-select: none;
}

.context-buffer-band--global.is-disabled .context-buffer-toggle,
.context-buffer-band--global.is-disabled .context-buffer-action-btn {
  cursor: not-allowed;
}

.context-buffer-band:not(.context-buffer-band--global) {
  flex-shrink: 0;
  margin-top: 0.5rem;
  padding: 0.5rem 0.65rem 0.45rem;
  border: 1px dashed rgba(99, 102, 241, 0.45);
  border-radius: 0.5rem;
  background: rgba(238, 242, 255, 0.65);
}

.context-buffer-dropzone {
  position: absolute;
  inset: 0;
  z-index: 6;
  display: none;
  align-items: center;
  justify-content: center;
  padding: 12px 16px;
  border: 2px dashed transparent;
  border-radius: 0;
  background: rgba(238, 242, 255, 0.55);
  color: #4338ca;
  font-size: 0.8125rem;
  font-weight: 600;
  text-align: center;
  pointer-events: none;
  letter-spacing: 0.01em;
}

.context-buffer-band.is-drag-over .context-buffer-dropzone {
  display: flex;
}

.context-buffer-dropzone.is-active {
  border-color: #6366f1;
  background: rgba(224, 231, 255, 0.94);
  color: #312e81;
  box-shadow:
    inset 0 0 0 1px rgba(99, 102, 241, 0.4),
    0 0 0 1px rgba(99, 102, 241, 0.15);
}

.context-buffer-band--global.is-drag-over {
  border-top-color: rgba(79, 70, 229, 0.55);
}

.context-buffer-band:not(.context-buffer-band--global).is-drag-over {
  border-color: rgba(79, 70, 229, 0.75);
  background: rgba(224, 231, 255, 0.95);
}

.context-buffer-band.is-collapsed .context-buffer-body {
  display: none;
}

.context-buffer-band.is-collapsed .context-buffer-head {
  margin-bottom: 0;
}

.context-buffer-band--global.is-collapsed {
  padding-top: 0.3rem;
  padding-bottom: 0.28rem;
}

.context-buffer-band:not(.is-collapsed) .context-buffer-chevron {
  transform: rotate(-135deg);
  margin-top: 4px;
}

.context-buffer-band.is-collapsed .context-buffer-chevron {
  transform: rotate(-45deg);
  margin-top: -1px;
}

.context-buffer-head {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 0.5rem;
  margin-bottom: 0.35rem;
}

.context-buffer-toggle {
  display: flex;
  align-items: center;
  gap: 0.35rem;
  min-width: 0;
  flex: 1 1 auto;
  margin: 0;
  padding: 0.1rem 0.2rem 0.1rem 0;
  border: 0;
  border-radius: 0.25rem;
  background: transparent;
  cursor: pointer;
  text-align: left;
  font: inherit;
  color: inherit;
}

.context-buffer-toggle:hover,
.context-buffer-toggle:focus-visible {
  background: rgba(99, 102, 241, 0.08);
  outline: none;
}

.context-buffer-chevron {
  border-color: rgba(67, 56, 202, 0.75);
}

.context-buffer-title {
  font-size: 0.75rem;
  font-weight: 700;
  color: #312e81;
}

.context-buffer-count {
  font-size: 0.625rem;
  font-weight: 700;
  line-height: 1;
  padding: 0.15rem 0.35rem;
  border-radius: 999px;
  background: rgba(99, 102, 241, 0.15);
  color: #4338ca;
}

.context-buffer-actions {
  display: flex;
  flex-wrap: wrap;
  gap: 0.25rem;
  justify-content: flex-end;
}

.context-buffer-action-btn {
  font: inherit;
  font-size: 0.625rem;
  font-weight: 600;
  padding: 0.2rem 0.45rem;
  border-radius: 0.25rem;
  border: 1px solid rgba(99, 102, 241, 0.4);
  background: #fff;
  color: #4338ca;
  cursor: pointer;
}

.context-buffer-action-btn--ghost {
  background: transparent;
}

.context-buffer-action-btn:hover,
.context-buffer-action-btn:focus-visible {
  background: #eef2ff;
  outline: none;
}

.context-buffer-list {
  display: flex;
  flex-wrap: wrap;
  gap: 0.35rem;
  min-height: 1.75rem;
  align-items: flex-start;
}

.context-buffer-empty {
  margin: 0;
  font-size: 0.625rem;
  color: #64748b;
  line-height: 1.35;
}

.context-buffer-chip {
  display: flex;
  align-items: center;
  gap: 0.3rem;
  max-width: 100%;
  padding: 0.2rem 0.35rem 0.2rem 0.3rem;
  border-radius: 0.35rem;
  border: 1px solid rgba(148, 163, 184, 0.45);
  background: rgba(255, 255, 255, 0.92);
}

.context-buffer-chip-icon {
  flex-shrink: 0;
  font-size: 0.75rem;
  line-height: 1;
}

.context-buffer-chip-body {
  display: flex;
  flex-direction: column;
  min-width: 0;
  max-width: 14rem;
}

.context-buffer-chip-title {
  font-size: 0.625rem;
  font-weight: 600;
  color: #1e293b;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.context-buffer-chip-ref {
  font-size: 0.5625rem;
  color: #64748b;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.context-buffer-chip-remove {
  flex-shrink: 0;
  font: inherit;
  font-size: 0.875rem;
  line-height: 1;
  width: 1.125rem;
  height: 1.125rem;
  padding: 0;
  border: 0;
  border-radius: 0.25rem;
  background: transparent;
  color: #94a3b8;
  cursor: pointer;
}

.context-buffer-chip-remove:hover,
.context-buffer-chip-remove:focus-visible {
  color: #dc2626;
  background: rgba(254, 226, 226, 0.8);
  outline: none;
}

.context-buffer-caption {
  margin: 0.35rem 0 0;
  font-size: 0.5625rem;
  color: #94a3b8;
  line-height: 1.3;
}

.context-buffer-caption code {
  font-size: inherit;
}

.file-hub-band.context-buffer-band--global {
  border-top-color: rgba(16, 185, 129, 0.28);
  background: linear-gradient(
    180deg,
    rgba(236, 253, 245, 0.97) 0%,
    rgba(209, 250, 229, 0.42) 100%
  );
  box-shadow:
    inset 0 1px 0 rgba(255, 255, 255, 0.9),
    0 -1px 0 rgba(16, 185, 129, 0.22);
}

.file-hub-band .context-buffer-title,
.file-hub-band .file-hub-band-brand {
  color: #065f46;
}

.file-hub-band-title {
  display: inline-flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 0.35rem;
  min-width: 0;
  line-height: 1.25;
}

.file-hub-band-brand {
  font-size: inherit;
  font-weight: inherit;
}

.file-hub-band-todo-mark {
  font-size: 0.625rem;
  font-weight: 800;
  letter-spacing: 0.06em;
  text-transform: uppercase;
  vertical-align: baseline;
}

.file-hub-band .context-buffer-count {
  background: rgba(16, 185, 129, 0.2);
  color: #047857;
}

.file-hub-band .context-buffer-toggle:hover,
.file-hub-band .context-buffer-toggle:focus-visible {
  color: #047857;
}

.file-hub-band .context-buffer-action-btn {
  border-color: rgba(16, 185, 129, 0.45);
  color: #047857;
}

.file-hub-band .context-buffer-caption {
  color: #5f9a83;
}

.file-hub-band .context-buffer-action-btn:disabled {
  opacity: 0.45;
  cursor: not-allowed;
  pointer-events: none;
}
