* { box-sizing: border-box; margin: 0; padding: 0; }
body { font-family: 'JetBrains Mono', monospace; }

::-webkit-scrollbar { width: 6px; height: 6px; }
::-webkit-scrollbar-track { background: #0F172A; }
::-webkit-scrollbar-thumb { background: #334155; border-radius: 3px; }
::-webkit-scrollbar-thumb:hover { background: #475569; }

.terminal-glow { text-shadow: 0 0 4px currentColor; }
.status-pulse { animation: pulse 2s ease-in-out infinite; }
@keyframes pulse { 0%, 100% { opacity: 1; } 50% { opacity: 0.5; } }
@keyframes blink { 0%, 100% { opacity: 1; } 50% { opacity: 0; } }
.cursor-blink { animation: blink 1s step-end infinite; }

.drop-zone { border: 2px dashed #334155; transition: all 0.2s; }
.drop-zone:hover, .drop-zone.drag-over { border-color: #F59E0B; background: rgba(245, 158, 11, 0.05); }

.register-changed { background: rgba(245, 158, 11, 0.15) !important; }

.terminal-container {
  font-size: 14px;
  line-height: 1.4;
  white-space: pre-wrap;
  word-break: break-all;
}

.panel-section {
  background: #1E293B;
  border: 1px solid #334155;
  border-radius: 6px;
}

input[type="range"] {
  -webkit-appearance: none;
  background: #334155;
  height: 4px;
  border-radius: 2px;
}
input[type="range"]::-webkit-slider-thumb {
  -webkit-appearance: none;
  width: 14px; height: 14px;
  background: #F59E0B;
  border-radius: 50%;
  cursor: pointer;
}

.fade-in { animation: fadeIn 0.3s ease-in; }
@keyframes fadeIn { from { opacity: 0; transform: translateY(4px); } to { opacity: 1; transform: translateY(0); } }