/* JuicyBet — base layer: page frame, typography, layout shell, aurora. */

html { scroll-behavior: smooth; }
body {
    font-family: var(--font-body);
    font-size: var(--fs-base);
    line-height: var(--lh-body);
    color: var(--fg-100);
    background: var(--bg-000);
    -webkit-font-smoothing: antialiased;
    overflow-x: hidden;
    position: relative;
}

/* aurora background blobs */
.aurora { position: fixed; inset: 0; z-index: 0; pointer-events: none; overflow: hidden; }
.aurora span {
    position: absolute; border-radius: 50%; filter: blur(90px); opacity: .32;
    animation: drift 22s var(--ease) infinite alternate;
}
.aurora span:nth-child(1) { width: 46vw; height: 46vw; left: -8vw; top: -10vw; background: var(--accent); }
.aurora span:nth-child(2) { width: 40vw; height: 40vw; right: -6vw; top: 18vh; background: var(--accent-2); animation-delay: -7s; }
.aurora span:nth-child(3) { width: 34vw; height: 34vw; left: 30vw; bottom: -16vw; background: var(--accent-3); opacity: .18; animation-delay: -13s; }

h1,h2,h3,h4 { font-family: var(--font-display); color: var(--fg-000); line-height: var(--lh-snug); font-weight: 800; }
a { color: var(--accent-2); text-decoration: none; }
a:hover { text-decoration: underline; text-underline-offset: 3px; }
.mono { font-family: var(--font-mono); }
strong, b { color: var(--fg-000); }
em { font-style: normal; color: var(--accent); }

.eyebrow {
    display: inline-block; font-family: var(--font-mono); font-size: var(--fs-xs);
    letter-spacing: .18em; text-transform: uppercase; color: var(--accent-2);
    padding: 4px 10px; border: 1px solid var(--accent-line); border-radius: var(--r-pill);
    background: var(--cyan-soft);
}

.skip-link {
    position: absolute; left: -9999px; top: 0; z-index: 200;
    background: var(--accent); color: var(--accent-ink); padding: 10px 16px; border-radius: var(--r-sm);
}
.skip-link:focus { left: 8px; top: 8px; }

/* ---- shell layout ---- */
.shell {
    position: relative; z-index: 1;
    display: grid;
    grid-template-columns: var(--rail-w) minmax(0, 1fr) var(--slip-w);
    gap: var(--sp-5);
    max-width: var(--content-max);
    margin: 0 auto;
    padding: var(--sp-5) var(--sp-5) var(--sp-9);
    align-items: start;
}
.shell__main { min-width: 0; }
.container { max-width: var(--content-max); margin: 0 auto; padding: 0 var(--sp-5); }

.section { margin-top: var(--sp-7); }
.section__head { display: flex; align-items: center; justify-content: space-between; gap: var(--sp-4); margin-bottom: var(--sp-4); flex-wrap: wrap; }
.section__title { font-size: var(--fs-lg); }

.card {
    background: linear-gradient(180deg, var(--bg-100), var(--bg-050));
    border: 1px solid var(--bg-300);
    border-radius: var(--r-lg);
    box-shadow: var(--sh-2);
}

.page-foot-note { margin-top: var(--sp-6); color: var(--fg-300); font-size: var(--fs-sm); }

@media (max-width: 1080px) {
    .shell { grid-template-columns: minmax(0,1fr); }
    .rail, .betslip { display: none; }
}

/* ===== inline icons ===== */
.ic { display: inline-block; vertical-align: -0.15em; flex: none; }
.rail__link .ico .ic, .rail__link .ic { width: 1.25em; height: 1.25em; }
