/* FlareVault.games — Neon Cyberpunk core stylesheet (ddom1- namespace) */

@import url('https://fonts.googleapis.com/css2?family=Rajdhani:wght@500;600;700&family=Inter:wght@400;500;600&display=swap');

:root{
  --ddom1-primary:#ff2e88;
  --ddom1-secondary:#33e0ff;
  --ddom1-bg:#0a0a12;
  --ddom1-surface:#14141f;
  --ddom1-surface-alt:#1b1b29;
  --ddom1-text:#f2f2fb;
  --ddom1-text-muted:#9a9ab0;
  --ddom1-font-heading:'Rajdhani','Segoe UI',sans-serif;
  --ddom1-font-body:'Inter','Segoe UI',sans-serif;
  --ddom1-radius-card:10px;
  --ddom1-shadow-card:0 0 24px rgba(255,46,136,.25);
  --ddom1-glow:0 0 12px rgba(51,224,255,.6);
  --ddom1-line:rgba(255,255,255,.08);
  --ddom1-chrome:#c9d3dd;
}

*{box-sizing:border-box;}
html,body{margin:0;padding:0;}
body{
  background:var(--ddom1-bg);
  color:var(--ddom1-text);
  font-family:var(--ddom1-font-body);
  line-height:1.6;
  overflow-x:hidden;
  background-image:
    linear-gradient(rgba(51,224,255,.04) 1px, transparent 1px),
    linear-gradient(90deg, rgba(255,46,136,.04) 1px, transparent 1px);
  background-size:38px 38px;
}
body.ddom1-lock{overflow:hidden;height:100vh;}
html:not(.ddom1-age-ok) body{overflow:hidden;height:100vh;}
html.ddom1-age-ok .ddom1-agegate{display:none;}

h1,h2,h3,h4{
  font-family:var(--ddom1-font-heading);
  letter-spacing:.02em;
  color:var(--ddom1-text);
  margin:0 0 .5em;
}
p{margin:0 0 1em;color:var(--ddom1-text);}
a{color:var(--ddom1-secondary);text-decoration:none;}
a:hover{text-decoration:underline;}
img{max-width:100%;display:block;}

.ddom1-container{
  width:100%;
  max-width:1180px;
  margin:0 auto;
  padding:0 20px;
}

/* ===== Header / Nav ===== */
.ddom1-header{
  position:sticky;top:0;z-index:300;
  background:rgba(10,10,18,.92);
  backdrop-filter:blur(6px);
  border-bottom:1px solid var(--ddom1-line);
}
.ddom1-header-inner{
  display:flex;align-items:center;justify-content:space-between;
  padding:14px 20px;max-width:1180px;margin:0 auto;
}
.ddom1-brand{
  font-family:var(--ddom1-font-heading);
  font-size:1.5rem;font-weight:700;color:var(--ddom1-text);
  display:flex;align-items:center;gap:8px;
}
.ddom1-brand-accent{color:var(--ddom1-primary);text-shadow:var(--ddom1-glow);}
.ddom1-nav{display:flex;gap:22px;flex-wrap:wrap;}
.ddom1-nav a{
  color:var(--ddom1-text-muted);font-family:var(--ddom1-font-heading);
  font-weight:600;font-size:.95rem;text-transform:uppercase;letter-spacing:.05em;
}
.ddom1-nav a:hover,.ddom1-nav a.ddom1-active{color:var(--ddom1-secondary);text-decoration:none;}
.ddom1-nav-toggle{display:none;}

