/* Layout: night-sky one-pager; the game is the hero, everything else is a short stack below it */
:root{
  --space:#07060a;
  --space-2:#110e15;
  --line:#2a2216;
  --gold:#f7b928;
  --gold-hi:#ffe08a;
  --gold-deep:#b9770e;
  --mars:#e0612a;
  --ink:#f6efe1;
  --muted:#a89a80;
  --f-display:"Bowlby One","Arial Black",Impact,sans-serif;
  --f-body:"Manrope",system-ui,-apple-system,"Segoe UI",sans-serif;
  --f-mono:"JetBrains Mono",ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;
  color-scheme:dark;
}
*{box-sizing:border-box}
[hidden]{display:none!important}
html{scroll-behavior:smooth;background:var(--space);overflow-x:clip}
body{margin:0;background:var(--space);color:var(--ink);font:400 16px/1.6 var(--f-body);overflow-x:clip}
img{max-width:100%;display:block}
a{color:inherit}
button,input{font:inherit}
:focus-visible{outline:2px solid var(--gold-hi);outline-offset:3px;border-radius:6px}
#sky{position:fixed;inset:0;width:100%;height:100%;z-index:0;pointer-events:none}
.wrap{position:relative;z-index:1;max-width:1200px;margin:0 auto;padding-left:max(16px,env(safe-area-inset-left,0px));padding-right:max(16px,env(safe-area-inset-right,0px))}

/* nav */
.nav{position:sticky;top:0;z-index:20;background:rgba(7,6,10,.92);border-bottom:1px solid var(--line);padding-top:env(safe-area-inset-top,0px)}
.nav .wrap{display:flex;align-items:center;justify-content:space-between;gap:16px;padding-block:12px}
.brand{display:flex;align-items:center;gap:10px;text-decoration:none;font-family:var(--f-display);font-size:20px;letter-spacing:.02em}
.mini{width:36px;height:36px;border-radius:50%;overflow:hidden;box-shadow:0 0 18px rgba(255,122,48,.55);flex:none}
.mini img{width:100%;height:100%;object-fit:cover;transform:scale(1.24) translateY(1.8%)}
.brand small{font-family:var(--f-mono);font-size:11px;color:var(--gold);border:1px solid var(--line);padding:2px 6px;border-radius:4px;letter-spacing:.08em}
.links{display:flex;gap:22px;align-items:center}
.btn.pump-btn{gap:0}
.pump-btn svg{width:18px;height:18px;flex:none;margin-right:8px}
@media (max-width:420px){.brand small,.pump-btn .xs-hide{display:none}.brand{font-size:18px}}
.links > a:not(.btn){text-decoration:none;font-weight:600;font-size:14px;color:var(--muted)}
.links > a:not(.btn):hover{color:var(--gold-hi)}
@media (max-width:760px){.links > a:not(.btn){display:none}}

.btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;font:800 15px/1 var(--f-body);text-decoration:none;padding:14px 22px;border-radius:999px;border:0;cursor:pointer;transition:transform .15s ease,box-shadow .2s ease,background .2s,color .2s}
.btn-gold{background:linear-gradient(180deg,var(--gold-hi),var(--gold) 45%,var(--gold-deep));color:#1d1204;box-shadow:0 8px 30px -8px rgba(247,185,40,.7),inset 0 1px 0 rgba(255,255,255,.6)}
.btn-gold:hover{transform:translateY(-2px);box-shadow:0 14px 40px -8px rgba(247,185,40,.9),inset 0 1px 0 rgba(255,255,255,.6)}
.btn-ghost{background:transparent;color:var(--ink);box-shadow:inset 0 0 0 1px var(--line)}
.btn-ghost:hover{box-shadow:inset 0 0 0 1px var(--gold);color:var(--gold-hi)}
.btn-sm{padding:10px 16px;font-size:14px}
.btn svg{width:18px;height:18px}
.btn:disabled{opacity:.5;cursor:default;transform:none}

/* hero */
.hero{position:relative;z-index:1;padding-block:72px 40px}
@media (max-width:920px){.hero{padding-block:36px 24px}}
.hero .wrap{display:grid;grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr);grid-template-areas:"head game" "body game";column-gap:56px;row-gap:0;align-content:center}
.hero-head{grid-area:head;align-self:end;min-width:0}
.hero-body{grid-area:body;align-self:start;min-width:0}
.hero .game{grid-area:game;align-self:center}
@media (max-width:920px){
  .hero .wrap{grid-template-columns:minmax(0,1fr);grid-template-areas:"head" "game" "body";row-gap:22px}
  .hero-head,.hero-body{text-align:center}
}
.eyebrow{font-family:var(--f-mono);font-size:12px;letter-spacing:.18em;text-transform:uppercase;color:var(--gold)}
h1{font-family:var(--f-display);font-weight:400;font-size:clamp(42px,7.2vw,92px);line-height:1.06;margin:10px 0 18px;letter-spacing:-.005em}
h1 span{display:inline-block}
.sr-only{position:absolute!important;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}
h1 .h1-art{display:inline}
.doge-word{white-space:nowrap}
/* the coin replaces the "o": sized to the o of Bowlby One (0.77em advance, sits on the baseline) */
.o-coin{width:.68em;height:.68em;margin:0 .045em 0 .04em;vertical-align:-.04em;perspective:4em;transition:transform .45s cubic-bezier(.2,.8,.2,1),filter .45s ease;-webkit-tap-highlight-color:transparent}
@media (hover:hover){.o-coin:hover{transform:scale(1.1);filter:brightness(1.08) drop-shadow(0 0 .1em rgba(255,150,80,.6))}}
.o-coin img{display:block;width:100%;height:100%;border-radius:50%;filter:drop-shadow(0 0 .07em rgba(255,120,50,.6));animation:coinIdle 9s ease-in-out 1.2s infinite;transform-origin:50% 50%;backface-visibility:visible;will-change:transform}
@keyframes coinIdle{0%,84%{transform:rotateY(0)}100%{transform:rotateY(360deg)}}

