@import "https://fonts.googleapis.com/css2?family=Share+Tech+Mono&family=Space+Grotesk:wght@400;500;600;700&display=swap";:root{--bg-dark:#070a12;--bg-panel:#0d1423b3;--border-color:#2b3a5673;--neon-cyan:#00f0ff;--neon-purple:#bd00ff;--neon-green:#0f6;--neon-red:#ff3b30;--neon-amber:#ffb700;--font-hud:"Share Tech Mono", monospace;--font-body:"Space Grotesk", sans-serif}*{box-sizing:border-box;margin:0;padding:0}body{background-color:var(--bg-dark);color:#f1f5f9;font-family:var(--font-body);background-image:radial-gradient(circle at 15% 15%,#bd00ff14 0%,#0000 45%),radial-gradient(circle at 85% 85%,#00f0ff14 0%,#0000 45%),linear-gradient(#1218264d 1px,#0000 1px),linear-gradient(90deg,#1218264d 1px,#0000 1px);background-size:100% 100%,100% 100%,25px 25px,25px 25px;flex-direction:column;min-height:100vh;display:flex;overflow-x:hidden}#app{flex-direction:column;flex-grow:1;width:100%;max-width:1500px;margin:0 auto;padding:15px 20px;display:flex}.vib-dashboard{flex-direction:column;flex-grow:1;gap:15px;height:100%;display:flex}.vib-header{border-bottom:2px solid var(--neon-purple);justify-content:space-between;align-items:center;margin-bottom:5px;padding-bottom:8px;display:flex}.header-glitch{font-family:var(--font-hud);letter-spacing:2px;color:#fff;text-shadow:0 0 10px #bd00ff66, 0 0 2px var(--neon-cyan);font-size:1.7rem}.system-status{font-family:var(--font-hud);letter-spacing:1.5px;border:1px solid;border-radius:4px;padding:4px 10px;font-size:.9rem;transition:all .3s}.status-success{border-color:var(--neon-green);color:var(--neon-green);background:#00ff6614;box-shadow:0 0 10px #00ff6640}.status-warning{border-color:var(--neon-amber);color:var(--neon-amber);background:#ffb70014;box-shadow:0 0 10px #ffb70040}.status-danger{border-color:var(--neon-red);color:var(--neon-red);background:#ff3b3014;box-shadow:0 0 10px #ff3b3040}.dashboard-grid{grid-template-columns:310px 1fr 310px;align-items:stretch;gap:15px;display:grid}@media (width<=1250px){.dashboard-grid{grid-template-columns:310px 1fr}.mappings-panel{grid-column:span 2}}@media (width<=900px){.dashboard-grid{grid-template-columns:1fr}.control-panel,.game-panel,.mappings-panel{grid-column:span 1}}.panel{background:var(--bg-panel);border:1px solid var(--border-color);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);border-radius:6px;flex-direction:column;justify-content:space-between;padding:12px 15px;display:flex;box-shadow:0 10px 30px #0006}.panel-header{border-bottom:1px solid var(--border-color);justify-content:space-between;align-items:center;margin-bottom:12px;padding-bottom:6px;display:flex}.panel-title{font-family:var(--font-hud);letter-spacing:1px;color:var(--neon-cyan);text-transform:uppercase;font-size:.95rem}.panel-decor{font-family:var(--font-hud);color:#ffffff40;font-size:.7rem}.visualizer-container{background:#00000073;border:1px solid #00f0ff26;border-radius:4px;justify-content:center;align-items:center;height:110px;margin-bottom:12px;display:flex;overflow:hidden}.visualizer-container canvas{width:100%;height:100%;display:block}.controls-row{gap:8px;margin-bottom:12px;display:flex}.vib-btn{font-family:var(--font-hud);cursor:pointer;letter-spacing:.8px;border:1px solid;border-radius:4px;flex:1;padding:8px;font-size:.85rem;transition:all .25s}.vib-btn.primary{border-color:var(--neon-cyan);color:var(--neon-cyan);background:#00f0ff14}.vib-btn.primary:hover:not(:disabled){background:var(--neon-cyan);color:#000;box-shadow:0 0 12px var(--neon-cyan)}.vib-btn.secondary{border-color:var(--neon-purple);color:var(--neon-purple);background:#bd00ff14}.vib-btn.secondary:hover:not(:disabled){background:var(--neon-purple);color:#fff;box-shadow:0 0 12px var(--neon-purple)}.vib-btn:disabled{opacity:.25;cursor:not-allowed}.transcript-monitor{font-family:var(--font-hud);border-left:2px solid var(--neon-cyan);background:#00000059;border-radius:4px;margin-bottom:12px;padding:8px 10px}.monitor-label{font-family:var(--font-hud);color:#fff6;letter-spacing:.5px;text-transform:uppercase;margin-bottom:4px;font-size:.75rem}.transcript-box{color:#fff;word-wrap:break-word;min-height:22px;font-size:1rem;transition:all .25s}.transcript-box.listening{color:var(--neon-cyan)}.transcript-box.interim{color:#00f0ffa6;font-style:italic}.transcript-box.flash-warning{color:var(--neon-red);text-shadow:0 0 8px var(--neon-red)}.log-panel-inline{flex-direction:column;display:flex}.log-container-inline{background:#00000040;border:1px solid #ffffff0d;border-radius:4px;height:180px;overflow-y:auto}.transaction-list{font-family:var(--font-hud);font-size:.8rem;list-style:none}.log-placeholder{color:#fff3;text-align:center;padding:10px;font-style:italic}.log-entry{border-bottom:1px solid #ffffff05;flex-direction:column;gap:2px;padding:6px 8px;animation:.3s ease-out log-fade;display:flex}.log-time{color:#ffffff4d;font-size:.7rem}.log-msg{color:#e2e8f0}.log-cmd{font-size:.75rem}.game-panel{justify-content:flex-start;align-items:stretch}.game-canvas-container{border:1px solid var(--border-color);background:#020408;border-radius:4px;justify-content:center;align-items:center;width:100%;display:flex;overflow:hidden;box-shadow:inset 0 0 20px #000c}.game-canvas-container canvas{aspect-ratio:2;width:100%;max-width:800px;height:auto;display:block}.game-controls-help{font-family:var(--font-hud);color:#ffffff59;text-align:center;border-top:1px dashed #ffffff0d;margin-top:10px;padding-top:8px;font-size:.75rem}.game-controls-help strong{color:var(--neon-cyan)}.command-grid{grid-template-columns:repeat(2,1fr);gap:8px;margin-bottom:12px;display:grid}.command-cell{background:#ffffff04;border:1px solid #ffffff0a;border-radius:4px;flex-direction:column;justify-content:space-between;padding:8px;transition:all .25s;display:flex;position:relative;overflow:hidden}.command-cell:before{content:"";background:var(--neon-purple);opacity:.4;width:2px;height:100%;position:absolute;top:0;left:0}.command-cell .cmd-name{font-family:var(--font-hud);color:#fff;letter-spacing:.5px;font-size:.85rem}.command-cell .cmd-keywords{color:#ffffff4d;white-space:nowrap;text-overflow:ellipsis;margin-top:3px;font-size:.65rem;overflow:hidden}.command-cell.pulse-success{animation:.8s ease-out pulse-success-anim}.glossary-section{background:#0003;border:1px solid #ffffff08;border-radius:4px;padding:8px 10px}.glossary-list{flex-direction:column;gap:6px;max-height:170px;display:flex;overflow-y:auto}.glossary-item{color:#fff9;font-size:.72rem;line-height:1.3}.glossary-item strong{font-family:var(--font-hud);color:var(--neon-cyan)}@keyframes log-fade{0%{opacity:0;transform:translateY(-3px)}to{opacity:1;transform:translateY(0)}}@keyframes pulse-success-anim{0%{border-color:var(--neon-green);background:#00ff6614;box-shadow:0 0 #0f60}30%{border-color:var(--neon-green);background:#00ff664d;box-shadow:0 0 12px #00ff6673}to{background:#ffffff04;border-color:#ffffff0a;box-shadow:0 0 #0f60}}.log-container-inline::-webkit-scrollbar{width:4px}.glossary-list::-webkit-scrollbar{width:4px}.log-container-inline::-webkit-scrollbar-track{background:0 0}.glossary-list::-webkit-scrollbar-track{background:0 0}.log-container-inline::-webkit-scrollbar-thumb{background:#bd00ff33;border-radius:2px}.glossary-list::-webkit-scrollbar-thumb{background:#bd00ff33;border-radius:2px}.log-container-inline::-webkit-scrollbar-thumb:hover{background:#bd00ff66}.glossary-list::-webkit-scrollbar-thumb:hover{background:#bd00ff66}
