:root {
  --playbook-red: #EB1700;
  --playbook-red-deep: #A31500;
  --playbook-ink: #0B0D10;
  --playbook-body: #303742;
  --playbook-muted: #667085;
  --playbook-line: #E1E5EA;
  --playbook-soft: #F5F6F8;
  --playbook-pale: #FFF3F1;
  --playbook-surface: #FFFFFF;
  --playbook-table-head: #111827;
  --playbook-table-stripe: #FAFBFC;
  --playbook-table-hover: #FFF6F4;
  --playbook-code-bg: #0F172A;
  --playbook-code-text: #F8FAFC;
  --playbook-shadow: 0 16px 34px rgba(15, 23, 42, 0.08);
  --playbook-global-offset: 54px;
  --playbook-local-offset: 46px;
  --playbook-anchor-offset: 64px;
  --playbook-search-panel-top: calc(var(--playbook-global-offset) + 12px);
}

html {
  scroll-padding-top: var(--playbook-anchor-offset) !important;
}

body {
  background: var(--playbook-soft);
  color: var(--playbook-body);
}

.playbook-hero {
  position: relative;
  overflow: hidden;
  color: #FFFFFF;
  background:
    linear-gradient(138deg, #0B0D10 0%, #141922 58%, #2A0F0A 100%) !important;
  border-bottom: 7px solid var(--playbook-red) !important;
  padding: 56px 56px 48px !important;
}

.playbook-hero::after {
  content: "";
  position: absolute;
  right: -120px;
  top: -140px;
  width: 540px;
  height: 540px;
  background:
    radial-gradient(circle at 34% 34%, rgba(235, 23, 0, 0.48), rgba(235, 23, 0, 0.12) 34%, transparent 64%);
  pointer-events: none;
}

.playbook-hero__inner {
  position: relative;
  z-index: 1;
  max-width: 1180px;
  margin: 0 auto;
}

.playbook-hero .playbook-hero__eyebrow {
  margin: 0 0 12px;
  color: #FFB7AD !important;
  font-size: 11px !important;
  font-weight: 950 !important;
  letter-spacing: 0.16em !important;
  text-transform: uppercase;
}

.playbook-hero .playbook-hero__title {
  margin: 0 0 10px;
  max-width: 1120px;
  color: #FFFFFF !important;
  font-size: clamp(42px, 5vw, 68px) !important;
  line-height: 0.98 !important;
  letter-spacing: 0 !important;
  font-weight: 940 !important;
}

.playbook-hero .playbook-hero__lead {
  margin: 0 0 10px;
  max-width: 1040px;
  color: #FFFFFF !important;
  font-size: clamp(24px, 2.6vw, 30px) !important;
  line-height: 1.16 !important;
  font-weight: 920 !important;
  letter-spacing: 0 !important;
}

.playbook-hero .playbook-hero__copy {
  margin: 0;
  max-width: 1040px;
  color: #E5EAF0 !important;
  font-size: 18px !important;
  line-height: 1.45 !important;
}

.playbook-hero .playbook-chip-row {
  display: flex;
  flex-wrap: wrap;
  gap: 10px;
  margin-top: 22px;
}

.playbook-hero .playbook-chip {
  display: inline-flex;
  align-items: center;
  min-height: 34px;
  max-width: 100%;
  padding: 7px 11px;
  border-radius: 999px;
  border: 1px solid rgba(255, 255, 255, 0.22) !important;
  background: rgba(255, 255, 255, 0.08) !important;
  color: #FFFFFF !important;
  font-size: 12px !important;
  font-weight: 860 !important;
  line-height: 1.25;
  text-decoration: none !important;
  overflow-wrap: anywhere;
}

.playbook-hero--compact {
  padding-top: 46px !important;
  padding-bottom: 40px !important;
}

.playbook-hero--compact .playbook-hero__title {
  font-size: clamp(36px, 4.4vw, 56px) !important;
}

.playbook-hero--compact .playbook-hero__copy {
  font-size: 17px !important;
}

.gcf-suite-nav {
  position: sticky;
  top: 0;
  z-index: 320;
  display: flex;
  align-items: center;
  gap: 8px;
  flex-wrap: wrap;
  padding: 9px 16px;
  min-height: var(--playbook-global-offset);
  background: rgba(250, 251, 252, 0.96) !important;
  color: var(--playbook-ink) !important;
  border-bottom: 1px solid #D7DDE4 !important;
  box-shadow: 0 12px 24px rgba(15, 23, 42, 0.08) !important;
  backdrop-filter: blur(14px);
  -webkit-backdrop-filter: blur(14px);
}

.gcf-suite-nav .gcf-suite-title {
  font-size: 11px !important;
  font-weight: 950 !important;
  letter-spacing: 0.13em !important;
  text-transform: uppercase;
  color: var(--playbook-red-deep) !important;
  margin-right: 2px !important;
}

.gcf-suite-nav a {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-height: 31px;
  max-width: 100%;
  padding: 6px 10px !important;
  border: 1px solid #D7DDE4 !important;
  border-radius: 999px !important;
  background: #FFFFFF !important;
  color: #364152 !important;
  font-size: 12px !important;
  font-weight: 850 !important;
  text-decoration: none !important;
  white-space: nowrap;
  text-align: center;
}

.gcf-suite-nav a:hover {
  background: var(--playbook-pale) !important;
  color: var(--playbook-red-deep) !important;
  border-color: #F3B4A6 !important;
  text-decoration: none !important;
}

.gcf-suite-nav a.playbook-home-link {
  background: var(--playbook-ink) !important;
  border-color: var(--playbook-ink) !important;
  color: #FFFFFF !important;
}

.gcf-suite-nav a.playbook-home-link:hover {
  background: #1A1F29 !important;
  border-color: #1A1F29 !important;
  color: #FFFFFF !important;
}

.gcf-suite-nav a[aria-current="page"] {
  background: var(--playbook-pale) !important;
  border-color: #F3B4A6 !important;
  color: var(--playbook-red-deep) !important;
}

.gcf-suite-nav a[aria-current="page"].playbook-home-link {
  background: #1A1F29 !important;
  border-color: #1A1F29 !important;
  color: #FFFFFF !important;
}

.playbook-local-nav.quickbar {
  position: sticky !important;
  top: var(--playbook-global-offset) !important;
  z-index: 280 !important;
  min-height: var(--playbook-local-offset);
  padding: 0 12px !important;
  gap: 0 !important;
  align-items: center !important;
  justify-content: flex-start !important;
  flex-wrap: wrap !important;
  overflow-x: visible !important;
  white-space: normal !important;
}

.playbook-local-label {
  display: inline-flex;
  align-items: center;
  padding: 0 12px;
  color: #FFB7AD;
  font-size: 11px;
  font-weight: 950;
  letter-spacing: 0.14em;
  text-transform: uppercase;
  white-space: nowrap;
}

html[data-playbook-has-local-nav="true"] {
  --playbook-anchor-offset: 112px;
  --playbook-search-panel-top: calc(var(--playbook-global-offset) + var(--playbook-local-offset) + 12px);
}

html[data-playbook-has-local-nav="true"] .sidebar,
html[data-playbook-has-local-nav="true"] .nav {
  top: calc(var(--playbook-global-offset) + var(--playbook-local-offset) + 8px) !important;
}

html[data-playbook-has-local-nav="true"] .sidebar {
  height: calc(100vh - var(--playbook-global-offset) - var(--playbook-local-offset) - 8px) !important;
}

html[data-playbook-has-local-nav="true"] .nav {
  max-height: calc(100vh - var(--playbook-global-offset) - var(--playbook-local-offset) - 8px) !important;
  height: auto !important;
}

html[data-playbook-has-local-nav="true"] .sidebar,
html[data-playbook-has-local-nav="true"] .nav {
  width: var(--playbook-side-nav-width, 312px) !important;
  min-width: var(--playbook-side-nav-width, 312px) !important;
  align-self: start;
  overflow: auto !important;
  padding: 22px 0 30px !important;
  background: #0B0D10 !important;
  background-image: none !important;
  color: #CBD5E1 !important;
  border-right: 1px solid #242A33 !important;
  box-shadow: inset -1px 0 0 rgba(255, 255, 255, 0.02);
  scrollbar-width: thin;
  scrollbar-color: #3A4351 transparent;
}

html[data-playbook-has-local-nav="true"] .playbook-side-nav-toggle {
  position: sticky;
  top: 0;
  z-index: 2;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 8px;
  width: calc(100% - 28px);
  min-height: 38px;
  margin: 0 14px 14px;
  padding: 8px 10px;
  border: 1px solid #303844;
  border-left: 4px solid var(--playbook-red);
  border-radius: 10px;
  background: #151A21;
  color: #FFFFFF;
  font: inherit;
  font-size: 12px;
  font-weight: 900;
  line-height: 1.15;
  text-align: left;
  cursor: pointer;
}

html[data-playbook-has-local-nav="true"] .playbook-side-nav-toggle:hover {
  background: #1D2430;
}

html[data-playbook-has-local-nav="true"] .playbook-side-nav-toggle:focus-visible {
  outline: 2px solid rgba(235, 23, 0, 0.72);
  outline-offset: 2px;
}

html[data-playbook-has-local-nav="true"] .playbook-side-nav-toggle-marker {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-width: 34px;
  min-height: 22px;
  border-radius: 999px;
  background: #FFFFFF;
  color: #0B0D10;
  font-size: 10px;
  letter-spacing: 0.04em;
}

html[data-playbook-side-nav-collapsed="true"] .playbook-side-nav-shell {
  display: grid !important;
  grid-template-columns: var(--playbook-side-nav-collapsed-width, 88px) minmax(0, 1fr) !important;
}

html[data-playbook-side-nav-collapsed="true"] .playbook-side-nav {
  width: var(--playbook-side-nav-collapsed-width, 88px) !important;
  min-width: var(--playbook-side-nav-collapsed-width, 88px) !important;
  padding: 12px 0 !important;
  overflow: hidden !important;
  scrollbar-width: none;
}

html[data-playbook-side-nav-collapsed="true"] .playbook-side-nav::-webkit-scrollbar {
  display: none;
}

html[data-playbook-side-nav-collapsed="true"] .playbook-side-nav > :not(.playbook-side-nav-toggle) {
  display: none !important;
}

html[data-playbook-side-nav-collapsed="true"] .playbook-side-nav-toggle {
  flex-direction: column;
  justify-content: center;
  width: calc(100% - 18px);
  min-height: 68px;
  margin: 0 9px;
  padding: 8px 6px;
  text-align: center;
}

html[data-playbook-side-nav-collapsed="true"] .playbook-side-nav-toggle-marker {
  min-width: 38px;
}

html[data-playbook-side-nav-collapsed="true"] .playbook-side-nav-toggle-text {
  font-size: 10.5px;
}

html[data-playbook-has-local-nav="true"] .sidebar::-webkit-scrollbar,
html[data-playbook-has-local-nav="true"] .nav::-webkit-scrollbar {
  width: 7px;
}

html[data-playbook-has-local-nav="true"] .sidebar::-webkit-scrollbar-thumb,
html[data-playbook-has-local-nav="true"] .nav::-webkit-scrollbar-thumb {
  background: #3A4351;
  border-radius: 999px;
}

html[data-playbook-has-local-nav="true"] .sidebar h3,
html[data-playbook-has-local-nav="true"] .nav .nav-title {
  margin: 0 !important;
  padding: 0 24px 12px !important;
  color: #8D96A4 !important;
  font-size: 10px !important;
  font-weight: 950 !important;
  letter-spacing: 0.14em !important;
  text-transform: uppercase !important;
}

html[data-playbook-has-local-nav="true"] .sidebar ol {
  list-style: none !important;
  margin: 0 !important;
  padding: 0 !important;
}

html[data-playbook-has-local-nav="true"] .sidebar li {
  margin: 0 !important;
}

html[data-playbook-has-local-nav="true"] .sidebar a,
html[data-playbook-has-local-nav="true"] .nav a {
  display: block !important;
  min-height: 0 !important;
  padding: 8px 24px 8px 22px !important;
  border: 0 !important;
  border-left: 4px solid transparent !important;
  border-radius: 0 !important;
  background: transparent !important;
  color: #AFB8C5 !important;
  font-size: 13px !important;
  font-weight: 720 !important;
  line-height: 1.28 !important;
  text-align: left !important;
  text-decoration: none !important;
  white-space: normal !important;
}

html[data-playbook-has-local-nav="true"] .nav a.lvl1 {
  color: #FFFFFF !important;
  font-weight: 900 !important;
}

html[data-playbook-has-local-nav="true"] .nav a.lvl2 {
  color: #E2E8F0 !important;
  font-weight: 850 !important;
}

html[data-playbook-has-local-nav="true"] .nav a.lvl3 {
  padding-left: 34px !important;
  color: #9AA6B6 !important;
  font-size: 12.5px !important;
  font-weight: 700 !important;
}

html[data-playbook-has-local-nav="true"] .sidebar a:hover,
html[data-playbook-has-local-nav="true"] .nav a:hover,
html[data-playbook-has-local-nav="true"] .sidebar a.active,
html[data-playbook-has-local-nav="true"] .nav a.active {
  background: rgba(255, 255, 255, 0.055) !important;
  border-left-color: var(--playbook-red) !important;
  color: #FFFFFF !important;
  padding-left: 22px !important;
  text-decoration: none !important;
}

html[data-playbook-has-local-nav="true"] .nav a.lvl3:hover,
html[data-playbook-has-local-nav="true"] .nav a.lvl3.active {
  padding-left: 34px !important;
}

html[data-playbook-has-local-nav="true"] .sidebar a:focus-visible,
html[data-playbook-has-local-nav="true"] .nav a:focus-visible {
  outline: 2px solid rgba(235, 23, 0, 0.55) !important;
  outline-offset: -2px;
  background: rgba(235, 23, 0, 0.12) !important;
  border-left-color: var(--playbook-red) !important;
  color: #FFFFFF !important;
  text-decoration: none !important;
}

.wrap,
.content,
.main {
  min-width: 0;
}

.panel,
.card,
.slide-card,
.gcf-family-panel,
.source-card,
.prompt-block,
.searchbox,
.nav-search,
.opening-frame,
.intro-card {
  border-radius: 20px !important;
  box-shadow: var(--playbook-shadow) !important;
}

.panel,
.card,
.slide-card,
.gcf-family-panel,
.prompt-block,
.nav-search,
.searchbox,
.source-card,
.intro-card {
  border-color: var(--playbook-line) !important;
}

.actions a,
.actions button,
.btn,
.copy-button,
.mini-btn,
.nav-search button,
.nav-search-controls button {
  font-weight: 900 !important;
}

.actions a,
.actions button,
.copy-button,
.mini-btn.secondary,
.nav-search button,
.nav-search-controls button,
.btn.secondary {
  background: #FFFFFF !important;
  color: var(--playbook-red-deep) !important;
  border: 1px solid #F3B4A6 !important;
  box-shadow: none !important;
}

.actions a:hover,
.actions button:hover,
.copy-button:hover,
.mini-btn:hover,
.nav-search button:hover,
.nav-search-controls button:hover,
.btn.secondary:hover {
  background: var(--playbook-pale) !important;
  color: var(--playbook-red-deep) !important;
  border-color: #E78C7D !important;
}

.btn,
.playbook-primary-action {
  background: var(--playbook-red) !important;
  border: 1px solid var(--playbook-red) !important;
  color: #FFFFFF !important;
}

.btn:hover,
.playbook-primary-action:hover {
  background: #C51600 !important;
  border-color: #C51600 !important;
  color: #FFFFFF !important;
}

.searchbox,
.nav-search {
  background: #FFFFFF !important;
}

.full-doc-search {
  display: flex !important;
  align-items: center !important;
  flex-wrap: nowrap !important;
  gap: 7px !important;
  min-width: 0;
}

.quickbar .full-doc-search,
.gcf-suite-nav .full-doc-search {
  margin-left: auto !important;
}

.quickbar .full-doc-search {
  flex: 0 1 auto;
  padding: 7px 12px !important;
  background: rgba(255, 255, 255, 0.045) !important;
  border-left: 1px solid rgba(255, 255, 255, 0.08) !important;
}

.gcf-suite-nav .full-doc-search {
  flex: 1 1 320px;
  justify-content: flex-end !important;
  padding: 6px 10px 6px 12px !important;
  background: #111821 !important;
  border: 1px solid rgba(255, 255, 255, 0.12) !important;
  border-radius: 14px !important;
  box-shadow: 0 10px 18px rgba(15, 23, 42, 0.12);
}

.full-doc-search .search-label {
  color: #FFB7AD !important;
  font-size: 10px !important;
  font-weight: 950 !important;
  letter-spacing: 0.12em !important;
  text-transform: uppercase !important;
  white-space: nowrap;
}

.full-doc-search input {
  width: 260px !important;
  min-width: 0;
  padding: 8px 10px !important;
  border-radius: 10px !important;
  border: 1px solid rgba(255, 255, 255, 0.16) !important;
  background: #06070A !important;
  color: #FFFFFF !important;
  font-size: 13px !important;
}

.full-doc-search input::placeholder {
  color: #8892A0 !important;
}

.full-doc-search input:focus {
  outline: 2px solid rgba(235, 23, 0, 0.30);
  border-color: var(--playbook-red) !important;
}

.search-action {
  border: 1px solid rgba(255, 255, 255, 0.18);
  border-radius: 10px;
  background: var(--playbook-red);
  color: #FFFFFF !important;
  padding: 8px 10px;
  font-size: 11px;
  font-weight: 950;
  cursor: pointer;
  white-space: nowrap;
}

.search-action.secondary {
  background: #2B3340;
}

.search-action:hover {
  filter: brightness(1.08);
}

.search-results-panel {
  position: fixed;
  top: var(--playbook-search-panel-top);
  right: 18px;
  width: min(640px, calc(100vw - 36px));
  max-height: 58vh;
  overflow: hidden;
  z-index: 500;
  background: rgba(255, 255, 255, 0.97);
  color: var(--playbook-body);
  border: 1px solid var(--playbook-line);
  border-top: 4px solid var(--playbook-red);
  border-radius: 14px;
  box-shadow: 0 20px 64px rgba(15, 23, 42, 0.20);
  backdrop-filter: blur(10px);
  -webkit-backdrop-filter: blur(10px);
}

.search-results-panel[hidden] {
  display: none !important;
}

.search-results-header {
  display: flex;
  justify-content: space-between;
  align-items: center;
  gap: 12px;
  padding: 12px 14px;
  background: #0B0D10;
  color: #FFFFFF;
}

.search-results-header strong {
  color: #FFFFFF !important;
  font-size: 13px;
  letter-spacing: 0.02em;
}

.search-results-header button {
  border: 1px solid rgba(255, 255, 255, 0.18);
  border-radius: 9px;
  background: #272D36;
  color: #FFFFFF;
  padding: 6px 9px;
  font-size: 12px;
  font-weight: 900;
  cursor: pointer;
}

.search-results-header button:hover {
  filter: brightness(1.08);
}

.search-results-list {
  display: grid;
  gap: 8px;
  max-height: calc(58vh - 56px);
  overflow: auto;
  padding: 8px;
  background: #F8FAFC;
}

.search-result-card {
  display: block;
  width: 100%;
  padding: 10px 12px;
  border: 1px solid #E1E5EA;
  border-left: 4px solid var(--playbook-red);
  border-radius: 11px;
  background: #FFFFFF;
  text-align: left;
  font: inherit;
  cursor: pointer;
  box-shadow: 0 5px 14px rgba(15, 23, 42, 0.045);
}

.search-result-card:hover {
  background: #FFF6F4;
  border-color: #FFD1C9;
}

.search-result-title {
  display: block;
  color: var(--playbook-ink);
  font-weight: 900;
  font-size: 12.8px;
  margin-bottom: 4px;
}

.search-result-excerpt {
  display: block;
  color: #4B5563;
  font-size: 12.8px;
  line-height: 1.38;
}

.search-result-excerpt mark {
  background: #FFE267;
  color: #111111;
  border-radius: 4px;
  padding: 0 3px;
}

.search-result-empty {
  padding: 14px;
  color: #5B6572;
  font-size: 13px;
  background: #FFFFFF;
  border-radius: 10px;
  border: 1px solid var(--playbook-line);
}

.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;
}