.eyebrow a{color:inherit;text-decoration:none;border-bottom:1px solid rgba(247,185,40,.5)}
.eyebrow a:hover{color:var(--gold-hi);border-color:var(--gold-hi)}
@media (max-width:920px){h1{margin-bottom:6px}}
.gold{background:linear-gradient(180deg,var(--gold-hi) 10%,var(--gold) 55%,var(--gold-deep));-webkit-background-clip:text;background-clip:text;color:transparent}
.mars-t{background:linear-gradient(180deg,#ffb27a,var(--mars) 60%,#8f2a0c);-webkit-background-clip:text;background-clip:text;color:transparent}
.lede{font-size:clamp(16px,1.8vw,18px);color:var(--muted);max-width:46ch;margin:0 0 24px}
@media (max-width:920px){.lede{margin-inline:auto}}
.cta-row{display:flex;flex-wrap:wrap;gap:10px}
@media (max-width:920px){.cta-row{justify-content:center}}

.ca{margin:0 0 22px;background:linear-gradient(180deg,var(--space-2),var(--space));border:1px solid var(--line);border-radius:16px;padding:12px 12px 12px 16px;display:flex;align-items:center;gap:12px;max-width:560px;text-align:left}
@media (max-width:920px){.ca{margin-inline:auto}}
.ca-body{min-width:0;flex:1}
.ca-label{font-family:var(--f-mono);font-size:11px;color:var(--muted);letter-spacing:.12em}
.ca{container-type:inline-size}
.ca-addr{font-family:var(--f-mono);font-size:clamp(11px,1.3vw,14px);font-size:clamp(10px,calc((100cqw - 90px) / 26.6),14px);font-weight:500;word-break:break-all;line-height:1.45}
.ca-addr .hl{color:var(--gold);font-weight:700;text-shadow:0 0 14px rgba(247,185,40,.6)}
.copy{flex:none;width:44px;height:44px;border-radius:12px;border:1px solid var(--line);background:var(--space-2);color:var(--gold);cursor:pointer;display:grid;place-items:center;transition:.2s}
.copy:hover{border-color:var(--gold);background:#1c1508}
.copy svg{width:20px;height:20px}

/* game */
.game{position:relative;width:100%;aspect-ratio:4/5;max-width:min(560px,calc((100vh - 120px) * .8));max-width:min(560px,calc((100svh - 120px) * .8));margin-inline:auto;-webkit-touch-callout:none;border-radius:26px;overflow:hidden;border:1px solid #3a2c14;background:#050407;box-shadow:0 0 0 6px rgba(247,185,40,.05),0 40px 100px -30px rgba(247,185,40,.35);touch-action:manipulation;user-select:none;-webkit-user-select:none;-webkit-tap-highlight-color:transparent;cursor:pointer}
.game:focus{outline:none}
.game{container-type:inline-size}
@media (max-width:920px){.game{max-width:min(500px,calc((100vh - 110px) * .8));max-width:min(500px,calc((100svh - 110px) * .8))}}
@media (max-width:560px){.game{aspect-ratio:3/4;border-radius:20px;max-width:min(100%,calc((100vh - 250px) * .75));max-width:min(100%,calc((100svh - 250px) * .75))}}
/* phones held sideways: text left, game right, everything on one screen */
@media (orientation:landscape) and (max-height:520px) and (min-width:600px){
  .hero{padding-block:14px 10px}
  .hero .wrap{grid-template-columns:minmax(0,1fr) auto;grid-template-areas:"head game" "body game";column-gap:28px;row-gap:0}
  .hero-head,.hero-body{text-align:left}
  h1{font-size:clamp(32px,5.4vw,44px);margin:6px 0 12px}
  .hero .lede{display:none}
  .hero .ca{margin-inline:0;margin-bottom:12px}
  .hero .cta-row{justify-content:flex-start}
  .panel .meta,.newbest{display:none}
  .panel .big{font-size:36px;margin:0 0 8px}
  .status{margin:4px 0 6px;min-height:0;font-size:12px}
  .submit-row input,.submit-row .btn,.panel .again{padding-block:9px}
  .hero .game{aspect-ratio:4/5;width:calc((100vh - 90px) * .8);width:calc((100svh - 90px) * .8);max-width:none;border-radius:18px}
  .hero .game.tall{aspect-ratio:5/7;width:calc((100vh - 84px) * .714);width:calc((100svh - 84px) * .714)}
  .hero .game.wide{aspect-ratio:4/3;width:calc((100vh - 84px) * 1.333);width:calc((100svh - 84px) * 1.333)}
  .touch-pad{padding:8px}
  .touch-pad button{width:56px;height:56px}
  .game .panel .newbest,.game .panel .lbl,.game .panel .chase{display:none !important}
  .game .panel{padding:12px}
}
.game canvas{position:absolute;inset:0;width:100%;height:100%;display:block}
.hud{position:absolute;top:16px;left:0;right:0;text-align:center;pointer-events:none}
.hud-score{font-family:var(--f-display);font-size:clamp(36px,7vw,64px);font-size:clamp(34px,12cqw,64px);line-height:1;color:var(--ink);text-shadow:0 4px 0 rgba(0,0,0,.5),0 0 30px rgba(247,185,40,.5);font-variant-numeric:tabular-nums}
.hud-score.pop{animation:pop .25s ease}
@keyframes pop{40%{transform:scale(1.25);color:var(--gold-hi)}}
.hud-km{font-family:var(--f-mono);font-size:12px;color:var(--gold);letter-spacing:.12em;margin-top:4px}
.mute{position:absolute;top:12px;right:12px;width:40px;height:40px;border-radius:12px;border:1px solid rgba(255,224,138,.2);background:rgba(7,6,10,.55);color:var(--gold);display:grid;place-items:center;cursor:pointer;z-index:3}
.mute svg{width:18px;height:18px}
.milestone{position:absolute;left:50%;top:30%;max-width:92%;transform:translate(-50%,-10px);opacity:0;pointer-events:none;font-family:var(--f-display);font-size:clamp(18px,3vw,26px);color:var(--gold-hi);text-align:center;white-space:nowrap;text-shadow:0 0 24px rgba(247,185,40,.8),0 3px 0 rgba(0,0,0,.6);transition:opacity .4s,transform .4s}
.milestone small{display:block;font-family:var(--f-mono);font-size:11px;letter-spacing:.16em;color:var(--muted);text-shadow:none}
.milestone.on{opacity:1;transform:translate(-50%,0)}

.overlay{position:absolute;inset:0;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;padding:24px;padding:clamp(10px,5cqw,24px);z-index:2}
.ov-ready{pointer-events:none;justify-content:flex-end;padding-bottom:12%}
.ov-ready .t{font-family:var(--f-display);font-size:clamp(24px,5vw,46px);font-size:clamp(22px,9cqw,46px);line-height:.95;text-shadow:0 0 30px rgba(247,185,40,.5)}
.ov-ready .hint{margin-top:12px;font-family:var(--f-mono);font-size:12px;letter-spacing:.14em;color:var(--gold);animation:blink 1.4s ease-in-out infinite}
.ov-ready .best{margin-top:8px;font-size:13px;color:var(--muted)}
.game.tall .ov-ready{justify-content:flex-start;padding:28% 16px 0;background:radial-gradient(75% 20% at 50% 37%,rgba(5,4,8,.6),rgba(5,4,8,0))}
.game.wide .ov-ready{justify-content:flex-start;padding:15% 16px 0;background:radial-gradient(80% 26% at 50% 24%,rgba(5,4,8,.82),rgba(5,4,8,0))}
@keyframes blink{50%{opacity:.35}}
.ov-dead{z-index:4;background:rgba(5,4,7,.55);backdrop-filter:blur(3px);-webkit-backdrop-filter:blur(3px);cursor:default}
.panel{width:min(340px,100%);max-height:100%;overflow:auto;background:linear-gradient(180deg,#16110a,#0b0908);border:1px solid #4a3714;border-radius:20px;padding:22px;padding:clamp(12px,5cqw,22px);box-shadow:0 30px 60px -20px rgba(0,0,0,.8),0 0 40px rgba(247,185,40,.15)}
.panel .lbl{font-family:var(--f-mono);font-size:11px;letter-spacing:.16em;color:var(--muted);text-transform:uppercase}
.panel .big{font-family:var(--f-display);font-size:64px;font-size:clamp(40px,16cqw,64px);line-height:1;color:var(--gold-hi);margin:4px 0 2px;font-variant-numeric:tabular-nums}
.panel .meta{font-size:13px;color:var(--muted);margin-bottom:16px;margin-bottom:clamp(8px,4cqw,16px)}
.panel .meta b{color:var(--ink)}
.chase{font-size:13px;font-weight:700;color:var(--gold-hi);margin:-6px 0 14px;line-height:1.4}
.chase span{color:var(--muted);font-weight:600}
.newbest{display:inline-block;font-family:var(--f-mono);font-size:11px;letter-spacing:.12em;background:var(--gold);color:#1d1204;border-radius:999px;padding:3px 10px;margin-bottom:10px}
.submit-row{display:flex;gap:8px}
@container (max-width:300px){.submit-row{flex-direction:column}.submit-row .btn{width:100%}.newbest{margin-bottom:4px}.panel .lbl{font-size:10px}}
.submit-row input{flex:1;min-width:0;background:#07060a;border:1px solid var(--line);border-radius:12px;color:var(--ink);padding:12px 14px;font-weight:600}
.submit-row input:focus{border-color:var(--gold);outline:none}
.submit-row .btn{padding:12px 16px}
.status{min-height:1.5em;font-size:13px;color:var(--muted);margin:8px 0 12px}
.status.ok{color:var(--gold-hi)}
.status.err{color:#ff8a65}
.panel .again{width:100%}

/* marquee */
.marquee{position:relative;z-index:1;background:linear-gradient(90deg,var(--gold-deep),var(--gold),var(--gold-deep));color:#1d1204;overflow:hidden;transform:rotate(-1.2deg);margin-block:34px}
.marquee-track{display:flex;width:max-content;animation:slide 30s linear infinite;font-family:var(--f-display);font-size:20px;padding-block:11px}
.marquee-track span{padding-inline:20px;white-space:nowrap}
@keyframes slide{to{transform:translateX(-50%)}}
body.playing .marquee-track{animation-play-state:paused}

section{position:relative;z-index:1;padding-block:56px;scroll-margin-top:72px}
h2{font-family:var(--f-display);font-weight:400;font-size:clamp(32px,4.6vw,52px);line-height:.95;margin:8px 0 0;text-wrap:balance}

/* board + chart */
.split{display:grid;grid-template-columns:minmax(0,360px) minmax(0,1fr);gap:28px;align-items:stretch}
.board-card{display:flex;flex-direction:column;min-width:0}
.board-card .board{flex:1;align-content:start}
.board.paged{min-height:calc(10 * 42px + 9 * 4px)}
.pager{display:flex;align-items:center;gap:8px;margin-top:14px;padding-top:14px;border-top:1px solid var(--line)}
.pager button{height:36px;min-width:36px;padding:0 10px;border-radius:10px;border:1px solid var(--line);background:var(--space-2);color:var(--ink);font:700 14px var(--f-body);cursor:pointer;transition:.2s}
.pager button:hover:not(:disabled){border-color:var(--gold);color:var(--gold-hi)}
.pager button:disabled{opacity:.35;cursor:default}
.pager .pg-info{font-family:var(--f-mono);font-size:12px;color:var(--muted);letter-spacing:.06em;font-variant-numeric:tabular-nums}
.pager .pg-me{margin-left:auto;color:var(--gold)}
@media (max-width:920px){.split{grid-template-columns:minmax(0,1fr)}}
.card{background:linear-gradient(180deg,var(--space-2),var(--space));border:1px solid var(--line);border-radius:20px;padding:20px}
.board-head{display:flex;justify-content:space-between;align-items:baseline;gap:12px;margin-bottom:12px}
.board-head h3{font-family:var(--f-display);font-weight:400;font-size:24px;margin:0}
.board-head span{font-family:var(--f-mono);font-size:11px;color:var(--muted);letter-spacing:.1em}
.board{list-style:none;margin:0;padding:0;display:grid;gap:4px}
.board li{display:grid;grid-template-columns:38px minmax(0,1fr) auto;gap:10px;align-items:center;height:42px;padding:0 10px;border-radius:10px;font-variant-numeric:tabular-nums}
.board li:nth-child(odd){background:rgba(255,224,138,.03)}
.board .rk{font-family:var(--f-mono);font-size:13px;color:var(--muted);text-align:center}
.board li.r1 .rk{color:#1d1204;background:var(--gold);border-radius:6px;font-weight:700;padding-block:2px}
.board li.r2 .rk{color:var(--gold-hi);font-weight:700}
.board li.r3 .rk{color:var(--gold);font-weight:700}
.board .nm{font-weight:600;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.board .sc{font-family:var(--f-mono);font-weight:700;color:var(--gold)}
.board li.me{box-shadow:inset 0 0 0 1px var(--gold-deep)}
.board li.empty-row{display:block}
.board .empty{display:block;color:var(--muted);font-size:14px;padding:12px 4px}
.board-foot{margin-top:14px;font-size:13px;color:var(--muted)}
.pager[hidden] + .board-foot{margin-top:auto;padding-top:14px}
.board-foot a{color:var(--gold)}
.chart-box{border-radius:20px;overflow:hidden;border:1px solid var(--line);background:#0b0a0d}
.chart-box iframe{display:block;width:100%;height:min(70vh,560px);min-height:380px;border:0}
.dex-stats{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));border-bottom:1px solid var(--line)}
.dex-stats div{padding:12px 16px;border-right:1px solid var(--line);min-width:0}
.dex-stats div:last-child{border-right:0}
.dex-stats span{display:block;font-family:var(--f-mono);font-size:10px;letter-spacing:.14em;color:var(--muted);text-transform:uppercase}
.dex-stats b{display:block;font-family:var(--f-mono);font-size:clamp(14px,1.6vw,17px);color:var(--ink);font-variant-numeric:tabular-nums;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.dex-stats b sub{font-size:.7em}
.dex-stats .up{color:#7be08a}.dex-stats .down{color:#ff8a65}
@media (max-width:560px){.dex-stats{grid-template-columns:repeat(2,minmax(0,1fr))}.dex-stats div:nth-child(2){border-right:0}.dex-stats div:nth-child(-n+2){border-bottom:1px solid var(--line)}}
.nchart{position:relative}
.nchart-bar{display:flex;align-items:center;gap:6px;padding:10px 12px;border-bottom:1px solid var(--line);flex-wrap:wrap}
.nchart-bar button{height:32px;min-width:44px;padding:0 10px;border-radius:9px;border:1px solid var(--line);background:transparent;color:var(--muted);font:700 13px var(--f-mono);cursor:pointer}
.nchart-bar .auto-btn{color:var(--gold)}
.nchart-bar button[aria-pressed="true"]{background:var(--gold);border-color:var(--gold);color:#1d1204}
.nchart-bar .src{margin-left:auto;font-family:var(--f-mono);font-size:10px;letter-spacing:.12em;color:var(--muted);text-transform:uppercase;display:flex;align-items:center;gap:6px}
.nchart-bar .live{width:7px;height:7px;border-radius:50%;background:#3fcf8e;box-shadow:0 0 8px #3fcf8e}
@media (max-width:440px){.nchart-bar{gap:5px;padding:8px}.nchart-bar button{min-width:0;padding:0 9px}.nchart-bar .src{display:none}}
.nchart-el{height:min(62vh,500px);min-height:340px;width:100%}
.nchart-foot{display:flex;justify-content:space-between;gap:12px;flex-wrap:wrap;padding:8px 12px;border-top:1px solid var(--line);font-size:11px;color:var(--muted)}
.nchart-foot a{color:var(--muted)}
.chart-wait .btn{margin-top:4px}
.chart-wait{display:grid;place-items:center;align-content:center;gap:14px;text-align:center;padding:48px 20px;min-height:380px;color:var(--muted)}
.chart-wait p{margin:0;max-width:40ch}
.spin{width:28px;height:28px;border-radius:50%;border:3px solid var(--line);border-top-color:var(--gold);animation:spin .9s linear infinite}
@keyframes spin{to{transform:rotate(360deg)}}
.chart-head{display:flex;justify-content:space-between;align-items:end;gap:16px;flex-wrap:wrap;margin-bottom:16px}


/* buy */
.steps{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px;margin-top:26px;counter-reset:s}
@media (max-width:960px){.steps{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media (max-width:520px){.steps{grid-template-columns:minmax(0,1fr)}}
.step{border-top:2px solid var(--gold);padding-top:14px}
.step::before{counter-increment:s;content:"0" counter(s);font-family:var(--f-mono);font-size:12px;color:var(--gold);letter-spacing:.1em}
.step h3{font-family:var(--f-display);font-weight:400;font-size:21px;margin:6px 0 4px}
.step p{margin:0;color:var(--muted);font-size:15px}

footer{position:relative;z-index:1;border-top:1px solid var(--line);padding-block:36px calc(36px + env(safe-area-inset-bottom,0px))}
footer .wrap{display:flex;flex-wrap:wrap;gap:20px;justify-content:space-between;align-items:center}
footer p{margin:0;color:var(--muted);font-size:13px;max-width:64ch}
.socials{display:flex;gap:10px}
.socials a{width:44px;height:44px;border-radius:12px;border:1px solid var(--line);display:grid;place-items:center;transition:.2s}
.socials a:hover{border-color:var(--gold);color:var(--gold)}
.socials svg{width:20px;height:20px}

.toast{position:fixed;left:50%;bottom:calc(24px + env(safe-area-inset-bottom,0px));transform:translate(-50%,30px);opacity:0;background:var(--gold);color:#1d1204;font-weight:800;padding:12px 20px;border-radius:999px;z-index:50;transition:.3s;pointer-events:none}
.toast.on{opacity:1;transform:translate(-50%,0)}

@media (prefers-reduced-motion:reduce){
  .marquee-track,.ov-ready .hint,.o-coin img{animation:none}
  .o-coin{transition:none}
  html{scroll-behavior:auto}
}

/* ===================== multi-game additions ===================== */
/* nav: Games menu (works on desktop and phones) */
.games-menu{position:relative}
.games-toggle{display:inline-flex;align-items:center;gap:6px;height:40px;padding:0 14px;border-radius:999px;border:1px solid var(--line);background:rgba(17,14,21,.8);color:var(--ink);font:800 14px var(--f-body);cursor:pointer;transition:.2s}
.games-toggle:hover,.games-menu.open .games-toggle{border-color:var(--gold);color:var(--gold-hi)}
.games-toggle svg{width:14px;height:14px;transition:transform .2s}
.games-menu.open .games-toggle svg{transform:rotate(180deg)}
.games-drop{position:absolute;right:0;top:calc(100% + 10px);width:290px;max-width:calc(100vw - 24px);background:linear-gradient(180deg,#17120b,#0b0908);border:1px solid #4a3714;border-radius:18px;padding:8px;box-shadow:0 30px 60px -20px rgba(0,0,0,.85),0 0 40px rgba(247,185,40,.12);opacity:0;transform:translateY(-6px);pointer-events:none;transition:opacity .18s,transform .18s;z-index:30}
.games-menu.open .games-drop{opacity:1;transform:none;pointer-events:auto}
.games-drop a{display:grid;grid-template-columns:60px minmax(0,1fr);gap:12px;align-items:center;padding:10px;border-radius:12px;text-decoration:none;color:var(--ink)}
.games-drop a:hover,.games-drop a[aria-current="page"]{background:rgba(247,185,40,.08)}
.games-drop a b{display:block;font-family:var(--f-display);font-weight:400;font-size:17px;line-height:1.1}
.games-drop a span{display:block;font-size:12px;color:var(--muted);line-height:1.3}
.games-drop .gi{width:44px;height:44px;border-radius:12px;display:grid;place-items:center;font-size:22px;background:#0a0807;border:1px solid var(--line)}
.games-drop hr{border:0;border-top:1px solid var(--line);margin:6px 4px}
.games-drop .all{display:block;text-align:center;font-size:13px;font-weight:700;color:var(--gold);padding:8px}
@media (max-width:420px){.games-toggle{padding:0 11px;font-size:13px}}

/* hero with game bars */
.hero-home .wrap{grid-template-areas:"head bars" "body bars"}
.hero-home .bars{grid-area:bars;align-self:center;display:grid;gap:14px}
@media (max-width:920px){.hero-home .wrap{grid-template-areas:"head" "bars" "body"}}
.gbar{position:relative;display:grid;grid-template-columns:clamp(96px,26%,150px) minmax(0,1fr) auto;align-items:center;gap:18px;padding:12px 18px 12px 12px;border-radius:22px;background:linear-gradient(180deg,#16110a,#0b0908);border:1px solid #3a2c14;text-decoration:none;color:var(--ink);overflow:hidden;transition:transform .25s cubic-bezier(.2,.8,.2,1),border-color .25s,box-shadow .25s;box-shadow:0 20px 50px -30px rgba(247,185,40,.4)}
.gbar:hover{transform:translateY(-3px);border-color:var(--gold);box-shadow:0 26px 60px -26px rgba(247,185,40,.6)}
.gbar canvas{width:100%;aspect-ratio:4/3;border-radius:14px;display:block;background:#050407}
.gbar .gtxt{min-width:0}
.gbar .gtxt b{display:block;font-family:var(--f-display);font-weight:400;font-size:clamp(20px,2.2vw,26px);line-height:1.05}
.gbar .gtxt span{display:block;font-size:14px;color:var(--muted);margin-top:4px;line-height:1.4}
.gbar .gtxt em{display:inline-block;margin-top:6px;font-style:normal;font-family:var(--f-mono);font-size:11px;letter-spacing:.08em;color:var(--gold)}
.gbar .play{pointer-events:none}
.gbar .new{position:absolute;top:10px;right:12px;font-family:var(--f-mono);font-size:10px;letter-spacing:.12em;background:var(--mars);color:#fff;border-radius:999px;padding:2px 8px}
@media (max-width:560px){
  .gbar{grid-template-columns:96px minmax(0,1fr);gap:12px;padding:10px}
  .gbar .play{grid-column:1 / -1;width:100%;padding:11px}
  .gbar .gtxt span{font-size:13px}
}

/* home: three leaderboards side by side */
.boards3{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px;margin-top:22px}
.board-mini .board-head h3{display:flex;align-items:center;gap:10px}
.board-mini .board-head h3 i{font-style:normal;font-size:20px}
.board-mini .board li{height:38px}
.board-mini .board{min-height:calc(10 * 38px + 9 * 4px)}
.board-mini .play-row{display:flex;gap:8px;margin-top:14px}
.board-mini .play-row .btn{flex:1}
@media (max-width:980px){
  .boards3{display:flex;overflow-x:auto;scroll-snap-type:x mandatory;gap:14px;padding-bottom:6px;margin-inline:calc(-1 * max(16px,env(safe-area-inset-left,0px)));padding-inline:max(16px,env(safe-area-inset-left,0px));scrollbar-width:none}
  .boards3::-webkit-scrollbar{display:none}
  .boards3 > .card{flex:0 0 min(86%,380px);scroll-snap-align:center}
}
.b3-tabs{display:none;gap:8px;margin-top:16px}
@media (max-width:980px){.b3-tabs{display:flex}}
.b3-tabs button{flex:1;height:40px;border-radius:999px;border:1px solid var(--line);background:transparent;color:var(--muted);font:800 13px var(--f-body);cursor:pointer}
.b3-tabs button[aria-pressed="true"]{background:var(--gold);border-color:var(--gold);color:#1d1204}
.chart-wide .chart-box iframe{height:min(72vh,620px)}

/* game pages */
@media (min-width:921px){.gp-hero .wrap{grid-template-columns:minmax(0,.8fr) minmax(0,1.2fr)}}
.howto{display:grid;gap:8px;margin:0 0 22px;padding:0;list-style:none;max-width:46ch}
@media (max-width:920px){.howto{margin-inline:auto;text-align:left}}
.howto li{display:grid;grid-template-columns:auto minmax(0,1fr);gap:10px;align-items:baseline;font-size:15px;color:var(--muted)}
.howto kbd{font-family:var(--f-mono);font-size:12px;color:var(--gold-hi);background:#15110b;border:1px solid var(--line);border-bottom-width:2px;border-radius:7px;padding:2px 8px;white-space:nowrap}
.game.tall{aspect-ratio:5/7;max-width:min(520px,calc((100vh - 120px) * .714));max-width:min(520px,calc((100svh - 120px) * .714))}
@media (max-width:920px){.game.tall{max-width:min(470px,calc((100vh - 110px) * .714));max-width:min(470px,calc((100svh - 110px) * .714))}}
@media (max-width:560px){.game.tall{aspect-ratio:5/7;border-radius:20px;max-width:min(100%,calc((100vh - 200px) * .714));max-width:min(100%,calc((100svh - 200px) * .714))}}
.game.wide{aspect-ratio:4/3;max-width:min(720px,calc((100vh - 120px) * 1.333));max-width:min(720px,calc((100svh - 120px) * 1.333))}
@media (max-width:560px){.game.wide{aspect-ratio:3/4;border-radius:20px;max-width:min(100%,calc((100vh - 200px) * .75));max-width:min(100%,calc((100svh - 200px) * .75))}}
.touch-pad{position:absolute;left:0;right:0;bottom:0;display:none;justify-content:space-between;align-items:flex-end;padding:12px;gap:10px;z-index:3;pointer-events:none}
.touch.playing .touch-pad{display:flex}
.game.playing{touch-action:none}
.touch-pad button{pointer-events:auto;width:68px;height:68px;border-radius:20px;border:1px solid rgba(255,224,138,.25);background:rgba(7,6,10,.45);color:var(--gold-hi);display:grid;place-items:center;font:800 13px var(--f-body);letter-spacing:.06em;touch-action:none;-webkit-user-select:none;user-select:none}
.touch-pad button.on{background:rgba(247,185,40,.3);border-color:var(--gold)}
.touch-pad button svg{width:28px;height:28px}
.touch-pad .mid{width:auto;flex:1;max-width:150px}
.tilt-btn{position:absolute;top:12px;left:12px;height:40px;padding:0 12px;border-radius:12px;border:1px solid rgba(255,224,138,.2);background:rgba(7,6,10,.55);color:var(--gold);font:800 12px var(--f-body);z-index:3;display:none}
.touch .tilt-btn{display:block}
.board-full{max-width:760px;margin-inline:auto}
.more-games{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;margin-top:22px}
@media (max-width:760px){.more-games{grid-template-columns:minmax(0,1fr)}}
#chart,#leaderboards{scroll-margin-top:84px}
@media (max-width:480px){
  .nav .wrap{gap:8px}
  .links{gap:8px}
  .brand{font-size:16px;gap:8px}
  .mini{width:32px;height:32px}
  .games-toggle{height:36px;padding:0 10px;font-size:13px}
  .nav .pump-btn{padding:9px 12px;font-size:13px}
  .pump-btn svg{margin-right:6px}
}
@media (max-width:350px){.brand{font-size:0;gap:0}}
.btn{white-space:nowrap}
@media (max-width:1080px){.links > a:not(.btn){display:none}}
.games-drop{right:auto;left:50%;transform:translate(-50%,-6px)}
.games-menu.open .games-drop{transform:translate(-50%,0)}
@media (max-width:480px){.games-drop{left:auto;right:-90px;transform:translateY(-6px)}.games-menu.open .games-drop{transform:none}}

/* ===== header: brand left, menu in the middle, buy button right ===== */
.nav .wrap{display:grid;grid-template-columns:minmax(0,1fr) auto minmax(0,1fr)}
.nav .brand{justify-self:start}
.nav .pump-btn{justify-self:end}
.links{justify-content:center}
@media (max-width:600px){.nav .wrap{display:flex}}
@media (min-width:1081px){
  .games-toggle{height:auto;padding:8px 0;border:0;border-radius:0;background:none;color:var(--muted);font:600 14px var(--f-body)}
  .games-toggle:hover,.games-menu.open .games-toggle{color:var(--gold-hi)}
}
/* invisible bridge so the menu stays open while the mouse moves down into it */
.games-menu.open::after{content:"";position:absolute;left:-20px;right:-20px;top:100%;height:14px}

.games-drop a b{color:var(--ink)}
.games-drop a:hover b,.games-drop a[aria-current="page"] b{color:var(--gold-hi)}
@media (min-width:1081px){.links > a:not(.btn),.games-toggle{display:inline-flex;align-items:center;height:36px;line-height:1;padding-block:0}}
.game.wide .ov-ready{background:radial-gradient(85% 34% at 50% 26%,rgba(5,4,8,.85),rgba(5,4,8,0))}

/* game thumbnails (real screenshots) in the menu, the homepage boards and the game cards */
.games-drop .gi{width:60px;height:45px;border-radius:10px;overflow:hidden;background:#0a0807;border:1px solid var(--line);display:block}
.gthumb{display:block;width:100%;height:100%;object-fit:cover}
.board-mini .board-head h3 i{display:block;width:48px;height:36px;flex:none;border-radius:9px;overflow:hidden;border:1px solid var(--line);background:#0a0807}
.gbar img.gprev,.gtile img.gprev{display:block;height:auto;object-fit:cover;aspect-ratio:4/3;background:#050407}
.gbar img.gprev{width:100%;border-radius:14px}
.gtile img.gprev{width:64px;border-radius:9px}

/* ===== game pages (desktop): leaderboard | other games + how to play | game on the right ===== */
.gp{position:relative;z-index:1;padding-block:22px 56px}
.gp .wrap{max-width:1320px}
.gp-top{margin-bottom:16px}
.gp-h1{font-size:clamp(28px,3.4vw,40px);line-height:1;margin:0;white-space:nowrap}
.gp-grid{display:grid;gap:20px;grid-template-columns:310px 300px auto;grid-template-areas:"board mid stage";align-items:stretch}
.gp-stage{grid-area:stage;min-width:0}
.gp-mid{grid-area:mid;display:flex;flex-direction:column;gap:20px;min-width:0}
.gp-board{grid-area:board;min-width:0}
.gp .board-full{max-width:none;margin:0}
.gp .game{margin:0;max-width:100%;
  width:min(560px,calc((100vh - 170px) * .8),calc(min(100vw,1320px) - 700px));
  width:min(560px,calc((100svh - 170px) * .8),calc(min(100vw,1320px) - 700px))}
.gp .game.tall{width:min(520px,calc((100vh - 170px) * .714),calc(min(100vw,1320px) - 700px));width:min(520px,calc((100svh - 170px) * .714),calc(min(100vw,1320px) - 700px))}
.gp .game.wide{width:min(720px,calc((100vh - 170px) * 1.333),calc(min(100vw,1320px) - 700px));width:min(720px,calc((100svh - 170px) * 1.333),calc(min(100vw,1320px) - 700px))}
.gp-inner{width:fit-content;max-width:100%;margin-inline:auto}
#boardCard{scroll-margin-top:84px}
.gp-label{font-family:var(--f-mono);font-size:11px;letter-spacing:.16em;text-transform:uppercase;color:var(--gold);margin-bottom:12px}
.gp-games,.gp-how{padding:16px}
.gp-games{display:grid;gap:8px;align-content:start}
.gp-how{flex:1}
.gp-how p{margin:0 0 14px;color:var(--muted);font-size:14px;line-height:1.55}
.gp-how .howto{margin:0;max-width:none;text-align:left;gap:10px}
.gp-how .howto li{font-size:13.5px;line-height:1.45}
/* game tiles */
.gtile{display:grid;grid-template-columns:64px minmax(0,1fr) 16px;align-items:center;gap:12px;padding:8px 10px 8px 8px;border-radius:14px;border:1px solid transparent;background:rgba(255,255,255,.02);text-decoration:none;color:var(--ink);transition:border-color .2s,background .2s,transform .2s}
.gtile:hover{border-color:#5a4216;background:rgba(247,185,40,.05);transform:translateX(2px)}

.gt-txt{min-width:0}
.gt-txt b{display:block;font-family:var(--f-display);font-weight:400;font-size:16px;line-height:1.1;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.gt-txt span{display:block;font-size:12px;color:var(--muted);line-height:1.35;margin-top:4px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.gt-go{width:16px;height:16px;color:var(--muted);transition:color .2s,transform .2s}
.gtile:hover .gt-go{color:var(--gold);transform:translateX(2px)}
.gtile.is-on{border-color:var(--gold);background:linear-gradient(180deg,rgba(247,185,40,.12),rgba(247,185,40,.04));pointer-events:none}
.gtile.is-on .gt-go{visibility:hidden}
.gtile.is-on .gt-txt span{color:var(--gold)}

/* wide game (DogeRun) on big screens: game with the cards under it, leaderboard on the right */
@media (min-width:1180px){
  .gp-grid:has(.game.wide){grid-template-columns:330px auto;grid-template-areas:"board stage" "board mid";align-items:start}
  .gp-grid:has(.game.wide) .gp-mid{flex-direction:row;align-items:stretch;width:0;min-width:100%}
  .gp-grid:has(.game.wide) .gp-mid > .card{flex:1 1 0;min-width:0}
  .gp-grid:has(.game.wide) .gp-board{align-self:stretch}
  .gp .game.wide{width:min(720px,calc((100vh - 170px) * 1.333),calc(min(100vw,1320px) - 420px));width:min(720px,calc((100svh - 170px) * 1.333),calc(min(100vw,1320px) - 420px))}
}
/* wide game (DogeRun) on big screens: game with the cards under it, leaderboard on the right */
@media (min-width:1180px){
  .gp-grid:has(.game.wide){grid-template-columns:330px auto;grid-template-areas:"board stage" "board mid";align-items:start}
  .gp-grid:has(.game.wide) .gp-mid{flex-direction:row;align-items:stretch;width:0;min-width:100%}
  .gp-grid:has(.game.wide) .gp-mid > .card{flex:1 1 0;min-width:0}
  .gp-grid:has(.game.wide) .gp-board{align-self:stretch}
  .gp .game.wide{width:min(720px,calc((100vh - 170px) * 1.333),calc(min(100vw,1320px) - 420px));width:min(720px,calc((100svh - 170px) * 1.333),calc(min(100vw,1320px) - 420px))}
}
/* laptops / tablets: game on top, then two columns */
@media (max-width:1179px){
  .gp-inner{width:auto}
  .gp-top{text-align:center}
  .gp-grid{grid-template-columns:minmax(0,1fr) minmax(0,1fr);grid-template-areas:"stage stage" "mid board";max-width:820px;margin-inline:auto}
  .gp-stage{display:flex;justify-content:center}
  .gp .game{width:min(560px,calc((100vh - 170px) * .8));width:min(560px,calc((100svh - 170px) * .8))}
  .gp .game.tall{width:min(520px,calc((100vh - 170px) * .714));width:min(520px,calc((100svh - 170px) * .714))}
  .gp .game.wide{width:min(720px,calc((100vh - 170px) * 1.333));width:min(720px,calc((100svh - 170px) * 1.333))}
}
/* phones: everything in one column */
@media (max-width:700px){
  .gp{padding-top:14px}
  .gp-top{margin-bottom:12px}
  .gp-grid{grid-template-columns:minmax(0,1fr);grid-template-areas:"stage" "mid" "board";gap:16px}
  .gp-mid{gap:16px}
  .gp .game{width:min(100%,calc((100vh - 150px) * .75));width:min(100%,calc((100svh - 150px) * .75))}
  .gp .game.tall{width:min(100%,calc((100vh - 150px) * .714));width:min(100%,calc((100svh - 150px) * .714))}
  .gp .game.wide{width:min(100%,calc((100vh - 150px) * .75));width:min(100%,calc((100svh - 150px) * .75))}
  /* the three games as a compact row of cards */
  .gp-games{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}
  .gp-games .gp-label{grid-column:1 / -1;margin-bottom:4px}
  .gtile{grid-template-columns:1fr;gap:8px;padding:8px;text-align:center;justify-items:center}
  .gtile img.gprev{width:100%}
  .gt-txt{width:100%}
  .gt-txt b{font-size:13px;white-space:normal;line-height:1.15}
  .gt-txt span{display:none}
  .gt-go{display:none}
  .gtile:hover{transform:none}
}
/* phones held sideways: game left, the rest next to it */
@media (orientation:landscape) and (max-height:520px) and (min-width:600px){
  .gp{padding-block:10px 24px}
  .gp-top{display:none}
  .gp-inner{width:auto}
  .gp-grid{grid-template-columns:auto minmax(0,1fr);grid-template-areas:"stage mid" "board board";max-width:none;gap:16px}
  .gp-stage{display:block}
  .gp .game{width:calc((100vh - 84px) * .8);width:calc((100svh - 84px) * .8)}
  .gp .game.tall{width:calc((100vh - 84px) * .714);width:calc((100svh - 84px) * .714)}
  .gp .game.wide{width:calc((100vh - 84px) * 1.333);width:calc((100svh - 84px) * 1.333)}
  .gp-games{grid-template-columns:minmax(0,1fr)}
  .gtile{grid-template-columns:56px minmax(0,1fr) 16px;text-align:left;justify-items:stretch}
  .gtile img.gprev{width:56px}
  .gt-txt span{display:none}
  .gp-how{display:none}
  .gp .ov-ready .hint{display:none}
  .gp .ov-ready{padding-top:12%}
  /* the dead panel has to fit a ~300px tall game */
  .game .panel .big{font-size:36px;margin:0 0 6px}
  .game .panel .meta{display:none}
  .game .panel .status{margin:2px 0 4px;min-height:0;font-size:12px}
  .game .panel .why{margin:4px 0 0;font-size:11px}
  .game .panel .share-row{margin:4px 0 6px}
  .game .panel .share-row .btn,.game .panel .again,.game .panel .submit-row input,.game .panel .submit-row .btn{padding-block:8px}
}

/* ===== four games: compact hero bars, 4 boards ===== */
@media (min-width:921px){
  .hero-home .bars{gap:10px}
  .hero-home .gbar{grid-template-columns:120px minmax(0,1fr) auto;padding:9px 16px 9px 9px;gap:16px;border-radius:18px}
  .hero-home .gbar img.gprev{border-radius:11px}
  .hero-home .gbar .gtxt b{font-size:clamp(18px,1.8vw,22px)}
  .hero-home .gbar .gtxt span{font-size:13px;margin-top:2px}
  .hero-home .gbar .gtxt em{margin-top:3px}
}
@media (max-width:1180px) and (min-width:981px){.boards3{grid-template-columns:repeat(2,minmax(0,1fr))}}
.board-mini .board-head h3{font-size:19px;white-space:nowrap;min-width:0}
@media (min-width:981px){.board-mini .board-head h3 i{width:40px;height:30px}}

/* ===== DogeStunt ===== */
.game.stunt .ov-ready{justify-content:flex-start;padding:7% 16px 0;background:radial-gradient(80% 40% at 50% 30%,rgba(5,4,8,.82),rgba(5,4,8,0))}
.modes{pointer-events:auto;display:inline-flex;gap:4px;padding:4px;border:1px solid rgba(255,224,138,.25);border-radius:999px;background:rgba(7,6,10,.7);margin-bottom:8px}
.modes button{border:0;border-radius:999px;padding:8px 14px;font:800 12px var(--f-body);letter-spacing:.06em;text-transform:uppercase;color:var(--muted);background:transparent;cursor:pointer}
.modes button[aria-pressed="true"]{background:var(--gold);color:#1d1204}
.mode-note{font-family:var(--f-mono);font-size:11px;letter-spacing:.08em;color:var(--muted);margin-bottom:14px}
.game.stunt .ov-ready .best b{color:var(--gold-hi)}
.boost{position:absolute;left:14px;top:-2px;width:min(32%,170px);height:12px;border-radius:999px;background:rgba(7,6,10,.65);border:1px solid rgba(255,224,138,.3);overflow:hidden}
.boost i{position:absolute;inset:0;transform-origin:left;background:linear-gradient(90deg,#b9770e,#f7b928,#ffe08a);transition:transform .1s linear}
.boost span{position:absolute;inset:0;display:grid;place-items:center;font:800 8px var(--f-body);letter-spacing:.2em;color:#1d1204;mix-blend-mode:luminosity}
.boost.on{box-shadow:0 0 16px rgba(255,170,60,.8)}
.why{font-family:var(--f-mono);font-size:12px;letter-spacing:.06em;color:#ff8a4c;margin:2px 0 8px;min-height:1em}
.share-row{display:flex;gap:8px;margin:10px 0 2px}
.share-row .btn{flex:1;padding:10px 12px}
.btabs{display:flex;gap:4px;padding:4px;margin:0 0 12px;border:1px solid var(--line);border-radius:999px}
.btabs button{flex:1;border:0;border-radius:999px;padding:8px 10px;background:transparent;color:var(--muted);font:800 12px var(--f-body);cursor:pointer}
.btabs button[aria-pressed="true"]{background:var(--gold);color:#1d1204}
/* DogeStunt is a side view: a wider stage than the other games */
.game.wide.stunt{aspect-ratio:16/10;max-width:min(860px,calc((100vh - 120px) * 1.6));max-width:min(860px,calc((100svh - 120px) * 1.6))}
.gp .game.wide.stunt{width:min(860px,calc((100vh - 170px) * 1.6),calc(min(100vw,1320px) - 420px));width:min(860px,calc((100svh - 170px) * 1.6),calc(min(100vw,1320px) - 420px))}
@media (max-width:980px){.gp .game.wide.stunt{width:100%;max-width:min(100%,calc((100svh - 150px) * 1.6))}}
@media (max-width:560px){.game.wide.stunt,.gp .game.wide.stunt{aspect-ratio:3/4;width:100%;max-width:min(100%,calc((100svh - 190px) * .75))}}
@media (orientation:landscape) and (max-height:520px) and (min-width:600px){.gp .game.wide.stunt{aspect-ratio:16/10;width:calc((100vh - 84px) * 1.6);width:calc((100svh - 84px) * 1.6)}}
.game.stunt .ov-ready{padding-top:5%}

/* Before launch (no CA set in site.js): hide the CA box, the chart and every link to it */
.no-ca .ca,.no-ca #chart-sec,.no-ca .js-dex,.no-ca a[href="#chart"],.no-ca a[href="/#chart"]{display:none !important}

/* header on phones: keep brand + Games + buy button on one line, never off-screen */
@media (max-width:600px){.brand small,.pump-btn .xs-hide{display:none}.nav .wrap{gap:10px}}
@media (max-width:480px){.brand{font-size:15px}}
@media (max-width:389px){.brand{font-size:13px;gap:6px}.mini{width:28px;height:28px}.games-toggle{padding:0 9px}.nav .pump-btn{padding:9px 10px}}
/* homepage mini leaderboards: two equal buttons that always fit */
.board-mini .play-row .btn{min-width:0;padding-inline:10px}
@media (max-width:374px){.brand{font-size:0;gap:0}}
/* phones: the Games menu opens full width under the header, so it never sticks out of the screen */
@media (max-width:480px){
  .games-menu{position:static}
  .games-drop{left:12px;right:12px;width:auto;max-width:none;top:calc(100% + 6px);transform:translateY(-6px)}
  .games-menu.open .games-drop{transform:none}
}
