/* Modal */
    .pcal-modal-ov {
      position: fixed;
      inset: 0;
      z-index: 9990;
      background: rgba(0, 4, 14, .82);
      backdrop-filter: blur(8px);
      display: flex;
      align-items: center;
      justify-content: center;
      opacity: 0;
      pointer-events: none;
      transition: opacity .22s;
    }

    .pcal-modal-ov.open {
      opacity: 1;
      pointer-events: all;
    }

    .pcal-modal-box {
      width: min(500px, 94vw);
      background: linear-gradient(160deg, rgba(5, 12, 32, .99), rgba(3, 8, 24, .99));
      border: 1px solid rgba(139, 92, 246, .3);
      border-radius: 16px;
      box-shadow: 0 24px 80px rgba(0, 0, 0, .9);
      transform: translateY(16px);
      transition: transform .22s cubic-bezier(.2, 1, .3, 1);
    }

    .pcal-modal-ov.open .pcal-modal-box {
      transform: none;
    }

    .pcal-modal-hdr {
      display: flex;
      align-items: center;
      gap: 12px;
      padding: 14px 18px;
      background: rgba(3, 8, 24, .98);
      border-bottom: 1px solid rgba(139, 92, 246, .15);
      border-radius: 16px 16px 0 0;
    }

    .pcal-modal-ttl {
      font-family: 'Syne', sans-serif;
      font-size: 14px;
      font-weight: 800;
      color: #ddd6fe;
      flex: 1;
    }