.searchbox input,
.nav-search input {
  border-radius: 12px !important;
  border: 1px solid #CBD5E1 !important;
  background: #FFFFFF !important;
  color: var(--playbook-ink) !important;
}

.searchbox input:focus,
.nav-search input:focus {
  outline: 2px solid rgba(235, 23, 0, 0.18);
  border-color: var(--playbook-red) !important;
}

.search-status {
  color: var(--playbook-muted) !important;
}

.nav-search .nav-search-controls {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
  margin-top: 9px;
}

.nav-search .results {
  margin-top: 10px;
  display: none;
  max-height: 280px;
}

.results button.result-item {
  width: 100%;
  border: 0;
  background: #FFFFFF;
  text-align: left;
  font: inherit;
  cursor: pointer;
}

.results,
.prompt-block,
.source-card {
  overflow: hidden;
}

mark,
mark.package-search-hit,
mark.package-search-current {
  background: #FFE0DB !important;
  color: #7C1105 !important;
  border-radius: 4px;
}

mark.package-search-current,
.highlight-current,
.search-focus {
  outline: 4px solid rgba(235, 23, 0, 0.22) !important;
  outline-offset: 5px !important;
}

@media (max-width: 980px) {
  .playbook-hero {
    padding: 42px 24px 36px !important;
  }

  .playbook-hero .playbook-hero__title {
    font-size: clamp(34px, 8vw, 48px) !important;
  }

  .playbook-hero .playbook-hero__lead {
    font-size: 22px !important;
  }

  .playbook-hero .playbook-hero__copy {
    font-size: 16px !important;
  }

  .playbook-hero .playbook-chip {
    white-space: normal;
  }

  .quickbar .full-doc-search,
  .gcf-suite-nav .full-doc-search {
    width: 100%;
    margin-left: 0 !important;
    justify-content: flex-start !important;
    flex-wrap: wrap !important;
    border-left: 0 !important;
    padding: 10px 0 12px !important;
  }

  .full-doc-search input {
    flex: 1 1 240px;
    width: auto !important;
  }

  .search-results-panel {
    top: calc(var(--playbook-global-offset) + 10px);
    right: 10px;
    left: 10px;
    width: auto;
    max-height: 64vh;
  }

  .search-results-list {
    max-height: calc(64vh - 56px);
  }
}

