/* ============================================================
   Mpoasia88 — Sistem Desain Situs (Kasino Theme)
   Palet: Merah #d92632 · Hitam #101018 · Emas #f5b301 ·
          Putih #ffffff · Hijau #1f9d55 · Biru #1e6fd9
   ============================================================ */
:root{
  --red:#d92632; --red-dark:#a41623; --black:#101018; --black-2:#181824;
  --gold:#f5b301; --gold-soft:#ffd75e; --white:#ffffff; --off:#f6f6f9;
  --green:#1f9d55; --blue:#1e6fd9; --grey:#8a8a99; --line:#e6e6ee;
  --radius:14px; --shadow:0 10px 30px rgba(16,16,24,.12);
  --font:'Segoe UI',system-ui,-apple-system,Roboto,'Helvetica Neue',Arial,sans-serif;
}
*{margin:0;padding:0;box-sizing:border-box}
html{scroll-behavior:smooth;-webkit-text-size-adjust:100%}
body{font-family:var(--font);color:var(--black);background:var(--off);line-height:1.75;font-size:16px;overflow-x:hidden}
img{max-width:100%;height:auto;display:block}
a{color:var(--blue);text-decoration:none}
a:hover{text-decoration:underline}
h1,h2,h3,h4{line-height:1.3;color:var(--black);font-weight:800}
h1{font-size:clamp(1.7rem,4vw,2.6rem)}
h2{font-size:clamp(1.35rem,3vw,1.9rem);margin:1.6em 0 .7em}
h3{font-size:1.15rem;margin:1.3em 0 .5em}
p{margin:.7em 0}
ul,ol{margin:.7em 0 .7em 1.3em}
li{margin:.3em 0}
table{width:100%;border-collapse:collapse;margin:1em 0;font-size:.95rem;background:var(--white);border-radius:10px;overflow:hidden}
th,td{padding:.7em .9em;border:1px solid var(--line);text-align:left;vertical-align:top;word-break:break-word}
th{background:var(--black);color:var(--gold);font-weight:700}
tr:nth-child(even) td{background:#fafafd}
.wrap{max-width:1180px;margin:0 auto;padding:0 18px}
.skip{position:absolute;left:10px;top:-60px;transition:top .2s}
.skip:focus{top:10px;background:var(--gold);color:var(--black);padding:8px 14px;z-index:999;border-radius:8px}

/* ---------- Top bar ---------- */
.topbar{background:var(--black);color:#cfcfda;font-size:.8rem;padding:6px 0}
.topbar .wrap{display:flex;justify-content:space-between;gap:10px;flex-wrap:wrap}
.topbar b{color:var(--gold)}
.badge18{display:inline-block;background:var(--red);color:#fff;font-weight:800;border-radius:6px;padding:0 7px;margin-right:6px}

/* ---------- Header ---------- */
header.site{position:sticky;top:0;z-index:200;background:linear-gradient(135deg,#14141f 0%,#1d1d2b 60%,#241016 100%);border-bottom:3px solid var(--gold);box-shadow:0 4px 18px rgba(0,0,0,.35)}
.nav{display:flex;align-items:center;gap:16px;padding:12px 0}
.logo{display:flex;align-items:center;gap:10px;font-size:1.45rem;font-weight:900;color:#fff;letter-spacing:.5px}
.logo:hover{text-decoration:none}
.logo img{width:42px;height:42px}
.logo span em{font-style:normal;color:var(--gold)}
.menu{display:flex;gap:4px;list-style:none;margin:0 0 0 auto;align-items:center;flex-wrap:wrap}
.menu a{color:#e9e9f2;font-weight:600;font-size:.92rem;padding:9px 12px;border-radius:9px;display:block}
.menu a:hover,.menu a.active{background:rgba(245,179,1,.16);color:var(--gold);text-decoration:none}
.authbtns{display:flex;gap:8px;margin-left:10px}
.btn{display:inline-block;font-weight:800;border-radius:10px;padding:10px 20px;border:0;cursor:pointer;text-align:center;transition:transform .15s,box-shadow .15s;font-size:.95rem}
.btn:hover{text-decoration:none;transform:translateY(-2px)}
.btn-gold{background:linear-gradient(180deg,var(--gold-soft),var(--gold));color:#3a2a00;box-shadow:0 4px 14px rgba(245,179,1,.45)}
.btn-red{background:linear-gradient(180deg,#ef4450,var(--red));color:#fff;box-shadow:0 4px 14px rgba(217,38,50,.4)}
.btn-ghost{background:transparent;color:#fff;border:2px solid var(--gold)}
.btn-green{background:linear-gradient(180deg,#2bc56d,var(--green));color:#fff}
.burger{display:none;background:none;border:0;color:var(--gold);font-size:1.7rem;cursor:pointer;margin-left:auto}

/* ---------- Hero ---------- */
.hero{position:relative;color:#fff;background:var(--black);overflow:hidden}
.hero img.bg{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;opacity:.45}
.hero .inner{position:relative;padding:84px 0 76px;max-width:1180px;margin:0 auto;padding-left:18px;padding-right:18px}
.hero h1{color:#fff;max-width:760px;text-shadow:0 3px 14px rgba(0,0,0,.6)}
.hero h1 .gold{color:var(--gold)}
.hero p.lead{font-size:1.12rem;max-width:640px;color:#f1f1f8;margin:18px 0 26px}
.hero .cta-row{display:flex;gap:14px;flex-wrap:wrap}
.hero .trustline{margin-top:26px;font-size:.85rem;color:#d7d7e4;display:flex;gap:18px;flex-wrap:wrap}
.hero .trustline span{display:flex;align-items:center;gap:6px}
.dot{width:9px;height:9px;border-radius:50%;background:var(--green);display:inline-block}

/* ---------- Sections ---------- */
section.block{padding:58px 0}
section.block.alt{background:var(--white)}
.sec-head{text-align:center;max-width:720px;margin:0 auto 38px}
.sec-head .kicker{color:var(--red);font-weight:800;text-transform:uppercase;letter-spacing:2px;font-size:.8rem}
.sec-head h2{margin:.2em 0 .4em}
.sec-head p{color:#55556a}
.grid{display:grid;gap:20px}
.g2{grid-template-columns:repeat(2,1fr)}
.g3{grid-template-columns:repeat(3,1fr)}
.g4{grid-template-columns:repeat(4,1fr)}
.card{background:var(--white);border-radius:var(--radius);padding:24px;box-shadow:var(--shadow);border-top:4px solid var(--gold)}
.card h3{margin-top:0}
.card.red{border-top-color:var(--red)}
.card.green{border-top-color:var(--green)}
.card.blue{border-top-color:var(--blue)}
.card .ic{font-size:1.9rem}
.card p{color:#55556a;font-size:.95rem}
.chip{display:inline-block;background:#fff4d1;color:#7a5b00;border:1px solid var(--gold);border-radius:999px;padding:3px 12px;font-size:.78rem;font-weight:700;margin:2px 4px 2px 0}
.chip.g{background:#e3f7ec;color:#0d6b37;border-color:var(--green)}
.chip.b{background:#e3eefe;color:#144e9e;border-color:var(--blue)}
.chip.r{background:#fde7e9;color:#8f1220;border-color:var(--red)}

/* payment strip */
.paystrip{display:flex;gap:14px;flex-wrap:wrap;justify-content:center}
.pay{background:var(--white);border:1px solid var(--line);border-radius:12px;padding:14px 20px;font-weight:800;color:var(--black);display:flex;align-items:center;gap:10px;box-shadow:0 4px 12px rgba(16,16,24,.06);font-size:.95rem}
.pay i{width:12px;height:12px;border-radius:3px;display:inline-block}

/* steps */
.steps{counter-reset:s;display:grid;gap:18px}
.step{background:var(--white);border-radius:var(--radius);padding:22px 22px 22px 74px;position:relative;box-shadow:var(--shadow)}
.step::before{counter-increment:s;content:counter(s);position:absolute;left:20px;top:20px;width:40px;height:40px;border-radius:50%;background:linear-gradient(180deg,var(--gold-soft),var(--gold));color:#3a2a00;font-weight:900;display:flex;align-items:center;justify-content:center;font-size:1.15rem}
.step h3{margin:0 0 .3em}
.step p{margin:0;color:#55556a;font-size:.95rem}

/* faq */
details.faq{background:var(--white);border-radius:12px;margin-bottom:12px;box-shadow:0 4px 14px rgba(16,16,24,.07);overflow:hidden}
details.faq summary{cursor:pointer;padding:16px 20px;font-weight:700;list-style:none;position:relative;padding-right:46px}
details.faq summary::after{content:"+";position:absolute;right:18px;top:14px;font-size:1.4rem;color:var(--red);font-weight:900}
details.faq[open] summary::after{content:"–"}
details.faq .ans{padding:0 20px 16px;color:#55556a;font-size:.95rem}

/* game cards */
.game-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:18px}
.game{background:var(--white);border-radius:var(--radius);overflow:hidden;box-shadow:var(--shadow);display:flex;flex-direction:column}
.game img{width:100%;aspect-ratio:16/10;object-fit:cover}
.game .body{padding:14px 16px 18px;display:flex;flex-direction:column;gap:6px;flex:1}
.game h3,.game .game-title{margin:0;font-size:1.02rem}
.game .prov{font-size:.78rem;color:var(--grey);font-weight:700;text-transform:uppercase;letter-spacing:1px}
.game p{font-size:.86rem;color:#55556a;margin:0;flex:1}
.game .btn{margin-top:10px;padding:8px 14px;font-size:.85rem}

/* tag cloud */
.tagcloud{display:flex;flex-wrap:wrap;gap:10px;justify-content:center}
.tagcloud a{background:var(--white);border:1px solid var(--line);border-radius:999px;padding:7px 16px;font-weight:700;color:var(--black);box-shadow:0 3px 10px rgba(16,16,24,.06)}
.tagcloud a:hover{background:var(--gold);color:#3a2a00;text-decoration:none;border-color:var(--gold)}
.tagcloud a.big{font-size:1.05rem}
.tagcloud a.med{font-size:.95rem}
.tagcloud a.sml{font-size:.85rem}

/* breadcrumb */
.crumbs{background:var(--white);border-bottom:1px solid var(--line);font-size:.85rem;padding:10px 0}
.crumbs ol{list-style:none;margin:0;display:flex;flex-wrap:wrap;gap:6px;padding:0}
.crumbs li{margin:0;color:var(--grey)}
.crumbs li+li::before{content:"›";margin-right:6px;color:var(--grey)}
.crumbs a{color:var(--blue)}

/* article */
.article{background:var(--white);border-radius:var(--radius);padding:34px;box-shadow:var(--shadow)}
.article h1{margin-bottom:.3em}
.article .meta{color:var(--grey);font-size:.85rem;margin-bottom:18px;display:flex;gap:14px;flex-wrap:wrap}
.article .feat{border-radius:12px;margin:14px 0 22px;overflow:hidden}
.article .feat img{width:100%}
.article h2{padding-left:14px;border-left:5px solid var(--gold)}
.article blockquote{background:#fff8e1;border-left:5px solid var(--gold);margin:1.2em 0;padding:14px 20px;border-radius:0 10px 10px 0;color:#5a4a10;font-size:.95rem}
.notebox{background:#e3f7ec;border:1px solid var(--green);border-radius:12px;padding:16px 20px;margin:1.2em 0;font-size:.93rem;color:#0d5230}
.warnbox{background:#fde7e9;border:1px solid var(--red);border-radius:12px;padding:16px 20px;margin:1.2em 0;font-size:.93rem;color:#7a1020}
.toc{background:var(--off);border:1px solid var(--line);border-radius:12px;padding:16px 22px;margin:1.2em 0;font-size:.93rem}
.toc b{display:block;margin-bottom:6px}
.toc ol{margin:.2em 0 .2em 1.2em}

/* promo cards */
.promo{background:linear-gradient(135deg,#1d1d2b,#2b1220);color:#fff;border-radius:var(--radius);padding:26px;position:relative;overflow:hidden;box-shadow:var(--shadow)}
.promo::after{content:"";position:absolute;right:-40px;top:-40px;width:150px;height:150px;border-radius:50%;background:radial-gradient(circle,rgba(245,179,1,.35),transparent 70%)}
.promo h3{color:var(--gold);margin-top:0}
.promo .amt{font-size:2rem;font-weight:900;color:#fff}
.promo ul{font-size:.9rem;color:#d9d9e6}
.promo .btn{margin-top:8px}

/* forms */
.formbox{max-width:460px;margin:0 auto;background:var(--white);border-radius:var(--radius);padding:34px;box-shadow:var(--shadow);border-top:5px solid var(--gold)}
.formbox h1{text-align:center;font-size:1.5rem}
.formbox .sub{text-align:center;color:var(--grey);font-size:.88rem;margin-bottom:20px}
.field{margin-bottom:16px}
.field label{display:block;font-weight:700;font-size:.88rem;margin-bottom:6px}
.field input,.field select{width:100%;padding:12px 14px;border:1.5px solid var(--line);border-radius:10px;font-size:1rem;font-family:var(--font);background:#fbfbfe}
.field input:focus{outline:2px solid var(--gold);border-color:var(--gold)}
.formbox .btn{width:100%;padding:13px;font-size:1.05rem}
.formbox .alt-link{text-align:center;margin-top:16px;font-size:.9rem;color:#55556a}
.pw-note{font-size:.78rem;color:var(--grey);margin-top:4px}

/* search */
.searchbar{display:flex;gap:0;max-width:560px;margin:0 auto}
.searchbar input{flex:1;padding:13px 18px;border:2px solid var(--gold);border-right:0;border-radius:12px 0 0 12px;font-size:1rem;min-width:0}
.searchbar button{border-radius:0 12px 12px 0;padding:13px 22px}
#search-results .hit{background:var(--white);border-radius:10px;padding:14px 18px;margin-bottom:10px;box-shadow:0 3px 10px rgba(16,16,24,.06)}
#search-results .hit h3{margin:0 0 4px;font-size:1rem}
#search-results .hit p{margin:0;font-size:.86rem;color:#55556a}

/* footer */
footer.site{background:var(--black);color:#b9b9c8;margin-top:60px}
footer.site .cols{display:grid;grid-template-columns:2fr 1fr 1fr 1.4fr;gap:30px;padding:50px 0 30px}
.foot-h{color:var(--gold);font-size:1rem;font-weight:800;margin:0 0 14px}
footer.site ul{list-style:none;margin:0}
footer.site ul a{color:#b9b9c8;font-size:.9rem}
footer.site ul a:hover{color:var(--gold)}
footer.site p{font-size:.86rem}
footer .legal{border-top:1px solid #2a2a3a;padding:20px 0 90px;font-size:.78rem;color:#8a8a99}
.tg-link{display:inline-flex;align-items:center;gap:8px;background:#229ed9;color:#fff;font-weight:800;padding:10px 18px;border-radius:10px;margin-top:8px}
.tg-link:hover{text-decoration:none;background:#1b8bc0}
.resp-badge{display:inline-flex;align-items:center;gap:8px;background:#1a2b1f;border:1px solid var(--green);color:#9fe6bd;border-radius:10px;padding:10px 14px;font-size:.8rem;margin-top:12px}

/* ---------- Floating conversion bar ---------- */
.floatbar{position:fixed;left:50%;transform:translateX(-50%);bottom:14px;z-index:300;display:flex;gap:10px;align-items:center;background:linear-gradient(135deg,#17171f,#2a1420);border:2px solid var(--gold);border-radius:999px;padding:9px 12px 9px 20px;box-shadow:0 12px 34px rgba(0,0,0,.5);max-width:calc(100vw - 24px)}
.floatbar .msg{color:#fff;font-weight:700;font-size:.88rem;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.floatbar .msg b{color:var(--gold)}
.floatbar .btn{padding:10px 20px;font-size:.9rem;white-space:nowrap;position:relative;overflow:visible}
.coin{position:fixed;width:22px;height:22px;border-radius:50%;background:radial-gradient(circle at 35% 30%,#ffe89a,var(--gold) 60%,#c98f00);box-shadow:0 0 8px rgba(245,179,1,.8);z-index:299;pointer-events:none;animation:coinfly 1s ease-in forwards}
@keyframes coinfly{0%{transform:translateY(0) rotateY(0) scale(1);opacity:1}100%{transform:translateY(-120px) rotateY(720deg) scale(.4);opacity:0}}
.floatbar .btn::before{content:"";position:absolute;inset:-3px;border-radius:12px;background:linear-gradient(90deg,transparent,rgba(255,255,255,.55),transparent);background-size:200% 100%;animation:shine 2.4s linear infinite;pointer-events:none}
@keyframes shine{0%{background-position:200% 0}100%{background-position:-200% 0}}
@media (max-width:560px){.floatbar .msg{display:none}}

/* ---------- Responsive ---------- */
@media (max-width:1024px){
  .g4{grid-template-columns:repeat(2,1fr)}
  .game-grid{grid-template-columns:repeat(3,1fr)}
  footer.site .cols{grid-template-columns:1fr 1fr}
}
@media (max-width:820px){
  .burger{display:block}
  .menu{display:none;position:absolute;top:100%;left:0;right:0;background:#14141f;flex-direction:column;align-items:stretch;padding:12px 18px 18px;gap:2px;border-bottom:3px solid var(--gold)}
  .menu.open{display:flex}
  .menu a{padding:12px}
  .authbtns{margin:10px 0 0}
  .g3{grid-template-columns:1fr}
  .g2{grid-template-columns:1fr}
  .game-grid{grid-template-columns:repeat(2,1fr)}
  .article{padding:22px 18px}
  .hero .inner{padding:56px 18px}
}
@media (max-width:520px){
  .game-grid{grid-template-columns:1fr}
  .g4{grid-template-columns:1fr}
  footer.site .cols{grid-template-columns:1fr}
  .topbar .wrap{justify-content:center;text-align:center}
  th,td{padding:.55em .6em;font-size:.85rem}
}
/* table scroll guard for very small screens */
.tablewrap{overflow-x:auto;-webkit-overflow-scrolling:touch}
@media print{.floatbar,header.site,footer.site,.crumbs{display:none}}
