:where(.mzb-course,.mzb-topics,.mzb-breadcrumbs,.mzb-exercises,.mzb-exercise,.mzb-map,.mzb-player,.mzb-directory,.mzb-exercise-layout){--mzb-radius:5px}
.mzb-course,.mzb-topics,.mzb-breadcrumbs,.mzb-exercises,.mzb-exercise{font:inherit;color:inherit}
.mzb-course{--mzb-border:#d7dce2;--mzb-gap:.8rem}
.mzb-course .mzb-units{list-style:none;margin:0;padding:0;display:grid;gap:var(--mzb-gap)}
.mzb-unit{border:1px solid var(--mzb-border);border-radius:var(--mzb-radius);overflow:hidden}
.mzb-unit summary{cursor:pointer;padding:1rem;font-weight:600}
.mzb-unit-body{padding:0 1rem 1rem}
.mzb-topics{margin:.75rem 0;padding-inline-start:1.5rem}
.mzb-topics li{padding:.35rem 0}
.mzb-track{font-size:.85em;border:1px solid currentColor;border-radius:var(--mzb-radius);padding:.1em .4em}
.mzb-breadcrumbs ol{display:flex;flex-wrap:wrap;gap:.4rem;list-style:none;padding:0;margin:0 0 1rem}
.mzb-breadcrumbs ol>li{display:block;list-style:none;margin:0;padding:0}
.mzb-breadcrumbs li+li::before{content:"/";padding-inline-end:.4rem}
.mzb-course a:focus-visible,.mzb-course summary:focus-visible,.mzb-breadcrumbs a:focus-visible{outline:3px solid currentColor;outline-offset:3px}
.mzb-exercises ol{margin:.75rem 0;padding-inline-start:1.5rem}
.mzb-exercises li{padding:.5rem 0}
.mzb-exercises li p{margin:.25rem 0}
.mzb-kind{font-size:.85em;margin-inline-start:.4em}
.mzb-exercises a:focus-visible{outline:3px solid currentColor;outline-offset:3px}
.mzb-exercise{min-width:0;overflow-wrap:anywhere}

/* Unit and topic directories: public, server-rendered links.
 * Heading sizes override Divi mobile h2 rules only inside this component. */
.mzb-directory{--mzb-ink:#26334a;--mzb-accent:#6545c6;--mzb-tint:#f3efff;--mzb-edge:#ded6f1;--mzb-art:#e4d8ff;--mzb-glow:#fff0cb;color:var(--mzb-ink);font:inherit;line-height:1.6;margin:24px 0 36px;min-width:0;isolation:isolate}
.mzb-directory--fractions{--mzb-accent:#236b5b;--mzb-tint:#eff9f5;--mzb-edge:#cfe6dc;--mzb-art:#b8e6d5;--mzb-glow:#fff0cc}
.mzb-directory--algebra{--mzb-accent:#6743b3;--mzb-tint:#f5f0ff;--mzb-edge:#e1d7f2;--mzb-art:#dccbff;--mzb-glow:#ffe2cb}
.mzb-directory--geometry{--mzb-accent:#235d91;--mzb-tint:#eef6fc;--mzb-edge:#cfdfed;--mzb-art:#bcddf6;--mzb-glow:#d6f2e5}
.mzb-directory *{box-sizing:border-box}
.mzb-directory h2,.mzb-directory h3{font:inherit;font-weight:800;color:var(--mzb-ink);line-height:1.25;margin:0;padding:0;letter-spacing:-.45px;overflow-wrap:anywhere}
.mzb-directory p{padding:0;margin:0}
.mzb-directory a{color:inherit!important;text-decoration:none!important;overflow-wrap:anywhere}
.mzb-directory a:focus-visible{outline:3px solid #b85d06;outline-offset:4px}
.mzb-directory__hero{display:grid;grid-template-columns:minmax(0,1fr) 150px;align-items:center;gap:24px;padding:clamp(24px,4vw,38px);border:1px solid var(--mzb-edge);border-radius:var(--mzb-radius);background:linear-gradient(115deg,var(--mzb-tint),#fff 76%);overflow:hidden;position:relative}
.mzb-directory__intro{min-width:0;position:relative;z-index:1}
.mzb-directory__eyebrow,.mzb-directory__label{display:block;color:var(--mzb-accent);font-size:10px;font-weight:800;letter-spacing:1.4px;line-height:1.5}
.mzb-directory__hero h2{font-size:clamp(26px,3vw,36px)!important;max-width:480px;margin:12px 0}
.mzb-directory__hero p{max-width:450px;font-size:14px;color:#526177;line-height:1.7}
.mzb-directory__stats{display:flex;gap:8px;flex-wrap:wrap;margin-top:20px}
.mzb-directory__stats>span{display:inline-flex;align-items:baseline;gap:8px;font-size:12px;font-weight:650;padding:6px 12px;background:#fff;border:1px solid var(--mzb-edge);border-radius:var(--mzb-radius)}
.mzb-directory__stats strong{color:var(--mzb-accent);font-size:17px;font-weight:800}
.mzb-directory__actions{display:flex;flex-wrap:wrap;align-items:center;gap:10px 18px;margin-top:22px}
.mzb-directory .mzb-directory__button,.mzb-directory__cta{display:inline-flex;align-items:center;justify-content:space-between;gap:20px;min-height:46px;padding:11px 17px;background:var(--mzb-accent);border:1px solid var(--mzb-accent);border-radius:var(--mzb-radius);color:#fff!important;font-size:13px;font-weight:750;line-height:1.5;transition:transform .18s ease,box-shadow .18s ease}
.mzb-directory__button:hover{transform:translateY(-2px);box-shadow:0 5px 14px #26334a20}
.mzb-directory .mzb-directory__back{display:inline-flex;align-items:center;min-height:44px;color:var(--mzb-accent)!important;font-size:12px;font-weight:750;text-decoration:underline!important;text-underline-offset:4px}
.mzb-directory__section{margin-top:30px}
.mzb-directory__section>h2{font-size:21px!important;margin-bottom:15px}
.mzb-directory .mzb-directory__topics,.mzb-directory .mzb-directory__tasks{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;list-style:none!important;padding:0!important;margin:0!important}
.mzb-directory .mzb-directory__topics>li,.mzb-directory .mzb-directory__tasks>li{display:flex;list-style:none!important;padding:0!important;margin:0!important;min-width:0}
.mzb-directory__topics>li:only-child,.mzb-directory__tasks>li:only-child{grid-column:1/-1}
.mzb-directory__topic-card{display:flex;align-items:center;gap:16px;min-height:126px;width:100%;padding:22px;background:#fff;border:1px solid var(--mzb-edge);border-radius:var(--mzb-radius);box-shadow:0 4px 14px #26334a06;transition:transform .18s ease,border-color .18s ease,box-shadow .18s ease}
.mzb-directory__number{display:grid;place-items:center;flex:0 0 48px;width:48px;height:55px;font-size:22px;font-weight:800;color:var(--mzb-accent);background:var(--mzb-tint);border:1px solid var(--mzb-edge);border-radius:var(--mzb-radius)}
.mzb-directory__topic-copy{display:flex;flex-direction:column;gap:6px;flex:1;min-width:0}
.mzb-directory__topic-copy strong{font-size:16px;line-height:1.45;font-weight:750}
.mzb-directory__count{font-size:12px;color:#5a687e}
.mzb-directory__arrow{font-size:23px;color:var(--mzb-accent);align-self:flex-start}
.mzb-directory__topic-copy .mzb-track{align-self:flex-start;font-size:11px;padding:1px 7px;color:var(--mzb-accent)}
.mzb-directory>.mzb-exercises{margin-top:24px}
.mzb-directory__task-card{display:flex;flex-direction:column;width:100%;overflow:hidden;background:#fff;border:1px solid var(--mzb-edge);border-radius:var(--mzb-radius);box-shadow:0 5px 18px #26334a08;transition:transform .18s ease,box-shadow .18s ease,border-color .18s ease}
.mzb-directory__task-card:hover,.mzb-directory__topic-card:hover{transform:translateY(-3px);border-color:var(--mzb-accent);box-shadow:0 9px 22px #26334a12}
.mzb-directory__preview{display:grid;place-items:center;min-height:170px;padding:20px;background:linear-gradient(130deg,var(--mzb-tint),var(--mzb-glow));overflow:hidden}
.mzb-directory__task-copy{display:flex;flex-direction:column;align-items:flex-start;gap:12px;padding:24px;flex:1;min-width:0}
.mzb-directory .mzb-kind{display:inline-block;margin:0;color:var(--mzb-accent);background:var(--mzb-tint);border:1px solid var(--mzb-edge);border-radius:var(--mzb-radius);font-size:9px;font-weight:800;letter-spacing:1.1px;line-height:1.5;padding:4px 8px}
.mzb-directory__task-copy h3{font-size:21px;line-height:1.35}
.mzb-directory .mzb-directory__task-copy p{font-size:13px;line-height:1.7;color:#526177;margin:0 0 6px}
.mzb-directory__cta{margin-top:auto}
.mzb-directory__tasks>li:only-child .mzb-directory__task-card{flex-direction:row}
.mzb-directory__tasks>li:only-child .mzb-directory__preview{width:33%;min-width:170px}
.mzb-directory__scene{display:flex;align-items:center;justify-content:center;gap:12px;width:150px;min-height:150px;position:relative;flex-shrink:0;pointer-events:none}
.mzb-directory__glyph{display:grid;place-items:center;min-width:68px;height:82px;padding:5px 12px;background:var(--mzb-art);color:var(--mzb-accent);border-radius:var(--mzb-radius);font-size:48px;font-weight:800;line-height:1;box-shadow:0 8px 18px #26334a12;rotate:8deg;animation:mzb-directory-float 5s ease-in-out infinite}
.mzb-directory__small-glyph{position:absolute;right:-1px;top:5px;display:grid;place-items:center;width:40px;height:40px;font-size:27px;font-weight:800;background:#fff;color:var(--mzb-accent);border-radius:var(--mzb-radius);rotate:-10deg}
.mzb-directory--general .mzb-directory__glyph{font-size:34px;letter-spacing:-2px}
.mzb-directory__fraction-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:4px;width:76px;height:84px;flex-shrink:0;padding:5px;background:#fff;border:2px solid var(--mzb-accent);border-radius:var(--mzb-radius);rotate:-9deg;box-shadow:0 8px 18px #26334a12}
.mzb-directory__fraction-grid i{display:block;background:#e7f3ee;border-radius:var(--mzb-radius)}
.mzb-directory__fraction-grid i:nth-child(-n+2){background:var(--mzb-accent)}
.mzb-directory--fractions .mzb-directory__glyph{min-width:62px;font-size:46px;background:var(--mzb-glow)}
.mzb-directory--algebra .mzb-directory__glyph:first-child{rotate:-8deg;background:var(--mzb-glow)}
.mzb-directory--algebra .mzb-directory__small-glyph{top:0;right:54px;width:32px;height:32px;font-size:23px;rotate:0deg}
.mzb-directory__empty{text-align:center;padding:35px 24px;margin-top:24px;border:1px dashed var(--mzb-edge);border-radius:var(--mzb-radius);background:var(--mzb-tint)}
.mzb-directory__empty>span{display:block;color:var(--mzb-accent);font-size:28px;margin-bottom:12px}
.mzb-directory__empty h3{font-size:20px;margin-bottom:10px}
.mzb-directory__empty p{max-width:430px;margin:0 auto;font-size:13px;color:#526177}
@keyframes mzb-directory-float{0%,100%{transform:translateY(0)}50%{transform:translateY(-7px)}}
@media(max-width:850px){.mzb-directory .mzb-directory__topics{grid-template-columns:1fr}.mzb-directory__hero{grid-template-columns:minmax(0,1fr) 115px;gap:12px}.mzb-directory__hero>.mzb-directory__scene{scale:.8;transform-origin:center right;width:115px}}
@media(max-width:600px){.mzb-directory__hero{grid-template-columns:1fr;padding:24px}.mzb-directory__hero>.mzb-directory__scene{position:absolute;right:-18px;top:10px;scale:.6;opacity:.18;transform-origin:top right}.mzb-directory__hero h2{font-size:28px!important}.mzb-directory__eyebrow{font-size:9px}.mzb-directory__section{margin-top:25px}.mzb-directory .mzb-directory__tasks{grid-template-columns:1fr}.mzb-directory__tasks>li:only-child .mzb-directory__task-card{flex-direction:column}.mzb-directory__tasks>li:only-child .mzb-directory__preview{width:100%;min-width:0;min-height:160px}.mzb-directory__task-copy{padding:22px}.mzb-directory__task-copy h3{font-size:21px}.mzb-directory__topic-card{padding:18px;gap:12px}.mzb-directory__number{width:40px;flex-basis:40px;height:48px;font-size:19px}.mzb-directory__topic-copy strong{font-size:15px}.mzb-directory__actions{gap:8px 15px}.mzb-directory__cta{min-width:185px}}
@media(prefers-reduced-motion:reduce){.mzb-directory__glyph{animation:none}.mzb-directory__topic-card,.mzb-directory__task-card,.mzb-directory__button{transition:none}.mzb-directory__topic-card:hover,.mzb-directory__task-card:hover,.mzb-directory__button:hover{transform:none}}


/* Editorial instruction above the player, in both presentation profiles. */
.mzb-exercise>p{font-weight:700}
