/* ==========================================================================
   RJBet77 Login Guide — Shared Stylesheet
   Independent Account-Access & Safer-Play Guide — No Affiliate Links
   Typography: Sora (display) + Sora (body) + JetBrains Mono (accent)
   ========================================================================== */

:root{
  --dark:#0E0513;
  --dark-deep:#07030A;
  --dark-card:#1E1027;
  --violet:#A92DFC;
  --violet-deep:#8114D6;
  --gold:#D49F43;
  --gold-deep:#B27F2C;
  --cream:#F8F6FB;
  --cream-card:#FFFFFF;
  --ink-light:#F8F6FB;
  --ink-light-dim:#C1AECF;
  --ink-dark:#0E0513;
  --ink-dark-dim:#645A70;
  --radius:16px;
}
*{box-sizing:border-box;}
html{scroll-behavior:smooth;}
@media (prefers-reduced-motion:reduce){
  html{scroll-behavior:auto;}
  *{animation-duration:.001ms!important;transition-duration:.001ms!important;}
}
body{
  margin:0;background:var(--dark);color:var(--ink-light);
  font-family:system-ui,-apple-system,'Segoe UI',sans-serif;line-height:1.65;-webkit-font-smoothing:antialiased;
}
img,svg{max-width:100%;display:block;}
a{color:inherit;}
a:focus-visible,button:focus-visible,summary:focus-visible,input:focus-visible,textarea:focus-visible{
  outline:3px solid var(--violet);outline-offset:3px;border-radius:6px;
}
.skip-link{
  position:absolute;left:12px;top:-60px;background:var(--violet);color:var(--ink-light);
  padding:10px 18px;border-radius:10px;font-weight:700;text-decoration:none;z-index:100;transition:top .2s;
}
.skip-link:focus{top:12px;}
h1,h2,h3{font-family:system-ui,-apple-system,'Segoe UI',sans-serif;font-weight:700;margin:0 0 .5em;line-height:1.25;}
.mono{font-family:ui-monospace,'SFMono-Regular',Consolas,monospace;}
.wrap{max-width:1120px;margin:0 auto;padding:0 24px;}
.wrap-narrow{max-width:800px;margin:0 auto;padding:0 24px;}
.eyebrow{font-family:ui-monospace,'SFMono-Regular',Consolas,monospace;text-transform:uppercase;letter-spacing:.12em;font-size:.7rem;font-weight:600;}
.band-dark .eyebrow{color:var(--violet);}
.band-cream .eyebrow{color:var(--gold-deep);}

/* ---------- AGE / RISK BAR ---------- */
.age-bar{
  background:var(--dark-deep);color:var(--ink-light-dim);font-size:.78rem;text-align:center;
  padding:9px 16px;border-bottom:1px solid rgba(248,246,251,.08);
}
.age-bar strong{color:var(--ink-light);}

/* ---------- BAND BACKGROUNDS ---------- */
.band-dark{background:var(--dark);color:var(--ink-light);}
.band-cream{background:var(--cream);color:var(--ink-dark);}
.band-dark p{color:var(--ink-light-dim);}
.band-cream p{color:var(--ink-dark-dim);}
section{padding:60px 0;}

/* ---------- NAV ---------- */
header{
  position:sticky;top:0;z-index:50;background:rgba(7,3,10,.94);
  backdrop-filter:blur(8px);border-bottom:1px solid rgba(248,246,251,.1);
}
nav.wrap{display:flex;align-items:center;justify-content:space-between;padding:14px 24px;}
.logo{font-weight:700;font-size:1.08rem;color:var(--ink-light);text-decoration:none;display:inline-flex;align-items:center;gap:10px;}
.logo-mark{width:34px;height:34px;flex:none;border-radius:8px;}
.logo span{color:var(--violet);}
.nav-links{display:flex;gap:20px;font-size:.86rem;font-weight:500;}
.nav-links a{text-decoration:none;color:var(--ink-light-dim);transition:color .2s;}
.nav-links a:hover,.nav-links a[aria-current="page"]{color:var(--violet);}
.nav-cta{
  background:var(--violet);color:var(--ink-light);padding:9px 18px;border-radius:999px;
  font-weight:600;font-size:.84rem;text-decoration:none;white-space:nowrap;
}
@media (max-width:820px){ .nav-links{display:none;} }

