:where(.doussou-rich-content,.lesson-rich-content,.lmsc-content,.lmsp-course-description,.course-content-richtext){
  --drc-text:#172033;
  --drc-muted:#667085;
  --drc-border:#d8e0eb;
  --drc-soft:#f7f9fc;
  --drc-soft-strong:#eef3f9;
  --drc-link:#245fc9;
  --drc-accent:#397cea;
  --drc-code:#111827;
  color:var(--drc-text);
  font-size:clamp(1rem,.96rem + .16vw,1.08rem);
  line-height:1.72;
  position:relative;
  overflow-wrap:anywhere;
}
:where(.doussou-rich-content,.lesson-rich-content,.lmsc-content,.lmsp-course-description,.course-content-richtext){display:flow-root}
.dre-drawing-layer{position:absolute;z-index:12;top:0;left:0;display:block;overflow:hidden;pointer-events:none;user-select:none}
.dre-drawing-layer canvas{display:block;width:100%;height:100%;pointer-events:none}
.dre-paper-settings{display:none!important}

:where(.doussou-rich-content,.lesson-rich-content,.lmsc-content,.lmsp-course-description,.course-content-richtext)>:first-child{margin-top:0}
:where(.doussou-rich-content,.lesson-rich-content,.lmsc-content,.lmsp-course-description,.course-content-richtext)>:last-child{margin-bottom:0}
:where(.doussou-rich-content,.lesson-rich-content,.lmsc-content,.lmsp-course-description,.course-content-richtext) :is(h1,h2,h3,h4){
  margin:1.55em 0 .58em;
  color:var(--drc-text);
  font-weight:800;
  letter-spacing:-.025em;
  line-height:1.2;
}
:where(.doussou-rich-content,.lesson-rich-content,.lmsc-content,.lmsp-course-description,.course-content-richtext) h1{font-size:clamp(1.75rem,1.45rem + 1vw,2.35rem)}
:where(.doussou-rich-content,.lesson-rich-content,.lmsc-content,.lmsp-course-description,.course-content-richtext) h2{font-size:clamp(1.48rem,1.3rem + .65vw,1.92rem)}
:where(.doussou-rich-content,.lesson-rich-content,.lmsc-content,.lmsp-course-description,.course-content-richtext) h3{font-size:clamp(1.2rem,1.1rem + .35vw,1.45rem)}
:where(.doussou-rich-content,.lesson-rich-content,.lmsc-content,.lmsp-course-description,.course-content-richtext) h4{font-size:1.08rem}
:where(.doussou-rich-content,.lesson-rich-content,.lmsc-content,.lmsp-course-description,.course-content-richtext) p{margin:0 0 1em}
:where(.doussou-rich-content,.lesson-rich-content,.lmsc-content,.lmsp-course-description,.course-content-richtext) :is(ul,ol){margin:.45em 0 1.15em;padding-left:1.55em}
:where(.doussou-rich-content,.lesson-rich-content,.lmsc-content,.lmsp-course-description,.course-content-richtext) li{margin:.28em 0;padding-left:.18em}
:where(.doussou-rich-content,.lesson-rich-content,.lmsc-content,.lmsp-course-description,.course-content-richtext) a{color:var(--drc-link);font-weight:650;text-decoration-thickness:.08em;text-underline-offset:.16em}
:where(.doussou-rich-content,.lesson-rich-content,.lmsc-content,.lmsp-course-description,.course-content-richtext) a:hover{color:var(--drc-accent)}
:where(.doussou-rich-content,.lesson-rich-content,.lmsc-content,.lmsp-course-description,.course-content-richtext) blockquote{
  margin:1.35em 0;
  padding:.2em 0 .2em 1.1em;
  border-left:4px solid var(--drc-accent);
  color:var(--drc-muted);
  font-size:1.04em;
  font-style:italic;
}
:where(.doussou-rich-content,.lesson-rich-content,.lmsc-content,.lmsp-course-description,.course-content-richtext) hr{
  height:1px;
  margin:2em 0;
  border:0;
  background:var(--drc-border);
}
:where(.doussou-rich-content,.lesson-rich-content,.lmsc-content,.lmsp-course-description,.course-content-richtext) :not(pre)>code,
:where(.doussou-rich-content,.lesson-rich-content,.lmsc-content,.lmsp-course-description,.course-content-richtext) kbd{
  padding:.12em .38em;
  border:1px solid var(--drc-border);
  border-radius:5px;
  background:var(--drc-soft);
  color:var(--drc-code);
  font:600 .88em/1.45 ui-monospace,SFMono-Regular,Consolas,monospace;
}
:where(.doussou-rich-content,.lesson-rich-content,.lmsc-content,.lmsp-course-description,.course-content-richtext) pre{
  max-width:100%;
  margin:1.35em 0;
  padding:18px 20px;
  overflow:auto;
  border:1px solid rgba(255,255,255,.08);
  border-radius:12px;
  background:#111827;
  color:#e5edf7;
  font:500 .9rem/1.65 ui-monospace,SFMono-Regular,Consolas,monospace;
  tab-size:2;
  white-space:pre;
}
:where(.doussou-rich-content,.lesson-rich-content,.lmsc-content,.lmsp-course-description,.course-content-richtext) pre code{color:inherit;background:transparent}

