﻿/* =========================================================
   GUCCI889 — Casino Landing
   เลย์เอาต์อิงจาก 712dfmjb.ihopbot.com | ธีมสี GUCCI889 (ดำ-ทอง)
   ========================================================= */
:root{
  --primary-main : #071c39;  /* น้ำเงินเข้ม : พื้นการ์ด        */
  --primary-minor: #0b63d8;  /* น้ำเงินหลัก                   */
  --neutral      : #4da3ff;  /* น้ำเงินสว่าง : ขอบ/ไฮไลต์    */
  --gold-hi      : #dff3ff;  /* สีฟ้าอ่อน                    */
  --gold-lo      : #7cc3ff;
  --warning-main : #0ea5e9;  /* ฟ้าเฉดเข้ม                   */
  --third-main   : #1d4ed8;
  --third-minor  : #60a5fa;
  --ink          : #07203d;  /* ตัวอักษรบนพื้นฟ้า            */
  --panel        : #091c2e;  /* พื้นการ์ดเข้ม                */
  --panel-2      : #102d46;
  --line-green   : #10b981;  /* LINE / ปุ่มเขียว              */
  --text         : #eef8ff;
  --muted        : #b8dcff;
  --white        : #ffffff;
}

*{ box-sizing:border-box; margin:0; padding:0; -webkit-tap-highlight-color:transparent; }
html{ scroll-behavior:smooth; }
body{
  font-family:'Prompt','Noto Sans Thai',sans-serif;
  min-height:100dvh;
  color:var(--text);
  position:relative; overflow-x:hidden;
  padding:0 0 26px;
  background:
    radial-gradient(70% 40% at 50% 0%,  rgba(77,163,255,.18), rgba(0,0,0,0) 60%),
    radial-gradient(60% 45% at 85% 95%, rgba(11,99,216,.22),  rgba(0,0,0,0) 60%),
    linear-gradient(180deg, rgba(7,28,57,.7), rgba(3,9,17,.94)),
    url('bg.webp') center top/cover no-repeat fixed,
    #07141f;
}

