@font-face{font-family:Cairo;src:url('../fonts/cairo/Cairo-Variable.ttf') format('truetype');font-weight:200 1000;font-style:normal;font-display:swap}
.ct-material-page{--ct-material-glass:#ffffffbd;--ct-material-error:#a32d3a;--ct-material-error-bg:#ffedf0;--ct-material-editor:#32283f;--ct-material-editor-top:#43344f;--ct-material-editor-line:#574365;--ct-material-code-ink:#f5edf9;--ct-material-code-muted:#bdb0cc;--ct-material-code-tag:#dfb7ff;font-size:14px}
[data-ct-lesson-theme="dark"] .ct-material-page{--ct-material-glass:#292132d9;--ct-material-error:#ffadb6;--ct-material-error-bg:#48262e;--ct-material-editor:#1e1727;--ct-material-editor-top:#2d2139;--ct-material-editor-line:#4e395f}
.ct-material-page h1,.ct-material-page h2,.ct-material-page h3{color:var(--ct-ink);font-family:inherit;font-weight:850;line-height:1.5}
.ct-material-page :is(p,dl,dd,ul,ol){margin:0}.ct-material-page [id]{scroll-margin-top:172px}
.ct-material-page button{color:inherit}.ct-material-page a:hover{color:var(--ct-accent)}
.ct-material-page .ct-catalog-header-inner{min-height:78px}.ct-material-page .ct-catalog-nav a{padding-block:25px}
.ct-material-page .ct-catalog-nav .ct-is-current::after{bottom:10px}
/* Compact hero: shared catalogue proportions, with a prominent subject illustration. */
.ct-material-hero{position:relative;isolation:isolate;overflow:clip;background:radial-gradient(ellipse at 24% 55%,var(--ct-hero-glow),transparent 57%),var(--ct-hero-surface);border-bottom:1px solid var(--ct-line)}
.ct-material-hero::before{content:"";position:absolute;inset:0;z-index:-1;opacity:.2;background-image:radial-gradient(var(--ct-line-strong) .7px,transparent .7px);background-size:24px 24px;mask-image:linear-gradient(90deg,#000,transparent 60%)}
.ct-material-overline{display:flex;align-items:center;justify-content:space-between;gap:8px 15px;flex-wrap:wrap;padding-block:12px 0;color:var(--ct-muted);font-size:9px;line-height:18px;min-height:30px}
.ct-material-overline nav{display:flex;align-items:center;flex-wrap:wrap;gap:11px}.ct-material-overline [aria-current]{font-weight:750;color:var(--ct-accent)}
.ct-material-edition{display:flex;align-items:center;gap:9px;font:8px ui-monospace,Consolas,monospace;letter-spacing:1.5px;white-space:nowrap}.ct-material-edition>span{font:19px/18px sans-serif;color:var(--ct-accent);margin-left:12px}
.ct-material-edition i,.ct-material-dot{display:inline-block;width:5px;height:5px;background:var(--ct-accent);border-radius:50%;box-shadow:0 0 0 4px color-mix(in srgb,var(--ct-accent) 8%,transparent)}
.ct-material-hero-grid{display:grid;grid-template-columns:1fr 1.06fr;align-items:center;gap:55px;padding-block:7px 10px}
.ct-material-story{min-width:0}.ct-material-eyebrow{display:flex;align-items:center;gap:9px;color:var(--ct-accent);font-size:10px;font-weight:750;line-height:1.6}
.ct-material-level{font-size:9px;line-height:1.4;padding:2px 8px;background:var(--ct-material-glass);border:1px solid var(--ct-line);border-radius:5px;margin-inline-start:5px}
.ct-material-story h1{font-size:clamp(32px,3.25vw,44px);line-height:1.25;letter-spacing:-1.3px;margin-block:6px 3px!important}
.ct-material-story h1 b{color:var(--ct-accent);font-weight:900;unicode-bidi:isolate}.ct-material-title-dot{color:var(--ct-accent)}
.ct-material-tagline{display:table;position:relative;font-size:24px;font-weight:900;line-height:1.5;letter-spacing:-.6px;margin-bottom:5px!important}
.ct-material-tagline em{font-style:normal;color:var(--ct-accent)}.ct-material-tagline svg{position:absolute;inset-inline-end:0;bottom:-2px;width:46%;height:8px;fill:none;stroke:var(--ct-accent);stroke-width:1.8;opacity:.6}
.ct-material-lead{max-width:490px;color:var(--ct-muted);font-size:12px;line-height:1.85}
.ct-material-hero-actions{display:flex;align-items:center;flex-wrap:wrap;gap:10px;margin-top:10px}
.ct-material-outline{display:inline-flex;align-items:center;justify-content:center;gap:18px;padding:12px 18px;min-height:48px;font-size:12px;font-weight:800;border:1px solid var(--ct-line-strong);border-radius:10px;background:var(--ct-material-glass);color:var(--ct-accent)!important;transition:background .2s,border-color .2s,transform .2s}
.ct-material-outline:hover{background:var(--ct-soft);border-color:var(--ct-accent);transform:translateY(-2px)}
.ct-material-hero-actions :is(.ct-catalog-button,.ct-material-outline){font-size:11px;gap:20px;padding:8px 17px;min-height:40px;border-radius:9px}
.ct-material-hero-note{display:flex;align-items:center;flex-wrap:wrap;gap:7px;margin-top:5px!important;font-size:9px;color:var(--ct-muted);line-height:1.6}
.ct-material-hero-note>span{color:var(--ct-success);font-size:12px}.ct-material-hero-note i{width:3px;height:3px;border-radius:50%;background:var(--ct-line-strong);margin-inline:3px}
.ct-material-facts{display:flex;align-items:center;flex-wrap:wrap;border-top:1px solid var(--ct-line);padding-block:8px 9px;gap:12px 26px}
.ct-material-facts>div{display:flex;align-items:center;gap:9px;padding-inline-start:26px;border-inline-start:1px solid var(--ct-line);flex-direction:row-reverse}.ct-material-facts>div:first-child{border:0;padding-inline-start:0}
.ct-material-facts dt{font-size:10px;font-weight:600;color:var(--ct-muted)}.ct-material-facts dd{font:600 17px/1.4 Cairo,sans-serif;color:var(--ct-accent);font-variant-numeric:tabular-nums}.ct-material-facts .ct-material-fact-text{font-size:11px;font-weight:750;white-space:nowrap}
/* Large original subject icon, legible source, and a separate browser preview. */
.ct-material-art{position:relative;height:238px;min-width:0;isolation:isolate;text-align:left}
.ct-material-art-orbit{position:absolute;left:15px;top:9px;width:295px;height:216px;border:1px solid var(--ct-line-strong);border-radius:50%;rotate:-17deg;opacity:.42;z-index:-1}
.ct-material-art-orbit::after{content:"";position:absolute;inset:19px -24px;border:1px dashed var(--ct-line-strong);border-radius:50%;rotate:24deg}
.ct-material-art-caption{position:absolute;left:8px;bottom:1px;font:7px ui-monospace,Consolas,monospace;letter-spacing:1.4px;color:var(--ct-muted)}
.ct-material-spark{position:absolute;color:var(--ct-accent);font-family:Arial,sans-serif;font-weight:400;line-height:1}.ct-material-spark-one{left:136px;top:6px;font-size:23px;z-index:4}.ct-material-spark-two{left:0;bottom:29px;font-size:19px}
.ct-material-emblem{position:absolute;top:32px;left:5px;z-index:3;display:flex;align-items:center;flex-direction:column;justify-content:center;gap:3px;width:151px;height:165px;padding:12px;background:linear-gradient(145deg,var(--ct-surface),var(--ct-soft));border:1px solid var(--ct-line-strong);border-radius:28px;box-shadow:0 18px 35px #5333721c,inset 0 0 0 5px var(--ct-surface);rotate:-7deg}
.ct-material-emblem img{width:116px;height:116px;object-fit:contain;filter:drop-shadow(0 9px 7px #39284e24)}
/* Decorative video cue: keep the HTML shield readable beneath the overlay. */
.ct-material-hero-play{position:absolute;z-index:4;inset-inline-end:-9px;top:45%;display:grid;place-items:center;width:49px;height:49px;border:3px solid var(--ct-surface);border-radius:50%;background:linear-gradient(145deg,var(--ct-accent),var(--ct-accent-strong,var(--ct-accent)));color:var(--ct-on-accent);box-shadow:0 8px 20px color-mix(in srgb,var(--ct-accent) 27%,transparent),inset 0 0 0 1px color-mix(in srgb,var(--ct-on-accent) 18%,transparent);rotate:7deg;translate:0 -50%;pointer-events:none}
.ct-material-hero-play svg{width:23px;height:23px;translate:-1px 0}
.ct-material-hero-play::before,.ct-material-hero-play::after{content:"";position:absolute;inset:-4px;z-index:-1;border:1px solid var(--ct-accent);border-radius:50%;opacity:0;animation:ct-material-hero-play-pulse 2.4s ease-out infinite}
.ct-material-hero-play::after{animation-delay:1.2s}
@keyframes ct-material-hero-play-pulse{0%{transform:scale(.95);opacity:.55}80%,100%{transform:scale(1.75);opacity:0}}
@media(max-width:1100px){.ct-material-hero-play{width:43px;height:43px;inset-inline-end:-8px}.ct-material-hero-play svg{width:21px;height:21px}}
@media(max-width:900px){.ct-material-hero-play{width:36px;height:36px;border-width:2px;inset-inline-end:-7px}.ct-material-hero-play svg{width:19px;height:19px}}
@media(prefers-reduced-motion:reduce){.ct-material-hero-play::before,.ct-material-hero-play::after{animation:none!important;opacity:0}}
.ct-material-emblem>span{max-width:100%;text-align:center;font:800 11px/1.5 Cairo,sans-serif;color:var(--ct-ink);overflow-wrap:anywhere}.ct-material-emblem>span:first-child{font:bold 58px/1.7 ui-monospace,monospace;color:var(--ct-accent)}
.ct-material-code-window{position:absolute;top:10px;left:177px;right:0;background:var(--ct-material-editor);border:1px solid var(--ct-material-editor-line);border-radius:12px;box-shadow:0 14px 30px #44226724;overflow:hidden;rotate:-2deg}
.ct-material-window-top{display:flex;align-items:center;justify-content:space-between;gap:12px;height:29px;padding-inline:12px;background:var(--ct-material-editor-top);border-bottom:1px solid var(--ct-material-editor-line);color:var(--ct-material-code-muted);font:9px ui-monospace,Consolas,monospace}
.ct-material-window-top b{font-size:15px;color:var(--ct-material-code-tag)}.ct-material-window-dots{display:inline-flex;gap:4px}.ct-material-window-dots i{width:5px;height:5px;background:#dfa1ba;border-radius:50%}.ct-material-window-dots i:nth-child(2){background:#decda0}.ct-material-window-dots i:nth-child(3){background:#a9cfb3}
.ct-material-code-lines{padding:9px 0 11px}.ct-material-code-lines>div{display:flex;align-items:center;min-height:23px;gap:12px;padding:0 12px}
.ct-material-code-lines i{font:9px ui-monospace,Consolas,monospace;color:var(--ct-material-code-muted);font-style:normal}
.ct-material-code-lines code{font:12px/1.7 ui-monospace,Consolas,monospace;color:var(--ct-material-code-ink);white-space:nowrap}.ct-material-code-lines code>b{color:var(--ct-material-code-tag);font-weight:400}.ct-material-code-lines code>span{color:var(--ct-material-code-muted)}
.ct-material-code-highlight{background:#c299ec13;border-inline-start:2px solid #cfb0f0}
.ct-material-caret{display:inline-block;width:1px;height:12px;background:var(--ct-material-code-tag);vertical-align:middle;margin-left:3px;animation:ct-material-blink 1.4s steps(2,start) infinite}
@keyframes ct-material-blink{50%{opacity:0}}
.ct-material-browser-window{position:absolute;left:202px;right:17px;bottom:1px;background:var(--ct-surface);border:1px solid var(--ct-line-strong);border-radius:11px;overflow:hidden;box-shadow:0 14px 30px #4e2e701a;rotate:2deg;z-index:2}
.ct-material-browser-bar{display:flex;justify-content:space-between;align-items:center;gap:7px;padding:7px 11px;background:var(--ct-soft);border-bottom:1px solid var(--ct-line);font:8px ui-monospace,Consolas,monospace;color:var(--ct-muted)}
.ct-material-browser-label{display:flex;align-items:center;gap:5px;color:var(--ct-success);font:7px ui-monospace,Consolas,monospace;letter-spacing:.5px}.ct-material-browser-label i{height:4px;width:4px;border-radius:50%;background:currentColor}
.ct-material-browser-content{padding:8px 17px 11px}
.ct-material-browser-content strong{display:block;font:800 27px/1.35 Cairo,sans-serif;letter-spacing:-.7px;color:var(--ct-ink)}.ct-material-browser-content strong>span{color:var(--ct-accent)}.ct-material-browser-content p{font:10px/1.5 Cairo,sans-serif;color:var(--ct-muted)}
.ct-material-art-note{position:absolute;left:157px;top:143px;font:24px sans-serif;color:var(--ct-accent)}
.ct-material-subject-window{position:absolute;inset:23px 0 20px 126px;background:var(--ct-surface);border:1px solid var(--ct-line-strong);border-radius:14px;box-shadow:0 18px 35px #5333721c;overflow:hidden;rotate:2deg}
.ct-material-subject-window>strong{display:block;text-align:center;font:850 clamp(22px,2.3vw,32px)/1.45 Cairo,sans-serif;color:var(--ct-accent);margin:18px 14px 4px 35px;overflow-wrap:anywhere}.ct-material-subject-subtitle{display:block;text-align:center;font:7px ui-monospace,monospace;letter-spacing:2px;color:var(--ct-muted)}
.ct-material-subject-steps{display:flex;align-items:center;justify-content:center;gap:10px;margin:18px 15px;color:var(--ct-accent)}.ct-material-subject-steps>span{display:flex;align-items:center;gap:6px;font:9px ui-monospace,monospace}.ct-material-subject-steps b{font:700 11px Cairo,sans-serif}.ct-material-subject-steps i{width:12px;height:1px;background:var(--ct-line-strong)}
.ct-material-subject-bottom{display:flex;justify-content:space-between;margin:0 18px;padding-block:9px;border-top:1px solid var(--ct-line);font-size:10px;line-height:1.4;color:var(--ct-muted)}
@media(max-width:1100px){
 .ct-material-hero-grid{gap:30px;grid-template-columns:1fr 1fr}
 .ct-material-story h1{font-size:35px}.ct-material-tagline{font-size:21px}
 .ct-material-emblem{width:124px;height:147px;top:41px;border-radius:24px}.ct-material-emblem img{width:99px;height:99px}
 .ct-material-code-window{left:142px}.ct-material-code-lines code{font-size:10px}.ct-material-code-lines>div{gap:8px;padding-inline:9px}
 .ct-material-browser-window{left:161px;right:10px}.ct-material-browser-content strong{font-size:24px}.ct-material-browser-label{font-size:6px}
 .ct-material-art-note{left:133px}.ct-material-subject-window{left:101px}.ct-material-art-caption{font-size:6px;letter-spacing:1px}
}
@media(max-width:900px){
 .ct-material-hero-grid{gap:24px;grid-template-columns:1.08fr 1fr;padding-block:17px}
 .ct-material-story h1{font-size:32px}.ct-material-tagline{font-size:19px}
 .ct-material-lead{font-size:11px}.ct-material-hero-actions{gap:7px}
 .ct-material-hero-actions :is(.ct-catalog-button,.ct-material-outline){padding-inline:12px;font-size:10px;gap:12px}
 .ct-material-art{height:255px}.ct-material-emblem{top:9px;width:95px;height:108px;left:0;border-radius:20px;padding:8px}.ct-material-emblem img{width:77px;height:77px}.ct-material-emblem>span{font-size:9px}
 .ct-material-code-window{left:41px;top:99px;right:0}.ct-material-code-lines code{font-size:10px}
 .ct-material-browser-window{left:103px;right:0;top:12px;bottom:auto;rotate:3deg}.ct-material-browser-content{padding-inline:10px}.ct-material-browser-content strong{font-size:21px}.ct-material-browser-bar{padding-inline:7px}.ct-material-browser-bar>span:last-child{display:none}
 .ct-material-art-caption{bottom:4px;left:40px}.ct-material-art-note{left:8px;top:146px;rotate:30deg}
 .ct-material-art-orbit{left:0;width:260px;height:210px;top:20px}.ct-material-spark-one{left:auto;right:25px;top:-7px}.ct-material-spark-two{bottom:8px;left:8px}
 .ct-material-subject-window{inset:28px 0 15px 35px}.ct-material-subject-window>strong{margin-top:51px;font-size:23px}.ct-material-art-generic .ct-material-emblem{top:1px;left:-4px}.ct-material-subject-steps{margin-block:14px}
 .ct-material-facts{gap:12px 18px}.ct-material-facts>div{padding-inline-start:18px}
}
@media(max-width:650px){
 .ct-material-overline{padding-block:10px 0;font-size:8px;min-height:26px}.ct-material-overline nav{gap:8px}.ct-material-edition{font-size:6px;letter-spacing:.5px}.ct-material-edition>span{display:none}
 .ct-material-hero-grid{grid-template-columns:1fr;gap:13px;padding-block:13px 12px}
 .ct-material-eyebrow{font-size:9px}.ct-material-story h1{font-size:34px;margin-block:6px 3px!important}
 .ct-material-tagline{font-size:22px;letter-spacing:-.6px;margin-bottom:7px!important}
 .ct-material-lead{font-size:11px;line-height:1.85;max-width:none}
 .ct-material-hero-actions{margin-top:10px;gap:9px}.ct-material-hero-actions :is(.ct-catalog-button,.ct-material-outline){font-size:10px;min-height:40px;padding:8px 14px;gap:15px}
 .ct-material-hero-note{font-size:8px;margin-top:5px!important}
 .ct-material-art{height:175px;width:min(100%,410px);margin-inline:auto}
 .ct-material-emblem{top:18px;left:1px;width:99px;height:118px;border-radius:21px;padding:8px}.ct-material-emblem img{width:82px;height:82px}.ct-material-emblem>span{font-size:9px}
 .ct-material-code-window{left:115px;top:0;right:0;rotate:-2deg}.ct-material-window-top{height:24px;font-size:7px;padding-inline:8px}.ct-material-window-top b{font-size:12px}.ct-material-window-dots{gap:3px}.ct-material-window-dots i{width:4px;height:4px}
 .ct-material-code-lines{padding-block:6px}.ct-material-code-lines>div{min-height:18px;padding-inline:7px;gap:6px}.ct-material-code-lines i{font-size:7px}.ct-material-code-lines code{font-size:9px}
 .ct-material-browser-window{left:126px;right:8px;top:auto;bottom:0;rotate:2deg}.ct-material-browser-bar{padding:5px 8px;font-size:6px}.ct-material-browser-bar>span:last-child{display:inline}.ct-material-browser-label{font-size:6px}
 .ct-material-browser-content{padding:6px 11px 7px}.ct-material-browser-content strong{font-size:21px}.ct-material-browser-content p{font-size:8px}
 .ct-material-art-note{left:101px;top:103px;font-size:22px;rotate:0deg}.ct-material-art-caption{left:1px;bottom:8px;font-size:5px;letter-spacing:.6px;max-width:110px;line-height:1.7}
 .ct-material-art-orbit{left:7px;top:2px;width:235px;height:160px}.ct-material-spark-one{left:90px;right:auto;top:1px;font-size:18px}.ct-material-spark-two{left:0;bottom:29px;font-size:14px}
 .ct-material-subject-window{inset:9px 0 8px 80px}.ct-material-subject-window>strong{font-size:22px;margin:19px 10px 4px 30px}.ct-material-subject-subtitle{font-size:6px;letter-spacing:1.1px}.ct-material-subject-steps{gap:7px;margin:12px 10px}.ct-material-subject-steps>span{gap:4px;font-size:8px}.ct-material-subject-steps b{font-size:9px}.ct-material-subject-steps i{width:9px}.ct-material-subject-bottom{font-size:8px;padding-block:7px;margin-inline:16px}.ct-material-art-generic .ct-material-emblem{top:19px;left:0}
 .ct-material-facts{gap:8px 12px;padding-block:10px 11px}.ct-material-facts>div{gap:6px;padding-inline-start:12px}.ct-material-facts dt{font-size:8px}.ct-material-facts dd{font-size:14px}.ct-material-facts .ct-material-fact-text{font-size:9px}
}
@media(max-width:360px){
 .ct-material-edition{display:none}.ct-material-story h1{font-size:29px}.ct-material-tagline{font-size:20px}
 .ct-material-hero-actions{gap:7px}.ct-material-hero-actions :is(.ct-catalog-button,.ct-material-outline){padding-inline:11px;gap:11px}
 .ct-material-emblem{width:84px;height:107px;top:23px}.ct-material-emblem img{width:69px;height:69px}
 .ct-material-code-window{left:98px}.ct-material-code-lines code{font-size:8px}.ct-material-code-lines>div{gap:4px;padding-inline:5px}
 .ct-material-browser-window{left:108px;right:2px}.ct-material-browser-content strong{font-size:19px}.ct-material-art-note{left:83px}.ct-material-art-caption{max-width:93px}
 .ct-material-subject-window{left:65px}.ct-material-subject-window>strong{font-size:18px}.ct-material-subject-steps{gap:5px}
 .ct-material-facts{gap:8px 9px}.ct-material-facts>div{padding-inline-start:9px}.ct-material-facts dt{font-size:7px}
}
/* Overview and curriculum. */
.ct-material-section-nav{position:sticky;top:78px;z-index:20;border-bottom:1px solid var(--ct-line);background:var(--ct-surface)}
.ct-material-section-nav>.ct-catalog-wrap{display:flex;align-items:center;gap:34px;min-height:66px;overflow:auto}
.ct-material-section-nav a{display:inline-flex;align-items:center;gap:8px;font-size:12px;font-weight:750;white-space:nowrap;color:var(--ct-muted);padding-block:22px 20px;border-bottom:2px solid transparent}
.ct-material-section-nav a:hover,.ct-material-section-nav a[aria-current]{color:var(--ct-accent);border-color:var(--ct-accent)}
.ct-material-section-nav a>span{font:10px Cairo,sans-serif;color:var(--ct-accent);background:var(--ct-soft);border-radius:5px;padding:0 6px}
.ct-material-share{display:inline-flex;align-items:center;gap:10px;margin-inline-start:auto;flex-shrink:0;border:0;background:transparent;font-size:11px!important;color:var(--ct-accent)!important;font-weight:750!important}.ct-material-share svg{width:15px;height:15px}
.ct-material-content{padding-top:55px}.ct-material-kicker{font-size:10px;letter-spacing:.4px;font-weight:750;color:var(--ct-accent);margin-bottom:8px!important}
/* Editorial introduction: a subject panel and a quiet, readable text column. */
.ct-material-about{position:relative;isolation:isolate;display:grid;grid-template-columns:minmax(260px,.9fr) minmax(0,1.9fr);border:1px solid var(--ct-line);border-radius:22px;background:var(--ct-surface);box-shadow:0 12px 36px #38234d06;overflow:clip}
.ct-material-about-intro{position:relative;isolation:isolate;display:flex;flex-direction:column;align-items:flex-start;justify-content:center;padding:30px 31px;background:linear-gradient(145deg,var(--ct-hero-surface),var(--ct-soft));border-inline-end:1px solid var(--ct-line);overflow:hidden}
.ct-material-about-intro::before{content:"";position:absolute;z-index:-1;inset:0;background-image:radial-gradient(var(--ct-line-strong) .75px,transparent .75px);background-size:16px 16px;opacity:.28;mask-image:linear-gradient(180deg,transparent 25%,#000)}
.ct-material-about-intro .ct-material-kicker{display:flex;align-items:center;gap:8px;font-size:9px;letter-spacing:.2px;margin-bottom:12px!important}
.ct-material-about-intro .ct-material-kicker>span{width:5px;height:5px;flex-shrink:0;border-radius:50%;background:var(--ct-accent);box-shadow:0 0 0 4px color-mix(in srgb,var(--ct-accent) 8%,transparent)}
.ct-material-about h2{position:relative;font-size:36px;line-height:1.45;letter-spacing:-1px;max-width:12ch;margin:0;overflow-wrap:anywhere}
.ct-material-about-identity{display:flex;align-items:center;gap:13px;margin-top:23px}
.ct-material-about-emblem{display:grid;place-items:center;flex-shrink:0;width:65px;height:65px;border:1px solid var(--ct-line-strong);border-radius:17px;background:var(--ct-material-glass);box-shadow:0 7px 16px #5333720c;rotate:-5deg}
.ct-material-about-emblem img{width:48px;height:48px;object-fit:contain;filter:drop-shadow(0 4px 3px #38234d1a)}
.ct-material-about-emblem>span{font:700 21px ui-monospace,monospace;color:var(--ct-accent)}
.ct-material-about-subject{font-size:13px;font-weight:800;color:var(--ct-accent);line-height:1.6;overflow-wrap:anywhere}
.ct-material-about-subject small{display:block;font:6px/1.6 ui-monospace,Consolas,monospace;letter-spacing:1.1px;color:var(--ct-muted);margin-top:5px}
.ct-material-about-mark{position:absolute;z-index:-1;inset-inline-end:-16px;bottom:-8px;font:700 104px/1 ui-monospace,monospace;letter-spacing:-11px;color:var(--ct-accent);opacity:.065;rotate:-12deg;pointer-events:none}
.ct-material-about-copy{display:flex;flex-direction:column;justify-content:center;align-items:flex-start;justify-self:center;width:100%;max-width:calc(75ch + 76px);gap:18px;min-width:0;padding:31px 38px}
.ct-material-about-rule{width:39px;height:3px;border-radius:3px;background:var(--ct-accent);box-shadow:-9px 0 0 var(--ct-line)}
[dir="ltr"] .ct-material-about-rule{box-shadow:9px 0 0 var(--ct-line)}
.ct-material-about-copy>p,.ct-material-about-copy>.ct-material-rich-description{font-size:14px;font-weight:500;line-height:2.2;color:var(--ct-muted);overflow-wrap:anywhere;max-width:75ch}
.ct-material-about-endmark{display:flex;align-items:center;gap:5px;color:var(--ct-line-strong)}
.ct-material-about-endmark i{width:4px;height:4px;border-radius:50%;background:currentColor}.ct-material-about-endmark i:first-child{width:18px;border-radius:3px;color:var(--ct-accent);opacity:.65}
@media(max-width:900px){.ct-material-about{grid-template-columns:minmax(215px,.85fr) minmax(0,1.4fr)}.ct-material-about-intro{padding:25px 23px}.ct-material-about h2{font-size:30px}.ct-material-about-copy{padding:26px;gap:15px}.ct-material-about-copy>p,.ct-material-about-copy>.ct-material-rich-description{font-size:12px;line-height:2.15}.ct-material-about-emblem{width:55px;height:55px}.ct-material-about-emblem img{width:42px;height:42px}.ct-material-about-subject small{font-size:5px;letter-spacing:.8px}}
@media(max-width:650px){.ct-material-about{grid-template-columns:1fr;border-radius:18px}.ct-material-about-intro{padding:23px 22px;border-inline-end:0;border-bottom:1px solid var(--ct-line)}.ct-material-about-intro .ct-material-kicker{font-size:8px;margin-bottom:8px!important}.ct-material-about h2{font-size:30px;max-width:none;line-height:1.5}.ct-material-about-identity{margin-top:17px;gap:11px}.ct-material-about-emblem{width:48px;height:48px;border-radius:13px}.ct-material-about-emblem img{width:36px;height:36px}.ct-material-about-subject{font-size:12px}.ct-material-about-subject small{font-size:6px}.ct-material-about-mark{font-size:133px;inset-inline-end:8px;bottom:-10px}.ct-material-about-copy{padding:23px 22px;gap:15px}.ct-material-about-copy>p,.ct-material-about-copy>.ct-material-rich-description{font-size:12px;line-height:2.2}.ct-material-about-rule{width:30px;height:2px}}

.ct-material-outcomes{padding-block:35px 42px}.ct-material-section-heading{display:flex;align-items:center;justify-content:space-between;gap:20px;margin-bottom:24px}
.ct-material-section-heading h2{font-size:26px;letter-spacing:-.6px}.ct-material-section-note{font-size:10px;color:var(--ct-muted);display:flex;align-items:center;gap:10px}.ct-material-section-note>span{font:27px sans-serif;color:var(--ct-accent)}
/* Numbered skill cards; decorative icons are separate from editable outcome text. */
.ct-material-outcomes>.ct-material-section-heading{align-items:center;margin-bottom:25px}
.ct-material-outcomes .ct-material-kicker{display:flex;align-items:center;gap:8px;margin-bottom:9px!important}
.ct-material-outcomes-dot{width:5px;height:5px;border-radius:50%;background:var(--ct-accent);box-shadow:0 0 0 4px color-mix(in srgb,var(--ct-accent) 8%,transparent)}
.ct-material-outcomes .ct-material-section-heading h2{font-size:28px}
.ct-material-outcomes .ct-material-section-note{gap:10px;padding:9px 13px;border:1px solid var(--ct-line);border-radius:8px;background:var(--ct-surface)}
.ct-material-outcomes .ct-material-outcomes-flower{font:23px/1 Arial,sans-serif;color:var(--ct-accent)}
.ct-material-outcome-grid{list-style:none;padding:0;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px}
.ct-material-outcome-card{position:relative;isolation:isolate;display:flex;flex-direction:column;gap:19px;min-width:0;padding:21px 23px 22px;border:1px solid var(--ct-line);border-radius:17px;background:linear-gradient(135deg,var(--ct-surface) 55%,color-mix(in srgb,var(--ct-soft) 65%,var(--ct-surface)));box-shadow:0 5px 15px #38234d03;transition:border-color .2s,box-shadow .2s}
.ct-material-outcome-card::before{content:"";position:absolute;top:-1px;inset-inline-start:24px;width:39px;height:2px;border-radius:2px;background:var(--ct-accent);opacity:.65}
.ct-material-outcome-top{display:flex;align-items:center;justify-content:space-between;gap:15px}
.ct-material-outcome-icon{display:grid;place-items:center;width:45px;height:45px;flex-shrink:0;color:var(--ct-accent);background:var(--ct-soft);border:1px solid var(--ct-line);border-radius:13px;box-shadow:inset 0 0 0 3px var(--ct-surface)}
.ct-material-outcome-icon svg{width:25px;height:25px}
.ct-material-outcome-index{display:flex;align-items:center;gap:6px;font:400 28px/1 ui-monospace,Consolas,monospace;letter-spacing:-1.5px;color:var(--ct-accent);opacity:.46}
.ct-material-outcome-index i{font:300 16px/1 ui-monospace,Consolas,monospace;opacity:.6;margin-top:10px}
.ct-material-outcome-title{display:block;font-size:14px;line-height:1.85;font-weight:800;color:var(--ct-ink);overflow-wrap:anywhere}
.ct-material-outcome-card:focus-within{border-color:var(--ct-accent);box-shadow:0 0 0 2px color-mix(in srgb,var(--ct-accent) 18%,transparent)}
@media(hover:hover){.ct-material-outcome-card:hover{border-color:var(--ct-line-strong);box-shadow:0 9px 23px #5333720c}}
.ct-material-outcome-empty{grid-column:1/-1;display:flex;align-items:center;justify-content:center;gap:15px;padding:28px;border:1px dashed var(--ct-line-strong);border-radius:17px;background:var(--ct-surface);color:var(--ct-muted);font-size:13px;font-weight:650}
@media(max-width:900px){.ct-material-outcome-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.ct-material-outcomes .ct-material-section-heading h2{font-size:25px}.ct-material-outcome-card{padding:20px;gap:17px}.ct-material-outcome-title{font-size:13px}}
@media(max-width:650px){.ct-material-outcomes>.ct-material-section-heading{margin-bottom:20px}.ct-material-outcomes .ct-material-section-heading h2{font-size:23px;line-height:1.6}.ct-material-outcomes .ct-material-section-note{display:none}.ct-material-outcome-grid{gap:11px}.ct-material-outcome-card{padding:16px 15px 17px;border-radius:14px;gap:16px}.ct-material-outcome-card::before{inset-inline-start:16px;width:28px}.ct-material-outcome-icon{width:39px;height:39px;border-radius:11px}.ct-material-outcome-icon svg{width:22px;height:22px}.ct-material-outcome-index{font-size:24px;gap:4px}.ct-material-outcome-index i{font-size:13px}.ct-material-outcome-title{font-size:12px;line-height:1.9}.ct-material-outcome-empty{padding:24px 18px;font-size:12px}}
@media(max-width:360px){.ct-material-outcome-grid{gap:9px}.ct-material-outcome-card{padding:14px 12px;gap:14px}.ct-material-outcome-icon{width:35px;height:35px}.ct-material-outcome-icon svg{width:20px;height:20px}.ct-material-outcome-index{font-size:22px}.ct-material-outcome-title{font-size:11px}}

.ct-material-check{display:grid;place-items:center;flex-shrink:0;width:24px;height:24px;border-radius:50%;background:var(--ct-success-bg);color:var(--ct-success);font-size:12px}
.ct-material-body-grid{display:grid;grid-template-columns:minmax(0,1fr) 296px;gap:42px;align-items:start;padding-top:27px;border-top:1px solid var(--ct-line)}
/* Video curriculum: a consistent type scale and generous, scan-friendly lesson rows. */
.ct-material-curriculum{min-width:0}
.ct-material-curriculum-header{display:flex;align-items:center;justify-content:space-between;gap:24px;margin-bottom:26px}
.ct-material-curriculum-intro{min-width:0}.ct-material-curriculum-intro .ct-material-kicker{display:flex;align-items:center;gap:8px;font-size:10px;letter-spacing:0;margin-bottom:7px!important}
.ct-material-curriculum-intro .ct-material-kicker>span{width:5px;height:5px;background:var(--ct-accent);border-radius:50%;box-shadow:0 0 0 4px var(--ct-soft)}
.ct-material-curriculum-header h2{font-size:30px;font-weight:800;line-height:1.5;letter-spacing:-.4px;margin:0}
.ct-material-section-description{font-size:13px;line-height:1.8;font-weight:500;color:var(--ct-muted);margin-top:6px!important}
.ct-material-curriculum-meta{display:flex;flex-direction:column;align-items:flex-end;gap:12px;flex-shrink:0}
.ct-material-curriculum-stats{display:flex;align-items:center;padding:12px 17px;border:1px solid var(--ct-line);border-radius:12px;background:var(--ct-surface)}
.ct-material-curriculum-stats>span{display:flex;align-items:baseline;gap:7px;font-size:11px;line-height:1.5;color:var(--ct-muted);white-space:nowrap}
.ct-material-curriculum-stats>span+span{border-inline-start:1px solid var(--ct-line);padding-inline-start:14px;margin-inline-start:14px}
.ct-material-curriculum-stats b{font-size:20px;font-weight:750;color:var(--ct-ink);font-variant-numeric:tabular-nums}
.ct-material-curriculum-tools{display:flex;align-items:stretch;gap:10px;margin-bottom:16px}
.ct-material-search{display:flex;align-items:center;gap:11px;flex:1;min-width:0;border:1px solid var(--ct-control-line);border-radius:12px;padding:0 16px;background:var(--ct-surface);color:var(--ct-muted);transition:border-color .2s,box-shadow .2s}
.ct-material-search:focus-within{border-color:var(--ct-accent);box-shadow:0 0 0 3px color-mix(in srgb,var(--ct-accent) 12%,transparent)}
.ct-material-search svg{width:19px;height:19px;flex-shrink:0}
.ct-material-search input{width:100%;min-width:0;min-height:51px;border:0;background:transparent;color:var(--ct-ink);padding:12px 0;font:500 13px/1.8 Cairo,sans-serif;outline:none!important;box-shadow:none}
.ct-material-search input::placeholder{color:var(--ct-muted);opacity:1}
.ct-material-expand{display:flex;align-items:center;justify-content:center;gap:10px;min-width:104px;min-height:51px;padding:10px 16px;border:1px solid var(--ct-control-line);border-radius:12px;background:var(--ct-surface);color:var(--ct-ink)!important;font:650 12px/1.8 Cairo,sans-serif!important;white-space:nowrap;transition:background .2s,border-color .2s}
.ct-material-expand:hover:not(:disabled){background:var(--ct-soft);border-color:var(--ct-accent)}.ct-material-expand:disabled{opacity:.5;cursor:not-allowed}
.ct-material-search-status{font-size:12px;color:var(--ct-muted);margin-bottom:16px!important}.ct-material-search-status:empty{display:none}
.ct-material-chapters{display:grid;gap:16px}
.ct-material-chapter{border:1px solid var(--ct-line);border-radius:17px;background:var(--ct-surface);overflow:clip;box-shadow:0 4px 14px #38234d03;transition:border-color .2s,box-shadow .2s}
.ct-material-chapter[open]{border-color:var(--ct-line-strong)}
.ct-material-chapter summary{list-style:none;display:flex;align-items:center;gap:13px;min-height:78px;padding:18px 22px;cursor:pointer;transition:background .2s}
.ct-material-chapter summary::-webkit-details-marker{display:none}
.ct-material-chapter[open]>summary{background:linear-gradient(100deg,color-mix(in srgb,var(--ct-soft) 62%,var(--ct-surface)),var(--ct-surface))}
.ct-material-chapter summary:hover{background:var(--ct-soft)}
.ct-material-chapter summary:focus-visible{outline:2px solid var(--ct-accent);outline-offset:-4px;border-radius:16px}
.ct-material-chapter-number{display:grid;place-items:center;flex-shrink:0;width:38px;height:38px;border-radius:11px;background:var(--ct-soft);border:1px solid var(--ct-line);font:700 14px/1 Cairo,sans-serif;color:var(--ct-accent);font-variant-numeric:tabular-nums}
.ct-material-page .ct-material-chapter-title{flex:1;min-width:0;margin:0;font-size:16px;font-weight:750;line-height:1.8}
.ct-material-chapter-heading{display:block;overflow-wrap:anywhere;font-size:inherit;font-weight:inherit}
.ct-material-chapter-count{flex-shrink:0;padding:4px 10px;border:1px solid var(--ct-line);border-radius:7px;color:var(--ct-muted);background:var(--ct-surface);font-size:11px;line-height:1.6;font-weight:600;white-space:nowrap}
.ct-material-chapter-toggle{display:grid;place-items:center;width:27px;height:27px;flex-shrink:0;color:var(--ct-muted)}
.ct-material-chapter-toggle svg{width:16px;height:16px;transition:rotate .2s}.ct-material-chapter[open] .ct-material-chapter-toggle svg{rotate:180deg}
.ct-material-lessons{padding:5px 20px!important;list-style:none;border-top:1px solid var(--ct-line)}
.ct-material-lessons li+li{border-top:1px solid color-mix(in srgb,var(--ct-line) 65%,var(--ct-surface))}
.ct-material-lessons a{display:flex;align-items:center;gap:15px;min-height:89px;padding:16px 4px;border-radius:9px;transition:background .2s}
.ct-material-lessons a:focus-visible{outline:2px solid var(--ct-accent);outline-offset:-2px}
.ct-material-lesson-number{width:22px;flex-shrink:0;text-align:center;color:var(--ct-muted);font:600 11px/1.5 Cairo,sans-serif;font-variant-numeric:tabular-nums}
.ct-material-video-tile{position:relative;isolation:isolate;display:grid;place-items:center;flex-shrink:0;width:76px;height:51px;border:1px solid var(--ct-material-editor-line);border-radius:10px;overflow:hidden;background:radial-gradient(ellipse at 10% 90%,var(--ct-material-editor-line),transparent 70%),linear-gradient(135deg,var(--ct-material-editor-top),var(--ct-material-editor));color:var(--ct-material-code-ink);box-shadow:inset 0 0 0 4px color-mix(in srgb,var(--ct-material-code-ink) 4%,transparent)}
.ct-material-video-tile::before,.ct-material-video-tile::after{content:"";position:absolute;z-index:-1;width:61px;height:61px;border:1px solid var(--ct-material-code-muted);border-radius:50%;opacity:.17}
.ct-material-video-tile::before{inset-inline-start:-32px;bottom:-39px}.ct-material-video-tile::after{inset-inline-end:-29px;top:-38px}
.ct-material-video-play{display:grid;place-items:center;width:28px;height:28px;border:1px solid color-mix(in srgb,var(--ct-material-code-ink) 38%,transparent);border-radius:50%;background:color-mix(in srgb,var(--ct-material-code-ink) 10%,transparent);transition:background .2s,scale .2s}
.ct-material-video-play svg{width:14px;height:14px;translate:-1px 0}
.ct-material-lesson-title{flex:1;min-width:0;font-size:14px;font-weight:700;line-height:1.85;color:var(--ct-ink);overflow-wrap:anywhere}
.ct-material-lesson-title small{display:block;font-size:11px;font-weight:500;line-height:1.7;color:var(--ct-muted);margin-top:3px;text-align:start}
.ct-material-lesson-open{display:flex;align-items:center;gap:10px;flex-shrink:0;margin-inline-start:auto;color:var(--ct-muted);font-size:11px;font-weight:650}
.ct-material-lesson-open svg{width:29px;height:29px;padding:6px;border:1px solid var(--ct-line);border-radius:50%;color:var(--ct-accent);background:var(--ct-surface)}
[dir="ltr"] .ct-material-lesson-open svg{rotate:180deg}
[dir="rtl"] .ct-material-curriculum-intro,[dir="rtl"] .ct-material-chapter-title,[dir="rtl"] .ct-material-lesson-title{text-align:right}
.ct-material-empty-search{display:grid!important;place-items:center;width:52px;height:52px;margin:0 auto 15px;border-radius:15px;background:var(--ct-soft);color:var(--ct-accent)}.ct-material-empty-search svg{width:26px;height:26px}
@media(hover:hover){.ct-material-lessons a:hover{background:var(--ct-soft)}.ct-material-lessons a:hover .ct-material-video-play{background:color-mix(in srgb,var(--ct-material-code-ink) 24%,transparent);scale:1.08}.ct-material-lessons a:hover .ct-material-lesson-open{color:var(--ct-accent)}}
.ct-material-curriculum-end{display:flex;align-items:center;justify-content:center;gap:10px;margin-block:25px!important;font-size:11px;color:var(--ct-muted)}.ct-material-curriculum-end>span{color:var(--ct-accent);font-size:16px}
.ct-material-study-card{padding:25px 23px;border:1px solid var(--ct-line);border-radius:17px;background:linear-gradient(135deg,var(--ct-soft),var(--ct-surface));box-shadow:var(--ct-shadow)}
.ct-material-study-icon{display:flex;align-items:center;gap:13px;padding-bottom:23px;margin-bottom:20px;border-bottom:1px solid var(--ct-line)}
.ct-material-study-icon img{width:46px;height:46px;background:var(--ct-surface);padding:5px;border:1px solid var(--ct-line);border-radius:10px}.ct-material-study-icon>span{font-size:18px;font-weight:850}.ct-material-study-icon small{display:block;font-size:10px;font-weight:500;color:var(--ct-muted);margin-top:3px}
.ct-material-study-card h2{font-size:21px}.ct-material-study-card>p{font-size:11px;line-height:2.1;color:var(--ct-muted);margin-block:10px 21px!important}.ct-material-study-card .ct-catalog-button{display:flex;width:100%;font-size:12px;min-height:46px;padding:10px 15px;justify-content:space-between}
.ct-material-first-title{display:block;color:var(--ct-muted);font-size:10px;text-align:center;margin-top:10px}
.ct-material-study-footer{display:flex;justify-content:space-between;gap:10px;border-top:1px solid var(--ct-line);padding-top:15px;margin-top:20px;font-size:10px;color:var(--ct-muted)}.ct-material-study-footer>span:first-child{color:var(--ct-success);font-weight:800}
/* Preparation and goals: two distinct stages before the curriculum. */
.ct-material-preparation{display:grid;gap:18px;padding-bottom:32px}
.ct-material-prep-section{--ct-prep-accent:var(--ct-accent);--ct-prep-wash:color-mix(in srgb,var(--ct-prep-accent) 6%,var(--ct-surface));position:relative;display:grid;grid-template-columns:285px minmax(0,1fr);border:1px solid var(--ct-line);border-radius:20px;background:var(--ct-surface);box-shadow:0 8px 24px #38234d04}
.ct-material-prep-goals{--ct-prep-accent:var(--ct-success)}
.ct-material-prep-heading{position:relative;isolation:isolate;display:flex;flex-direction:column;align-items:flex-start;justify-content:center;gap:17px;padding:24px 26px;border-inline-end:1px solid var(--ct-line);border-start-start-radius:19px;border-end-start-radius:19px;background:linear-gradient(135deg,color-mix(in srgb,var(--ct-prep-accent) 10%,var(--ct-surface)),var(--ct-prep-wash));overflow:hidden}
.ct-material-prep-heading::after{content:"";position:absolute;z-index:-1;width:130px;height:130px;border:1px solid var(--ct-prep-accent);border-radius:50%;inset-inline-end:-63px;bottom:-68px;box-shadow:0 0 0 17px var(--ct-prep-wash),0 0 0 18px var(--ct-line);opacity:.25}
.ct-material-prep-symbol{display:grid;place-items:center;flex-shrink:0;width:49px;height:49px;border:1px solid color-mix(in srgb,var(--ct-prep-accent) 22%,var(--ct-line));border-radius:15px;color:var(--ct-prep-accent);background:var(--ct-surface);box-shadow:0 5px 12px #38234d07,inset 0 0 0 4px var(--ct-prep-wash)}
.ct-material-prep-symbol svg{width:27px;height:27px}
.ct-material-prep-number{position:absolute;top:28px;inset-inline-end:26px;font:500 38px/1 ui-monospace,Consolas,monospace;letter-spacing:-2px;color:var(--ct-prep-accent);opacity:.22}
.ct-material-prep-headline{min-width:0}.ct-material-prep-heading .ct-material-kicker{font-size:9px;color:var(--ct-prep-accent);margin-bottom:5px!important}
.ct-material-prep-heading h2{font-size:25px;line-height:1.55;letter-spacing:-.6px;margin:0;overflow-wrap:anywhere}
.ct-material-prep-body{display:flex;align-items:center;min-width:0;padding:18px 28px}
.ct-material-prep-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));column-gap:28px;align-content:center;list-style:none;padding:0;width:100%}
.ct-material-prep-list li{display:flex;align-items:center;gap:12px;min-width:0;padding:13px 0;border-bottom:1px solid var(--ct-line);font-size:13px;line-height:1.9;font-weight:650;color:var(--ct-ink)}
.ct-material-prep-list li:last-child{border-bottom:0}.ct-material-prep-list li:last-child:nth-child(odd){grid-column:1/-1}.ct-material-prep-list li:nth-last-child(2):nth-child(odd){border-bottom:0}
.ct-material-prep-label{min-width:0;overflow-wrap:anywhere}
.ct-material-prep-marker{display:grid;place-items:center;flex-shrink:0;width:28px;height:28px;border:1px solid color-mix(in srgb,var(--ct-prep-accent) 16%,var(--ct-line));border-radius:9px;background:var(--ct-prep-wash);color:var(--ct-prep-accent);font:600 10px/1 ui-monospace,Consolas,monospace}
.ct-material-prep-marker svg{width:17px;height:17px}
.ct-material-prep-list li:focus-within .ct-material-prep-marker{border-color:var(--ct-prep-accent)}
[dir="rtl"] .ct-material-prep-heading,[dir="rtl"] .ct-material-prep-label{text-align:right}
@media(max-width:900px){.ct-material-prep-section{grid-template-columns:235px minmax(0,1fr)}.ct-material-prep-heading{padding:22px;gap:15px}.ct-material-prep-heading h2{font-size:23px}.ct-material-prep-body{padding:15px 23px}.ct-material-prep-list{column-gap:19px}.ct-material-prep-list li{font-size:11px;gap:9px}.ct-material-prep-number{font-size:33px;inset-inline-end:22px}.ct-material-prep-marker{width:25px;height:25px;font-size:9px}}
@media(max-width:650px){.ct-material-preparation{gap:15px;padding-bottom:26px}.ct-material-prep-section{grid-template-columns:1fr;border-radius:17px}.ct-material-prep-heading{flex-direction:row;align-items:center;justify-content:flex-start;gap:13px;padding:21px 20px;border-inline-end:0;border-bottom:1px solid var(--ct-line);border-radius:16px 16px 0 0}.ct-material-prep-symbol{width:45px;height:45px;border-radius:13px}.ct-material-prep-symbol svg{width:25px;height:25px}.ct-material-prep-number{display:none}.ct-material-prep-heading .ct-material-kicker{font-size:8px;margin-bottom:4px!important}.ct-material-prep-heading h2{font-size:23px}.ct-material-prep-body{padding:9px 21px}.ct-material-prep-list{grid-template-columns:1fr}.ct-material-prep-list li{padding:13px 0;gap:11px;font-size:12px}.ct-material-prep-list li:nth-last-child(2):nth-child(odd){border-bottom:1px solid var(--ct-line)}.ct-material-prep-list li:last-child{border-bottom:0}.ct-material-prep-marker{width:26px;height:26px;font-size:9px}}
@media(max-width:360px){.ct-material-prep-heading{padding:19px 16px;gap:11px}.ct-material-prep-heading h2{font-size:21px}.ct-material-prep-body{padding-inline:17px}.ct-material-prep-list li{font-size:11px}}

.ct-material-next{display:flex;align-items:center;gap:26px;padding:32px;margin-block:40px 20px;border:1px solid var(--ct-line);border-radius:17px;background:var(--ct-soft)}
.ct-material-next-symbol{font:500 40px ui-monospace,monospace;color:var(--ct-accent);letter-spacing:-6px;flex-shrink:0}.ct-material-next h2{font-size:23px}.ct-material-next p:not(.ct-material-kicker){font-size:11px;color:var(--ct-muted);margin-top:7px}.ct-material-next .ct-material-outline{margin-inline-start:auto;flex-shrink:0}
.ct-material-footer{display:flex;align-items:center;gap:30px;padding-block:30px 34px;font-size:13px;font-weight:600;line-height:1.7;color:var(--ct-muted)}.ct-material-footer p{margin:0;color:var(--ct-ink);font-size:14.5px;font-weight:700}.ct-material-footer p>span{color:var(--ct-muted);font-size:13px;font-weight:600}.ct-material-footer>div a{color:var(--ct-ink);font-size:14px;font-weight:700;text-underline-offset:4px}.ct-material-footer>div a:hover{color:var(--ct-accent);text-decoration:underline}.ct-material-footer>a:last-child{color:var(--ct-accent);font-size:14px;font-weight:800;text-underline-offset:4px}.ct-material-footer>a:last-child:hover{color:var(--ct-accent-hover);text-decoration:underline}.ct-material-footer a:focus-visible{outline:2px solid var(--ct-accent);outline-offset:4px;border-radius:6px}.ct-material-footer .ct-catalog-logo{color:var(--ct-ink);gap:7px}.ct-material-footer .ct-catalog-logo>span{font-size:17px}.ct-material-footer .ct-catalog-logo img{width:38px;height:28px}.ct-material-footer p>span{margin-inline-start:13px}.ct-material-footer>div{display:flex;gap:20px;margin-inline-start:auto}
/* Bootstrap modal, admin editing and all dynamically updated states. */
.ct-material-page .modal-content{color:var(--ct-ink);background:var(--ct-surface);border:1px solid var(--ct-line);border-radius:18px;box-shadow:var(--ct-shadow)}
.ct-material-page .modal-header,.ct-material-page .modal-footer{border-color:var(--ct-line);padding:20px;gap:12px}.ct-material-page .modal-title{font-size:22px;color:var(--ct-ink);font-weight:800}.ct-material-page .modal-body{padding:23px}.ct-material-modal .modal-body>p:first-child{color:var(--ct-muted);font-size:13px;margin-bottom:20px}.ct-material-page .modal label{display:block;font-size:12px;margin-bottom:7px}
.ct-material-page .modal :is(input,select,textarea){color:var(--ct-ink);background-color:var(--ct-page);border-color:var(--ct-control-line);font:500 13px/1.8 Cairo,sans-serif}
.ct-material-page .modal :is(input,textarea)::placeholder{color:var(--ct-muted)}.ct-material-page .modal :is(input,select,textarea):focus{border-color:var(--ct-accent);box-shadow:0 0 0 3px color-mix(in srgb,var(--ct-accent) 20%,transparent)}
.ct-material-page .modal .btn-primary{background:var(--ct-accent);border-color:var(--ct-accent);color:var(--ct-on-accent)}.ct-material-page .modal :is(.btn-secondary,.btn-outline-secondary){background:var(--ct-soft);border-color:var(--ct-control-line);color:var(--ct-ink)}
.ct-material-page .modal .btn:disabled{opacity:.55}.ct-material-page .modal .alert-danger{background:var(--ct-material-error-bg);color:var(--ct-material-error);border-color:var(--ct-material-error)}.ct-material-page .modal .alert-warning{background:var(--ct-warning-bg);color:var(--ct-warning);border-color:var(--ct-warning)}
.ct-material-page .ct-lesson-image-avatar{background:var(--ct-soft);border-color:var(--ct-control-line)}.ct-material-page .ct-lesson-image-avatar svg{color:var(--ct-muted)}
.ct-material-page :is(.ct-lesson-image-hint,.ct-lesson-slug-preview){color:var(--ct-muted)}.ct-material-page :is(.ct-lesson-image-error,.ct-lesson-create-error){color:var(--ct-material-error);font-size:12px;min-height:1.3em}
.ct-material-page .modal .text-success{color:var(--ct-success)!important}.ct-material-page .modal .text-danger{color:var(--ct-material-error)!important}.ct-material-page .modal .text-muted{color:var(--ct-muted)!important}
.ct-material-page #ctLessonSlugStatus{font-size:12px;color:var(--ct-muted)}.ct-material-page #ctLessonSlugStatus[data-state="available"]{color:var(--ct-success)}.ct-material-page #ctLessonSlugStatus[data-state="checking"]{color:var(--ct-warning)}.ct-material-page #ctLessonSlugStatus:is([data-state="taken"],[data-state="error"]){color:var(--ct-material-error)}
.ct-material-page .select2-container .select2-selection--single{height:44px;border:1px solid var(--ct-control-line);border-radius:7px;background:var(--ct-page);padding-top:7px}.ct-material-page .select2-container .select2-selection__rendered{color:var(--ct-ink);font-size:12px}.ct-material-page .select2-container .select2-selection__placeholder{color:var(--ct-muted)}.ct-material-page .select2-container .select2-selection__arrow{top:8px}.ct-material-page .select2-dropdown{color:var(--ct-ink);background:var(--ct-surface);border-color:var(--ct-control-line)}.ct-material-page .select2-search__field{color:var(--ct-ink);background:var(--ct-page);border:1px solid var(--ct-control-line)!important}.ct-material-page .select2-results__option--highlighted[aria-selected]{color:var(--ct-on-accent)!important;background:var(--ct-accent)!important}.ct-material-page .select2-results__option[aria-selected="true"]{background:var(--ct-soft);color:var(--ct-ink)}
.ct-material-copy-status{font-size:12px;min-height:22px;margin-top:12px!important;color:var(--ct-success)}.ct-material-copy-status[data-error]{color:var(--ct-material-error)}
[data-ct-lesson-theme="dark"] .ct-material-page .btn-close{filter:invert(1) grayscale(1) brightness(2)}
.ct-material-page [contenteditable]{outline:1px dashed var(--ct-control-line);outline-offset:4px;border-radius:3px}.ct-material-page [contenteditable]:focus{outline:2px solid var(--ct-accent)}.ct-material-page [aria-busy="true"]{opacity:.6}
.ct-material-save-status:not(:empty){position:fixed;bottom:24px;inset-inline-end:24px;z-index:1100;background:var(--ct-success-bg);color:var(--ct-success);border:1px solid currentColor;padding:12px 20px;border-radius:10px;box-shadow:var(--ct-shadow);max-width:calc(100% - 48px);font-size:12px}
.ct-material-save-status[data-error]{background:var(--ct-material-error-bg);color:var(--ct-material-error)}
[dir="rtl"] .ct-material-page{text-align:right}[dir="ltr"] .ct-material-page{text-align:left}
[dir="rtl"] .ct-material-chapter-heading small,[dir="rtl"] .ct-material-lesson-title small{text-align:right}
[dir="rtl"] .ct-material-page .modal-header .btn-close{margin:0 auto 0 0}
[dir="rtl"] .ct-material-page .modal-footer{justify-content:flex-start;direction:ltr;flex-wrap:wrap}[dir="rtl"] .ct-material-page .modal-footer>*{direction:rtl;flex:0 1 auto}
[dir="rtl"] .ct-material-admin-actions{display:flex;justify-content:flex-end;margin-right:auto}[dir="rtl"] .ct-material-page .ct-lesson-image-actions{justify-content:left;width:100%}
.ct-material-admin-actions{flex-shrink:0}.ct-material-admin-actions .ct-catalog-button{white-space:nowrap}
@media(max-width:650px){.ct-material-curriculum>.ct-material-section-heading{flex-wrap:wrap}.ct-material-admin-actions{margin-inline-start:auto}.ct-material-admin-actions .ct-catalog-button{font-size:11px;padding:8px 14px}}
@media(min-width:1101px){.ct-material-aside{position:sticky;top:171px}}
@media(max-width:1100px){.ct-material-body-grid{gap:26px;grid-template-columns:minmax(0,1fr) 270px}.ct-material-section-nav>.ct-catalog-wrap{gap:23px}.ct-material-next{gap:19px;padding:25px}.ct-material-next h2{font-size:20px}}
@media(max-width:900px){.ct-material-page .ct-catalog-wrap{width:calc(100% - 44px)}.ct-material-page .ct-catalog-header-inner{flex-wrap:wrap;gap:0;min-height:72px;padding-block:13px}.ct-material-page .ct-catalog-nav{order:3;display:flex;width:100%;justify-content:center;gap:27px;margin-top:12px;border-top:1px solid var(--ct-line);overflow:auto}.ct-material-page .ct-catalog-nav a{padding-block:12px 0}.ct-material-page .ct-catalog-nav>span{padding-top:12px}.ct-material-page .ct-catalog-nav .ct-is-current::after{display:none}.ct-material-section-nav{top:0;position:relative}.ct-material-page [id]{scroll-margin-top:145px}.ct-material-study-card{padding:20px 17px}.ct-material-section-heading h2{font-size:22px}.ct-material-next-symbol{display:none}.ct-material-next .ct-material-outline{font-size:10px;gap:10px}.ct-material-footer{gap:20px;flex-wrap:wrap}}
@media(max-width:650px){.ct-material-page .ct-catalog-wrap{width:calc(100% - 36px)}.ct-material-page .ct-catalog-logo>span{font-size:17px}.ct-material-page .ct-catalog-logo img{width:39px;height:31px}.ct-material-page .ct-catalog-header-actions{gap:8px}.ct-material-page .ct-catalog-header-actions .ct-catalog-button-small{display:inline-flex;font-size:10px;padding:8px 11px;min-height:37px}.ct-material-page .ct-catalog-theme{width:37px;height:37px;border-radius:10px;padding:8px}.ct-material-page .ct-catalog-nav{gap:24px;font-size:10px;justify-content:flex-start}.ct-material-page .ct-catalog-nav>span{display:none}.ct-material-page .ct-catalog-header-inner{padding-block:12px 9px}.ct-material-section-nav>.ct-catalog-wrap{gap:24px;min-height:55px}.ct-material-section-nav a{font-size:10px;padding-block:17px}.ct-material-share{font-size:10px!important}.ct-material-content{padding-top:31px}.ct-material-kicker{font-size:9px}.ct-material-outcomes{padding-block:27px}.ct-material-section-heading{gap:12px;align-items:flex-start;margin-bottom:19px}.ct-material-section-heading h2{font-size:22px}.ct-material-section-note{display:none}.ct-material-check{width:20px;height:20px;font-size:10px}.ct-material-aside{display:grid;gap:16px}.ct-material-study-card{padding:22px}.ct-material-study-card .ct-catalog-button{width:auto;display:inline-flex;gap:25px}.ct-material-first-title{text-align:start}.ct-material-next{flex-wrap:wrap;padding:23px;gap:18px;margin-top:30px}.ct-material-next h2{font-size:21px}.ct-material-next p:not(.ct-material-kicker){font-size:11px;line-height:2}.ct-material-next .ct-material-outline{margin-inline-start:0;font-size:11px}.ct-material-footer{padding-block:23px;gap:16px;font-size:9px}.ct-material-footer p{order:3;width:100%;display:flex;justify-content:space-between;gap:10px;flex-wrap:wrap}.ct-material-footer p>span{margin:0}.ct-material-footer>div{gap:16px}.ct-material-page .modal-dialog{margin:15px}.ct-material-page .modal-title{font-size:20px}.ct-material-page .modal-header,.ct-material-page .modal-footer{padding:16px}.ct-material-page .modal-body{padding:18px}.ct-material-page .modal label{font-size:11px}.ct-material-page [id]{scroll-margin-top:130px}}

@media(max-width:1100px){
 .ct-material-curriculum-header{gap:16px}.ct-material-curriculum-header h2{font-size:28px}.ct-material-curriculum-stats{padding:11px 13px}.ct-material-curriculum-stats>span+span{padding-inline-start:11px;margin-inline-start:11px}
 .ct-material-lessons a{gap:12px}.ct-material-video-tile{width:66px;height:46px}.ct-material-lesson-open>span{display:none}
}
@media(max-width:900px){
 .ct-material-body-grid{grid-template-columns:1fr;gap:28px}.ct-material-curriculum-header{gap:24px}.ct-material-video-tile{width:76px;height:51px}.ct-material-lesson-open>span{display:inline}
}
@media(max-width:650px){
 .ct-material-body-grid{padding-top:26px}.ct-material-curriculum-header{flex-wrap:wrap;align-items:flex-start;gap:17px;margin-bottom:20px}.ct-material-curriculum-header h2{font-size:27px}.ct-material-curriculum-intro .ct-material-kicker{font-size:10px}.ct-material-section-description{font-size:12px}
 .ct-material-curriculum-meta{flex-direction:row;align-items:center;justify-content:space-between;width:100%;gap:12px}.ct-material-curriculum-stats{padding:8px 13px;border-radius:9px}.ct-material-curriculum-stats b{font-size:17px}.ct-material-curriculum-stats>span{font-size:11px}.ct-material-curriculum-stats>span+span{padding-inline-start:14px;margin-inline-start:14px}
 .ct-material-curriculum-tools{gap:8px;margin-bottom:14px}.ct-material-search{padding-inline:13px;border-radius:10px;gap:9px}.ct-material-search input{min-height:47px;font-size:13px}.ct-material-search svg{width:17px;height:17px}.ct-material-expand{min-width:88px;min-height:47px;padding-inline:12px;border-radius:10px;font-size:11px!important}
 .ct-material-chapters{gap:14px}.ct-material-chapter{border-radius:14px}.ct-material-chapter summary{min-height:73px;padding:15px;gap:10px}.ct-material-chapter-number{width:33px;height:35px;font-size:13px;border-radius:9px}.ct-material-page .ct-material-chapter-title{font-size:14px;line-height:1.8}.ct-material-chapter-count{font-size:10px;padding:3px 7px}.ct-material-chapter-toggle{width:17px}
 .ct-material-lessons{padding:3px 12px!important}.ct-material-lessons a{min-height:88px;padding:15px 2px;gap:11px}.ct-material-lesson-number{display:none}.ct-material-video-tile{width:56px;height:43px;border-radius:8px}.ct-material-video-play{width:25px;height:25px}.ct-material-video-play svg{width:13px;height:13px}.ct-material-lesson-title{font-size:13px;font-weight:700;line-height:1.85}.ct-material-lesson-title small{font-size:11px;line-height:1.7;margin-top:3px}.ct-material-lesson-open{gap:0}.ct-material-lesson-open>span{display:none}.ct-material-lesson-open svg{width:25px;height:25px;padding:5px}
}
@media(max-width:360px){.ct-material-page .ct-catalog-nav{gap:20px}.ct-material-chapter summary{padding-inline:12px;gap:8px}.ct-material-page .ct-material-chapter-title{font-size:13px}.ct-material-chapter-count{padding-inline:6px}.ct-material-video-tile{width:51px;height:41px}.ct-material-lessons a{gap:9px}.ct-material-lesson-open svg{width:23px;height:23px}}
@media(prefers-reduced-motion:reduce){.ct-material-page *{animation:none!important;transition:none!important;scroll-behavior:auto!important}}