/* ---------- HERO ---------- */
.hero{padding:56px 0 48px;}
.hero-grid{display:grid;grid-template-columns:1.1fr .9fr;gap:52px;align-items:center;}
@media (max-width:920px){ .hero-grid{grid-template-columns:1fr;} }
.hero h1{font-size:clamp(1.9rem,4vw,2.7rem);}
.hero p.lede{font-size:1.02rem;max-width:54ch;margin:16px 0 26px;}
.page-hero{padding:48px 0 36px;text-align:center;}
.page-hero h1{font-size:clamp(1.7rem,3.6vw,2.4rem);max-width:28ch;margin:0 auto .5em;}
.page-hero p.lede{font-size:1rem;max-width:64ch;margin:0 auto;}

.cta-row{display:flex;gap:12px;flex-wrap:wrap;}
.cta-pair{display:flex;gap:12px;flex-wrap:wrap;justify-content:center;}
.btn-primary{
  background:var(--violet);color:var(--ink-light);font-weight:700;padding:14px 26px;border-radius:999px;
  text-decoration:none;font-size:.96rem;display:inline-flex;align-items:center;justify-content:center;border:none;cursor:pointer;
}
.btn-secondary{
  border:1.5px solid rgba(248,246,251,.28);color:var(--ink-light);background:rgba(248,246,251,.04);
  padding:13px 24px;border-radius:999px;text-decoration:none;font-weight:600;font-size:.96rem;
}
.band-cream .btn-secondary{border-color:rgba(14,5,19,.22);color:var(--ink-dark);background:rgba(14,5,19,.03);}
.step-strip{display:flex;gap:22px;flex-wrap:wrap;margin-top:30px;font-size:.86rem;}
.step-strip span{display:flex;align-items:center;gap:8px;color:var(--ink-light-dim);}
.step-strip b{color:var(--violet);font-family:ui-monospace,'SFMono-Regular',Consolas,monospace;font-weight:700;}

.hero-visual{
  border-radius:var(--radius);overflow:hidden;border:1px solid rgba(248,246,251,.12);
  background:var(--dark-card);padding:26px;text-align:center;
}
.hero-visual img{max-width:160px;margin:0 auto 18px;border-radius:12px;}
.hero-callout{display:flex;gap:12px;text-align:left;padding:12px 14px;border-radius:12px;background:rgba(248,246,251,.05);margin-bottom:10px;}
.hero-callout:last-child{margin-bottom:0;}
.hero-callout .mark{font-size:1.1rem;flex:none;}
.hero-callout h4{margin:0 0 2px;font-size:.88rem;color:var(--ink-light);}
.hero-callout p{margin:0;font-size:.8rem;color:var(--ink-light-dim);}

/* ---------- QUICK NAV CHIPS ---------- */
.chip-nav{display:flex;flex-wrap:wrap;gap:10px;justify-content:center;margin-top:34px;}
.chip-nav a{
  border:1px solid rgba(248,246,251,.18);border-radius:999px;padding:8px 16px;font-size:.82rem;font-weight:500;
  color:var(--ink-light-dim);text-decoration:none;
}
.chip-nav a:hover{color:var(--violet);border-color:var(--violet);}

/* ---------- SECTION HEAD ---------- */
.section-head{max-width:640px;margin:0 auto 38px;text-align:center;}
.section-head.tight{margin-bottom:26px;}
.section-head h2{font-size:clamp(1.4rem,2.8vw,1.9rem);}