table {
  border-color: var(--playbook-line) !important;
}

th {
  background: #111827 !important;
  color: #FFFFFF !important;
}

pre,
.prompt-block pre {
  border-radius: 18px !important;
}

.prompt-head {
  background: #FAFBFC !important;
  border-bottom: 1px solid var(--playbook-line) !important;
}

.meta li,
.badge,
.badge-row .badge,
.diagram-tag {
  border-radius: 999px !important;
}

.footer {
  color: var(--playbook-muted) !important;
}

/* Reusable visual element baseline for issue #133. */
main a:not(.btn):not(.mini-btn):not(.copy-button):not(.search-action):not(.playbook-chip):not(.search-result-card):not(.path-card):not(.clm-ref),
article a:not(.btn):not(.mini-btn):not(.copy-button):not(.search-action):not(.playbook-chip):not(.search-result-card):not(.path-card):not(.clm-ref),
.content a:not(.btn):not(.mini-btn):not(.copy-button):not(.search-action):not(.playbook-chip):not(.search-result-card):not(.path-card):not(.clm-ref),
.main a:not(.btn):not(.mini-btn):not(.copy-button):not(.search-action):not(.playbook-chip):not(.search-result-card):not(.path-card):not(.clm-ref) {
  color: var(--playbook-red-deep) !important;
  font-weight: 820 !important;
  text-decoration-thickness: 1px;
  text-underline-offset: 3px;
}

