/* (c) Curvingo

Includes code from Mathigon Studio (https://github.com/mathigon/studio),
Copyright (c) 2018-2022 Amplify Education, Inc. and its licensors, and from the
@mathigon npm libraries, Copyright (c) Mathigon. Licensed under the MIT License:

Permission is hereby granted, free of charge, to any person obtaining a copy
of this software and associated documentation files (the "Software"), to deal
in the Software without restriction, including without limitation the rights
to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
copies of the Software, and to permit persons to whom the Software is
furnished to do so, subject to the following conditions:

The above copyright notice and this permission notice shall be included in all
copies or substantial portions of the Software.

THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
SOFTWARE. */
@charset "UTF-8";marker#axis-arrow{fill:#3a3645}html[theme=dark] marker#axis-arrow{fill:#fff}x-chart{color:#cd0e66;display:block;margin:2em auto;position:relative;touch-action:pan-y}x-chart svg.canvas{display:block;height:100%!important;stroke-linecap:round;stroke-linejoin:round;-webkit-user-select:none;-moz-user-select:none;user-select:none;width:100%}x-chart .grid{opacity:.1}html[theme=dark] x-chart .grid{opacity:.25}x-chart .grid line{stroke:#000;stroke-width:1.5px}html[theme=dark] x-chart .grid line{stroke:#fff}x-chart .axes line{stroke:#3a3645;stroke-width:2px}html[theme=dark] x-chart .axes line{stroke:#fff}x-chart .axes,x-chart .grid{stroke-linecap:round;transition:opacity .2s}x-chart .axes line:not(.tick){marker-end:url(#axis-arrow)}x-chart .labels text{fill:#3a3645;font-size:14px;paint-order:stroke;stroke:#fff;stroke-linejoin:round;stroke-width:2px}.is-safari x-chart .labels text{stroke:none}x-chart .plot path{fill:none;stroke:currentColor;stroke-width:3px}x-chart .plot circle{fill:currentColor}x-chart g.blue,x-chart.blue{color:#0f82f2}x-chart g.green,x-chart.green{color:#22ab24}x-chart g.yellow,x-chart.yellow{color:#fd8c00}x-chart x-gesture{left:0;position:absolute;top:0}html{--fig-ink:#3a3645;--fig-muted:#656073;--fig-ghost:#c5c2cc;--fig-paper:#fff}html[theme=dark]{--fig-ink:#fff;--fig-muted:#c5c2cc;--fig-ghost:hsla(0,0%,100%,.25);--fig-paper:#22212e}svg.fig{display:block;height:auto;margin:0 auto;max-width:100%}svg.fig circle,svg.fig ellipse,svg.fig line,svg.fig path,svg.fig polygon,svg.fig polyline,svg.fig rect{stroke-linecap:round;stroke-linejoin:round}svg.fig text{fill:var(--fig-ink);font-size:16px;font-weight:700;paint-order:stroke;stroke:var(--fig-paper);stroke-linejoin:round;stroke-width:4px}svg.fig text.note{fill:var(--fig-muted);font-size:13px;font-weight:600}svg.fig text.big{font-size:20px}svg.fig text.mid{text-anchor:middle}svg.fig text.start{text-anchor:start}svg.fig text.end{text-anchor:end}svg.fig tspan.sub{font-size:10px}svg.fig .hair{stroke-width:1.5}svg.fig .thin{stroke-width:2}svg.fig .line{stroke-width:3}svg.fig .thick{stroke-width:4}svg.fig .hair,svg.fig .line,svg.fig .thick,svg.fig .thin{fill:none;stroke:currentColor}svg.fig .dash{stroke-dasharray:6 5}svg.fig .line.dash,svg.fig .thick.dash{stroke-dasharray:8 6}svg.fig .faint{opacity:.45}svg.fig .ink{color:var(--fig-ink)}svg.fig .muted{color:var(--fig-muted)}svg.fig .ghost{color:var(--fig-ghost)}svg.fig .blue{color:#0f82f2}svg.fig .green{color:#22ab24}svg.fig .red{color:#cd0e66}svg.fig .yellow{color:#fd8c00}svg.fig .orange{color:#eb4726}svg.fig .purple{color:#6d3bbf}svg.fig .teal{color:#009ea6}svg.fig .fill.blue{fill:rgba(15,130,242,.15)}svg.fig .fill.green{fill:rgba(34,171,36,.15)}svg.fig .fill.red{fill:rgba(205,14,102,.15)}svg.fig .fill.yellow{fill:rgba(253,140,0,.15)}svg.fig .fill.orange{fill:rgba(235,71,38,.15)}svg.fig .fill.purple{fill:rgba(109,59,191,.15)}svg.fig .fill.teal{fill:rgba(0,158,166,.15)}svg.fig .dot{fill:currentColor;r:4.5;stroke:none}svg.fig .ring{fill:var(--fig-paper);r:4.5;stroke:currentColor;stroke-width:2}svg.fig .knob{fill:currentColor;r:8;stroke:none}svg.fig .hit{cursor:grab;fill:transparent;r:20;stroke:none;touch-action:none}svg.fig .arrow-head{fill:currentColor;stroke:none}x-binary-swipe{display:grid;grid-template-columns:repeat(3,1fr);margin:1.5em 0}x-binary-swipe h3{color:#aaa;font-size:22px;margin-top:0;text-transform:uppercase}x-binary-swipe .stack{background:#f5f5f6;border-radius:8px;height:260px;margin:20px auto;position:relative;width:220px}x-binary-swipe .option .stack .card-wrap{z-index:10}x-binary-swipe .card-wrap{left:0;position:absolute;top:0}x-binary-swipe .card-wrap.active{cursor:grab}x-binary-swipe .card-wrap.dragging{z-index:20}x-binary-swipe .card{border-radius:8px;box-sizing:border-box;color:#fff;height:260px;padding:16px;text-align:center;text-shadow:0 1px 2px rgba(0,0,0,.55);transition:box-shadow .2s,transform .2s;width:220px}x-binary-swipe .card.c-red{background:#cd0e66}x-binary-swipe .card.c-orange{background:#eb4726}x-binary-swipe .card.c-yellow{background:#fd8c00}x-binary-swipe .card.c-lime{background:#bfc212}x-binary-swipe .card.c-green{background:#22ab24}x-binary-swipe .card.c-teal{background:#009ea6}x-binary-swipe .card.c-blue{background:#0f82f2}x-binary-swipe .card.c-purple{background:#6d3bbf}x-binary-swipe .card:after{background:transparent;content:"";display:block;height:100%;mix-blend-mode:overlay;position:absolute;top:0;transition:background 1s;width:33%}x-binary-swipe .card-wrap.committed-left .card:after{background:linear-gradient(270deg,hsla(0,0%,100%,0),hsla(0,0%,100%,.75));left:0}x-binary-swipe .card-wrap.committed-right .card:after{background:linear-gradient(90deg,hsla(0,0%,100%,0),hsla(0,0%,100%,.75));right:0}x-binary-swipe .option .card{box-shadow:0 0 4px rgba(0,0,0,.1)}x-binary-swipe .card-wrap.active .card{box-shadow:0 2px 10px rgba(0,0,0,.25);transform:scale(1.1)}x-binary-swipe .card-wrap.dragging .card{box-shadow:0 5px 20px rgba(0,0,0,.45);transform:scale(1.2)}x-buckets{color:#333;display:block;margin:1.5em 0;-webkit-user-select:none;-moz-user-select:none;user-select:none}x-buckets .bucket,x-buckets .inputs{position:relative}x-buckets .bucket>*,x-buckets .inputs>*{position:absolute}x-buckets .inputs{z-index:1}x-buckets .buckets{display:flex;flex-wrap:wrap;justify-content:center;margin:0 -8px}x-buckets .input{background:hsla(0,0%,100%,.6);border-radius:4px;box-sizing:border-box;cursor:move;font-size:16px;line-height:1.35;margin:6px 0;padding:5px 12px;text-align:center;transition:left .2s,top .2s,box-shadow .2s,background .2s,color .2s;width:180px}x-buckets .inputs .input{background:#c5c2cc}x-buckets .input.error{background:#e9b0cb;color:#cd0e66}x-buckets .input.active{background:#fff;box-shadow:0 5px 20px rgba(0,0,0,.45);color:inherit;z-index:1}x-buckets .bucket{background:#3a3645;border-radius:8px;margin:6px;padding-bottom:6px;position:relative;transition:box-shadow .2s;width:200px}x-buckets .bucket .title{color:#fff;font-weight:600;margin-top:8px;text-align:center}x-buckets .bucket.active{box-shadow:inset 0 0 0 5px rgba(0,0,0,.4)}x-relation{align-items:center;display:flex;justify-content:space-between;margin:1.5em auto;max-width:680px;position:relative;-webkit-user-select:none;-moz-user-select:none;user-select:none}x-relation .item{background:#f5f5f6;border:1px solid #ccc;border-radius:4px;margin:6px 0;padding:3px 12px;transition:background .2s,border-color .2s,color .2s}x-relation .item.active{background:#e1e1e1}x-relation .item.wrong{background:rgba(205,14,102,.12);border-color:#cd0e66;color:#cd0e66}x-relation .item.correct{background:rgba(34,171,36,.12);border-color:#22ab24}x-relation .item img,x-relation .item object,x-relation .item svg{pointer-events:none;width:100%}x-relation .domain,x-relation .range{width:33.333%}x-relation .domain .item{cursor:pointer}x-relation svg.connections{height:100%;left:0;pointer-events:none;position:absolute;top:0;width:100%}x-relation .connections line{stroke:#656073;stroke-linecap:round;stroke-width:4px}h3 .m-yellow,li .m-yellow,p .m-yellow,td .m-yellow{color:#fd8c00}h3 .m-orange,li .m-orange,p .m-orange,td .m-orange{color:#eb4726}h3 .m-red,li .m-red,p .m-red,td .m-red{color:#cd0e66}h3 .m-purple,li .m-purple,p .m-purple,td .m-purple{color:#6d3bbf}h3 .m-blue,li .m-blue,p .m-blue,td .m-blue{color:#0f82f2}h3 .m-teal,li .m-teal,p .m-teal,td .m-teal{color:#009ea6}h3 .m-green,li .m-green,p .m-green,td .m-green{color:#22ab24}.ns{background:#cd0e66;border-radius:5px;color:#fff;display:inline-block;line-height:30px;min-width:20px;padding:0 5px;position:relative;text-align:center}.ns.b{background:#0f82f2}.ns.g{background:#22ab24}.ns.y{background:#fd8c00}.ns.o{background:#eb4726}.ns.p{background:#6d3bbf}.ns.t{background:#009ea6}.s-purple .ns{background:#6d3bbf}.s-yellow .ns{background:#fd8c00}.s-teal .ns{background:#009ea6}.ns.lb{background:rgba(15,130,242,.4)}.ns.lg{background:rgba(34,171,36,.4)}.ns.ly{background:rgba(253,140,0,.4)}.ns.lbg{background:linear-gradient(to bottom right,rgba(15,130,242,.4) 50%,rgba(34,171,36,.4) 0)}.ns.small{font-size:1em;line-height:24px;margin:-6px 1px;padding:0;width:24px}.ns.blue.cross{background:rgba(15,130,242,.3);position:relative}.ns.cross:after{background:#c00;content:"";height:2px;left:-25%;margin-top:-1px;position:absolute;top:50%;transform:rotate(-45deg);width:150%}.ns.legs:after,.ns.legs:before{background:#c5c2cc;content:" ";display:block;height:2px;position:absolute;width:40px}.ns.legs:before{right:21px;top:37px;transform:rotate(-45deg)}.ns.legs:after{left:21px;top:37px;transform:rotate(45deg)}.ns.legs.b:before{right:24px;top:33px;transform:rotate(-30deg)}.ns.legs.a:after{left:24px;top:33px;transform:rotate(30deg)}.middlesticky{position:sticky;top:calc(50vh - 220px)}.fullbody-applet{height:100vh;left:calc(520px - 50vw);margin:1.5em 0;position:absolute;top:-7cm;width:calc(100vw - 280px)}@media screen and (max-width:1120px){.fullbody-applet{left:-40px}}@media screen and (max-width:840px){.fullbody-applet{width:100vw}}@media screen and (max-width:540px){.fullbody-applet{left:-24px}}.fullwidth-applet{left:calc(520px - 50vw);position:relative;width:calc(100vw - 280px)}@media screen and (max-width:1120px){.fullwidth-applet{left:-40px}}@media screen and (max-width:840px){.fullwidth-applet{height:80vh!important;width:100vw}}@media screen and (max-width:540px){.fullwidth-applet{height:100vh!important;left:-24px}}.exam-tag{background:#6d3bbf;border-radius:12px;color:#fff;display:inline-block;font-size:13px;font-style:normal;font-weight:600;line-height:20px;margin:0 6px 3px 0;padding:1px 10px;vertical-align:middle;white-space:nowrap}.exam-tag.pattern{background:#009ea6}.solution{background:rgba(34,171,36,.08);border:2px dashed rgba(34,171,36,.55);border-radius:12px;margin:1.2em 0;padding:14px 18px}html[theme=dark] .solution{background:rgba(34,171,36,.16)}.solution>h3{color:#22ab24;font-size:17px;margin:0 0 8px}.solution>:last-child{margin-bottom:0}.cell-lab,.dope-lab,.game-card,.half-lab,.hop-lab,.junction-lab,.ladder-lab,.temp-lab,.valve-lab,.vi-lab,x-step .task-card{background:#f7f7fa;border-radius:12px;margin:1em auto;max-width:640px;padding:16px;text-align:center}html[theme=dark] .cell-lab,html[theme=dark] .dope-lab,html[theme=dark] .game-card,html[theme=dark] .half-lab,html[theme=dark] .hop-lab,html[theme=dark] .junction-lab,html[theme=dark] .ladder-lab,html[theme=dark] .temp-lab,html[theme=dark] .valve-lab,html[theme=dark] .vi-lab,html[theme=dark] x-step .task-card,x-step html[theme=dark] .task-card{background:hsla(0,0%,100%,.06)}@media (max-width:480px){.cell-lab,.dope-lab,.game-card,.half-lab,.hop-lab,.junction-lab,.ladder-lab,.temp-lab,.valve-lab,.vi-lab,x-step .task-card{padding:12px 8px}}.caption{color:#3a3645;font-size:15px;margin-top:-.6em;text-align:center}html[theme=dark] .caption{color:#c5c2cc}.figure-col{max-width:100%}.figure-col x-chart{margin:0 auto}x-gameplay.quiz-game .slide{padding-bottom:20px;padding-top:10px}x-gameplay.quiz-game :is(.quiz-note,.quiz-why){margin:0 0 12px}x-gameplay.quiz-game .quiz-options{display:flex;flex-wrap:wrap;gap:8px;justify-content:center;padding:0 12px}x-gameplay.quiz-game .quiz-options .btn{margin:0;min-width:100px}@media (max-width:480px){x-gameplay.quiz-game .quiz-options{gap:6px}x-gameplay.quiz-game .quiz-options .btn{box-sizing:border-box;flex:1 1 auto;min-width:0;padding-left:.75em;padding-right:.75em}x-gameplay.quiz-game .quiz-options:has(>.btn:nth-child(4)) .btn{flex:1 1 40%}}em.pill{font-style:normal}x-step .pill,x-step .pill *{color:#fff}x-step.focus svg:has([target].focus) :is(path,circle,line,rect,text,polygon,polyline,ellipse,image){opacity:.2;transition:opacity .25s}x-step.focus svg:has([target].focus) :is([target].focus,[target].focus *){opacity:1}@media (max-width:640px){x-step .row>.fig-first{order:-1}}table:where(:not(.md-table)){border-collapse:collapse}table:where(:not(.md-table)) td,table:where(:not(.md-table)) th{border:1px solid #ccc;padding:8px}x-step .md-table-wrap{background:#fff;border:1px solid rgba(58,54,69,.14);border-radius:10px;margin:1em 0 1.5em;transition:border-color .25s}html[theme=dark] x-step .md-table-wrap{background:hsla(0,0%,100%,.03);border:1px solid hsla(0,0%,100%,.16)}x-step .md-table-wrap:not(:has(x-blank,x-blank-mc,x-gloss,x-bio,x-var)){overflow-x:auto;overscroll-behavior-x:contain;-webkit-overflow-scrolling:touch}x-step .md-table-wrap:not(:has(x-blank,x-blank-mc,x-gloss,x-bio,x-var)) svg.mathjax{max-width:none}x-step .md-table-wrap>table{background:none;border:none;border-collapse:separate;border-radius:9px;border-spacing:0;display:table;line-height:1.4;margin:0;width:100%}x-step .md-table-wrap>table>:first-child>tr:first-child>:first-child{border-top-left-radius:9px}x-step .md-table-wrap>table>:first-child>tr:first-child>:last-child{border-top-right-radius:9px}x-step .md-table-wrap>table>:last-child>tr:last-child>:first-child{border-bottom-left-radius:9px}x-step .md-table-wrap>table>:last-child>tr:last-child>:last-child{border-bottom-right-radius:9px}x-step :where(.md-table-wrap) table td,x-step :where(.md-table-wrap) table th{border:none;border-bottom:1px solid rgba(58,54,69,.12);padding:10px 16px;vertical-align:middle}html[theme=dark] x-step :where(.md-table-wrap) table td,html[theme=dark] x-step :where(.md-table-wrap) table th{border-bottom:1px solid hsla(0,0%,100%,.12)}@media (max-width:540px){x-step :where(.md-table-wrap) table td,x-step :where(.md-table-wrap) table th{padding:8px 10px}}x-step :where(.md-table-wrap) table thead th{background:#f3f3f8;color:#333;font-weight:600;transition:background-color .25s}html[theme=dark] x-step :where(.md-table-wrap) table thead th{background:hsla(0,0%,100%,.08)}html[theme=dark] x-step :where(.md-table-wrap) table thead th{color:#fff}x-step :where(.md-table-wrap) table>:last-child>tr:last-child>:is(td,th){border-bottom:none}x-step{--focus:15,130,242}x-step:has(.step-target.red:hover){--focus:205,14,102}x-step:has(.step-target.blue:hover){--focus:15,130,242}x-step:has(.step-target.green:hover){--focus:34,171,36}x-step:has(.step-target.yellow:hover){--focus:253,140,0}x-step:has(.step-target.orange:hover){--focus:235,71,38}x-step:has(.step-target.purple:hover){--focus:109,59,191}x-step:has(.step-target.teal:hover){--focus:0,158,166}x-step div[target]{border-radius:12px;transition:box-shadow .25s,background-color .25s}x-step div[target]:has(>.md-table-wrap){margin:0 -12px 1em;padding:8px 12px}x-step div[target]:has(>.md-table-wrap)>:last-child{margin-bottom:0}x-step div[target].focus{background:rgba(var(--focus),.05);box-shadow:0 0 0 2px rgb(var(--focus)),0 6px 16px -8px rgba(var(--focus),.35)}html[theme=dark] x-step div[target].focus{background:rgba(var(--focus),.1)}x-step div[target].focus .md-table-wrap{border-color:rgba(var(--focus),.35)}x-step div[target].focus .md-table-wrap thead th{background:rgba(var(--focus),.1)}html[theme=dark] x-step div[target].focus .md-table-wrap thead th{background:rgba(var(--focus),.2)}x-step table:has(:is(tr,td,th)[target].focus) :is(td,th){opacity:.3;transition:opacity .25s,background-color .25s}x-step table :is(tr[target].focus>:is(td,th),:is(td,th)[target].focus){background:rgba(var(--focus),.1);opacity:1}html[theme=dark] x-step table :is(tr[target].focus>:is(td,th),:is(td,th)[target].focus){background:rgba(var(--focus),.2)}x-step ul.missions{display:flex;flex-direction:column;gap:8px;list-style:none;margin:0 auto 12px;max-width:460px;padding:0;text-align:left}x-step ul.missions li{border:2px solid #c5c2cc;border-radius:12px;color:#999;font-size:15px;line-height:1.35;margin:0;padding:6px 12px 6px 38px;position:relative}html[theme=dark] x-step ul.missions li{border-color:hsla(0,0%,100%,.2)}x-step ul.missions li:before{border:2px solid #c5c2cc;border-radius:50%;box-sizing:border-box;content:"";height:18px;left:10px;margin-top:-9px;position:absolute;top:50%;width:18px}html[theme=dark] x-step ul.missions li:before{border-color:hsla(0,0%,100%,.3)}x-step ul.missions li.active,x-step ul.missions li.current{color:#333;font-weight:600}html[theme=dark] x-step ul.missions li.active,html[theme=dark] x-step ul.missions li.current{color:#fff}x-step ul.missions li.done{background:#fff;border-color:#22ab24;color:#333}html[theme=dark] x-step ul.missions li.done{background:hsla(0,0%,100%,.08);border-color:#22ab24;color:#fff}x-step ul.missions li.done:before{background:#22ab24;border-color:#22ab24;color:#fff;content:"✓";font-size:11px;line-height:14px;text-align:center}html[theme=dark] x-step ul.missions li.done:before{border-color:#22ab24}x-step ul.missions li.done strong{color:inherit}x-step .task-card{display:flex;flex-direction:column;gap:16px;padding:16px}x-step .task-card>*,x-step .task-card>p:first-child{margin:0}x-step .task-card .task-eq{font-size:1.25em}x-step .task-card .sign{margin:0 .15em}x-step .task-card ul.missions{margin:0 auto}x-step .task-card.task-card>div>:where(div:not(.fig-wrap,.spot-wrap):has(>div[class*=chip],>[class*=label],>div[class*=row],>.lab-btns):not(:has(>svg,>x-chart,>ul.missions)))>:where(ul.missions,div:has(>ul.missions),p,table,svg,x-chart,.fig-wrap,.spot-wrap,div:has(>svg),div:has(>.btn),.btn-row,.lab-btns,.action-row,div[class*=chip],div[class*=btns],div[class*=button],div[class*=chart],div[class*=read],div[class*=-out],div[class*=status],div[class*=caption],div[class*=stepper],div[class*=body],div[class*=calc],div[class*=formula],div[class*=terms],div[class*=label]):not(:where([class*=label],.lab-ask)),x-step .task-card.task-card>div>:where(ul.missions,div:has(>ul.missions),p,table,svg,x-chart,.fig-wrap,.spot-wrap,div:has(>svg),div:has(>.btn),.btn-row,.lab-btns,.action-row,div[class*=chip],div[class*=btns],div[class*=button],div[class*=chart],div[class*=read],div[class*=-out],div[class*=status],div[class*=caption],div[class*=stepper],div[class*=body],div[class*=calc],div[class*=formula],div[class*=terms],div[class*=label]):not(:where([class*=label],.lab-ask)){margin-block:0}x-step .task-card.task-card>div>:first-child:not(.btn),x-step .task-card.task-card>div>:where([class*=label],.lab-ask),x-step .task-card.task-card>div>:where(div:not(.fig-wrap,.spot-wrap):has(>div[class*=chip],>[class*=label],>div[class*=row],>.lab-btns):not(:has(>svg,>x-chart,>ul.missions)))>:first-child:not(.btn),x-step .task-card.task-card>div>:where(div:not(.fig-wrap,.spot-wrap):has(>div[class*=chip],>[class*=label],>div[class*=row],>.lab-btns):not(:has(>svg,>x-chart,>ul.missions)))>:where([class*=label],.lab-ask){margin-top:0}x-step .task-card.task-card>div>:last-child:not(.btn),x-step .task-card.task-card>div>:where(div:not(.fig-wrap,.spot-wrap):has(>div[class*=chip],>[class*=label],>div[class*=row],>.lab-btns):not(:has(>svg,>x-chart,>ul.missions)))>:last-child:not(.btn){margin-bottom:0}x-step .task-card.task-card>div>:not(:where([class*=label],.lab-ask,:empty:not([class*=read],[class*=-out],[class*=status]),[hidden],.hidden))+:where(ul.missions,div:has(>ul.missions),p,table,svg,x-chart,.fig-wrap,.spot-wrap,div:has(>svg),div:has(>.btn),.btn-row,.lab-btns,.action-row,div[class*=chip],div[class*=btns],div[class*=button],div[class*=chart],div[class*=read],div[class*=-out],div[class*=status],div[class*=caption],div[class*=stepper],div[class*=body],div[class*=calc],div[class*=formula],div[class*=terms],div[class*=label]):not(:where(:empty:not([class*=read],[class*=-out],[class*=status]))),x-step .task-card.task-card>div>:where(div:not(.fig-wrap,.spot-wrap):has(>div[class*=chip],>[class*=label],>div[class*=row],>.lab-btns):not(:has(>svg,>x-chart,>ul.missions)))>:not(:where([class*=label],.lab-ask,:empty:not([class*=read],[class*=-out],[class*=status]),[hidden],.hidden))+:where(ul.missions,div:has(>ul.missions),p,table,svg,x-chart,.fig-wrap,.spot-wrap,div:has(>svg),div:has(>.btn),.btn-row,.lab-btns,.action-row,div[class*=chip],div[class*=btns],div[class*=button],div[class*=chart],div[class*=read],div[class*=-out],div[class*=status],div[class*=caption],div[class*=stepper],div[class*=body],div[class*=calc],div[class*=formula],div[class*=terms],div[class*=label]):not(:where(:empty:not([class*=read],[class*=-out],[class*=status]))),x-step .task-card.task-card>div>:where(div:not(.fig-wrap,.spot-wrap):has(>div[class*=chip],>[class*=label],>div[class*=row],>.lab-btns):not(:has(>svg,>x-chart,>ul.missions)))>:where(ul.missions,div:has(>ul.missions),p,table,svg,x-chart,.fig-wrap,.spot-wrap,div:has(>svg),div:has(>.btn),.btn-row,.lab-btns,.action-row,div[class*=chip],div[class*=btns],div[class*=button],div[class*=chart],div[class*=read],div[class*=-out],div[class*=status],div[class*=caption],div[class*=stepper],div[class*=body],div[class*=calc],div[class*=formula],div[class*=terms],div[class*=label]):not(:where([class*=label],.lab-ask,:empty:not([class*=read],[class*=-out],[class*=status]),[hidden],.hidden))+*,x-step .task-card.task-card>div>:where(ul.missions,div:has(>ul.missions),p,table,svg,x-chart,.fig-wrap,.spot-wrap,div:has(>svg),div:has(>.btn),.btn-row,.lab-btns,.action-row,div[class*=chip],div[class*=btns],div[class*=button],div[class*=chart],div[class*=read],div[class*=-out],div[class*=status],div[class*=caption],div[class*=stepper],div[class*=body],div[class*=calc],div[class*=formula],div[class*=terms],div[class*=label]):not(:where([class*=label],.lab-ask,:empty:not([class*=read],[class*=-out],[class*=status]),[hidden],.hidden))+*{margin-top:16px}x-step .task-card.wide{align-items:center;display:grid;gap:16px;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));justify-items:center;max-width:none}x-step .task-card.wide>:is(div:has(x-chart):not(.spot-wrap),div:has(ul.missions),div:has(svg):not(:has(>svg)):not(.spot-wrap)),x-step .task-card.wide>:is(div:has(x-chart):not(.spot-wrap),div:has(ul.missions),div:has(svg):not(:has(>svg)):not(.spot-wrap))>:is(div:has(x-chart):not(.spot-wrap),div:has(ul.missions),div:has(svg):not(:has(>svg)):not(.spot-wrap)),x-step .task-card.wide>:is(div:has(x-chart):not(.spot-wrap),div:has(ul.missions),div:has(svg):not(:has(>svg)):not(.spot-wrap))>:is(div:has(x-chart):not(.spot-wrap),div:has(ul.missions),div:has(svg):not(:has(>svg)):not(.spot-wrap))>:is(div:has(x-chart):not(.spot-wrap),div:has(ul.missions),div:has(svg):not(:has(>svg)):not(.spot-wrap)){display:contents}x-step .task-card.wide>*,x-step .task-card.wide>:is(div:has(x-chart):not(.spot-wrap),div:has(ul.missions),div:has(svg):not(:has(>svg)):not(.spot-wrap))>*,x-step .task-card.wide>:is(div:has(x-chart):not(.spot-wrap),div:has(ul.missions),div:has(svg):not(:has(>svg)):not(.spot-wrap))>:is(div:has(x-chart):not(.spot-wrap),div:has(ul.missions),div:has(svg):not(:has(>svg)):not(.spot-wrap))>*,x-step .task-card.wide>:is(div:has(x-chart):not(.spot-wrap),div:has(ul.missions),div:has(svg):not(:has(>svg)):not(.spot-wrap))>:is(div:has(x-chart):not(.spot-wrap),div:has(ul.missions),div:has(svg):not(:has(>svg)):not(.spot-wrap))>:is(div:has(x-chart):not(.spot-wrap),div:has(ul.missions),div:has(svg):not(:has(>svg)):not(.spot-wrap))>*{grid-column:1/-1;margin-block:0;max-width:100%}x-step .task-card.wide>:is(div:has(x-chart):not(.spot-wrap),div:has(ul.missions),div:has(svg):not(:has(>svg)):not(.spot-wrap))>:is(div:has(x-chart):not(.spot-wrap),div:has(ul.missions),div:has(svg):not(:has(>svg)):not(.spot-wrap))>:is(div:has(x-chart):not(.spot-wrap),div:has(ul.missions),div:has(svg):not(:has(>svg)):not(.spot-wrap))>:is(svg,x-chart,div:has(>svg),.fig-wrap,.spot-wrap),x-step .task-card.wide>:is(div:has(x-chart):not(.spot-wrap),div:has(ul.missions),div:has(svg):not(:has(>svg)):not(.spot-wrap))>:is(div:has(x-chart):not(.spot-wrap),div:has(ul.missions),div:has(svg):not(:has(>svg)):not(.spot-wrap))>:is(svg,x-chart,div:has(>svg),.fig-wrap,.spot-wrap),x-step .task-card.wide>:is(div:has(x-chart):not(.spot-wrap),div:has(ul.missions),div:has(svg):not(:has(>svg)):not(.spot-wrap))>:is(svg,x-chart,div:has(>svg),.fig-wrap,.spot-wrap),x-step .task-card.wide>:is(svg,x-chart,div:has(>svg),.fig-wrap,.spot-wrap){grid-column:auto;order:1}x-step .task-card.wide>p:first-child{order:-2}x-step .task-card.wide ul.missions{order:-1}x-step .task-card.wide .btn-row,x-step .task-card.wide .caption,x-step .task-card.wide .lab-btns{order:2}x-step .task-card.wide .lab-readout,x-step .task-card.wide .readout,x-step .task-card.wide [class$=-out],x-step .task-card.wide [class$=-readout]{order:3}x-step .task-card>div{border-radius:0;padding:0}html[theme=dark] x-step .task-card>div,x-step .task-card>div{background:transparent}x-step .task-card.hoist>div:has(ul.missions),x-step .task-card.hoist>div:has(ul.missions)>div:has(ul.missions),x-step .task-card.hoist>div:has(ul.missions)>div:has(ul.missions)>div:has(>ul.missions){display:contents}x-step .task-card.hoist>div:has(ul.missions)>*,x-step .task-card.hoist>div:has(ul.missions)>div:has(ul.missions)>*,x-step .task-card.hoist>div:has(ul.missions)>div:has(ul.missions)>div:has(>ul.missions)>*{flex:none;margin-block:0}x-step .task-card.hoist>p:first-child{order:-2}x-step .task-card.hoist ul.missions{order:-1}x-step .task-card>x-chart{margin:0 auto}x-step .task-card .spot-wrap>x-chart{margin-block:0}x-step .row:has(>.task-card){container-type:inline-size}x-step .row>.task-card{margin:24px}x-step .row>.task-card ul.missions{max-width:none}@container (min-width: 736px){x-step .row>.task-card{align-self:flex-start;box-sizing:border-box;gap:0;height:var(--chart-h,340px);justify-content:space-evenly;padding-bottom:0;padding-top:0}}x-gameplay{display:block;overflow:hidden}x-gameplay,x-gameplay .slide{position:relative}x-gameplay .slide.leaving{left:0;position:absolute;right:0;top:28px}x-gameplay .slide.done{pointer-events:none}x-gameplay .slide-template{display:none}x-gameplay .dots{display:flex;height:16px;justify-content:center;padding-top:12px;transition:transform .2s;z-index:10}x-gameplay .dot{border:1px solid #0f82f2;border-radius:100%;float:left;height:8px;margin:4px;transition:background .3s,color .3s;width:8px}x-gameplay .dot.green{background:#22ab24;border-color:#22ab24}x-gameplay .dot.red{background:#cd0e66;border-color:#cd0e66}x-gameplay x-solved{margin-top:12px}x-gameplay.solved{min-height:236px;transition:min-height .3s}x-solved{border-radius:12px;box-shadow:0 5px 20px rgba(0,0,0,.2);box-sizing:border-box;display:none;left:50%;margin:20px 0 0 -100px;padding:5px 15px 15px;position:absolute;width:200px;z-index:200}x-solved x-icon.sketch{display:block;fill:#fff;margin:0 auto;opacity:.8}x-solved.gradient-red{background:linear-gradient(135deg,#ef1579,#cd0e66)}x-solved.gradient-orange{background:linear-gradient(135deg,#ee674b,#eb4726)}x-solved.gradient-lime{background:linear-gradient(135deg,#e4e715,#bfc212)}x-solved.gradient-green{background:linear-gradient(135deg,#29cd2b,#22ab24)}x-solved.gradient-teal{background:linear-gradient(135deg,#00c5cf,#009ea6)}x-solved.gradient-blue{background:linear-gradient(135deg,#3696f4,#0f82f2)}x-solved.gradient-purple{background:linear-gradient(135deg,#8358cb,#6d3bbf)}x-solved .message{color:#fff;font-size:24px;font-weight:600;line-height:1.2;text-align:center}x-solved .close{cursor:pointer;padding:8px;position:absolute;right:0;top:0;transition:transform .2s;z-index:10}x-solved .close x-icon{display:block;fill:hsla(0,0%,100%,.4);transition:fill .2s}x-solved .close:hover{transform:scale(1.4)}x-solved .close:hover .icon{fill:#fff}.bias-fig svg.fig,.birth-fig svg.fig,.cell-wrap svg.fig.se,.fig-wrap svg.fig,.filter-fig svg.fig,.full-fig svg.fig,.gap-fig svg.fig,.levels-fig svg.fig,.mass-fig svg.fig,.symbol-fig svg.fig{display:block;height:auto;margin:0 auto;max-width:100%;touch-action:manipulation}.chips{display:flex;flex-wrap:wrap;gap:6px;justify-content:center;margin:0 0 10px}.chips .btn{margin:0}.chips-row{display:flex;flex-wrap:wrap;gap:0 18px;justify-content:center}.bias-missions,.birth-missions,.cell-missions,.dope-missions,.filter-missions,.full-missions,.gap-missions,.half-missions,.hop-missions,.junction-missions,.mass-missions,.rd-missions,.temp-missions,.valve-missions,.vi-missions{margin:1em auto 0;max-width:640px}.bias-out,.birth-out,.filter-out,.full-out,.gap-out,.half-out,.lab-readout,.mass-out,.rd-out{font-size:15px;line-height:1.6;margin:8px auto 0;max-width:600px;min-height:3.2em;text-align:center}.bias-out b.neg,.birth-out b.neg,.filter-out b.neg,.full-out b.neg,.gap-out b.neg,.half-out b.neg,.lab-readout b.neg,.mass-out b.neg,.rd-out b.neg{color:#0f82f2}.bias-out b.pos,.birth-out b.pos,.filter-out b.pos,.full-out b.pos,.gap-out b.pos,.half-out b.pos,.lab-readout b.pos,.mass-out b.pos,.rd-out b.pos{color:#22ab24}.bias-out b.err,.birth-out b.err,.filter-out b.err,.full-out b.err,.gap-out b.err,.half-out b.err,.lab-readout b.err,.mass-out b.err,.rd-out b.err{color:#cd0e66}.dope-out,.mass-out,.vi-out{min-height:4.8em}.cell-out,.rd-out{min-height:1.6em}.lab-btns{display:flex;gap:8px;justify-content:center;margin:10px 0 0}.lab-btns .btn{margin:0}.bias-fig,.birth-fig,.filter-fig,.full-fig,.gap-fig,.levels-fig,.mass-fig,.symbol-fig{margin:1em auto;max-width:480px}.fig-wrap{position:relative}.cell-wrap svg.fig.se{cursor:grab;touch-action:pan-y}.half-lab+p+x-chart,.junction-lab x-chart,.vi-plot{margin-top:10px}svg.fig.se .amber{color:#fd8c00}svg.fig.se text.amber-text{fill:#d47500}html[theme=dark] svg.fig.se text.amber-text{fill:#fd8c00}svg.fig.se text.blue-text{fill:#0f82f2}svg.fig.se text.green-text{fill:#22ab24}svg.fig.se text.teal-text{fill:#009ea6}svg.fig.se text.purple-text{fill:#6d3bbf}html[theme=dark] svg.fig.se text.purple-text{fill:#a686da}svg.fig.se text.site-num{fill:#22ab24}svg.fig.se text.meter-text{fill:var(--fig-ink);font-size:13px;font-weight:700;stroke:none}svg.fig.se .axis{fill:none;stroke:var(--fig-ink);stroke-width:2}svg.fig.se .tick{fill:none;stroke:var(--fig-ink);stroke-width:1.5}svg.fig.se .mark-line{fill:none;stroke:var(--fig-muted);stroke-dasharray:6 5;stroke-width:1.5}svg.fig.se .cursor{fill:none;stroke:#fd8c00;stroke-dasharray:6 5;stroke-width:2}svg.fig.se .curve-line{fill:none;stroke:currentColor;stroke-width:3}svg.fig.se .cur-dot{color:#fd8c00;r:6px}svg.fig.se .cur-ring{fill:none;stroke:#fd8c00;stroke-width:2}svg.fig.se .metal-dot{color:#009ea6}svg.fig.se .row-hit,svg.fig.se .tap-hit{cursor:pointer;fill:transparent;stroke:none}svg.fig.se .electron{color:#0f82f2}svg.fig.se .hole{fill:var(--fig-paper);stroke:#22ab24;stroke-width:2}svg.fig.se .ion circle{fill:var(--fig-paper);stroke:var(--fig-ink);stroke-width:2}svg.fig.se .ion path{fill:none;stroke:var(--fig-ink);stroke-width:2}svg.fig.se .zone{stroke:none}svg.fig.se .zone.metal{fill:rgba(0,158,166,.15)}svg.fig.se .zone.semi{fill:rgba(109,59,191,.15)}svg.fig.se .zone.insul{fill:var(--fig-ghost)}svg.fig.se .zone.focus{stroke:currentColor;stroke-width:2}svg.fig.se .zone.metal.focus{color:#009ea6;fill:rgba(0,158,166,.35)}svg.fig.se .zone.semi.focus{color:#6d3bbf;fill:rgba(109,59,191,.35)}svg.fig.se .zone.insul.focus{stroke:var(--fig-muted)}svg.fig.se .mat.metal{color:#009ea6}svg.fig.se .mat.semi{color:#6d3bbf}svg.fig.se .mat.insul{color:var(--fig-ink)}svg.fig.se .ghost-line{fill:none;stroke:#fd8c00;stroke-dasharray:6 5;stroke-width:2}svg.fig.se .band{fill:var(--fig-ghost);stroke:var(--fig-ink);stroke-width:2}svg.fig.se .band.over{opacity:.85}svg.fig.se .band.focus{stroke-width:4}svg.fig.se .occupied{fill:rgba(15,130,242,.35);pointer-events:none;stroke:none}svg.fig.se .band-fill{fill:var(--fig-ghost);stroke:none}svg.fig.se .band-edge{fill:none;stroke:var(--fig-ink);stroke-width:2}svg.fig.se .level{fill:none;stroke:currentColor;stroke-dasharray:6 5;stroke-width:2}svg.fig.se .cube-edge{fill:none;stroke:var(--fig-muted);stroke-width:1.5}svg.fig.se .cell-bond{fill:none;stroke:var(--fig-ink);stroke-width:2}svg.fig.se .cell-bond.on{stroke:#0f82f2;stroke-width:4}svg.fig.se .atom3{cursor:pointer;fill:var(--fig-paper);stroke:var(--fig-ink);stroke-width:2}svg.fig.se .atom3.found{fill:#0f82f2;stroke:#0f82f2}svg.fig.se .atom3.nb{fill:rgba(15,130,242,.15);stroke:#0f82f2}svg.fig.se .bond{fill:none;stroke:var(--fig-muted);stroke-width:1.5}svg.fig.se .atom{fill:var(--fig-paper);stroke:var(--fig-ink);stroke-width:2}svg.fig.se .atom.donor{fill:rgba(15,130,242,.15);stroke:#0f82f2}svg.fig.se .atom.acceptor{fill:rgba(34,171,36,.15);stroke:#22ab24}svg.fig.se .orbit{fill:none;stroke:#0f82f2;stroke-dasharray:6 5;stroke-width:1.5}svg.fig.se .crystal{fill:var(--fig-ghost);stroke:none}svg.fig.se .free-e{transition:transform 2s ease-in}svg.fig.se .free-e.drift{transform:translateX(170px)}svg.fig.se .p-side{fill:rgba(34,171,36,.15);stroke:none}svg.fig.se .n-side{fill:rgba(15,130,242,.15);stroke:none}svg.fig.se .depletion{fill:rgba(253,140,0,.25);stroke:#fd8c00;stroke-dasharray:6 5;stroke-width:2}svg.fig.se .depletion.focus{fill:rgba(253,140,0,.4);stroke-dasharray:none}svg.fig.se .contact{fill:var(--fig-muted);stroke:none}svg.fig.se .potential{fill:none;stroke:#6d3bbf;stroke-width:3}svg.fig.se .ghost-profile{fill:none;stroke:var(--fig-muted);stroke-dasharray:6 5;stroke-width:2}svg.fig.se .lead,svg.fig.se .wire{fill:none;stroke:var(--fig-ink);stroke-width:3}svg.fig.se .src{fill:var(--fig-paper);stroke:var(--fig-ink);stroke-width:2}svg.fig.se .src-wave{fill:none;stroke:var(--fig-ink);stroke-width:2}svg.fig.se .plate{fill:none;stroke:var(--fig-ink);stroke-width:3}svg.fig.se .plate-neg{fill:none;stroke:var(--fig-ink);stroke-linecap:butt;stroke-width:5}svg.fig.se .zig{fill:none;stroke:#6d3bbf;stroke-width:3}svg.fig.se .cap-plate{fill:none;stroke:#009ea6;stroke-width:4}svg.fig.se .filament{fill:none;stroke:var(--fig-ink);stroke-width:2}svg.fig.se .bulb{fill:var(--fig-paper);stroke:var(--fig-ink);stroke-width:2}svg.fig.se .bulb.lit{fill:#fd8c00}svg.fig.se .ray{fill:none;stroke:#fd8c00;stroke-width:3}svg.fig.se .meter{fill:var(--fig-paper);stroke:var(--fig-ink);stroke-width:2}svg.fig.se .diode .tri{fill:var(--fig-ink);stroke:var(--fig-ink);stroke-width:2}svg.fig.se .diode .bar{fill:none;stroke:var(--fig-ink);stroke-width:3}svg.fig.se .diode.on .tri{fill:#fd8c00;stroke:#fd8c00}svg.fig.se .diode.on .bar{stroke:#fd8c00}svg.fig.se .coil{fill:none;stroke:var(--fig-ink);stroke-width:3}svg.fig.se .core{fill:none;stroke:var(--fig-muted);stroke-width:4}svg.fig.se .tap{fill:none;stroke:var(--fig-ink);stroke-width:3}svg.fig.se .live{fill:none;stroke:rgba(253,140,0,.45);stroke-width:11}svg.fig.se .node{fill:var(--fig-ink);stroke:none}svg.fig.se .box{fill:var(--fig-paper);stroke:var(--fig-ink);stroke-width:2}svg.fig.se .glass{fill:none;stroke:var(--fig-muted);stroke-width:2}svg.fig.se .electrode{fill:none;stroke:var(--fig-ink);stroke-width:4}svg.fig.se .cathode{fill:none;stroke:#fd8c00;stroke-width:4}svg.fig.se .e-stream{animation:se-flow .8s linear infinite;fill:none;stroke:#0f82f2;stroke-dasharray:0 16;stroke-linecap:round;stroke-width:9}@keyframes se-flow{0%{stroke-dashoffset:16}to{stroke-dashoffset:0}}@media (prefers-reduced-motion:reduce){svg.fig.se .e-stream{animation:none}svg.fig.se .free-e{transition:none}}x-chart .curve{fill:none;stroke-linecap:round;stroke-linejoin:round;stroke-width:3}x-chart .curve.blue{stroke:#0f82f2}x-chart .curve.green{stroke:#22ab24}x-chart .curve.purple{stroke:#6d3bbf}x-chart .curve.orange{stroke:#eb4726}x-chart .curve.amber{stroke:#fd8c00}x-chart .curve.teal{stroke:#009ea6}x-chart .curve.thin-curve{stroke-width:2}x-chart .curve.grey{stroke:var(--fig-muted);stroke-width:2}x-chart .curve.dashed{stroke-dasharray:6 5}x-chart .curve.cursor-line{stroke-dasharray:6 5;stroke-width:2}x-chart .blue-dot{fill:#0f82f2}x-chart .blue-dot,x-chart .green-dot{stroke:var(--fig-paper);stroke-width:2}x-chart .green-dot{fill:#22ab24}x-chart .purple-dot{fill:#6d3bbf;stroke:var(--fig-paper);stroke-width:2}x-chart .amber-dot{fill:#fd8c00}x-chart .amber-dot,x-chart .teal-dot{stroke:var(--fig-paper);stroke-width:2}x-chart .teal-dot{fill:#009ea6}x-chart .pt-label{fill:var(--fig-ink);font-size:16px;font-weight:700;paint-order:stroke;stroke:var(--fig-paper);stroke-linejoin:round;stroke-width:4px}x-chart .pt-label.small{font-size:13px}x-chart .pt-label.end{text-anchor:end}x-chart .blue-text{fill:#0f82f2}x-chart .green-text{fill:#22ab24}x-chart .teal-text{fill:#009ea6}x-chart .amber-text{fill:#d47500}html[theme=dark] x-chart .amber-text{fill:#fd8c00}x-chart .purple-text{fill:#6d3bbf}html[theme=dark] x-chart .purple-text{fill:#a686da}.game-card{overflow:hidden;padding:0}.quiz-game .quiz-note,.quiz-game .quiz-options,.quiz-game .quiz-q{padding-left:12px;padding-right:12px}.quiz-game .quiz-q{font-size:1.3em;margin-bottom:18px}.quiz-game .quiz-tag{color:#999;display:block;font-size:.7em;margin-bottom:6px}.quiz-game .quiz-eq{background:#6d3bbf;border-radius:24px;color:#fff;display:inline-block;font-weight:700;padding:6px 18px}.quiz-game .quiz-eq.small{border-radius:16px;font-size:.78em;line-height:1.4;max-width:100%}.quiz-game .quiz-note{color:#999;font-size:.95em;margin-top:14px;min-height:1.5em}.quiz-game .btn.faded{opacity:.3}.quiz-game .btn-green,.quiz-game .btn-red{pointer-events:none}@media (max-width:480px){.cell-lab,.dope-lab,.half-lab,.hop-lab,.junction-lab,.ladder-lab,.temp-lab,.valve-lab,.vi-lab{padding:12px 8px}}