/* ---------- STEPS ---------- */
.steps{display:grid;grid-template-columns:repeat(3,1fr);gap:20px;}
@media (max-width:820px){ .steps{grid-template-columns:1fr;} }
.step{background:var(--dark-card);border:1px solid rgba(248,246,251,.12);border-radius:var(--radius);padding:24px 22px;}
.step .num{font-family:ui-monospace,'SFMono-Regular',Consolas,monospace;font-weight:700;color:var(--violet);font-size:1.3rem;}
.step .glyph{font-size:1.3rem;margin:8px 0;}
.step h3{font-size:1.02rem;margin:6px 0 8px;color:var(--ink-light);}
.step p{margin:0;color:var(--ink-light-dim)!important;font-size:.9rem;}

.notice{
  background:rgba(212,159,67,.1);border:1px solid rgba(212,159,67,.35);border-radius:var(--radius);
  padding:18px 22px;max-width:820px;margin:30px auto 0;font-size:.9rem;color:var(--ink-light-dim);
}
.notice strong{color:var(--gold);}

/* ---------- TROUBLESHOOT LIST ---------- */
.trouble-grid{display:grid;grid-template-columns:1.1fr .9fr;gap:32px;align-items:start;}
@media (max-width:880px){ .trouble-grid{grid-template-columns:1fr;} }
.trouble-list{list-style:none;margin:0;padding:0;}
.trouble-list li{display:flex;gap:14px;padding:16px 0;border-bottom:1px solid rgba(14,5,19,.08);}
.trouble-list li:last-child{border-bottom:none;}
.trouble-list .n{font-family:ui-monospace,'SFMono-Regular',Consolas,monospace;font-weight:700;color:var(--gold-deep);flex:none;}
.trouble-list h4{margin:0 0 4px;font-size:.98rem;color:var(--ink-dark);}
.trouble-list p{margin:0;font-size:.88rem;}

.checklist-card{background:var(--dark-card);border:1px solid rgba(248,246,251,.14);border-radius:var(--radius);padding:24px;}
.checklist-card h3{font-size:.78rem;text-transform:uppercase;letter-spacing:.1em;color:var(--violet);font-family:ui-monospace,'SFMono-Regular',Consolas,monospace;margin:0 0 16px;}
.check-list{list-style:none;margin:0 0 20px;padding:0;}
.check-list li{padding:9px 0 9px 26px;position:relative;font-size:.92rem;color:var(--ink-light);}
.check-list li::before{content:"✓";position:absolute;left:0;color:var(--violet);font-weight:800;}
.check-list p{margin:2px 0 0 0;font-size:.78rem;color:var(--ink-light-dim)!important;}
.checklist-card img{border-radius:10px;margin-top:6px;}

/* ---------- MOBILE TIPS ---------- */
.mobile-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:20px;}
@media (max-width:820px){ .mobile-grid{grid-template-columns:1fr;} }
.mobile-card{padding:20px;border-radius:var(--radius);background:var(--dark-card);border:1px solid rgba(248,246,251,.12);}
.mobile-card .num{font-family:ui-monospace,'SFMono-Regular',Consolas,monospace;font-weight:700;color:var(--violet);font-size:.8rem;}
.mobile-card h3{font-size:.98rem;margin:8px 0 6px;color:var(--ink-light);}
.mobile-card p{font-size:.88rem;color:var(--ink-light-dim)!important;margin:0;}

/* ---------- EDUCATION CARDS ---------- */
.edu-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:20px;margin-top:32px;}
@media (max-width:820px){ .edu-grid{grid-template-columns:1fr;} }
.edu-card{padding:22px;border-radius:var(--radius);background:var(--cream-card);border:1px solid rgba(14,5,19,.1);box-shadow:0 8px 22px rgba(14,5,19,.06);}
.edu-card .tag{font-family:ui-monospace,'SFMono-Regular',Consolas,monospace;font-size:.72rem;font-weight:700;color:var(--violet-deep);letter-spacing:.06em;}
.edu-card h3{font-size:1rem;margin:8px 0 6px;color:var(--ink-dark);}
.edu-card p{font-size:.88rem;margin:0;}

