/* =========================================
   DARK PURPLE PROFESSIONAL THEME OVERRIDE
   ringan, smooth, class tetap sama
========================================= */

:root{
  --bg:#0a0614;
  --bg-soft:#120b22;
  --bg-card:#161028;
  --bg-card-2:#1d1533;
  --bg-hover:#241b3d;
  --line:rgba(255,255,255,.08);
  --line-2:rgba(168,120,255,.18);
  --text:#f6f2ff;
  --muted:#b8afd3;
  --primary:#9b6bff;
  --primary-2:#6f42ff;
  --accent:#ffb347;
  --accent-2:#ff8a3d;
  --success:#57e6b1;
  --danger:#ff6b81;
  --shadow:0 10px 30px rgba(0,0,0,.28);
  --shadow-soft:0 6px 18px rgba(111,66,255,.16);
  --radius:16px;
  --radius-sm:12px;
  --trans:.28s ease;
}

/* ===== Global ===== */
body,
.navbar,
.site-footer-navbar,
.modal-body,
.modal-footer,
.standard-form-container,
.complaint-container,
.reporting-detail-popup .reporting-detail-popup-content,
.loyalty-daily-reward-modal .modal-body,
.free-spin-report-container{
  background:
    radial-gradient(circle at top, rgba(155,107,255,.12), transparent 30%),
    linear-gradient(180deg, #130a22 0%, #0d0718 50%, #090511 100%) !important;
  color: var(--text) !important;
}

.site-header-navbar,
.site-footer,
.game-provider-slider,
.page-description,
.site-side-menu>ul,
.side-menu-user-info,
.side-menu-login-panel,
.standard-reporting-control-group{
  background: rgba(18,11,34,.92) !important;
  backdrop-filter: blur(8px);
}

/* ===== Title / Section ===== */
.game-list-title,
.large-game-list-heading,
.standard-form-sub-title,
.info-center-container h3,
.home-component-item .h2{
  color: var(--text) !important;
  border-left: 4px solid var(--primary) !important;
  padding-left: 12px;
  text-shadow: 0 0 12px rgba(155,107,255,.22);
}

.standard-form-title{
  color: var(--text) !important;
  border-bottom: 1px solid var(--line-2) !important;
}

/* ===== Cards / Containers ===== */
.home-component-item,
.game-container,
.game-list .game-item,
.claim-item,
.promotion-list .promotion-container,
.pending-transactions-container .pending-transactions-item,
.transaction-item,
.pending-transaction-detail-card,
.bet-report-detail-inner-card,
.loyalty-history-list .loyalty-history-item,
.benefit-container .benefit-list .benefit-card,
.how-it-works-container .how-it-works-section,
.referral-features .referral-features-item,
.mission-container .mission-item,
.standard-content-info .standard-content-block,
.bank-info-block,
.complaint-container .complaint-status-box,
.complaint-container .uploaded-video-file-display{
  background: linear-gradient(180deg, rgba(28,19,49,.98), rgba(18,12,33,.98)) !important;
  color: var(--text) !important;
  border: 1px solid var(--line) !important;
  border-radius: var(--radius) !important;
  box-shadow: var(--shadow) !important;
}

/* hover ringan */
.game-list .game-item,
.game-container,
.claim-item,
.promotion-list .promotion-container,
.transaction-item,
.home-component-item{
  transition: transform var(--trans), box-shadow var(--trans), border-color var(--trans), background var(--trans);
}

.game-list .game-item:hover,
.game-container:hover,
.claim-item:hover,
.promotion-list .promotion-container:hover,
.transaction-item:hover,
.home-component-item:hover{
  transform: translateY(-3px);
  border-color: var(--line-2) !important;
  box-shadow: 0 14px 34px rgba(0,0,0,.34), 0 0 0 1px rgba(155,107,255,.08) inset !important;
}

/* ===== Filter section ===== */
.game-list-container .filter-section{
  background: linear-gradient(180deg, rgba(24,16,40,.96), rgba(14,9,26,.96)) !important;
  border: 1px solid var(--line) !important;
  border-radius: 18px !important;
  box-shadow: var(--shadow-soft);
  padding: 12px !important;
}

.game-list-container .filter-section:after{
  border-left: 1px solid var(--line) !important;
}

.game-list-container .filter-section .category-filter .category-filter-link{
  color: var(--muted) !important;
  background: transparent !important;
  border-radius: 12px;
  transition: background var(--trans), color var(--trans), box-shadow var(--trans);
}

.game-list-container .filter-section .category-filter .category-filter-link:hover{
  background: rgba(155,107,255,.10) !important;
  color: var(--text) !important;
}

.game-list-container .filter-section .category-filter .category-filter-link.active{
  color: #fff !important;
  background: linear-gradient(90deg, rgba(111,66,255,.92), rgba(155,107,255,.92)) !important;
  box-shadow: 0 8px 22px rgba(111,66,255,.22);
}

.game-list-container .filter-section>input,
.game-list-container .filter-section>select,
.standard-form input,
.standard-form select,
.standard-form textarea,
.side-menu-login-panel input[type="text"],
.side-menu-login-panel input[type="password"],
.standard-reporting-control-group input,
.standard-reporting-control-group select,
.complaint-container .form-control{
  background: #100b1d !important;
  color: var(--text) !important;
  border: 1px solid rgba(255,255,255,.08) !important;
  border-radius: 12px !important;
  transition: border-color var(--trans), box-shadow var(--trans), background var(--trans);
}

.game-list-container .filter-section>input::placeholder,
.standard-form input::placeholder,
.standard-form textarea::placeholder{
  color: #8e84af;
}

.game-list-container .filter-section>input:focus,
.game-list-container .filter-section>select:focus,
.standard-form input:focus,
.standard-form select:focus,
.standard-form textarea:focus,
.side-menu-login-panel input[type="text"]:focus,
.side-menu-login-panel input[type="password"]:focus,
.standard-reporting-control-group input:focus,
.standard-reporting-control-group select:focus{
  border-color: rgba(155,107,255,.55) !important;
  box-shadow: 0 0 0 3px rgba(155,107,255,.12) !important;
  outline: none;
}

/* ===== Buttons ===== */
.play-now,
.claim-item .claim-button,
.claim-item .activation-button,
.claim-item .cancellation-button,
.claim-item .expiration-button,
.site-topbar main>a.register-button,
.site-topbar main>a.login-button,
.standard-button-group .btn-primary,
.standard-reporting-control-group .btn-primary,
.modal-footer .btn-primary,
.download-apk .btn,
.download-apk-btn-android,
.vendor-game-info a,
.vendor-game-details-info a,
.page-description a,
.promotion-list .promotion-wrapper .link-container button,
.register-done-container .btn-deposit,
.loyalty-reward-container .loyalty-reward-button,
.daily-reward-container .standard-secondary-button,
.mission-container .mission-item[data-status="claimable"] .mission-action-container .action-button,
[data-payment-gateway="qris"] .qris-qr-code-container a,
[data-payment-gateway] .download-qr-button,
.download-apk-notification .download-btn{
  background: linear-gradient(90deg, var(--primary-2), var(--primary)) !important;
  color: #fff !important;
  border: 0 !important;
  border-radius: 999px !important;
  box-shadow: 0 10px 22px rgba(111,66,255,.22);
  transition: transform var(--trans), box-shadow var(--trans), filter var(--trans);
}

.play-now:hover,
.claim-item .claim-button:hover,
.claim-item .activation-button:hover,
.claim-item .cancellation-button:hover,
.claim-item .expiration-button:hover,
.site-topbar main>a.register-button:hover,
.site-topbar main>a.login-button:hover,
.standard-button-group .btn-primary:hover,
.standard-reporting-control-group .btn-primary:hover,
.modal-footer .btn-primary:hover,
.download-apk .btn:hover,
.download-apk-btn-android:hover,
.vendor-game-info a:hover,
.vendor-game-details-info a:hover,
.page-description a:hover,
.promotion-list .promotion-wrapper .link-container button:hover,
.register-done-container .btn-deposit:hover,
.loyalty-reward-container .loyalty-reward-button:hover,
.daily-reward-container .standard-secondary-button:hover,
.mission-container .mission-item[data-status="claimable"] .mission-action-container .action-button:hover,
[data-payment-gateway="qris"] .qris-qr-code-container a:hover,
[data-payment-gateway] .download-qr-button:hover,
.download-apk-notification .download-btn:hover{
  transform: translateY(-2px);
  box-shadow: 0 14px 28px rgba(111,66,255,.28);
  filter: brightness(1.05);
}

.free-play,
.standard-outline-button.standard-outline-button,
.request-otp-button,
.contact-verification-link,
.claim-item .expiration-countdown,
.copy-input-button-field .copy-input-button{
  background: rgba(255,255,255,.03) !important;
  color: var(--text) !important;
  border: 1px solid rgba(155,107,255,.28) !important;
  border-radius: 999px !important;
}

.free-play:hover,
.standard-outline-button.standard-outline-button:hover,
.request-otp-button:hover,
.contact-verification-link:hover,
.copy-input-button-field .copy-input-button:hover{
  background: rgba(155,107,255,.10) !important;
  color: #fff !important;
}

/* ===== Game item ===== */
.game-list .game-item,
.game-container,
.popular-slots-game-list .game-item{
  overflow: hidden;
}

.game-list .game-item .wrapper-container .link-container,
.game-container .game-wrapper .link-container,
.promotion-list .promotion-wrapper .link-container{
  background: linear-gradient(180deg, rgba(8,5,17,0), rgba(8,5,17,.84)) !important;
  backdrop-filter: blur(3px);
}

.game-container .game-name,
.game-list .game-player h5,
.popular-games .games-group .game-container .game-player h5,
.slots-winner .winner-info h5{
  color: var(--text) !important;
}

.game-list .game-item::before,
.game-container::before{
  content:"";
  position:absolute;
  inset:0;
  background: linear-gradient(180deg, rgba(255,255,255,.04), transparent 35%);
  pointer-events:none;
  opacity:.8;
}

/* ===== Header / Menu ===== */
.navbar,
.site-topbar,
.site-header-navbar,
.site-menu .game-list-container,
.site-side-menu li>a,
.site-side-menu summary{
  border-color: var(--line) !important;
}

.site-menu>li>a,
.site-topbar main>a,
.language-selector-container,
.site-menu .games-container>li>a{
  color: var(--text) !important;
}

.site-menu>li[data-active="true"],
.site-menu>li[data-active="true"] a,
.site-menu>li>a:hover,
.site-footer-navbar ul li:hover a,
.site-footer-navbar li[data-active="true"] a,
.site-side-menu details[open]>summary>section{
  color: var(--accent) !important;
}

.site-menu .game-list-container,
.site-side-menu>ul{
  background: linear-gradient(180deg, rgba(17,11,31,.98), rgba(10,6,20,.98)) !important;
  border-bottom: 1px solid rgba(155,107,255,.22) !important;
}

/* ===== Modal ===== */
.modal-header,
.register-modal .modal-header,
.simple-modal .modal-header{
  background: linear-gradient(90deg, #6f42ff, #9b6bff) !important;
  color: #fff !important;
  border-bottom: 0 !important;
}

.modal-content:has(.resolved-transaction-popup){
  background: #120b22 !important;
  border: 1px solid var(--line) !important;
}

/* ===== Announcement / jackpot ===== */
.announcement-outer-container{
  background: linear-gradient(90deg, #140c25, #1b1230) !important;
  color: var(--text) !important;
  border: 1px solid var(--line);
  border-radius: 14px;
}

.announcement-container>[data-section="announcements"]{
  color: var(--accent) !important;
}

.home-progressive-jackpot,
.home-progressive-jackpot .outer-container,
.home-progressive-jackpot .inner-container{
  background: transparent !important;
}

.home-progressive-jackpot .border-container{
  background: linear-gradient(180deg, rgba(23,16,39,.96), rgba(14,9,26,.96)) !important;
  border: 1px solid rgba(155,107,255,.25) !important;
  border-radius: 22px !important;
  box-shadow: var(--shadow);
}

.home-progressive-jackpot .jackpot-container,
.progressive-jackpot .jackpot-container{
  background: linear-gradient(90deg, rgba(111,66,255,.22), rgba(255,179,71,.14)) !important;
  color: #fff !important;
  border-radius: 999px !important;
  letter-spacing: 2px;
}

.home-progressive-jackpot .jackpot-border-container{
  border: 1px dashed rgba(255,255,255,.12) !important;
  background: rgba(8,5,17,.66) !important;
}

.home-progressive-jackpot .jackpot-currency,
.jackpot-container .jackpot-currency,
.wallet-bar .balance-field main,
.deposit-container .formatted-balance,
.deposit-container .real-deposit-amount,
.withdrawal-container .total-balance,
.withdrawal-container .real-withdrawal-amount,
.deposit-amount-container .real-deposit-amount,
.withdrawal-amount .currency-suffix,
.deposit-amount .currency-suffix{
  color: var(--accent) !important;
}

/* ===== Text colors ===== */
.contact-us-list li h6,
.info-center-container h2,
.info-center-container h4,
.info-center-container h5,
.claim-info-modal h4,
.footer-description-section h4,
.footer-sitemap-section h4,
.register-done-container>h2,
.register-done-container .register-verification-done .info,
.pending-transaction-detail-container .primary,
.resolved-transaction-popup .primary,
.transaction-report-group-container .transaction-report-group-title{
  color: var(--text) !important;
}

.contact-us-list li,
.info-center-container,
.footer-description-section .site-description,
.footer-sitemap-section .footer-links>li>a,
.footer-sitemap-section .contact-list>li a,
.footer-sitemap-section .social-media-list>li>a,
.transaction-item .info-section .details .secondary,
.pending-transaction-detail-container .secondary,
.resolved-transaction-popup .secondary{
  color: var(--muted) !important;
}

.contact-us-list li a,
.info-center-container a,
.form-footer-note-section .form-footer-note-link a,
.register-modal .register-page-link a,
.layout-modal .registration-note a,
.pending-transaction-detail-container .link,
.pending-transaction-detail-container .link a{
  color: var(--accent) !important;
}

/* ===== Tables ===== */
.transactions-table.table,
.standard-form-container .table thead,
.standard-reporting-scroll-container .table thead,
.transactions-table.table thead,
.transactions-table.table tbody{
  background: #130d24 !important;
  color: var(--text) !important;
  border-color: rgba(255,255,255,.08) !important;
}

.transactions-table.table tbody tr:nth-child(odd) td,
.standard-form-container .table tbody td,
.standard-reporting-scroll-container .table tbody td{
  background: #140d25 !important;
  color: var(--text) !important;
  border-color: rgba(255,255,255,.06) !important;
}

.transactions-table.table tbody tr:nth-child(even) td{
  background: #1a1230 !important;
  color: var(--text) !important;
}

/* ===== Tabs ===== */
.notification-tabs .notification-tab-item,
.top-tab-container a,
.standard-nav-tabs a,
.promotion-categories a,
.mobile-app-container .nav-tabs>li>a,
.loyalty-reward-container .tab-filter .tab{
  background: rgba(255,255,255,.04) !important;
  color: var(--muted) !important;
  border: 1px solid rgba(255,255,255,.06) !important;
  border-radius: 12px !important;
  transition: all var(--trans);
}

.notification-tabs .notification-tab-item[data-active="true"],
.top-tab-container a[data-active="true"],
.top-tab-container a:hover,
.standard-nav-tabs a[data-active="true"],
.promotion-categories a:hover,
.promotion-categories a[data-active="true"],
.mobile-app-container .nav-tabs>li.active>a,
.mobile-app-container .nav-tabs>li.active>a:hover,
.mobile-app-container .nav-tabs>li.active>a:focus,
.loyalty-reward-container .tab-filter input:checked+.tab{
  background: linear-gradient(90deg, var(--primary-2), var(--primary)) !important;
  color: #fff !important;
  border-color: transparent !important;
}

/* ===== Notification / remark ===== */
.remarks-container,
.payment-maintenance-container,
.modal-body .pending-transaction-summary-container,
.claim-info-modal .alert-container,
.payment-account-creation-remarks,
.loyalty-level-remarks-container,
.bonus-selection-list .bonus-selection-card+.remarks-container{
  background: rgba(255,179,71,.08) !important;
  border: 1px solid rgba(255,179,71,.28) !important;
  color: #ffe4ba !important;
  border-radius: 14px !important;
}

.remarks-container i{
  color: var(--accent) !important;
  border-color: var(--accent) !important;
}

/* ===== Small animations ringan ===== */
@keyframes softFloat{
  0%,100%{transform:translateY(0)}
  50%{transform:translateY(-2px)}
}

@keyframes softGlow{
  0%,100%{box-shadow:0 0 0 rgba(155,107,255,0)}
  50%{box-shadow:0 0 18px rgba(155,107,255,.14)}
}

.play-now,
.site-topbar main>a.register-button,
.standard-button-group .btn-primary{
  animation: softGlow 3.2s ease-in-out infinite;
}

.home-progressive-jackpot .jackpot-container,
.progressive-jackpot .jackpot-container{
  animation: softFloat 3.8s ease-in-out infinite;
}

/* ===== Reduce heavy effects on mobile ===== */
@media (max-width: 768px){
  .game-list .game-item:hover,
  .game-container:hover,
  .claim-item:hover,
  .promotion-list .promotion-container:hover,
  .transaction-item:hover,
  .home-component-item:hover{
    transform:none;
  }

  .play-now,
  .site-topbar main>a.register-button,
  .standard-button-group .btn-primary,
  .home-progressive-jackpot .jackpot-container,
  .progressive-jackpot .jackpot-container{
    animation:none;
  }

  .site-header-navbar,
  .site-footer,
  .game-provider-slider,
  .page-description,
  .site-side-menu>ul,
  .side-menu-user-info,
  .side-menu-login-panel{
    backdrop-filter:none;
  }
}