:root{--bg-color:#08090f;--panel-bg:rgba(20, 22, 37, 0.7);--accent-cyan:#ffb432;--accent-blue:#5078ff;--accent-pink:#f857a6;--accent-yellow:#ffb432;--text-primary:#f0f2f5;--text-secondary:#a0a7b5;--border-color:rgba(255, 255, 255, 0.1);--glow-shadow:0 0 20px rgba(255, 180, 50, 0.25);--font-sans:'Outfit',sans-serif;--font-mono:'Share Tech Mono',monospace}*{box-sizing:border-box;margin:0;padding:0}body{font-family:var(--font-sans);background:#08090f;color:var(--text-primary);height:100vh;overflow:hidden;display:flex;flex-direction:column;position:relative}.app-container{display:flex;flex-direction:column;height:100%;padding:1.5rem;gap:1rem;max-width:1440px;width:100%;margin:0 auto;z-index:2}.app-header{display:flex;justify-content:space-between;align-items:center;padding:1rem 2rem;background:var(--panel-bg);backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);border-radius:12px;border:1px solid var(--border-color);position:relative;box-shadow:0 4px 30px rgba(0,0,0,.3);overflow:hidden}.header-glow{position:absolute;top:0;left:0;width:100%;height:2px;background:linear-gradient(90deg,transparent,var(--accent-cyan),var(--accent-blue),transparent)}.brand-logo{font-family:var(--font-mono);font-size:1.5rem;font-weight:800;letter-spacing:2px;background:linear-gradient(90deg,#fff,#bbb);background-clip:text;-webkit-background-clip:text;-webkit-text-fill-color:transparent;color:transparent}.logo-accent{color:var(--accent-cyan);-webkit-text-fill-color:var(--accent-cyan);text-shadow:0 0 10px rgba(255,180,50,.5)}.system-status{display:flex;align-items:center;gap:.75rem;font-family:var(--font-mono);font-size:.9rem;letter-spacing:1px}.status-indicator{width:10px;height:10px;background-color:#0f6;border-radius:50%;box-shadow:0 0 10px #0f6}.status-indicator.pulse{animation:pulseGlow 2s infinite ease-in-out}@keyframes pulseGlow{0%,100%{opacity:.6;box-shadow:0 0 5px #0f6}50%{opacity:1;box-shadow:0 0 15px #0f6}}.visualizer-container{display:grid;grid-template-columns:1fr 320px;gap:1.5rem;flex:1;min-height:0}.canvas-frame{position:relative;background:#000;border-radius:16px;border:1px solid rgba(255,255,255,.1);display:flex;align-items:center;justify-content:center;overflow:hidden;aspect-ratio:4/3}#pong-canvas{width:100%;height:100%;object-fit:contain;display:block;image-rendering:pixelated;image-rendering:crisp-edges}.loading-overlay{position:absolute;top:0;left:0;width:100%;height:100%;background:rgba(8,9,15,.9);display:flex;flex-direction:column;justify-content:center;align-items:center;z-index:100;transition:opacity .5s}.loading-overlay.hidden{opacity:0;pointer-events:none}.spinner{width:50px;height:50px;border:3px solid rgba(255,180,50,.2);border-top-color:var(--accent-cyan);border-radius:50%;animation:spin 1s linear infinite;margin-bottom:1.5rem}.loading-message{font-family:var(--font-mono);color:var(--accent-cyan);letter-spacing:2px}@keyframes spin{to{transform:rotate(360deg)}}.dashboard-panel{display:flex;flex-direction:column;gap:1.5rem;height:100%}.glass-panel{background:var(--panel-bg);backdrop-filter:blur(16px);-webkit-backdrop-filter:blur(16px);border:1px solid var(--border-color);border-radius:16px;padding:1.5rem;box-shadow:0 8px 32px rgba(0,0,0,.4)}.telemetry-section{flex:0 0 auto}.controls-section{flex:1 1 auto;display:flex;flex-direction:column;min-height:0}.panel-title{font-family:var(--font-mono);font-size:.85rem;letter-spacing:3px;color:var(--text-secondary);margin-bottom:1.25rem;display:flex;align-items:center;gap:.5rem}.panel-title::before{content:"";display:inline-block;width:6px;height:6px;background:var(--accent-cyan)}.stat-row{display:flex;justify-content:space-between;padding:.75rem 0;border-bottom:1px solid rgba(255,255,255,.05);font-size:.9rem}.stat-label{color:var(--text-secondary);font-weight:300}.stat-value{font-family:var(--font-mono);font-weight:700}.text-cyan{color:var(--accent-cyan)}.text-green{color:#0f6}.text-yellow{color:#f1c40f}.text-pink{color:var(--accent-pink)}.console-output{flex:1;background:rgba(0,0,0,.3);border-radius:8px;border:1px solid rgba(255,255,255,.03);margin-top:1rem;padding:1rem;font-family:var(--font-mono);font-size:.8rem;line-height:1.5;overflow-y:auto;color:var(--accent-cyan);opacity:.8}.log-line{margin-bottom:.5rem;white-space:pre-wrap}.app-footer{display:flex;justify-content:space-between;font-family:var(--font-mono);font-size:.75rem;color:var(--text-secondary);padding:.5rem 1rem;letter-spacing:1px;opacity:.7}.app-footer a{color:inherit;text-decoration:none;transition:color .25s ease,text-shadow .25s ease}.app-footer a:hover{color:var(--accent-cyan);text-shadow:0 0 8px rgba(255,180,50,.6)}.console-output::-webkit-scrollbar{width:4px}.console-output::-webkit-scrollbar-track{background:0 0}.console-output::-webkit-scrollbar-thumb{background:rgba(255,180,50,.3);border-radius:2px}@media (max-width:900px){body{height:auto;min-height:100vh;overflow-y:auto;overflow-x:hidden}.app-container{height:auto;padding:.75rem;gap:.75rem}.app-header{padding:.75rem 1.25rem;border-radius:10px}.brand-logo{font-size:1.2rem}.system-status{font-size:.8rem;gap:.5rem}.visualizer-container{grid-template-columns:1fr;gap:.75rem}.canvas-frame{border-radius:12px;margin-bottom:.25rem}.dashboard-panel{gap:.75rem;height:auto}.glass-panel{padding:1rem;border-radius:12px}.console-output{min-height:120px;max-height:180px;margin-top:.75rem;padding:.75rem}.app-footer{flex-direction:column;align-items:center;gap:.5rem;text-align:center;padding:.75rem 0}}@media (max-width:480px){.app-header{flex-direction:column;gap:.5rem;align-items:flex-start;padding:1rem}.brand-logo{width:100%}.system-status{width:100%;justify-content:flex-start;border-top:1px solid rgba(255,255,255,.05);padding-top:.5rem}.stat-row{padding:.5rem 0;font-size:.8rem}}