:root {
  --cdmp-font: "Courier New", Courier, ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", monospace;
  --cdmp-blue: #5c8dff;
  --cdmp-green: #28b978;
  --cdmp-orange: #f29a38;
  --cdmp-purple: #ad72ff;
  --cdmp-red: #ef6674;
  --cdmp-yellow: #e0b33f;
  --cdmp-gray: #99a5b8;
  --cdmp-radius: .8rem;
  --cdmp-border: color-mix(in srgb, var(--md-default-fg-color) 18%, transparent);
  --cdmp-muted: color-mix(in srgb, var(--md-default-fg-color) 72%, transparent);
  --cdmp-surface: color-mix(in srgb, var(--md-default-bg-color) 94%, var(--md-primary-fg-color) 6%);
}

/* ============================================================
   GLOBAL TYPE + PAGE GEOMETRY
   Designed to be comfortable at 100% browser zoom.
   ============================================================ */
html,
body,
input,
button,
.md-typeset,
.md-header,
.md-tabs,
.md-nav,
.md-search,
.md-footer {
  font-family: var(--cdmp-font) !important;
}

.md-typeset code,
.md-typeset pre,
.md-typeset kbd {
  font-family: var(--cdmp-font) !important;
}

.md-grid {
  max-width: 100%;
}

.md-main__inner {
  margin-top: .75rem;
}

.md-content {
  min-width: 0;
}

.md-content__inner {
  max-width: 86rem;
  margin-inline: auto;
  padding-inline: 1.35rem 1.15rem;
}

.md-typeset {
  font-size: .82rem;
  line-height: 1.62;
  letter-spacing: .004em;
}

.md-typeset p,
.md-typeset li {
  font-size: 1em;
}

.md-typeset h1 {
  font-size: 1.95rem;
  margin: .4rem 0 .7em;
  font-weight: 800;
  letter-spacing: -.02em;
}

.md-typeset h2 {
  font-size: 1.18rem;
  margin-top: 1.75em;
  padding: .42em .65em;
  border-left: .25rem solid var(--cdmp-blue);
  border-radius: .42rem;
  background: color-mix(in srgb, var(--md-default-bg-color) 91%, var(--cdmp-blue) 9%);
  font-weight: 800;
}

.md-typeset h3 {
  font-size: 1rem;
  margin-top: 1.45em;
  font-weight: 760;
}

/* Keep content away from the physical left edge on wide screens. */
@media screen and (min-width: 76.25em) {
  .md-content__inner {
    padding-left: 1.65rem;
  }
}

/* ============================================================
   HEADER / PRIMARY NAV / TOC
   ============================================================ */
.md-header__title {
  font-size: .88rem;
  font-weight: 800;
}

.md-search__input {
  font-size: .76rem;
}

.md-nav__link {
  font-size: .76rem;
  line-height: 1.36;
}

.md-nav__item .md-nav__link--active {
  font-weight: 800;
}

.md-sidebar--secondary {
  width: 13.5rem;
}

.md-sidebar--secondary .md-nav__title {
  font-size: .8rem;
  font-weight: 800;
}

.md-sidebar--secondary .md-nav__link {
  font-size: .74rem;
  line-height: 1.4;
}

.md-nav__link[href*="00A-dmbok-mastery"] { color: var(--cdmp-blue); }
.md-nav__link[href*="00B-meridian-lab"] { color: var(--cdmp-green); }
.md-nav__link[href*="00C-execution"] { color: var(--cdmp-orange); }
.md-nav__link[href*="evidence"] { color: var(--cdmp-purple); }
.md-nav__link[href$=".pdf"] { color: var(--cdmp-gray); }

.md-nav__link--active[href*="00A-dmbok-mastery"] {
  background: color-mix(in srgb, var(--cdmp-blue) 14%, transparent);
}
.md-nav__link--active[href*="00B-meridian-lab"] {
  background: color-mix(in srgb, var(--cdmp-green) 14%, transparent);
}
.md-nav__link--active[href*="00C-execution"] {
  background: color-mix(in srgb, var(--cdmp-orange) 14%, transparent);
}

/* ============================================================
   HERO + TOP SHORTCUT PILLS
   ============================================================ */
