/* Classic Blockfall uses the same dark, dimensional language as its Journey. */
.blockfall-classic-page{--bf-cyan:#28d7ff;--bf-violet:#8b5cf6;--bf-ink:#030718}
.blockfall-classic-page>.tournament-hero{position:relative;isolation:isolate;overflow:hidden;padding:clamp(28px,5vw,58px);border:2px solid #4ddfff66!important;border-radius:34px;background:radial-gradient(circle at 86% 15%,#19d4ff31,transparent 27%),radial-gradient(circle at 67% 92%,#7c3aed2e,transparent 33%),linear-gradient(138deg,#030718 0%,#0b0c29 56%,#031d2d 100%)!important;box-shadow:inset 0 2px #ffffff26,inset 0 -8px #0206178a,0 20px 0 #02061755,0 34px 82px #000b,0 0 46px #22d3ee28!important}
.blockfall-classic-page>.tournament-hero:after{content:"";position:absolute;z-index:-1;inset:0;background-image:linear-gradient(#38bdf80b 1px,transparent 1px),linear-gradient(90deg,#8b5cf60a 1px,transparent 1px);background-size:46px 46px;mask-image:linear-gradient(90deg,transparent,#000 48%,#000)}
.blockfall-classic-page>.tournament-hero>div:first-child{position:relative;z-index:1;max-width:720px}.blockfall-classic-page>.tournament-hero .eyebrow{color:#76e8ff!important}.blockfall-classic-page>.tournament-hero p{max-width:660px;color:#c6d6e7!important;line-height:1.65}.blockfall-classic-page>.tournament-hero .game-brand-logo{filter:drop-shadow(0 10px 24px #000c) drop-shadow(0 0 16px #22d3ee38)}
.blockfall-classic-page .hero-actions{display:flex;align-items:stretch;gap:10px;margin-top:22px}.blockfall-classic-page .hero-actions form{display:flex;margin:0}.blockfall-classic-page .hero-actions .button{display:flex;min-height:56px;align-items:center;justify-content:center;margin:0;padding:11px 20px;border:2px solid #b8f3ffad!important;border-radius:16px;background:linear-gradient(135deg,#16cde8,#2563eb 58%,#6547dc)!important;box-shadow:inset 0 3px #ffffff4d,inset 0 -5px #082a6d66,0 6px #07184c99,0 13px 27px #0008!important;color:#fff!important;font-weight:850;text-align:center;text-shadow:0 2px 3px #071634;transition:transform .18s ease,filter .18s ease}.blockfall-classic-page .hero-actions .button.secondary{border-color:#bda9ff9c!important;background:linear-gradient(135deg,#4338ca,#6d28d9)!important}.blockfall-classic-page .hero-actions .button:hover{filter:brightness(1.1) saturate(1.08);transform:translateY(-2px)}
.blockfall-classic-page .weekly-free{min-width:210px;padding:20px;border:2px solid #8eeeff70!important;border-radius:25px;background:radial-gradient(circle at 70% 15%,#ffffff24,transparent 26%),linear-gradient(145deg,#153f9b,#342c96 56%,#49258f)!important;box-shadow:inset 0 3px #ffffff35,inset 0 -7px #07174466,0 8px #02061770,0 18px 36px #0008!important}.blockfall-classic-page .weekly-free strong{color:#fff!important;text-shadow:0 0 20px #67e8f9}.blockfall-classic-page .weekly-free span{color:#e7f8ff!important}.blockfall-classic-page .weekly-free small{color:#a7c7df!important}
.blockfall-classic-page>.my-rank{border:2px solid #8b5cf650!important;border-radius:20px;background:linear-gradient(135deg,#11183a,#15113a)!important;box-shadow:inset 0 2px #ffffff18,0 12px 28px #0006}.blockfall-classic-page>.my-rank span{color:#9feaff}.blockfall-classic-page>.my-rank strong{color:#fff;text-shadow:0 0 13px #8b5cf680}
.blockfall-classic-page>.leaderboard-head{margin-top:30px;padding:15px 18px;border:2px solid #22d3ee42;border-radius:22px;background:radial-gradient(circle at 92% 8%,#8b5cf628,transparent 35%),linear-gradient(145deg,#0c1630,#080c21);box-shadow:inset 0 2px #ffffff16,0 12px 30px #0007}.blockfall-classic-page>.leaderboard-head .eyebrow{color:#78eaff!important}.blockfall-classic-page>.leaderboard-head h2{margin:4px 0;color:#fff}.blockfall-classic-page>.table-wrap{margin-top:12px;border:2px solid #334bc24d;border-radius:24px;background:linear-gradient(145deg,#080d20,#050817)!important;box-shadow:inset 0 2px #ffffff12,0 18px 44px #0008}.blockfall-classic-page>.table-wrap thead{background:#111a3b}.blockfall-classic-page>.table-wrap tbody tr{border-color:#5e75d51c}.blockfall-classic-page>.table-wrap tbody tr:hover{background:#1725528c}

body.gameplay-page .game[data-game-mode]>.gameplay-touch-zone{align-items:flex-start!important;border:0!important;border-radius:0!important;background:none!important;box-shadow:none!important}
body.gameplay-page .game[data-game-mode] .board-shell{align-self:flex-start;border-color:#4fdfff66!important;background:linear-gradient(145deg,#14234b,#0a1028)!important;box-shadow:inset 0 2px #ffffff22,inset 0 -6px #0206178a,0 10px 28px #0009,0 0 23px #22d3ee22!important}
body.gameplay-page .game[data-game-mode] .game-panel{position:relative;isolation:isolate;overflow:hidden;align-self:flex-start!important;border:2px solid #58dcff66!important;background:radial-gradient(circle at 82% 4%,#22d3ee30,transparent 31%),radial-gradient(circle at 12% 94%,#7c3aed35,transparent 38%),linear-gradient(150deg,#121d48 0%,#090d27 62%,#10103a 100%)!important;box-shadow:inset 0 2px #ffffff24,inset 0 -6px #02061778,0 10px 28px #0009,0 0 24px #22d3ee22!important}
body.gameplay-page .game[data-game-mode] .game-panel:before{content:"";position:absolute;z-index:-1;inset:0;pointer-events:none;background:linear-gradient(#67e8f908 1px,transparent 1px),linear-gradient(90deg,#8b5cf608 1px,transparent 1px);background-size:18px 18px;mask-image:linear-gradient(145deg,#000,transparent 75%)}
body.gameplay-page .game[data-game-mode] .game-panel h2{color:#f4f7ff;text-shadow:0 0 14px #60a5fa70}
body.gameplay-page .game[data-game-mode] .game-panel .badge{border:1px solid #60e6ff75;background:linear-gradient(135deg,#0e7490,#3730a3);color:#fff;box-shadow:inset 0 1px #ffffff42,0 5px 13px #0006}
body.gameplay-page .game[data-game-mode] .game-panel .score{color:#fff;text-shadow:0 0 15px #38bdf8,0 3px 3px #000}
body.gameplay-page .game[data-game-mode] .stats span,body.gameplay-page .game[data-game-mode] .next-piece-preview{border-color:#748aff42!important;background:linear-gradient(145deg,#172044,#0b1028)!important;box-shadow:inset 0 2px #ffffff16,0 7px 16px #0006!important}
body.gameplay-page .game[data-game-mode] .next-piece-preview{border:1px solid #72e6ff52!important;background:radial-gradient(circle at 50% 38%,#5b6df141,transparent 58%),linear-gradient(145deg,#182a58,#0b1230)!important;box-shadow:inset 0 2px #ffffff24,inset 0 -4px #02061770,0 7px 16px #0007,0 0 14px #22d3ee18!important}
body.gameplay-page .game[data-game-mode] .stats span{border:1px solid #798cff48!important;background:#17234a!important;box-shadow:inset 0 2px #ffffff18,inset 0 -3px #02061755,0 5px 12px #0006!important;color:#dff8ff!important}
body.gameplay-page .game[data-game-mode] .mobile-controls-toggle,body.gameplay-page .game[data-game-mode] .game-abandon-form .button{border:2px solid #a9ecff8c!important;background:linear-gradient(135deg,#116a98,#4338ca)!important;box-shadow:inset 0 2px #ffffff38,inset 0 -4px #07174466,0 5px #0206178a!important;color:#fff!important}
body.gameplay-page .game-pause-orb{min-width:42px!important;width:42px!important;min-height:42px!important;height:42px!important;border:2px solid #9beeff8f!important;border-radius:14px!important;background:linear-gradient(145deg,#0891b2,#3155d5 58%,#5b35c8)!important;box-shadow:inset 0 2px #ffffff55,inset 0 -4px #08245d73,0 5px #06143f99,0 9px 20px #0008,0 0 14px #22d3ee32!important;color:#fff!important}
body.gameplay-page .game-pause-orb:hover{filter:brightness(1.12) saturate(1.08);transform:translateY(-1px)}
@media(min-width:701px){body.gameplay-page .game .game-abandon-form:has(>.game-pause-orb){column-gap:10px!important}}
@media(max-width:680px){.blockfall-classic-page>.tournament-hero{padding:25px 18px;border-radius:25px}.blockfall-classic-page .hero-actions{width:100%;flex-direction:column}.blockfall-classic-page .hero-actions form,.blockfall-classic-page .hero-actions .button{width:100%}.blockfall-classic-page .weekly-free{width:100%;min-width:0;box-sizing:border-box}.blockfall-classic-page>.leaderboard-head{border-radius:18px}.blockfall-classic-page>.table-wrap{border-radius:18px}body.gameplay-page .game-pause-orb{min-width:38px!important;width:38px!important;min-height:38px!important;height:38px!important;border-radius:12px!important}}

/* Keep the complete Blockfall board and its controls inside short phone viewports. */
@media(max-width:700px){
 body.app-game-shell.gameplay-page .game[data-game-mode]{box-sizing:border-box;height:100%;min-height:0;padding:10px 2px!important;align-items:center!important}
 body.app-game-shell.gameplay-page .game[data-game-mode]>.gameplay-touch-zone{box-sizing:border-box;width:100%!important;height:auto!important;max-width:100%!important;max-height:100%;min-height:0;padding-inline:7px!important;gap:5px!important;align-items:flex-start!important;overflow:hidden!important;transform:translateX(4px)}
 body.app-game-shell.gameplay-page .game[data-game-mode] .board-shell{min-width:0!important;max-width:calc(100vw - 116px)!important;margin-top:0!important;margin-bottom:0!important;align-self:flex-start!important}
 body.app-game-shell.gameplay-page .game[data-game-mode] .board-shell canvas#board{width:min(calc(100vw - 124px),calc((100dvh - 150px)/2),275px)!important;height:auto!important;max-width:100%!important;max-height:calc(100dvh - 150px)!important}
 body.app-game-shell.gameplay-page .game[data-game-mode] .game-panel .next-piece-preview{display:flex!important;flex-direction:column!important;align-items:center!important;justify-content:center!important;width:100%!important;padding:3px 1px!important}
 body.app-game-shell.gameplay-page .game[data-game-mode] .game-panel .next-piece-preview #next{display:block!important;width:52px!important;height:52px!important;min-width:52px!important;min-height:52px!important;margin:0 auto!important}
 body.app-game-shell.gameplay-page .game[data-game-mode] .game-panel .next-piece-preview small{display:block!important;width:100%!important;margin:1px 0 0!important;text-align:center!important}
 body.app-game-shell.gameplay-page .game-shell-controls .game-shell-action-form:has(.game-pause-orb){flex:0 0 145px!important;width:145px!important;max-width:145px!important;gap:5px!important}
 body.app-game-shell.gameplay-page .game-shell-controls .game-shell-action-form>.game-pause-orb.is-docked{flex:0 0 70px!important;width:70px!important;min-width:70px!important;max-width:70px!important;height:30px!important;min-height:30px!important;padding:0 7px!important;border-radius:9px!important}
 body.app-game-shell.gameplay-page .mobile-controls:not([hidden]){box-sizing:border-box!important;left:8px!important;right:8px!important;bottom:max(8px,env(safe-area-inset-bottom))!important;width:auto!important;max-width:none!important;padding:6px!important;grid-template-columns:repeat(5,minmax(0,1fr))!important;gap:4px!important;border:2px solid #67e8f980!important;border-radius:14px!important;background:linear-gradient(145deg,#111b42fa,#090e27fa)!important;box-shadow:inset 0 2px #ffffff20,inset 0 -4px #02061770,0 10px 24px #000a,0 0 18px #22d3ee24!important;backdrop-filter:blur(12px)!important}
 body.app-game-shell.gameplay-page .mobile-controls:not([hidden]) button{min-width:0!important;min-height:42px!important;padding:4px 1px!important;border:1px solid #8cecff82!important;border-radius:10px!important;background:linear-gradient(145deg,#157a9f,#334bc2 58%,#5b36bd)!important;box-shadow:inset 0 2px #ffffff42,inset 0 -4px #07174466,0 4px #02061799!important;color:#fff!important;font-size:17px!important;text-shadow:0 2px 2px #06143f!important}
 body.app-game-shell.gameplay-page .mobile-controls:not([hidden]) button:active{transform:translateY(2px)!important;box-shadow:inset 0 2px 5px #02061799!important}
 body.app-game-shell.gameplay-page:has(.mobile-controls:not([hidden])) .game[data-game-mode]{padding-bottom:72px!important}
 body.app-game-shell.gameplay-page:has(.mobile-controls:not([hidden])) .game[data-game-mode] .board-shell canvas#board{width:min(calc(100vw - 124px),calc((100dvh - 230px)/2),245px)!important}
}
@media(max-width:700px) and (max-height:760px){
 body.app-game-shell.gameplay-page .game[data-game-mode] .board-shell canvas#board{width:min(calc(100vw - 124px),calc((100dvh - 155px)/2),255px)!important}
}
@media(max-width:700px) and (max-height:620px){
 body.app-game-shell.gameplay-page .game[data-game-mode] .game-panel .next-piece-preview #next{width:44px!important;height:44px!important;min-width:44px!important;min-height:44px!important}
}
