.rga-main {
  margin-inline: auto;
  max-width: 80rem;
  padding: clamp(1.5rem, 5vw, 5rem) clamp(1rem, 4vw, 3rem);
}

.rga-article {
  margin-inline: auto;
  max-width: 58rem;
}

.rga-course-layout {
  align-items: start;
  display: grid;
  gap: clamp(1.5rem, 3vw, 3rem);
  grid-template-columns: minmax(0, 1fr) minmax(15rem, 19rem);
}

.rga-course-layout .rga-article { min-width: 0; width: 100%; }

.rga-course-navigation {
  background: #fffdf9;
  border: 1px solid #e1ded6;
  border-radius: 1rem;
  max-height: calc(100vh - 2rem);
  overflow: auto;
  padding: 1.25rem;
  position: sticky;
  top: 1rem;
}

.rga-course-navigation ol { list-style: none; margin: .7rem 0 0; padding: 0; }
.rga-course-navigation li { border-top: 1px solid #e1ded6; padding: .55rem 0; }
.rga-course-navigation li li { border: 0; padding: .25rem 0 .25rem .9rem; }
.rga-course-navigation summary { cursor: pointer; font-weight: 700; }
.rga-course-navigation a { color: #1d2d30; text-decoration-color: #d36a35; }
.rga-course-navigation a[aria-current="page"] { color: #b8572c; font-weight: 700; }
.rga-course-navigation-home { display: block; font-weight: 700; }
.rga-module-overview { display: inline-block; margin-top: .5rem; }
.rga-draft { color: #586b7d; font-size: .75em; font-weight: 400; }
.rga-breadcrumbs { font-size: .85rem; margin-bottom: 1rem; }
.rga-breadcrumbs span { margin-inline: .35rem; }
.rga-step-navigation { display: flex; flex-wrap: wrap; gap: .75rem; justify-content: space-between; margin-block: 1.5rem; }
.rga-step-navigation a { background: #fffdf9; border: 1px solid #e1ded6; border-radius: .5rem; padding: .65rem .9rem; transition: background-color .2s ease, border-color .2s ease, box-shadow .2s ease, color .2s ease, transform .2s ease; }
.rga-main .rga-step-navigation a:hover,
.rga-main .rga-step-navigation a:focus-visible { background: #d36a35; border-color: #d36a35; box-shadow: 0 8px 18px rgba(211, 106, 53, .2); color: #fff; -webkit-text-fill-color: #fff; transform: translateY(-2px); }
.rga-outline-note { background: #fff7ed; border-left: 3px solid #d36a35; padding: 1rem 1.25rem; }

@media (max-width: 58rem) {
  .rga-course-layout { grid-template-columns: 1fr; }
  .rga-course-navigation { max-height: none; position: static; }
}

.rga-home {
  margin-inline: auto;
  max-width: 76rem;
}

.rga-home-lead {
  font-size: clamp(1.15rem, 2vw, 1.55rem);
  max-width: 50rem;
}

.rga-home-actions {
  display: flex;
  flex-wrap: wrap;
  gap: .75rem;
  margin-block: 1.25rem 1.5rem;
}

.rga-button,
.rga-rating button,
.rga-drills button {
  align-items: center;
  background:
    radial-gradient(circle at 18% 28%, rgba(255, 255, 255, .13) 0 1px, transparent 1.5px),
    radial-gradient(circle at 78% 64%, rgba(0, 0, 0, .13) 0 1px, transparent 1.5px),
    linear-gradient(145deg, #686f6b, #4d5451);
  background-size: 19px 17px, 23px 21px, auto;
  border: 1px solid #4f5653;
  border-radius: 0;
  box-shadow: 0 4px 0 rgba(22, 25, 22, .16), 0 8px 17px rgba(22, 25, 22, .1);
  clip-path: polygon(5% 7%, 31% 2%, 72% 5%, 96% 1%, 100% 29%, 97% 75%, 91% 97%, 57% 94%, 25% 99%, 3% 91%, 0 62%, 2% 22%);
  color: #fff;
  cursor: pointer;
  display: inline-flex;
  font: inherit;
  font-weight: 700;
  justify-content: center;
  min-height: 44px;
  padding: .7rem 1.3rem;
  text-decoration: none;
  transition: transform .2s ease, border-color .2s ease, background .2s ease, box-shadow .2s ease;
}

.rga-button:hover,
.rga-button:focus-visible,
.rga-rating button:hover,
.rga-rating button:focus-visible,
.rga-drills button:hover,
.rga-drills button:focus-visible {
  background: linear-gradient(145deg, #df7841, #d36a35);
  border-color: #d36a35;
  box-shadow: 0 4px 0 rgba(122, 53, 23, .2), 0 10px 22px rgba(211, 106, 53, .2);
  transform: translateY(-2px);
}

.rg-content a.rga-button,
.rg-content a.rga-button:hover,
.rg-content a.rga-button:focus-visible {
  color: #fff !important;
  -webkit-text-fill-color: #fff;
}

.rga-course-badge {
  color: #b8572c;
  font-size: .78rem;
  font-weight: 700;
  letter-spacing: .1em;
  text-transform: uppercase;
}

.rga-empty {
  background: #fffdf9;
  border: 1px solid #e1ded6;
  border-radius: 1rem;
  padding: 1.5rem;
}

.rga-feature {
  background: #fffdf9;
  border: 1px solid #e1ded6;
  border-radius: 1rem;
  margin-block: 2rem 3rem;
  max-width: 58rem;
  padding: clamp(1.2rem, 3vw, 2rem);
}

.rga-feature--intro {
  margin-block: 0 1.4rem;
  padding: clamp(1rem, 2vw, 1.45rem) clamp(1.2rem, 2.5vw, 1.8rem);
}

.rga-home .rga-feature--intro h2 {
  font-size: clamp(1.2rem, 2vw, 1.55rem);
  line-height: 1.15;
  margin: .25rem 0 .5rem;
}

.rga-feature--intro > p:last-child {
  background: linear-gradient(135deg, #fff7ed 0%, #fffdf9 100%);
  border: 1px solid rgba(211, 106, 53, .35);
  border-left: 5px solid #d36a35;
  border-radius: .75rem;
  box-shadow: 0 10px 24px rgba(82, 45, 24, .08);
  color: #293238;
  font-size: clamp(.95rem, 1.3vw, 1.07rem);
  line-height: 1.55;
  margin: 1.15rem 0 0;
  max-width: 70ch;
  padding: 1rem 1.15rem 1.05rem;
}

.rga-feature--intro > p:last-child::before {
  color: #b8572c;
  content: "KAUF & ANRECHNUNG";
  display: block;
  font-size: .72rem;
  font-weight: 800;
  letter-spacing: .11em;
  line-height: 1.2;
  margin-bottom: .45rem;
  text-transform: uppercase;
}

.rga-feature h2 {
  font-size: clamp(1.25rem, 2vw, 1.6rem);
  margin-block: .35rem .8rem;
}

.rga-feature img {
  border-radius: .75rem;
  display: block;
  height: auto;
  max-width: 100%;
}

.rga-eyebrow {
  color: #d36a35;
  font-size: .78rem;
  font-weight: 700;
  letter-spacing: .16em;
  text-transform: uppercase;
}

.rga-article-header h1 {
  font-size: clamp(1.65rem, 3.5vw, 2.7rem);
  line-height: 1.08;
  margin-block: .5rem 1.5rem;
}

body.page .rg-section-head h1 {
  font-size: clamp(1.65rem, 3.5vw, 2.7rem);
  line-height: 1.08;
}

.rga-featured-image {
  margin: 0 0 2rem;
}

.rga-featured-image img {
  aspect-ratio: 16 / 9;
  border-radius: 1rem;
  display: block;
  height: auto;
  object-fit: cover;
  width: 100%;
}

.rga-catalog,
.rga-my-lessons {
  display: grid;
  gap: 1.25rem;
  grid-template-columns: repeat(auto-fit, minmax(min(100%, 22rem), 1fr));
  margin-block: 2rem;
}

.rga-catalog section,
.rga-my-lessons section,
.rga-course-modules,
.rga-module-lessons,
.rga-navigation,
.rga-rating,
.rga-preview,
.rga-lesson-body,
.rga-drills {
  background: #fffdf9;
  border: 1px solid #e1ded6;
  border-radius: 1rem;
  padding: clamp(1rem, 2.5vw, 1.75rem);
}

:is(.rga-catalog, .rga-my-lessons) .rga-course-card {
  overflow: hidden;
  padding: 0;
}

.rga-course-card-image { display: block; }
.rga-course-card-image img {
  aspect-ratio: 16 / 9;
  display: block;
  height: auto;
  object-fit: cover;
  width: 100%;
}
.rga-course-card-content { padding: clamp(1rem, 2.5vw, 1.75rem); }

.rga-catalog section h2,
.rga-my-lessons section h2,
.rga-course-modules h2,
.rga-module-lessons h2,
.rga-rating h2 {
  font-size: clamp(1.25rem, 2vw, 1.65rem);
  margin-top: 0;
}

.rga-course-modules,
.rga-module-lessons {
  background: transparent;
  border: 0;
  padding: 0;
}

.rga-module-cards { display: grid; gap: 1.25rem; }
.rga-module-card {
  align-items: start;
  background: #fffdf9;
  border: 1px solid #e1ded6;
  border-radius: 1rem;
  display: grid;
  gap: 1.25rem;
  grid-template-columns: 7.5rem minmax(0, 1fr);
  padding: 1.25rem;
}
.rga-module-card-media {
  border-radius: .6rem;
  display: block;
  overflow: hidden;
}
.rga-module-card-media img,
.rga-module-card-placeholder {
  aspect-ratio: 1;
  display: block;
  height: 7.5rem;
  object-fit: cover;
  width: 100%;
}
.rga-module-card-placeholder {
  align-items: center;
  background: linear-gradient(145deg, #e9e7df, #d1d8d4);
  color: #52636b;
  display: flex;
  font-size: 2rem;
  font-weight: 700;
  justify-content: center;
}
.rga-module-card h3 { font-size: clamp(1.05rem, 1.7vw, 1.22rem); margin: 0 0 .5rem; }
.rga-module-card p { margin: 0 0 1rem; }
.rga-lesson-card .rga-locked { display: block; margin: 0 0 .65rem; }
.rga-card-actions,
.rga-purchase-actions {
  align-items: center;
  display: flex;
  flex-wrap: wrap;
  gap: .7rem;
}
.rga-purchase-box {
  background: #fff8f0;
  border: 1px solid #ead5c4;
  border-left: 4px solid #d36a35;
  border-radius: 1rem;
  display: block;
  margin-block: 1.25rem;
  padding: clamp(1rem, 2.5vw, 1.5rem);
}
.rga-purchase-box h2 { font-size: clamp(1.12rem, 2vw, 1.45rem); margin: 0 0 .35rem; }
.rga-purchase-box p { margin: 0; }
.rga-purchase-box .rga-purchase-actions {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(min(100%, 15rem), 1fr));
  margin-top: 1rem;
  width: 100%;
}
.rga-purchase-box .rga-purchase-button {
  align-items: center;
  display: flex;
  justify-content: center;
  min-width: 0;
  text-align: center;
  white-space: normal;
}
.rga-purchase-button .amount { color: inherit; }

@media (max-width: 34rem) {
  .rga-module-card { grid-template-columns: 5.5rem minmax(0, 1fr); gap: .85rem; padding: 1rem; }
  .rga-module-card-media img,
  .rga-module-card-placeholder { height: 5.5rem; }
  .rga-purchase-box .rga-purchase-actions { grid-template-columns: 1fr; }
}

/* Match the theme's subtle compass watermark on every Academy card surface. */
:is(.rga-feature, .rga-catalog section, .rga-my-lessons section, .rga-course-navigation, .rga-module-card, .rga-navigation, .rga-rating, .rga-preview, .rga-lesson-body, .rga-drills, .rga-empty, .rga-outline-note, .rga-step-navigation a, .rga-legal-notice, .rga-rider-section, .rga-rider-note, .rga-medical-note, .rga-module-guide, .rga-purchase-box) {
  isolation: isolate;
  overflow: hidden;
  position: relative;
}
:is(.rga-feature, .rga-catalog section, .rga-my-lessons section, .rga-course-navigation, .rga-module-card, .rga-navigation, .rga-rating, .rga-preview, .rga-lesson-body, .rga-drills, .rga-empty, .rga-outline-note, .rga-step-navigation a, .rga-legal-notice, .rga-rider-section, .rga-rider-note, .rga-medical-note, .rga-module-guide, .rga-purchase-box)::after {
  background: var(--rga-compass) left center / 514px auto no-repeat;
  bottom: -30px;
  content: "";
  height: 168px;
  opacity: .055;
  pointer-events: none;
  position: absolute;
  right: -24px;
  width: 168px;
  z-index: 0;
}
:is(.rga-feature, .rga-catalog section, .rga-my-lessons section, .rga-course-navigation, .rga-module-card, .rga-navigation, .rga-rating, .rga-preview, .rga-lesson-body, .rga-drills, .rga-empty, .rga-outline-note, .rga-step-navigation a, .rga-legal-notice, .rga-rider-section, .rga-rider-note, .rga-medical-note, .rga-module-guide, .rga-purchase-box) > * {
  position: relative;
  z-index: 1;
}
.rga-course-navigation { overflow: auto; }

.rga-catalog ol,
.rga-my-lessons ol,
.rga-course-modules ol,
.rga-module-lessons ol,
.rga-navigation ol {
  padding-left: 1.4rem;
}

.rga-catalog li,
.rga-my-lessons li,
.rga-course-modules li,
.rga-module-lessons li,
.rga-navigation li {
  padding-block: .35rem;
}

.rga-locked {
  color: #586b7d;
  font-size: .85em;
  margin-left: .4rem;
}

.rga-preview,
.rga-lesson-body,
.rga-course-modules,
.rga-navigation,
.rga-rating,
.rga-drills {
  margin-block: 1rem;
}

.rga-preview {
  background: #fff8f0;
  border-color: #ead5c4;
  border-left: 4px solid #d36a35;
  box-shadow: 0 10px 28px rgba(75, 55, 38, .06);
}
.rga-preview .rga-preview-label {
  color: #b8572c;
  font-size: .78rem;
  font-weight: 800;
  letter-spacing: .14em;
  margin: 0 0 .55rem;
  text-transform: uppercase;
}
.rga-preview p { font-size: 1.05rem; line-height: 1.65; margin: 0; max-width: 68ch; }
.rga-preview p + p { margin-top: .7rem; }

/* Consistent long-form typography across all editable Academy lessons. */
.rga-lesson-body {
  color: #252a27;
  font-size: clamp(1rem, .96rem + .16vw, 1.08rem);
  line-height: 1.72;
}
.rga-lesson-body > :first-child { margin-top: 0; }
.rga-lesson-body > :last-child { margin-bottom: 0; }
.rga-lesson-body > h2,
.rga-lesson-body > h3,
.rga-lesson-body > h4 {
  color: #1d2421;
  line-height: 1.2;
  scroll-margin-top: 2rem;
  text-wrap: balance;
}
.rga-lesson-body > h2 {
  border-bottom: 2px solid #d36a35;
  font-size: clamp(1.3rem, 2.2vw, 1.6rem);
  margin: 2.6rem 0 1rem;
  padding-bottom: .5rem;
}
.rga-lesson-body > h3 {
  font-size: clamp(1.08rem, 1.7vw, 1.28rem);
  margin: 2rem 0 .7rem;
}
.rga-lesson-body > h4 {
  color: #3f5046;
  font-size: clamp(.98rem, 1.35vw, 1.08rem);
  margin: 1.5rem 0 .55rem;
}
.rga-lesson-body > h2 + h3,
.rga-lesson-body > h3 + h4 { margin-top: 1rem; }
.rga-lesson-body > p {
  margin: 0 0 1.05rem;
  max-width: 72ch;
}
.rga-lesson-body .rga-subheading {
  color: #3f5046;
  font-weight: 800;
  margin: 1.35rem 0 .35rem;
}
.rga-lesson-body > ul,
.rga-lesson-body > ol {
  margin: .4rem 0 1.25rem;
  max-width: 72ch;
  padding-left: 1.4rem;
}
.rga-lesson-body > ul li,
.rga-lesson-body > ol li { margin-block: .35rem; }
.rga-lesson-body > figure {
  margin: 1.7rem 0 2rem;
}
.rga-lesson-body > figure img {
  border-radius: .75rem;
  display: block;
  height: auto;
  width: 100%;
}
.rga-lesson-body figcaption {
  color: #68706b;
  font-size: .88rem;
  line-height: 1.45;
  margin-top: .55rem;
  text-align: left;
}
.rga-lesson-body > blockquote:not(.rga-medical-note):not(.rga-module-guide) {
  border-left: 4px solid #b7beb8;
  color: #4a524d;
  margin: 1.5rem 0;
  padding: .2rem 0 .2rem 1.1rem;
}

.rga-offers {
  list-style: none;
  padding: 0;
}

.rga-offers li {
  border-bottom: 1px solid #e1ded6;
  padding-block: .6rem;
}

.rga-rating form,
.rga-drills {
  display: grid;
  gap: .75rem;
  justify-items: start;
}

.rga-rating :focus-visible,
.rga-button:focus-visible,
.rga-catalog :focus-visible,
.rga-my-lessons :focus-visible,
.rga-navigation :focus-visible {
  outline: 3px solid #d36a35;
  outline-offset: 3px;
}

/* Editable Ghost lesson imports: weekly action plan and source references. */
.rga-lesson-body .rga-week-plan {
  background: #faf5ee;
  border: 1px solid #e8d9ca;
  border-left: 4px solid #d36a35;
  border-radius: .75rem;
  margin-block: 1.75rem;
  padding: clamp(1rem, 2vw, 1.5rem);
}
.rga-lesson-body .rga-week-plan h3 {
  font-size: clamp(1.08rem, 1.7vw, 1.25rem);
  margin: 0 0 .8rem;
}
.rga-lesson-body .rga-week-plan ul,
.rga-lesson-body .rga-sources ul {
  list-style: none;
  margin: 0;
  padding: 0;
}
.rga-lesson-body .rga-week-plan li {
  display: grid;
  gap: .3rem;
  padding: .75rem 0;
}
.rga-lesson-body .rga-week-plan li + li {
  border-top: 1px solid #e8d9ca;
}
.rga-lesson-body .rga-week-plan li strong { color: #b8572c; }
.rga-lesson-body .rga-sources { margin-block: 2rem .5rem; }
.rga-lesson-body .rga-sources h2 { font-size: clamp(1.25rem, 2vw, 1.55rem); margin-bottom: .75rem; }
.rga-lesson-body .rga-sources li {
  display: flex;
  gap: .65rem;
  padding: .5rem 0;
}
.rga-lesson-body .rga-sources li + li { border-top: 1px solid #ece7df; }
.rga-lesson-body .rga-source-label {
  color: #586b7d;
  flex: 0 0 2rem;
  font-weight: 700;
}
.rga-lesson-body .rga-sources a { color: #d36a35; text-decoration: underline; text-underline-offset: .16em; }
.rga-lesson-body .rga-sources a:hover,
.rga-lesson-body .rga-sources a:focus-visible { color: #586b7d !important; }
.rga-lesson-body p a { color: #d36a35; text-decoration: underline; text-underline-offset: .16em; }
.rga-lesson-body p a:hover,
.rga-lesson-body p a:focus-visible { color: #586b7d !important; }
.rga-main .rga-lesson-body a:not(.rga-button) {
  color: #d36a35 !important;
  -webkit-text-fill-color: #d36a35;
  text-decoration: underline;
  text-underline-offset: .16em;
}
.rga-main .rga-lesson-body a:not(.rga-button):hover,
.rga-main .rga-lesson-body a:not(.rga-button):focus-visible {
  color: #586b7d !important;
  -webkit-text-fill-color: #586b7d;
}
.rga-lesson-body .rga-citation-link,
.rga-lesson-body .rga-sources li {
  scroll-margin-top: 7rem;
}
.rga-lesson-body .rga-sources li:target {
  background: #faf5ee;
  border-left: 3px solid #d36a35;
  margin-inline: -.65rem;
  padding-inline: .65rem;
}
.rga-lesson-body .rga-source-back {
  font-size: .82em;
  margin-left: auto;
  white-space: nowrap;
}
@media (max-width: 640px) {
  .rga-lesson-body .rga-sources li { flex-wrap: wrap; }
  .rga-lesson-body .rga-source-back { margin-left: 2.65rem; }
}

/* Compact checklists and an accessible star rating without numeric selects. */
.rga-drills { gap: .85rem; }
.rga-drills h2 { font-size: clamp(1.25rem, 2vw, 1.55rem); margin: 0; }
.rga-drill-list { display: grid; gap: .2rem; width: 100%; }
.rga-drill-list label {
  align-items: flex-start;
  cursor: pointer;
  display: flex;
  gap: .65rem;
  line-height: 1.45;
  padding: .35rem .15rem;
}
.rga-drill-list input[type="checkbox"] { accent-color: #d36a35; flex: none; margin: .3rem 0 0; }
.rga-rating-summary { align-items: center; display: flex; flex-wrap: wrap; gap: .55rem 1rem; margin-bottom: 1rem; }
.rga-rating-stars {
  background: linear-gradient(90deg, #d5a34d var(--rga-rating-fill), #e8ddc4 var(--rga-rating-fill));
  background-clip: text;
  color: #e8ddc4;
  font-size: 2rem;
  letter-spacing: .1em;
  line-height: 1;
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent;
}
.rga-rating-count { color: #586b7d; font-size: .92rem; }
.rga-rating fieldset { border: 0; margin: 0; padding: 0; }
.rga-rating legend { font-weight: 700; margin-bottom: .35rem; }
.rga-rating-choices { display: flex; flex-direction: row-reverse; justify-content: flex-end; }
.rga-rating-choices input {
  clip-path: inset(50%);
  height: 1px;
  opacity: 0;
  position: absolute;
  width: 1px;
}
.rga-rating-choices label {
  color: #e8ddc4;
  cursor: pointer;
  font-size: 2.25rem;
  line-height: 1;
  padding: .1rem .15rem;
  transition: color .15s ease, transform .15s ease;
}
.rga-rating-choices input:checked ~ label,
.rga-rating-choices label:hover,
.rga-rating-choices label:hover ~ label { color: #d5a34d; }
.rga-rating-choices label:hover { transform: translateY(-2px); }
.rga-rating-choices input:focus-visible + label { outline: 2px solid #d36a35; outline-offset: 2px; }

.rga-lesson-body .rga-rider-note {
  background: #eef5f3;
  border: 1px solid #cedfd9;
  border-left: 4px solid #3b7770;
  border-radius: .75rem;
  margin-block: 1.5rem;
  padding: clamp(1rem, 2vw, 1.4rem);
}
.rga-lesson-body .rga-rider-note h3 { color: #245c56; font-size: 1.05rem; margin: 0 0 .55rem; }
.rga-lesson-body .rga-rider-note p { margin: 0; }
.rga-lesson-body .rga-rider-section {
  background: #eef5f3;
  border: 1px solid #cedfd9;
  border-left: 4px solid #3b7770;
  border-radius: .75rem;
  margin-block: 1.5rem;
  padding: clamp(1rem, 2vw, 1.5rem);
}
.rga-lesson-body .rga-rider-section h2 { color: #245c56; font-size: clamp(1.05rem, 1.7vw, 1.25rem); margin: 0 0 .7rem; }
.rga-lesson-body .rga-rider-section > :last-child { margin-bottom: 0; }
.rga-lesson-body .rga-legal-notice {
  background: #fff6ed;
  border: 1px solid #ebd5c4;
  border-left: 5px solid #b9582c;
  border-radius: .75rem;
  margin-block: 2rem;
  padding: clamp(1.1rem, 2.5vw, 1.8rem);
}
.rga-lesson-body .rga-legal-notice h2 { color: #90401d; font-size: clamp(1.15rem, 1.9vw, 1.4rem); margin: 0 0 .9rem; }
.rga-lesson-body .rga-legal-notice h3 {
  border-top: 1px solid #ebd5c4;
  color: #90401d;
  font-size: clamp(.98rem, 1.4vw, 1.08rem);
  margin: 1.25rem 0 .45rem;
  padding-top: 1rem;
}
.rga-lesson-body .rga-legal-notice p { font-size: .96rem; line-height: 1.65; }
.rga-lesson-body .rga-legal-notice > :last-child { margin-bottom: 0; }
.rga-lesson-body .rga-medical-note {
  background: #fff0e7;
  border: 1px solid #e9c3ad;
  border-left: 5px solid #b9582c;
  border-radius: .75rem;
  color: #3c302b;
  margin-block: 1.5rem;
  padding: 1rem 1.3rem;
}
.rga-lesson-body .rga-medical-note p { margin: 0; }
.rga-lesson-body .rga-module-guide {
  background: #f2f1e8;
  border: 1px solid #dcdbc9;
  border-left: 5px solid #68756c;
  border-radius: .75rem;
  color: #303a34;
  margin-block: 1.5rem;
  padding: 1rem 1.3rem;
}
.rga-lesson-body .rga-module-guide p { line-height: 1.65; margin: 0; }
.rga-lesson-body .rga-module-guide strong:first-child { color: #3f5046; font-size: 1.05rem; }
.rga-lesson-body .rga-lesson-drill {
  background: #faf8f3;
  border: 1px solid #e8e1d5;
  border-radius: .75rem;
  margin-block: .7rem;
  padding: 1rem 1.2rem;
}
.rga-lesson-body .rga-lesson-drill h4 { color: #b8572c; font-size: .98rem; margin: 0 0 .4rem; }
.rga-lesson-body .rga-lesson-drill p { margin: 0; }
.rga-lesson-body .rga-drill-toggle {
  align-items: center;
  background: #fffdf9;
  border: 1px solid #dfc6b0;
  border-radius: .45rem;
  color: #97491f;
  cursor: pointer;
  display: inline-flex;
  font-weight: 700;
  gap: .5rem;
  margin-top: .85rem;
  padding: .4rem .7rem;
}
.rga-lesson-body .rga-drill-toggle:focus-within { outline: 2px solid #d36a35; outline-offset: 2px; }
.rga-lesson-body .rga-drill-toggle input { accent-color: #d36a35; margin: 0; }
.rga-lesson-body .rga-drill-toggle:has(input:checked) { background: #f6e7d8; border-color: #d36a35; }
.rga-drill-card-actions { margin: 1rem 0 1.5rem; }
.rga-lightbox-trigger {
  cursor: zoom-in;
}
.rga-lightbox-trigger:focus-visible {
  outline: 3px solid #d36a35;
  outline-offset: 4px;
}
html.rga-lightbox-open,
html.rga-lightbox-open body {
  overflow: hidden;
}
.rga-lightbox[hidden] { display: none; }
.rga-lightbox {
  align-items: center;
  background: rgb(20 24 22 / 92%);
  display: flex;
  inset: 0;
  justify-content: center;
  padding: clamp(1rem, 4vw, 3rem);
  position: fixed;
  z-index: 100000;
}
.rga-lightbox img {
  border-radius: .75rem;
  box-shadow: 0 1.25rem 4rem rgb(0 0 0 / 45%);
  display: block;
  max-height: calc(100vh - 4rem);
  max-width: min(100%, 1600px);
  object-fit: contain;
}
.rga-lightbox-close {
  align-items: center;
  background: #f8f5ef;
  border: 0;
  border-radius: 999px;
  color: #202724;
  cursor: pointer;
  display: flex;
  font: 700 2rem/1 sans-serif;
  height: 2.75rem;
  justify-content: center;
  padding: 0 0 .18rem;
  position: fixed;
  right: clamp(1rem, 3vw, 2rem);
  top: clamp(1rem, 3vw, 2rem);
  width: 2.75rem;
  z-index: 1;
}
.rga-lightbox-close:hover,
.rga-lightbox-close:focus-visible {
  background: #d36a35;
  color: #fff;
  outline: none;
}
