* { margin: 0; padding: 0; box-sizing: border-box; }

html, body {
  width: 100%; height: 100%;
  background: #0D0D0D;
  overflow: hidden;
}

#preloader {
  position: fixed;
  inset: 0;
  background: #0D0D0D;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  gap: 32px;
  z-index: 9999;
  transition: opacity 0.5s ease;
}

#preloader.fade-out {
  opacity: 0;
  pointer-events: none;
}

.diamond-wrap {
  position: relative;
  width: 76px;
  height: 76px;
}

.ring-svg {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  transform: rotate(-90deg); /* старт сверху */
}

.ring-track {
  fill: none;
  stroke: #1A1A1A;
  stroke-width: 1.5;
}

.ring-fill {
  fill: none;
  stroke: url(#ringGrad);
  stroke-width: 1.5;
  stroke-linecap: round;
  /* circumference ≈ 2π×35 ≈ 219.9 */
  stroke-dasharray: 219.9;
  stroke-dashoffset: 219.9; /* 0% заполнено */
  transition: stroke-dashoffset 0.3s ease;
}

.diamond {
  position: absolute;
  inset: 10px;
  background: #DAA520;
  transform: rotate(45deg) scale(0.62);
  border-radius: 3px;
  animation: pulse 1.2s ease-in-out infinite;
}

@keyframes pulse {
  0%, 100% { opacity: 1;   transform: rotate(45deg) scale(0.62); }
  50%       { opacity: 0.6; transform: rotate(45deg) scale(0.55); }
}

.label {
  font-family: -apple-system, BlinkMacSystemFont, 'Segoe UI', sans-serif;
  font-size: 10px;
  font-weight: 300;
  letter-spacing: 4px;
  color: #555555;
  text-transform: uppercase;
  user-select: none;
}

#flutter-target {
  opacity: 0;
  transition: opacity 0.4s ease;
}

#flutter-target.ready {
  opacity: 1;
}