
    .mensagem-central {
      position: fixed;
      top: 20%;
      left: 50%;
      transform: translate(-50%, -50%);
      background: rgba(255, 255, 0, 0.9);
      -webkit-text-stroke: 1px black;
      padding: 20px 40px;
      border-radius: 12px;
      font-size: 2em;
      font-weight: 700;
      font-family: Candara;
      color: springgreen;
      box-shadow: 0 0 15px rgba(0, 0, 0, 0.2);
      z-index: 9999;
      pointer-events: none;
      text-align: center;
      outline: #fff solid
    }

    /* Animações variadas */
    @keyframes fadeOut {
      0% { opacity: 0; }
      50% { opacity: .9; }
      80% { opacity: 1; }
      100% { opacity: 0; }
    }

    @keyframes slideUp {
      0%   { transform: translate(-50%, -50%) scale(1); opacity: 1; }
      50%  { transform: translate(-50%, -70%) scale(1); opacity: 1; }
      80%  { transform: translate(-50%, -72%) scale(1); opacity: 1; }
      100% { transform: translate(-50%, -90%) scale(1); opacity: 0; }
    }

    @keyframes zoomOut {
      0%   { transform: translate(-50%, -50%) scale(1); opacity: 1; }
      25%   { transform: translate(-50%, -50%) scale(1.5); opacity: 1; }
      75%   { transform: translate(-50%, -50%) scale(1.5); opacity: 1; }
      100% { transform: translate(-50%, -50%) scale(2); opacity: 0; }
    }

    .anim-fadeOut { animation: fadeOut 3s forwards; }
    .anim-slideUp { animation: slideUp 3s forwards; }
    .anim-zoomOut { animation: zoomOut 3s forwards; }

    .confete {
      position: fixed;
      width: 10px;
      height: 10px;
      background: red;
      animation: cair 3s linear forwards;
      opacity: 0.8;
      border-radius: 50%;
      z-index: 9998;
      pointer-events: none;
    }

    @keyframes cair {
      0% { transform: translateY(0); }
      25% { transform: translateY(50vh) }
      75% { transform: translateY(60vh) }
      100% { transform: translateY(100vh); opacity: 0; }
    }