main a:not(.btn):not(.mini-btn):not(.copy-button):not(.search-action):not(.playbook-chip):not(.search-result-card):not(.path-card):not(.clm-ref):hover,
article a:not(.btn):not(.mini-btn):not(.copy-button):not(.search-action):not(.playbook-chip):not(.search-result-card):not(.path-card):not(.clm-ref):hover,
.content a:not(.btn):not(.mini-btn):not(.copy-button):not(.search-action):not(.playbook-chip):not(.search-result-card):not(.path-card):not(.clm-ref):hover,
.main a:not(.btn):not(.mini-btn):not(.copy-button):not(.search-action):not(.playbook-chip):not(.search-result-card):not(.path-card):not(.clm-ref):hover {
  color: var(--playbook-red) !important;
  text-decoration: underline !important;
}

main table,
article table,
.content table,
.main table,
.wrap table {
  width: 100% !important;
  max-width: 100%;
  border-collapse: separate !important;
  border-spacing: 0 !important;
  margin: 22px 0 30px !important;
  border: 1px solid var(--playbook-line) !important;
  border-radius: 14px !important;
  overflow: hidden;
  background: var(--playbook-surface) !important;
  font-size: 14px;
  box-shadow: 0 8px 22px rgba(15, 23, 42, 0.04) !important;
}