/* ===== Hero ===== */
.ddom1-hero{
  padding:64px 0;border-bottom:1px solid var(--ddom1-line);
  position:relative;overflow:hidden;
}
.ddom1-hero-inner{
  display:flex;align-items:center;gap:48px;
  max-width:1180px;margin:0 auto;padding:0 20px;
}
.ddom1-hero-copy{flex:1 1 460px;}
.ddom1-hero-media{flex:1 1 420px;}
.ddom1-hero-media img{
  border-radius:var(--ddom1-radius-card);
  box-shadow:var(--ddom1-shadow-card);
  border:1px solid var(--ddom1-line);
}
.ddom1-eyebrow{
  display:inline-block;color:var(--ddom1-secondary);font-family:var(--ddom1-font-heading);
  text-transform:uppercase;letter-spacing:.14em;font-size:.8rem;margin-bottom:10px;
}
.ddom1-hero h1{font-size:2.6rem;line-height:1.15;}
.ddom1-hero-sub{color:var(--ddom1-text-muted);font-size:1.08rem;max-width:520px;}
.ddom1-cta{
  display:inline-block;
  background:linear-gradient(135deg,var(--ddom1-primary),#b81a5f);
  color:#fff;font-family:var(--ddom1-font-heading);font-weight:700;
  font-size:1.05rem;letter-spacing:.04em;text-transform:uppercase;
  padding:14px 32px;border-radius:6px;border:1px solid rgba(255,255,255,.15);
  box-shadow:0 0 22px rgba(255,46,136,.45);cursor:pointer;margin-top:18px;
}
.ddom1-cta:hover{text-decoration:none;box-shadow:0 0 32px rgba(255,46,136,.7);}
.ddom1-cta-ghost{
  display:inline-block;margin-left:14px;padding:14px 26px;border-radius:6px;
  border:1px solid var(--ddom1-secondary);color:var(--ddom1-secondary);
  font-family:var(--ddom1-font-heading);font-weight:600;text-transform:uppercase;font-size:.95rem;
}

/* ===== Section shell ===== */
.ddom1-section{padding:56px 0;border-bottom:1px solid var(--ddom1-line);}
.ddom1-section-head{max-width:640px;margin:0 auto 30px;text-align:center;}
.ddom1-section-head h2{font-size:2rem;}
.ddom1-section-head p{color:var(--ddom1-text-muted);}

/* ===== Category chips ===== */
.ddom1-chiprow{display:flex;flex-wrap:wrap;gap:12px;justify-content:center;}
.ddom1-chip{
  background:var(--ddom1-surface);border:1px solid var(--ddom1-line);
  color:var(--ddom1-text);padding:9px 20px;border-radius:999px;
  font-family:var(--ddom1-font-heading);font-weight:600;letter-spacing:.03em;
  font-size:.92rem;
}
.ddom1-chip:hover{border-color:var(--ddom1-secondary);color:var(--ddom1-secondary);text-decoration:none;}
.ddom1-chip.ddom1-chip-active{background:var(--ddom1-primary);border-color:var(--ddom1-primary);color:#fff;}

/* ===== Promo cards ===== */
.ddom1-promogrid{display:grid;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:24px;}
.ddom1-promocard{
  background:var(--ddom1-surface);border:1px solid var(--ddom1-line);
  border-radius:var(--ddom1-radius-card);overflow:hidden;
  box-shadow:var(--ddom1-shadow-card);display:flex;flex-direction:column;
}
.ddom1-promocard img{height:150px;width:100%;object-fit:cover;}
.ddom1-promocard-body{padding:18px 20px 22px;flex:1;display:flex;flex-direction:column;}
.ddom1-promocard h3{font-size:1.2rem;margin-bottom:8px;}
.ddom1-promocard p{color:var(--ddom1-text-muted);font-size:.94rem;flex:1;}
.ddom1-promocard .ddom1-cta{padding:10px 20px;font-size:.88rem;align-self:flex-start;margin-top:12px;}

/* ===== Compact-list game/tile cards ===== */
.ddom1-tilelist{display:flex;flex-direction:column;gap:16px;}
.ddom1-tile{
  display:flex;align-items:center;gap:18px;
  background:var(--ddom1-surface);border:1px solid var(--ddom1-line);
  border-radius:var(--ddom1-radius-card);padding:14px 18px;
  box-shadow:var(--ddom1-shadow-card);
}
.ddom1-tile-thumb{
  width:88px;height:88px;flex:0 0 88px;border-radius:8px;overflow:hidden;
  border:1px solid var(--ddom1-line);position:relative;
}
.ddom1-tile-thumb img{width:100%;height:100%;object-fit:cover;transition:filter .18s ease,transform .18s ease;}
.ddom1-tile:hover .ddom1-tile-thumb img,
.ddom1-tile:focus-within .ddom1-tile-thumb img{
  animation:ddom1-reel .42s steps(6,end) 1;
}
@keyframes ddom1-reel{
  0%{transform:translateY(0) scaleY(1);filter:brightness(1) saturate(1);}
  20%{transform:translateY(-6%) scaleY(1.08);filter:brightness(1.5) saturate(1.6) hue-rotate(8deg);}
  40%{transform:translateY(4%) scaleY(.95);filter:brightness(.8) saturate(1.2);}
  60%{transform:translateY(-3%) scaleY(1.04);filter:brightness(1.3) saturate(1.4) hue-rotate(-6deg);}
  80%{transform:translateY(2%) scaleY(.98);filter:brightness(1.1);}
  100%{transform:translateY(0) scaleY(1);filter:brightness(1) saturate(1);}
}
.ddom1-tile-info{flex:1;min-width:0;}
.ddom1-tile-info h3{font-size:1.1rem;margin-bottom:2px;}
.ddom1-tile-meta{color:var(--ddom1-text-muted);font-size:.85rem;margin-bottom:0;}
.ddom1-tile-actions{flex:0 0 auto;}
.ddom1-tile-actions .ddom1-cta{padding:9px 18px;font-size:.82rem;margin-top:0;}

/* Games grid page: two-column list on wide screens */
.ddom1-tilegrid{display:grid;grid-template-columns:repeat(auto-fit,minmax(320px,1fr));gap:16px;}

/* ===== Wins feed ===== */
.ddom1-winsfeed{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:12px;}
.ddom1-winsfeed li{
  background:var(--ddom1-surface);border:1px solid var(--ddom1-line);
  border-left:3px solid var(--ddom1-secondary);border-radius:8px;padding:12px 16px;
  font-size:.92rem;color:var(--ddom1-text-muted);
}
.ddom1-winsfeed strong{color:var(--ddom1-text);}
.ddom1-winsfeed .ddom1-wincoin{color:var(--ddom1-primary);font-weight:600;}

/* ===== Providers strip ===== */
.ddom1-providers{display:flex;flex-wrap:wrap;gap:14px;justify-content:center;}
.ddom1-providerbadge{
  border:1px solid var(--ddom1-line);color:var(--ddom1-chrome);
  padding:10px 18px;border-radius:8px;font-family:var(--ddom1-font-heading);
  letter-spacing:.04em;font-size:.95rem;background:var(--ddom1-surface-alt);
}

/* ===== Join / register CTA ===== */
.ddom1-join{
  text-align:center;padding:70px 20px;
  background:radial-gradient(circle at 50% 0%, rgba(255,46,136,.14), transparent 60%), var(--ddom1-surface);
}
.ddom1-join h2{font-size:2.2rem;}
.ddom1-join p{color:var(--ddom1-text-muted);max-width:560px;margin:0 auto 22px;}
.ddom1-join-note{font-size:.82rem;color:var(--ddom1-text-muted);margin-top:16px;}

/* ===== Footer ===== */
.ddom1-footer{padding:48px 0 26px;background:#07070d;}
.ddom1-footer-grid{
  display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:26px;margin-bottom:30px;
}
.ddom1-footer h4{font-family:var(--ddom1-font-heading);font-size:1rem;color:var(--ddom1-secondary);margin-bottom:12px;}
.ddom1-footer ul{list-style:none;margin:0;padding:0;}
.ddom1-footer li{margin-bottom:8px;}
.ddom1-footer a{color:var(--ddom1-text-muted);font-size:.9rem;}
.ddom1-footer a:hover{color:var(--ddom1-text);}
.ddom1-footer-legal{
  border-top:1px solid var(--ddom1-line);padding-top:20px;
  color:var(--ddom1-text-muted);font-size:.8rem;line-height:1.7;
}
.ddom1-footer-legal p{margin:0 0 8px;color:var(--ddom1-text-muted);}

/* ===== Age gate overlay ===== */
.ddom1-agegate{
  position:fixed;inset:0;z-index:4300;background:rgba(6,6,12,.97);
  display:flex;align-items:center;justify-content:center;padding:24px;
}
.ddom1-agegate[hidden]{display:none;}
.ddom1-agegate-box{
  max-width:460px;width:100%;background:var(--ddom1-surface);
  border:1px solid var(--ddom1-primary);border-radius:var(--ddom1-radius-card);
  box-shadow:var(--ddom1-shadow-card);padding:34px 30px;text-align:center;
}
.ddom1-agegate-box h2{font-size:1.5rem;}
.ddom1-agegate-box p{color:var(--ddom1-text-muted);font-size:.92rem;}
.ddom1-agegate-actions{display:flex;gap:14px;justify-content:center;margin-top:20px;flex-wrap:wrap;}
.ddom1-agegate-actions .ddom1-cta{margin-top:0;}
.ddom1-agegate-exit{
  display:inline-block;padding:14px 26px;border-radius:6px;border:1px solid var(--ddom1-line);
  color:var(--ddom1-text-muted);font-family:var(--ddom1-font-heading);font-weight:600;
  text-transform:uppercase;font-size:.95rem;
}

/* ===== Cookie banner ===== */
.ddom1-cookiebar{
  position:fixed;left:0;right:0;bottom:0;z-index:4100;
  background:rgba(10,10,18,.97);border-top:1px solid var(--ddom1-secondary);
  padding:16px 20px;display:flex;flex-wrap:wrap;gap:16px;align-items:center;justify-content:space-between;
}
.ddom1-cookiebar[hidden]{display:none;}
.ddom1-cookiebar p{margin:0;color:var(--ddom1-text-muted);font-size:.86rem;max-width:640px;}
.ddom1-cookiebar a{color:var(--ddom1-secondary);}
.ddom1-cookiebar-actions{display:flex;gap:10px;flex:0 0 auto;}
.ddom1-cookiebar-actions button{
  font-family:var(--ddom1-font-heading);font-weight:700;text-transform:uppercase;
  font-size:.82rem;padding:9px 18px;border-radius:6px;cursor:pointer;letter-spacing:.03em;
}
.ddom1-cookie-accept{background:var(--ddom1-primary);border:1px solid var(--ddom1-primary);color:#fff;}
.ddom1-cookie-decline{background:transparent;border:1px solid var(--ddom1-line);color:var(--ddom1-text-muted);}

/* ===== Game modal / iframe wrapper ===== */
.ddom1-modal{
  position:fixed;inset:0;z-index:4200;background:rgba(4,4,9,.92);
  display:flex;align-items:center;justify-content:center;padding:20px;
}
.ddom1-modal[hidden]{display:none;}
.ddom1-modal-box{width:100%;max-width:960px;background:var(--ddom1-surface);border:1px solid var(--ddom1-secondary);border-radius:var(--ddom1-radius-card);overflow:hidden;}
.ddom1-modal-head{display:flex;justify-content:space-between;align-items:center;padding:12px 18px;border-bottom:1px solid var(--ddom1-line);}
.ddom1-modal-close{background:none;border:1px solid var(--ddom1-line);color:var(--ddom1-text);border-radius:6px;padding:6px 12px;cursor:pointer;}

.ddom1-gameframe-wrap{
  border-radius:var(--ddom1-radius-card);overflow:hidden;border:1px solid var(--ddom1-line);
  box-shadow:var(--ddom1-shadow-card);margin:24px 0;
}

/* ===== Misc content pages ===== */
.ddom1-page-hero{padding:48px 0 20px;}
.ddom1-page-hero h1{font-size:2.1rem;}
.ddom1-content h2{margin-top:34px;font-size:1.4rem;color:var(--ddom1-secondary);}
.ddom1-content h3{margin-top:22px;font-size:1.1rem;}
.ddom1-content ul{padding-left:22px;color:var(--ddom1-text-muted);}
.ddom1-content li{margin-bottom:6px;}
.ddom1-content p{color:var(--ddom1-text-muted);}
.ddom1-callout{
  background:var(--ddom1-surface);border-left:3px solid var(--ddom1-primary);
  border-radius:8px;padding:16px 20px;color:var(--ddom1-text-muted);margin:20px 0;
}

.ddom1-faq-item{
  background:var(--ddom1-surface);border:1px solid var(--ddom1-line);border-radius:8px;
  padding:16px 20px;margin-bottom:14px;
}
.ddom1-faq-item h3{margin-bottom:6px;color:var(--ddom1-secondary);font-size:1.05rem;}
.ddom1-faq-item p{margin:0;color:var(--ddom1-text-muted);}

.ddom1-tierlist{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:18px;}
.ddom1-tiercard{
  background:var(--ddom1-surface);border:1px solid var(--ddom1-line);border-radius:var(--ddom1-radius-card);
  padding:22px 20px;box-shadow:var(--ddom1-shadow-card);
}
.ddom1-tiercard h3{color:var(--ddom1-primary);font-size:1.2rem;}
.ddom1-tiercard ul{padding-left:18px;color:var(--ddom1-text-muted);font-size:.9rem;}

.ddom1-schedule{width:100%;border-collapse:collapse;margin:20px 0;}
.ddom1-schedule th,.ddom1-schedule td{
  border:1px solid var(--ddom1-line);padding:10px 14px;text-align:left;font-size:.92rem;color:var(--ddom1-text-muted);
}
.ddom1-schedule th{color:var(--ddom1-secondary);font-family:var(--ddom1-font-heading);}

@media (max-width:820px){
  .ddom1-hero-inner{flex-direction:column;}
  .ddom1-header-inner{flex-wrap:wrap;gap:10px;}
  .ddom1-nav{gap:14px;width:100%;justify-content:flex-start;overflow-x:auto;}
}
@media (max-width:520px){
  .ddom1-hero h1{font-size:2rem;}
  .ddom1-tile{flex-wrap:wrap;}
  .ddom1-tile-actions{width:100%;}
  .ddom1-tile-actions .ddom1-cta{width:100%;text-align:center;}
}