.cdmp-hero {
  margin: .15rem 0 1.35rem;
  padding: 1.15rem 1.3rem;
  border: 1px solid var(--cdmp-border);
  border-radius: calc(var(--cdmp-radius) + .15rem);
}

[data-md-color-scheme="default"] .cdmp-hero {
  background: linear-gradient(110deg, #f5f7ff 0%, #eefaf6 100%);
  color: #202331;
  border-color: rgba(63,81,181,.18);
}

[data-md-color-scheme="slate"] .cdmp-hero {
  background: linear-gradient(110deg, #252a38 0%, #1d3733 100%);
  color: #f3f5ff;
  border-color: rgba(159,168,218,.24);
}

.cdmp-hero h1,
.cdmp-hero h2,
.cdmp-hero p,
.cdmp-hero strong {
  color: inherit;
}

.cdmp-hero h1,
.cdmp-hero h2 {
  margin-top: 0;
  border: 0;
  background: transparent;
  padding-left: 0;
}

.cdmp-hero h1 {
  font-size: 2.05rem;
  margin-bottom: .4em;
}

.cdmp-kicker {
  color: #bd79ff;
  font-size: .72rem;
  font-weight: 800;
  letter-spacing: .06em;
  text-transform: uppercase;
}

.cdmp-pills {
  display: flex;
  flex-wrap: wrap;
  gap: .42rem;
  margin: .72rem 0 0;
}

.cdmp-pill {
  display: inline-block;
  padding: .27rem .62rem;
  border: 1px solid currentColor;
  border-radius: 999px;
  font-size: .69rem;
  font-weight: 800;
  line-height: 1.35;
  text-decoration: none !important;
  cursor: pointer;
  transition: transform 120ms ease, box-shadow 120ms ease, background 120ms ease;
}

.cdmp-pill:nth-child(1),
.cdmp-pill:nth-child(2),
.cdmp-pill:nth-child(3) { color: var(--cdmp-blue); }
.cdmp-pill:nth-child(4) { color: var(--cdmp-green); }
.cdmp-pill:nth-child(5) { color: var(--cdmp-purple); }
.cdmp-pill:nth-child(6) { color: var(--cdmp-orange); }

[data-md-color-scheme="default"] .cdmp-pill { background: rgba(255,255,255,.84); }
[data-md-color-scheme="slate"] .cdmp-pill { background: rgba(20,23,32,.55); }

.cdmp-pill:hover,
.cdmp-pill:focus-visible {
  transform: translateY(-1px);
  box-shadow: 0 .18rem .55rem rgba(79,124,255,.2);
}

/* ============================================================
   PRIMARY ACTION CARDS
   ============================================================ */
.cdmp-action-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0,1fr));
  gap: .8rem;
  margin: .85rem 0 1.35rem;
}

.cdmp-action-card {
  display: grid;
  grid-template-columns: auto 1fr;
  gap: .72rem;
  min-height: 8.1rem;
  padding: .88rem .95rem;
  border: 1px solid var(--cdmp-border);
  border-left-width: .32rem;
  border-radius: var(--cdmp-radius);
  text-decoration: none !important;
  color: inherit !important;
  background: var(--cdmp-surface);
  box-shadow: 0 .14rem .48rem rgba(0,0,0,.07);
  transition: transform 130ms ease, box-shadow 130ms ease, border-color 130ms ease;
}

[data-md-color-scheme="slate"] .cdmp-action-card {
  background: #272c3a;
  color: #f3f5ff !important;
  border-color: #465066;
}

.cdmp-action-card:hover,
.cdmp-action-card:focus-visible {
  transform: translateY(-2px);
  box-shadow: 0 .34rem 1rem rgba(0,0,0,.14);
}

.cdmp-card-icon {
  font-size: 1.5rem;
  line-height: 1;
  margin-top: .05rem;
}

.cdmp-card-title {
  display: block;
  font-size: .95rem;
  font-weight: 800;
  line-height: 1.3;
  margin-bottom: .35rem;
}

.cdmp-card-desc {
  display: block;
  color: var(--cdmp-muted);
  font-size: .76rem;
  line-height: 1.52;
  margin-bottom: .38rem;
}