main th,
article th,
.content th,
.main th,
.wrap th {
  background: var(--playbook-table-head) !important;
  color: #FFFFFF !important;
  padding: 12px 14px !important;
  border-right: 1px solid rgba(255, 255, 255, 0.16) !important;
  font-size: 12px !important;
  font-weight: 900 !important;
  letter-spacing: 0.04em !important;
  line-height: 1.3 !important;
  text-align: left !important;
  text-transform: uppercase !important;
}

main th:last-child,
article th:last-child,
.content th:last-child,
.main th:last-child,
.wrap th:last-child {
  border-right: 0 !important;
}

main td,
article td,
.content td,
.main td,
.wrap td {
  padding: 11px 14px !important;
  border-top: 1px solid var(--playbook-line) !important;
  border-right: 1px solid var(--playbook-line) !important;
  color: var(--playbook-body) !important;
  line-height: 1.5 !important;
  vertical-align: top !important;
}

main td:last-child,
article td:last-child,
.content td:last-child,
.main td:last-child,
.wrap td:last-child {
  border-right: 0 !important;
}

main tr:nth-child(even) td,
article tr:nth-child(even) td,
.content tr:nth-child(even) td,
.main tr:nth-child(even) td,
.wrap tr:nth-child(even) td {
  background: var(--playbook-table-stripe) !important;
}

