/*
  78Z RTP Premium UI Override
  Purpose: modern professional RTP interface without changing Vue/API logic.
  Install: keep this file loaded after the generated CSS files in index.html.
*/
:root{
  --rtp-bg:#0b0d0f;
  --rtp-bg-2:#121515;
  --rtp-surface:rgba(25,29,29,.86);
  --rtp-surface-2:rgba(34,39,38,.92);
  --rtp-border:rgba(214,174,94,.22);
  --rtp-border-strong:rgba(229,190,111,.48);
  --rtp-gold:#d8ad62;
  --rtp-gold-2:#f0d08b;
  --rtp-green:#20d985;
  --rtp-red:#ff5f69;
  --rtp-text:#f7f0df;
  --rtp-muted:#b8ab91;
  --rtp-shadow:0 18px 60px rgba(0,0,0,.42);
  --rtp-radius:22px;
}

html,body,#app{min-height:100%;}
body{
  color:var(--rtp-text);
  background:
    radial-gradient(circle at 16% -10%, rgba(221,174,88,.18), transparent 32%),
    radial-gradient(circle at 100% 8%, rgba(32,217,133,.09), transparent 28%),
    linear-gradient(180deg,#070809 0%, var(--rtp-bg) 46%, #080909 100%) !important;
  background-attachment:fixed;
}
body:before{
  content:"";
  position:fixed;
  inset:0;
  pointer-events:none;
  z-index:-1;
  opacity:.34;
  background-image:
    linear-gradient(rgba(255,255,255,.035) 1px, transparent 1px),
    linear-gradient(90deg, rgba(255,255,255,.028) 1px, transparent 1px);
  background-size:42px 42px;
  mask-image:linear-gradient(to bottom, rgba(0,0,0,.85), transparent 82%);
}

#app:before{
  content:"RTP LIVE INTELLIGENCE";
  position:fixed;
  right:18px;
  bottom:18px;
  z-index:0;
  color:rgba(216,173,98,.055);
  font-size:clamp(34px,7vw,120px);
  font-weight:900;
  letter-spacing:.08em;
  pointer-events:none;
  white-space:nowrap;
}

.router-outlet,
.outlet-active,
.main-container{
  position:relative;
  z-index:1;
}
.flex-main,
.main-container,
.home-article .main-container,
.detail-wrap{
  max-width:1180px !important;
  margin-left:auto !important;
  margin-right:auto !important;
}