/* ---------- CARD (generic) ---------- */
.card{background:var(--dark-card);border:1px solid rgba(248,246,251,.12);border-radius:var(--radius);padding:30px 34px;}
.band-cream .card{background:var(--cream-card);border-color:rgba(14,5,19,.1);box-shadow:0 8px 22px rgba(14,5,19,.06);}
.card h2:first-child,.card h3:first-child{margin-top:0;}
.card strong{color:var(--violet);}
.band-cream .card strong{color:var(--violet-deep);}

/* ---------- FAQ ---------- */
.faq{max-width:760px;margin:0 auto;}
details{background:var(--dark-card);border:1px solid rgba(248,246,251,.12);border-radius:14px;padding:16px 20px;margin-bottom:12px;}
.band-cream details{background:var(--cream-card);border-color:rgba(14,5,19,.1);}
summary{cursor:pointer;font-weight:600;color:var(--ink-light);font-size:1rem;list-style:none;display:flex;justify-content:space-between;align-items:center;gap:16px;}
.band-cream summary{color:var(--ink-dark);}
summary::-webkit-details-marker{display:none;}
summary::after{content:"+";color:var(--violet);font-size:1.3rem;font-weight:400;}
.band-cream summary::after{color:var(--violet-deep);}
details[open] summary::after{content:"–";}
details p{color:var(--ink-light-dim)!important;margin:12px 0 2px;font-size:.92rem;}
.band-cream details p{color:var(--ink-dark-dim)!important;}

/* ---------- CHECK GRID (legal pages) ---------- */
.check-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:10px 24px;list-style:none;margin:16px 0 0;padding:0;}
@media (max-width:640px){ .check-grid{grid-template-columns:1fr;} }
.check-grid li{font-size:.92rem;padding:4px 0 4px 24px;position:relative;}
.check-grid li::before{content:"✓";position:absolute;left:0;color:var(--violet);font-weight:800;}
.band-cream .check-grid li::before{color:var(--violet-deep);}

/* ---------- CLOSING CTA ---------- */
.final-cta{text-align:center;}
.final-cta h2{font-size:clamp(1.4rem,3vw,2rem);}
.final-cta p{max-width:52ch;margin:0 auto 22px;}

/* ---------- PROSE / LEGAL ---------- */
.prose h2{font-size:1.3rem;margin-top:1.6em;}
.prose h2:first-child{margin-top:0;}
.prose h3{font-size:1.05rem;margin-top:1.3em;}
.prose ul,.prose ol{padding-left:1.3em;}
.prose li{margin:6px 0;}
.updated-note{font-family:ui-monospace,'SFMono-Regular',Consolas,monospace;font-size:.72rem;color:var(--ink-light-dim);margin-bottom:8px;}

/* ---------- CONTACT FORM ---------- */
.contact-grid{display:grid;grid-template-columns:1fr 1fr;gap:26px;}
@media (max-width:760px){ .contact-grid{grid-template-columns:1fr;} }
.form-field{margin-bottom:16px;}
.form-field label{display:block;font-size:.84rem;font-weight:600;margin-bottom:6px;color:var(--ink-light);}
.form-field input,.form-field textarea{
  width:100%;padding:11px 14px;border-radius:10px;border:1px solid rgba(248,246,251,.2);
  background:rgba(248,246,251,.06);color:var(--ink-light);font-family:system-ui,-apple-system,'Segoe UI',sans-serif;font-size:.94rem;
}
.form-field input::placeholder,.form-field textarea::placeholder{color:var(--ink-light-dim);}
.form-field textarea{min-height:110px;resize:vertical;}
.contact-method{display:flex;gap:14px;align-items:flex-start;padding:16px;background:var(--dark-card);border:1px solid rgba(248,246,251,.12);border-radius:var(--radius);margin-bottom:14px;}
.contact-method h3{font-size:.92rem;margin:0 0 4px;color:var(--ink-light);}
.contact-method p{font-size:.86rem;margin:0;color:var(--ink-light-dim)!important;}
.form-note{font-size:.8rem;color:var(--ink-light-dim);margin-top:10px;}

