*{box-sizing:border-box}
:root{--bg:#090a0c;--panel:#111316;--panel2:#181a1e;--line:#292c31;--text:#eee;--muted:#7f8288;--gold:#24d98a;--gold2:#6bf0b2}
html,body{margin:0;min-height:100%;background:#070809;color:var(--text);font-family:Arial,Helvetica,sans-serif}
body{min-height:100dvh}
.slots-page{width:min(100%,412px);min-height:100dvh;margin:auto;padding:0 10px 88px;background:linear-gradient(180deg,#101114 0,#0b0c0e 36%,#08090a 100%);border-left:1px solid #1c1e21;border-right:1px solid #1c1e21}
.slots-header{height:61px;display:grid;grid-template-columns:40px 1fr auto;align-items:center;gap:8px;padding:8px 2px;border-bottom:1px solid #292b2f;position:sticky;top:0;z-index:30;background:rgba(16,17,20,.96);backdrop-filter:blur(12px)}
.back-btn{width:38px;height:38px;border:1px solid #303339;border-radius:11px;background:#1a1c20;color:#ddd;display:grid;place-items:center;text-decoration:none;font-size:27px;line-height:1}
.slots-brand{display:flex;justify-content:center;align-items:center;min-width:0;height:38px;text-decoration:none;color:#6bf0b2}
.slots-brand img{display:block;width:auto;height:29px;max-width:130px;max-height:29px;object-fit:contain}
.slots-brand strong{font-size:15px;letter-spacing:.4px}
.slots-head-actions{display:flex;align-items:center}
.head-login{height:34px;padding:0 11px;border:1px solid #1a5a3d;border-radius:9px;background:linear-gradient(135deg,#57f0a5,#10bc72);color:#111;text-decoration:none;display:grid;place-items:center;font-size:8px;font-weight:950;letter-spacing:.4px}
.slots-hero{display:flex;align-items:flex-end;justify-content:space-between;padding:18px 3px 13px}
.slots-hero-copy{min-width:0}
.eyebrow{font-size:8px;font-weight:900;letter-spacing:1.4px;color:#73767c}
.slots-hero h1{margin:3px 0 4px;font-size:23px;line-height:1;font-weight:950;letter-spacing:.3px}
.slots-hero p{margin:0;color:#777b81;font-size:9px;line-height:1.4}
.search-btn{width:39px;height:39px;flex:0 0 39px;border:1px solid #303339;border-radius:11px;background:#181a1e;color:#ddd;display:grid;place-items:center;font-size:22px;cursor:pointer}
.search-box{height:0;opacity:0;overflow:hidden;display:flex;align-items:center;gap:8px;border:1px solid transparent;border-radius:11px;background:#17191d;transition:.22s;margin:0 2px}
.search-box.open{height:43px;opacity:1;border-color:#303339;margin:0 2px 10px;padding:0 10px}
.search-box>span{color:#777}
.search-box input{flex:1;height:100%;border:0;outline:0;background:transparent;color:#eee;font-size:11px}
.search-box button{border:0;background:none;color:#777;font-size:20px;cursor:pointer}
.providers{display:flex;gap:6px;overflow-x:auto;padding:2px 2px 11px;scrollbar-width:none}
.providers::-webkit-scrollbar{display:none}
.provider{flex:0 0 auto;height:34px;padding:0 12px;border-radius:9px;border:1px solid #303339;background:#17191d;color:#85888e;font-size:8px;font-weight:900;cursor:pointer;transition:.2s}
.provider.active{color:#6bf0b2;border-color:#159f63;background:#211c13;box-shadow:0 4px 15px #0003}
.games-section{border-top:1px solid #24262a;padding-top:13px}
.section-head{display:flex;justify-content:space-between;align-items:end;margin:0 2px 11px}
.section-head h2{margin:3px 0 0;font-size:13px}
.game-count{font-size:8px;color:#777;font-weight:800}
.games-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}
.game-card{min-width:0;border:1px solid #292c31;border-radius:11px;background:#121417;overflow:hidden;cursor:pointer;transition:.2s;position:relative}
.game-card:active{transform:scale(.985)}
.game-image{aspect-ratio:1/1.12;background:#1b1d21;position:relative;overflow:hidden}
.game-image img{width:100%;height:100%;display:block;object-fit:cover}
.game-overlay{position:absolute;inset:0;background:linear-gradient(180deg,transparent 35%,rgba(0,0,0,.82));display:flex;align-items:flex-end;padding:7px;opacity:0;transition:.2s}
.game-card:hover .game-overlay,.game-card:focus-within .game-overlay{opacity:1}
.play-btn{width:100%;height:28px;border-radius:7px;border:1px solid #2ee59a;background:linear-gradient(135deg,#57f0a5,#0fa969);color:#111;font-size:8px;font-weight:900}
.game-info{padding:8px 7px 9px}
.game-name{font-size:8px;font-weight:800;color:#eee;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.game-provider{font-size:6.5px;color:#777;margin-top:4px;text-transform:uppercase}
.loading-card{border-radius:11px;overflow:hidden;background:#141619;border:1px solid #25282c;aspect-ratio:1/1.32;position:relative}
.loading-card span{display:block;height:8px;background:#202328;margin:7px 9px;border-radius:4px}
.loading-card span:first-child{height:72%;margin:0;border-radius:0;background:linear-gradient(100deg,#17191c,#24272b,#17191c);background-size:200% 100%;animation:shine 1.2s infinite}
@keyframes shine{to{background-position:-200% 0}}
.empty-state,.error-state{display:none;text-align:center;padding:45px 15px;border:1px dashed #303339;border-radius:12px;background:#111316;margin-top:8px}
.empty-icon{font-size:26px;color:#9c793b;margin-bottom:8px}
.empty-state strong,.error-state strong{display:block;font-size:10px}
.empty-state span,.error-state span{display:block;font-size:9px;color:#696c72;margin-top:5px}
.error-state button{margin-top:13px;height:34px;padding:0 15px;border-radius:7px;border:1px solid #159f63;background:#211c13;color:#62eeaa;font-size:8px;font-weight:900}
.guest-login-modal{position:fixed;inset:0;z-index:100000;display:flex;align-items:center;justify-content:center;padding:18px;opacity:0;visibility:hidden;pointer-events:none;transition:.2s}
.guest-login-modal.open{opacity:1;visibility:visible;pointer-events:auto}
.guest-login-backdrop{position:absolute;inset:0;background:rgba(0,0,0,.76);backdrop-filter:blur(6px)}
.guest-login-box{position:relative;width:min(350px,100%);padding:25px 19px 18px;border:1px solid rgba(36,217,138,.28);border-radius:20px;background:linear-gradient(145deg,#202124,#0d0f11);box-shadow:0 25px 80px rgba(0,0,0,.65);transform:translateY(10px) scale(.98);transition:.2s}
.guest-login-modal.open .guest-login-box{transform:none}
.guest-login-close{position:absolute;right:10px;top:9px;width:32px;height:32px;border:0;border-radius:9px;background:#25272a;color:#ddd;font-size:20px;cursor:pointer}
.guest-login-icon{width:52px;height:52px;margin:0 auto 12px;border-radius:16px;display:grid;place-items:center;background:rgba(36,217,138,.1);border:1px solid rgba(36,217,138,.22);color:#6bf0b2;font-size:23px}
.guest-login-title{text-align:center;color:#fff;font-size:15px;font-weight:900}
.guest-login-text{text-align:center;color:#777b81;font-size:10px;line-height:1.5;margin:7px auto 17px;max-width:260px}
.guest-login-actions{display:grid;grid-template-columns:1fr 1fr;gap:8px}
.guest-login-primary,.guest-login-secondary{height:40px;border-radius:10px;display:grid;place-items:center;font-size:9px;font-weight:950;cursor:pointer}
.guest-login-primary{text-decoration:none;color:#111;background:linear-gradient(135deg,#6bf0b2,#10bc72);border:1px solid #3ce69e}
.guest-login-secondary{color:#bbb;background:#17191c;border:1px solid #303339}
@media(min-width:760px){.slots-page{box-shadow:0 0 50px rgba(0,0,0,.25)}}

/* PROVIDER BRAND CARDS */
.providers{gap:8px!important;padding:3px 2px 13px!important}
.provider-brand{flex:0 0 104px!important;height:70px!important;padding:7px!important;border-radius:13px!important;display:flex!important;flex-direction:column!important;align-items:center!important;justify-content:center!important;gap:6px!important;position:relative;overflow:hidden!important;background:linear-gradient(145deg,#1b1e22,#101215)!important}
.provider-brand:before{content:"";position:absolute;inset:-25px;background:radial-gradient(circle at 50% 0,rgba(225,185,94,.13),transparent 55%);pointer-events:none}
.provider-brand.active{border-color:#159f63!important;background:linear-gradient(145deg,#292216,#14110d)!important;box-shadow:0 7px 20px rgba(0,0,0,.3),inset 0 0 18px rgba(225,185,94,.06)!important}
.provider-logo{position:relative;width:38px!important;height:31px!important;border-radius:9px!important;display:grid!important;place-items:center!important;background:#0d0f11!important;border:1px solid #373a3f!important;overflow:visible!important}
.provider-logo b{font-size:15px!important;font-weight:1000!important;letter-spacing:-1.5px!important;line-height:1!important}
.provider-pragmatic b{color:#35e79a;text-shadow:0 0 10px rgba(53,231,154,.22)}
.provider-pg b{color:#f3f3f3}
.provider-slot88 b{font-size:11px!important;letter-spacing:-1px!important;color:#f2cb66}.provider-slot88 b span{color:#4eb9ff}
.provider-pop b{color:#35e79a}.provider-pop em{position:absolute;right:-7px;bottom:-6px;padding:2px 4px;border-radius:5px;background:#159f63;color:#111;font-size:6px;font-style:normal;font-weight:1000;letter-spacing:.3px;border:1px solid #45e8a1}
.provider-name{position:relative!important;font-size:7px!important;font-weight:950!important;letter-spacing:.35px!important;white-space:nowrap!important;color:#bfc1c5!important}
.provider-brand.active .provider-name{color:#6bf0b2!important}
.games-grid{grid-template-columns:repeat(4,minmax(0,1fr))!important;gap:9px!important}
.game-card{border-radius:12px!important;box-shadow:0 5px 18px rgba(0,0,0,.16)}
.game-image{aspect-ratio:1/1.06!important}
.game-image img{transition:transform .28s ease,filter .28s ease}.game-card:hover .game-image img{transform:scale(1.035);filter:saturate(1.08)}
.game-overlay{padding:8px!important;background:linear-gradient(180deg,transparent 28%,rgba(0,0,0,.88))!important}
.game-info{padding:8px 8px 10px!important}
.game-name{font-size:8px!important}.game-provider{font-size:6.5px!important}
@media(max-width:700px){.games-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:8px!important}.provider-brand{flex-basis:92px!important}}
@media(min-width:701px) and (max-width:1000px){.games-grid{grid-template-columns:repeat(3,minmax(0,1fr))!important}}
@media(min-width:1100px){.games-grid{grid-template-columns:repeat(5,minmax(0,1fr))!important}}
.game-badge{position:absolute;left:7px;top:7px;z-index:3;padding:4px 6px;border-radius:6px;background:rgba(10,11,12,.82);border:1px solid rgba(107,240,178,.45);color:#6bf0b2;font-size:6px;font-weight:1000;letter-spacing:.5px;backdrop-filter:blur(5px)}
.game-image.image-failed{background:radial-gradient(circle at 50% 30%,#302716,#15171a 60%)}
.game-image.image-failed:after{content:'GAME';position:absolute;inset:0;display:grid;place-items:center;color:#8d733d;font-size:11px;font-weight:1000;letter-spacing:2px}

/* RESPONSIVE PATCH — layout/structure preserved */
html{overflow-x:hidden}
body{overflow-x:hidden}
.slots-page{width:100%;max-width:412px;margin-inline:auto}
.slots-header,.slots-hero,.search-box,.providers,.games-section{max-width:100%;min-width:0}
.slots-header{grid-template-columns:40px minmax(0,1fr) auto}
.slots-brand{min-width:0;overflow:hidden}
.slots-brand img{max-width:100%;}
.slots-head-actions{min-width:0;white-space:nowrap}
.providers{width:100%;max-width:100%;overflow-x:auto;overscroll-behavior-x:contain;-webkit-overflow-scrolling:touch}
.provider-brand{flex-shrink:0}
.games-grid{width:100%;min-width:0}
.game-card,.game-image,.game-info{min-width:0}
.game-image img{max-width:100%}
.guest-login-box{max-height:calc(100dvh - 36px);overflow-y:auto}

/* Keep the existing game-card arrangement: 4 / 3 / 2, no extra desktop redesign. */
@media (min-width:701px){
    .games-grid{grid-template-columns:repeat(4,minmax(0,1fr))!important}
}
@media (max-width:700px){
    .slots-page{padding-left:10px;padding-right:10px}
    .slots-header{gap:6px;padding-left:1px;padding-right:1px}
    .slots-brand img{max-width:120px}
    .head-login{padding-inline:9px}
    .slots-hero{padding-left:2px;padding-right:2px}
    .provider-brand{flex-basis:92px!important}
    .games-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important}
}
@media (max-width:360px){
    .slots-page{padding-left:7px;padding-right:7px}
    .slots-header{grid-template-columns:36px minmax(0,1fr) auto;gap:4px}
    .back-btn{width:34px;height:34px}
    .head-login{height:32px;padding-inline:7px;font-size:7px}
    .slots-brand img{max-width:105px}
    .provider-brand{flex-basis:88px!important}
    .games-grid{gap:7px!important}
    .game-info{padding-left:6px!important;padding-right:6px!important}
}

/* =========================================================
   FINAL RESPONSIVE — 3 mobile / 4 tablet / 5 desktop
   Existing slot layout and card style are preserved.
   ========================================================= */
.slots-page{width:100%;max-width:412px;margin-inline:auto}
.games-grid{width:100%;min-width:0}
.game-card,.game-image,.game-info{min-width:0}

@media (max-width:700px){
  .slots-page{max-width:100%;padding-left:10px;padding-right:10px}
  .games-grid{grid-template-columns:repeat(3,minmax(0,1fr))!important;gap:7px!important}
  .provider-brand{flex-basis:92px!important}
  .game-info{padding:7px 6px 8px!important}
  .game-name{font-size:8px!important}
  .game-provider{font-size:6px!important}
}

@media (min-width:701px) and (max-width:899px){
  .slots-page{max-width:760px;padding-left:18px;padding-right:18px}
  .games-grid{grid-template-columns:repeat(4,minmax(0,1fr))!important;gap:10px!important}
  .provider-brand{flex-basis:110px!important}
}

@media (min-width:900px){
  .slots-page{max-width:1120px;padding-left:24px;padding-right:24px}
  .slots-header{grid-template-columns:44px minmax(0,1fr) auto;padding-left:4px;padding-right:4px}
  .slots-hero{padding-top:24px;padding-bottom:17px}
  .slots-hero h1{font-size:29px}
  .providers{gap:10px!important}
  .provider-brand{flex-basis:150px!important;height:82px!important}
  .provider-logo{width:46px!important;height:37px!important}
  .provider-logo b{font-size:18px!important}
  .provider-name{font-size:8px!important}
  .games-grid{grid-template-columns:repeat(5,minmax(0,1fr))!important;gap:11px!important}
  .game-image{aspect-ratio:1/1.08!important}
  .game-info{padding:9px 9px 11px!important}
  .game-name{font-size:9px!important}
  .game-provider{font-size:7px!important}
}

@media (min-width:1300px){
  .slots-page{max-width:1200px}
  .games-grid{gap:13px!important}
}

@media (max-width:360px){
  .slots-page{padding-left:7px;padding-right:7px}
  .slots-header{grid-template-columns:36px minmax(0,1fr) auto;gap:4px}
  .provider-brand{flex-basis:86px!important}
  .games-grid{gap:6px!important}
}
/* FINAL RESPONSIVE — 3 mobile / 4 tablet / 5 desktop */
.slots-page{width:100%;max-width:412px;margin-inline:auto}.games-grid{width:100%;min-width:0}.game-card,.game-image,.game-info{min-width:0}
@media (max-width:700px){.slots-page{max-width:100%;padding-left:10px;padding-right:10px}.games-grid{grid-template-columns:repeat(3,minmax(0,1fr))!important;gap:7px!important}.provider-brand{flex-basis:92px!important}.game-info{padding:7px 6px 8px!important}.game-name{font-size:8px!important}.game-provider{font-size:6px!important}}
@media (min-width:701px) and (max-width:899px){.slots-page{max-width:760px;padding-left:18px;padding-right:18px}.games-grid{grid-template-columns:repeat(4,minmax(0,1fr))!important;gap:10px!important}.provider-brand{flex-basis:110px!important}}
@media (min-width:900px){.slots-page{max-width:1120px;padding-left:24px;padding-right:24px}.slots-header{grid-template-columns:44px minmax(0,1fr) auto;padding-left:4px;padding-right:4px}.slots-hero{padding-top:24px;padding-bottom:17px}.slots-hero h1{font-size:29px}.providers{gap:10px!important}.provider-brand{flex-basis:150px!important;height:82px!important}.provider-logo{width:46px!important;height:37px!important}.provider-logo b{font-size:18px!important}.provider-name{font-size:8px!important}.games-grid{grid-template-columns:repeat(5,minmax(0,1fr))!important;gap:11px!important}.game-image{aspect-ratio:1/1.08!important}.game-info{padding:9px 9px 11px!important}.game-name{font-size:9px!important}.game-provider{font-size:7px!important}}
@media (min-width:1300px){.slots-page{max-width:1200px}.games-grid{gap:13px!important}}
@media (max-width:360px){.slots-page{padding-left:7px;padding-right:7px}.slots-header{grid-template-columns:36px minmax(0,1fr) auto;gap:4px}.provider-brand{flex-basis:86px!important}.games-grid{gap:6px!important}}


/* Final provider sizing: keep four providers visible */
.provider-brand{flex:0 0 88px!important;height:62px!important;padding:6px!important;gap:4px!important;border-radius:11px!important;}
.provider-logo{width:32px!important;height:27px!important;border-radius:8px!important;}
.provider-logo b{font-size:13px!important;}
.provider-name{font-size:6.5px!important;letter-spacing:.2px!important;}
.provider-pop em{right:-6px;bottom:-5px;font-size:5.5px;}
@media(max-width:700px){.providers{gap:6px!important}.provider-brand{flex-basis:82px!important;height:59px!important}.provider-logo{width:29px!important;height:25px!important}.provider-logo b{font-size:12px!important}.provider-name{font-size:6px!important;}.provider-pop em{font-size:5px;}}
@media(max-width:360px){.provider-brand{flex-basis:78px!important;height:57px!important}.provider-logo{width:27px!important;height:23px!important}.provider-name{font-size:5.7px!important;}}


/* GAME BADGES + RTP LABEL */
.game-badge{
  left:6px!important;
  top:6px!important;
  min-width:43px;
  padding:4px 6px!important;
  display:flex!important;
  flex-direction:column!important;
  align-items:flex-start!important;
  gap:1px!important;
  line-height:1!important;
  border-radius:6px!important;
  background:rgba(8,9,11,.88)!important;
  border:1px solid rgba(107,240,178,.48)!important;
  backdrop-filter:blur(5px);
}
.game-badge b{font-size:6px!important;font-weight:1000!important;letter-spacing:.6px!important;color:#6bf0b2!important}
.game-badge small{font-size:5px!important;font-weight:800!important;color:#d2d4d7!important;letter-spacing:.2px!important}
.provider-slot88 b{font-size:16px!important;letter-spacing:-1.5px!important;color:#f2cb66!important}
.provider-slot88{font-family:Arial,sans-serif!important}
@media(max-width:700px){.game-badge{left:4px!important;top:4px!important;min-width:38px;padding:3px 4px!important}.game-badge b{font-size:5.5px!important}.game-badge small{font-size:4.5px!important}.provider-slot88 b{font-size:14px!important}}

/* =========================================================
   BLACK GREEN THEME — slots/category visual colors only
   ========================================================= */
:root{
  --bg:#050907;--panel:#0b120e;--panel2:#101b15;--line:#1c3b2c;--text:#effff7;--muted:#8ea49a;--gold:#28d98b;--gold2:#6bf0b2
}
html,body{background:#030806 !important;color:#effff7 !important}
body{
  background-image:linear-gradient(rgba(2,8,6,.38),rgba(2,8,6,.64)),url("https://updatetiapharibugis.com/image/bg.jpg") !important;
  background-position:center top !important;background-size:cover !important;background-attachment:fixed !important;background-repeat:no-repeat !important;
}
.slots-page{background:linear-gradient(180deg,rgba(6,15,11,.96),rgba(6,14,11,.94) 36%,rgba(3,9,7,.98)) !important;border-color:#173a2a !important}
.slots-header{background:rgba(6,17,12,.94) !important;border-color:#183b2b !important}
.back-btn,.search-btn,.search-box,.error-state,.loading-card{background:#09130f !important;border-color:#1c3c2c !important;color:#d9fff0 !important}
.slots-brand{color:#65efad !important}
.head-login{background:linear-gradient(135deg,#57f0a5,#10bc72) !important;border-color:#46e89e !important;color:#031009 !important}
.slots-hero .eyebrow,.game-meta,.games-section .eyebrow{color:#65efad !important}
.providers{scrollbar-color:#267a54 transparent}
.provider-brand{background:linear-gradient(145deg,#0b1511,#07100c) !important;border-color:#1a3a2a !important}
.provider-brand.active{border-color:#28d98b !important;background:linear-gradient(145deg,#0f261b,#07100d) !important;box-shadow:0 7px 20px rgba(0,0,0,.3),inset 0 0 18px rgba(34,216,137,.07) !important}
.provider-brand.active .provider-name{color:#6ef1b2 !important}
.provider-logo{background:#07100c !important;border-color:#20503a !important}
.provider-pragmatic b,.provider-pop b,.provider-slot88 b{color:#71f1b3 !important}
.provider-pg b{color:#dffff1 !important}
.provider-pop em{background:#1fc47e !important;color:#031009 !important;border-color:#55eda7 !important}
.game-card,.games-grid .game-card{border-color:#18372a !important;background:#0a130f !important}
.game-image{background:linear-gradient(145deg,#0f1c16,#07100c 60%,#0d2418) !important}
.game-badge{background:rgba(4,14,9,.90) !important;border-color:rgba(58,225,150,.48) !important}
.game-badge b,.game-badge span{color:#6cf1b2 !important}
.game-image.image-failed:after{color:#2ca56e !important}
.game-count{color:#7fb79e !important}
.game-section,.games-section .section-head{border-color:#17392a !important}
.guest-login-backdrop{background:rgba(0,0,0,.78) !important}
.guest-login-box{background:linear-gradient(145deg,#0e1913,#07100c) !important;border-color:#1e4b36 !important}
.guest-login-primary,.retry-btn{background:linear-gradient(135deg,#57f0a5,#10bc72) !important;color:#031009 !important;border-color:#46e89e !important}

@media (min-width:900px){.slots-page{box-shadow:0 0 55px rgba(0,0,0,.75),0 0 0 1px rgba(30,93,63,.16)}}
