
    /* --- FONT CUSTOM DARI SUPABASE (FONT BESAR / JUDUL) --- */
    @font-face {
      font-family: 'CustomFont';
      /* URL Font Besar Anda (Navigo-Bold) */
      src: url('https://nlthfndovykcybtreozx.supabase.co/storage/v1/object/public/fonts/Navigo-Bold.otf') format('opentype');
      font-weight: normal;
      font-style: normal;
      font-display: swap;
    }

    /* --- TAMBAHKAN FONT KECIL DI SINI (TEKS UTAMA / ANGKA) --- */
    @font-face {
      font-family: 'FraktionMono';
      /* URL Font Kecil Anda (PPFraktionMono) */
      src: url('https://nlthfndovykcybtreozx.supabase.co/storage/v1/object/public/fonts/PPFraktionMono-Regular-BF675904a6a1564.otf') format('opentype');
      font-weight: normal;
      font-style: normal;
      font-display: swap;
    }

    /* --- GLOBAL FONT OVERRIDE (MEMAKSA HANYA 2 FONT INI YANG MUNCUL) --- */
    body {
      font-family: 'FraktionMono', monospace !important;
      overscroll-behavior-y: contain; /* Mencegah pull-to-refresh bawaan browser HP */
    }

    .font-custom, .font-display {
      font-family: 'CustomFont', sans-serif !important;
    }

    .font-sans, .font-mono {
      font-family: 'FraktionMono', monospace !important;
    }
    /* --------------------------------- */

    /* Custom Scrollbar */
    ::-webkit-scrollbar {
      width: 4px;
      height: 4px;
    }

    /* Hide scrollbar for gallery slider */
    .hide-scrollbar::-webkit-scrollbar {
      display: none;
    }
    .hide-scrollbar {
      -ms-overflow-style: none;
      scrollbar-width: none;
    }

    ::-webkit-scrollbar-thumb {
      background: #333;
      border-radius: 4px;
    }

    ::-webkit-scrollbar-thumb:hover {
      background: #D4AF37;
    }

    .glass {
      background: rgba(18, 18, 18, 0.95);
      backdrop-filter: blur(10px);
      border: 1px solid rgba(212, 175, 55, 0.2);
    }

    .gold-gradient-text {
      background: linear-gradient(to right, #BF953F, #FCF6BA, #B38728, #FBF5B7, #AA771C);
      -webkit-background-clip: text;
      background-clip: text;
      color: transparent;
    }

    .fade-enter-active,
    .fade-leave-active {
      transition: opacity 0.3s ease;
    }

    .fade-enter-from,
    .fade-leave-to {
      opacity: 0;
    }

    /* V-CLOAK: Hides element until Vue is mounted to prevent {{ }} flash */
    [v-cloak] {
      display: none !important;
    }

    /* Date Picker Customization */
    input[type="date"]::-webkit-calendar-picker-indicator {
      filter: invert(1);
      cursor: pointer;
    }

    /* Time Picker Customization (Force hide AM/PM) */
    input[type="time"]::-webkit-datetime-edit-ampm-field {
      display: none !important;
    }
    input[type="time"]::-webkit-calendar-picker-indicator {
      filter: invert(1);
      cursor: pointer;
    }

    @media screen {
      .hide-on-screen {
        display: none !important;
      }
    }

    @media print {
      @page {
        margin: 0;
        size: auto;
      }

      body {
        background: white !important;
        color: black !important;
      }

      #app {
        display: none !important;
      }
    }
  