@layer utilities {
  /* SVG fills */
  .polygon-fill { fill: #bbbbbb; }
  .path-fill { fill: #bbbbbb; }

  /* SVG keyframes */
  @keyframes polygonAnim {
    from { transform: translate(15px, 15px); fill: #bbbbbb; }
    to { transform: translate(0, 0); fill: #f87171; } /* Tailwind red-400 */
  }
  @keyframes pathAnim {
    from { transform: translate(-15px, -15px); fill: #bbbbbb; }
    to { transform: translate(0, 0); fill: #b91c1c; } /* Tailwind red-700 */
  }

  /* SVG animation classes */
  .animate-polygon { animation: polygonAnim 1s ease forwards 1s; }
  .animate-path { animation: pathAnim 1s ease forwards 1s; }

  /* Text fade-in + slide-up animation */
  @keyframes textFadeIn {
    from { opacity: 0; transform: translateY(1rem); }
    to { opacity: 1; transform: translateY(0); }
  }
  .animate-text { animation: textFadeIn 1s ease forwards 1.5s; }
}
#confirmModal { z-index: 9999; }
#confirmModal .popup {    margin: 50vh 50vw;
    transform: translate(-50%, -50%);
}