.emulator-container.svelte-yuwvl1{min-height:100vh;background:var(--bg, #FFE66D);padding:clamp(1rem,2vw,2rem)}[data-mode=dark] .emulator-container.svelte-yuwvl1{background:#8b4a5a}.brutal-header.svelte-yuwvl1{margin-bottom:clamp(1rem,2vw,2rem)}.header-bar.svelte-yuwvl1{background:#8bac0f;border:clamp(4px,.5vw,8px) solid var(--border, #2A2A2A);box-shadow:clamp(6px,.75vw,12px) clamp(6px,.75vw,12px) 0 0 var(--border, #2A2A2A);padding:clamp(1rem,2vw,2rem);margin-bottom:clamp(.5rem,1vw,1rem);text-align:center;transition:transform .1s ease,box-shadow .1s ease}[data-mode=dark] .header-bar.svelte-yuwvl1{background:var(--accent, #2C8D82);border:clamp(4px,.5vw,8px) solid #000;box-shadow:clamp(6px,.75vw,12px) clamp(6px,.75vw,12px) 0 0 #000;color:#000}.header-title.svelte-yuwvl1{font-size:clamp(2rem,6vw,4rem);font-weight:700;margin:0 0 1rem;letter-spacing:.1em;text-transform:uppercase}[data-mode=dark] .header-title.svelte-yuwvl1{color:#000}.header-subtitle.svelte-yuwvl1{font-size:1rem;font-weight:500;letter-spacing:.2em;text-transform:uppercase;display:flex;align-items:center;justify-content:center;gap:1.5rem;flex-wrap:wrap}[data-mode=dark] .header-subtitle.svelte-yuwvl1{color:#000}.github-link.svelte-yuwvl1{background:#2a2a2a;border:4px solid var(--border, #2A2A2A);color:#fff;padding:.5rem 1rem;text-decoration:none;font-weight:700;text-transform:uppercase;letter-spacing:.1em;box-shadow:4px 4px 0 0 var(--border, #2A2A2A);transition:transform .1s ease,box-shadow .1s ease;display:inline-block;font-size:.875rem}.github-link.svelte-yuwvl1:hover{transform:translate(2px,2px);box-shadow:2px 2px 0 0 var(--border, #000)}[data-mode=dark] .github-link.svelte-yuwvl1{background:#000;color:#fff;border:4px solid #000;box-shadow:4px 4px #000}[data-mode=dark] .github-link.svelte-yuwvl1:hover{box-shadow:2px 2px #000}.nav.svelte-yuwvl1{display:flex;gap:1rem;justify-content:center;margin-bottom:1rem}.main-content.svelte-yuwvl1{max-width:87.5rem;margin:0 auto;display:flex;flex-direction:column;gap:clamp(1rem,2vw,2rem)}.emulator-row.svelte-yuwvl1{display:grid;grid-template-columns:minmax(0,2fr) minmax(0,1fr);gap:clamp(1rem,2vw,2rem)}.emulator-row.svelte-yuwvl1>:where(.svelte-yuwvl1){min-width:0}.emulator-section.svelte-yuwvl1{display:flex;flex-direction:column;gap:2rem}.bottom-section.svelte-yuwvl1{display:grid;grid-template-columns:1fr 1fr;gap:clamp(1rem,2vw,2rem);align-items:start}.controls-section.svelte-yuwvl1{display:flex;flex-direction:column;gap:2rem}.desktop-key-mappings.svelte-yuwvl1{display:flex}.mobile-controls.svelte-yuwvl1{display:none;margin-top:clamp(.5rem,1vw,1rem);padding-top:clamp(.5rem,1vw,1rem);border-top:clamp(2px,.2vw,3px) solid var(--border, #000);--mobile-btn-size: min(26vw, 18vh);--mobile-control-gap: clamp(.75rem, 1.5vw, 1.25rem)}.mobile-controls.svelte-yuwvl1 .controls-grid:where(.svelte-yuwvl1){display:grid;grid-template-columns:repeat(auto-fit,minmax(min(45vw,60vh),1fr));gap:var(--mobile-control-gap);align-items:center;justify-items:center}.mobile-controls.svelte-yuwvl1 .control-panel:where(.svelte-yuwvl1){width:100%;display:flex;flex-direction:column;gap:var(--mobile-control-gap);align-items:stretch}.mobile-controls.svelte-yuwvl1 .dpad:where(.svelte-yuwvl1){display:grid;grid-template-columns:repeat(3,1fr);grid-template-rows:repeat(3,1fr);gap:calc(var(--mobile-control-gap) / 2);align-items:stretch;justify-items:stretch;width:min(calc(var(--mobile-btn-size) * 3 + var(--mobile-control-gap)),100%);aspect-ratio:1 / 1;--control-btn-size: var(--mobile-btn-size)}.mobile-controls.svelte-yuwvl1 .dpad-middle:where(.svelte-yuwvl1){display:contents}.mobile-controls.svelte-yuwvl1 .dpad:where(.svelte-yuwvl1) .control-btn:where(.svelte-yuwvl1){width:100%;height:100%;min-width:0;min-height:0;border-radius:clamp(1.5vmin,2.5vmin,3vmin);display:flex;align-items:center;justify-content:center}.mobile-controls.svelte-yuwvl1 .buttons:where(.svelte-yuwvl1) .control-btn:where(.svelte-yuwvl1),.mobile-controls.svelte-yuwvl1 .system-buttons:where(.svelte-yuwvl1) .control-btn:where(.svelte-yuwvl1){flex:1 1 40%;max-width:min(40vw,22vh);aspect-ratio:1 / 1;width:auto;height:auto;min-width:0;min-height:0;border-radius:50%;display:flex;align-items:center;justify-content:center}.mobile-controls.svelte-yuwvl1 .control-btn.center:where(.svelte-yuwvl1){visibility:hidden}.mobile-controls.svelte-yuwvl1 .control-btn.up:where(.svelte-yuwvl1){grid-column:2;grid-row:1;font-weight:400}.mobile-controls.svelte-yuwvl1 .control-btn.down:where(.svelte-yuwvl1){grid-column:2;grid-row:3;font-weight:400}.mobile-controls.svelte-yuwvl1 .control-btn.left:where(.svelte-yuwvl1){grid-column:1;grid-row:2;font-weight:400}.mobile-controls.svelte-yuwvl1 .control-btn.right:where(.svelte-yuwvl1){grid-column:3;grid-row:2;font-weight:400}.mobile-controls.svelte-yuwvl1 .control-btn.center:where(.svelte-yuwvl1){grid-column:2;grid-row:2}.mobile-controls.svelte-yuwvl1 .buttons:where(.svelte-yuwvl1),.mobile-controls.svelte-yuwvl1 .system-buttons:where(.svelte-yuwvl1){width:100%;display:flex;justify-content:center;gap:var(--mobile-control-gap);flex-wrap:wrap}.emulator-widget.svelte-yuwvl1,.controls-widget.svelte-yuwvl1,.info-widget.svelte-yuwvl1{--panel-bg: #fff;display:flex;flex-direction:column;overflow:hidden;transition:transform .1s ease,box-shadow .1s ease}.controls-widget.svelte-yuwvl1,.info-widget.svelte-yuwvl1{min-height:clamp(20rem,40vw,31.25rem)}.key-mappings-widget.svelte-yuwvl1{overflow:visible!important;width:100%;height:100%;display:flex;flex-direction:column;min-width:0;max-width:100%}.key-mappings-widget.svelte-yuwvl1 .widget-content:where(.svelte-yuwvl1){overflow:visible!important;position:relative;padding:clamp(1rem,2vw,1.5rem) clamp(1rem,2vw,1.5rem) clamp(.75rem,1.5vw,1rem) clamp(1rem,2vw,1.5rem);flex:1;display:flex;flex-direction:column}[data-mode=dark] .emulator-widget.svelte-yuwvl1,[data-mode=dark] .controls-widget.svelte-yuwvl1,[data-mode=dark] .info-widget.svelte-yuwvl1{--panel-bg: var(--panel, #1F2A38);color:var(--text, #F7F7F4)}[data-mode=dark] .info-widget.svelte-yuwvl1 :where(.svelte-yuwvl1){color:var(--text, #F7F7F4)}[data-mode=dark] .widget-content.svelte-yuwvl1{color:var(--text, #F7F7F4)}[data-mode=dark] .widget-content.svelte-yuwvl1 :where(.svelte-yuwvl1){color:var(--text, #F7F7F4)}.widget-title.svelte-yuwvl1{font-size:clamp(1rem,2vw,1.25rem);font-weight:700;margin:0;letter-spacing:.1em;text-transform:uppercase}[data-mode=dark] .widget-title.svelte-yuwvl1{color:#000}.widget-content.svelte-yuwvl1{padding:clamp(1rem,2vw,2rem);flex:1;display:flex;flex-direction:column;gap:clamp(.5rem,1vw,1rem)}[data-mode=dark] .widget-content.svelte-yuwvl1{color:#000}[data-mode=dark] .widget-content.svelte-yuwvl1 :where(.svelte-yuwvl1){color:#000}.emulator-widget.svelte-yuwvl1 .widget-content:where(.svelte-yuwvl1){padding:clamp(1rem,2vw,1.5rem);gap:clamp(.5rem,.75vw,.75rem)}.emulator-widget.svelte-yuwvl1 .widget-content:where(.svelte-yuwvl1) :where(.svelte-yuwvl1){overflow-wrap:anywhere}.emulator-controls-top.svelte-yuwvl1{display:flex;flex-direction:column;gap:1rem}.emulator-buttons.svelte-yuwvl1{display:flex;gap:1rem;align-items:center;flex-wrap:wrap}.save-controls.svelte-yuwvl1{display:flex;gap:clamp(.5rem,1vw,1rem);flex:1 1 16.25rem;min-width:0;align-items:stretch;flex-wrap:nowrap;order:2}.save-controls.svelte-yuwvl1>:where(.svelte-yuwvl1){flex:1 1 7.5rem;min-width:0}.rom-dropdown-container.svelte-yuwvl1{order:1}.emulator-buttons.svelte-yuwvl1>:where(.svelte-yuwvl1){flex:1 1 13.75rem;min-width:0}.rom-dropdown-container.svelte-yuwvl1,.save-controls.svelte-yuwvl1{flex:1 1 calc(50% - .5rem);max-width:calc(50% - .5rem);min-width:13.75rem}.emulator-status-row.svelte-yuwvl1{display:flex;gap:1rem;align-items:center;min-width:0;width:100%}.volume-control.svelte-yuwvl1{display:flex;align-items:center;gap:.5rem;padding:.5rem .75rem;border:3px solid var(--border, #000);background:var(--accent, #4ECDC4);box-shadow:4px 4px 0 0 var(--border, #000);text-transform:uppercase;font-size:.6875rem;letter-spacing:.2em;font-weight:700}.volume-label.svelte-yuwvl1{flex-shrink:0}.volume-slider-track.svelte-yuwvl1{flex:1}.volume-slider-track.svelte-yuwvl1 input[type=range]:where(.svelte-yuwvl1){width:100%;height:.5rem;border-radius:999px;border:3px solid var(--border, #000);background:var(--bg, #FFE66D);background-image:linear-gradient(90deg,var(--primary, #FF6B6B) var(--volume-percent, 100%),transparent var(--volume-percent, 100%));appearance:none;outline:none;margin:0;padding:0;box-shadow:2px 2px 0 0 var(--border, #000)}.volume-slider-track input[type=range]::-webkit-slider-thumb{appearance:none;width:1.125rem;height:1.125rem;border-radius:50%;background:var(--primary, #FF6B6B);border:3px solid var(--border, #000);cursor:pointer;box-shadow:2px 2px 0 0 var(--border, #000);transition:transform .1s ease,box-shadow .1s ease}.volume-slider-track input[type=range]::-webkit-slider-thumb:hover{transform:translate(1px,1px);box-shadow:1px 1px 0 0 var(--border, #000)}.volume-slider-track.svelte-yuwvl1 input[type=range]:where(.svelte-yuwvl1)::-moz-range-thumb{width:1.125rem;height:1.125rem;border-radius:50%;background:var(--primary, #FF6B6B);border:3px solid var(--border, #000);cursor:pointer;box-shadow:2px 2px 0 0 var(--border, #000);transition:transform .1s ease,box-shadow .1s ease}.volume-slider-track.svelte-yuwvl1 input[type=range]:where(.svelte-yuwvl1)::-moz-range-thumb:hover{transform:translate(1px,1px);box-shadow:1px 1px 0 0 var(--border, #000)}.volume-value.svelte-yuwvl1{flex-shrink:0;font-size:.6875rem;letter-spacing:.15em;min-width:2.5rem;text-align:right}[data-mode=dark] .volume-control.svelte-yuwvl1{background:var(--button-blue, #7EB1D3);border-color:#000;box-shadow:4px 4px #000;color:#000}[data-mode=dark] .volume-slider-track.svelte-yuwvl1 input[type=range]:where(.svelte-yuwvl1){background:var(--panel, #1F2A38);background-image:linear-gradient(90deg,var(--button-orange, #E06B3E) var(--volume-percent, 100%),transparent var(--volume-percent, 100%));border-color:#000;box-shadow:2px 2px #000}[data-mode=dark] .volume-slider-track.svelte-yuwvl1 input[type=range]:where(.svelte-yuwvl1)::-webkit-slider-thumb{background:var(--button-orange, #E06B3E);box-shadow:2px 2px #000}[data-mode=dark] .volume-slider-track.svelte-yuwvl1 input[type=range]:where(.svelte-yuwvl1)::-webkit-slider-thumb:hover{transform:translate(1px,1px);box-shadow:1px 1px #000}[data-mode=dark] .volume-slider-track.svelte-yuwvl1 input[type=range]:where(.svelte-yuwvl1)::-moz-range-thumb{background:var(--button-orange, #E06B3E);box-shadow:2px 2px #000}[data-mode=dark] .volume-slider-track.svelte-yuwvl1 input[type=range]:where(.svelte-yuwvl1)::-moz-range-thumb:hover{transform:translate(1px,1px);box-shadow:1px 1px #000}.brutal-button.svelte-yuwvl1{border:4px solid var(--border, #000);box-shadow:4px 4px 0 0 var(--border, #000);text-transform:uppercase;letter-spacing:.1em;font-weight:700;transition:transform .1s ease,box-shadow .1s ease;display:inline-flex;align-items:center;justify-content:center;padding:.75rem 1.5rem;font-size:1rem;cursor:pointer;font-family:Space Grotesk,sans-serif;box-sizing:border-box}.brutal-button.svelte-yuwvl1:hover{transform:translate(2px,2px);box-shadow:2px 2px 0 0 var(--border, #000)}.brutal-button.svelte-yuwvl1:active{transform:translate(4px,4px);box-shadow:0 0 0 0 var(--border, #000)}.brutal-dropdown-item.svelte-yuwvl1{font-size:clamp(.875rem,1vw,1rem);font-weight:700;text-transform:uppercase;letter-spacing:.1em;padding:clamp(.75rem,1vw,1rem) clamp(1rem,1.5vw,1.5rem);font-family:Space Grotesk,sans-serif;transition:background .1s ease;display:block;text-align:left;cursor:pointer;width:100%;box-sizing:border-box}.file-input-label.svelte-yuwvl1{cursor:pointer;flex:1 1 10rem;min-width:0;display:flex}.file-input.svelte-yuwvl1{display:none}.rom-dropdown-container.svelte-yuwvl1{position:relative;flex:2 1 17.5rem;min-width:0}.rom-dropdown-toggle.svelte-yuwvl1{background:var(--primary, #FF6B6B);border:4px solid var(--border, #000);box-shadow:4px 4px 0 0 var(--border, #000);color:var(--text, #000);padding:1rem 1.5rem;font-size:1.125rem;font-weight:700;text-transform:uppercase;letter-spacing:.1em;font-family:Space Grotesk,sans-serif;cursor:pointer;display:flex;align-items:center;justify-content:space-between;gap:.5rem;transition:transform .1s ease,box-shadow .1s ease;white-space:nowrap;width:100%;text-align:left;box-sizing:border-box}.rom-dropdown-toggle.svelte-yuwvl1:hover{transform:translate(2px,2px);box-shadow:2px 2px 0 0 var(--border, #000)}.dropdown-text.svelte-yuwvl1{flex:1;overflow:hidden;text-overflow:ellipsis}.dropdown-icon.svelte-yuwvl1{font-size:.75rem;transition:transform .2s ease;display:inline-block;flex-shrink:0}.dropdown-icon.open.svelte-yuwvl1{transform:rotate(180deg)}.rom-dropdown-menu.svelte-yuwvl1{position:absolute;top:calc(100% + .5rem);left:0;right:0;background:var(--bg, #FFE66D);border:4px solid var(--border, #000);box-shadow:clamp(4px,.5vw,8px) clamp(4px,.5vw,8px) 0 0 var(--border, #000);z-index:1000;display:flex;flex-direction:column;max-height:18.75rem;overflow-y:auto}.rom-dropdown-item.svelte-yuwvl1{background:none;border:none;color:var(--text, #000);text-decoration:none;border-bottom:2px solid var(--border, #000)}.rom-dropdown-item.svelte-yuwvl1:last-child{border-bottom:none}.rom-dropdown-item.svelte-yuwvl1:hover{background:var(--accent, #4ECDC4)}.rom-dropdown-item.active.svelte-yuwvl1{background:var(--primary, #FF6B6B);color:var(--text, #000)}[data-mode=dark] .rom-dropdown-toggle.svelte-yuwvl1{background:var(--accent-orange, #E06B3E);border:4px solid #000;color:var(--text, #F7F7F4);box-shadow:4px 4px #000}[data-mode=dark] .rom-dropdown-toggle.svelte-yuwvl1:hover{box-shadow:2px 2px #000}[data-mode=dark] .rom-dropdown-menu.svelte-yuwvl1{background:var(--button-blue, #7EB1D3);border:4px solid #000;box-shadow:8px 8px #000}[data-mode=dark] .rom-dropdown-item.svelte-yuwvl1{border-bottom:2px solid #000;color:var(--text, #F7F7F4)}[data-mode=dark] .rom-dropdown-item.svelte-yuwvl1:hover{background:var(--accent-orange, #E06B3E)}[data-mode=dark] .rom-dropdown-item.active.svelte-yuwvl1{background:#ff6b6b;color:var(--text, #000)}.file-input-button.svelte-yuwvl1{background:var(--bg, #FFE66D);color:var(--text, #000);width:100%;text-align:center;box-sizing:border-box;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;min-height:56px}[data-mode=dark] .file-input-button.svelte-yuwvl1{background:var(--button-blue, #7EB1D3);color:#000}.save-load-btn.svelte-yuwvl1{background:var(--accent, #4ECDC4);color:var(--text, #000);flex:1 1 160px;min-width:0;width:100%;text-align:center;box-sizing:border-box;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;min-height:56px}[data-mode=dark] .save-load-btn.svelte-yuwvl1{background:var(--button-blue, #7EB1D3);color:#000}.status-display.svelte-yuwvl1{background:var(--border, #000);color:var(--bg, #FFE66D);padding:.75rem 1.5rem;border:4px solid var(--border, #000);font-weight:700;text-transform:uppercase;letter-spacing:.1em;flex:1 1 220px;min-width:0;max-width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}[data-mode=dark] .status-display.svelte-yuwvl1{background:var(--card, #D5D2CA);color:#000;border:4px solid #000}.fps-display.svelte-yuwvl1{background:var(--primary, #FF6B6B);color:var(--text, #000);padding:.75rem 1.5rem;border:4px solid var(--border, #000);font-weight:700;text-transform:uppercase;letter-spacing:.1em;font-family:monospace;flex:0 1 160px;min-width:0;max-width:100%;display:flex;align-items:center;justify-content:center;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}[data-mode=dark] .fps-display.svelte-yuwvl1{background:var(--primary, #F4D655);color:#000;border:4px solid #000}.emulator-wrapper.svelte-yuwvl1{width:100%;display:flex;justify-content:center;align-items:center;background:var(--border, #000);border:clamp(2px,.25vw,4px) solid var(--border, #000);box-shadow:inset clamp(2px,.25vw,4px) clamp(2px,.25vw,4px) 0 0 #0000004d;position:relative;overflow:hidden;padding:clamp(.25rem,.5vw,.5rem)}[data-mode=dark] .emulator-wrapper.svelte-yuwvl1{background:var(--screen, #2C8D82);border:clamp(2px,.25vw,4px) solid #000;box-shadow:inset clamp(2px,.25vw,4px) clamp(2px,.25vw,4px) 0 0 #0000004d}.canvas-container.svelte-yuwvl1{width:100%;max-width:40rem;aspect-ratio:160 / 144;display:flex;justify-content:center;align-items:center}#canvas.svelte-yuwvl1{width:100%;height:100%;object-fit:contain;image-rendering:pixelated;image-rendering:crisp-edges;background:#000;border:clamp(1px,.125vw,2px) solid #333}.controls-grid.svelte-yuwvl1{display:flex;flex-direction:column;gap:2rem}.desktop-grid.svelte-yuwvl1{display:flex;flex-direction:column;gap:2rem;align-items:center}.button-system-panel.svelte-yuwvl1{display:flex;flex-direction:column;gap:1rem}.button-system-wrapper.svelte-yuwvl1{display:flex;flex-direction:column;gap:clamp(.5rem,1vw,1rem);flex:1 1 16.25rem;min-width:0}@media(min-width:1025px){.controls-section.svelte-yuwvl1 .dpad:where(.svelte-yuwvl1){margin:0 auto}.canvas-container.svelte-yuwvl1{max-width:50rem}.save-controls.svelte-yuwvl1 .file-input-button:where(.svelte-yuwvl1),.save-controls.svelte-yuwvl1 .save-load-btn:where(.svelte-yuwvl1){overflow:hidden;text-overflow:ellipsis;white-space:nowrap;max-width:100%;min-width:0;width:100%;font-size:.875rem}}@media(max-width:1024px){.file-input-button.svelte-yuwvl1,.save-load-btn.svelte-yuwvl1{border:2px solid var(--border, #000);box-shadow:2px 2px 0 0 var(--border, #000)}.file-input-button.svelte-yuwvl1:hover,.save-load-btn.svelte-yuwvl1:hover{box-shadow:1px 1px 0 0 var(--border, #000)}[data-mode=dark] .file-input-button.svelte-yuwvl1,[data-mode=dark] .save-load-btn.svelte-yuwvl1{border:2px solid #000;box-shadow:2px 2px #000}[data-mode=dark] .file-input-button.svelte-yuwvl1:hover,[data-mode=dark] .save-load-btn.svelte-yuwvl1:hover{box-shadow:1px 1px #000}.emulator-row.svelte-yuwvl1{grid-template-columns:1fr}.desktop-key-mappings.svelte-yuwvl1{display:none}.bottom-section.svelte-yuwvl1{grid-template-columns:1fr}.desktop-controls.svelte-yuwvl1{display:none}.mobile-controls.svelte-yuwvl1{display:block}.mobile-controls.svelte-yuwvl1 .controls-grid:where(.svelte-yuwvl1){display:grid;grid-template-columns:repeat(2,minmax(16.25rem,1fr));gap:var(--mobile-control-gap);align-items:center}.mobile-controls.svelte-yuwvl1 .control-panel:where(.svelte-yuwvl1){display:flex;flex-direction:column;justify-content:center;width:100%}.emulator-container.svelte-yuwvl1{padding:clamp(.5rem,1vw,.875rem)}}.control-panel.svelte-yuwvl1,.control-group.svelte-yuwvl1{display:flex;flex-direction:column;gap:1rem;align-items:center;width:100%}.control-label.svelte-yuwvl1{font-size:clamp(.75rem,1vw,.9rem);font-weight:700;text-transform:uppercase;letter-spacing:.05em;margin:0;text-align:center;user-select:none;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none}[data-mode=dark] .control-label.svelte-yuwvl1{color:var(--text, #F7F7F4)}.dpad.svelte-yuwvl1{display:flex;flex-direction:column;align-items:center;gap:clamp(.25rem,.4vw,.4rem);--dpad-btn-size: clamp(4.125rem, 8.5vw, 6rem);--control-btn-size: var(--dpad-btn-size)}.controls-section.svelte-yuwvl1 .dpad:where(.svelte-yuwvl1){margin:0 auto;width:fit-content}.dpad-middle.svelte-yuwvl1{display:flex;gap:.4rem;align-items:center}.controls-section.svelte-yuwvl1 .dpad:where(.svelte-yuwvl1) .control-btn:where(.svelte-yuwvl1){width:var(--dpad-btn-size);height:var(--dpad-btn-size);padding:0;display:inline-flex;align-items:center;justify-content:center}[data-mode=dark] .control-btn.center.svelte-yuwvl1{visibility:hidden}.buttons.svelte-yuwvl1{display:flex;gap:clamp(.75rem,1.25vw,1.25rem);justify-content:center;--btn-size: clamp(4.75rem, 9.5vw, 6rem);--control-btn-size: var(--btn-size)}.system-buttons.svelte-yuwvl1{display:flex;gap:clamp(.75rem,1.25vw,1.25rem);justify-content:center;--system-btn-size: clamp(4.75rem, 9.5vw, 6rem);--control-btn-size: var(--system-btn-size)}.control-btn.svelte-yuwvl1{background:#c4c4a0;border:4px solid var(--border, #2A2A2A);color:var(--text, #000);font-size:calc(var(--control-btn-size, 4.75rem) * .32);font-weight:700;user-select:none;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;cursor:pointer;text-transform:uppercase;letter-spacing:.1em;box-shadow:4px 4px 0 0 var(--border, #2A2A2A);transition:transform .05s ease,box-shadow .05s ease;min-width:clamp(3rem,4.75vw,4.75rem);min-height:clamp(3rem,4.75vw,4.75rem);padding:clamp(.25rem,.45vw,.45rem);aspect-ratio:1 / 1;display:flex;align-items:center;justify-content:center;line-height:1}.control-btn.up.svelte-yuwvl1,.control-btn.down.svelte-yuwvl1,.control-btn.left.svelte-yuwvl1,.control-btn.right.svelte-yuwvl1{font-weight:400}.buttons.svelte-yuwvl1 .control-btn:where(.svelte-yuwvl1){width:var(--btn-size);height:var(--btn-size);min-width:var(--btn-size);min-height:var(--btn-size)}.system-buttons.svelte-yuwvl1 .control-btn:where(.svelte-yuwvl1){width:var(--system-btn-size);height:var(--system-btn-size);min-width:var(--system-btn-size);min-height:var(--system-btn-size)}.mobile-controls.svelte-yuwvl1 .control-btn:where(.svelte-yuwvl1){min-width:0;min-height:0;width:auto;height:auto}.control-btn.svelte-yuwvl1:hover{transform:translate(2px,2px);box-shadow:2px 2px 0 0 var(--border, #000)}.control-btn.svelte-yuwvl1:active{transform:translate(4px,4px);box-shadow:0 0 0 0 var(--border, #000)}.control-btn.center.svelte-yuwvl1{background:transparent;border:none;box-shadow:none;cursor:default;pointer-events:none}.control-btn.center.svelte-yuwvl1:hover{transform:none;box-shadow:none}.btn-a.svelte-yuwvl1,.btn-b.svelte-yuwvl1{background:red;color:#fff}.btn-start.svelte-yuwvl1,.btn-select.svelte-yuwvl1{background:#c4c4a0;font-size:.875rem;padding:.75rem 1rem}[data-mode=dark] .control-btn.svelte-yuwvl1{background:var(--accent, #2C8D82);border:4px solid #000;color:var(--text, #F7F7F4);box-shadow:4px 4px #000}[data-mode=dark] .control-btn.svelte-yuwvl1:hover{transform:translate(2px,2px);box-shadow:2px 2px #000}[data-mode=dark] .control-btn.svelte-yuwvl1:active{transform:translate(4px,4px);box-shadow:0 0 #000}[data-mode=dark] .btn-a.svelte-yuwvl1,[data-mode=dark] .btn-b.svelte-yuwvl1{background:var(--button-orange, #E06B3E);color:var(--text, #F7F7F4)}[data-mode=dark] .btn-start.svelte-yuwvl1,[data-mode=dark] .btn-select.svelte-yuwvl1{background:var(--accent, #2C8D82);border:4px solid #000;color:var(--text, #F7F7F4);box-shadow:4px 4px #000}[data-mode=dark] .control-btn.right.svelte-yuwvl1{background:var(--accent, #2C8D82);border:4px solid #000;box-shadow:4px 4px #000;color:var(--text, #F7F7F4)}.key-mappings.svelte-yuwvl1{display:flex;flex-direction:column;gap:.5rem;position:relative;overflow:visible;flex:1;min-width:0}.instructions.svelte-yuwvl1{display:flex;flex-direction:column;gap:1rem}.instructions.svelte-yuwvl1 p:where(.svelte-yuwvl1){font-weight:700;text-transform:uppercase;letter-spacing:.1em;margin:0;padding:1rem;background:var(--bg, #FFE66D);border:4px solid var(--border, #000);box-shadow:4px 4px 0 0 var(--border, #000)}[data-mode=dark] .instructions.svelte-yuwvl1 p:where(.svelte-yuwvl1){background:var(--panel, #1F2A38);color:var(--text, #F7F7F4);border:4px solid #000;box-shadow:4px 4px #000}.remapping-overlay.svelte-yuwvl1{position:absolute;inset:0;background:beige;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:1rem;z-index:1000;border:4px solid #000;box-sizing:border-box;pointer-events:auto}.remapping-overlay.svelte-yuwvl1 :where(.svelte-yuwvl1){pointer-events:auto}[data-mode=dark] .remapping-overlay.svelte-yuwvl1{background:#ffe66d;border:4px solid #000}.remapping-text.svelte-yuwvl1{font-size:1rem;font-weight:700;color:#000;text-transform:uppercase;letter-spacing:.2em;margin:0;background:transparent;padding:0;border:none;box-shadow:none}[data-mode=dark] .remapping-text.svelte-yuwvl1{color:#000;background:transparent;border:none;box-shadow:none;padding:0}.remap-cancel-btn.svelte-yuwvl1{background:var(--primary, #FF6B6B);color:var(--text, #000)}[data-mode=dark] .remap-cancel-btn.svelte-yuwvl1{background:var(--primary, #9EC7FF);color:#000}.key-mapping-item.svelte-yuwvl1{display:flex;justify-content:space-between;align-items:center;gap:clamp(.4rem,1.25vw,.6rem);padding:clamp(.45rem,1.25vw,.6rem);background:var(--bg, #FFE66D);border:4px solid var(--border, #000);overflow:visible;position:relative;pointer-events:auto;width:100%;box-sizing:border-box;min-height:clamp(2.25rem,4vw,2.75rem);flex:1;min-width:0;flex-wrap:nowrap}.key-mapping-label.svelte-yuwvl1{font-weight:700;text-transform:uppercase;letter-spacing:.1em;min-width:0;flex:1 1 120px;font-size:clamp(.875rem,1.75vw,1rem);line-height:1.2}.key-mapping-btn.svelte-yuwvl1{background:#fff;color:var(--text, #000);padding:clamp(.25rem,1vw,.375rem) clamp(.5rem,1.5vw,.75rem);font-size:clamp(.8125rem,1.625vw,.9375rem);box-shadow:2px 2px 0 0 var(--border, #000);min-width:0;max-width:100%;white-space:normal;text-align:center;word-break:break-word;flex:1 1 140px;position:relative;z-index:1;line-height:1.2}[data-mode=dark] .key-mapping-item.svelte-yuwvl1{background:var(--primary, #9EC7FF);border:4px solid #000}[data-mode=dark] .key-mapping-label.svelte-yuwvl1{color:#000}[data-mode=dark] .key-mapping-btn.svelte-yuwvl1{background:var(--accent, #66FFE9);color:#fff;border:4px solid #000;box-shadow:2px 2px #000}[data-mode=dark] .key-mapping-btn.remapping.svelte-yuwvl1{background:var(--primary, #9EC7FF);color:#000;border:4px solid #000;box-shadow:2px 2px #000}.key-mapping-btn.remapping.svelte-yuwvl1{background:var(--primary, #FF6B6B);animation:svelte-yuwvl1-pulse 1s ease-in-out infinite}@keyframes svelte-yuwvl1-pulse{0%,to{opacity:1}50%{opacity:.7}}.reset-mappings-btn.svelte-yuwvl1{width:100%;background:var(--primary, #FF6B6B);color:var(--text, #000);padding:.5rem;font-size:clamp(.9375rem,1.5vw,1rem);margin-top:auto;margin-bottom:clamp(.75rem,2vw,1.25rem)}[data-mode=dark] .reset-mappings-btn.svelte-yuwvl1{background:var(--primary, #9EC7FF);color:#000}.navigation-section{background:transparent;margin-top:2rem}.nav-style-card{background:#fff;color:#000;border:4px solid #000;border-radius:0;box-shadow:4px 4px #000;transition:transform .1s ease,box-shadow .1s ease}.nav-style-card:hover{transform:translate(2px,2px);box-shadow:2px 2px #000}.nav-style-card.current{background:#ff6b6b;border-color:#000;box-shadow:4px 4px #000}@media(max-width:768px){.nav.svelte-yuwvl1{display:none}.emulator-container.svelte-yuwvl1{padding:clamp(.375rem,.75vw,.75rem)}.header-bar.svelte-yuwvl1{box-shadow:clamp(3px,.5vw,6px) clamp(3px,.5vw,6px) 0 0 var(--border, #2A2A2A)}[data-mode=dark] .header-bar.svelte-yuwvl1{box-shadow:clamp(3px,.5vw,6px) clamp(3px,.5vw,6px) 0 0 #000}.github-link.svelte-yuwvl1{font-size:clamp(.625rem,.75vw,.75rem);padding:clamp(.3125rem,.625vw,.4375rem) clamp(.625rem,1vw,.875rem) clamp(.5rem,.875vw,.625rem) clamp(.625rem,1vw,.875rem)}.main-content.svelte-yuwvl1,.emulator-section.svelte-yuwvl1,.bottom-section.svelte-yuwvl1{grid-template-columns:1fr;gap:clamp(.25rem,.5vw,.5rem)}.mobile-controls.svelte-yuwvl1{display:block;margin-top:clamp(.5rem,.75vw,.75rem);padding-top:clamp(.5rem,.75vw,.75rem);border-top:clamp(2px,.2vw,3px) solid var(--border, #000);--mobile-btn-size: min(34vw, 24vh);--mobile-control-gap: clamp(.5rem, 1.5vw, 1rem)}.mobile-controls.svelte-yuwvl1 .controls-grid:where(.svelte-yuwvl1){grid-template-columns:repeat(2,minmax(0,1fr));row-gap:var(--mobile-control-gap);column-gap:calc(var(--mobile-control-gap) + .3rem);align-items:center}.mobile-controls.svelte-yuwvl1 .control-panel:where(.svelte-yuwvl1){gap:var(--mobile-control-gap)}.mobile-controls.svelte-yuwvl1 .control-panel:where(.svelte-yuwvl1):first-child{margin-right:clamp(.125rem,.5vw,.25rem)}.mobile-controls.svelte-yuwvl1 .control-panel:where(.svelte-yuwvl1):nth-child(2){margin-left:clamp(.125rem,.5vw,.25rem)}.mobile-controls.svelte-yuwvl1 .dpad:where(.svelte-yuwvl1){gap:calc(var(--mobile-control-gap) / 2)}.mobile-controls.svelte-yuwvl1 .control-btn:where(.svelte-yuwvl1){font-size:clamp(.875rem,1vw,1rem)}.mobile-controls.svelte-yuwvl1 .btn-start:where(.svelte-yuwvl1),.mobile-controls.svelte-yuwvl1 .btn-select:where(.svelte-yuwvl1){font-size:clamp(.75rem,.85vw,.85rem)}.widget-header.svelte-yuwvl1{padding:clamp(.5rem,.75vw,.75rem) clamp(.5rem,1vw,1rem)}.widget-title.svelte-yuwvl1{font-size:clamp(.875rem,1vw,1rem)}.widget-content.svelte-yuwvl1{padding:clamp(.5rem,.75vw,.75rem)}.emulator-controls-top.svelte-yuwvl1{flex-direction:column;gap:clamp(.25rem,.5vw,.5rem);margin-bottom:clamp(.25rem,.5vw,.5rem)}.emulator-buttons.svelte-yuwvl1{flex-direction:column;flex-wrap:nowrap;gap:clamp(.25rem,.5vw,.5rem);width:100%;margin:0;padding:0}.emulator-buttons.svelte-yuwvl1>:where(.svelte-yuwvl1){width:100%!important;flex:0 0 auto!important;max-width:100%!important;min-width:0!important}.emulator-status-row.svelte-yuwvl1{gap:clamp(.25rem,.5vw,.5rem)}.rom-dropdown-container.svelte-yuwvl1{width:100%!important;flex:0 0 auto!important;max-width:100%!important;min-width:0!important;order:1}.rom-dropdown-toggle.svelte-yuwvl1{width:100%}.save-controls.svelte-yuwvl1{width:100%!important;flex:0 0 auto!important;max-width:100%!important;min-width:0!important;flex-direction:row;flex-wrap:nowrap;order:2;display:flex;gap:clamp(.25rem,.5vw,.5rem);margin:0;padding:0}.save-controls.svelte-yuwvl1>:where(.svelte-yuwvl1){flex:1 1 0!important;max-width:calc(50% - .125rem)!important;min-width:0!important}.file-input-label.svelte-yuwvl1{flex:1 1 0!important;max-width:calc(50% - .125rem)!important;min-width:0!important;display:flex}.file-input-button.svelte-yuwvl1,.save-load-btn.svelte-yuwvl1{width:100%;text-align:center;padding:clamp(.5rem,.75vw,.75rem) clamp(.25rem,.5vw,.5rem);font-size:clamp(.7rem,.75vw,.75rem);min-height:48px;height:48px;box-sizing:border-box}.status-display.svelte-yuwvl1,.fps-display.svelte-yuwvl1{flex:1;min-width:0;max-width:100%;text-align:center;padding:clamp(.25rem,.5vw,.5rem);font-size:clamp(.7rem,.75vw,.75rem);min-height:48px;display:flex;align-items:center;justify-content:center;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.emulator-wrapper.svelte-yuwvl1{padding:clamp(.125rem,.25vw,.25rem)}.canvas-container.svelte-yuwvl1{max-width:100%}.control-group.svelte-yuwvl1{gap:clamp(.25rem,.375vw,.375rem)}.control-label.svelte-yuwvl1{font-size:clamp(.7rem,.75vw,.75rem);margin-bottom:clamp(.125rem,.25vw,.25rem)}.btn-start.svelte-yuwvl1,.btn-select.svelte-yuwvl1{font-size:clamp(.75rem,.85vw,.85rem)}.header-bar.svelte-yuwvl1{padding:clamp(.5rem,1vw,1rem)}.header-title.svelte-yuwvl1{font-size:clamp(1.75rem,6vw,2.5rem)}.header-subtitle.svelte-yuwvl1{font-size:clamp(.875rem,1.125vw,1rem)}.instructions-widget.svelte-yuwvl1{margin-top:clamp(.75rem,1.5vw,1.5rem)}.save-controls.svelte-yuwvl1{flex-basis:100%;flex-wrap:wrap}.save-controls.svelte-yuwvl1>:where(.svelte-yuwvl1){flex:1 1 45%}}@media(max-width:480px){.emulator-container.svelte-yuwvl1{padding:clamp(.375rem,.75vw,.625rem)}.header-bar.svelte-yuwvl1{padding:clamp(.5rem,1vw,.75rem);box-shadow:clamp(3px,.5vw,6px) clamp(3px,.5vw,6px) 0 0 var(--border, #2A2A2A)}[data-mode=dark] .header-bar.svelte-yuwvl1{box-shadow:clamp(3px,.5vw,6px) clamp(3px,.5vw,6px) 0 0 #000}.widget-content.svelte-yuwvl1{padding:clamp(.5rem,.75vw,.75rem)}}