[data-md-color-scheme="slate"] .cdmp-card-desc {
  color: #c8cfdd;
}

.cdmp-card-cta {
  display: inline-block;
  font-size: .74rem;
  font-weight: 800;
}

.cdmp-action-card.study { border-left-color: var(--cdmp-blue); }
.cdmp-action-card.study .cdmp-card-title,
.cdmp-action-card.study .cdmp-card-cta { color: var(--cdmp-blue); }
.cdmp-action-card.project { border-left-color: var(--cdmp-green); }
.cdmp-action-card.project .cdmp-card-title,
.cdmp-action-card.project .cdmp-card-cta { color: var(--cdmp-green); }
.cdmp-action-card.route { border-left-color: var(--cdmp-orange); }
.cdmp-action-card.route .cdmp-card-title,
.cdmp-action-card.route .cdmp-card-cta { color: var(--cdmp-orange); }
.cdmp-action-card.practice { border-left-color: var(--cdmp-purple); }
.cdmp-action-card.practice .cdmp-card-title,
.cdmp-action-card.practice .cdmp-card-cta { color: var(--cdmp-purple); }
.cdmp-action-card.evidence { border-left-color: #bd79ff; }
.cdmp-action-card.evidence .cdmp-card-title,
.cdmp-action-card.evidence .cdmp-card-cta { color: #bd79ff; }
.cdmp-action-card.source { border-left-color: var(--cdmp-gray); }
.cdmp-action-card.source .cdmp-card-title,
.cdmp-action-card.source .cdmp-card-cta { color: var(--cdmp-gray); }

/* ============================================================
   SECONDARY MINI CARDS + MATERIAL CARDS
   ============================================================ */
.cdmp-mini-grid {
  display: grid;
  grid-template-columns: repeat(2,minmax(0,1fr));
  gap: .65rem;
  margin: .8rem 0 1.2rem;
}

.cdmp-mini-card {
  display: block;
  padding: .75rem .82rem;
  border: 1px solid var(--cdmp-border);
  border-radius: .72rem;
  text-decoration: none !important;
  color: inherit !important;
  background: var(--cdmp-surface);
  transition: transform 120ms ease, border-color 120ms ease, box-shadow 120ms ease;
}

[data-md-color-scheme="slate"] .cdmp-mini-card {
  background: #272c3a;
  color: #f3f5ff !important;
  border-color: #465066;
}

.cdmp-mini-card:hover,
.cdmp-mini-card:focus-visible {
  transform: translateY(-1px);
  border-color: var(--cdmp-blue);
  box-shadow: 0 .2rem .65rem rgba(0,0,0,.11);
}

.cdmp-mini-card strong {
  display: block;
  margin-bottom: .28rem;
  font-size: .84rem;
}

.cdmp-mini-card span {
  color: var(--cdmp-muted);
  font-size: .72rem;
  line-height: 1.48;
}

[data-md-color-scheme="slate"] .cdmp-mini-card span {
  color: #c8cfdd;
}

.md-typeset .grid.cards > ul > li,
.md-typeset .grid.cards > ol > li {
  border: 1px solid var(--cdmp-border);
  border-radius: var(--cdmp-radius);
  background: var(--cdmp-surface);
  box-shadow: 0 .12rem .45rem rgba(0,0,0,.05);
  transition: transform 120ms ease, box-shadow 120ms ease, border-color 120ms ease;
}

[data-md-color-scheme="slate"] .md-typeset .grid.cards > ul > li,
[data-md-color-scheme="slate"] .md-typeset .grid.cards > ol > li {
  background: #272c3a;
  color: #f3f5ff;
  border-color: #465066;
}

.md-typeset .grid.cards > ul > li:hover,
.md-typeset .grid.cards > ol > li:hover {
  transform: translateY(-1px);
  border-color: var(--cdmp-blue);
  box-shadow: 0 .25rem .8rem rgba(0,0,0,.1);
}

/* ============================================================
   CHAPTER QUICK STUDY TOOLBAR
   Turns the first paragraph under the section into scan-friendly pills.
   ============================================================ */
.md-typeset h2#quick-study-navigation + p {
  display: flex;
  flex-wrap: wrap;
  gap: .38rem;
  align-items: center;
  margin: .65rem 0 1rem;
}

.md-typeset h2#quick-study-navigation + p a {
  display: inline-block;
  padding: .28rem .56rem;
  border: 1px solid #465066;
  border-radius: 999px;
  text-decoration: none;
  font-size: .72rem;
  font-weight: 800;
  line-height: 1.35;
  background: color-mix(in srgb, var(--md-default-bg-color) 92%, var(--cdmp-blue) 8%);
}

