
:root{
  --bg:#060719;
  --panel:#0d1028;
  --panel-2:#111636;
  --text:#fff;
  --muted:#b9c1dc;
  --pink:#ff3ea5;
  --cyan:#00e5ff;
  --purple:#7b3cff;
  --gold:#ffbf3d;
  --green:#23df9c;
  --line:rgba(255,255,255,.13);
  --line-strong:rgba(255,255,255,.24);
  --shadow:0 28px 80px rgba(0,0,0,.42);
}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{
  margin:0;
  overflow-x:hidden;
  color:var(--text);
  font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",Arial,sans-serif;
  background:
    radial-gradient(circle at 12% 6%,rgba(255,62,165,.16),transparent 31%),
    radial-gradient(circle at 84% 8%,rgba(0,229,255,.13),transparent 34%),
    linear-gradient(180deg,#050616 0%,#070a1d 46%,#040512 100%);
  line-height:1.6;
}
a{color:inherit;text-decoration:none;touch-action:manipulation}
img{max-width:100%;display:block}
.container{width:min(1180px,calc(100% - 40px));margin:0 auto}
.site-header{
  position:sticky;top:0;z-index:60;
  padding:10px 0;
  background:linear-gradient(180deg,rgba(5,7,24,.96),rgba(5,7,24,.82));
  backdrop-filter:blur(20px);
  border-bottom:1px solid rgba(255,255,255,.08);
}
.header-inner{
  min-height:64px;
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:18px;
  padding:8px 12px;
  border:1px solid rgba(255,255,255,.13);
  border-radius:22px;
  background:linear-gradient(135deg,rgba(17,22,54,.82),rgba(7,10,29,.66));
  box-shadow:0 18px 44px rgba(0,0,0,.26),inset 0 1px 0 rgba(255,255,255,.08);
}
.logo{
  display:flex;
  align-items:center;
  gap:12px;
  min-width:258px;
  flex-shrink:0;
}
.logo-mark{
  width:54px;height:48px;border-radius:16px;
  display:grid;place-items:center;
  color:#06113d;
  font-size:16px;
  font-weight:1000;
  letter-spacing:-.06em;
  background:linear-gradient(135deg,var(--cyan),var(--purple) 52%,var(--pink));
  box-shadow:0 0 0 1px rgba(255,255,255,.18) inset,0 12px 28px rgba(0,229,255,.2),0 0 34px rgba(255,62,165,.18);
}
.logo-wordmark{
  display:flex;
  flex-direction:column;
  justify-content:center;
  line-height:.96;
  letter-spacing:-.04em;
}
.logo-wordmark span,.logo-wordmark em{
  display:block;
  font-size:20px;
  font-weight:1000;
}
.logo-wordmark span{color:#fff}
.logo-wordmark em{font-style:normal;color:var(--cyan)}
.logo-wordmark small{
  margin-top:5px;
  color:#9ba7cc;
  font-size:10px;
  font-weight:850;
  letter-spacing:.08em;
  text-transform:uppercase;
}
.nav{
  display:flex;
  align-items:center;
  gap:28px;
  padding:0;
  border:0;
  border-radius:0;
  background:transparent;
  box-shadow:none;
}
.nav a{
  padding:8px 0;
  border-radius:0;
  color:#dfe6ff;
  font-size:14px;
  font-weight:900;
  line-height:1;
  opacity:.88;
  white-space:nowrap;
  border-bottom:2px solid transparent;
}
.nav a:hover,.nav a.active{
  color:#fff;
  opacity:1;
  border-bottom-color:var(--cyan);
  background:transparent;
}
.header-actions{display:flex;align-items:center;gap:10px;flex-shrink:0}
.mobile-toggle{
  display:none;
  background:rgba(255,255,255,.05);
  border:1px solid var(--line);
  border-radius:999px;
  color:white;
  padding:10px 13px;
  font-weight:950;
}
.btn{
  display:inline-flex;align-items:center;justify-content:center;gap:10px;
  border-radius:10px;border:1px solid rgba(255,62,165,.55);
  background:linear-gradient(135deg,var(--pink),#db1e85);
  color:white;font-weight:950;padding:13px 22px;
  box-shadow:0 14px 30px rgba(255,62,165,.2);
  text-align:center;cursor:pointer;touch-action:manipulation;
}
.btn:hover{transform:translateY(-1px)}
.btn.alt{background:transparent;box-shadow:none;border-color:rgba(255,255,255,.26)}
.btn.cyan{background:linear-gradient(135deg,#0cd4eb,#0b8bcf);border-color:rgba(0,229,255,.45);box-shadow:0 14px 30px rgba(0,229,255,.18)}
.hero{
  position:relative;overflow:hidden;padding:34px 0 28px;
  border-bottom:1px solid var(--line);
}
.hero:before{
  content:"";position:absolute;inset:0;
  background:
    linear-gradient(90deg,rgba(6,7,25,.98) 0%,rgba(6,7,25,.78) 45%,rgba(6,7,25,.58) 100%),
    radial-gradient(circle at 76% 50%,rgba(255,62,165,.23),transparent 34%);
  pointer-events:none;
}
.hero-grid{position:relative;display:grid;grid-template-columns:1fr .98fr;gap:34px;align-items:center}
.badge{
  display:inline-flex;align-items:center;gap:9px;color:var(--cyan);font-weight:900;font-size:14px;
  padding:7px 13px;border-radius:999px;border:1px solid rgba(0,229,255,.45);
  background:rgba(0,229,255,.06);margin-bottom:18px;
}
.badge:before{content:"✦";color:var(--cyan)}
h1,h2,h3,h4{margin:0;letter-spacing:-.045em;line-height:1.04;text-wrap:balance}
h1{font-size:clamp(38px,5.6vw,72px);max-width:100%;overflow-wrap:normal}
h2{font-size:clamp(30px,4vw,48px)}
h3{font-size:clamp(20px,2.5vw,27px)}
h4{font-size:clamp(16px,1.8vw,19px)}
.gradient-word{color:var(--pink)}
.cyan-word{color:var(--cyan)}
.hero p.lead{font-size:20px;color:#f4f6ff;max-width:660px;margin:18px 0 10px;font-weight:800}
.hero p.sub{color:var(--muted);max-width:650px;margin:0 0 24px}
.disclosure{
  display:inline-flex;align-items:center;gap:10px;margin-top:16px;
  color:#c9d0e7;border:1px solid rgba(255,255,255,.16);background:rgba(255,255,255,.05);
  padding:9px 15px;border-radius:10px;font-size:13px;font-weight:700;
}
.hero-actions{display:flex;flex-wrap:wrap;gap:14px}
.albumza-first-screen{
  margin-top:18px;
  display:grid;
  grid-template-columns:1fr auto;
  gap:16px;
  align-items:center;
  max-width:680px;
  padding:15px;
  border:1px solid rgba(0,229,255,.25);
  border-radius:16px;
  background:linear-gradient(135deg,rgba(0,229,255,.1),rgba(255,62,165,.08));
}
.albumza-first-screen strong{display:block;font-size:18px}
.albumza-first-screen span{display:block;color:var(--muted);font-size:14px;margin-top:3px}
.hero-art{min-height:410px;position:relative}
.cityline{
  position:absolute;inset:auto 0 56px 0;height:180px;opacity:.62;
  background:
    linear-gradient(to top,rgba(0,229,255,.22),transparent),
    repeating-linear-gradient(90deg,transparent 0 32px,rgba(255,62,165,.7) 33px 36px,transparent 37px 52px);
  clip-path:polygon(0 100%,0 75%,4% 75%,4% 55%,8% 55%,8% 84%,13% 84%,13% 42%,16% 42%,16% 100%,22% 100%,22% 65%,26% 65%,26% 35%,30% 35%,30% 78%,34% 78%,34% 58%,39% 58%,39% 100%,45% 100%,45% 46%,48% 46%,48% 74%,52% 74%,52% 62%,57% 62%,57% 100%,63% 100%,63% 52%,68% 52%,68% 30%,71% 30%,71% 84%,76% 84%,76% 62%,81% 62%,81% 100%,88% 100%,88% 45%,92% 45%,92% 75%,100% 75%,100% 100%);
}
#slot-canvas{
  position:absolute;right:28px;top:28px;width:380px;height:280px;border-radius:22px;
  display:block;
}
.slot-machine{
  position:absolute;right:28px;top:28px;width:380px;height:280px;border-radius:30px;
  background:linear-gradient(160deg,#25124d,#0c153b 58%,#061122);
  border:2px solid rgba(0,229,255,.45);
  box-shadow:0 0 0 7px rgba(255,62,165,.08),0 40px 80px rgba(0,0,0,.48),0 0 80px rgba(255,62,165,.27);
}
.slot-machine:before{
  content:"JACKPOT";position:absolute;left:50%;top:-44px;transform:translateX(-50%);
  font-size:30px;font-weight:950;color:#ffd36f;letter-spacing:.06em;
  background:linear-gradient(180deg,#7b250c,#230b20);
  border:3px solid #ffbf3d;border-radius:18px;padding:11px 34px;
  box-shadow:0 0 28px rgba(255,191,61,.45);
}
.slot-window{position:absolute;left:28px;right:28px;top:74px;height:122px;display:grid;grid-template-columns:repeat(3,1fr);gap:12px}
.reel{
  display:grid;place-items:center;border-radius:18px;
  background:linear-gradient(180deg,#fff0b8,#ff9f26 22%,#591229 85%);
  color:#ff233c;font-size:64px;font-weight:950;text-shadow:0 3px #fff,0 8px 14px rgba(0,0,0,.35);
  border:2px solid rgba(255,255,255,.34);
}
.slot-handle{position:absolute;right:-46px;top:82px;width:22px;height:150px;border-radius:999px;background:linear-gradient(180deg,#ff675d,#8b123d)}
.slot-handle:before{content:"";position:absolute;left:50%;top:-30px;transform:translateX(-50%);width:52px;height:52px;border-radius:999px;background:radial-gradient(circle at 35% 30%,#ffb0ce,#ff3e7f 60%,#7d0b3c)}
.coin,.chip,.card-art{position:absolute}
.coin{width:54px;height:54px;border-radius:50%;background:radial-gradient(circle at 30% 25%,#fff4a7,#ffbf3d 55%,#b26912);box-shadow:0 8px 16px rgba(0,0,0,.25)}
.coin:after{content:"$";display:grid;place-items:center;height:100%;font-weight:950;color:#8e520d;font-size:25px}
.coin.c1{left:72px;top:82px}.coin.c2{right:455px;bottom:105px;width:42px;height:42px}.coin.c3{right:50px;bottom:60px;width:48px;height:48px}
.chip{width:68px;height:68px;border-radius:50%;background:repeating-conic-gradient(#40145f 0 14deg,#f2d8ff 14deg 28deg,#40145f 28deg 44deg);box-shadow:0 12px 24px rgba(0,0,0,.28)}
.chip:after{content:"";position:absolute;inset:15px;border-radius:50%;background:#6a28ac}
.chip.p1{left:145px;bottom:46px}.chip.p2{right:18px;bottom:116px;background:repeating-conic-gradient(#075763 0 14deg,#e4ffff 14deg 28deg,#075763 28deg 44deg)}
.card-art{right:166px;bottom:16px;display:flex;gap:8px;transform:rotate(-5deg)}
.card-art span{width:72px;height:104px;background:white;color:#111;border-radius:9px;border:1px solid #ddd;font-size:28px;font-weight:950;padding:9px;box-shadow:0 16px 30px rgba(0,0,0,.35)}
.card-art span:last-child{color:#df123d;transform:rotate(10deg)}
.page-section{padding:38px 0}
.section-head{display:flex;align-items:flex-end;justify-content:space-between;gap:20px;margin-bottom:22px}
.section-head p{color:var(--muted);max-width:650px;margin:8px 0 0}
.card-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:16px}
.card-grid.three{grid-template-columns:repeat(3,1fr)}
.card-grid.two{grid-template-columns:repeat(2,1fr)}
.info-card{
  background:linear-gradient(180deg,rgba(23,27,66,.88),rgba(12,16,42,.92));
  border:1px solid var(--line);border-radius:16px;padding:22px;
  box-shadow:0 14px 36px rgba(0,0,0,.22);
}
.info-card:hover{border-color:rgba(0,229,255,.3)}
.icon{
  width:62px;height:62px;border-radius:16px;display:grid;place-items:center;margin-bottom:16px;
  background:linear-gradient(135deg,rgba(0,229,255,.12),rgba(255,62,165,.14));
  color:var(--cyan);font-size:34px;border:1px solid rgba(0,229,255,.28);
}
.info-card p{color:var(--muted);margin:8px 0 13px;font-size:14px}
.text-link{color:var(--cyan);font-weight:950;font-size:14px;cursor:pointer}
.featured{
  background:linear-gradient(135deg,rgba(255,62,165,.14),rgba(0,229,255,.07));
  border:1px solid rgba(255,62,165,.36);border-radius:18px;padding:20px;
  display:grid;grid-template-columns:1fr 1fr 220px;gap:22px;align-items:center
}
.featured .brand-letter{
  width:78px;height:78px;border-radius:18px;display:grid;place-items:center;
  font-size:54px;font-weight:950;background:linear-gradient(135deg,#9d3cff,#ff3ea5);margin-right:14px
}
.flex{display:flex;align-items:center;gap:15px}
.rating{color:var(--gold);font-weight:950;white-space:nowrap}
.feature-list{display:grid;gap:8px;color:#dce2ff;font-size:14px}
.feature-list span:before{content:"✓";color:var(--green);margin-right:8px;font-weight:950}
.table-wrap{overflow:auto;border:1px solid var(--line);border-radius:16px;background:rgba(10,14,37,.8)}
table{width:100%;border-collapse:collapse;min-width:760px}
th,td{padding:15px 16px;border-bottom:1px solid rgba(255,255,255,.09);border-right:1px solid rgba(255,255,255,.08);font-size:14px;text-align:left}
th{background:linear-gradient(135deg,rgba(126,60,255,.56),rgba(255,62,165,.24));font-size:12px;text-transform:uppercase;letter-spacing:.04em}
tr:last-child td{border-bottom:0}
td.good{color:#afffe7}
td.warn{color:#ffcf75}
.review-source-grid{display:grid;grid-template-columns:1fr 1fr;gap:18px}
.source-card{background:linear-gradient(180deg,rgba(17,22,54,.95),rgba(10,13,34,.96));border:1px solid var(--line);border-radius:18px;padding:18px}
.source-head{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-bottom:13px}
.source-logo{display:flex;align-items:center;gap:10px;font-weight:950;font-size:20px}
.source-logo .star{color:#00b67a;font-size:28px}.source-logo .reddit{color:#ff4500;font-size:28px}
.review-item{border:1px solid rgba(255,255,255,.1);background:rgba(255,255,255,.04);border-radius:12px;padding:15px;margin-top:11px}
.review-meta{display:flex;align-items:center;justify-content:space-between;gap:10px;color:#8992b3;font-size:12px;margin-bottom:8px}
.stars{color:var(--gold);letter-spacing:1px}
.review-title{font-weight:950;margin-bottom:5px}
.review-item p{color:#d7def3;margin:0;font-size:14px}
.review-screenshot{margin-top:12px;background:#fff;border-radius:14px;overflow:hidden;border:1px solid rgba(255,255,255,.12);box-shadow:0 18px 38px rgba(0,0,0,.32)}
.review-screenshot img{width:100%;height:auto}
.source-actions{display:flex;flex-wrap:wrap;gap:10px;margin-top:14px}
.source-actions .text-link{display:inline-flex;align-items:center;gap:6px;padding:9px 11px;border:1px solid rgba(0,229,255,.25);border-radius:10px;background:rgba(0,229,255,.06)}
.caption-note{margin-top:9px;color:#98a2c2;font-size:12px;line-height:1.45}
.stat-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:16px}
.stat-card{text-align:center;padding:25px 16px;background:rgba(255,255,255,.04);border:1px solid var(--line);border-radius:16px}
.stat-card .icon{margin:0 auto 13px}
.stat-card strong{display:block;color:var(--pink);font-size:24px;margin-top:15px}
.feedback-list{display:grid;gap:12px}
.feedback-row{
  display:grid;grid-template-columns:300px 1fr;gap:18px;align-items:center;
  border:1px solid var(--line);border-radius:14px;padding:14px;background:rgba(255,255,255,.04)
}
.feedback-left{display:flex;align-items:center;gap:14px}
.feedback-icon{width:52px;height:52px;border-radius:50%;display:grid;place-items:center;background:rgba(255,62,165,.12);color:var(--cyan);font-size:27px;border:1px solid rgba(0,229,255,.22)}
.quote-box{background:rgba(255,62,165,.08);border:1px solid rgba(255,62,165,.17);border-radius:12px;padding:13px;color:#f3eaff;font-style:italic}
.step-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:14px}
.step-num{display:inline-grid;place-items:center;width:28px;height:28px;border-radius:50%;background:linear-gradient(135deg,var(--purple),var(--pink));font-weight:950;margin-bottom:10px}
.alt-layout{display:grid;grid-template-columns:1fr 280px;gap:22px}
.side-panel{background:rgba(255,255,255,.05);border:1px solid var(--line);border-radius:18px;padding:22px}
.side-panel ul{list-style:none;margin:0;padding:0;display:grid;gap:18px}
.side-panel li{display:flex;gap:12px;color:#dfe5ff}
.side-panel li:before{content:"✦";color:var(--pink);font-weight:950}
.footer{border-top:1px solid var(--line);padding:34px 0 26px;margin-top:20px;background:rgba(4,5,18,.7)}
.footer-grid{display:grid;grid-template-columns:1.5fr 1fr 1.15fr;gap:24px}
.footer p,.footer a{color:var(--muted);font-size:14px}
.footer h4{font-size:15px;margin-bottom:10px}
.footer-links{display:grid;gap:8px}
.footer-bottom{margin-top:26px;padding-top:18px;border-top:1px solid var(--line);color:#939bb7;font-size:13px}
@media(max-width:1040px){
  .nav{gap:18px}
  .nav a{font-size:13px;padding:8px 0}
  .logo{min-width:218px}
  .logo-wordmark small{display:none}
  .featured{grid-template-columns:1fr}
}
@media(max-width:860px){
  .container{width:min(100% - 30px,1180px)}
  .mobile-toggle{display:inline-flex}
  .nav{
    display:none;position:absolute;left:15px;right:15px;top:92px;
    background:#090b23;border:1px solid var(--line);border-radius:16px;padding:12px;
    flex-direction:column;align-items:stretch;gap:6px;box-shadow:var(--shadow)
  }
  .nav.open{display:flex}
  .nav a{padding:12px 13px;border-radius:12px;border-bottom:0;background:transparent}
  .nav a:hover,.nav a.active{background:rgba(0,229,255,.1);border-bottom:0}
  .header-actions .btn{padding:11px 14px}
  .hero{padding:24px 0 22px}
  .hero-grid{grid-template-columns:1fr;gap:20px}
  .hero-art{display:none}
  h1{font-size:clamp(34px,9.6vw,48px)}
  .hero p.lead{font-size:18px}
  .albumza-first-screen{grid-template-columns:1fr}
  .albumza-first-screen .btn{width:100%}
  .card-grid,.card-grid.three,.stat-grid,.step-grid{grid-template-columns:1fr 1fr}
  .alt-layout,.review-source-grid,.feedback-row{grid-template-columns:1fr}
  .section-head{display:block}
  .footer-grid{grid-template-columns:1fr 1fr}
}
@media(max-width:560px){
  .container{width:min(100% - 24px,1180px)}
  .site-header{padding:6px 0}
  .header-inner{min-height:58px;padding:7px 8px;border-radius:16px}
  .logo{min-width:auto;max-width:145px;gap:8px;flex:1 1 auto}
  .logo-mark{width:39px;height:35px;border-radius:11px;font-size:11px;flex:0 0 39px}
  .logo-wordmark span,.logo-wordmark em{font-size:13px}
  .logo-wordmark small{display:none}
  .header-actions{gap:6px}
  .header-actions .btn{font-size:11px;padding:8px 9px;white-space:nowrap}
  .mobile-toggle{font-size:11px;padding:8px 9px}
  .nav{top:82px}
  .badge{font-size:12px;white-space:normal}
  h1{font-size:clamp(32px,11vw,42px);line-height:1.02}
  h2{font-size:31px}
  .hero-actions .btn{width:100%}
  .disclosure{font-size:12px;align-items:flex-start}
  .card-grid,.card-grid.three,.card-grid.two,.stat-grid,.step-grid{grid-template-columns:1fr}
  .page-section{padding:28px 0}
  table{min-width:650px}
  th,td{padding:12px 11px;font-size:13px}
  .featured .flex{align-items:flex-start}
  .featured .brand-letter{width:60px;height:60px;font-size:42px}
  .source-head{align-items:flex-start;flex-direction:column}
  .review-meta{align-items:flex-start;flex-direction:column;gap:3px}
  .footer-grid{grid-template-columns:1fr}
  .footer-bottom{display:block}
}

.table-wrap::-webkit-scrollbar{height:8px}
.table-wrap::-webkit-scrollbar-thumb{background:rgba(0,229,255,.35);border-radius:999px}

/* Editorial guide pages */
.article-hero{padding:30px 0 24px}
.breadcrumb{display:flex;flex-wrap:wrap;gap:8px;align-items:center;margin:0 0 16px;color:#9ea8c8;font-size:13px;font-weight:750}
.breadcrumb a{color:var(--cyan)}
.article-hero h1{font-size:clamp(36px,5vw,64px)}
.article-layout{display:grid;grid-template-columns:minmax(0,1fr) 300px;gap:24px;align-items:start}
.article-body{display:grid;gap:18px}
.content-panel,.toc,.fact-box,.source-note,.faq-item{
  background:linear-gradient(180deg,rgba(17,22,54,.9),rgba(10,13,34,.94));
  border:1px solid var(--line);border-radius:16px;padding:22px;
}
.content-panel h2{font-size:clamp(26px,3vw,38px);margin-bottom:12px}
.content-panel h3{font-size:22px;margin:22px 0 8px}
.content-panel p,.content-panel li,.fact-box p,.source-note p,.faq-item p{color:var(--muted)}
.content-panel p{margin:0 0 13px}
.content-panel p:last-child{margin-bottom:0}
.content-panel ul,.content-panel ol{margin:10px 0 0;padding-left:22px}
.content-panel li+li{margin-top:8px}
.toc{position:sticky;top:108px}
.toc h2{font-size:19px;margin-bottom:12px}
.toc-links{display:grid;gap:8px}
.toc-links a{color:#dfe5ff;font-size:14px;font-weight:800;padding:7px 9px;border-radius:8px}
.toc-links a:hover{color:var(--cyan);background:rgba(0,229,255,.07)}
.fact-box{border-color:rgba(0,229,255,.3);background:linear-gradient(135deg,rgba(0,229,255,.09),rgba(123,60,255,.08))}
.fact-box strong{display:block;color:var(--cyan);margin-bottom:6px}
.source-note{font-size:13px;border-color:rgba(255,191,61,.3)}
.source-note strong{color:var(--gold)}
.related-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:14px}
.related-grid .info-card{height:100%}
.faq-list{display:grid;gap:12px}
.faq-item h2,.faq-item h3{font-size:20px;margin-bottom:8px}
.comparison-list{display:grid;grid-template-columns:1fr 1fr;gap:14px}
.comparison-list>div{border:1px solid var(--line);border-radius:14px;padding:18px;background:rgba(255,255,255,.035)}
.comparison-list strong{display:block;color:var(--cyan);margin-bottom:7px}
.topic-art{min-height:300px;display:grid;place-items:center;position:relative}
.topic-art:before{content:"";position:absolute;width:240px;height:240px;border-radius:50%;background:radial-gradient(circle,rgba(255,62,165,.32),rgba(123,60,255,.16) 48%,transparent 70%);filter:blur(2px)}
.topic-mark{position:relative;width:170px;height:170px;border-radius:38px;display:grid;place-items:center;text-align:center;padding:18px;background:linear-gradient(145deg,rgba(0,229,255,.18),rgba(123,60,255,.7),rgba(255,62,165,.42));border:1px solid rgba(255,255,255,.27);box-shadow:0 28px 70px rgba(0,0,0,.42),0 0 60px rgba(255,62,165,.2);font-size:25px;font-weight:1000;line-height:1.05}
.all-guides{display:grid;grid-template-columns:repeat(2,1fr);gap:10px}
.all-guides a{padding:11px 12px;border:1px solid var(--line);border-radius:10px;color:#dfe5ff;background:rgba(255,255,255,.035);font-size:13px;font-weight:800}
.all-guides a:hover{border-color:rgba(0,229,255,.35);color:var(--cyan)}
@media(max-width:860px){
  .article-layout{grid-template-columns:1fr}
  .toc{position:static;order:-1}
  .related-grid{grid-template-columns:1fr 1fr}
}
@media(max-width:560px){
  .comparison-list,.related-grid,.all-guides{grid-template-columns:1fr}
  .content-panel,.toc,.fact-box,.source-note,.faq-item{padding:18px}
}

/* ============================================================
   ANIMATIONS & MICRO-INTERACTIONS
   ============================================================ */

/* --- Animated background orbs --- */
body::before,body::after{
  content:"";position:fixed;border-radius:50%;pointer-events:none;z-index:0;
  filter:blur(80px);opacity:.18;
  animation:orbDrift 22s ease-in-out infinite alternate;
}
body::before{
  width:600px;height:600px;
  background:radial-gradient(circle,var(--pink),transparent 70%);
  top:-200px;left:-100px;
  animation-delay:0s;
}
body::after{
  width:500px;height:500px;
  background:radial-gradient(circle,var(--cyan),transparent 70%);
  bottom:-150px;right:-80px;
  animation-delay:-11s;
}
@keyframes orbDrift{
  0%{transform:translate(0,0) scale(1)}
  50%{transform:translate(60px,40px) scale(1.1)}
  100%{transform:translate(-30px,70px) scale(0.95)}
}

/* Orbs sit behind everything */
body::before,body::after{z-index:-1}

/* Scroll anchor offset — accounts for sticky header */
[id]{scroll-margin-top:104px}
.anchor-target{display:block;position:relative;top:-104px;visibility:hidden;height:0;overflow:hidden}

/* Focus-visible: keyboard navigation ring */
:focus-visible{
  outline:2px solid var(--cyan);
  outline-offset:3px;
  border-radius:6px;
}
:focus:not(:focus-visible){outline:none}

/* Table: add icon prefix so quality is not conveyed by color alone */
td.good::before{content:"✓ ";color:var(--green);font-weight:950}
td.warn::before{content:"⚠ ";color:var(--gold);font-weight:950}

/* --- Hero entrance sequence --- */
.hero-grid > div:first-child > *{
  opacity:0;
  transform:translateY(22px);
  animation:heroFadeUp .7s cubic-bezier(.22,1,.36,1) forwards;
}
.hero-grid > div:first-child .badge        { animation-delay:.08s }
.hero-grid > div:first-child h1            { animation-delay:.18s }
.hero-grid > div:first-child p.lead        { animation-delay:.28s }
.hero-grid > div:first-child p.sub         { animation-delay:.35s }
.hero-grid > div:first-child .hero-actions { animation-delay:.42s }
.hero-grid > div:first-child .albumza-first-screen { animation-delay:.50s }
.hero-grid > div:first-child .disclosure   { animation-delay:.56s }
@keyframes heroFadeUp{
  to{opacity:1;transform:translateY(0)}
}

/* --- Slot machine: spinning reels --- */
@keyframes reelSpin{
  0%{transform:translateY(0)}
  100%{transform:translateY(-300%)}
}
.slot-machine{animation:slotGlow 3s ease-in-out infinite alternate}
@keyframes slotGlow{
  0%{box-shadow:0 0 0 7px rgba(255,62,165,.08),0 40px 80px rgba(0,0,0,.48),0 0 80px rgba(255,62,165,.27)}
  100%{box-shadow:0 0 0 7px rgba(255,62,165,.18),0 40px 80px rgba(0,0,0,.48),0 0 120px rgba(255,62,165,.5)}
}
.reel{
  overflow:hidden;
  animation:reelBounce 1.6s cubic-bezier(.34,1.56,.64,1) both;
}
.reel:nth-child(1){animation-delay:.2s}
.reel:nth-child(2){animation-delay:.4s}
.reel:nth-child(3){animation-delay:.6s}
@keyframes reelBounce{
  0%{transform:scaleY(0.3);opacity:0}
  60%{transform:scaleY(1.08)}
  100%{transform:scaleY(1);opacity:1}
}

/* --- Slot handle wiggle --- */
.slot-handle{
  transform-origin:top center;
  animation:handlePull 4s ease-in-out 1.2s infinite;
}
@keyframes handlePull{
  0%,80%,100%{transform:rotate(0deg)}
  85%{transform:rotate(18deg)}
  92%{transform:rotate(-6deg)}
  96%{transform:rotate(8deg)}
}

/* --- Floating coins --- */
.coin{animation:coinFloat linear infinite}
.coin.c1{animation-duration:3.8s;animation-delay:0s}
.coin.c2{animation-duration:4.5s;animation-delay:-.9s}
.coin.c3{animation-duration:3.2s;animation-delay:-1.6s}
@keyframes coinFloat{
  0%,100%{transform:translateY(0) rotate(0deg)}
  30%{transform:translateY(-14px) rotate(12deg)}
  60%{transform:translateY(-7px) rotate(-8deg)}
}

/* --- Casino chips & cards: simple fade-in (reduced from spin to limit concurrent animations) --- */
.chip.p1,.chip.p2,.card-art{animation:fadeIn .7s ease .8s both}
@keyframes fadeIn{
  from{opacity:0}
  to{opacity:1}
}

/* --- Badge pulse — use filter (GPU-composited) instead of box-shadow --- */
.badge{animation:badgePulse 3s ease-in-out infinite}
@keyframes badgePulse{
  0%,100%{filter:drop-shadow(0 0 0px rgba(0,229,255,0))}
  50%{filter:drop-shadow(0 0 8px rgba(0,229,255,.45))}
}

/* --- Buttons: shimmer + press --- */
.btn{
  position:relative;overflow:hidden;
  transition:transform .15s cubic-bezier(.34,1.56,.64,1),box-shadow .2s ease;
}
.btn::after{
  content:"";position:absolute;inset:0;
  background:linear-gradient(105deg,transparent 40%,rgba(255,255,255,.18) 50%,transparent 60%);
  transform:translateX(-100%);
  transition:transform .4s ease;
  pointer-events:none;
}
.btn:hover::after{transform:translateX(100%)}
.btn:hover{transform:translateY(-3px) scale(1.03)}
.btn:active{transform:translateY(0) scale(.96)}

/* --- Info cards: lift on hover --- */
.info-card{
  transition:transform .22s cubic-bezier(.34,1.56,.64,1),
             box-shadow .22s ease,
             border-color .22s ease;
}
.info-card:hover{
  transform:translateY(-5px);
  border-color:rgba(0,229,255,.45);
  box-shadow:0 24px 48px rgba(0,0,0,.35),0 0 24px rgba(0,229,255,.1);
}

/* --- Icon bounce on card hover --- */
.info-card:hover .icon{animation:iconPop .35s cubic-bezier(.34,1.56,.64,1)}
@keyframes iconPop{
  0%{transform:scale(1)}
  50%{transform:scale(1.18)}
  100%{transform:scale(1)}
}

/* --- Featured block: animated glow border --- */
.featured{
  animation:featuredGlow 4s ease-in-out infinite alternate;
  transition:transform .2s ease;
}
.featured:hover{transform:translateY(-2px)}
@keyframes featuredGlow{
  0%{box-shadow:0 0 30px rgba(255,62,165,.12),0 14px 40px rgba(0,0,0,.3)}
  100%{box-shadow:0 0 60px rgba(255,62,165,.28),0 14px 40px rgba(0,0,0,.3),0 0 0 1px rgba(255,62,165,.18)}
}

/* --- Rating stars shimmer --- */
.rating{
  background:linear-gradient(90deg,var(--gold) 0%,#fff 48%,var(--gold) 100%);
  background-size:200% auto;
  -webkit-background-clip:text;
  -webkit-text-fill-color:transparent;
  background-clip:text;
  animation:starShimmer 2.5s linear infinite;
}
@keyframes starShimmer{
  0%{background-position:0% center}
  100%{background-position:200% center}
}

/* --- Table row hover --- */
tbody tr{transition:background .15s ease}
tbody tr:hover{background:rgba(0,229,255,.06)}
tbody tr:hover td.good{color:#7fffd4}

/* --- Scroll reveal system --- */
.reveal{
  opacity:0;
  transform:translateY(28px);
  transition:opacity .6s cubic-bezier(.22,1,.36,1),
             transform .6s cubic-bezier(.22,1,.36,1);
}
.reveal.visible{opacity:1;transform:translateY(0)}
.reveal-left{opacity:0;transform:translateX(-28px);transition:opacity .6s cubic-bezier(.22,1,.36,1),transform .6s cubic-bezier(.22,1,.36,1)}
.reveal-left.visible{opacity:1;transform:translateX(0)}
.reveal-right{opacity:0;transform:translateX(28px);transition:opacity .6s cubic-bezier(.22,1,.36,1),transform .6s cubic-bezier(.22,1,.36,1)}
.reveal-right.visible{opacity:1;transform:translateX(0)}

/* Stagger children of a parent with data-stagger */
[data-stagger] .reveal:nth-child(1){transition-delay:.0s}
[data-stagger] .reveal:nth-child(2){transition-delay:.1s}
[data-stagger] .reveal:nth-child(3){transition-delay:.2s}
[data-stagger] .reveal:nth-child(4){transition-delay:.3s}

/* --- Reduced motion: respect user preference --- */
@media(prefers-reduced-motion:reduce){
  *,*::before,*::after{
    animation-duration:.01ms !important;
    animation-iteration-count:1 !important;
    transition-duration:.01ms !important;
  }
}


/* Mobile polish added after comparison-page rename */
@media(max-width:420px){
  .container{width:min(100% - 20px,1180px)}
  .header-inner{gap:6px;padding:6px 7px}
  .logo{max-width:126px}
  .logo-wordmark span,.logo-wordmark em{font-size:12px;letter-spacing:-.045em}
  .header-actions .btn{font-size:10.5px;padding:8px 8px}
  .mobile-toggle{font-size:10.5px;padding:8px 8px}
  .hero{padding:20px 0 20px}
  .hero p.lead{font-size:16px;line-height:1.45}
  .hero p.sub{font-size:14.5px;line-height:1.62}
  .albumza-first-screen{padding:13px}
  .badge{font-size:11.5px;padding:7px 10px}
}

@media(max-width:360px){
  .logo{max-width:112px}
  .logo-mark{width:32px;height:32px;flex-basis:32px}
  .logo-wordmark span,.logo-wordmark em{font-size:11px}
  .header-actions{gap:5px}
  .header-actions .btn{font-size:10px;padding:7px 7px}
  .mobile-toggle{font-size:10px;padding:7px 7px}
  h1{font-size:31px}
}

/* ============================================================
   SHARED SITE NAVIGATION AND COMPLETE FOOTER
   ============================================================ */
.nav{gap:10px}
.nav-direct,.nav-heading{
  display:flex;align-items:center;min-height:38px;padding:9px 10px!important;
  border:0!important;border-radius:9px!important;
}
.nav-group{position:relative}
.nav-group-head{display:flex;align-items:center}
.nav-submenu-toggle{
  width:28px;height:38px;display:grid;place-items:center;margin-left:-5px;
  border:0;border-radius:8px;background:transparent;color:#aeb8d8;
  font:900 13px/1 Inter,ui-sans-serif,system-ui;cursor:pointer;
}
.nav-submenu-toggle:hover,.nav-submenu-toggle:focus-visible{color:var(--cyan);background:rgba(0,229,255,.08)}
.nav-dropdown{
  position:absolute;left:0;top:calc(100% + 9px);z-index:80;
  width:260px;padding:9px;display:grid;gap:3px;
  border:1px solid rgba(255,255,255,.17);border-radius:14px;
  background:linear-gradient(180deg,rgba(14,18,47,.99),rgba(7,10,29,.99));
  box-shadow:0 24px 58px rgba(0,0,0,.48);
  opacity:0;visibility:hidden;transform:translateY(-7px);
  transition:opacity .16s ease,transform .16s ease,visibility .16s;
}
.nav-dropdown a{
  padding:11px 12px!important;border:0!important;border-radius:9px!important;
  color:#dce3fb;font-size:13px;line-height:1.25;white-space:normal;
}
.nav-dropdown a:hover,.nav-dropdown a:focus-visible,.nav-dropdown a.active{
  color:#fff;background:linear-gradient(90deg,rgba(0,229,255,.12),rgba(255,62,165,.1));
}
.nav-group.active>.nav-group-head .nav-heading,.nav-direct.active{color:#fff;background:rgba(0,229,255,.08);box-shadow:inset 0 -2px var(--cyan)}
@media(min-width:861px){
  .nav-group:after{content:"";position:absolute;left:0;right:0;top:100%;height:12px}
  .nav-group:hover .nav-dropdown,.nav-group:focus-within .nav-dropdown{
    opacity:1;visibility:visible;transform:translateY(0)
  }
}
.footer-grid{grid-template-columns:1.35fr .8fr 1fr 1fr}
.footer-brand .logo{margin-bottom:14px}
.footer-brand p{max-width:320px;margin:0 0 11px}
.footer-disclosure{font-size:12px!important;color:#8f99bc!important}
.footer-links a:hover{color:var(--cyan)}
.footer-bottom{display:flex;justify-content:space-between;gap:18px;flex-wrap:wrap}
.breadcrumb [aria-current="page"]{color:#dce3fb}
.state-grid{
  display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:9px 14px;
  margin:18px 0 24px;padding:0;list-style:none;
}
.state-grid li{
  position:relative;margin:0;padding:10px 12px 10px 34px;
  border:1px solid rgba(255,255,255,.1);border-radius:10px;
  background:rgba(255,255,255,.035);color:#dce3fb;
}
.state-grid li:before{
  content:"✓";position:absolute;left:12px;top:10px;color:var(--cyan);font-weight:900;
}

@media(max-width:1040px){
  .nav{gap:3px}
  .nav-direct,.nav-heading{padding:8px 7px!important;font-size:12px!important}
  .nav-submenu-toggle{width:23px}
  .footer-grid{grid-template-columns:1.2fr 1fr 1fr}
  .footer-brand{grid-column:1/-1}
}
@media(max-width:860px){
  .nav{gap:5px}
  .nav-direct,.nav-heading{padding:12px 13px!important;font-size:13px!important;flex:1}
  .nav-group-head{width:100%}
  .nav-submenu-toggle{width:44px;height:40px;margin:0;border:1px solid rgba(255,255,255,.1)}
  .nav-submenu-toggle span{transition:transform .16s ease}
  .nav-group.open .nav-submenu-toggle span{transform:rotate(180deg)}
  .nav-dropdown{
    position:static;width:auto;margin:4px 0 7px 12px;padding:5px;
    opacity:1;visibility:visible;transform:none;display:none;
    border-radius:11px;box-shadow:none;background:rgba(255,255,255,.035)
  }
  .nav-group.open .nav-dropdown{display:grid}
  .nav-dropdown a{padding:10px 12px!important}
  .footer-grid{grid-template-columns:1fr 1fr}
  .footer-brand{grid-column:1/-1}
  .state-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
}
@media(max-width:560px){
  .footer-grid{grid-template-columns:1fr}
  .footer-brand{grid-column:auto}
  .state-grid{grid-template-columns:1fr}
}
