    :root{
      --brand:#531554; --brand-dark:#3a0f3c;
    }

/* Toast Modal Styles */
    .toast-overlay {
      position: fixed;
      top: 0; left: 0;
      width: 100%; height: 100%;
      background: rgba(0,0,0,0.5);
      display: flex; justify-content: center; align-items: center;
      z-index: 9999;
    }
    .toast-card {
      background: #fff;
      padding: 2rem;
      border-radius: 1rem;
      position: relative;
      width: 320px;
      animation: fadeInUp 0.4s ease-in-out;
    }
    .toast-card .close-btn {
      position: absolute;
      top: 10px; right: 15px;
      background: transparent;
      border: none;
      font-size: 24px;
      color: #aaa;
      cursor: pointer;
    }
    .toast-card .close-btn:hover { color: #000; }
    @keyframes fadeInUp {
      from { transform: translateY(20px); opacity: 0; }
      to { transform: translateY(0); opacity: 1; }
    }

    /* Balloon animation */
    .balloon {
      position: fixed;
      bottom: -100px;
      width: 40px;
      height: 50px;
      border-radius: 50%;
      background: var(--color);
      opacity: 0.8;
      animation: floatUp 6s ease-in infinite;
      z-index: 9998;
    }
    @keyframes floatUp {
      0% { transform: translateY(0); opacity: 0.9; }
      100% { transform: translateY(-110vh); opacity: 0; }
    }