.tool-transition-enter {
  animation: toolSlideIn 0.2s cubic-bezier(0.4, 0, 0.2, 1);
  will-change: transform, opacity;
}

@keyframes toolSlideIn {
  from {
    opacity: 0;
    transform: translateY(20px) scale(0.98);
  }
  to {
    opacity: 1;
    transform: translateY(0) scale(1);
  }
}

.gpu-layer {
  transform: translateZ(0);
  backface-visibility: hidden;
  -webkit-backface-visibility: hidden;
}

.tool-skeleton {
  animation: pulse 1.5s infinite;
}

@keyframes pulse {
  0%, 100% { opacity: 0.6; }
  50% { opacity: 1; }
}

.nuclear-tool-card {
  margin-top: 16px;
  padding: 16px;
  border-radius: 10px;
  background: #0f1621;
  color: #e6eef7;
}

.nuclear-tool-actions {
  display: flex;
  gap: 10px;
  margin-top: 12px;
}

.nuclear-tool-actions button {
  background: #1e2a3a;
  color: #e6eef7;
  border: 1px solid #2b3a50;
  border-radius: 8px;
  padding: 8px 12px;
}

.nuclear-input {
  display: block;
  margin-top: 12px;
  padding: 6px 8px;
  background: #0b0f14;
  color: #c9d6e6;
  border: 1px solid #243144;
  border-radius: 8px;
}

.nuclear-label {
  display: block;
  margin-top: 12px;
  color: #9fb4d1;
  font-size: 0.9rem;
}

.nuclear-checkbox {
  display: flex;
  align-items: center;
  gap: 8px;
  margin-top: 10px;
  color: #c9d6e6;
}

.nuclear-download {
  display: inline-flex;
  margin-top: 12px;
  padding: 8px 12px;
  border-radius: 8px;
  border: 1px solid #2b3a50;
  background: #122033;
  color: #e6eef7;
  text-decoration: none;
}

.nuclear-debug-banner {
  margin: 0 0 12px 0;
  padding: 8px 12px;
  border-radius: 8px;
  background: #1a2233;
  color: #8fd3ff;
  font-size: 0.85rem;
  border: 1px dashed #2a4a66;
}

.nuclear-debug-status {
  margin-bottom: 10px;
  padding: 6px 10px;
  border-radius: 6px;
  background: #0f1a2a;
  color: #9cc3e8;
  font-size: 0.8rem;
  border: 1px solid #1f2f45;
}

.nuclear-result {
  margin-top: 12px;
  padding: 10px 12px;
  background: #0b111a;
  border: 1px solid #1f2a3b;
  border-radius: 8px;
  color: #dbe6f5;
  white-space: pre-wrap;
}

.nuclear-preview {
  margin-top: 10px;
  padding: 8px 10px;
  border-radius: 6px;
  background: #0f1624;
  color: #cfe0f6;
  border: 1px solid #1b2a40;
}

.nuclear-debug-toggle {
  position: fixed;
  right: 12px;
  bottom: 12px;
  z-index: 9999;
  display: flex;
  align-items: center;
  gap: 8px;
  padding: 8px 10px;
  border-radius: 10px;
  background: rgba(12, 18, 28, 0.95);
  border: 1px solid #24324a;
  color: #c7d7ea;
  font-size: 0.85rem;
}

.nuclear-debug-toggle__label {
  display: flex;
  align-items: center;
  gap: 6px;
}

.nuclear-debug-toggle button {
  background: #1e2a3a;
  color: #e6eef7;
  border: 1px solid #2b3a50;
  border-radius: 6px;
  padding: 4px 8px;
}

.nuclear-debug-footer {
  margin-top: 10px;
  font-size: 0.8rem;
  color: #8fb1d9;
}

.nuclear-status {
  margin-top: 12px;
  color: #9fb4d1;
}

.nuclear-status--ok {
  color: #7ee2a8;
}

.nuclear-status--warn {
  color: #f5d17a;
}

.nuclear-status--error {
  color: #ff8d8d;
}

.nuclear-debug-metrics {
  position: fixed;
  right: 12px;
  bottom: 58px;
  z-index: 9999;
  padding: 6px 10px;
  border-radius: 8px;
  background: rgba(10, 16, 26, 0.92);
  border: 1px solid #203048;
  color: #9ec3f0;
  font-size: 0.8rem;
}
