.learning-platform [hidden]{display:none!important}.learning-platform{--lp-radius:14px}.lp-hero{padding-top:75px;padding-bottom:45px}.lp-hero h1{font-size:clamp(38px,6vw,76px);line-height:1.1;letter-spacing:-.045em;margin:26px 0}.lp-hero p,.lp-explainer p{font-size:16px;line-height:1.9;color:var(--muted);max-width:780px}.lp-courses{display:grid;grid-template-columns:1fr 1fr;gap:24px;padding-bottom:45px}.lp-card{border:1px solid var(--line);border-radius:var(--lp-radius);background:var(--panel);padding:35px}.lp-card h2{font-size:32px;letter-spacing:-.03em}.lp-card p{color:var(--muted);font-size:14px;line-height:1.9;min-height:80px}.lp-card .button{margin-top:18px}.lp-explainer{padding-top:25px;padding-bottom:80px}.lp-explainer h2{font-size:30px}.lp-course-heading{padding-top:30px;padding-bottom:20px}.lp-course-heading h1{font-size:clamp(28px,3.8vw,46px);margin:20px 0;letter-spacing:-.035em}#lp-role-links{display:flex;flex-wrap:wrap;gap:12px}.lp-course-heading .button{font-size:12px}.lp-lesson{background:var(--panel);border:1px solid var(--line);border-radius:var(--lp-radius);padding:26px;margin:20px 0}.lp-lesson h3{font-size:21px;line-height:1.5;letter-spacing:-.02em;margin:20px 0 12px}.lp-lesson h4{font-size:16px;line-height:1.7;margin:20px 0 12px}.lp-lesson p,.lp-lesson li{font-size:13px;line-height:1.9;color:var(--muted)}.lp-lesson p{margin:12px 0}.lp-phase-nav,.lp-actions{display:flex;gap:10px;flex-wrap:wrap;margin:20px 0}.lp-phase-nav .button,.lp-actions .button{font-size:11px;padding:10px 14px;cursor:pointer}.lp-phase-nav [aria-pressed=true]{border-color:var(--green);color:var(--green);background:var(--bg)}.lp-stage,.lp-practice{padding:18px 22px;background:var(--bg);border-left:3px solid var(--green);border-radius:0 9px 9px 0;margin:20px 0}.lp-details{border-block:1px solid var(--line);padding:8px 0;margin:20px 0;color:var(--muted)}.lp-details>summary{font-size:12px;line-height:1.8;min-height:44px;padding:12px 0;cursor:pointer;color:var(--green)}.lp-code{white-space:pre-wrap;overflow-wrap:anywhere;max-height:320px;overflow:auto;background:var(--bg);font:11px/1.9 var(--mono);padding:18px;border-radius:8px;border:1px solid var(--line);color:var(--paper)}.lp-note{font-size:11px!important}.lp-table-wrap{overflow:auto;max-width:100%;border:1px solid var(--line);border-radius:8px;margin:20px 0}.lp-table-wrap table{border-collapse:collapse;width:100%;min-width:600px;table-layout:fixed}.lp-table-wrap th,.lp-table-wrap td{padding:11px;border-bottom:1px solid var(--line);vertical-align:top;font-size:11px;line-height:1.8;text-align:left;overflow-wrap:anywhere}.lp-table-wrap th{background:var(--bg);font-weight:500}.lp-table-wrap td{color:var(--muted)}.lp-table-wrap th:last-child:has(+td){width:45px}.lp-table-wrap textarea{width:100%;min-height:85px;resize:vertical;font:12px/1.8 var(--sans);background:var(--bg);border:1px solid var(--line);color:var(--paper);border-radius:6px;padding:8px}.lp-table-wrap textarea[readonly]{border-color:transparent;resize:none;min-height:44px}.lp-table-wrap .button{padding:6px 10px;font-size:12px}.lp-lesson>label{font-size:12px;color:var(--muted);line-height:1.9;display:block;margin:20px 0 12px}.lp-lesson>textarea{width:100%;padding:14px;background:var(--bg);color:var(--paper);font:13px/1.9 var(--sans);border:1px solid var(--line);border-radius:8px;resize:vertical}.lp-wbs-item{border-left:2px solid var(--green);padding:12px 16px;margin-block:8px;background:var(--bg);font-size:12px}.lp-board{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}.lp-board>div{border:1px solid var(--line);padding:12px;border-radius:8px}.lp-board h4{font:12px var(--mono);margin:6px 0 18px}.lp-board article{border:1px solid var(--line);border-radius:7px;background:var(--bg);padding:12px;margin:10px 0}.lp-board b{font-size:12px;overflow-wrap:anywhere}.lp-board select{display:block;width:100%;margin-top:12px;background:var(--panel);color:var(--paper);border:1px solid var(--line);padding:8px;border-radius:4px;font-size:11px}.lp-board p{font-size:11px}.lp-exposures{border:1px solid var(--line);border-radius:8px;padding:18px}.lp-exposures b{font:12px var(--mono);color:var(--green)}.learning-platform #learn-teacher{display:none}.learning-platform .learn-toolbar{border-radius:12px 12px 0 0}.learning-platform[data-learning-role=teach] #learn-expected-panel,.learning-platform[data-learning-role=teach] #learn-checkpoint,.learning-platform[data-learning-role=teach] .learn-practice,.learning-platform[data-learning-role=teach] .learn-companion,.learning-platform[data-learning-role=teach] #trace-prediction{display:none}.learning-platform #pm-practice-feedback{margin:20px 0}.lp-presenting .python-sidebar,.lp-presenting .pmc-layout>aside,.lp-presenting footer,.lp-presenting .python-chapter-heading,.lp-presenting .pmc-chapter-heading,.lp-presenting .learn-navigation,.lp-presenting #learn-task,.lp-presenting #learn-explain{display:none}.lp-presenting .python-chapter-layout,.lp-presenting .pmc-layout{grid-template-columns:1fr}.lp-presenting #trace-code,.lp-presenting #learn-code{font-size:16px}.lp-presenting .lp-lesson p{font-size:16px}.lp-presenting .trace-variable code{font-size:15px}.learning-platform :focus-visible{outline:2px solid var(--green);outline-offset:3px}.learning-platform .button:disabled{opacity:.45;cursor:default}@media(max-width:760px){.lp-courses{grid-template-columns:1fr}.lp-hero{padding-top:35px}.lp-card{padding:25px}.lp-lesson{padding:18px}.lp-phase-nav{gap:7px}.lp-phase-nav .button{flex:1 1 40%;white-space:normal;text-align:left}.lp-board{grid-template-columns:1fr}.lp-presenting #trace-code{font-size:13px}.lp-table-wrap table{min-width:600px}.lp-course-heading .button{font-size:11px}.lp-card p{min-height:0}}@media print{header,footer,.lp-actions,.lp-phase-nav,.pmc-layout>aside{display:none!important}.pmc-layout{display:block}.lp-details{display:block}body{background:white;color:black}}

