:root{--safe-height:calc(env(safe-area-inset-top) + env(safe-area-inset-bottom));--safe-width:calc(env(safe-area-inset-left) + env(safe-area-inset-right))}body{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;color:#eee;padding:env(safe-area-inset-top) env(safe-area-inset-right) env(safe-area-inset-bottom) env(safe-area-inset-left);background-color:#2c001e;margin:0;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,Fira Sans,Droid Sans,Helvetica Neue,sans-serif}code{font-family:source-code-pro,Menlo,Monaco,Consolas,Courier New,monospace}.container{flex-wrap:wrap;align-items:flex-start;display:flex}.column{flex-direction:column;display:flex}#emulationCanvas{aspect-ratio:4/3;border:1px solid #daa520;width:min(640px,100vw - 50px);height:auto}.gameArea{margin:24px}.cpuArea,.codeArea,.ramArea,.instructions{margin-left:24px;margin-right:24px}.codeArea,.ramArea,.instructions{margin-top:12px}.active{color:#228b22;margin-left:4px}.inActive{color:#ff69b4;margin-left:4px}.current{color:#daa520}h4{margin-top:0}.palette{align-self:flex-start;margin-top:12px;margin-left:24px}#patternCanvas{border:1px solid #daa520;align-self:flex-start;margin-top:12px;margin-left:24px}.header{align-items:center;gap:12px;margin-bottom:16px;display:flex}.button{font:inherit;color:inherit;cursor:pointer;background-color:#3d0a2c;border:1px solid #daa520;border-radius:4px;padding:4px 12px}.button:hover{background-color:#52123d}.button:focus-within{outline-offset:2px;outline:2px solid #daa520}.message{margin:0 0 16px}.error{color:#ff69b4}.message.tip{border:1px solid #5e1f48;border-radius:8px;align-items:center;gap:12px;padding:10px 12px;display:flex}.message.tip .button{flex:none}.codeArea code,.ramArea code,.cpuArea code{white-space:pre;display:block}.codeArea,.ramArea,.cpuArea{max-width:calc(100vw - 96px);overflow-x:auto}.consoleMenu{position:relative}.consoleMenu-trigger{font:inherit;color:inherit;text-align:left;cursor:pointer;background:0 0;border:1px solid #666;border-radius:8px;align-items:center;gap:12px;padding:6px 12px 6px 8px;display:flex}.consoleMenu-trigger:hover,.consoleMenu-trigger[aria-expanded=true]{background-color:#3d0a2c;border-color:#daa520}.consoleMenu-trigger:focus-visible,.consoleMenu-item:focus-visible{outline-offset:2px;outline:2px solid #daa520}.consoleLogo{flex:none;width:64px;height:40px}.consoleLogo.small{width:32px;height:20px}.consoleMenu-label{flex-direction:column;min-width:0;display:flex}.consoleMenu-system{letter-spacing:.08em;color:#daa520;font-size:12px;font-weight:600}.consoleMenu-title{white-space:nowrap;text-overflow:ellipsis;max-width:60vw;font-size:22px;font-weight:600;overflow:hidden}.consoleMenu-caret{flex:none;width:14px;height:14px;margin-left:8px;transition:transform .15s}.consoleMenu-trigger[aria-expanded=true] .consoleMenu-caret{transform:rotate(180deg)}.consoleMenu-list{z-index:10;background-color:#3d0a2c;border:1px solid #daa520;border-radius:8px;min-width:320px;max-height:70vh;padding:6px;position:absolute;top:calc(100% + 6px);left:0;overflow-y:auto;box-shadow:0 8px 24px #00000080}.consoleMenu-group+.consoleMenu-group{border-top:1px solid #5e1f48;margin-top:6px;padding-top:6px}.consoleMenu-heading{color:#c8a9bc;align-items:center;gap:8px;padding:4px 8px;font-size:12px;font-weight:600;display:flex}.badge{white-space:nowrap;color:#daa520;border:1px solid #daa520;border-radius:999px;margin-left:auto;padding:1px 6px;font-size:11px;font-weight:600}.consoleMenu-item{width:100%;font:inherit;color:inherit;text-align:left;cursor:pointer;background:0 0;border:none;border-radius:4px;padding:6px 8px 6px 48px;display:block}.consoleMenu-item:hover:not(:disabled),.consoleMenu-item:focus-visible{background-color:#52123d}.consoleMenu-item[aria-current=true]{color:#daa520}.consoleMenu-item:disabled{opacity:.5;cursor:default}.consoleMenu-group:last-child .consoleMenu-item{padding-left:8px}.consoleMenu-empty{color:#c8a9bc;margin:0;padding:4px 8px 6px 48px;font-size:13px}.snesPanel{margin-top:12px}.snesButtons{gap:8px;margin:12px 24px 0;display:flex}.codeArea code.recent{opacity:.55}.voices{align-items:flex-end;gap:8px;height:20px;display:flex}.voiceBars{flex:none}.screen{align-self:flex-start;display:flex}.player{cursor:pointer;display:flex;position:relative}.player.idle{cursor:none}.controls{opacity:0;background:linear-gradient(#0000,#000000bf);align-items:center;gap:2px;padding:32px 8px 4px;transition:opacity .25s;display:flex;position:absolute;bottom:0;left:0;right:0}.player:hover .controls,.player:focus-within .controls,.controls.paused{opacity:1}.player.idle .controls{opacity:0}.controlsSpacer{flex:1}.volume{display:flex;position:relative}.volumePopup{opacity:0;pointer-events:none;background-color:#000000bf;border-radius:6px;justify-content:center;padding:10px 6px;transition:opacity .2s;display:flex;position:absolute;bottom:100%;left:50%;transform:translate(-50%)}.volume:hover .volumePopup,.volume:focus-within .volumePopup{opacity:1;pointer-events:auto}.volumeSlider{writing-mode:vertical-lr;accent-color:#fff;cursor:pointer;direction:rtl;width:20px;height:84px;margin:0}.controlButton{color:#fff;cursor:pointer;opacity:.9;background:0 0;border:none;border-radius:4px;justify-content:center;align-items:center;width:40px;height:36px;padding:0;display:flex}.controlButton:hover{opacity:1;background-color:#ffffff1f}.controlButton:focus-visible{outline:2px solid #daa520}.screen.theater{background-color:#000;justify-content:center;align-self:stretch;margin:0 -24px 16px}.screen.theater #emulationCanvas{aspect-ratio:4/3;border:none;width:auto;height:min(100vh - 140px,75vw - 15px)}.screen:fullscreen{background-color:#000;justify-content:center;align-items:center;margin:0}.screen:fullscreen #emulationCanvas{aspect-ratio:4/3;border:none;width:min(100vw,133.333vh);height:auto}:is(.screen.theater #emulationCanvas,.screen:fullscreen #emulationCanvas){image-rendering:pixelated}.button:disabled{opacity:.5;cursor:default}.footer{color:#c8a9bc;border-top:1px solid #5e1f48;margin-top:32px;padding-top:12px;font-size:12px}.appVersion{color:#c8a9bc;font-variant-numeric:tabular-nums;margin-left:auto;font-size:13px}.headerIcon{font:inherit;color:inherit;opacity:.85;cursor:pointer;background:0 0;border:1px solid #0000;border-radius:4px;padding:5px;display:flex}.headerIcon:hover{opacity:1;background-color:#3d0a2c;border-color:#daa520}.headerIcon:focus-visible{outline-offset:2px;outline:2px solid #daa520}.docs{width:min(1100px,100vw - 32px);max-width:none;height:calc(100vh - 32px);max-height:none;color:inherit;background-color:#2c001e;border:1px solid #daa520;border-radius:8px;flex-direction:column;padding:0;display:flex;box-shadow:0 16px 48px #0009}.docs::backdrop{background-color:#0009}html:has(.docs[open]){overflow:hidden}.docs-header{border-bottom:1px solid #5e1f48;justify-content:space-between;align-items:center;padding:10px 12px 10px 20px;display:flex}.docs-header h2{margin:0;font-size:18px}.docs-close{color:inherit;cursor:pointer;background:0 0;border:1px solid #0000;border-radius:4px;padding:6px;display:flex}.docs-close:hover{background-color:#52123d}.docs-close:focus-visible,.docs-nav a:focus-visible{outline-offset:2px;outline:2px solid #daa520}.docs-body{flex:1;min-height:0;display:flex}.docs-nav{border-right:1px solid #5e1f48;flex-direction:column;flex:none;gap:2px;width:220px;padding:12px 8px;display:flex;overflow-y:auto}.docs-nav a{color:inherit;border-radius:4px;flex-direction:column;padding:6px 10px;text-decoration:none;display:flex}.docs-nav a:hover{background-color:#3d0a2c}.docs-nav a[aria-current=page]{color:#daa520;background-color:#52123d}.docs-navPath{color:#c8a9bc;font-size:12px}.docs-content{flex:1;min-width:0;padding:8px 32px 32px;line-height:1.6;overflow-y:auto}.docs-content>*{max-width:80ch}.docs-content h1,.docs-content h2,.docs-content h3{scroll-margin-top:16px;line-height:1.25}.docs-content h1{border-bottom:1px solid #5e1f48;padding-bottom:8px}.docs-content h2{border-bottom:1px solid #5e1f48;margin-top:32px;padding-bottom:6px}.docs-content a{color:#daa520}.docs-content code{background-color:#3d0a2c;border-radius:4px;padding:1px 5px;font-size:.9em}.docs-content pre{background-color:#1c0013;border:1px solid #5e1f48;border-radius:6px;padding:12px 16px;line-height:1.4;overflow-x:auto}.docs-content pre code{background:0 0;padding:0}.docs-content table{border-collapse:collapse}.docs-content th,.docs-content td{text-align:left;border:1px solid #5e1f48;padding:6px 12px}.docs-content th{background-color:#3d0a2c}.docs-content blockquote{color:#c8a9bc;border-left:3px solid #5e1f48;margin-left:0;padding-left:16px}.docs-content ul:has(>.task-list-item){padding-left:8px}.docs-content .task-list-item{padding-left:26px;list-style:none;position:relative}.docs-content .task-list-item-checkbox{appearance:none;border:1.5px solid #c8a9bc;border-radius:4px;width:16px;height:16px;margin:0;position:absolute;top:.3em;left:0}.docs-content .task-list-item-checkbox:checked{background:#daa520 url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16'%3E%3Cpath d='M3.5 8.5l3 3 6-7' fill='none' stroke='%232C001E' stroke-width='2.2' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E") 50%/14px no-repeat;border-color:#daa520}.docs-nav,.docs-content{scrollbar-width:none}.docs-nav::-webkit-scrollbar{display:none}.docs-content::-webkit-scrollbar{display:none}@media (width<=700px){.docs-body{flex-direction:column}.docs-nav{border-bottom:1px solid #5e1f48;border-right:none;flex-direction:row;width:auto;overflow-x:auto}.docs-navPath{display:none}.docs-content{padding:8px 16px 24px}}.gameArea.touch{-webkit-user-select:none;user-select:none;-webkit-touch-callout:none;margin:12px}.gameArea.touch .docs{-webkit-user-select:text;user-select:text;-webkit-touch-callout:default}.touchPlay{touch-action:none;grid-template-columns:1fr 1fr;grid-template-areas:"screen screen""left right";gap:16px 8px;display:grid}.touchScreen{grid-area:screen;justify-content:center;min-width:0;display:flex}.touchCluster{flex-direction:column;justify-content:center;align-items:center;gap:14px;display:flex}.touchCluster.left{grid-area:left}.touchCluster.right{grid-area:right}.touchShoulder:empty{display:none}.touchButton,.touchDpad-arm,.touchDpad-middle{background-color:#3d0a2c;border:2px solid #5e1f48}.touchButton{box-sizing:border-box;color:#eee;border-radius:50%;justify-content:center;align-items:center;font-weight:700;display:flex}.touchButton.pressed,.touchDpad-arm.pressed{color:#2c001e;background-color:#daa520;border-color:#daa520}.touchButton.shoulder{border-radius:18px;width:96px;height:36px}.touchButton.menu{border-radius:15px;width:80px;height:30px;font-size:13px}.touchDpad{width:150px;height:150px;position:relative}.touchDpad-arm,.touchDpad-middle{box-sizing:border-box;width:50px;height:50px;position:absolute}.touchDpad-arm.up{border-radius:8px 8px 0 0;top:0;left:50px}.touchDpad-arm.left{border-radius:8px 0 0 8px;top:50px;left:0}.touchDpad-arm.right{border-radius:0 8px 8px 0;top:50px;left:100px}.touchDpad-arm.down{border-radius:0 0 8px 8px;top:100px;left:50px}.touchDpad-middle{border-color:#3d0a2c;top:50px;left:50px}.touchFace{width:170px;height:150px;position:relative}.touchButton.face{width:60px;height:60px;font-size:20px;position:absolute}.touchFace .face.top{top:0;left:55px}.touchFace .face.left{top:45px;left:0}.touchFace .face.right{top:45px;left:110px}.touchFace .face.bottom{top:90px;left:55px}.touchFace.buttons2 .face{width:72px;height:72px;font-size:24px}.touchFace.buttons2 .face.left{top:39px;left:4px}.touchFace.buttons2 .face.right{top:39px;left:94px}@media (orientation:landscape){.touchPlay{grid-template-columns:1fr auto 1fr;grid-template-areas:"left screen right";align-items:center}.gameArea.touch #emulationCanvas{width:auto;height:min(480px, calc(100dvh - var(--safe-height) - 120px), calc((100vw - var(--safe-width) - 380px) * 3 / 4))}}@media (orientation:landscape) and (height<=500px){.gameArea.touch{margin:8px}.gameArea.touch .header,.gameArea.touch .footer{display:none}.gameArea.touch #emulationCanvas{height:min(calc(100dvh - var(--safe-height) - 18px), calc((100vw - var(--safe-width) - 380px) * 3 / 4))}}.touchPlay:fullscreen{box-sizing:border-box;background-color:#2c001e;align-content:center;padding:8px}@media (orientation:landscape){.touchPlay:fullscreen #emulationCanvas{height:min(calc(100dvh - var(--safe-height) - 16px), calc((100vw - var(--safe-width) - 380px) * 3 / 4))}}