/* ---------- FOOTER ---------- */
footer{padding:36px 0 26px;font-size:.8rem;color:var(--ink-light-dim);background:var(--dark-deep);}
footer .legal{max-width:800px;margin:0 auto;text-align:center;}
footer .legal strong{color:var(--violet);}
footer .foot-columns{display:grid;grid-template-columns:repeat(3,1fr);gap:22px;text-align:left;max-width:1120px;margin:0 auto 24px;}
@media (max-width:700px){ footer .foot-columns{grid-template-columns:1fr 1fr;} }
footer .foot-columns h4{text-transform:uppercase;letter-spacing:.06em;color:var(--ink-light);font-size:.82rem;margin:0 0 10px;font-family:ui-monospace,'SFMono-Regular',Consolas,monospace;}
footer .foot-columns ul{list-style:none;margin:0;padding:0;}
footer .foot-columns li{margin-bottom:7px;}
footer .foot-columns a{text-decoration:none;color:var(--ink-light-dim);font-size:.84rem;}
footer .foot-columns a:hover{color:var(--violet);}

:root{--violet:#C26BFF;--violet-deep:#7110B5;--gold-deep:#76551A}
.nav-cta,.btn-primary{background:var(--violet-deep)}.edu-card p{color:var(--ink-dark-dim)!important}
.band-cream .notice{color:var(--ink-dark-dim)}.band-cream .notice strong{color:#76551A}
.hero-callout .callout-title,.trouble-list h3{font-size:.98rem;margin:0 0 4px}.hero-callout .callout-title{font-size:.88rem;color:var(--ink-light);font-weight:700}
.foot-columns h2{font-size:.82rem;text-transform:uppercase;letter-spacing:.06em;color:var(--ink-light);font-family:ui-monospace,'SFMono-Regular',Consolas,monospace;margin:0 0 10px}
.content-figure{max-width:1024px;margin:0 auto 36px}.content-figure img{width:100%;height:auto;border-radius:16px;border:1px solid rgba(14,5,19,.14)}
.content-figure figcaption{font-size:.82rem;color:var(--ink-dark-dim);margin-top:10px;text-align:center}.warning-figure{margin-top:28px}.warning-figure figcaption{text-align:left}
.breadcrumbs{font-size:.8rem;color:var(--ink-light-dim);margin-bottom:20px}.breadcrumbs a{color:inherit}
.topic-section{padding:26px 0 44px}.article-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}
.article-card,.related-card{background:#fff;border:1px solid rgba(14,5,19,.1);border-radius:14px;padding:20px;color:var(--ink-dark)}
.article-card h3{font-size:1rem}.article-card p,.related-card span{font-size:.86rem;color:var(--ink-dark-dim)}
.article-card>a,.article-card h3 a{color:var(--violet-deep)}.related-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:12px;margin:18px 0}
.related-card{text-decoration:none;display:flex;flex-direction:column;gap:8px}.cluster-links{display:flex;flex-wrap:wrap;gap:10px;justify-content:center}
.cluster-links a{border:1px solid rgba(14,5,19,.18);padding:9px 14px;border-radius:999px;text-decoration:none}.center-link{text-align:center;margin-top:24px}
@media(max-width:820px){.article-grid{grid-template-columns:1fr 1fr}}@media(max-width:560px){.article-grid,.related-grid{grid-template-columns:1fr}}
