:root{
  --bg:#0a0c10; --bg-elev:#0f1218; --text:#e6e9ef; --muted:#9aa3b2;
  --accent:#7c3aed; --accent-2:#22d3ee; --accent-glow: 0 0 24px rgba(124,58,237,.35), 0 0 36px rgba(34,211,238,.25);
  --card:#0c1016; --card-b:#161b22; --ok:#22c55e; --warn:#f59e0b; --err:#ef4444;
}

/* 18+ Age Warning Banner */
.age-warning-banner{
  background: linear-gradient(135deg, #ef4444, #dc2626);
  color: white;
  position: relative;
  z-index: 100;
  border-bottom: 2px solid rgba(255,255,255,.2);
  animation: pulseGlow 3s ease-in-out infinite alternate;
}

@keyframes pulseGlow {
  0% { box-shadow: 0 0 5px rgba(239, 68, 68, 0.5); }
  100% { box-shadow: 0 0 15px rgba(239, 68, 68, 0.8); }
}

.warning-content{
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 15px;
  padding: 12px 0;
  flex-wrap: wrap;
}

.warning-icon{
  font-size: 24px;
  flex-shrink: 0;
}

.warning-text{
  flex: 1;
  font-weight: 600;
  font-size: 14px;
  text-align: center;
}

.warning-links{
  display: flex;
  gap: 15px;
  flex-shrink: 0;
}

.warning-link{
  color: white;
  text-decoration: underline;
  font-size: 13px;
  font-weight: 500;
  transition: opacity 0.3s ease;
}

.warning-link:hover{
  opacity: 0.8;
}

@media (max-width: 768px) {
  .warning-content {
    flex-direction: column;
    text-align: center;
    gap: 8px;
  }

  .warning-text {
    font-size: 13px;
  }
}
*{box-sizing:border-box}
html{font-size:16px}
body{margin:0;background:radial-gradient(1200px 800px at 80% -10%,rgba(34,211,238,.08),transparent 60%),
linear-gradient(180deg, #0a0c10 0%, #0a0c10 60%, #0b0e13 100%);color:var(--text);font-family:Inter, system-ui, -apple-system, Segoe UI, Roboto, Helvetica, Arial, "Apple Color Emoji","Segoe UI Emoji";line-height:1.65}
a{color:var(--accent-2);text-decoration:none}
img{max-width:100%;display:block;height:auto}
.wrap{max-width:1200px;margin:0 auto;padding:0 20px}

header{position:sticky;top:0;z-index:50;background:rgba(10,12,16,.7);backdrop-filter:blur(12px);border-bottom:1px solid #161b22}
.nav{display:flex;align-items:center;justify-content:space-between;height:64px;flex-wrap:nowrap}
.logo{display:flex;align-items:center;gap:10px}
.logo img{height:28px;width:auto;border-radius:6px}
.logo span{font-weight:700;letter-spacing:.4px;white-space:nowrap}
.menu{display:flex;gap:18px;flex-wrap:wrap}
.menu a{color:var(--text);opacity:.9}
.btn{display:inline-block;padding:10px 16px;border-radius:10px;background:linear-gradient(90deg,var(--accent) 0%, var(--accent-2) 100%);color:#0a0c10;font-weight:700;box-shadow:var(--accent-glow)}
.btn--ghost{background:transparent;color:var(--text);border:1px solid #2a2f3a}
.cta-row{display:flex;gap:12px;flex-wrap:wrap}

.hero{position:relative;overflow:hidden}
.hero-inner{display:grid;grid-template-columns:1.1fr .9fr;gap:24px;align-items:center;padding:48px 0}
.hero h1{font-size:clamp(28px,4vw,44px);line-height:1.2;margin:0 0 12px}
.hero p.lead{color:var(--muted);font-size:1.05rem;margin:0 0 18px}
.hero .art{position:relative;border-radius:18px;overflow:hidden;border:1px solid #1a2130;background:radial-gradient(600px 400px at 60% 20%,rgba(124,58,237,.25),transparent 60%), #0a0c10}
.hero .art img{width:100%;height:auto;display:block;opacity:.95}

/* Trust Badges */
.trust-badges {
  display: flex;
  gap: 0.5rem;
  margin-bottom: 1.5rem;
  flex-wrap: wrap;
}

.badge {
  display: inline-flex;
  align-items: center;
  padding: 0.4rem 0.8rem;
  border-radius: 20px;
  font-size: 0.85rem;
  font-weight: 600;
  white-space: nowrap;
}

.badge.verified {
  background: linear-gradient(135deg, #22c55e, #16a34a);
  color: white;
}

.badge.updated {
  background: linear-gradient(135deg, #3b82f6, #2563eb);
  color: white;
}

.badge.expert {
  background: linear-gradient(135deg, #f59e0b, #d97706);
  color: white;
}

/* Trust Indicators */
.trust-indicators {
  display: flex;
  gap: 2rem;
  margin: 2rem 0;
  padding: 1.5rem;
  background: rgba(255,255,255,0.05);
  border-radius: 12px;
  border: 1px solid rgba(255,255,255,0.1);
  backdrop-filter: blur(10px);
}

.indicator {
  text-align: center;
  flex: 1;
}

.indicator strong {
  display: block;
  font-size: 1.5rem;
  font-weight: 700;
  color: var(--accent-2);
  margin-bottom: 0.25rem;
}

.indicator span {
  font-size: 0.9rem;
  color: var(--muted);
  display: block;
}

/* Update Information for E-E-A-T */
.update-info {
  background: #f8f9fa;
  padding: 2rem 0;
  border-top: 3px solid #22d3ee;
}

.update-card {
  background: white;
  padding: 2rem;
  border-radius: 12px;
  box-shadow: 0 4px 12px rgba(0,0,0,0.1);
  border-left: 4px solid #22d3ee;
}

.update-card h3 {
  margin: 0 0 1.5rem 0;
  color: #2c3e50;
  font-size: 1.3rem;
}

.update-details {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(250px, 1fr));
  gap: 1rem;
  margin-bottom: 1.5rem;
}

.detail {
  background: #f8f9fa;
  padding: 1rem;
  border-radius: 8px;
  border-left: 3px solid #3498db;
}

.detail strong {
  display: block;
  color: #2c3e50;
  margin-bottom: 0.25rem;
  font-size: 0.9rem;
}

.disclaimer {
  background: linear-gradient(135deg, #fff3cd, #ffeaa7);
  padding: 1.5rem;
  border-radius: 8px;
  border: 1px solid #ffeaa7;
  margin: 0;
  font-size: 0.95rem;
  line-height: 1.6;
  color: #856404;
}

.disclaimer strong {
  color: #856404;
}

section{padding:40px 0;border-top:1px solid #151922}
section h2{font-size:clamp(22px,3vw,32px);margin:0 0 16px}
section .sub{color:var(--muted);margin:-6px 0 22px}

.cards{display:grid;grid-template-columns:repeat(4,1fr);gap:16px}
.card{background:linear-gradient(180deg,#0c1016,#0a0c10);border:1px solid #141a24;border-radius:16px;padding:18px}
.card h3{margin:0 0 8px;font-size:18px}
.card p{margin:0;color:var(--muted)}
.card .pic{border-radius:12px;overflow:hidden;margin:-4px -4px 12px;border:1px solid #1a2130}

.grid-3{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}
.grid-4{display:grid;grid-template-columns:repeat(4,1fr);gap:18px}

.block{display:grid;grid-template-columns:1.1fr .9fr;gap:20px;align-items:center}
.block.reverse{grid-template-columns:.9fr 1.1fr}
.block .pic{border-radius:16px;overflow:hidden;border:1px solid #1a2130}
.block .txt h3{margin:0 0 10px}
.block .txt p{color:var(--muted)}

footer{padding:36px 0;background:#090b10;border-top:1px solid #161b22;color:var(--muted)}
footer .foot{display:flex;flex-wrap:wrap;gap:16px;align-items:center;justify-content:space-between}
footer small{opacity:.9}

@media (max-width: 980px){
  .hero-inner{grid-template-columns:1fr}
  .block,.block.reverse{grid-template-columns:1fr}
  .cards,.grid-3,.grid-4{grid-template-columns:1fr 1fr}
}
@media (max-width: 900px){
  .menu{display:none}
  .cta-row .btn.btn--ghost{display:none}
}
@media (max-width: 640px){
  .cards,.grid-3,.grid-4{grid-template-columns:1fr}
  .hero{padding-top:8px}
}

/* Legal Compliance Section */
.legal-compliance {
  background: #f8f9fa;
  padding: 3rem 0;
  margin-top: 4rem;
  border-top: 3px solid #ffc107;
}

.compliance-grid {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(300px, 1fr));
  gap: 2rem;
  margin-bottom: 2rem;
}

.compliance-card {
  background: white;
  padding: 1.5rem;
  border-radius: 8px;
  box-shadow: 0 2px 8px rgba(0,0,0,0.1);
}

.compliance-card h3 {
  margin-bottom: 1rem;
  font-size: 1.2rem;
  color: #2c3e50;
}

.compliance-card p {
  line-height: 1.6;
  color: #34495e;
}

.compliance-card a {
  color: #3498db;
  text-decoration: none;
}

.compliance-card a:hover {
  text-decoration: underline;
}

.age-restriction {
  border-left: 4px solid #e74c3c;
}

.responsible-gambling {
  border-left: 4px solid #ef4444;
  background: linear-gradient(135deg, #fff5f5, #ffffff);
  border: 2px solid #fed7d7;
  position: relative;
  animation: gentlePulse 4s ease-in-out infinite;
}

@keyframes gentlePulse {
  0%, 100% { transform: translateY(0); box-shadow: 0 2px 8px rgba(0,0,0,0.1); }
  50% { transform: translateY(-2px); box-shadow: 0 6px 16px rgba(239, 68, 68, 0.15); }
}

.responsible-gambling::before {
  content: "⚠️ QUAN TRỌNG";
  position: absolute;
  top: -12px;
  left: 20px;
  background: #ef4444;
  color: white;
  padding: 4px 12px;
  border-radius: 12px;
  font-size: 12px;
  font-weight: bold;
  letter-spacing: 0.5px;
}

.responsible-gambling ul {
  background: #fef5e7;
  padding: 15px 20px;
  border-radius: 6px;
  border-left: 3px solid #f59e0b;
}

.affiliate-disclosure {
  border-left: 4px solid #3498db;
}

.compliance-footer {
  text-align: center;
  padding-top: 2rem;
  border-top: 1px solid #dee2e6;
}

.compliance-footer p {
  margin-bottom: 1rem;
  color: #495057;
}

.compliance-links {
  margin-top: 1rem;
}

.compliance-links a {
  color: #6c757d;
  text-decoration: none;
  margin: 0 0.5rem;
}

.compliance-links a:hover {
  color: #495057;
  text-decoration: underline;
}

@media (max-width: 768px) {
  .compliance-grid {
    grid-template-columns: 1fr;
  }
  
  .legal-compliance {
    padding: 2rem 0;
  }
}

/* Expert Review Section */
.expert-review {
  padding: 4rem 0;
  background: white;
}

.expert-review h2 {
  text-align: center;
  margin-bottom: 3rem;
  font-size: 2rem;
  color: #2c3e50;
}

.review-author {
  display: flex;
  align-items: flex-start;
  gap: 2rem;
  margin-bottom: 2rem;
  padding: 2rem;
  background: linear-gradient(135deg, #f8f9fa, #e9ecef);
  border-radius: 12px;
  border: 1px solid #dee2e6;
  box-shadow: 0 4px 12px rgba(0,0,0,0.1);
}

.author-info h4 {
  margin-bottom: 1rem;
  color: #2c3e50;
  font-size: 1.3rem;
  border-bottom: 2px solid #22d3ee;
  padding-bottom: 0.5rem;
}

.author-info p {
  margin: 0.25rem 0;
  color: #495057;
  font-size: 0.95rem;
  line-height: 1.5;
}

.credentials {
  margin: 1.5rem 0;
  padding: 1rem;
  background: white;
  border-radius: 8px;
  border-left: 4px solid #28a745;
}

.credentials p {
  margin: 0.5rem 0;
  display: flex;
  align-items: center;
}

.credentials strong {
  min-width: 140px;
  color: #2c3e50;
  display: inline-block;
}

.methodology {
  margin-top: 1.5rem;
  padding: 1rem;
  background: #fff3cd;
  border: 1px solid #ffeaa7;
  border-radius: 8px;
}

.methodology h5 {
  margin: 0 0 1rem 0;
  color: #856404;
  font-size: 1.1rem;
}

.methodology ul {
  margin: 0;
  padding-left: 1.2rem;
}

.methodology li {
  margin: 0.5rem 0;
  color: #856404;
  line-height: 1.4;
}

@media (max-width: 768px) {
  .review-author {
    flex-direction: column;
    text-align: center;
    gap: 1rem;
  }

  .credentials strong {
    min-width: auto;
    display: block;
    margin-bottom: 0.25rem;
  }
}

.expert-content h3 {
  color: #2c3e50;
  margin: 2rem 0 1rem;
}

.expert-content h4 {
  color: #34495e;
  margin: 1.5rem 0 1rem;
}

.data-table {
  width: 100%;
  border-collapse: collapse;
  margin: 1rem 0;
}

.data-table th {
  background: #2c3e50;
  color: white;
  padding: 0.75rem;
  text-align: left;
}

.data-table td {
  padding: 0.75rem;
  border-bottom: 1px solid #dee2e6;
}

.data-table tr:nth-child(even) {
  background: #f8f9fa;
}

.comparison-grid {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(300px, 1fr));
  gap: 2rem;
  margin: 2rem 0;
}

.comparison-item {
  padding: 1.5rem;
  background: #f8f9fa;
  border-radius: 8px;
}

.comparison-item h5 {
  margin-bottom: 1rem;
  color: #2c3e50;
}

/* Data Section */
.data-section {
  padding: 4rem 0;
  background: #f8f9fa;
}

.data-section h2 {
  text-align: center;
  margin-bottom: 3rem;
  font-size: 2rem;
  color: #2c3e50;
}

.stats-grid {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(250px, 1fr));
  gap: 2rem;
  margin-bottom: 3rem;
}

.stat-card {
  background: white;
  padding: 2rem;
  border-radius: 8px;
  text-align: center;
  box-shadow: 0 2px 8px rgba(0,0,0,0.1);
}

.stat-number {
  font-size: 2.5rem;
  font-weight: 700;
  color: #e74c3c;
  margin-bottom: 0.5rem;
}

.stat-label {
  font-size: 1.1rem;
  color: #2c3e50;
  margin-bottom: 0.5rem;
}

.stat-detail {
  font-size: 0.9rem;
  color: #6c757d;
}

.monthly-report {
  background: white;
  padding: 2rem;
  border-radius: 8px;
  box-shadow: 0 2px 8px rgba(0,0,0,0.1);
}

.monthly-report h3 {
  color: #2c3e50;
  margin-bottom: 1.5rem;
}

.monthly-report ul {
  list-style: none;
  padding: 0;
}

.monthly-report li {
  padding: 0.75rem 0;
  border-bottom: 1px solid #e0e0e0;
}

.monthly-report li:last-child {
  border-bottom: none;
}

/* Testimonials Section */
.testimonials {
  padding: 4rem 0;
  background: white;
}

.testimonials h2 {
  text-align: center;
  margin-bottom: 3rem;
  font-size: 2rem;
  color: #2c3e50;
}

.testimonial-grid {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(300px, 1fr));
  gap: 2rem;
}

.testimonial-card {
  padding: 1.5rem;
  background: #f8f9fa;
  border-radius: 8px;
  border-left: 4px solid #ffc107;
}

.testimonial-header {
  display: flex;
  align-items: center;
  gap: 1rem;
  margin-bottom: 1rem;
}

.testimonial-header strong {
  color: #2c3e50;
}

.verified {
  color: #28a745;
  font-size: 0.9rem;
}

.rating {
  margin-left: auto;
}

.testimonial-card p {
  color: #495057;
  line-height: 1.6;
  margin-bottom: 1rem;
}

.testimonial-card small {
  color: #6c757d;
  font-size: 0.85rem;
}

@media (max-width: 768px) {
  .stats-grid,
  .testimonial-grid,
  .comparison-grid {
    grid-template-columns: 1fr;
  }
  
  .data-table {
    font-size: 0.9rem;
  }
  
  .data-table th,
  .data-table td {
    padding: 0.5rem;
  }
}