/* Landing page */
.main-container[data-v-c783e504]{
  color:var(--rtp-muted) !important;
  padding-bottom:42px !important;
}
.main-container .flex-layout.space[data-v-c783e504]:first-child{
  position:relative;
  overflow:hidden;
  margin:18px auto 34px;
  padding:clamp(22px,5vw,62px) !important;
  border:1px solid var(--rtp-border);
  border-radius:calc(var(--rtp-radius) + 10px);
  background:
    linear-gradient(135deg, rgba(29,34,33,.95), rgba(11,13,15,.88)),
    radial-gradient(circle at 85% 10%, rgba(216,173,98,.20), transparent 34%);
  box-shadow:var(--rtp-shadow);
}
.main-container .flex-layout.space[data-v-c783e504]:first-child:before{
  content:"";
  position:absolute;
  inset:1px;
  pointer-events:none;
  border-radius:inherit;
  background:linear-gradient(120deg, rgba(255,255,255,.08), transparent 28%, rgba(216,173,98,.08) 66%, transparent);
}
.main-container .hi[data-v-c783e504]{
  display:inline-flex;
  width:auto;
  padding:7px 13px !important;
  color:var(--rtp-gold-2);
  background:rgba(216,173,98,.10);
  border:1px solid rgba(216,173,98,.28);
  border-radius:999px;
  text-transform:uppercase;
  font-size:12px !important;
  letter-spacing:.08em;
}
.main-container .title[data-v-c783e504]{
  color:var(--rtp-text) !important;
  text-shadow:0 12px 32px rgba(0,0,0,.42);
}
.main-container .bigFont[data-v-c783e504]{
  max-width:660px !important;
  background:linear-gradient(180deg,#fff9e8 0%, #e3bd72 78%, #a77935 100%);
  -webkit-background-clip:text;
  background-clip:text;
  color:transparent !important;
}
.main-container .img1[data-v-c783e504]{
  filter:drop-shadow(0 26px 55px rgba(0,0,0,.48)) saturate(1.08) !important;
}
.main-container .btns a[data-v-c783e504]{
  border-radius:16px !important;
  min-width:190px;
  box-shadow:0 14px 36px rgba(0,0,0,.28) !important;
}
.main-container .btns a[data-v-c783e504]:first-child{
  color:#171816 !important;
  background:linear-gradient(135deg,#fff1b9 0%, #d7a34f 46%, #8f5f20 100%) !important;
  border-color:rgba(255,230,163,.72) !important;
}
.main-container .btns a[data-v-c783e504]:last-child{
  color:var(--rtp-gold-2) !important;
  background:rgba(255,255,255,.045) !important;
  border-color:var(--rtp-border-strong) !important;
}
.main-container .item-flex .item[data-v-c783e504]{
  position:relative;
  overflow:hidden;
  padding:12px;
  border:1px solid var(--rtp-border);
  border-radius:var(--rtp-radius);
  background:linear-gradient(180deg, rgba(30,35,34,.92), rgba(14,17,17,.92));
  box-shadow:0 16px 42px rgba(0,0,0,.25);
}
.main-container .item-flex .item img[data-v-c783e504]{
  border-radius:18px;
}
.main-container .item-flex .item .tc[data-v-c783e504]{
  color:var(--rtp-gold-2);
  font-size:16px;
  letter-spacing:.02em;
}
.main-container .item-flex .item .cont[data-v-c783e504]{
  min-height:138px;
  padding:16px !important;
  border:1px solid rgba(216,173,98,.18) !important;
  border-radius:18px;
  background:rgba(255,255,255,.035);
  color:#dacaa9;
}
.main-container .part-bg[data-v-c783e504],
.main-container .part2-bg[data-v-c783e504]{
  border-radius:28px;
  border:1px solid var(--rtp-border);
  background:linear-gradient(180deg, rgba(25,30,29,.88), rgba(12,14,15,.88)) !important;
  box-shadow:var(--rtp-shadow);
  margin-top:26px;
}
.main-container video[data-v-c783e504]{
  border-radius:28px;
  border:1px solid var(--rtp-border);
  box-shadow:var(--rtp-shadow);
}

/* Home / RTP list */
.main-container[data-v-9f489d03]{
  padding:18px clamp(12px,3vw,28px) 36px !important;
}
.swiper-box[data-v-4c1da8ff]{
  border-radius:24px !important;
  border:1px solid var(--rtp-border);
  box-shadow:var(--rtp-shadow);
  background:var(--rtp-surface);
}
.swiper-box .swiper[data-v-4c1da8ff]{height:clamp(122px,21vw,248px) !important;}
.swiper-box .swiper img[data-v-4c1da8ff]{
  border-radius:24px !important;
  object-fit:cover;
}
.swiper-nav[data-v-9f489d03]{
  gap:12px;
  justify-content:center;
  margin:16px 0 12px;
  padding:10px;
  border:1px solid rgba(216,173,98,.16);
  border-radius:20px;
  background:rgba(255,255,255,.035);
  backdrop-filter:blur(10px);
}
.swiper-nav>div[data-v-9f489d03]{
  width:auto !important;
  min-width:74px;
  max-width:94px !important;
  min-height:58px;
  margin:0 !important;
  border:1px solid rgba(216,173,98,.22) !important;
  border-radius:16px !important;
  background:linear-gradient(180deg, rgba(34,39,38,.92), rgba(12,14,15,.95)) !important;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.06), 0 10px 20px rgba(0,0,0,.20);
  transition:transform .18s ease, border-color .18s ease, background .18s ease;
}
.swiper-nav>div[data-v-9f489d03]:hover{
  transform:translateY(-2px);
  border-color:var(--rtp-border-strong) !important;
}
.swiper-nav img[data-v-9f489d03]{
  width:82% !important;
  min-height:auto !important;
  max-height:42px;
  object-fit:contain;
}
.search-wrapper{
  display:flex;
  align-items:center;
  gap:10px;
  margin:18px 0 10px;
  padding:0 14px;
  min-height:48px;
  border:1px solid rgba(216,173,98,.24);
  border-radius:18px;
  background:linear-gradient(180deg, rgba(28,32,32,.95), rgba(11,13,15,.95));
  box-shadow:inset 0 1px 0 rgba(255,255,255,.06);
}
.search-wrapper img{width:18px !important;height:18px !important;opacity:.82;}
.search-wrapper input{
  width:100%;
  color:var(--rtp-text);
  background:transparent;
  font-size:14px;
}
.search-wrapper input::placeholder{color:rgba(247,240,223,.48);}
.select-box .ep-select{min-width:210px;}
.select-box .ep-input__wrapper{
  min-height:42px;
  border-radius:15px !important;
  border:1px solid rgba(216,173,98,.22);
  background:rgba(17,20,20,.96) !important;
  box-shadow:none !important;
}
.game_list{
  gap:14px !important;
  justify-content:center;
}
.game_list .game_item{
  position:relative;
  flex:0 1 calc(20% - 14px);
  min-width:168px;
  overflow:hidden;
  padding:12px 12px 14px !important;
  border:1px solid rgba(216,173,98,.18);
  border-radius:22px;
  background:
    linear-gradient(180deg, rgba(32,37,36,.95), rgba(12,14,15,.98)),
    radial-gradient(circle at top right, rgba(216,173,98,.18), transparent 36%);
  box-shadow:0 14px 34px rgba(0,0,0,.32);
  transition:transform .18s ease, border-color .18s ease, box-shadow .18s ease;
}
.game_list .game_item:hover{
  transform:translateY(-4px);
  border-color:rgba(240,208,139,.42);
  box-shadow:0 22px 48px rgba(0,0,0,.42);
}
.game_list .game_item .nav-if{
  position:relative;
  border-radius:18px;
  overflow:hidden;
  background:rgba(255,255,255,.04);
}
.game_list .game_item .ngame img,
.game_list .game_item img.img{
  border-radius:18px;
  object-fit:cover;
}
.game_list .game_item .show{
  border-radius:18px;
  background:rgba(7,8,9,.76) !important;
  backdrop-filter:blur(6px);
}
.game_list .game_item .show a{
  border-radius:999px !important;
  border:1px solid rgba(240,208,139,.48);
  background:rgba(216,173,98,.16);
  color:var(--rtp-gold-2) !important;
}
.game_name{
  min-height:34px;
  margin-top:8px;
  color:#f4ead4;
  font-weight:700;
  line-height:1.25;
}
.game_name .time,
.time .ep-statistic__number{
  color:var(--rtp-gold-2) !important;
  font-weight:800;
}
.rate-bx{color:#ffc65a !important;}
.loading-indicator:not(.d-hidden){
  border-radius:18px;
  background:linear-gradient(90deg, transparent, rgba(216,173,98,.16), transparent);
}

/* RTP bars */
.game_percentage,
.progress-bar[data-v-5957068a]{
  overflow:hidden;
  border:1px solid rgba(255,255,255,.06);
  background:rgba(255,255,255,.08) !important;
  box-shadow:inset 0 1px 2px rgba(0,0,0,.36);
}
.game_percentage:before,
.progress-bar .bar[data-v-5957068a]{
  background:linear-gradient(90deg, #10b981 0%, #d6ad5e 58%, #ff6b6b 100%) !important;
  box-shadow:0 0 18px rgba(216,173,98,.28);
}
.info-line[data-v-f419df6d]{
  gap:10px;
  padding:12px;
  border-radius:20px;
  background:rgba(255,255,255,.035);
  border:1px solid rgba(216,173,98,.14);
}
.info-line>div[data-v-f419df6d]{margin:0 !important;}

/* Detail page */
.detail-wrap[data-v-f6eb3601]{
  padding:18px clamp(12px,3vw,28px) 42px !important;
}
.detail-wrap .sbg[data-v-f6eb3601]{
  width:100%;
  border-radius:28px;
  background:
    radial-gradient(circle at 50% 0%, rgba(216,173,98,.18), transparent 32%),
    linear-gradient(180deg, rgba(28,32,32,.94), rgba(10,12,13,.98)) !important;
  border:1px solid var(--rtp-border);
  box-shadow:var(--rtp-shadow);
}
.detail-wrap .bg[data-v-f6eb3601]{top:0 !important;padding:18px 0 28px;}
.detail-wrap .name[data-v-f6eb3601]{
  padding:16px 0 !important;
  color:var(--rtp-text);
  border-bottom:1px solid rgba(216,173,98,.14);
}
.detail-wrap .name span[data-v-f6eb3601]{font-size:20px !important;font-weight:800;}
.detail-wrap .img-box[data-v-f6eb3601]{
  padding:12px;
  border-radius:26px;
  background:rgba(255,255,255,.045);
  border:1px solid rgba(216,173,98,.16);
}
.detail-wrap .img-box img[data-v-f6eb3601]{border-radius:20px;object-fit:cover;}
.detail-wrap #myChart[data-v-f6eb3601],
.detail-wrap .eCharts-box[data-v-f6eb3601]{
  border-radius:22px;
  background:rgba(12,14,15,.82) !important;
}
.detail-wrap #myChart[data-v-f6eb3601]{transform:none !important;}
.detail-wrap .btn-info[data-v-f6eb3601]{
  color:#171816 !important;
  border-radius:16px !important;
  background:linear-gradient(135deg,#fff1b9 0%, #d7a34f 48%, #8f5f20 100%) !important;
  box-shadow:0 16px 36px rgba(0,0,0,.32);
}
.progress-wrap{
  border-radius:22px;
  background:rgba(9,11,12,.88) !important;
  border:1px solid rgba(216,173,98,.14);
}

/* Articles / legal pages */
.article-list,
.article-wrap,
.pmw-responsive-table,
.pmw-content-container{
  border-radius:22px !important;
  border:1px solid rgba(216,173,98,.16) !important;
  background:rgba(18,21,21,.88) !important;
  box-shadow:0 14px 36px rgba(0,0,0,.26);
}
.article-wrap .title,
.article-list .title{color:var(--rtp-gold-2) !important;}

/* Accessibility and motion */
a:focus-visible,button:focus-visible,input:focus-visible,.swiper-nav>div:focus-visible{
  outline:2px solid var(--rtp-gold-2) !important;
  outline-offset:3px;
}
@media (prefers-reduced-motion: reduce){
  *,*::before,*::after{animation-duration:.001ms !important;animation-iteration-count:1 !important;scroll-behavior:auto !important;transition:none !important;}
}

@media screen and (max-width: 1100px){
  .game_list .game_item{flex-basis:calc(25% - 14px);}
}
@media screen and (max-width: 767px){
  #app:before{display:none;}
  .flex-main,.main-container,.detail-wrap{max-width:100% !important;}
  .main-container .flex-layout.space[data-v-c783e504]:first-child{
    margin:10px 10px 24px;
    border-radius:24px;
  }
  .main-container .bigFont[data-v-c783e504]{font-size:34px !important;line-height:1.08 !important;}
  .main-container .hi[data-v-c783e504]{font-size:10px !important;}
  .main-container .item-flex .item[data-v-c783e504]{margin-bottom:14px;}
  .swiper-nav[data-v-9f489d03]{justify-content:flex-start;overflow-x:auto;padding:8px;}
  .swiper-nav>div[data-v-9f489d03]{min-width:66px;min-height:52px;}
  .select-box{text-align:left !important;}
  .select-box .ep-select{width:100%;}
  .game_list{gap:10px !important;}
  .game_list .game_item{flex:0 1 calc(50% - 10px);min-width:0;border-radius:18px;padding:9px !important;}
  .game_name{font-size:12px;}
  .detail-wrap .img-box[data-v-f6eb3601]{width:76% !important;}
  .info-line>div[data-v-f419df6d]{width:100% !important;}
}