.lp-dependency{display:block;width:100%;height:auto;max-height:180px;margin:12px 0 24px;font:13px var(--mono)}

.lp-extended{display:grid;grid-template-columns:245px minmax(0,1fr);gap:30px;align-items:start;padding-top:24px;padding-bottom:70px}.lp-extended>aside{position:sticky;top:100px;max-height:calc(100vh - 125px);overflow:auto}.lp-extended>aside details{border:1px solid var(--line);border-radius:12px;background:var(--panel);padding:12px}.lp-extended>aside summary{padding:8px;font-size:12px;color:var(--muted);cursor:pointer}.lp-extended nav{display:grid;gap:5px;margin-top:12px}.lp-extended nav button{display:grid;grid-template-columns:25px minmax(0,1fr);gap:7px;text-align:left;padding:13px 10px;background:transparent;color:var(--muted);border:1px solid transparent;border-radius:7px;font:12px/1.7 var(--sans);cursor:pointer}.lp-extended nav b{font:11px/1.8 var(--mono);color:var(--green)}.lp-extended nav small{grid-column:2;color:var(--green);font-size:9px}.lp-extended nav [aria-current=step]{border-color:var(--green);background:var(--bg);color:var(--paper)}.lp-extended-work{min-width:0}.lp-extended-work>.lp-details{padding:18px 22px}.lp-extended-work .section>.shell{width:100%;padding-inline:0}.lp-extended-work .section{padding:20px 0}#extended-lesson{border:1px solid var(--line);border-radius:14px;background:var(--panel);padding:28px;scroll-margin-top:110px}#extended-lesson h2{font-size:clamp(27px,3vw,38px);margin:20px 0;letter-spacing:-.03em}#extended-lesson h3{font-size:19px;margin:24px 0 14px}#extended-lesson h4{font-size:14px;margin:20px 0 10px}#extended-lesson p{font-size:13px;line-height:1.95;color:var(--muted)}.lp-notebook-fields{display:grid;gap:12px;margin:22px 0}.lp-notebook-fields label{font-size:12px;line-height:1.8;color:var(--muted);margin-top:10px}.lp-notebook-fields textarea{width:100%;resize:vertical;padding:14px;border:1px solid var(--line);border-radius:8px;background:var(--bg);color:var(--paper);font:13px/1.8 var(--sans)}.lp-demo-card{border:1px solid var(--line);border-radius:8px;padding:16px 20px;margin:15px 0}.lp-demo-card h4{margin:0 0 8px!important}.lp-presenting .lp-extended>aside{display:none}.lp-presenting .lp-extended{grid-template-columns:1fr}.lp-presenting #extended-lesson p{font-size:17px}.lp-course-lab{scroll-margin-top:110px}.lp-course-lab>summary{font-size:14px!important}.lp-extended-work #automation-demo h2,.lp-extended-work #database-lab h2{font-size:28px}.lp-extended-work .content-split{gap:20px}@media(max-width:900px){.lp-extended{grid-template-columns:1fr}.lp-extended>aside{position:static;max-height:none}.lp-extended nav{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:600px){#extended-lesson{padding:20px}.lp-extended{gap:20px}.lp-extended-work>.lp-details{padding:12px}.lp-extended .content-split,.lp-extended .adv-cards{grid-template-columns:1fr}}
