/* SPDX-License-Identifier: MIT */
/* Copyright (C) 2026 Abhishek Sengar */

:root {
  --stage-grid-color: rgba(148, 163, 184, 0.22);
  --stage-subgrid-color: rgba(148, 163, 184, 0.09);
}

body {
  font-family: ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, 'Helvetica Neue', Arial, sans-serif;
  background-color: #f8fafc;
  color: #0f172a;
  overflow-x: hidden;
}

.blueprint-grid {
  background-color: #ffffff;
  background-image:
    linear-gradient(to right, var(--stage-grid-color) 1px, transparent 1px),
    linear-gradient(to bottom, var(--stage-grid-color) 1px, transparent 1px),
    linear-gradient(to right, var(--stage-subgrid-color) 1px, transparent 1px),
    linear-gradient(to bottom, var(--stage-subgrid-color) 1px, transparent 1px);
  background-size: 80px 80px, 80px 80px, 16px 16px, 16px 16px;
  background-position: center center;
}

.scenery-backdrop {
  background:
    radial-gradient(circle at 20% 25%, rgba(5, 195, 173, 0.85) 0%, transparent 45%),
    radial-gradient(circle at 80% 30%, rgba(236, 72, 153, 0.85) 0%, transparent 45%),
    radial-gradient(circle at 50% 80%, rgba(16, 185, 129, 0.85) 0%, transparent 50%),
    linear-gradient(135deg, #fef3c7 0%, #c8fff4 50%, #fce7f3 100%);
}

.gizmo-handle {
  touch-action: none;
  user-select: none;
  cursor: grab;
  transition: transform 0.1s ease, box-shadow 0.1s ease;
}
.gizmo-handle:active {
  cursor: grabbing;
  transform: scale(1.2);
}

::-webkit-scrollbar {
  width: 6px;
  height: 6px;
}
::-webkit-scrollbar-track {
  background: #f1f5f9;
}
::-webkit-scrollbar-thumb {
  background: #cbd5e1;
  border-radius: 999px;
}
::-webkit-scrollbar-thumb:hover {
  background: #94a3b8;
}

@keyframes subtlePulse {
  0%, 100% { box-shadow: 0 0 0 0 rgba(0, 157, 142, 0.35); }
  50% { box-shadow: 0 0 0 6px rgba(0, 157, 142, 0); }
}
.pulse-ring {
  animation: subtlePulse 2s infinite;
}
