:root {
  --ap-study-ink: #172433;
  --ap-study-muted: #5f6b78;
  --ap-study-line: #d6dee7;
  --ap-study-soft: #f4f7fa;
  --ap-study-blue: #2854c5;
  --ap-study-blue-soft: #edf3ff;
  --ap-study-green: #1e6b53;
  --ap-study-green-soft: #eef8f3;
  --ap-study-amber: #8c5400;
  --ap-study-amber-soft: #fff7e5;
  --ap-study-red: #9a3340;
  --ap-study-red-soft: #fff1f2;
  --ap-study-serif: "Noto Serif", Georgia, "Times New Roman", serif;
  --ap-study-ui: Inter, "Helvetica Neue", Arial, sans-serif;
  --ap-study-display: "Rubik", Inter, "Helvetica Neue", Arial, sans-serif;
}

/* Bluebook-shell integration used by the AP catalog reader. */
.ap-study-mode .centerwrap{justify-content:center}
.ap-study-mode .bodyrow.single .qcol{max-width:1080px}
.ap-study-mode .pane{padding:22px 32px 52px}
.ap-study-headbar{display:flex;align-items:center;justify-content:space-between;gap:14px;width:100%;color:#334155;font:750 13px/1.3 var(--ap-study-ui);letter-spacing:.025em}
.ap-study-headbar .time{color:#66727f;font-weight:650;white-space:nowrap}
.ap-study-kicker{margin:3px 0 8px}
.ap-study-objectives,.ap-study-prereqs{margin:18px 0 22px;padding:15px 18px;border-left:4px solid var(--ap-study-blue);background:var(--ap-study-blue-soft);font:14px/1.55 var(--ap-study-ui)}
.ap-study-objectives{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:7px 24px}
.ap-study-objectives b{grid-column:1/-1}.ap-study-objectives span::before{content:"✓";margin-right:7px;color:var(--ap-study-blue);font-weight:800}
.ap-study-prereqs{border-left-color:#738195;background:#f4f6f8}.ap-study-prereqs>b,.ap-study-prereqs>span{display:block}.ap-study-prereqs>span{margin-top:3px;color:#52606d}.ap-study-prereqs ul{margin:9px 0 0;padding-left:20px}
.ap-study-card-progress{margin-top:7px;color:#637083;font:600 11.5px/1.35 var(--ap-study-ui)}
.catalog-access-note.study-available{border-left:4px solid var(--ap-study-blue);background:#f3f7ff}
.unitcard.study-prerequisite{border:1px solid #b7c9ec;background:linear-gradient(135deg,#f3f7ff 0%,#fff 74%)}
.unitcard.study-prerequisite .nm::before{content:"Required foundation";display:block;margin-bottom:6px;color:#2854c5;font:800 10px/1.2 var(--ap-study-ui);letter-spacing:.11em;text-transform:uppercase}
.unitcard.study-prerequisite .ct{max-width:560px;line-height:1.45}
.ap-study-article details{margin:18px 0;border:1px solid #d3dbe5;border-radius:7px;background:#fafbfd;font-family:var(--ap-study-ui)}
.ap-study-article details summary{padding:13px 15px;cursor:pointer;color:#263646;font-weight:750}.ap-study-article details>*:not(summary){margin:0;padding:0 15px 15px}
.ap-study-article img{max-width:100%;height:auto}
.ap-study-article .rbm-source-section{margin:24px 0}
.ap-study-article .rbm-textbook-figure{margin:28px auto;padding:14px;border:1px solid #cfd8e1;border-radius:10px;background:#fff}
.ap-study-article .rbm-textbook-figure img{display:block;max-width:100%;max-height:520px;margin:0 auto;object-fit:contain}
.ap-study-article .rbm-textbook-figure figcaption{margin-top:12px;color:#536170;font:12px/1.5 var(--ap-study-ui)}
.ap-study-article .rbm-source-note{margin:22px 0;padding:17px 18px;border-left:4px solid #8a9aac;background:#f5f7f9}
.ap-study-article .rbm-source-note__label,.ap-study-article .rbm-interaction-kicker{color:var(--ap-study-blue);font:800 10px/1.2 var(--ap-study-ui);letter-spacing:.105em;text-transform:uppercase}
.ap-study-article .rbm-table-wrap{overflow:auto;margin:22px 0;border:1px solid #ced7e0;border-radius:8px}
.ap-study-article .rbm-table-wrap table{margin:0}
.ap-study-article .rbm-term{display:inline;padding:0;border:0;border-bottom:2px dotted var(--ap-study-blue);background:transparent;color:#1747b9;font:inherit;cursor:pointer}
.ap-study-article .rbm-term.is-open::after{content:attr(data-definition);display:block;margin:7px 0 10px;padding:10px 12px;border:1px solid #b7caf7;border-radius:7px;background:#eef4ff;color:#263646;font:13px/1.5 var(--ap-study-ui)}
.ap-study-article .rbm-quick-check,.ap-study-article .rbm-try-first{margin:32px 0;padding:22px;border:1px solid #b8caec;border-radius:12px;background:#f4f7ff}
.ap-study-article .rbm-quick-check h3,.ap-study-article .rbm-try-first h3{margin:7px 0 16px}
.ap-study-article .rbm-check-options{display:grid;gap:9px}
.ap-study-article .rbm-check-option{display:grid;grid-template-columns:29px minmax(0,1fr);align-items:center;gap:10px;width:100%;padding:11px 13px;border:1px solid #aeb9c6;border-radius:8px;background:#fff;color:#263441;text-align:left;cursor:pointer;font:650 13px/1.4 var(--ap-study-ui)}
.ap-study-article .rbm-check-option span{display:grid;width:25px;height:25px;place-items:center;border:2px solid #718094;border-radius:50%;color:#657182;font-size:11px}
.ap-study-article .rbm-check-option:hover{background:#e9edf2}.ap-study-article .rbm-check-option.is-selected{border:2px solid var(--ap-study-blue);padding:10px 12px}.ap-study-article .rbm-check-option.is-correct{border-color:var(--ap-study-green);background:var(--ap-study-green-soft)}.ap-study-article .rbm-check-option.is-incorrect{border-color:var(--ap-study-red);background:var(--ap-study-red-soft)}
.ap-study-article .rbm-check-feedback{margin-top:13px;padding:12px 14px;border-radius:7px;background:#fff;color:#354351;font:650 13px/1.5 var(--ap-study-ui)}
.ap-study-article .rbm-check-feedback[data-result="correct"]::before{content:"Correct. ";color:var(--ap-study-green);font-weight:850}.ap-study-article .rbm-check-feedback[data-result="review"]::before{content:"Review: ";color:var(--ap-study-red);font-weight:850}
.ap-study-article .rbm-try-first{border-color:#e1c887;background:var(--ap-study-amber-soft)}
.ap-study-article .rbm-confidence{display:flex;align-items:center;justify-content:space-between;gap:20px;margin:28px 0;padding:17px 18px;border:1px solid #d4dce5;border-radius:10px;background:#fff;font-family:var(--ap-study-ui)}
.ap-study-article .rbm-confidence h3{margin:5px 0 0;font-size:14px}.ap-study-article .rbm-confidence-options{display:flex;gap:7px}.ap-study-article .rbm-confidence-options button{padding:8px 10px;border:1px solid #aeb9c5;border-radius:7px;background:#fff;color:#485564;font-size:11px;font-weight:750;cursor:pointer}.ap-study-article .rbm-confidence-options button:hover{background:#eef2f6}.ap-study-article .rbm-confidence-options button.is-selected{border-color:var(--ap-study-blue);background:var(--ap-study-blue);color:#fff}
.ap-study-article .rbm-source-credit{margin:34px 0 6px;padding-top:17px;border-top:1px solid #dce3ea;color:#6a7683;font:11px/1.55 var(--ap-study-ui)}
.ap-study-article .rbm-unit-map,.ap-study-article .rbm-essentials,.ap-study-article .rbm-playbook{padding:20px 22px;border-left:4px solid var(--ap-study-blue);background:#f2f6ff}.ap-study-article .rbm-common-trap{margin-top:18px;padding:14px;border-left:4px solid #c67e13;background:#fff6e6;font:13px/1.55 var(--ap-study-ui)}

.ap-study-shell {
  min-height: 100%;
  background: #fff;
  color: var(--ap-study-ink);
  font-family: var(--ap-study-serif);
}

.ap-study-layout {
  display: grid;
  grid-template-columns: minmax(220px, 278px) minmax(0, 1fr);
  width: min(1260px, 100%);
  min-height: 100%;
  margin: 0 auto;
}

.ap-study-sidebar {
  position: sticky;
  top: 0;
  align-self: start;
  height: 100vh;
  overflow: auto;
  padding: 30px 24px 36px;
  border-right: 1px solid var(--ap-study-line);
  background: #fbfcfd;
  font-family: var(--ap-study-ui);
}

.ap-study-sidebar__kicker,
.ap-study-kicker {
  margin: 0 0 7px;
  color: var(--ap-study-blue);
  font: 750 11px/1.25 var(--ap-study-ui);
  letter-spacing: .105em;
  text-transform: uppercase;
}

.ap-study-sidebar h2 {
  margin: 0;
  color: var(--ap-study-ink);
  font-size: 19px;
  line-height: 1.3;
}

.ap-study-progress {
  margin: 22px 0 24px;
}

.ap-study-progress__meta {
  display: flex;
  align-items: baseline;
  justify-content: space-between;
  gap: 12px;
  margin-bottom: 8px;
  color: var(--ap-study-muted);
  font-size: 12px;
}

.ap-study-progress__track {
  height: 6px;
  overflow: hidden;
  border-radius: 99px;
  background: #dfe5ec;
}

.ap-study-progress__fill {
  display: block;
  width: var(--ap-study-progress, 0%);
  height: 100%;
  border-radius: inherit;
  background: var(--ap-study-blue);
  transition: width .22s ease;
}

.ap-study-nav {
  display: grid;
  gap: 4px;
  margin: 0;
  padding: 0;
  list-style: none;
}

.ap-study-nav a,
.ap-study-nav button {
  display: grid;
  grid-template-columns: 25px minmax(0, 1fr);
  gap: 9px;
  width: 100%;
  padding: 9px 10px;
  border: 0;
  border-radius: 7px;
  background: transparent;
  color: #465361;
  font: 600 12.5px/1.38 var(--ap-study-ui);
  text-align: left;
  text-decoration: none;
  cursor: pointer;
}

.ap-study-nav a:hover,
.ap-study-nav button:hover {
  background: #edf1f5;
  color: var(--ap-study-ink);
}

.ap-study-nav .is-active {
  background: var(--ap-study-blue-soft);
  color: #183f9d;
}

.ap-study-nav__number {
  color: #7b8794;
  font-variant-numeric: tabular-nums;
}

.ap-study-main {
  min-width: 0;
  padding: 38px clamp(28px, 5vw, 78px) 92px;
}

.ap-study-article {
  width: min(820px, 100%);
  margin: 0 auto;
  font-size: 17px;
  line-height: 1.72;
}

.ap-study-article > header {
  padding-bottom: 26px;
  border-bottom: 1px solid var(--ap-study-line);
}

.ap-study-article h1 {
  margin: 0 0 14px;
  color: #102031;
  font: 700 clamp(31px, 4vw, 46px)/1.13 var(--ap-study-display);
  letter-spacing: -.025em;
}

.ap-study-article .ap-study-lead {
  max-width: 720px;
  margin: 0;
  color: #43505d;
  font-size: 18px;
  line-height: 1.65;
}

.ap-study-meta {
  display: flex;
  flex-wrap: wrap;
  gap: 7px 18px;
  margin-top: 17px;
  color: var(--ap-study-muted);
  font: 600 12px/1.4 var(--ap-study-ui);
}

.ap-study-block {
  scroll-margin-top: 24px;
  padding: 35px 0 9px;
}

.ap-study-block + .ap-study-block {
  border-top: 1px solid #e4e9ee;
}

.ap-study-block__header {
  display: grid;
  grid-template-columns: 37px minmax(0, 1fr) auto;
  align-items: start;
  gap: 13px;
  margin-bottom: 18px;
}

.ap-study-block__number {
  display: grid;
  width: 34px;
  height: 34px;
  place-items: center;
  background: #172433;
  color: #fff;
  font: 750 12px/1 var(--ap-study-ui);
}

.ap-study-block h2 {
  margin: 0;
  color: #142333;
  font: 700 27px/1.25 var(--ap-study-display);
  letter-spacing: -.01em;
}

.ap-study-block__time {
  padding-top: 6px;
  color: var(--ap-study-muted);
  font: 600 11px/1.3 var(--ap-study-ui);
  white-space: nowrap;
}

.ap-study-article h3 {
  margin: 27px 0 10px;
  color: #172433;
  font: 750 17px/1.35 var(--ap-study-ui);
}

.ap-study-article h4 {
  margin: 22px 0 8px;
  color: #283747;
  font: 750 14px/1.4 var(--ap-study-ui);
}

.ap-study-article p,
.ap-study-article ul,
.ap-study-article ol {
  margin-top: 0;
  margin-bottom: 15px;
}

.ap-study-article li + li {
  margin-top: 5px;
}

.ap-study-article a {
  color: #244fc0;
  text-decoration-thickness: 1px;
  text-underline-offset: 3px;
}

.ap-study-article table {
  width: 100%;
  margin: 20px 0;
  border-collapse: collapse;
  font: 14px/1.48 var(--ap-study-ui);
}

.ap-study-article th,
.ap-study-article td {
  padding: 10px 12px;
  border: 1px solid #cfd7df;
  text-align: left;
  vertical-align: top;
}

.ap-study-article th {
  background: #f1f4f7;
  color: #263646;
  font-weight: 750;
}

.ap-study-callout,
.ap-study-definition,
.ap-study-example,
.ap-study-check,
.ap-study-trap,
.ap-study-summary,
.ap-study-playbook {
  margin: 21px 0;
  padding: 17px 19px;
  border: 1px solid var(--ap-study-line);
  border-left-width: 4px;
  border-radius: 7px;
  background: var(--ap-study-soft);
}

.ap-study-callout > :last-child,
.ap-study-definition > :last-child,
.ap-study-example > :last-child,
.ap-study-check > :last-child,
.ap-study-trap > :last-child,
.ap-study-summary > :last-child,
.ap-study-playbook > :last-child {
  margin-bottom: 0;
}

.ap-study-definition {
  border-left-color: var(--ap-study-blue);
  background: var(--ap-study-blue-soft);
}

.ap-study-example {
  border-left-color: var(--ap-study-green);
  background: var(--ap-study-green-soft);
}

.ap-study-check {
  border-left-color: #826300;
  background: var(--ap-study-amber-soft);
}

.ap-study-trap {
  border-left-color: var(--ap-study-red);
  background: var(--ap-study-red-soft);
}

.ap-study-callout__label,
.ap-study-card__label {
  display: block;
  margin-bottom: 7px;
  color: currentColor;
  font: 800 11px/1.25 var(--ap-study-ui);
  letter-spacing: .075em;
  text-transform: uppercase;
}

.ap-study-summary {
  margin-top: 38px;
  padding: 24px;
  border-color: #b9d2c8;
  border-left-color: var(--ap-study-green);
  background: #f3faf6;
}

.ap-study-summary h2,
.ap-study-playbook h2 {
  margin: 0 0 13px;
  font: 750 24px/1.25 var(--ap-study-display);
}

.ap-study-playbook {
  margin-top: 25px;
  padding: 24px;
  border-color: #becdf2;
  border-left-color: var(--ap-study-blue);
  background: #f5f7ff;
}

.ap-study-patterns {
  display: grid;
  gap: 13px;
  margin-top: 18px;
}

.ap-study-pattern {
  padding: 18px;
  border: 1px solid #cad5ef;
  border-radius: 7px;
  background: #fff;
}

.ap-study-pattern h3 {
  margin-top: 0;
}

.ap-study-pattern dl {
  display: grid;
  grid-template-columns: 105px minmax(0, 1fr);
  gap: 8px 13px;
  margin: 0;
  font-size: 15px;
  line-height: 1.55;
}

.ap-study-pattern dt {
  color: #44556a;
  font: 750 12px/1.5 var(--ap-study-ui);
}

.ap-study-pattern dd {
  margin: 0;
}

.ap-study-actions {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
  gap: 12px;
  margin-top: 36px;
  padding-top: 22px;
  border-top: 1px solid var(--ap-study-line);
  font-family: var(--ap-study-ui);
}

.ap-study-button {
  min-height: 42px;
  padding: 0 18px;
  border: 1.5px solid #172433;
  border-radius: 999px;
  background: #fff;
  color: #172433;
  font: 750 13px/1 var(--ap-study-ui);
  cursor: pointer;
}

.ap-study-button:hover {
  background: #eef2f6;
}

.ap-study-button--primary {
  border-color: var(--ap-study-blue);
  background: var(--ap-study-blue);
  color: #fff;
}

.ap-study-button--primary:hover {
  background: #1e45aa;
}

.ap-study-sr-only {
  position: absolute !important;
  width: 1px !important;
  height: 1px !important;
  padding: 0 !important;
  margin: -1px !important;
  overflow: hidden !important;
  clip: rect(0, 0, 0, 0) !important;
  white-space: nowrap !important;
  border: 0 !important;
}

@media (max-width: 820px) {
  .ap-study-mode .pane{padding:18px 18px 44px}.ap-study-objectives{grid-template-columns:1fr}
  .ap-study-layout {
    display: block;
  }

  .ap-study-sidebar {
    position: relative;
    z-index: 2;
    height: auto;
    padding: 17px 20px;
    border-right: 0;
    border-bottom: 1px solid var(--ap-study-line);
  }

  .ap-study-sidebar h2,
  .ap-study-nav {
    display: none;
  }

  .ap-study-progress {
    margin: 10px 0 0;
  }

  .ap-study-main {
    padding: 28px 20px 72px;
  }

  .ap-study-article {
    font-size: 16px;
    line-height: 1.68;
  }

  .ap-study-block__header {
    grid-template-columns: 34px minmax(0, 1fr);
  }

  .ap-study-block__time {
    grid-column: 2;
    padding-top: 0;
  }

  .ap-study-pattern dl {
    grid-template-columns: 1fr;
    gap: 3px;
  }
  .ap-study-article .rbm-confidence{align-items:flex-start;flex-direction:column}.ap-study-article .rbm-confidence-options{width:100%}.ap-study-article .rbm-confidence-options button{flex:1}
}

@media (max-width: 480px) {
  .ap-study-main {
    padding-inline: 16px;
  }

  .ap-study-article h1 {
    font-size: 30px;
  }

  .ap-study-block h2 {
    font-size: 23px;
  }

  .ap-study-callout,
  .ap-study-definition,
  .ap-study-example,
  .ap-study-check,
  .ap-study-trap,
  .ap-study-summary,
  .ap-study-playbook {
    padding: 15px;
  }

  .ap-study-article table {
    display: block;
    overflow-x: auto;
  }
}

@media print {
  .ap-study-sidebar,
  .ap-study-actions {
    display: none !important;
  }

  .ap-study-layout {
    display: block;
  }

  .ap-study-main,
  .ap-study-article {
    width: auto;
    max-width: none;
    padding: 0;
  }

  .ap-study-block,
  .ap-study-summary,
  .ap-study-playbook,
  .ap-study-pattern {
    break-inside: avoid;
  }
}