main tr:hover td,
article tr:hover td,
.content tr:hover td,
.main tr:hover td,
.wrap tr:hover td {
  background: var(--playbook-table-hover) !important;
}

main code,
article code,
.content code,
.main code,
.wrap code,
.portable-export-banner code {
  border: 1px solid #E2E8F0 !important;
  border-radius: 6px !important;
  background: #F1F5F9 !important;
  color: #8A1407 !important;
  padding: 0.08rem 0.28rem !important;
  font-family: "Cascadia Code", "Cascadia Mono", "SFMono-Regular", Consolas, monospace !important;
  font-size: 0.92em;
}

main pre,
article pre,
.content pre,
.main pre,
.wrap pre,
.prompt-block pre,
.sourceCode pre {
  max-width: 100%;
  margin: 18px 0 24px !important;
  padding: 17px 18px !important;
  overflow: auto !important;
  border: 1px solid #243041 !important;
  border-left: 5px solid var(--playbook-red) !important;
  border-radius: 14px !important;
  background: var(--playbook-code-bg) !important;
  color: var(--playbook-code-text) !important;
  line-height: 1.48 !important;
  box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.05) !important;
}

main pre code,
article pre code,
.content pre code,
.main pre code,
.wrap pre code,
.prompt-block pre code,
.sourceCode pre code {
  border: 0 !important;
  background: transparent !important;
  color: inherit !important;
  padding: 0 !important;
}