/* ===== ประกายทองพื้นหลัง ===== */
.fx{ position:fixed; inset:0; z-index:0; pointer-events:none; overflow:hidden; }
.spark{ position:absolute;
  background:radial-gradient(circle at 50% 50%, #fff 0%, var(--gold-hi) 45%, var(--warning-main) 100%);
  clip-path:polygon(50% 0%, 60% 40%, 100% 50%, 60% 60%, 50% 100%, 40% 60%, 0% 50%, 40% 40%);
  filter:drop-shadow(0 0 6px rgba(77,163,255,.9));
  opacity:0; animation:twinkle var(--d,3.4s) ease-in-out infinite;
}
@keyframes twinkle{ 0%,100%{ opacity:0; transform:scale(.3) rotate(0deg);} 50%{ opacity:.9; transform:scale(1) rotate(45deg);} }

/* ===== คอนเทนต์ ===== */
.content{
  position:relative; z-index:1;
  width:100%; max-width:500px; margin:0 auto;
  padding:22px 16px 0;
  display:flex; flex-direction:column; gap:22px;
}

/* ===== HEADER ===== */
.site-header{ text-align:center; }
.logo{
  width:min(62%,220px); height:auto; display:block; margin:0 auto 12px;
  filter:drop-shadow(0 8px 20px rgba(0,0,0,.6));
  animation:floaty 4s ease-in-out infinite;
}
@keyframes floaty{ 0%,100%{ transform:translateY(0);} 50%{ transform:translateY(-8px);} }
.badges{ display:flex; flex-wrap:wrap; gap:8px; justify-content:center; }
.badge{
  display:inline-flex; align-items:center; gap:7px;
  padding:7px 14px; border-radius:999px;
  font-size:13px; font-weight:600; color:var(--gold-hi);
  background:linear-gradient(180deg, rgba(15,31,54,.95), rgba(9,22,38,.95));
  border:1px solid var(--neutral);
  box-shadow:0 4px 14px rgba(0,0,0,.45), inset 0 1px 0 rgba(223,243,255,.15);
}
.badge strong{ color:var(--neutral); font-weight:800; }
.badge .badge-dot{ color:#22c55e; font-size:9px; animation:pulseDot 1.4s ease-in-out infinite; }
.badge .fa-users{ color:var(--neutral); }
@keyframes pulseDot{ 0%,100%{ opacity:.5; } 50%{ opacity:1; } }

/* ===== การ์ดร่วม (กรอบทอง) ===== */
.promo-section, .quick-stats, .jackpot-card, .review-section, .banner, .carousel{
  border-radius:18px;
}

/* ===== คารูเซลโปรโมชัน ===== */
.carousel{ overflow:hidden; border:2px solid var(--neutral);
  box-shadow:0 10px 28px rgba(0,0,0,.55), 0 0 20px rgba(77,163,255,.2); }
.carousel-track{ display:flex; transition:transform .55s cubic-bezier(.4,.0,.2,1); }
.slide{ min-width:100%; }
.slide a{ display:block; }
.slide img{ display:block; width:100%; height:100%; aspect-ratio:1/1; object-fit:cover; }
.dots{ display:flex; gap:8px; justify-content:center; margin-top:12px; }
.dot{
  width:9px; height:9px; border-radius:50%; cursor:pointer; border:none;
  background:rgba(77,163,255,.32); transition:all .25s ease; padding:0;
}
.dot.active{ background:var(--neutral); width:24px; border-radius:5px; box-shadow:0 0 8px rgba(77,163,255,.8); }

/* ===== ปุ่ม CTA ===== */
.cta{ display:flex; flex-direction:column; gap:12px; }
.btn-register, .btn-line{
  display:flex; align-items:center; justify-content:center; gap:10px;
  padding:16px; border-radius:14px; text-decoration:none;
  font-family:inherit; font-weight:800; font-size:18px;
  position:relative; overflow:hidden;
  transition:transform .15s ease, box-shadow .15s ease, filter .15s ease;
}
.btn-register{
  color:var(--ink);
  background:linear-gradient(135deg, #dff3ff 0%, var(--neutral) 45%, var(--warning-main) 100%);
  border:1px solid rgba(223,243,255,.9);
  box-shadow:0 8px 24px rgba(59,130,246,.35), inset 0 1px 0 rgba(255,255,255,.7);
}
.btn-register .arrow{ color:var(--ink); animation:arrowMove 1.2s ease-in-out infinite; }
@keyframes arrowMove{ 0%,100%{ transform:translateX(0); opacity:.7;} 50%{ transform:translateX(4px); opacity:1;} }
.btn-line{
  color:var(--white); font-size:17px;
  background:linear-gradient(135deg, #10b981, #0f9f73);
  border:1px solid rgba(16,185,129,.8);
  box-shadow:0 8px 22px rgba(16,185,129,.28), inset 0 1px 0 rgba(255,255,255,.18);
}
.btn-line .fa-line{ font-size:22px; }
.btn-register:hover, .btn-line:hover{ transform:translateY(-2px); filter:brightness(1.06); }
.btn-register:active, .btn-line:active{ transform:scale(.98); }
.btn-register::after, .btn-line::after{
  content:""; position:absolute; top:0; left:-120%; width:55%; height:100%;
  background:linear-gradient(110deg, transparent, rgba(255,255,255,.45), transparent);
  transform:skewX(-20deg); animation:btnShine 4.5s ease-in-out infinite;
}
@keyframes btnShine{ 0%{ left:-120%; } 22%,100%{ left:150%; } }

/* ===== สถิติด่วน ===== */
.quick-stats{ display:grid; grid-template-columns:repeat(3,1fr); gap:10px; }
.stat{
  text-align:center; padding:16px 8px; border-radius:16px;
  background:linear-gradient(180deg, var(--panel-2) 0%, var(--panel) 100%);
  border:1.5px solid rgba(77,163,255,.5);
  box-shadow:0 6px 18px rgba(0,0,0,.45), inset 0 1px 0 rgba(223,243,255,.12);
}
.stat-icon{
  width:42px; height:42px; margin:0 auto 8px; border-radius:50%;
  display:flex; align-items:center; justify-content:center; font-size:18px; color:var(--ink);
  background:radial-gradient(circle at 40% 30%, var(--gold-hi), var(--neutral) 55%, var(--warning-main));
  box-shadow:0 4px 12px rgba(77,163,255,.5);
}
.stat-num{ font-size:19px; font-weight:800; color:var(--neutral); text-shadow:0 1px 8px rgba(77,163,255,.5); line-height:1.1; }
.stat-label{ font-size:12px; color:var(--muted); margin-top:4px; }

/* ===== แจ็คพอต ===== */
.jackpot-card{
  text-align:center; padding:26px 18px; border-radius:20px;
  background:
    radial-gradient(120% 90% at 50% 0%, rgba(77,163,255,.28), rgba(0,0,0,0) 60%),
    linear-gradient(180deg, #112b48 0%, #0a1629 100%);
  border:2px solid var(--neutral);
  box-shadow:0 12px 34px rgba(0,0,0,.6), 0 0 26px rgba(77,163,255,.25), inset 0 1px 0 rgba(223,243,255,.18);
}
.jackpot-header{
  font-size:16px; font-weight:700; letter-spacing:1px; color:var(--gold-hi); margin-bottom:6px;
  text-transform:uppercase;
}
.jackpot-amount{
  font-size:clamp(34px,10vw,48px); font-weight:900; line-height:1.05;
  background:linear-gradient(180deg, #eaf7ff, var(--neutral) 45%, var(--warning-main));
  -webkit-background-clip:text; background-clip:text; -webkit-text-fill-color:transparent;
  filter:drop-shadow(0 2px 10px rgba(77,163,255,.6));
  animation:jackGlow 2.2s ease-in-out infinite;
}
@keyframes jackGlow{ 0%,100%{ filter:drop-shadow(0 2px 8px rgba(77,163,255,.4)); } 50%{ filter:drop-shadow(0 2px 16px rgba(77,163,255,.85)); } }
.jackpot-date{ font-size:12px; color:var(--muted); margin:8px 0 16px; }
.jackpot-date span{ color:var(--gold-hi); font-weight:600; }
.jackpot-subs{ display:grid; grid-template-columns:1fr 1fr; gap:12px; }
.jackpot-sub{
  padding:12px; border-radius:14px;
  background:rgba(0,0,0,.28); border:1px solid rgba(77,163,255,.3);
}
.sub-label{ display:block; font-size:12px; color:var(--muted); margin-bottom:3px; }
.sub-value{ display:block; font-size:20px; font-weight:800; color:var(--neutral); }

/* ===== แบนเนอร์คู่ ===== */
.banners{ display:grid; grid-template-columns:1fr 1fr; gap:12px; }
.banner{ display:block; overflow:hidden; border-radius:16px; border:2px solid var(--neutral);
  box-shadow:0 8px 22px rgba(0,0,0,.5), 0 0 16px rgba(77,163,255,.18); transition:transform .2s ease; }
.banner img{ display:block; width:100%; height:100%; object-fit:cover; aspect-ratio:1/1; }
.banner:hover{ transform:translateY(-3px) scale(1.02); }

/* ===== รีวิว ===== */
.section-title{
  text-align:center; font-size:20px; font-weight:800; color:var(--gold-hi); margin-bottom:14px;
  text-shadow:0 2px 10px rgba(77,163,255,.5);
}
.section-title .fa-comments{ color:var(--neutral); margin-right:6px; }
.review-viewport{
  height:330px; overflow:hidden; position:relative; border-radius:18px;
  border:1.5px solid rgba(77,163,255,.4);
  background:linear-gradient(180deg, rgba(12,26,43,.6), rgba(9,18,31,.6));
  padding:6px 10px;
  -webkit-mask-image:linear-gradient(180deg, transparent, #000 12%, #000 88%, transparent);
          mask-image:linear-gradient(180deg, transparent, #000 12%, #000 88%, transparent);
}
.review-list{ display:flex; flex-direction:column; gap:12px; animation:reviewScroll 26s linear infinite; }
.review-viewport:hover .review-list{ animation-play-state:paused; }
@keyframes reviewScroll{ from{ transform:translateY(0);} to{ transform:translateY(-50%);} }
.review{
  display:flex; gap:12px; padding:13px; border-radius:14px;
  background:linear-gradient(180deg, var(--panel-2), var(--panel));
  border:1px solid rgba(77,163,255,.28);
}
.review-avatar{
  flex:0 0 42px; width:42px; height:42px; border-radius:50%;
  display:flex; align-items:center; justify-content:center;
  font-weight:800; font-size:18px; color:var(--ink);
  box-shadow:0 3px 10px rgba(0,0,0,.4);
}
.review-body{ flex:1; min-width:0; }
.review-top{ display:flex; align-items:center; justify-content:space-between; gap:8px; }
.review-name{ font-weight:700; font-size:14px; color:var(--text); }
.review-stars{ color:var(--neutral); font-size:11px; letter-spacing:1px; }
.review-text{ font-size:13px; color:var(--muted); margin:3px 0 5px; line-height:1.4; }
.review-amount{ font-size:13px; font-weight:700; color:#4ade80; }
.review-amount i{ margin-right:4px; }

/* ===== ฟุตเตอร์ ===== */
.footer{ text-align:center; font-size:12px; letter-spacing:.3px; color:rgba(223,243,255,.65); padding:14px 0 4px; }

/* ===== เผยตอนเลื่อน ===== */
.js .reveal{ opacity:0; transform:translateY(26px); transition:opacity .6s ease, transform .6s cubic-bezier(.2,.8,.25,1); }
.js .reveal.in{ opacity:1; transform:none; }

@media (max-width:380px){
  .stat-num{ font-size:16px; }
  .badge{ font-size:12px; padding:6px 11px; }
  .btn-register, .btn-line{ font-size:16px; }
}
@media (prefers-reduced-motion: reduce){
  *{ animation:none !important; }
  .js .reveal{ opacity:1 !important; transform:none !important; transition:none !important; }
  .review-list{ animation:none !important; }
}
