:root{--paper:#eeeDE7;--white:#f9f8f3;--ink:#252620;--muted:#5c6053;--line:#d0d0c5;--red:#b03024;--red-dark:#a4251b;--green:#6bb748;--mono:'SFMono-Regular',Consolas,'Liberation Mono',monospace;--sans:Arial,Helvetica,sans-serif;color:var(--ink);background:var(--paper);font-family:var(--sans);font-synthesis:none}*{box-sizing:border-box}body{margin:0}button,input,select,textarea{font:inherit}button,a{touch-action:manipulation}button{cursor:pointer}a{color:inherit;text-decoration:none}img{display:block;max-width:100%;height:auto}h1,h2,h3,p,figure{margin:0}p{line-height:1.7}h1,h2,h3{letter-spacing:-.055em}h1{font-size:clamp(44px,5.3vw,78px);line-height:1.02;font-weight:800}h1 span{color:var(--red)}h2{font-size:clamp(34px,3.7vw,53px);line-height:1.07}h3{font-size:26px;line-height:1.12}::selection{background:#c83b2e;color:white}:focus-visible{outline:3px solid var(--red);outline-offset:5px}button:disabled{cursor:wait;opacity:.55}[hidden]{display:none!important}.shell{width:min(1264px,calc(100% - 96px));margin-inline:auto}.section{padding-block:96px}.eyebrow{font:10px/1.8 var(--mono);letter-spacing:1.4px;font-weight:600;display:block;margin-bottom:24px}.eyebrow>span{color:var(--red);margin-right:14px}.lede{font-size:17px;color:var(--muted);line-height:1.75;max-width:600px}.micro{font:11px/1.8 var(--mono);color:var(--muted)}.button{border:1px solid var(--red);background:var(--red);color:#fff;display:inline-flex;align-items:center;justify-content:space-between;gap:30px;min-height:51px;padding:15px 22px;font-size:13px;font-weight:700;letter-spacing:.05px;transition:background .15s,transform .15s}.button:hover{background:var(--red-dark);color:#fff;transform:translateY(-2px)}.button span{font-size:18px}.button.secondary{background:transparent;color:var(--ink);border-color:#b9bab0}.button.secondary:hover{background:#deded4;color:var(--ink)}.text-link{font-size:13px;display:inline-flex;gap:24px;align-items:center;font-weight:700;border:0;border-bottom:1px solid var(--ink);padding:0 0 8px;background:transparent}.text-link:hover,.under-link:hover{color:var(--red)}.under-link{display:block;font-size:12px;text-decoration:underline;text-underline-offset:5px;margin-block:20px;background:transparent;border:0;padding:0;text-align:left}.status-dot{display:inline-block;width:6px;height:6px;background:var(--green);border-radius:50%;margin-right:7px}.preview-strip{min-height:31px;display:flex;gap:14px;align-items:center;justify-content:center;background:var(--ink);color:#eeeee4;font:9px/1.5 var(--mono);letter-spacing:1.3px;padding:7px 18px}.preview-strip>span{color:#ffc9ba}.preview-strip>b{font-weight:400;color:#b8baac}.header{width:min(1370px,calc(100% - 72px));height:100px;display:flex;justify-content:space-between;align-items:center;margin:auto;border-bottom:1px solid var(--line)}.brand{display:flex;align-items:center;gap:11px;flex-shrink:0}.brand>span:last-child{font-size:24px;font-weight:900;letter-spacing:-1.3px;line-height:1}.brand-basic{margin-left:5px;color:var(--red)}.brand small{display:block;font:7px var(--mono);letter-spacing:1.65px;margin-top:7px}.brand-mark{width:29px;height:29px;display:grid;grid-template-columns:1fr 1fr;gap:3px;transform:rotate(0deg)}.brand-mark i{background:var(--red)}.brand-mark i:nth-child(2){background:#d8a348}.brand-mark i:nth-child(3){background:#747c5b}.brand-mark i:nth-child(4){background:#313a32}.header nav{display:flex;align-items:center;gap:30px;font-size:12px;font-weight:600}.header nav>a:hover,.header nav>[aria-current]{color:var(--red)}.nav-play{border:1px solid var(--ink);padding:13px 17px}.nav-play span{margin-left:17px}.menu-toggle{display:none}.hero{display:grid;grid-template-columns:1.05fr 1fr;gap:50px;align-items:center;padding-top:74px;padding-bottom:72px;min-height:660px}.hero h1{font-size:clamp(48px,5.4vw,80px);line-height:.99;margin-bottom:25px}.hero .eyebrow{font-size:9px;letter-spacing:1.2px}.hero .lede{font-size:15px;max-width:460px}.hero-actions{display:flex;gap:12px;margin-top:29px;margin-bottom:17px}.hero .button{font-size:12px;padding-inline:18px;gap:22px}.hero-machine{position:relative;transform:rotate(1deg);background:#c8c8be;padding:17px 22px 0;border:1px solid #b2b4a6;box-shadow:6px 7px 0 #cfcfc4;border-radius:5px 5px 11px 11px;max-width:560px;margin-left:10px}.machine-top{display:flex;justify-content:space-between;font:8px var(--mono);letter-spacing:1.1px;margin-bottom:13px;color:#4a5141}.screen-bezel{background:#242820;padding:18px 37px 13px;border:4px solid #9a9c90;border-radius:8px;position:relative;box-shadow:inset 0 3px 9px #0008}.screen-bezel img{width:100%;image-rendering:pixelated;background:#101010;box-shadow:0 0 0 1px #000;border-radius:2px}.screen-corner{position:absolute;bottom:4px;left:0;width:100%;text-align:center;color:#929584;font:6px var(--mono);letter-spacing:1px}.machine-bottom{display:flex;align-items:center;justify-content:space-between;padding:15px 3px 12px}.machine-bottom strong{font-size:20px;letter-spacing:-.9px}.machine-bottom small{font:6px var(--mono);display:block;margin-top:4px;letter-spacing:1px}.machine-led{width:8px;height:8px;background:var(--red);box-shadow:0 0 7px #cc382b88;border:2px solid #9b2f26;margin-right:6px}.machine-vents{height:15px;background:repeating-linear-gradient(90deg,#8f9286 0 3px,transparent 3px 7px);width:80px;margin:0 0 0 auto;transform:translateY(-15px)}.machine-caption{position:absolute;bottom:-33px;left:0;right:0;display:flex;justify-content:space-between;font:8px var(--mono);color:#606653;letter-spacing:.4px;transform:rotate(-1deg)}.spec-bar{background:#e1e1d7;border-block:1px solid var(--line)}.spec-bar .shell{display:flex;justify-content:space-between;padding-block:24px;font:11px var(--mono);color:var(--muted)}.spec-bar b{font-weight:700;color:var(--ink)}.intro{display:grid;grid-template-columns:1fr 1fr;gap:70px}.intro .large-copy{font-size:22px;line-height:1.5;color:var(--ink);margin-bottom:23px;letter-spacing:-.5px}.intro p:not(.eyebrow){color:var(--muted);font-size:15px}.intro .text-link{margin-top:26px}.creative{background:#252820;color:#eeede5}.creative .eyebrow>span{color:#d5a74c}.section-heading{display:flex;align-items:flex-end;justify-content:space-between;gap:35px;margin-bottom:44px}.section-heading p:not(.eyebrow){font-size:14px;color:#aeb3a1}.creative-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:28px}.capture{padding:22px;background:#11140f;border:1px solid #45483e;margin-bottom:28px}.capture img{width:100%;image-rendering:pixelated}.creative-grid article>.eyebrow{font-size:9px;color:#b0b7a2;margin-bottom:14px}.creative-grid h3{font-size:25px;margin-bottom:13px}.creative-grid p{font-size:13px;color:#b1b5a8;max-width:310px}.creative-grid .text-link{border-color:#868c7a;margin-top:22px;font-size:12px;color:#e6e8dd}.caption{font:9px/1.7 var(--mono);color:#8c9481;margin-top:30px}.first-program{display:grid;grid-template-columns:1fr 1fr;gap:100px;align-items:center}.first-program>div>p:not(.eyebrow){font-size:15px;color:var(--muted);max-width:390px;margin:24px 0}.first-program .example{padding:30px;background:var(--white);border:1px solid var(--line)}.first-program .example-actions{display:none}.platforms{padding-top:0}.platform-grid{display:grid;grid-template-columns:repeat(3,1fr);border:1px solid var(--line);background:#e6e6dc}.platform-grid article{padding:32px;border-right:1px solid var(--line);position:relative}.platform-grid article:last-child{border:0}.tag{display:inline-block;font:9px var(--mono);letter-spacing:1.1px;padding:7px 9px;background:#d8d8cc;border:1px solid #bfc2b3;margin-bottom:30px}.tag.available{background:#d9e2ce;color:#374a24;border-color:#a5b493}.platform-grid h3{font-size:32px;margin-bottom:20px}.platform-grid p{font-size:13px;color:var(--muted);min-height:92px;margin-bottom:25px}.platform-grid .text-link{font-size:12px;gap:13px}.app-icon{position:absolute;right:25px;top:88px;width:50px;border-radius:11px}.end-cta{padding:68px 0 85px;border-top:1px solid var(--line);text-align:center}.end-cta h2{font-size:clamp(40px,6vw,76px);margin-bottom:30px}.end-cta .eyebrow{margin-bottom:18px;color:var(--red)}footer{background:#deded3;border-top:1px solid #c7c9ba;padding:52px max(48px,calc((100% - 1264px)/2)) 24px}.footer-top{display:grid;grid-template-columns:1fr 1fr 1fr;gap:40px;align-items:start;padding-bottom:45px}.footer-top>p{font-size:26px;line-height:1.15;letter-spacing:-1px}.footer-top>div{display:grid;grid-template-columns:1fr 1fr;gap:20px;font-size:11px}.footer-top>div>a:hover{color:var(--red)}.footer-bottom{border-top:1px solid #c3c6b5;display:flex;justify-content:space-between;gap:20px;padding-top:23px;font:8px/1.7 var(--mono);color:#59614f}.page-title{padding-top:72px;padding-bottom:65px}.page-title h1{margin-bottom:26px}.page-title .lede{max-width:660px}.feature-list{border-top:1px solid var(--line)}.feature-list article{display:grid;grid-template-columns:.15fr .85fr 1fr;gap:35px;padding:44px 0;border-bottom:1px solid var(--line)}.feature-num{font:12px var(--mono);color:var(--red);padding-top:7px}.feature-list h2{font-size:32px}.feature-list p{font-size:15px;color:var(--muted);margin-bottom:18px}.narrow{max-width:800px;padding-bottom:70px}.prose{line-height:1.8;color:#4f5348;font-size:15px}.prose h1,.prose h2,.prose h3{color:var(--ink)}.prose h1{font-size:48px;line-height:1.1;margin-bottom:32px}.prose h2{font-size:29px;margin:40px 0 18px}.prose h3{font-size:23px;margin:28px 0 14px}.prose p{margin-bottom:20px}.prose a:not(.button){text-decoration:underline;text-underline-offset:4px}.prose code{font:12px/1.8 var(--mono);background:#dedfd4;padding:2px 5px;overflow-wrap:anywhere}.prose .code-block code{padding:0;background:transparent;overflow-wrap:normal}.prose .button{margin:10px 10px 10px 0;text-decoration:none}.guide-layout{display:grid;grid-template-columns:246px 1fr;gap:65px;align-items:start;margin-bottom:80px}.guide-nav{position:sticky;top:24px;font-size:11px;border-top:2px solid var(--ink)}.guide-nav>a{display:flex;gap:11px;padding:12px 5px;border-bottom:1px solid var(--line);line-height:1.5}.guide-nav>a>span{font:9px/1.8 var(--mono);color:#555d48}.guide-nav>[aria-current]{color:var(--red);font-weight:700;background:#e2e2d7}.guide-nav .guide-index{font:9px var(--mono);letter-spacing:1px;padding-block:20px}.guide-nav .pdf-link{font-size:10px;padding-block:20px}.guide-welcome{padding:38px;background:#e2e3d6;border:1px solid #c5c9b6;margin-bottom:30px}.guide-welcome h2{margin-bottom:22px}.guide-welcome p{font-size:15px;max-width:540px;margin-bottom:25px;color:var(--muted)}.guide-welcome .micro{margin-top:15px;margin-bottom:0;font-size:10px}.lesson-grid{display:grid;grid-template-columns:1fr 1fr;gap:16px;margin-bottom:30px}.lesson{padding:24px;border:1px solid var(--line);position:relative}.lesson:hover{background:var(--white)}.lesson .eyebrow{font-size:8px;color:var(--red);margin-bottom:10px}.lesson h3{font-size:22px;max-width:270px;padding-right:15px;line-height:1.2;letter-spacing:-.7px}.lesson>span:last-child{position:absolute;right:20px;bottom:20px}.chapter-layout{margin-top:60px}.lesson-content{max-width:790px}.lesson-content>.eyebrow{margin-bottom:22px}.lesson-content .note{font-size:13px}.note{border-left:3px solid var(--red);padding:20px 24px;background:#e3e3d8;font-size:13px;line-height:1.8;margin-block:25px}.note a{text-decoration:underline}.lesson-pagination{display:flex;justify-content:space-between;gap:20px;border-top:1px solid var(--line);padding-top:28px;margin-top:50px;font-size:12px}.code-block{background:#242920;color:#ecefe1;margin-block:23px;border:1px solid #444b3c;overflow:hidden}.code-label{display:flex;justify-content:space-between;align-items:center;padding:12px 16px;border-bottom:1px solid #424938;font:9px var(--mono);letter-spacing:1px;color:#a6b495}.code-label button{border:0;background:transparent;color:#dce4cd;font:9px var(--mono);letter-spacing:0;text-decoration:underline;text-underline-offset:3px}.code-block pre{padding:22px;margin:0;overflow:auto;font:12px/2 var(--mono);tab-size:2}.code-block pre code{font:inherit}.ln{color:#91a880}.str{color:#e5be7b}.examples-grid{display:grid;grid-template-columns:1fr 1fr;gap:30px;padding-bottom:50px}.example{padding:28px;border:1px solid var(--line);display:flex;flex-direction:column;background:#f3f2ec}.example-meta{display:flex;justify-content:space-between;font:9px var(--mono);color:var(--muted);text-transform:uppercase;letter-spacing:1px;margin-bottom:24px}.example h3{font-size:28px;margin-bottom:12px}.example>p{font-size:13px;color:var(--muted)}.example .code-block{flex:1}.example-actions{display:flex;justify-content:space-between;gap:20px;font-size:11px}.example-actions a:first-child{font-weight:700}.example-actions a:hover{color:var(--red)}.search-label{font-size:12px;display:block;margin-bottom:9px}.search{width:100%;padding:17px;background:var(--white);color:var(--ink);border:1px solid #a7ad98;margin-bottom:12px;border-radius:0}.command-jump{display:flex;flex-wrap:wrap;gap:6px;margin:30px 0}.command-jump a{font:10px var(--mono);padding:6px 8px;border:1px solid var(--line);text-decoration:none!important}.command{border-top:1px solid var(--line);padding:10px 0 20px;scroll-margin-top:20px}.command h2{font-family:var(--mono);letter-spacing:-1px;font-size:26px}.command p{font-size:13px;margin-bottom:15px}.table-wrap{overflow:auto;margin:24px 0}table{border-collapse:collapse;width:100%;font-size:11px}td,th{text-align:left;border:1px solid var(--line);padding:10px;min-width:90px}th{background:#dedfd2}.cartridge-section{display:grid;grid-template-columns:1fr 1fr;gap:90px;align-items:center;padding-bottom:100px}.cartridge-art{aspect-ratio:.85;max-width:420px;background:#b8bab0;border:3px solid #9ea494;border-radius:12px 12px 4px 4px;position:relative;box-shadow:10px 10px 0 #d6d8cb;margin:10px auto 20px;width:100%;padding:30px 43px 45px}.cart-ridges{height:42px;border-block:2px solid #969b8a;background:repeating-linear-gradient(#b3b7a9 0 4px,#909784 4px 7px);margin-bottom:20px}.cart-label{background:#252a23;color:var(--white);padding:22px;height:calc(100% - 60px);position:relative;overflow:hidden;border-radius:4px}.cart-label>span{font:9px var(--mono);letter-spacing:2px}.cart-label strong{display:block;font-size:70px;line-height:.95;letter-spacing:-5px;margin-top:35px}.cart-label strong span{color:#d74635}.cart-label small{display:block;font:9px var(--mono);letter-spacing:1px;margin-top:18px}.color-stripes{position:absolute;height:40px;bottom:20px;left:-30px;right:-30px;background:linear-gradient(#d74c36 0 25%,#cf793c 25% 50%,#d5ab53 50% 75%,#84915d 75%);transform:rotate(-13deg)}.cart-proto{font:7px var(--mono);letter-spacing:.7px;position:absolute;bottom:14px;left:0;width:100%;text-align:center}.support-grid{display:grid;grid-template-columns:1fr 1fr;gap:95px;padding-bottom:100px}.support-grid h2{margin-bottom:25px}.support-grid>div>p{font-size:15px;color:var(--muted);margin-block:24px}.support-grid .button{font-size:12px}.support-grid details{border-top:1px solid var(--line);padding-block:23px}.support-grid summary{font-size:16px;font-weight:700;cursor:pointer;display:flex;justify-content:space-between;gap:15px}.support-grid details p{font-size:13px;margin-top:20px;color:var(--muted)}.skip{position:fixed;left:20px;top:-100px;z-index:100;background:var(--white);padding:14px}.skip:focus{top:12px}.sr-only{position:absolute;width:1px;height:1px;margin:-1px;overflow:hidden;clip:rect(0,0,0,0)}.toast{position:fixed;bottom:25px;left:50%;transform:translateX(-50%);padding:13px 20px;color:white;background:#252a23;font-size:12px;box-shadow:0 3px 15px #0002;z-index:99;display:none}.toast.visible{display:block}
/* The actual ROM workbench */
.playground{padding-top:38px}.play-heading{display:flex;justify-content:space-between;align-items:end;gap:25px;margin-bottom:27px}.play-heading h1{font-size:35px;letter-spacing:-1.5px}.play-heading .eyebrow{font-size:8px;margin-bottom:12px}.play-heading .text-link{font-size:11px}.workbench{border:1px solid #aeb4a1;background:#dbded1}.toolbar{display:flex;justify-content:space-between;gap:16px;padding:12px;border-bottom:1px solid #afb4a3}.toolbar>div{display:flex;gap:4px;flex-wrap:wrap}.toolbar button{background:transparent;border:1px solid transparent;padding:9px 10px;font-size:11px;color:#3c4534}.toolbar button:hover{background:#c6cdba;border-color:#a7b295}.workspace{display:grid;grid-template-columns:1fr 295px}.emulator-column{background:#161a14;padding:14px 22px 20px}.display-top{color:#9ea990;display:flex;justify-content:space-between;font:8px var(--mono);letter-spacing:1px;margin:0 0 12px}.display-top>span:last-child{color:#babfae}.emulator-display{position:relative;background:#101010;max-width:720px;margin:auto;aspect-ratio:4/3;display:flex;justify-content:center;align-items:center}#nes-screen{image-rendering:pixelated;width:100%;height:100%;aspect-ratio:4/3;display:block;outline-offset:1px;object-fit:fill}.display-bottom{display:flex;justify-content:space-between;align-items:center;font:8px/1.6 var(--mono);color:#a1ad90;margin-top:12px;gap:12px}.display-bottom>div{display:flex;gap:12px}.display-bottom button{background:transparent;color:#bcc6ac;border:0;padding:5px 0;font:9px var(--mono)}.display-bottom button:hover{color:white}.workbench-side{padding:30px 26px}.workbench-side>.eyebrow{font-size:8px;margin-bottom:14px;color:var(--red)}.workbench-side h2{font-size:29px;letter-spacing:-1px;margin-bottom:16px}.workbench-side>p{font-size:12px;color:#515c43;line-height:1.8;margin-bottom:23px}.shortcut{display:flex;justify-content:space-between;align-items:center;gap:15px;font-size:10px;padding-block:9px;border-bottom:1px solid #bfc7b1}.shortcut kbd{font:8px var(--mono);border:1px solid #acb69b;box-shadow:0 1px 0 #acb69b;padding:4px 5px;background:#e8ecdf}.side-example{border-top:1px solid #b6c0a7;margin-top:25px;padding-top:23px}.side-example .eyebrow{font-size:7px;letter-spacing:.7px;margin-bottom:15px}.side-example pre{font:10px/1.9 var(--mono);color:#465339;white-space:pre-wrap}.side-example .text-link{font-size:10px;gap:6px;margin-top:15px}.recovery-status{display:flex;align-items:start;margin-top:25px;font:8px/1.7 var(--mono);color:#515c43}.recovery-status .status-dot{flex-shrink:0;margin-top:4px}.workbench-side .under-link{font-size:10px;margin-bottom:0}.touch-controls{display:flex;justify-content:space-between;align-items:center;max-width:560px;margin:20px auto 0;gap:20px}.dpad{display:grid;grid-template-columns:36px 36px 36px;grid-template-rows:32px 32px 32px}.dpad button{background:#424a38;color:#dce2d2;border:1px solid #69715f;font-size:12px;touch-action:none}.dpad .up{grid-area:1/2;border-bottom:0}.dpad .left{grid-area:2/1}.dpad .right{grid-area:2/3}.dpad .down{grid-area:3/2;border-top:0}.small-pads{display:flex;gap:12px;margin-top:20px}.small-pads button{border:1px solid #67705a;border-radius:12px;background:#383f2e;color:#bbc5ad;font:7px var(--mono);padding:8px 9px;touch-action:none}.ab-pads{display:flex;gap:14px}.ab-pads button{border:2px solid #9d3629;border-radius:50%;background:#c13c2e;color:white;width:49px;height:49px;font:bold 16px var(--mono);box-shadow:0 4px 0 #712c22;touch-action:none}.touch-controls button:active,.touch-controls button.pressed{background:#76825f;box-shadow:none}.play-message{font:10px/1.8 var(--mono);color:var(--muted);margin:16px 0;min-height:20px}.play-message.error{color:#b02e20}.play-help{display:grid;grid-template-columns:.8fr 1.2fr;gap:90px;padding-block:70px 90px}.play-help h2{font-size:36px;margin-bottom:23px}.play-help>div>p{font-size:14px;color:var(--muted)}.help-sections details{border-top:1px solid #b9c0ad;padding-block:19px}.help-sections summary{cursor:pointer;font-weight:bold;font-size:14px}.help-sections p{font-size:12px;color:var(--muted);margin-top:16px}.help-sections .under-link{font-size:10px}.mobile-entry{padding:20px;background:#e6eadc;border-top:1px solid #afb7a1}.mobile-entry label{display:block;font-size:12px;margin-bottom:10px}.mobile-entry textarea{display:block;width:100%;border:1px solid #99a68a;background:var(--white);font:13px/1.7 var(--mono);padding:12px;resize:vertical;margin-bottom:12px}.mobile-entry .button{min-height:42px;padding:10px 16px;font-size:11px}.mobile-entry .micro{margin-top:10px;font-size:9px}.resume-overlay{position:absolute;inset:0;background:#141810c9;color:white;border:0;font-size:18px;font-weight:bold;backdrop-filter:blur(3px)}dialog{width:min(570px,calc(100% - 32px));background:var(--paper);color:var(--ink);padding:30px;border:1px solid #a8b39b;max-height:85dvh;overflow:auto;box-shadow:7px 7px 0 #0004}dialog::backdrop{background:#10150dcc;backdrop-filter:blur(3px)}.dialog-heading{display:flex;justify-content:space-between;align-items:center;gap:18px;margin-bottom:20px}.dialog-heading h2{font-size:28px;letter-spacing:-1px}.dialog-heading button{border:0;background:transparent;padding:8px}.dialog-heading+p{font-size:12px;color:var(--muted);margin-bottom:20px}.example-picker{display:flex;flex-direction:column}.example-picker button{display:flex;justify-content:space-between;gap:15px;padding:17px 0;border:0;border-top:1px solid var(--line);background:transparent;text-align:left;font-size:13px}.example-picker button small{font:9px var(--mono);color:var(--muted)}dialog label{display:block;font-size:12px;margin-bottom:8px}dialog select{padding:10px;border:1px solid #aab79a;background:var(--white);width:100%;margin-bottom:18px}dialog>.micro{font-size:9px;margin-bottom:20px}.mapping-row{display:grid;grid-template-columns:1fr 1fr 1fr;gap:10px;align-items:center;font-size:11px;margin:10px 0}.mapping-row button{border:1px solid #afb89e;padding:9px 7px;font:9px var(--mono);background:#e5e8db}.mapping-row.active{color:var(--red)}.mapping-row.active button{border-color:var(--red)}.mapping-row.lit{background:#ccdbb8}.emulator-display:fullscreen{background:#101010;height:100%;width:100%;max-width:none}.emulator-display:fullscreen canvas{max-height:100dvh;max-width:133.33dvh;width:100%;height:100%;object-fit:contain}
@media(min-width:1500px){.hero h1{font-size:84px}.hero{gap:95px}}@media(max-width:1100px){.shell{width:calc(100% - 64px)}.header{width:calc(100% - 50px)}.header nav{gap:19px;font-size:11px}.hero{gap:25px;min-height:auto;padding-block:60px 75px}.hero h1{font-size:61px}.hero .eyebrow{font-size:8px}.hero .lede{font-size:14px}.hero-actions{gap:9px;flex-wrap:wrap}.hero .button{gap:16px;padding-inline:14px}.screen-bezel{padding-inline:20px}.hero-machine{padding:14px 14px 0}.machine-top{font-size:6px}.machine-bottom strong{font-size:17px}.intro{gap:45px}.section{padding-block:75px}.creative-grid{gap:20px}.capture{padding:12px}.creative-grid h3{font-size:22px}.first-program{gap:45px}.platforms{padding-top:0}.platform-grid article{padding:25px}.platform-grid h3{font-size:28px}.app-icon{display:none}.platform-grid p{min-height:112px}.guide-layout{gap:35px;grid-template-columns:210px 1fr}.lesson h3{font-size:19px}.workspace{grid-template-columns:1fr 240px}.workbench-side{padding:23px 20px}.workbench-side h2{font-size:25px}.toolbar button{font-size:10px;padding:8px}.play-help{gap:45px}.cartridge-section{gap:55px}.support-grid{gap:55px}footer{padding-inline:32px}.footer-top{gap:25px}.footer-top>div{gap:15px}}
@media(max-width:760px){.shell{width:calc(100% - 40px)}.preview-strip{font-size:7px;letter-spacing:.6px;gap:8px}.preview-strip>b{display:none}.header{height:82px;width:calc(100% - 40px);position:relative}.brand>span:last-child{font-size:22px}.brand small{font-size:6px}.brand-mark{width:26px;height:26px}.menu-toggle{display:flex;align-items:center;gap:14px;border:1px solid #b3b9a7;padding:10px 12px;background:transparent;font-size:11px}.header nav{display:none;position:absolute;left:-20px;right:-20px;top:81px;background:var(--paper);border-bottom:1px solid #aeb7a0;z-index:10;padding:20px;align-items:stretch;gap:0}.header nav.open{display:flex;flex-direction:column}.header nav a{padding:15px 0;font-size:13px;border-bottom:1px solid var(--line)}.header nav .nav-play{border:1px solid #aeb69f;padding:15px;margin-top:12px}.hero{grid-template-columns:1fr;gap:46px;padding-block:38px 72px}.hero h1{font-size:clamp(53px,10vw,78px);letter-spacing:-3px;line-height:1.01}.hero .eyebrow{font-size:7px;letter-spacing:1px;margin-bottom:22px}.hero .lede{max-width:530px;font-size:14px}.desktop{display:none}.hero-actions{margin-top:24px}.hero .button{font-size:11px;padding-inline:17px;min-height:48px;gap:19px}.hero .micro{font-size:8px}.hero-machine{width:calc(100% - 16px);max-width:450px;margin-inline:auto;padding:13px 18px 0;transform:rotate(1deg)}.screen-bezel{padding-inline:35px}.machine-top{font-size:7px}.machine-caption{font-size:6px;bottom:-25px}.machine-bottom strong{font-size:18px}.spec-bar .shell{display:grid;grid-template-columns:1fr 1fr;gap:19px;padding-block:23px;font-size:9px}.section{padding-block:57px}.intro{grid-template-columns:1fr;gap:30px}.intro h2{font-size:40px}.intro .large-copy{font-size:19px}.intro p:not(.eyebrow){font-size:14px}.eyebrow{font-size:8px;margin-bottom:18px}.section-heading{display:block;margin-bottom:30px}.section-heading>p{margin-top:23px}.creative-grid{grid-template-columns:1fr;gap:35px}.creative-grid article{display:grid;grid-template-columns:.9fr 1fr;column-gap:22px;align-content:center}.creative-grid .capture{grid-row:1/5;margin:0;padding:8px;align-self:center}.creative-grid article>.eyebrow{font-size:6px;letter-spacing:.6px;margin-bottom:10px}.creative-grid h3{font-size:23px;margin-bottom:10px}.creative-grid p{font-size:11px;line-height:1.7}.creative-grid .text-link{font-size:10px;gap:10px;margin-top:17px;justify-self:start}.caption{font-size:7px}.first-program{grid-template-columns:1fr;gap:25px}.first-program>div>p:not(.eyebrow){max-width:100%}.first-program .example{padding:23px}.platforms{padding-top:0}.platform-grid{grid-template-columns:1fr}.platform-grid article{border-right:0;border-bottom:1px solid var(--line);padding:28px}.platform-grid h3{font-size:32px}.platform-grid p{min-height:0;margin-bottom:22px;max-width:450px}.tag{margin-bottom:23px;font-size:8px}.platform-grid .text-link{font-size:11px}.app-icon{display:block;top:75px;right:25px;width:58px}.end-cta{padding-block:48px 60px}.end-cta h2{font-size:45px}.end-cta .eyebrow{font-size:8px}.footer-top{grid-template-columns:1fr 1fr;gap:30px}.footer-top>p{font-size:23px;justify-self:end}.footer-top>div{grid-column:1/-1;font-size:10px;grid-template-columns:repeat(2,1fr);gap:20px}.footer-bottom{display:block;font-size:7px}.footer-bottom span{display:block;margin-top:8px}footer{padding:35px 20px 22px}.page-title{padding-block:43px}.page-title h1{font-size:50px;letter-spacing:-2px}.page-title .lede{font-size:15px}.feature-list article{grid-template-columns:35px 1fr;gap:17px;padding:30px 0}.feature-list article>div{grid-column:2}.feature-list h2{font-size:28px}.feature-list p{font-size:13px}.feature-list .micro{font-size:9px}.prose{font-size:14px}.prose h1{font-size:38px;letter-spacing:-1.5px}.prose h2{font-size:27px}.prose code{font-size:11px}.narrow{padding-bottom:45px}.guide-layout{grid-template-columns:1fr;gap:25px;margin-bottom:50px}.guide-nav{position:static;display:flex;flex-wrap:wrap;max-height:220px;overflow:auto;background:#e4e6d9;padding:8px 12px}.guide-nav .guide-index{flex-basis:100%;padding-block:12px}.guide-nav>a{font-size:9px;padding:9px 4px;width:50%;gap:7px}.guide-nav .pdf-link{width:100%;padding-block:12px}.guide-nav>a>span{font-size:8px}.guide-welcome{padding:25px}.guide-welcome h2{font-size:39px}.guide-welcome p{font-size:14px}.guide-welcome .micro{font-size:8px}.lesson-grid{gap:10px}.lesson{padding:17px}.lesson h3{font-size:19px}.lesson .eyebrow{font-size:7px}.lesson>span:last-child{right:10px;bottom:10px}.lesson-content .note{font-size:11px}.chapter-layout{margin-top:30px}.examples-grid{grid-template-columns:1fr;gap:20px}.example{padding:22px}.example h3{font-size:27px}.code-block pre{font-size:10px;padding:17px}.example-actions{font-size:10px}.cartridge-section{grid-template-columns:1fr;gap:35px;padding-bottom:55px}.cartridge-art{max-width:320px;padding-inline:33px}.cart-label strong{font-size:56px}.cart-label>span{font-size:8px}.cart-label small{font-size:7px}.cart-proto{font-size:5px}.support-grid{grid-template-columns:1fr;gap:35px;padding-bottom:55px}.support-grid summary{font-size:14px}.support-grid .button{font-size:11px}.playground{padding-top:25px}.play-heading{display:block;margin-bottom:21px}.play-heading h1{font-size:30px;line-height:1.2;letter-spacing:-1.2px}.play-heading h1 span{display:block}.play-heading .text-link{font-size:10px;margin-top:15px}.toolbar{display:block;padding:8px}.toolbar>div{gap:2px}.toolbar>div:last-child{border-top:1px solid #b8c0ab;padding-top:5px;margin-top:5px}.toolbar button{font-size:10px;min-height:38px;padding:8px}.workspace{grid-template-columns:1fr}.emulator-column{padding:12px 12px 16px}.display-top{font-size:6px;letter-spacing:.5px}.workbench-side{display:none}.display-bottom{font-size:7px}.display-bottom button{font-size:8px}.display-bottom>div{gap:10px}.touch-controls{gap:15px}.dpad{grid-template-columns:32px 32px 32px;grid-template-rows:30px 30px 30px}.ab-pads{gap:10px}.ab-pads button{width:43px;height:43px;font-size:13px}.small-pads{gap:8px}.small-pads button{font-size:6px;padding:7px}.play-help{grid-template-columns:1fr;gap:35px;padding-block:45px}.play-help h2{font-size:34px}.play-help p{font-size:13px}.play-message{font-size:8px}.play-page .header .brand>span:last-child{font-size:20px}.dialog-heading h2{font-size:25px}dialog{padding:22px}.mapping-row{gap:8px}.mapping-row button{font-size:8px}.toast{font-size:10px;width:max-content;max-width:90vw}}
@media(prefers-reduced-motion:reduce){*,*::before,*::after{scroll-behavior:auto!important;transition:none!important;animation:none!important}}
.toolbar-help{display:inline-flex;align-items:center;padding:9px 10px;font-size:11px;color:#3c4534}.toolbar-help:hover{background:#c6cdba}@media(max-width:760px){.toolbar-help{font-size:10px;min-height:38px}}

.skip{opacity:0;pointer-events:none}.skip:focus{opacity:1;pointer-events:auto}
.toolbar #save-program,.toolbar #load-program{background:var(--white);border-color:#a7b295;font-weight:700}.toolbar #save-program:hover,.toolbar #load-program:hover{background:#edf1e3}.file-storage-note{padding:12px 18px;border-bottom:1px solid #afb4a3;background:#e8ecdf;color:#414b35;font-size:11px;line-height:1.8}.file-storage-note span{margin-left:7px}.file-storage-note code{font:10px var(--mono)}@media(max-width:760px){.file-storage-note{font-size:10px;padding:11px 12px}.file-storage-note span{display:block;margin-left:0}}