.md-typeset h2#quick-study-navigation + p a:nth-of-type(1),
.md-typeset h2#quick-study-navigation + p a:nth-of-type(2),
.md-typeset h2#quick-study-navigation + p a:nth-of-type(3),
.md-typeset h2#quick-study-navigation + p a:nth-of-type(4),
.md-typeset h2#quick-study-navigation + p a:nth-of-type(5) { color: var(--cdmp-blue); }
.md-typeset h2#quick-study-navigation + p a:nth-of-type(6),
.md-typeset h2#quick-study-navigation + p a:nth-of-type(7) { color: var(--cdmp-purple); }
.md-typeset h2#quick-study-navigation + p a:nth-of-type(8) { color: var(--cdmp-green); }
.md-typeset h2#quick-study-navigation + p a:nth-of-type(9),
.md-typeset h2#quick-study-navigation + p a:nth-of-type(10) { color: var(--cdmp-gray); }

[data-md-color-scheme="slate"] .md-typeset h2#quick-study-navigation + p a {
  background: #272c3a;
  border-color: #465066;
}

/* Hide literal dot separators in the toolbar as much as possible. */
.md-typeset h2#quick-study-navigation + p {
  color: transparent;
}
.md-typeset h2#quick-study-navigation + p a {
  color: var(--cdmp-blue);
}
.md-typeset h2#quick-study-navigation + p a:nth-of-type(6),
.md-typeset h2#quick-study-navigation + p a:nth-of-type(7) { color: var(--cdmp-purple); }
.md-typeset h2#quick-study-navigation + p a:nth-of-type(8) { color: var(--cdmp-green); }
.md-typeset h2#quick-study-navigation + p a:nth-of-type(9),
.md-typeset h2#quick-study-navigation + p a:nth-of-type(10) { color: var(--cdmp-gray); }

/* ============================================================
   TABLES, BLOCKQUOTES, CALLOUTS
   ============================================================ */
.md-typeset table:not([class]) {
  display: table;
  width: 100%;
  overflow: hidden;
  border: 1px solid var(--cdmp-border);
  border-radius: var(--cdmp-radius);
  font-size: .74rem;
}

.md-typeset table:not([class]) th {
  font-weight: 800;
  white-space: nowrap;
  background: var(--cdmp-surface);
}

.md-typeset table:not([class]) td,
.md-typeset table:not([class]) th {
  padding: .58em .72em;
}

.md-typeset blockquote {
  margin-block: 1rem;
  padding: .72rem .9rem;
  border-left: .26rem solid var(--md-primary-fg-color);
  border-radius: 0 var(--cdmp-radius) var(--cdmp-radius) 0;
  background: var(--cdmp-surface);
}

[data-md-color-scheme="slate"] .md-typeset blockquote {
  background: #272c3a;
  color: #f3f5ff;
  border-color: var(--cdmp-blue);
}

.md-typeset code { overflow-wrap: anywhere; }
.md-typeset .admonition,
.md-typeset details { border-radius: var(--cdmp-radius); }

/* ============================================================
   RESPONSIVE
   ============================================================ */
@media screen and (max-width: 70rem) {
  .md-sidebar--secondary { display: none; }
  .cdmp-action-grid,
  .cdmp-mini-grid { grid-template-columns: 1fr; }
}

@media screen and (max-width: 44.9844em) {
  .md-content__inner {
    padding-inline: .7rem;
  }
  .md-typeset {
    font-size: .86rem;
  }
  .md-typeset table:not([class]) {
    display: block;
    overflow-x: auto;
  }
  .cdmp-hero {
    padding: .9rem;
  }
  .cdmp-action-card {
    min-height: auto;
  }
}
