/* Stiluri care nu țin de Tailwind. Încărcat înaintea Tailwind ca să evite ecranul alb la încărcare. */
html { background: #110f1c; color-scheme: dark; scroll-behavior: smooth; scroll-padding-top: 72px; }
body { margin: 0; background: #110f1c; color: #ede9f8; }

.bg-blueprint {
  background-image:
    linear-gradient(to right, rgb(182 124 255 / 0.07) 1px, transparent 1px),
    linear-gradient(to bottom, rgb(182 124 255 / 0.07) 1px, transparent 1px);
  background-size: 28px 28px;
}

:focus-visible { outline: 2px solid #b67cff; outline-offset: 2px; }
.field-input:focus-visible { outline: none; }
.field-input[aria-invalid="true"] { border-color: rgb(255 93 82 / 0.7); }
::selection { background: rgb(182 124 255 / 0.35); }
[hidden] { display: none !important; }

.no-scrollbar { scrollbar-width: none; }
.no-scrollbar::-webkit-scrollbar { display: none; }

@keyframes voxel-drop { from { opacity: 0; transform: translateY(-16px); } to { opacity: 1; transform: none; } }
.voxel-drop { animation: voxel-drop .5s cubic-bezier(.2,.8,.2,1) both; }

@media (prefers-reduced-motion: reduce) {
  html { scroll-behavior: auto; }
  .voxel-drop { animation: none; }
}
