* ===== Mad Casino — Graphite Mono ===== */

body{
  background:
    radial-gradient(ellipse 900px 500px at 15% -10%, color-mix(in srgb, var(--accent) 6%, transparent), transparent 60%),
    radial-gradient(ellipse 700px 500px at 100% 10%, color-mix(in srgb, var(--accent-2) 8%, transparent), transparent 55%),
    var(--bg);
}

.section{
  position:relative;
  background-image: linear-gradient(var(--line) 1px, transparent 1px);
  background-size: 100% 44px;
  background-position: 0 -1px;
  -webkit-mask-image: linear-gradient(to bottom, transparent 0, black 40px, black calc(100% - 40px), transparent 100%);
          mask-image: linear-gradient(to bottom, transparent 0, black 40px, black calc(100% - 40px), transparent 100%);
}

.hero{
  border-bottom:1px solid var(--line);
  background:
    radial-gradient(circle at 82% 18%, color-mix(in srgb, var(--accent) 14%, transparent), transparent 45%),
    linear-gradient(180deg, var(--panel), var(--bg));
}

h1,h2,h3,.hero-title,.offer-amount{
  font-weight:700;
  letter-spacing:-0.01em;
  color:var(--text);
}

.hero-title{
  letter-spacing:-0.02em;
  text-transform:uppercase;
}

.hero-sub,.muted,.prose,p{ color:var(--prose); }

.badge{
  border:1px solid var(--line);
  background:var(--panel);
  color:var(--text-2);
  letter-spacing:0.06em;
  text-transform:uppercase;
  font-weight:600;
  border-radius:var(--radius);
}

.fact b{
  font-weight:700;
  color:var(--accent);
  letter-spacing:-0.01em;
}

.btn{
  border-radius:var(--radius);
  border:1px solid var(--line);
  font-weight:600;
  letter-spacing:0.01em;
  transition:transform .18s ease, border-color .18s ease, background-color .18s ease;
}
.btn:hover{ transform:translateY(-1px); }

.btn-primary{
  background:var(--accent);
  color:var(--on-accent);
  border-color:var(--accent);
  box-shadow:0 1px 0 rgba(0,0,0,.25) inset, 0 6px 16px color-mix(in srgb, var(--accent) 20%, transparent);
}
.btn-primary:hover{
  background:var(--accent-2);
  border-color:var(--accent-2);
}

.btn-ghost{
  background:transparent;
  color:var(--text);
  border-color:var(--line);
}
.btn-ghost:hover{
  border-color:var(--accent);
  color:var(--accent);
}

.card,.feature,.tile,.faq-item,.offer,.access{
  background:var(--panel);
  border:1px solid var(--line);
  border-radius:var(--radius);
  transition:border-color .2s ease, transform .2s ease, box-shadow .2s ease;
}

.card:hover,.feature:hover,.tile:hover,.access:hover{
  border-color:var(--accent);
  transform:translateY(-2px);
  box-shadow:0 10px 24px rgba(0,0,0,.35);
}

.feature .icon,.access .icon{
  color:var(--accent);
  background:var(--panel-2);
  border:1px solid var(--line);
  border-radius:var(--radius);
}

.tile{ background:var(--panel-2); overflow:hidden; }
.tile .nm{ color:var(--text); font-weight:600; }
.tile .gp{ color:var(--text-2); letter-spacing:0.04em; text-transform:uppercase; }
.tile.noimg{
  background:linear-gradient(160deg, var(--panel), var(--panel-2));
  border-style:dashed;
}
.tile:hover .nm{ color:var(--accent); }

.tabs{ border-bottom:1px solid var(--line); }
.tab{
  color:var(--text-2);
  border:1px solid transparent;
  border-radius:var(--radius);
  font-weight:600;
}
.tab.active,.tab:hover{
  color:var(--text);
  border-color:var(--line);
  background:var(--panel);
}
.tab.active{
  background:var(--accent);
  color:var(--on-accent);
  border-color:var(--accent);
}

.faq-q{
  color:var(--text);
  font-weight:600;
  border-bottom:1px solid var(--line);
}
.faq-item:hover .faq-q{ color:var(--accent); }

.offer{
  background:linear-gradient(135deg, var(--panel), var(--panel-2));
  border-color:var(--accent);
}
.offer-badge{
  background:var(--accent);
  color:var(--on-accent);
  border-radius:var(--radius);
  font-weight:700;
  letter-spacing:0.04em;
  text-transform:uppercase;
}
.offer-amount{ color:var(--accent); }

.chip{
  background:var(--panel-2);
  border:1px solid var(--line);
  border-radius:var(--radius);
  color:var(--text-2);
}
.chip:hover{ border-color:var(--accent); color:var(--text); }

.trust span{ color:var(--text-2); }
.trust .t18{
  border:1px solid var(--accent);
  color:var(--accent);
  border-radius:50%;
  font-weight:700;
}

a{ color:var(--accent); }
a:hover{ text-decoration-color:var(--accent-2); }

table.table{ border:1px solid var(--line); }
table.table th{ background:var(--panel-2); color:var(--text); }
table.table td{ border-top:1px solid var(--line); color:var(--prose); }