blockquote,
.callout,
.section-brief,
.claim-help,
.not-gates,
.opening-note,
.opening-bullets,
.portable-export-banner__note {
  border-left: 5px solid var(--playbook-red) !important;
  box-shadow: 0 8px 22px rgba(15, 23, 42, 0.05) !important;
}

.panel,
.card,
.path-card,
.decision-card,
.primitive-card,
.map-lane,
.loop-step,
.lead-card,
.commitment-card,
.gcf-family-card,
.source-card,
.opening-frame,
.intro-card,
.portable-export-banner__cell {
  border-color: var(--playbook-line) !important;
}

.meta,
.metadata,
.artifact-meta,
.package-meta,
.portable-export-banner__cell,
.portable-export-banner__note {
  background: var(--playbook-surface) !important;
  color: var(--playbook-body) !important;
}

.history-panel {
  border-radius: 18px !important;
  border-top: 1px solid #27303B !important;
  border-right: 1px solid #27303B !important;
  border-left: 1px solid #27303B !important;
  border-bottom: 7px solid var(--playbook-red) !important;
  box-shadow: 0 18px 44px rgba(15, 23, 42, 0.16) !important;
}

.history-panel table {
  border-color: #2F3A46 !important;
  background: #111821 !important;
  box-shadow: none !important;
}

.history-panel th {
  background: #151C25 !important;
  color: #FFFFFF !important;
  border-bottom: 3px solid var(--playbook-red) !important;
}

.history-panel td {
  background: #111821 !important;
  color: #DCE4EE !important;
  border-top: 1px solid #2F3A46 !important;
  border-right: 1px solid #2F3A46 !important;
}

.history-panel tr:nth-child(even) td,
.history-panel tr:hover td {
  background: #151C25 !important;
}

