@import url('fonts.css');
:root{--paper:#f4f1e9;--white:#fffdf8;--ink:#202421;--muted:#71756b;--line:#d4d2c8;--blue:#2351e8;--blue-dark:#163ab9;--orange:#f16a3b;--lime:#d8ed8d;--green:var(--blue);--font:'Golos Text',Arial,sans-serif;--mono:'IBM Plex Mono',monospace}
*{box-sizing:border-box}body{margin:0;background:var(--paper);color:var(--ink);font:15px/1.55 var(--font);-webkit-font-smoothing:antialiased}button,input,textarea,select{font:inherit;color:inherit}button{cursor:pointer;background:none;border:0}button:disabled{cursor:not-allowed;opacity:.45}a{color:inherit;text-decoration:none}a:hover{color:var(--blue)}button:hover:not(:disabled){filter:brightness(.94)}button:focus-visible,a:focus-visible,input:focus-visible,textarea:focus-visible,select:focus-visible,summary:focus-visible{outline:3px solid var(--orange);outline-offset:4px}svg{display:block}h1,h2,h3,h4,p{margin-top:0}button,a{-webkit-tap-highlight-color:transparent}.icon-defs{position:absolute;width:0;height:0;overflow:hidden}.icon{width:20px;height:20px;fill:none;stroke:currentColor;stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round;flex-shrink:0}.icon-small{width:16px;height:16px}.skip-link{position:fixed;top:10px;left:10px;padding:10px 18px;background:var(--ink);color:white;z-index:100;transform:translateY(-160%)}.skip-link:focus{transform:none}.site-header{height:94px;max-width:1440px;padding:0 54px;margin:auto;display:flex;align-items:center;gap:45px;border-bottom:1px solid var(--ink)}.brand{display:flex;align-items:center;gap:11px;font-size:31px;font-weight:800;letter-spacing:-1.5px;white-space:nowrap}.brand-mark{position:relative;background:var(--blue);color:var(--white);font-weight:750;letter-spacing:-2px;font-size:31px;line-height:1;width:40px;height:40px;display:flex;align-items:center;padding-left:7px}.brand-mark>span{font:13px var(--mono);position:absolute;right:4px;top:3px;color:var(--lime)}.brand-period{font:9px var(--mono);align-self:flex-start;margin:11px 0 0 -7px}.brand:hover{color:var(--ink)}.main-nav{display:flex;gap:30px;align-items:center;margin-left:auto;height:100%}.main-nav a{font-size:13px;font-weight:550;height:100%;display:flex;align-items:center;border-bottom:3px solid transparent;padding-top:3px}.main-nav a.active{border-bottom-color:var(--blue);color:var(--blue)}.header-utility{display:flex;gap:20px;align-items:center}.teacher-link{font:11px var(--mono);white-space:nowrap}.account-button{padding:0}.avatar{background:var(--lime);border:1px solid var(--ink);width:32px;height:32px;border-radius:50%;display:grid;place-items:center;font:13px var(--mono)}.mobile-menu{display:none;font-size:22px}.app-shell{max-width:1440px;margin:auto}.context-bar{display:flex;align-items:center;gap:20px;padding:16px 54px;font:9px var(--mono);letter-spacing:.7px;color:var(--muted)}.context-bar>.breadcrumb:before{content:'/';margin-right:20px;color:#a4a69a}.local-status{display:flex;align-items:center;gap:6px;margin-left:auto;font-size:9px;letter-spacing:0;color:#6d7461}.local-status>span{width:5px;height:5px;background:var(--blue);border-radius:50%}main{padding:24px 54px 55px;min-height:calc(100vh - 315px)}.page-intro{display:flex;align-items:flex-end;justify-content:space-between;gap:25px;padding:15px 0 27px;margin-bottom:20px;border-bottom:1px solid var(--ink)}.eyebrow{font:10px var(--mono);letter-spacing:1px;color:var(--blue);text-transform:uppercase;margin-bottom:15px}.eyebrow:before{display:none}h1{font-size:48px;font-weight:750;line-height:1.07;letter-spacing:-2px;margin:0 0 18px}.intro-sub{font-size:14px;color:var(--muted);line-height:1.8;margin:0;max-width:700px}.primary-button,.secondary-button{display:inline-flex;align-items:center;justify-content:center;gap:10px;font-size:12px;font-weight:550;padding:13px 18px;border:1px solid var(--ink);border-radius:0;line-height:1.5;white-space:nowrap}.primary-button{background:var(--blue);border-color:var(--blue);color:white}.primary-button:hover{color:white;background:var(--blue-dark)}.secondary-button{background:var(--white);color:var(--ink)}.primary-button .icon,.secondary-button .icon{width:17px;height:17px}.text-link{font-size:12px;color:var(--blue);padding:0;text-decoration:underline;text-underline-offset:4px}.icon-button{width:35px;height:35px;border:1px solid var(--line);display:grid;place-items:center;padding:0;background:var(--white)}.icon-button .icon{width:17px;height:17px}.mono{font-family:var(--mono)}.tag{font:9px var(--mono);text-transform:uppercase;letter-spacing:.5px;padding:4px 7px;border:1px solid currentColor;display:inline-flex;align-items:center;gap:5px}.orange{color:var(--orange)}.blue{color:var(--blue)}.muted{color:var(--muted)}.level-pill{font:9px var(--mono);padding:5px 8px;border:1px solid var(--line);white-space:nowrap}.section-heading{display:flex;justify-content:space-between;align-items:center;gap:20px;margin:42px 0 20px}.section-heading h2{font-size:25px;font-weight:650;letter-spacing:-.8px;margin:0}.section-heading>span{font:10px var(--mono);color:var(--muted)}
/* The learning desk: editorial scale, measured gutters, and mechanical drawings. */
.learn-hero{display:grid;grid-template-columns:1.03fr 1fr;gap:50px;align-items:center;padding:24px 0 42px;border-bottom:1px solid var(--ink)}.hero-copy h1{font-size:66px;line-height:1.03;letter-spacing:-3.3px;margin:23px 0 25px;font-weight:750}.hero-copy h1>span{display:block;color:var(--blue)}.hero-copy p{font-size:15px;line-height:1.85;max-width:405px;margin:0 0 25px;color:#686f61}.hero-actions{display:flex;gap:18px;align-items:center}.hero-actions .primary-button{padding:15px 20px;font-size:13px}.hero-actions .simple-link{font-size:12px;border-bottom:1px solid var(--ink);padding-bottom:2px}.hero-bottomline{display:flex;gap:18px;font:9px var(--mono);margin-top:34px;color:#6f7665}.hero-bottomline>span{display:flex;gap:6px;align-items:center}.hero-bottomline .icon{width:13px;height:13px}.hero-figure{position:relative;min-width:0}.hero-figure svg{width:100%;height:auto}.figure-caption{display:flex;justify-content:space-between;font:8px var(--mono);color:#6d7267;margin-top:10px;padding:0 15px}.figure-caption span:last-child{color:var(--blue)}.learning-status-strip{display:flex;align-items:center;gap:20px;padding:21px 0;border-bottom:1px solid var(--ink)}.strip-number{font:12px var(--mono);display:flex;align-items:center;gap:7px}.strip-number>span{width:8px;height:8px;background:var(--orange)}.strip-course{font-size:13px;flex:1}.strip-course small{display:block;font:9px var(--mono);color:var(--muted);margin-top:5px}.strip-progress{font:10px var(--mono);white-space:nowrap}.strip-progress meter{display:block;width:95px;height:5px;margin-top:7px;background:var(--line)}.strip-progress meter::-webkit-meter-bar{height:4px;background:var(--line);border:0;border-radius:0}.strip-progress meter::-webkit-meter-optimum-value{background:var(--blue)}.strip-link{display:flex;align-items:center;gap:8px;font-size:12px;color:var(--blue);margin-left:30px}.strip-link .icon{width:17px;height:17px}.curriculum-layout{display:grid;grid-template-columns:minmax(0,1fr) 285px;gap:55px}.course-row{display:grid;grid-template-columns:55px minmax(0,1fr) 75px 20px;gap:17px;align-items:center;padding:28px 0;border-top:1px solid var(--line);transition:background .15s}.course-row:first-child{border-top:1px solid var(--ink)}.course-row:last-child{border-bottom:1px solid var(--ink)}.course-index{font:27px var(--mono);color:var(--orange);align-self:start;line-height:1.2}.course-row:nth-child(2n) .course-index{color:var(--blue)}.course-row h3{font-size:23px;font-weight:650;letter-spacing:-.7px;margin:0 0 9px;line-height:1.2}.course-row p{font-size:12px;line-height:1.75;color:var(--muted);margin:0 0 13px;max-width:470px}.course-meta{display:flex;gap:15px;align-items:center;font:9px var(--mono);color:var(--muted)}.course-meta .course-done{color:var(--blue)}.course-thumb{width:75px;height:75px;border:1px solid var(--line);background:#ece9df;display:grid;place-items:center}.course-thumb svg{width:59px;height:59px}.course-row>.icon{color:var(--blue);width:19px;height:19px}.course-row:hover{color:var(--ink);background:#edeae2}.aside-note{border:1px solid var(--ink);padding:25px 24px;background:var(--lime);position:relative;margin-top:23px}.note-tab{background:var(--ink);color:var(--white);font:9px var(--mono);padding:5px 8px;position:absolute;top:-13px;left:19px;transform:rotate(-3deg)}.aside-note h3{font-size:22px;font-weight:650;letter-spacing:-.8px;margin:8px 0 15px;line-height:1.2}.aside-note p{font-size:12px;line-height:1.8;color:#4d603c;margin:0 0 19px}.aside-note button{border-bottom:1px solid var(--ink);font-size:12px;padding:0 0 2px}.aside-note svg{width:150px;height:88px;margin:18px auto}.aside-reading{padding-top:27px;margin-top:27px;border-top:1px solid var(--ink)}.aside-reading .eyebrow{margin-bottom:16px}.aside-reading a{font-size:12px;display:flex;justify-content:space-between;gap:10px;line-height:1.6;padding:11px 0;border-bottom:1px solid var(--line)}.aside-reading small{font:8px var(--mono);color:var(--muted);white-space:nowrap;padding-top:3px}.material-search{position:relative;border-bottom:1px solid var(--ink);margin:22px 0 25px;max-width:540px}.material-search input{width:100%;padding:13px 36px 13px 0;border:0;background:transparent;font-size:13px;outline-offset:4px}.material-search span{position:absolute;right:0;top:12px;font-size:18px}.search-results{border-top:1px solid var(--ink);margin:20px 0}.search-result{display:flex;justify-content:space-between;gap:25px;padding:19px 0;border-bottom:1px solid var(--line)}.search-result b{font-size:16px;font-weight:550}.search-result small{font:9px var(--mono);color:var(--muted);display:block;margin-top:7px}.search-result .icon{color:var(--blue)}.no-results{padding:35px 0;font-size:14px;color:var(--muted)}
/* Course index and the actual reader are intentionally quiet. */
.back-link{display:inline-flex;align-items:center;gap:8px;font:11px var(--mono);color:var(--muted);margin-bottom:30px}.back-link:before{content:'←';font-size:17px}.course-heading{display:grid;grid-template-columns:1fr 270px;gap:45px;padding:16px 0 40px;border-bottom:1px solid var(--ink)}.course-heading h1{font-size:57px;max-width:700px;margin:12px 0 22px}.course-heading p{color:var(--muted);max-width:630px;line-height:1.8;font-size:15px}.course-heading .course-thumb{width:220px;height:220px;background:var(--blue);border:0;transform:rotate(3deg);justify-self:end;margin:12px}.course-heading .course-thumb svg{width:175px;height:175px;stroke:var(--white);color:var(--white)}.course-heading .course-thumb svg text{fill:var(--white)}.course-intro-meta{display:flex;gap:20px;font:10px var(--mono);margin:28px 0;color:var(--muted)}.course-lessons{display:grid;grid-template-columns:1fr 310px;gap:55px;margin:35px 0}.lesson-list{border-top:1px solid var(--ink)}.lesson-list a{display:grid;grid-template-columns:45px 1fr 70px 20px;gap:16px;align-items:center;padding:22px 0;border-bottom:1px solid var(--line)}.lesson-list a>.lesson-num{font:16px var(--mono);color:var(--blue)}.lesson-list h3{margin:0 0 5px;font-size:17px;font-weight:600;letter-spacing:-.3px}.lesson-list p{margin:0;font-size:12px;color:var(--muted);line-height:1.7}.lesson-list .lesson-duration{font:9px var(--mono);color:var(--muted)}.lesson-list .icon{width:17px;height:17px;color:var(--blue)}.learning-route-note{border-left:3px solid var(--orange);padding-left:20px;font-size:12px;line-height:1.9;color:var(--muted)}.learning-route-note b{color:var(--ink);font-size:14px;display:block;margin-bottom:13px}.learning-route-note .primary-button{margin-top:15px}.reader-layout{display:grid;grid-template-columns:210px minmax(0,760px);gap:70px;max-width:1070px;margin:auto}.reader-sidebar{align-self:start;position:sticky;top:25px;padding-top:15px}.reader-sidebar>.eyebrow{font-size:9px;margin-bottom:15px}.reader-course-title{font-size:17px;font-weight:600;line-height:1.4;margin:0 0 22px}.reader-contents{border-top:1px solid var(--ink)}.reader-contents a{display:flex;gap:10px;padding:14px 3px;border-bottom:1px solid var(--line);font-size:11px;line-height:1.6}.reader-contents a>span{font:10px var(--mono);color:var(--muted);padding-top:2px}.reader-contents a.current{color:var(--blue);font-weight:550}.reader-tools{display:flex;gap:12px;margin-top:25px;flex-wrap:wrap}.reader-tools button{font:10px var(--mono);color:var(--muted);padding:0;display:flex;align-items:center;gap:5px}.reader-tools .icon{width:14px;height:14px}.reader{min-width:0}.reader-head{padding:12px 0 35px;border-bottom:1px solid var(--ink)}.reader-head h1{font-size:45px;letter-spacing:-1.7px;line-height:1.15;margin:15px 0 22px}.reader-deck{font-size:17px;color:var(--muted);line-height:1.75;margin:0 0 25px}.reader-metadata{display:flex;gap:20px;font:9px var(--mono);color:var(--muted)}.goal-box{padding:19px 22px;background:#e5e9f7;border-left:3px solid var(--blue);margin:28px 0;font-size:14px;line-height:1.75}.goal-box small{font:9px var(--mono);display:block;color:var(--blue);margin-bottom:7px;letter-spacing:.5px}.reader-section{margin:34px 0}.reader-section h2{font-size:25px;letter-spacing:-.7px;line-height:1.25;font-weight:650;margin-bottom:18px}.reader-section p{font-size:15px;line-height:1.95;color:#50564c;margin:0 0 16px}.lesson-diagram{border:1px solid var(--line);background:#eeece3;padding:24px 25px;margin:30px 0}.lesson-diagram svg{width:100%;max-height:270px;margin:auto}.diagram-caption{font:9px var(--mono);margin:18px 0 0;color:var(--muted);line-height:1.7}.takeaways{border-top:1px solid var(--ink);border-bottom:1px solid var(--ink);padding:22px 0;margin:32px 0}.takeaways h3{font:10px var(--mono);letter-spacing:.8px;color:var(--blue);margin:0 0 16px}.takeaways ul{list-style:none;padding:0;margin:0}.takeaways li{font-size:13px;line-height:1.8;display:flex;gap:11px;margin:6px 0}.takeaways li:before{content:'↗';color:var(--orange)}.code-block{background:#232720;color:#e9eddf;margin:22px 0;overflow:hidden;border:1px solid #232720}.code-block-head{display:flex;align-items:center;justify-content:space-between;padding:11px 16px;border-bottom:1px solid #4c5147;font:9px var(--mono);color:#b5bea5}.code-block-head button{display:flex;align-items:center;gap:5px;font:9px var(--mono);color:#d8ed8d;padding:0}.code-block-head .icon{width:12px;height:12px}.code-block pre{font:12px/1.95 var(--mono);padding:17px 20px;white-space:pre;margin:0;overflow-x:auto;tab-size:4}.practice-box{margin:35px 0;border:1px solid var(--ink);padding:26px 28px;background:var(--white)}.practice-box .eyebrow{margin-bottom:13px;color:var(--orange)}.practice-box h2{font-size:24px;letter-spacing:-.7px;font-weight:650;margin:0 0 18px}.practice-box ol{list-style:none;counter-reset:practice;padding:0;margin:0}.practice-box li{counter-increment:practice;display:flex;align-items:baseline;gap:15px;font-size:13px;line-height:1.85;margin-bottom:15px;color:#545b4d}.practice-box li:before{content:'0' counter(practice);font:11px var(--mono);color:var(--blue);flex-shrink:0}.practice-target{background:#edf1e1;padding:13px 15px;font-size:12px;line-height:1.8;margin:18px 0}.practice-target b{display:block;font:9px var(--mono);color:#667650;margin-bottom:5px}.practice-buttons{display:flex;gap:12px;align-items:center;flex-wrap:wrap}.practice-buttons .tag{color:var(--blue)}.lesson-details{border-top:1px solid var(--line);padding:14px 0}.lesson-details summary{font-size:13px;font-weight:550;cursor:pointer;list-style:none;display:flex;justify-content:space-between;gap:15px}.lesson-details summary:after{content:'+';font:17px var(--mono);color:var(--blue)}.lesson-details[open] summary:after{content:'−'}.lesson-details p{font-size:13px;line-height:1.9;margin:14px 0 5px;color:var(--muted)}.quiz-box{border-top:1px solid var(--ink);padding:28px 0;margin-top:34px}.quiz-box h2{font-size:24px;font-weight:650;letter-spacing:-.6px}.quiz-question{font-size:16px;font-weight:500;line-height:1.7;margin-bottom:20px}.quiz-options{display:grid;gap:9px}.quiz-option{display:flex;align-items:center;gap:12px;background:var(--white);border:1px solid var(--line);padding:13px 15px;text-align:left;font-size:13px;line-height:1.6}.quiz-option>span{width:25px;height:25px;border:1px solid var(--line);display:grid;place-items:center;font:10px var(--mono);flex-shrink:0}.quiz-option.selected{border-color:var(--blue);background:#e6ebfb}.quiz-option.correct{border-color:#759140;background:#edf3df}.quiz-option.incorrect{border-color:var(--orange);background:#f9ebe4}.quiz-feedback{margin:16px 0;font-size:13px;line-height:1.8;padding:15px 18px;background:#e9efdb;border-left:3px solid #759140}.quiz-feedback.wrong{background:#f4e8e1;border-color:var(--orange)}.lesson-notes{margin:30px 0}.lesson-notes label{display:block;font:10px var(--mono);color:var(--blue);letter-spacing:.5px;margin-bottom:12px}.lesson-notes textarea{width:100%;height:110px;resize:vertical;padding:15px 17px;font-size:13px;line-height:1.8;background:var(--white);border:1px solid var(--line)}.lesson-finish{border-top:1px solid var(--ink);padding:24px 0;display:flex;align-items:center;justify-content:space-between;gap:20px}.lesson-finish p{font-size:11px;line-height:1.8;color:var(--muted);margin:0;max-width:350px}.lesson-navigation{display:flex;justify-content:space-between;align-items:center;gap:20px;padding:25px 0;border-top:1px solid var(--line);font-size:12px}.lesson-navigation a{max-width:45%;line-height:1.7}.lesson-navigation small{display:block;font:8px var(--mono);color:var(--muted);margin-bottom:6px}.lesson-related{margin:20px 0}.lesson-related h3{font:9px var(--mono);color:var(--muted);letter-spacing:.5px;margin-bottom:12px}.lesson-related a{font-size:12px;color:var(--blue);border-bottom:1px solid var(--blue);margin-right:18px;display:inline-block;margin-bottom:9px}.reader-source{font-size:10px;line-height:1.8;color:var(--muted);margin:20px 0}.reader-source a{color:var(--blue);text-decoration:underline}
/* Reference shelf: useful documents, searchable terms, and live instruments. */
.guide-list{display:grid;grid-template-columns:1fr 1fr;gap:0 40px;border-top:1px solid var(--ink)}.guide-row{display:grid;grid-template-columns:33px 1fr 18px;gap:16px;padding:26px 0;border-bottom:1px solid var(--line);align-items:start}.guide-row>.guide-index{font:12px var(--mono);color:var(--orange);padding-top:3px}.guide-row h3{font-size:20px;font-weight:600;margin:0 0 10px;letter-spacing:-.6px}.guide-row p{font-size:12px;line-height:1.8;color:var(--muted);margin:0 0 10px}.guide-row small{font:9px var(--mono);color:var(--blue)}.guide-row .icon{width:17px;height:17px;margin-top:4px;color:var(--blue)}.reference-layout{display:grid;grid-template-columns:minmax(0,760px) 235px;gap:60px;max-width:1060px;margin:auto}.reference-aside{border-left:1px solid var(--line);padding-left:25px;align-self:start;position:sticky;top:25px}.reference-aside>a{display:block;font-size:11px;line-height:1.8;margin:14px 0}.glossary{margin:25px 0}.glossary article{display:grid;grid-template-columns:170px 1fr;gap:20px;padding:19px 0;border-bottom:1px solid var(--line)}.glossary h3{font-size:14px;font-weight:600;margin:0}.glossary p{font-size:13px;line-height:1.8;color:var(--muted);margin:0}.command-table{width:100%;border-collapse:collapse;font-size:12px;margin:25px 0}.command-table th{text-align:left;background:#eae8de;padding:13px;border:1px solid var(--line);font:9px var(--mono)}.command-table td{vertical-align:top;padding:14px 13px;border:1px solid var(--line);line-height:1.8}.command-table code{font:10px var(--mono);color:var(--blue);overflow-wrap:anywhere}.reference-table-scroll{overflow-x:auto}.reader p code,.reader li code{font:12px var(--mono);background:#e6e8db;padding:1px 4px;color:#486434}.instrument{padding:25px;border:1px solid var(--ink);background:var(--white);margin:25px 0}.instrument h3{font-size:20px;font-weight:600;letter-spacing:-.5px}.instrument-label{display:flex;justify-content:space-between;font:11px var(--mono);margin:16px 0 10px}.instrument input[type=range]{width:100%;accent-color:var(--blue);cursor:pointer}.instrument-result{font:29px var(--mono);color:var(--blue);padding:18px 0 0}.instrument-result small{font:11px var(--mono);color:var(--muted)}.instrument p{font-size:12px;color:var(--muted);line-height:1.8;margin:15px 0 0}.instrument-svg{height:130px;width:100%;margin-top:15px}.teacher-playbook{border-top:1px solid var(--ink);padding:23px 0}.teacher-playbook h3{font-size:18px;font-weight:600;margin-bottom:13px}.teacher-playbook p{font-size:13px;line-height:1.9;color:var(--muted)}
/* The simulator keeps the stage central, with readable controls. */
.mission-banner{display:flex;align-items:center;gap:18px;padding:18px 22px;background:#e9e7dc;border:1px solid var(--ink);margin:23px 0}.mission-number{font:26px var(--mono);color:var(--blue);width:45px;flex-shrink:0}.mission-number .icon{width:26px;height:26px}.mission-text{flex:1}.mission-text h2{font-size:15px;font-weight:600;margin:0 0 6px}.mission-text p{font-size:12px;color:#727663;margin:0;line-height:1.75}.mission-meta{display:flex;align-items:center;gap:13px;font:9px var(--mono);color:var(--muted)}.mission-link{font-size:11px;color:var(--blue);display:flex;align-items:center;gap:9px;white-space:nowrap}.mission-link .icon{width:17px;height:17px}.workbench{display:grid;grid-template-columns:215px minmax(300px,1fr) 335px;gap:15px;align-items:stretch}.panel{background:var(--white);border:1px solid var(--ink);min-width:0;overflow:hidden}.panel-head{display:flex;align-items:center;justify-content:space-between;gap:8px;padding:15px 16px;border-bottom:1px solid var(--ink);min-height:57px}.panel-title{display:flex;gap:9px;align-items:center;font-size:13px;font-weight:600}.panel-number{font:9px var(--mono);color:var(--muted)}.more-button{font:19px var(--mono);padding:0}.autosave-dot{width:6px;height:6px;background:var(--blue);border-radius:50%}.assembly-preview{height:175px;background:#e9e9df;position:relative;display:flex;justify-content:center;align-items:center}.assembly-preview:before{content:'';position:absolute;border:1px dashed #babdaf;width:140px;height:140px}.assembly-preview .robot-svg{width:145px;height:145px;transform:rotate(-18deg);position:relative;filter:none}.assembly-caption{font:8px var(--mono);position:absolute;bottom:9px;color:#6e7565}.component-heading{display:flex;justify-content:space-between;font:9px var(--mono);padding:16px 14px 7px;color:var(--muted)}.component-list{padding:0 12px}.component-item{display:flex;align-items:center;gap:8px;padding:12px 0;border-bottom:1px solid var(--line)}.component-item:last-child{border:0}.component-image{height:30px;width:30px;display:grid;place-items:center;background:#e2e8f9;color:var(--blue);flex-shrink:0}.component-image .icon{width:22px;height:22px}.component-item b{font-size:11px;font-weight:550;display:block;line-height:1.45}.component-item small{font:8px var(--mono);color:var(--muted);display:block;margin-top:5px}.component-toggle{border:1px solid var(--line);display:grid;place-items:center;width:26px;height:26px;flex-shrink:0;margin-left:auto;color:var(--blue)}.component-toggle .icon{width:12px;height:12px}.component-toggle.installed{background:#e2e8f9;border-color:#c2cdec}.component-item.optional{color:#777d70}.robot-footer{padding:15px;border-top:1px solid var(--ink);margin-top:8px}.robot-state{font-size:10px;display:flex;align-items:center;gap:6px;color:var(--ink)}.robot-state>span{width:5px;height:5px;background:#809c50;border-radius:50%}.robot-weight{font:8px var(--mono);margin-top:8px;color:var(--muted)}.track-select{border:0;background:none;font-weight:600;font-size:12px;max-width:160px;cursor:pointer}.track-info{font:8px var(--mono);color:var(--muted);display:flex;align-items:center;gap:5px}.track-info>span{width:5px;height:5px;background:var(--orange);border-radius:50%}.track-panel{display:flex;flex-direction:column}.track-stage{height:375px;position:relative;background:#eeede6;overflow:hidden}.track-stage canvas{width:100%;height:100%;display:block}.stage-tag{position:absolute;top:14px;left:14px;font:8px var(--mono);color:#7c8270;pointer-events:none}.stage-scale{position:absolute;bottom:14px;left:14px;font:8px var(--mono);border-top:1px solid #999f8c;padding-top:5px;color:#777f69;pointer-events:none}.stage-buttons{display:flex;gap:4px;position:absolute;bottom:13px;right:13px}.stage-buttons button{height:26px;min-width:26px;display:grid;place-items:center;background:var(--white);border:1px solid var(--line);font:9px var(--mono);padding:0 5px}.stage-buttons .icon{width:12px;height:12px}.simulation-controls{display:flex;align-items:center;gap:8px;padding:13px;border-top:1px solid var(--ink)}.run-button{padding:10px 13px;font-size:11px}.run-button .icon{width:14px;height:14px;fill:currentColor}.timer{margin-left:auto;font:19px var(--mono);white-space:nowrap;color:var(--blue);letter-spacing:-.5px}.timer small{display:block;font:7px var(--mono);color:var(--muted);letter-spacing:.6px;margin-bottom:4px}.sensors{padding:15px 14px;border-top:1px solid var(--ink)}.section-label{font:8px var(--mono);letter-spacing:.6px;color:#68765a;display:flex;justify-content:space-between;gap:10px}.section-label span{font-size:7px;letter-spacing:0;color:var(--muted)}.sensor-values{display:grid;grid-template-columns:1fr 1fr 1fr;gap:8px;margin-top:12px}.sensor-values>div{border-right:1px solid var(--line);padding:0 7px}.sensor-values>div:first-child{padding-left:0}.sensor-values>div:last-child{border:0}.sensor-values small{font-size:9px;color:#758066;display:flex;align-items:center;gap:4px}.sensor-values .icon{width:12px;height:12px}.sensor-values b{display:block;font:15px var(--mono);margin-top:6px;color:var(--ink)}.sensor-values b>span{font:9px var(--mono);color:#7f8a70}.color-dot{width:9px;height:9px;border-radius:50%;display:inline-block;vertical-align:middle;margin-right:4px;background:#323d2c}.program-panel{display:flex;flex-direction:column}.mode-tabs{display:flex;margin:13px 14px 0;border:1px solid var(--line);background:#e8e7dd;padding:3px;gap:3px}.mode-tabs button{flex:1;font-size:11px;padding:8px;display:flex;align-items:center;justify-content:center;gap:6px;color:var(--muted)}.mode-tabs button.active{background:var(--white);color:var(--blue)}.mode-tabs .icon{width:13px;height:13px}.program-editor{flex:1;padding:20px 15px;background:radial-gradient(#d9dccf .7px,transparent .7px) 0 0/15px 15px;min-height:350px}.block-start{width:185px;padding:11px 12px;background:#f0c777;border:1px solid #ca9c46;font-size:11px;display:flex;align-items:center;gap:8px;color:#665020;margin-bottom:9px;border-radius:7px 7px 2px 2px;position:relative}.block-start:after{content:'';width:18px;height:6px;position:absolute;bottom:-6px;left:20px;background:#f0c777;border:1px solid #ca9c46;border-top:0;border-radius:0 0 3px 3px;z-index:1}.block-start .icon{width:13px;height:13px}.block-loop{padding:12px;background:#f3a580;border:1px solid #d58964;border-radius:3px;color:#8b4c2d}.loop-label{display:flex;align-items:center;gap:8px;font-size:11px;margin-bottom:12px}.loop-label .icon{width:14px;height:14px}.block-row{display:flex;gap:6px;align-items:center;flex-wrap:wrap;margin-left:8px;padding:11px 9px;background:#b3d9bc;border:1px solid #8eb89a;border-radius:3px;color:#396544;font-size:10px}.block-row input{width:35px;border:1px solid #85af90;background:#f1f8ee;font:10px var(--mono);padding:3px;text-align:center;border-radius:2px}.block-motor{background:#b2c8ed;border:1px solid #8da8d7;color:#375a95;padding:11px 9px;margin:7px 0 0 18px;border-radius:3px;font-size:10px}.motor-label{display:flex;gap:6px;align-items:center}.motor-label .icon{width:13px;height:13px}.speed-control{display:flex;gap:8px;align-items:center;margin-top:11px;font:9px var(--mono)}.speed-control input{width:100px;accent-color:var(--blue);height:5px}.speed-control output{font:10px var(--mono);background:#eff3fc;padding:3px 5px;border:1px solid #94afd9;border-radius:2px}.block-note{font:8px var(--mono);margin:13px 0 0 10px}.extra-block{display:flex;align-items:center;gap:7px;padding:9px;margin:7px 0 0 18px;background:#b2c8ed;border:1px solid #8da8d7;font-size:10px;border-radius:3px;color:#375a95}.extra-block input{width:37px;padding:3px;background:#eef3fb;border:1px solid #8da8d7;font:10px var(--mono)}.remove-block{margin-left:auto;padding:0;font-size:18px}.add-block{display:flex;align-items:center;justify-content:center;gap:6px;border:1px dashed #afb89d;padding:10px;width:100%;font-size:11px;color:#6a7d52;margin-top:15px;background:var(--white)}.add-block .icon{width:13px;height:13px}.editor-hint{font-size:9px;line-height:1.8;color:#7a8966;text-align:center;margin:13px 0 0}.program-console{border-top:1px solid var(--ink);background:#e9e7dc;padding:13px 15px;min-height:86px}.console-title{font:9px var(--mono);display:flex;justify-content:space-between;gap:9px;color:#697b52}.console-title>span{font-size:8px;color:#869573}.console-message{font:9px/1.9 var(--mono);color:var(--ink);margin:9px 0 0;white-space:pre-wrap;overflow-wrap:anywhere}.console-message.error{color:#ae4b2e}.python-editor{height:285px}.python-editor textarea{width:100%;height:100%;resize:vertical;border:1px solid #d7ddcc;background:var(--white);padding:12px 10px;font:11px/1.9 var(--mono);tab-size:4;color:var(--ink)}.python-info{font-size:10px;color:#727f65;line-height:1.8;margin-top:13px}.python-info button{color:var(--blue);font-size:10px;padding:0;text-decoration:underline}.below-workbench{display:grid;grid-template-columns:1fr 1fr;gap:18px;margin-top:23px}.below-card{padding:19px 20px;border-top:1px solid var(--ink);border-bottom:1px solid var(--line);display:flex;align-items:center;gap:13px}.below-icon{color:var(--orange)}.below-icon .icon{width:23px;height:23px}.below-card b{font-size:12px;font-weight:550;display:block}.below-card p{font-size:11px;color:var(--muted);margin:6px 0 0}.below-card button{font-size:11px;color:var(--blue);display:flex;align-items:center;gap:6px;margin-left:auto;white-space:nowrap}.below-card button .icon{width:15px;height:15px}.lab-lesson-banner{display:flex;justify-content:space-between;gap:20px;border-left:4px solid var(--orange);background:#f7e5d9;padding:16px 20px;margin:17px 0}.lab-lesson-banner b{font-size:13px}.lab-lesson-banner p{font-size:12px;color:#936e50;margin:5px 0 0}.lab-lesson-banner a{font-size:12px;color:var(--blue);white-space:nowrap;align-self:center}.lab-snapshot{font:10px var(--mono);color:var(--muted);padding:12px 0}.lab-values{display:flex;gap:20px;font:10px var(--mono);padding:11px 14px;background:#e7e9df;border-top:1px solid var(--line)}.lab-values b{color:var(--blue);font-weight:500}.fullscreen-stage{position:fixed!important;z-index:50;inset:0;height:100vh!important;width:100vw!important}.fullscreen-stage .stage-buttons{bottom:25px;right:25px}
/* Progress, class and the legacy task arena share the same table language. */
.stat-row{display:grid;grid-template-columns:repeat(3,1fr);gap:26px;margin:28px 0}.stat-card{border-top:2px solid var(--ink);padding:20px 0 18px;border-bottom:1px solid var(--line);background:none}.stat-card small{font:10px var(--mono);color:var(--muted)}.stat-card strong{display:block;font:39px var(--mono);color:var(--blue);margin:14px 0 13px}.stat-card p{font-size:12px;color:var(--muted);line-height:1.8;margin:0}.table-wrap{border-top:1px solid var(--ink);border-bottom:1px solid var(--ink);overflow:auto}.data-table{width:100%;border-collapse:collapse}.data-table th{padding:15px 16px;text-align:left;font:9px var(--mono);color:var(--muted);background:#eae7dc;white-space:nowrap}.data-table td{padding:18px 16px;border-top:1px solid var(--line);font-size:12px;white-space:nowrap;color:#657055}.data-table td b{font-weight:550;color:var(--ink)}.success-pill,.failed-pill{font:9px var(--mono);padding:5px 7px;background:#e4edcf;color:#54752f}.failed-pill{background:#f3e3d8;color:#ad673a}.name-chip{width:30px;height:30px;border:1px solid var(--ink);background:var(--lime);border-radius:50%;display:inline-grid;place-items:center;font:11px var(--mono);margin-right:10px}.progress-bar{width:75px;height:4px;background:#dfe3d3;display:inline-block;vertical-align:middle;margin-left:9px}.progress-bar>span{display:block;height:100%;background:var(--blue)}.teacher-toolbar{display:flex;gap:9px;flex-wrap:wrap}.page-note{font-size:11px;line-height:1.9;color:var(--muted);margin-top:20px;max-width:850px}.empty-state{padding:50px 20px;border:1px dashed #a9ae9b;text-align:center;margin:25px 0;background:#eeeee3}.empty-state>.icon{margin:0 auto 20px;width:35px;height:35px;color:var(--blue)}.empty-state h3{font-size:20px;font-weight:600;letter-spacing:-.5px;margin-bottom:13px}.empty-state p{font-size:13px;color:var(--muted);line-height:1.9}.task-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:25px}.task-card{border-top:2px solid var(--ink);padding:20px 0;display:flex;flex-direction:column}.task-illustration{height:140px;background:#e5e8db;border:1px solid #cbd2bf;margin-bottom:18px}.task-illustration svg{height:100%;width:100%}.task-topline{display:flex;justify-content:space-between;font:9px var(--mono);color:var(--muted)}.task-card h3{font-size:21px;font-weight:600;letter-spacing:-.5px;margin:15px 0 12px}.task-card p{font-size:13px;line-height:1.8;color:var(--muted);margin-bottom:20px}.task-card button{color:var(--blue);font-size:12px;display:flex;gap:8px;align-items:center;margin-top:auto;padding:0}.task-card button .icon{width:16px;height:16px}.filter-tabs{display:flex;gap:4px;background:#e5e6da;padding:4px}.filter-tabs button{padding:7px 11px;font-size:11px;color:var(--muted)}.filter-tabs button.active{background:var(--white);color:var(--blue)}.tournament-hero{padding:35px 38px;border:1px solid var(--ink);display:flex;align-items:center;justify-content:space-between;gap:20px;background:var(--lime)}.tournament-hero h2{font-size:39px;font-weight:700;letter-spacing:-1.5px;margin:20px 0}.tournament-hero p{font-size:14px;color:#5b6c44;line-height:1.85;margin-bottom:22px}.tournament-hero .cup-art{width:150px;height:150px;fill:#bdce72;stroke:#506329;stroke-width:1}.field-label{display:block;font-size:12px;margin:14px 0 7px}.text-field{width:100%;border:1px solid var(--line);padding:11px 13px;background:var(--white)}
/* Small UI that should never dominate the lesson. */
.footer{border-top:1px solid var(--ink);padding:32px 54px 38px;display:flex;justify-content:space-between;gap:30px;align-items:flex-start}.footer-wordmark{font-size:24px;font-weight:750;letter-spacing:-1px}.footer-wordmark span{color:var(--orange);margin-left:7px}.footer p{font-size:11px;color:var(--muted);line-height:1.9;margin:0}.footer>div{display:flex;gap:18px;align-items:center}.footer>div a,.footer>div button{font-size:11px;padding:0}.footer-edition{font:8px/1.9 var(--mono);color:var(--muted);text-align:right}.toast{position:fixed;bottom:25px;left:50%;transform:translate(-50%,15px);background:var(--ink);color:var(--white);padding:14px 22px;border:1px solid #52594b;font-size:12px;z-index:80;opacity:0;pointer-events:none;transition:opacity .18s,transform .18s;max-width:calc(100vw - 30px);width:max-content}.toast.show{opacity:1;transform:translate(-50%,0)}dialog{width:550px;max-width:calc(100vw - 30px);max-height:85vh;padding:0;border:1px solid var(--ink);background:var(--white);color:var(--ink);border-radius:0;box-shadow:8px 8px 0 #20242130}dialog::backdrop{background:#151d2373;backdrop-filter:blur(2px)}.modal-head{display:flex;align-items:center;justify-content:space-between;gap:20px;padding:22px 25px;border-bottom:1px solid var(--ink)}.modal-head h2{font-size:24px;font-weight:650;letter-spacing:-.8px;margin:0}.modal-content{padding:24px 25px;font-size:13px;line-height:1.9;color:#657252}.modal-content>p:first-child{margin-top:0}.modal-content h3{font-size:15px;color:var(--ink);font-weight:600}.modal-content ol{padding-left:21px}.modal-content li{padding:5px 0}.modal-content code{font:11px var(--mono);background:#e7edde;padding:2px 4px}.modal-content pre{font:11px/1.85 var(--mono);padding:16px;background:#e9eddf;overflow-x:auto;color:#42672d}.modal-content .primary-button{margin-top:12px}.modal-content>.robot-svg{width:140px;height:140px;margin:0 auto 25px}.shortcut{font:10px var(--mono);border:1px solid #a9b59a;padding:3px 6px;background:#e5ecd8}.block-palette{display:grid;gap:9px}.block-palette button{display:flex;align-items:center;gap:14px;padding:15px;border:1px solid var(--line);background:#f0f2e7;text-align:left;font-size:13px}.block-palette small{display:block;font-size:11px;margin-top:5px;color:var(--muted)}.block-palette .icon{color:var(--blue)}.result-heading{display:flex;align-items:center;gap:10px;font-size:14px;color:#5e7b3e;font-weight:600}.result-heading .icon{width:26px;height:26px}.result-score{font:55px var(--mono);color:var(--blue);letter-spacing:-3px;margin:20px 0}.result-stats{display:grid;grid-template-columns:1fr 1fr;gap:13px}.result-stats>div{padding:14px;background:#e9eddc}.result-stats small{font:9px var(--mono);display:block;color:#7c8b68}.result-stats b{display:block;font:16px var(--mono);color:#536d38;margin-top:7px}.completion-actions{display:flex;gap:12px;margin-top:22px}.completion-actions>button,.completion-actions>a{flex:1}.hidden{display:none!important}.experiment-stamp,.sidebar{display:none}.intro-art{display:flex;gap:12px}.reading-progress{height:3px;position:fixed;top:0;left:0;z-index:90;background:var(--blue);width:0}.scroll-top{font:9px var(--mono);color:var(--muted);display:block;margin:20px 0}.print-only{display:none}
@media(min-width:1550px){.site-header,.app-shell{max-width:1500px}.hero-copy h1{font-size:76px}.workbench{grid-template-columns:235px minmax(400px,1fr) 365px}.track-stage{height:420px}.program-editor{min-height:395px}}
@media(max-width:1200px){.site-header{padding:0 34px;gap:25px}.main-nav{gap:21px}.header-utility{gap:13px}.context-bar{padding-left:34px;padding-right:34px}main{padding-left:34px;padding-right:34px}.learn-hero{gap:25px}.hero-copy h1{font-size:59px}.curriculum-layout{gap:35px;grid-template-columns:minmax(0,1fr) 255px}.course-row h3{font-size:21px}.workbench{grid-template-columns:190px minmax(280px,1fr) 300px;gap:12px}.component-item b{font-size:10px}.component-image{width:27px;height:27px}.component-toggle{width:24px;height:24px}.block-row{font-size:9px}.speed-control input{width:84px}.track-info{display:none}.track-stage{height:365px}.footer{padding-left:34px;padding-right:34px;gap:22px}.footer>div{gap:13px}.reader-layout{gap:45px;grid-template-columns:195px minmax(0,1fr)}.reference-layout{gap:40px;grid-template-columns:minmax(0,1fr) 215px}}
@media(max-width:1024px){.site-header{height:83px;padding:0 25px;gap:20px}.brand{font-size:28px;gap:9px}.brand-mark{width:35px;height:35px;font-size:27px}.main-nav{gap:17px}.main-nav a{font-size:12px}.teacher-link{font-size:10px}.header-utility{gap:11px}.context-bar{padding-left:25px;padding-right:25px;font-size:8px}.context-bar .local-status{font-size:8px}main{padding-left:25px;padding-right:25px}.learn-hero{gap:15px;padding-top:18px}.hero-copy h1{font-size:51px;letter-spacing:-2.5px}.hero-copy p{font-size:13px}.hero-actions{gap:12px}.hero-actions .primary-button{font-size:12px;padding:13px 15px}.hero-bottomline{font-size:8px;gap:12px}.curriculum-layout{grid-template-columns:minmax(0,1fr) 225px;gap:30px}.course-row{grid-template-columns:40px 1fr 58px 15px;gap:12px}.course-row h3{font-size:19px}.course-row p{font-size:11px}.course-index{font-size:23px}.course-thumb{height:58px;width:58px}.course-thumb svg{width:47px;height:47px}.course-meta{font-size:8px;gap:10px}.aside-note{padding:22px 19px}.aside-note h3{font-size:20px}.aside-reading a{font-size:11px}.workbench{grid-template-columns:200px minmax(0,1fr);gap:16px}.track-stage{height:370px}.program-panel{grid-column:1/-1;display:grid;grid-template-columns:185px 1fr 205px}.program-panel>.panel-head{grid-column:1;grid-row:1;border:0;align-self:start;padding:22px 16px}.mode-tabs{grid-column:1;grid-row:1;align-self:start;margin-top:66px}.program-editor{grid-column:2;grid-row:1;border-left:1px solid var(--ink);border-right:1px solid var(--ink);min-height:300px;padding:19px}.program-console{grid-column:3;grid-row:1;border:0;padding:23px 16px}.program-editor .block-loop{max-width:310px}.program-editor .add-block{max-width:310px}.editor-hint{text-align:left}.python-editor{height:250px}.block-row{font-size:10px}.block-motor{font-size:10px}.component-item b{font-size:11px}.component-item{padding:13px 0}.assembly-preview{height:187px}.mission-meta{display:none}.course-heading{grid-template-columns:1fr 200px;gap:25px}.course-heading h1{font-size:48px}.course-heading .course-thumb{width:180px;height:180px}.course-heading .course-thumb svg{width:145px;height:145px}.course-lessons{grid-template-columns:1fr 250px;gap:35px}.reader-layout{grid-template-columns:175px minmax(0,1fr);gap:35px}.reader-head h1{font-size:38px}.reader-deck{font-size:15px}.reader-section p{font-size:14px}.reference-layout{grid-template-columns:minmax(0,1fr) 190px;gap:30px}.reference-aside{padding-left:20px}.footer{padding:30px 25px;flex-wrap:wrap}.footer-edition{margin-left:auto}.footer p{font-size:10px}.footer>div a,.footer>div button{font-size:10px}h1{font-size:42px}}
@media(max-width:800px){.teacher-link{display:none}.main-nav{gap:16px}.header-utility{margin-left:0}.curriculum-layout{grid-template-columns:1fr}.learning-aside{display:grid;grid-template-columns:1fr 1fr;gap:30px;align-items:start}.aside-reading{margin:23px 0 0;padding-top:20px}.learn-hero{grid-template-columns:1.05fr 1fr;gap:5px}.hero-copy h1{font-size:43px;letter-spacing:-2px}.hero-copy p{font-size:12px;max-width:300px}.hero-actions{align-items:flex-start;flex-direction:column;gap:13px}.hero-bottomline{margin-top:25px;flex-wrap:wrap;gap:10px}.hero-figure{align-self:start;margin-top:30px}.figure-caption{font-size:7px;padding:0 5px}.course-row{grid-template-columns:50px 1fr 75px 20px;gap:16px}.course-row h3{font-size:22px}.course-thumb{height:75px;width:75px}.course-thumb svg{height:60px;width:60px}.course-meta{font-size:9px}.course-row p{font-size:12px}.course-lessons{grid-template-columns:1fr}.learning-route-note{margin:10px 0}.reader-layout{grid-template-columns:1fr;gap:25px}.reader-sidebar{position:static;display:block;padding-top:0}.reader-course-title{font-size:15px;margin-bottom:15px}.reader-contents{display:none}.reader-tools{margin:12px 0}.reader-sidebar>.eyebrow{margin-bottom:9px}.reader-head{padding-top:0}.reference-layout{grid-template-columns:1fr}.reference-aside{position:static;display:flex;flex-wrap:wrap;gap:0 15px;border:0;border-top:1px solid var(--ink);padding:15px 0}.reference-aside>a{margin:8px 0}.reference-aside>.eyebrow{width:100%;margin-bottom:5px}.lesson-diagram{padding:20px}.guide-list{gap:0 25px}.guide-row h3{font-size:18px}.workbench{grid-template-columns:185px minmax(0,1fr);gap:13px}.program-panel{grid-template-columns:170px 1fr 175px}.program-console{padding:23px 14px}.program-editor{padding:18px 13px}.program-panel>.panel-head{padding:22px 12px}.panel-title{font-size:12px}.mode-tabs{margin-left:10px;margin-right:10px}.track-info{display:none}.block-row{font-size:9px}.block-motor{font-size:9px}.speed-control input{width:70px}.simulation-controls{padding:12px 11px}.timer{font-size:17px}.mission-text p{font-size:11px}.footer>div{gap:15px}}
@media(max-width:640px){.site-header{height:73px;padding:0 20px;justify-content:space-between;gap:15px;position:relative}.brand{font-size:27px;letter-spacing:-1.3px}.brand-mark{width:33px;height:33px;font-size:26px}.main-nav{position:absolute;top:73px;left:0;right:0;background:var(--white);border-bottom:1px solid var(--ink);height:auto;display:none;z-index:20;margin:0;padding:15px 20px;gap:0;flex-direction:column;align-items:stretch}.main-nav.open{display:flex}.main-nav a{font-size:15px;padding:12px 0;border-bottom:1px solid var(--line);height:auto}.main-nav a.active{border-bottom:1px solid var(--line);color:var(--blue)}.main-nav a:last-child{border:0}.mobile-menu{display:block;line-height:1;padding:0}.header-utility{gap:15px}.avatar{width:30px;height:30px;font-size:12px}.context-bar{padding:13px 20px;font-size:7px;gap:12px;letter-spacing:.4px}.context-bar>.breadcrumb:before{margin-right:12px}.context-bar .local-status{font-size:0;margin-left:auto}.context-bar .local-status>span{width:5px;height:5px}main{padding:17px 20px 35px}.learn-hero{display:flex;flex-direction:column;gap:25px;align-items:stretch;padding:7px 0 30px}.hero-copy h1{font-size:51px;letter-spacing:-2.5px;line-height:1.05;margin:20px 0 22px}.hero-copy p{font-size:14px;line-height:1.85;max-width:420px;margin-bottom:22px}.hero-actions{flex-direction:row;align-items:center;gap:20px}.hero-actions .primary-button{font-size:12px;padding:13px 17px}.hero-actions .simple-link{font-size:11px}.hero-bottomline{margin-top:25px;font-size:8px;gap:14px}.hero-figure{margin:0;align-self:stretch;max-width:440px}.figure-caption{font-size:7px}.eyebrow{font-size:9px;letter-spacing:.7px}.learning-status-strip{gap:12px;flex-wrap:wrap;padding:20px 0}.strip-number{font-size:10px}.strip-course{font-size:12px;min-width:190px}.strip-course small{font-size:8px}.strip-progress{font-size:9px;display:none}.strip-link{margin-left:0;font-size:11px;width:100%;padding-left:28px}.curriculum-layout{gap:25px}.section-heading{margin:30px 0 17px;gap:15px}.section-heading h2{font-size:24px;letter-spacing:-.8px}.section-heading>span{font-size:8px;text-align:right}.course-row{grid-template-columns:35px minmax(0,1fr) 18px;gap:12px;padding:24px 0}.course-index{font-size:20px}.course-row h3{font-size:21px;line-height:1.3;margin-bottom:9px}.course-row p{font-size:12px;line-height:1.75;margin-bottom:12px}.course-row .course-thumb{display:none}.course-meta{gap:10px;font-size:8px;flex-wrap:wrap}.course-row>.icon{width:17px;height:17px}.learning-aside{grid-template-columns:1fr;gap:5px}.aside-note{padding:24px 23px;margin-top:18px}.aside-note h3{font-size:25px}.aside-note p{font-size:13px}.aside-reading{margin-top:15px}.aside-reading a{font-size:13px;padding:13px 0}.material-search{max-width:none;margin-top:15px}.material-search input{font-size:12px}.search-result{padding:17px 0}.search-result b{font-size:15px}.search-result small{font-size:8px}.page-intro{align-items:flex-start;flex-direction:column;gap:18px;padding:6px 0 23px;margin-bottom:20px}h1{font-size:38px;letter-spacing:-1.5px;margin-bottom:17px}.intro-sub{font-size:13px;line-height:1.85}.primary-button,.secondary-button{font-size:11px;padding:11px 15px}.back-link{font-size:10px;margin-bottom:24px}.course-heading{display:block;padding:0 0 28px}.course-heading h1{font-size:44px;line-height:1.07;letter-spacing:-2px}.course-heading p{font-size:14px}.course-heading .course-thumb{display:none}.course-intro-meta{font-size:9px;gap:16px;margin:25px 0}.course-lessons{gap:25px;margin-top:27px}.lesson-list a{grid-template-columns:32px 1fr 17px;gap:13px;padding:19px 0}.lesson-list h3{font-size:17px;line-height:1.35}.lesson-list p{font-size:11px}.lesson-list .lesson-duration{display:none}.lesson-list .lesson-num{font-size:13px}.reader-head h1{font-size:35px;letter-spacing:-1.5px;margin-top:13px}.reader-deck{font-size:15px;line-height:1.75}.reader-metadata{gap:14px;font-size:8px}.reader-head{padding-bottom:25px}.goal-box{font-size:13px;padding:17px 18px;margin:24px 0}.reader-section{margin:28px 0}.reader-section h2{font-size:23px;line-height:1.3}.reader-section p{font-size:14px;line-height:1.95}.lesson-diagram{padding:16px;margin:24px 0}.diagram-caption{font-size:8px}.takeaways{margin:25px 0;padding:20px 0}.takeaways li{font-size:12px}.code-block pre{font-size:10px;padding:15px 16px;line-height:1.95}.code-block-head{padding:11px 14px;font-size:8px}.code-block-head button{font-size:8px}.practice-box{padding:22px 19px;margin:28px 0}.practice-box h2{font-size:22px}.practice-box li{font-size:12px;gap:11px}.practice-box li:before{font-size:10px}.practice-target{font-size:11px;padding:12px 13px}.practice-buttons{gap:9px}.lesson-details summary{font-size:12px}.lesson-details p{font-size:12px}.quiz-box h2{font-size:23px}.quiz-question{font-size:15px}.quiz-option{font-size:12px;padding:12px 13px}.quiz-feedback{font-size:12px;padding:14px 15px}.lesson-finish{align-items:flex-start;flex-direction:column;gap:14px}.lesson-finish p{font-size:11px}.lesson-navigation{font-size:11px}.lesson-related a{font-size:11px;margin-right:14px}.lesson-notes textarea{font-size:12px}.guide-list{grid-template-columns:1fr;gap:0}.guide-row{padding:23px 0;gap:13px;grid-template-columns:28px 1fr 16px}.guide-row h3{font-size:20px}.guide-row p{font-size:12px}.guide-index{font-size:11px}.glossary article{grid-template-columns:1fr;gap:8px;padding:17px 0}.glossary p{font-size:12px}.command-table{font-size:11px}.command-table th{font-size:8px;padding:10px}.command-table td{padding:11px 10px;min-width:125px}.command-table code{font-size:9px}.instrument{padding:20px}.instrument h3{font-size:20px}.instrument-label{font-size:10px}.instrument-result{font-size:26px}.instrument p{font-size:12px}.mission-banner{padding:15px;gap:13px;margin:20px 0}.mission-number{font-size:21px;width:32px}.mission-text h2{font-size:13px}.mission-text p{font-size:11px}.mission-link{font-size:0;gap:0}.mission-link .icon{width:18px;height:18px}.workbench{grid-template-columns:1fr;gap:15px}.track-panel{grid-column:1;grid-row:1}.track-stage{height:auto;aspect-ratio:720/520;min-height:245px}.track-panel .panel-head{padding:15px}.track-select{font-size:12px}.panel-head{min-height:52px}.panel-title{font-size:13px}.panel-number{font-size:9px}.stage-tag{font-size:7px;top:11px;left:11px}.stage-scale{font-size:7px;left:11px;bottom:11px}.stage-buttons{bottom:11px;right:11px}.stage-buttons button{font-size:8px;min-width:25px;height:25px}.simulation-controls{padding:12px 13px;gap:7px}.run-button{padding:10px 13px;font-size:11px}.simulation-controls .icon-button{width:33px;height:35px}.timer{font-size:17px}.timer small{font-size:6px}.sensors{padding:14px 13px}.section-label{font-size:8px;letter-spacing:.4px}.section-label>span{font-size:6px}.sensor-values{gap:7px}.sensor-values small{font-size:8px;white-space:nowrap}.sensor-values b{font-size:14px}.sensor-values .icon{width:11px;height:11px}.robot-panel{grid-column:1;grid-row:2;display:grid;grid-template-columns:120px minmax(0,1fr)}.robot-panel .panel-head{grid-column:1/-1;padding:14px 15px}.assembly-preview{grid-column:1;grid-row:2/4;height:auto;border-right:1px solid var(--ink);min-height:204px}.assembly-preview .robot-svg{width:108px;height:108px}.assembly-preview:before{width:99px;height:110px}.assembly-caption{font-size:6px;bottom:14px}.component-heading{grid-column:2;padding:13px 11px 5px;font-size:8px}.component-list{grid-column:2;padding:0 10px 5px}.component-item{padding:9px 0;gap:7px}.component-item b{font-size:10px}.component-item small{font-size:7px}.component-image{width:26px;height:26px}.component-image .icon{width:20px;height:20px}.component-toggle{width:24px;height:24px}.robot-footer{grid-column:1/-1;padding:12px 14px;display:flex;justify-content:space-between;align-items:center;gap:8px;margin:0}.robot-state{font-size:9px}.robot-weight{font-size:6px;margin:0}.program-panel{grid-column:1;grid-row:3;display:flex}.program-panel>.panel-head{padding:14px 15px;align-self:auto;border-bottom:1px solid var(--ink)}.mode-tabs{margin:13px 15px 0;align-self:auto}.mode-tabs button{font-size:11px;padding:9px}.program-editor{padding:20px 17px;border:0;min-height:0}.program-editor .block-loop,.program-editor .add-block{max-width:none}.block-start{font-size:11px}.block-loop{padding:13px}.loop-label{font-size:11px}.block-row{font-size:11px;padding:11px 9px}.block-motor{font-size:11px;padding:11px 9px}.speed-control{font-size:9px;gap:9px}.speed-control input{width:125px}.block-note{font-size:8px}.add-block{font-size:11px;padding:12px}.editor-hint{font-size:9px;text-align:center}.program-console{padding:14px 17px;border-top:1px solid var(--ink);min-height:75px}.console-message{font-size:10px}.console-title{font-size:9px}.python-editor{height:280px}.python-editor textarea{font-size:11px}.python-info{font-size:10px}.below-workbench{grid-template-columns:1fr;gap:10px;margin-top:20px}.below-card{padding:16px 5px;gap:12px}.below-card b{font-size:11px}.below-card p{font-size:10px}.below-card button{font-size:10px}.lab-lesson-banner{padding:14px 16px;flex-direction:column;gap:10px}.lab-lesson-banner b{font-size:12px}.lab-lesson-banner p{font-size:11px}.lab-lesson-banner a{align-self:flex-start;font-size:11px}.lab-values{font-size:9px;gap:15px;flex-wrap:wrap}.stat-row{gap:15px;margin:24px 0}.stat-card{padding:16px 0}.stat-card small{font-size:8px;line-height:1.8;display:block}.stat-card strong{font-size:29px;margin:12px 0}.stat-card p{font-size:10px;line-height:1.8}.data-table th{font-size:8px;padding:13px}.data-table td{font-size:11px;padding:15px 13px}.teacher-toolbar{gap:8px}.teacher-toolbar .primary-button,.teacher-toolbar .secondary-button{font-size:10px;padding:10px 12px}.teacher-playbook h3{font-size:17px}.teacher-playbook p{font-size:12px}.page-note{font-size:10px}.task-grid{grid-template-columns:1fr;gap:15px}.task-illustration{height:155px}.task-card h3{font-size:23px}.task-card p{font-size:13px}.task-topline{font-size:9px}.filter-tabs button{font-size:10px;padding:6px 8px}.tournament-hero{padding:25px 23px;gap:12px}.tournament-hero h2{font-size:29px;letter-spacing:-1px}.tournament-hero p{font-size:12px}.tournament-hero .cup-art{display:none}.empty-state{padding:35px 18px}.empty-state h3{font-size:19px}.empty-state p{font-size:12px}.footer{padding:25px 20px 30px;gap:20px;display:grid;grid-template-columns:1fr 1fr}.footer-wordmark{font-size:24px}.footer p{font-size:10px;justify-self:end}.footer>div{grid-column:1/-1;justify-content:space-between;gap:12px}.footer>div a,.footer>div button{font-size:11px}.footer-edition{grid-column:1/-1;text-align:left;font-size:7px;line-height:1.8;margin:0}.toast{font-size:11px;padding:13px 17px;text-align:center}.modal-head{padding:18px 20px}.modal-head h2{font-size:22px}.modal-content{padding:21px 20px;font-size:12px}.modal-content pre{font-size:10px}.result-score{font-size:46px}.result-heading{font-size:13px}.result-stats>div{padding:12px}.completion-actions{gap:10px}.completion-actions .primary-button,.completion-actions .secondary-button{font-size:10px;padding:10px 12px}}
@media(max-width:380px){.hero-copy h1{font-size:46px}.site-header{padding:0 16px}main{padding-left:16px;padding-right:16px}.context-bar{padding-left:16px;padding-right:16px}.hero-actions{gap:15px}.hero-actions .simple-link{font-size:10px}.hero-bottomline{gap:11px;font-size:7px}.course-row h3{font-size:20px}.robot-panel{grid-template-columns:110px 1fr}.component-item b{font-size:9px}.component-image{width:24px;height:24px}.component-item{gap:5px}.robot-footer{padding:12px}.robot-weight{font-size:6px}.simulation-controls{gap:5px;padding:12px 10px}.run-button{padding:10px 11px;font-size:10px}.timer{font-size:15px}.speed-control input{width:107px}.section-label>span{display:none}.sensor-values small{font-size:7px}.course-heading h1{font-size:40px}.reader-head h1{font-size:32px}.quiz-option{font-size:11px}.practice-box{padding:20px 17px}.footer{padding-left:16px;padding-right:16px}}
@media(prefers-reduced-motion:reduce){*{animation:none!important;transition:none!important;scroll-behavior:auto!important}}
@media print{.site-header,.context-bar,.footer,.reader-sidebar,.reference-aside,.practice-buttons,.quiz-options,.reader-tools,.lesson-finish,.lesson-navigation,.lesson-notes,.toast,.back-link{display:none!important}body{background:white;color:black;font-size:12pt}main{padding:0}.reader-layout,.reference-layout{display:block}.reader-head h1{font-size:28pt}.reader-section p{font-size:11pt;line-height:1.65}.code-block{background:#eee;color:black;break-inside:avoid}.practice-box,.lesson-diagram,.quiz-box{break-inside:avoid}.lesson-details>p{display:block}.print-only{display:block}.reader-head,.goal-box{break-inside:avoid}}

.material-search{display:block}.console-message{max-height:150px;overflow-y:auto}.brand-period{font-size:7px;margin-left:-3px}

.lesson-diagram svg text{font-size:14px}
