@import"https://fonts.googleapis.com/css2?family=Orbitron:wght@400;700&family=Press+Start+2P&family=Inter:wght@300;400;600&display=swap";:root{--bg-color: #0d0d12;--surface-color: #1a1a24;--primary-color: #ff0055;--secondary-color: #00d2ff;--accent-color: #7000ff;--text-primary: #ffffff;--text-secondary: #a0a0b8;--crt-scanline-color: rgba(18, 16, 16, .2)}*{box-sizing:border-box;margin:0;padding:0}body{background-color:var(--bg-color);color:var(--text-primary);font-family:Inter,sans-serif;overflow-x:hidden;min-height:100vh}h1,h2,h3{font-family:Orbitron,sans-serif;letter-spacing:2px;text-transform:uppercase}.retro-font{font-family:"Press Start 2P",cursive;font-size:.8rem}.glass{background:#1a1a24b3;backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);border:1px solid rgba(255,255,255,.1);border-radius:16px}.crt-container{position:relative;overflow:hidden;border-radius:20px;box-shadow:0 0 50px #00d2ff33;border:8px solid #222}.crt-container:before{content:" ";display:block;position:absolute;inset:0;background:linear-gradient(var(--crt-scanline-color) 50%,rgba(0,0,0,0) 50%),linear-gradient(90deg,#ff00000f,#00ff0005,#0000ff0f);z-index:2;background-size:100% 4px,3px 100%;pointer-events:none;animation:scanline 10s linear infinite}.crt-container:after{content:" ";display:block;position:absolute;inset:0;background:radial-gradient(#12101000 50%,#00000040),linear-gradient(#12101000 50%,#0000001a 70%,#00000040);z-index:2;pointer-events:none}.crt-screen{width:100%;height:100%;background:#000;display:flex;align-items:center;justify-content:center}@keyframes scanline{0%{transform:translateY(0)}to{transform:translateY(100%)}}canvas{image-rendering:pixelated;max-width:100%;height:auto}button{cursor:pointer;transition:all .3s ease;font-family:Orbitron,sans-serif;border:none;padding:.8rem 1.5rem;border-radius:8px;text-transform:uppercase;font-weight:700}.btn-primary{background:linear-gradient(135deg,var(--primary-color),var(--accent-color));color:#fff;box-shadow:0 4px 15px #ff00554d}.btn-primary:hover{transform:translateY(-2px);box-shadow:0 6px 20px #ff005580}.btn-secondary{background:#ffffff0d;color:#fff;border:1px solid rgba(255,255,255,.1)}.btn-secondary:hover{background:#ffffff1a}.app-container{min-height:100vh;display:flex;flex-direction:column;align-items:center;padding:2rem;background:radial-gradient(circle at center,#1a1a2e,#0d0d12)}.hero-section{text-align:center;margin-bottom:3rem}.hero-section h1{font-size:4rem;margin-bottom:.5rem;background:linear-gradient(to right,#fff,#f05,#00d2ff);-webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent;filter:drop-shadow(0 0 10px rgba(255,0,85,.3))}.text-glow{text-shadow:0 0 20px rgba(0,210,255,.5)}.subtitle{color:var(--text-secondary);font-size:1.1rem;font-weight:300}.main-content{width:100%;max-width:1000px;display:flex;justify-content:center}.emulator-wrapper{width:100%;padding:2rem;display:flex;flex-direction:column;gap:2rem;align-items:center}@media(min-width:1100px){.emulator-wrapper{flex-direction:row;align-items:flex-start}}.emulator-column{flex:1;display:flex;flex-direction:column;gap:1.5rem;width:100%;max-width:600px}.advanced-controls{padding:1.2rem;display:flex;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:1rem}.state-controls{display:flex;gap:.5rem}.speed-controls{display:flex;align-items:center;gap:.5rem}.speed-btn{background:#ffffff0d;color:var(--text-secondary);border:1px solid rgba(255,255,255,.1);padding:.4rem .8rem;font-size:.7rem;border-radius:4px}.speed-btn:hover{background:#ffffff1a;color:#fff}.speed-btn.active{background:var(--secondary-color);color:var(--bg-color);font-weight:700;border-color:var(--secondary-color);box-shadow:0 0 10px #00d2ff4d}.btn-secondary.active-mobile{background:var(--primary-color);color:#fff;border-color:var(--primary-color);box-shadow:0 0 15px #f056}.controls-panel{width:300px;display:flex;flex-direction:column;gap:2rem}.upload-section{display:flex;flex-direction:column;gap:1.5rem;transition:all .3s ease}.drop-zone{border:2px dashed rgba(255,255,255,.1);padding:2.5rem;border-radius:12px;text-align:center;background:#ffffff05;transition:all .3s ease;display:flex;flex-direction:column;align-items:center;gap:1rem}.drop-zone:hover{border-color:var(--secondary-color);background:#00d2ff0d}.drop-hint{color:var(--text-secondary);font-size:.8rem;font-style:italic}.file-info{padding:1rem;border:1px solid rgba(0,210,255,.3);background:#00d2ff0d;display:flex;align-items:center;justify-content:center;animation:slideIn .3s ease-out}@keyframes slideIn{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}.file-name{color:var(--secondary-color);font-size:.7rem;text-align:center}.instructions{padding:1.5rem}.instructions h3{margin-bottom:1.5rem;color:var(--primary-color);font-size:.8rem}.key-grid{display:flex;flex-direction:column;gap:1rem}.key-item{display:flex;align-items:center;justify-content:space-between;font-size:.9rem;color:var(--text-secondary)}.key{background:#ffffff1a;padding:4px 8px;border-radius:4px;color:var(--text-primary);font-family:Orbitron,sans-serif;font-size:.8rem;border:1px solid rgba(255,255,255,.2)}footer{margin-top:auto;padding:1rem 2rem;width:100%;max-width:1000px;text-align:center;color:var(--text-secondary);font-size:.8rem;margin-top:4rem}@media(max-width:900px){.emulator-wrapper{flex-direction:column}}@media(max-width:600px){.hero-section h1{font-size:2.5rem}}.emulator-container{position:relative;width:100%;display:flex;flex-direction:column;gap:1.5rem}.touch-controls-overlay{display:grid;grid-template-areas:"dpad center actions";grid-template-columns:1fr auto 1fr;align-items:end;width:100%;user-select:none;-webkit-user-select:none;touch-action:none;padding:1rem 0}.d-pad{grid-area:dpad;display:flex;flex-direction:column;align-items:center;gap:4px}.d-pad-horizontal{display:flex;align-items:center;gap:4px}.d-pad-center{width:50px;height:50px;background:#ffffff0d;border-radius:4px}.center-buttons{grid-area:center;display:flex;flex-direction:column;gap:15px;justify-content:center;padding-bottom:40px}.action-buttons{grid-area:actions;display:flex;justify-content:flex-end;gap:20px;padding-bottom:20px}.touch-btn{width:60px;height:60px;font-family:"Press Start 2P",cursive;font-size:14px;background:#ffffff1a;border:2px solid rgba(255,255,255,.2);color:#fff;border-radius:50%;display:flex;align-items:center;justify-content:center;cursor:pointer;transition:all .1s ease;padding:0}.touch-btn:active{background:#ffffff4d;transform:scale(.95);box-shadow:0 0 15px #fff}.d-pad .touch-btn{border-radius:8px;width:55px;height:55px}.center-buttons .touch-btn{width:80px;height:30px;border-radius:15px;font-size:8px}.btn-a,.btn-b{width:70px;height:70px;font-size:18px;border-width:3px}.btn-a{background:#f053;border-color:var(--primary-color);margin-top:-20px}.btn-b{background:#f053;border-color:var(--primary-color)}@media(max-width:600px){.touch-controls-overlay{grid-template-areas:"dpad actions" "center center";grid-template-columns:1fr 1fr;gap:20px}.center-buttons{flex-direction:row;padding-bottom:0}}