.diagram-panel,
[data-diagram] {
  max-width: 100%;
  overflow: hidden;
  border: 1px solid var(--playbook-line) !important;
  border-radius: 18px !important;
  background: linear-gradient(180deg, #FFFFFF, #FAFBFC) !important;
  box-shadow: 0 10px 26px rgba(15, 23, 42, 0.05) !important;
}

.diagram-step,
.diagram-layer,
.diagram-column,
.diagram-chip {
  border-color: var(--playbook-line) !important;
}

main ul,
main ol,
article ul,
article ol,
.content ul,
.content ol,
.main ul,
.main ol {
  padding-left: 1.35rem;
}

main li,
article li,
.content li,
.main li {
  margin-top: 0.32rem;
  margin-bottom: 0.32rem;
}

@media (max-width: 980px) {
  .gcf-suite-nav {
    position: sticky;
    top: 0;
    padding: 10px 14px;
  }

  .playbook-local-nav.quickbar,
  html[data-playbook-has-local-nav="true"] .sidebar,
  html[data-playbook-has-local-nav="true"] .nav {
    top: auto !important;
    position: relative !important;
    height: auto !important;
    max-height: none !important;
  }

  .playbook-local-nav.quickbar {
    min-height: 0;
  }

  .playbook-local-label {
    width: 100%;
    padding: 10px 0 0;
  }

  html[data-playbook-has-local-nav="true"] .wrap {
    display: block !important;
  }

  html[data-playbook-has-local-nav="true"] .sidebar,
  html[data-playbook-has-local-nav="true"] .nav {
    display: block !important;
    width: 100% !important;
    min-width: 0 !important;
    max-height: min(44vh, 420px) !important;
    padding: 16px 0 18px !important;
    border-right: 0 !important;
    border-bottom: 1px solid #242A33 !important;
  }

  html[data-playbook-side-nav-collapsed="true"] .playbook-side-nav {
    width: 100% !important;
    min-width: 0 !important;
    max-height: none !important;
    padding: 10px 12px !important;
    overflow: visible !important;
  }

  html[data-playbook-side-nav-collapsed="true"] .playbook-side-nav-toggle {
    flex-direction: row;
    justify-content: center;
    width: 100%;
    min-height: 40px;
    margin: 0;
  }

  html[data-playbook-has-local-nav="true"] .sidebar h3,
  html[data-playbook-has-local-nav="true"] .nav .nav-title {
    padding: 0 18px 10px !important;
  }

  html[data-playbook-has-local-nav="true"] .sidebar a,
  html[data-playbook-has-local-nav="true"] .nav a {
    padding: 8px 18px 8px 18px !important;
  }

  html[data-playbook-has-local-nav="true"] .nav a.lvl3,
  html[data-playbook-has-local-nav="true"] .nav a.lvl3:hover,
  html[data-playbook-has-local-nav="true"] .nav a.lvl3.active {
    padding-left: 30px !important;
  }

  main table,
  article table,
  .content table,
  .main table,
  .wrap table {
    display: block !important;
    overflow-x: auto !important;
    -webkit-overflow-scrolling: touch;
  }

  main th,
  article th,
  .content th,
  .main th,
  .wrap th,
  main td,
  article td,
  .content td,
  .main td,
  .wrap td {
    min-width: 9rem;
  }

  main pre,
  article pre,
  .content pre,
  .main pre,
  .wrap pre,
  .prompt-block pre,
  .sourceCode pre {
    white-space: pre-wrap;
    overflow-wrap: anywhere;
  }
}

@media print {
  body {
    background: #FFFFFF !important;
    color: #111827 !important;
  }

  .gcf-suite-nav,
  .playbook-local-nav,
  .full-doc-search,
  .search-results-panel,
  .playbook-side-nav-toggle,
  .backtop,
  .jumpbottom {
    display: none !important;
  }

  html[data-playbook-has-local-nav="true"] .sidebar,
  html[data-playbook-has-local-nav="true"] .nav {
    display: none !important;
  }

  .wrap,
  .content,
  .main,
  article {
    display: block !important;
    max-width: none !important;
    width: auto !important;
    padding: 0 !important;
    border: 0 !important;
    box-shadow: none !important;
  }

  table,
  pre,
  blockquote,
  .panel,
  .card,
  .callout,
  .history-panel,
  .diagram-panel {
    break-inside: avoid;
    box-shadow: none !important;
  }

  pre {
    white-space: pre-wrap !important;
    overflow-wrap: anywhere;
  }

  a[href] {
    color: #111827 !important;
    text-decoration: underline !important;
  }
}

@media (max-width: 900px) {
  .gcf-suite-nav {
    gap: 6px;
  }

  .gcf-suite-nav .gcf-suite-title {
    width: 100%;
  }

  .gcf-suite-nav a {
    min-height: 0;
    padding: 7px 10px !important;
    white-space: normal;
    overflow-wrap: anywhere;
  }
}