.dre-equation{display:inline-flex;align-items:center;gap:.12em;max-width:100%;padding:.12em .3em;margin:0 .08em;border-radius:5px;background:var(--drc-soft,#f7f9fc);font-family:"STIX Two Math","Cambria Math",serif;vertical-align:middle;overflow-x:auto}
.dre-frac{display:inline-grid;grid-template-rows:auto auto;text-align:center;vertical-align:middle}
.dre-frac>span:first-child{padding:0 .22em;border-bottom:1px solid currentColor}
.dre-frac>span:last-child{padding:0 .22em}
.dre-sqrt{display:inline-flex;align-items:flex-start}
.dre-sqrt::before{content:"√";font-size:1.15em}
.dre-sqrt>span{padding:.02em .15em 0;border-top:1px solid currentColor}
.dre-equation-block{position:relative;display:flex;align-items:center;justify-content:center;min-height:78px;margin:1.4em 0;padding:16px 62px;border:1px solid var(--drc-border,#d8e0eb);border-radius:12px;background:var(--drc-soft,#f7f9fc);font-size:1.12em;overflow-x:auto}
.dre-equation-number{position:absolute;right:18px;color:var(--drc-muted,#667085);font-family:"STIX Two Math","Cambria Math",serif;font-size:.82rem}

.dre-callout{position:relative;margin:1.35em 0;padding:17px 19px;border:1px solid #cfe0ff;border-left:5px solid #397cea;border-radius:12px;background:#f5f8ff;color:#1d3557;box-shadow:0 8px 24px rgba(31,76,145,.06)}
.dre-callout-info{border-color:#cfe0ff;border-left-color:#397cea;background:#f5f8ff;color:#1d3557}
.dre-callout-warning{border-color:#f5d89a;border-left-color:#d68b13;background:#fffaf0;color:#5d4215}
.dre-callout-success{border-color:#bde5cb;border-left-color:#26945a;background:#f2fbf5;color:#174b2e}
.dre-callout-danger{border-color:#f1c3c3;border-left-color:#d14343;background:#fff6f6;color:#642525}
.dre-callout-title{margin:0 0 5px!important;color:inherit!important;font-weight:850}
.dre-callout p:last-child{margin-bottom:0}
.dre-task-list{padding-left:0!important;list-style:none!important}
.dre-task-item{position:relative;min-height:1.6em;padding-left:30px!important}
.dre-task-marker{position:absolute;left:1px;color:var(--drc-accent,#397cea);font-size:1.06em;user-select:none}
.dre-task-item[data-checked="1"]{color:var(--drc-muted,#667085);text-decoration:line-through}
.dre-details{margin:1.2em 0;padding:13px 16px;border:1px solid var(--drc-border,#d8e0eb);border-radius:11px;background:var(--drc-soft,#f7f9fc)}
.dre-details summary{font-weight:800;cursor:pointer}
.dre-details[open] summary{margin-bottom:.7em}

.dre-table-scroll{width:100%;margin:1.4em 0;overflow-x:auto;overscroll-behavior-inline:contain;border:1px solid var(--drc-border,#d8e0eb);border-radius:12px;background:var(--drc-soft,#f7f9fc);box-shadow:0 8px 28px rgba(15,23,42,.055);scrollbar-width:thin}
.dre-table{width:100%;min-width:520px;margin:0!important;border:0!important;border-collapse:separate;border-spacing:0;table-layout:fixed;background:#fff;color:#172033}
.dre-table :is(th,td){min-width:100px;padding:12px 14px;border:0;border-right:1px solid #d8e0eb;border-bottom:1px solid #d8e0eb;vertical-align:top;overflow-wrap:anywhere}
.dre-table tr>:last-child{border-right:0}
.dre-table tr:last-child>:is(th,td){border-bottom:0}
.dre-table th{background:#eef3f9;color:#172033;font-weight:800;text-align:left}
.dre-table tbody tr:nth-child(even) td{background:#fbfcfe}
.dre-table caption{padding:9px 12px;color:var(--drc-muted,#667085);font-size:.8rem;font-style:italic;text-align:left;caption-side:bottom;background:var(--drc-soft,#f7f9fc);border-top:1px solid var(--drc-border,#d8e0eb)}

.dre-content-media{margin:1.5em 0;text-align:center}
.dre-content-media-image{position:relative;box-sizing:border-box;width:var(--dre-media-width,100%);max-width:100%}
.dre-content-media-image.dre-media-wrap-none{left:0;clear:both;margin-top:calc(1.5em + var(--dre-media-offset-y,0px));margin-right:auto;margin-left:auto}
.dre-content-media-image.dre-media-wrap-left{float:left;clear:left;margin:calc(.35em + var(--dre-media-offset-y,0px)) 1.35em .9em var(--dre-media-shift-left,0px)}
.dre-content-media-image.dre-media-wrap-right{float:right;clear:right;margin:calc(.35em + var(--dre-media-offset-y,0px)) var(--dre-media-shift-right,0px) .9em 1.35em}
.dre-media-frame{position:relative;width:100%;aspect-ratio:var(--dre-media-aspect,auto);overflow:hidden;border:1px solid var(--drc-border,#d8e0eb);border-radius:12px;background:var(--drc-soft,#f7f9fc);box-shadow:0 12px 30px rgba(15,23,42,.08)}
.dre-content-media-image img{display:block;width:100%;height:100%!important;max-width:none;max-height:min(68vh,720px);margin:0;border:0;border-radius:inherit;background:var(--drc-soft,#f7f9fc);object-fit:cover;object-position:var(--dre-media-crop-x,50%) var(--dre-media-crop-y,50%);transform:scale(var(--dre-media-zoom,1));transform-origin:var(--dre-media-crop-x,50%) var(--dre-media-crop-y,50%)}
.dre-content-media-image[data-media-aspect="auto"] .dre-media-frame{aspect-ratio:auto}
.dre-content-media-image[data-media-aspect="auto"] img{height:auto!important;object-fit:contain}
.dre-content-media-video :is(img,video){display:block;width:auto;max-width:100%;max-height:min(68vh,720px);margin:0 auto;border:1px solid var(--drc-border,#d8e0eb);border-radius:12px;background:var(--drc-soft,#f7f9fc);box-shadow:0 12px 30px rgba(15,23,42,.08);object-fit:contain}
.dre-video-embed{display:block;width:100%;aspect-ratio:16/9;border:0;border-radius:12px;background:#111827;box-shadow:0 12px 30px rgba(15,23,42,.14)}
.dre-content-media figcaption{max-width:72ch;margin:9px auto 0;color:var(--drc-muted,#667085);font-size:.82rem;font-style:italic;line-height:1.45}
.dre-content-resource{margin:1.15em 0}
.dre-content-resource a{display:flex;align-items:center;gap:12px;padding:13px 15px;border:1px solid var(--drc-border,#d8e0eb);border-radius:11px;background:var(--drc-soft,#f7f9fc);color:var(--drc-link,#245fc9);font-weight:780;text-decoration:none;transition:border-color .16s ease,background .16s ease,transform .16s ease}
.dre-content-resource a:hover{border-color:#8daef0;background:#eef4ff;transform:translateY(-1px)}
.dre-content-resource a::before{content:"↗";display:grid;place-items:center;flex:0 0 34px;width:34px;height:34px;border-radius:9px;background:#e4edff;color:#245fc9}
.dre-content-resource-pdf a::before{content:"PDF";background:#fff0f0;color:#c93636;font-size:.58rem;font-weight:900}

.is-dark-mode :where(.doussou-rich-content,.lesson-rich-content,.lmsc-content,.lmsp-course-description,.course-content-richtext){
  --drc-text:#e6edf5;
  --drc-muted:#a8b5c5;
  --drc-border:#3a495c;
  --drc-soft:#172231;
  --drc-soft-strong:#202d3d;
  --drc-link:#8bb8ff;
  --drc-accent:#70a7ff;
  --drc-code:#e6edf5;
}
.is-dark-mode .dre-table-scroll{background:#172231;box-shadow:none}
.is-dark-mode .dre-table{background:#111a26;color:#e6edf5}
.is-dark-mode .dre-table :is(th,td){border-color:#3a495c}
.is-dark-mode .dre-table th{background:#223044;color:#f4f7fb}
.is-dark-mode .dre-table tbody tr:nth-child(even) td{background:#162130}
.is-dark-mode .dre-callout-info{border-color:#315684;border-left-color:#70a7ff;background:#17263a;color:#dbeafe}
.is-dark-mode .dre-callout-warning{border-color:#70531f;border-left-color:#f0b44c;background:#2d2516;color:#fde7b0}
.is-dark-mode .dre-callout-success{border-color:#286042;border-left-color:#4fc781;background:#172b21;color:#c7f2d7}
.is-dark-mode .dre-callout-danger{border-color:#733b42;border-left-color:#ef6f7b;background:#301c22;color:#ffd6db}
.is-dark-mode .dre-content-resource a:hover{background:#20334f;border-color:#6595dc}

@media (max-width:720px){
  :where(.doussou-rich-content,.lesson-rich-content,.lmsc-content,.lmsp-course-description,.course-content-richtext){font-size:1rem;line-height:1.65}
  .dre-equation-block{justify-content:flex-start;padding:14px 48px 14px 16px}
  .dre-equation-number{right:12px}
  .dre-table{min-width:460px}
  .dre-table :is(th,td){min-width:88px;padding:10px 11px}
  .dre-content-media-image{left:0!important;--dre-media-offset-x:0px!important;--dre-media-offset-y:0px!important;--dre-media-shift-left:0px!important;--dre-media-shift-right:0px!important}
  .dre-content-media-image.dre-media-wrap-none,.dre-content-media-image.dre-media-wrap-left,.dre-content-media-image.dre-media-wrap-right{float:none;clear:both;width:100%!important;margin:1.2em auto}
}
@media print{
  .dre-table-scroll{overflow:visible;border-color:#cbd5e1;box-shadow:none}
  .dre-table{min-width:0}
  .dre-content-resource a{color:#172033}
}
