/* Popcorn art direction. Presentation only: gameplay and hit areas stay intact. */
.popcorn-theme{color:#473b31;background:radial-gradient(ellipse at 50% 15%,#c8f5ff 0,transparent 65%),linear-gradient(#5cc5f3,#abedfc 70%,#e5f8d0);background-attachment:fixed}
.popcorn-theme:before{background:#80cf68;box-shadow:0 -18px 0 #b6e68d;bottom:-31vw}.popcorn-theme:after{background:#59b984;box-shadow:0 -18px 0 #9ade91;bottom:-32vw}
.popcorn-theme .site-header{max-width:1040px;height:60px;padding:0 20px}.popcorn-theme .brand{color:#245b55}.popcorn-theme .site-header nav>button{box-shadow:0 3px 0 #5ea6b5}
.popcorn-theme .home{max-width:490px;padding:0 24px}.portal-back{align-self:flex-start;color:#245e71!important;background:#ffffffb5;padding:7px 12px;border-radius:20px}
.popcorn-theme .lobby-badge{display:none}.popcorn-theme .game-logo{margin:6px auto 0!important;transform:none!important;width:100%;height:auto;line-height:0;letter-spacing:0}.game-logo img{display:block;width:100%;height:auto;max-height:190px;object-fit:contain;filter:drop-shadow(0 7px 0 #2786a32b)}
.popcorn-theme .lobby-title p{margin:0;color:#235c6e;font-size:15px;font-weight:800}.popcorn-theme .mascot-stage{height:204px;margin:0}.hero-pair{position:absolute;inset:5px 35px 22px;display:flex;justify-content:center;align-items:end;gap:0;pointer-events:none}.hero-pair img{width:54%;height:100%;object-fit:contain;filter:drop-shadow(0 7px 3px #31757a28)}.hero-popcorn{transform:rotate(-8deg)}.hero-popbot{transform:rotate(7deg)}.popcorn-theme .orbit-tile{width:34px;height:34px;font-size:20px}.popcorn-theme .orbit-tile:nth-child(2),.popcorn-theme .orbit-tile:nth-child(3){display:none}.popcorn-theme .orbit-tile:nth-child(1){left:0;top:60px}.popcorn-theme .orbit-tile:nth-child(4){right:0;top:46px}.popcorn-theme .orbit-tile:nth-child(5){right:7%;top:130px}.popcorn-theme .mascot-message{bottom:0;color:#755632;background:#fffcdf;border-color:#fff;box-shadow:0 3px 0 #ccae74}.popcorn-theme .stage-spark{color:#ffb800}.popcorn-theme .stage-spark.one{left:3%;top:135px}
.popcorn-theme .mode-list{margin-top:14px;gap:16px}.popcorn-theme .mode-card{min-height:100px;border:3px solid #fff6dc;border-radius:23px;padding:14px 16px}.popcorn-theme .time-card{background:linear-gradient(#ffa936,#ec7727);box-shadow:0 6px 0 #a85426,0 10px 20px #376e7930}.popcorn-theme .duel-card{background:linear-gradient(#538edb,#4264b9);box-shadow:0 6px 0 #2c4288,0 10px 20px #376e7930}.popcorn-theme .mode-icon{width:55px;height:61px;background:transparent url('/assets/e049bed6f187e96a8bd1/mascot-popcorn.png') center/contain no-repeat;border:0;box-shadow:none;font-size:0;margin-right:10px}.popcorn-theme .duel-card .mode-icon{background-image:url('/assets/e049bed6f187e96a8bd1/popbot-v2.png')}.popcorn-theme .mode-content strong{font-size:25px}.popcorn-theme .mode-tag{font-size:10px}.popcorn-theme .lobby-tools{background:#ffffffb0;border-radius:18px;padding:10px;margin-top:23px}.popcorn-theme .lobby-tools button,.popcorn-theme .lobby-tip b,.popcorn-theme .lobby-tip span{color:#386272}
.popcorn-theme .game{max-width:440px;padding:8px 12px 0}.popcorn-theme .game-heading{margin-bottom:8px}.popcorn-theme .game-heading h2{color:#285766}.popcorn-theme .game-heading .eyebrow{color:#3c6e7b}.popcorn-theme .scoreboard{background:linear-gradient(130deg,#fffef5,#fff2d6);border:3px solid #fff;border-radius:24px;box-shadow:0 5px 0 #cbb88d,0 8px 16px #257a9024}.popcorn-theme .score-block strong{color:#a95722}.popcorn-theme .score-block small,.popcorn-theme .score-block p,.popcorn-theme .score-block em{color:#756747}.popcorn-theme .level-status{background:#fff9e8;border:1px solid #f5d595;color:#72542d}.popcorn-theme .level-badge{background:linear-gradient(#ffc25d,#f39530);color:#733a16}.popcorn-theme .time-track{background:#eadcc2;border-color:#fff6de}.popcorn-theme #time-fill{background:linear-gradient(#b4f160,#70c940)}
.popcorn-theme .board-toolbar{margin-bottom:20px}.popcorn-theme .turn-label{color:#305f6e}.popcorn-theme .hint-button{background:linear-gradient(#fff6b6,#f4cd68);border:2px solid #fff9dd;color:#755329;box-shadow:0 4px 0 #c3984b;min-height:38px}.popcorn-theme .board-wrap:before{background:linear-gradient(135deg,#f6dfb4,#e5c58e);border:4px solid #fff9df;box-shadow:inset 0 3px 8px #ae793539,0 6px 0 #bc985c,0 13px 22px #34798735;border-radius:26px}
.popcorn-theme #board .tile{border-radius:36% 40% 35% 39%;border:2px solid #fffbe7;background:radial-gradient(ellipse at 36% 24%,#fffef5 0,transparent 60%),linear-gradient(145deg,#fff5dc,var(--tile-color));box-shadow:inset 0 -4px 4px #c8a85a25,inset 0 3px 2px #fff,0 3px 0 #ba9a6055;color:var(--tile-ink);text-shadow:0 2px 0 #ffffff; font-weight:900}.popcorn-theme #board .tile[data-value="1"]{--tile-color:#d7efb9;--tile-ink:#098450}.popcorn-theme #board .tile[data-value="2"]{--tile-color:#c8eaf8;--tile-ink:#1268c5}.popcorn-theme #board .tile[data-value="3"]{--tile-color:#e9d4f4;--tile-ink:#8a2cc6}.popcorn-theme #board .tile[data-value="4"]{--tile-color:#ffd5c8;--tile-ink:#e93d5a}.popcorn-theme #board .tile[data-value="5"]{--tile-color:#ffe483;--tile-ink:#ae650c}.popcorn-theme #board .tile.selected{border-color:#fff;box-shadow:0 0 0 3px #ffe44c,0 0 20px #ffcf26,inset 0 0 12px #fff;filter:brightness(1.06)}
.popcorn-theme .board-cover{background:radial-gradient(ellipse at top,#fffdf0,#f3dfb5);border:3px solid #fff8df;color:#855624}.popcorn-theme .path-info{color:#315e61}.popcorn-theme .path-info small{color:#527878}.popcorn-theme .keyboard-help{color:#3b6a71}.popcorn-theme .game[data-duel-turn="bot"] .board-wrap:before{background:linear-gradient(135deg,#b9c5de,#8d9bc2);border-color:#e8edff;box-shadow:0 6px 0 #65769d}.popcorn-theme .game[data-duel-turn="bot"] #board .tile{filter:saturate(.65)}
.popcorn-theme dialog,.popcorn-theme #result-content,.popcorn-theme #share-content{background:linear-gradient(150deg,#fffef6,#fff2d7);border:3px solid #fff;border-radius:28px;box-shadow:0 6px 0 #cfb88b,0 16px 50px #29637d35;color:#594630}.popcorn-theme dialog::backdrop{background:#153b5680;backdrop-filter:blur(7px)}.popcorn-theme .primary{background:linear-gradient(#ffb43e,#f18a27);border:2px solid #fff3cd;color:#fff;box-shadow:0 4px 0 #ae5c20;text-shadow:0 1px #ae5c20}.popcorn-theme .secondary{background:linear-gradient(#fff,#fff2d7);color:#655134;border:2px solid #fff;box-shadow:0 3px 0 #ccb88f;min-height:48px}.popcorn-theme .difficulty{background:#fffaf0;border:2px solid #ead9b4;box-shadow:0 3px 0 #d5c199}.popcorn-theme .difficulty strong{color:#725331}.popcorn-theme .difficulty span,.popcorn-theme dialog p{color:#79684e}.popcorn-theme .notice,.popcorn-theme .result-stats{background:#f0e4c9}.popcorn-theme .result-screen{max-width:480px;padding-top:24px}.popcorn-theme #result-content:before{content:'';display:block;height:104px;margin:-8px auto 5px;background:url('/assets/e049bed6f187e96a8bd1/mascot-popcorn.png') center/contain no-repeat}.popcorn-theme .result-screen .big-score{color:#ae571d;text-shadow:0 3px #fff}.popcorn-theme .result-screen h2{color:#684522}.popcorn-theme .result-sub{color:#796549}.popcorn-theme .result-main-actions [data-action="home"]{background:#dfedf2;border:2px solid #fff;color:#315f70}.popcorn-theme .result-more{margin-top:18px}.popcorn-theme footer,.popcorn-theme footer button,.popcorn-theme footer a{color:#396c78}.popcorn-theme .seo-content{background:#ffffffb8;border-radius:24px;padding:20px}
.play-scenery{display:none;pointer-events:none}.popcorn-theme:has(#game:not(.hidden)) .site-header{display:none}.popcorn-theme:has(#game:not(.hidden)) footer{display:none}
@media(min-width:1000px){body:has(#game:not(.hidden)) .play-scenery{display:block;position:fixed;inset:0;z-index:-1}.play-scenery img{position:absolute;object-fit:contain}.scenery-logo{width:min(25vw,340px);left:3%;top:9%}.scenery-popcorn{width:min(23vw,310px);left:4%;bottom:8%;transform:rotate(-9deg)}.scenery-bot{width:min(24vw,320px);right:4%;top:28%;transform:rotate(7deg)}.popcorn-theme .game{padding-top:20px}}
@media(max-width:600px){.popcorn-theme .site-header{height:48px;padding:0 12px}.popcorn-theme .home{padding:0 18px}.game-logo img{max-height:155px}.popcorn-theme .mascot-stage{height:168px}.hero-pair{inset:0 40px 22px}.popcorn-theme .mode-card{min-height:92px}.popcorn-theme .game{width:100%;max-width:440px;padding:4px 8px calc(4px + env(safe-area-inset-bottom));margin:0 auto;overflow:hidden}.popcorn-theme .game-heading{gap:9px;margin-bottom:7px}.popcorn-theme .scoreboard{min-height:58px;padding:6px 60px 6px 14px}.popcorn-theme .score-block strong{font-size:27px}.popcorn-theme .score-block small{font-size:9.5px}.popcorn-theme .game-heading #pause{width:36px;height:36px;top:calc(14px + env(safe-area-inset-top));right:max(14px,env(safe-area-inset-right))}.popcorn-theme .level-status{min-height:28px;padding:3px 8px;margin-top:2px;font-size:11px}.popcorn-theme .level-badge{padding:3px 6px;font-size:11px}.popcorn-theme .time-track{margin-top:4px}.popcorn-theme .fever-meter,.popcorn-theme .game.fever-active .fever-meter{height:20px;min-height:20px;padding:2px 8px;font-size:9.5px;box-sizing:border-box}.popcorn-theme .board-toolbar{min-height:32px;margin-bottom:0}.popcorn-theme .turn-label{min-height:28px;font-size:11px}.popcorn-theme .hint-button{min-height:32px;padding:3px 10px;font-size:12px}.popcorn-theme .board-fit{margin:4px 0 4px}.popcorn-theme dialog{width:min(440px,calc(100% - 16px));padding:24px 18px}.popcorn-theme .result-screen{padding:16px 12px 30px}.popcorn-theme #result-content:before{height:84px}}
@media(prefers-reduced-motion:reduce){.popcorn-theme *{scroll-behavior:auto}}
/* Reserve a dedicated pause lane in the compact mobile score panel. */
@media(max-width:700px){.popcorn-theme .scoreboard{padding-right:65px}.popcorn-theme .game-heading #pause{right:20px;top:16px;background:#fff9e8;border-color:#fff;box-shadow:0 3px 0 #cbb88d}.popcorn-theme .board-toolbar{margin-bottom:0}}
.popcorn-theme .game-guide{background:#fffdf0ed;border-radius:24px;padding:22px;margin-top:32px;color:#536655}
.popcorn-theme #result-content h2:focus{outline:none}.popcorn-theme #result-content h2:focus-visible{outline:2px solid #ad793a;outline-offset:5px}
@media(max-width:700px){.popcorn-theme .game[data-duel-turn] .scoreboard{padding-right:65px}}
.popcorn-theme #board{aspect-ratio:3/4;grid-template-rows:repeat(8,minmax(0,1fr))}.popcorn-theme #board .tile{aspect-ratio:auto;min-width:0;min-height:0}
@media(min-width:1000px){body:has(#game:not(.hidden)) .play-scenery{z-index:0}.popcorn-theme .game{position:relative;z-index:1;max-width:clamp(330px,calc((100dvh - 370px)*.75),440px)}}

/* Fit the complete board into the remaining viewport, including browser chrome. */
.popcorn-theme .game:not(.hidden),.popcorn-theme .game:has(.level-status:not(.hidden)):not(.hidden){display:flex;flex-direction:column;box-sizing:border-box;height:100dvh;max-height:100dvh;width:100%;max-width:540px;margin:0 auto;padding:calc(6px + env(safe-area-inset-top)) 12px calc(8px + env(safe-area-inset-bottom));gap:4px;overflow:hidden}
.popcorn-theme .game-heading,.popcorn-theme .scoreboard,.popcorn-theme .level-status,.popcorn-theme .time-track,.popcorn-theme .board-toolbar,.popcorn-theme .hint-progress,.popcorn-theme .duel-pressure,.popcorn-theme .path-info{flex-shrink:0}
.popcorn-theme .board-fit{order:6;flex:1;min-height:0;container-type:size;margin:12px 0 12px;position:relative}
.popcorn-theme .board-fit .board-wrap{position:relative;width:min(100cqw,75cqh);height:min(100cqh,133.3333cqw);aspect-ratio:3/4;margin:0 auto}
.popcorn-theme .board-fit #board{height:100%;width:100%}.popcorn-theme .path-info{order:7;min-height:18px;line-height:18px;padding:0;margin:0}.popcorn-theme .path-info small,.popcorn-theme .keyboard-help{display:none}
.popcorn-theme .game .level-status{margin:4px 0 0}.popcorn-theme .game .board-toolbar{margin:0}.popcorn-theme .game .time-track{margin:5px 0 0}.popcorn-theme .game .tile{font-size:clamp(18px,5cqh,32px)}
.popcorn-theme #board .tile{isolation:isolate;background:none;border:0;border-radius:0;box-shadow:none;text-shadow:0 2px 0 #fff;filter:drop-shadow(0 2px 1px #ac85464d)}
.popcorn-theme #board .tile:before{content:'';position:absolute;inset:-3%;width:auto;height:auto;border:0;border-radius:0;transform:none;opacity:1;z-index:-1;background:radial-gradient(ellipse at 50% 60%,var(--tile-color),transparent 65%),url('/assets/e049bed6f187e96a8bd1/tile-popcorn.png') center/100% 100% no-repeat;background-blend-mode:multiply;mask:url('/assets/e049bed6f187e96a8bd1/tile-popcorn.png') center/100% 100% no-repeat;box-shadow:none}
.popcorn-theme #board .tile:after{display:none}.popcorn-theme #board .tile.selected{background:none;border:0;box-shadow:none;filter:drop-shadow(0 0 2px #fff) drop-shadow(0 0 5px #ffe745);transform:scale(1.06)}
.popcorn-theme #board[data-link-count="4"] .tile.selected{filter:drop-shadow(0 0 2px #fff) drop-shadow(0 0 7px #ffbb00)}
.popcorn-theme #board[data-link-count="5"] .tile.selected{filter:drop-shadow(0 0 2px #fff) drop-shadow(0 0 9px #ffdb00);animation:popcorn-ready .55s ease-in-out infinite alternate}
.popcorn-theme .path-lines line{stroke:#fff7ae;stroke-width:8;filter:drop-shadow(0 0 3px #ffc400)}.popcorn-theme .path-lines[data-link-count="4"] line{stroke-width:9}.popcorn-theme .path-lines[data-link-count="5"] line{stroke:#fff;stroke-width:10;filter:drop-shadow(0 0 5px #ffbd00)}.popcorn-theme .link-shimmer{stroke:#fff;stroke-width:4}.popcorn-theme .link-twinkle{fill:#fff6ad;filter:drop-shadow(0 0 4px #ffbd00)}
.popcorn-theme .pop-reward>span:first-child{display:block;background:#fff8d7;border:3px solid #fff;border-radius:42% 36% 44% 32%;padding:10px 16px;color:#f03723;font-size:34px;font-weight:900;font-style:italic;text-shadow:2px 2px 0 #fff;box-shadow:0 0 0 3px #ffc733,0 0 26px #ffdc55;transform:rotate(-10deg)}
.popcorn-theme .pop-reward.perfect>span:first-child{font-size:43px}.popcorn-theme .pop-reward .pop-combo-tag{display:block;color:#fff03d;font-size:26px;font-style:italic;-webkit-text-stroke:1px #193c8d;paint-order:stroke fill;text-shadow:2px 3px 0 #194091,0 0 10px #39ccff;background:#246bcb;border:2px solid #b9f6ff;border-radius:15px;padding:4px 10px;box-shadow:0 0 12px #39ceff}.popcorn-theme .popcorn-kernel{filter:drop-shadow(0 0 3px #ffd64e)}
@keyframes popcorn-ready{to{transform:scale(1.09);filter:drop-shadow(0 0 3px #fff) drop-shadow(0 0 12px #ffbd00)}}
@media(max-height:650px){.popcorn-theme .game .scoreboard{min-height:52px;padding:5px 60px 5px 12px}.popcorn-theme .game .level-status small{display:none}.popcorn-theme .game .level-status{min-height:24px;margin-top:2px}.popcorn-theme .game .board-toolbar{min-height:30px}.popcorn-theme .game .board-fit{margin:3px 0 3px}}
@media(max-width:600px){.popcorn-theme .game:not(.hidden),.popcorn-theme .game:has(.level-status:not(.hidden)):not(.hidden){padding:calc(4px + env(safe-area-inset-top)) 8px calc(4px + env(safe-area-inset-bottom));gap:3px;overflow:hidden}.popcorn-theme .board-fit{margin:4px 0 4px}}
.reduced #board .tile.selected{animation:none!important}@media(prefers-reduced-motion:reduce){.popcorn-theme #board .tile.selected{animation:none}}
.popcorn-theme #board .tile:before{inset:-8%}

/* A cool, recessed tray makes warm kernels and active connections stand out. */
.popcorn-theme .board-fit .board-wrap:before{background:linear-gradient(140deg,#376f7a,#163d50);border:4px solid #ffedb6;box-shadow:inset 0 3px 12px #092c48a8,0 5px 0 #b48747,0 12px 24px #184d5b45}
.popcorn-theme .game[data-duel-turn="bot"] .board-fit .board-wrap:before{background:linear-gradient(140deg,#555887,#303857);border-color:#d5d8fa;box-shadow:inset 0 3px 12px #17233c,0 5px 0 #77779e}
.popcorn-theme #board .tile{filter:drop-shadow(0 3px 2px #071b3566)}
.popcorn-theme #board .tile.selected{z-index:4;transform:translateY(-2px) scale(1.08);filter:drop-shadow(0 0 2px #fff) drop-shadow(0 0 7px #7dfff1);animation:none}
.popcorn-theme #board .tile.selected:before{animation:kernel-inflate .8s ease-in-out infinite alternate}
.popcorn-theme #board .tile.selected:after{content:'✦';display:block;position:absolute;right:-9%;top:-12%;left:auto;bottom:auto;width:auto;height:auto;border:0;border-radius:0;background:none;color:#fffad0;text-shadow:0 0 5px #ffd400;font-size:18px;line-height:1;pointer-events:none;animation:selection-spark .6s ease-in-out infinite alternate}
.popcorn-theme #board[data-link-count="3"] .tile.selected{filter:drop-shadow(0 0 2px #fff) drop-shadow(0 0 8px #65ffe8)}
.popcorn-theme #board[data-link-count="4"] .tile.selected{filter:drop-shadow(0 0 2px #fff) drop-shadow(0 0 10px #ffc934)}
.popcorn-theme #board[data-link-count="5"] .tile.selected{filter:drop-shadow(0 0 3px #fff) drop-shadow(0 0 12px #ffbe24);animation:none}
.popcorn-theme #board[data-link-count="5"] .tile.selected:before{animation-duration:.45s}
.popcorn-theme .path-lines line{stroke:#fffde1;stroke-width:10;filter:drop-shadow(0 0 3px #58ffe6) drop-shadow(0 0 6px #20cabf)}
.popcorn-theme .path-lines[data-link-count="4"] line{stroke-width:12;filter:drop-shadow(0 0 4px #ffd12e) drop-shadow(0 0 8px #ffad16)}
.popcorn-theme .path-lines[data-link-count="5"] line{stroke-width:14;filter:drop-shadow(0 0 4px #ffed59) drop-shadow(0 0 9px #ffb300)}
.popcorn-theme .path-lines .link-shimmer{stroke:#fff;stroke-width:5;stroke-dasharray:5 14;animation-duration:.35s}
.popcorn-theme .path-lines .link-twinkle{stroke:#fff5bc;stroke-width:1.2;fill:#fff;filter:drop-shadow(0 0 5px #ffe22d)}
@keyframes kernel-inflate{from{transform:scale(1.02)}to{transform:scale(1.1)}}
@keyframes selection-spark{from{transform:scale(.65) rotate(-12deg);opacity:.65}to{transform:scale(1.15) rotate(15deg);opacity:1}}
.reduced #board .tile.selected:before,.reduced #board .tile.selected:after{animation:none!important}
@media(prefers-reduced-motion:reduce){.popcorn-theme #board .tile.selected:before,.popcorn-theme #board .tile.selected:after{animation:none!important}}
.popcorn-theme #board .tile.selected{z-index:3}.popcorn-theme .path-lines{z-index:4}
/* Hint badges must remain above the opaque popcorn artwork. */
.popcorn-theme #board:has(.hinted) .tile:not(.hinted):not(.selected){filter:brightness(.65) saturate(.65)}
.popcorn-theme #board .tile.hinted{z-index:4;filter:drop-shadow(0 0 2px #fff) drop-shadow(0 0 7px #ffe329);transform:scale(1.05)}
.popcorn-theme #board .tile.hinted:after{display:grid;place-items:center;content:'①';position:absolute;inset:-4px -3px auto auto;width:22px;height:22px;border:2px solid #fff;background:#b94712;color:#fff;border-radius:50%;box-shadow:0 2px 4px #112d4d99;font:900 17px/1 system-ui;text-shadow:none;opacity:1;pointer-events:none;animation:none!important}
.popcorn-theme #board .tile.hinted[data-hint-order="1"]:after{content:'②';background:#916316}
.popcorn-theme #board .tile.hinted[data-hint-order="2"]:after{content:'③';background:#557424}
.popcorn-theme #board .tile.hinted:before{animation:hint-kernel 1s ease-in-out infinite alternate}
.popcorn-theme #board .tile.hinted[data-hint-order="1"]:before{animation-delay:.2s}.popcorn-theme #board .tile.hinted[data-hint-order="2"]:before{animation-delay:.4s}
@keyframes hint-kernel{to{transform:scale(1.1);filter:brightness(1.15)}}
/* Fever reads across the whole cabinet, without covering the numbers. */

.popcorn-theme .fever-active .board-fit .board-wrap:after{content:"";position:absolute;inset:-5px;pointer-events:none;z-index:4;border-radius:24px;border:3px solid #ffe66d;background:transparent;box-shadow:0 0 8px 2px #ffc83d99;animation:fever-border-glow 1.4s ease-in-out infinite alternate}
.fever-active .fever-meter{height:22px;min-height:22px;padding:2px 8px;font-size:10px;box-sizing:border-box;background:linear-gradient(100deg,#ffe05c,#fff5a5,#ffc534);border:1.5px solid #fff8d2;box-shadow:0 0 13px #ffc52d;font-weight:900}
.fever-active .board-fit:after{content:'FEVER!';position:absolute;top:35%;left:50%;transform:translate(-50%,-50%);z-index:6;pointer-events:none;font:bold italic clamp(35px,9vw,64px)/1 system-ui;color:#fff3a2;-webkit-text-stroke:2px #b45e12;paint-order:stroke fill;text-shadow:0 4px #a34d14,0 0 22px #ffdc29;animation:fever-arrival .85s both}
@keyframes fever-gold-flow{0%,100%{background-position:0% 50%}50%{background-position:100% 50%}}
@keyframes fever-border-glow{from{opacity:.45}to{opacity:1}}
@keyframes fever-arrival{0%{opacity:0;transform:translate(-50%,-50%) scale(.6)}22%,65%{opacity:1;transform:translate(-50%,-50%) scale(1)}100%{opacity:0;transform:translate(-50%,-80%) scale(1.08)}}
.result-popcorn-rain{position:absolute;inset:0;overflow:hidden;border-radius:26px;pointer-events:none;z-index:8;container-type:size}.result-popcorn-rain i{position:absolute;left:var(--x);top:-50px;width:var(--size);height:var(--size);background:url('/assets/e049bed6f187e96a8bd1/tile-popcorn.png') center/contain no-repeat;filter:drop-shadow(0 2px 2px #98692c55);animation:result-kernel-fall 3s var(--delay) ease-in both}
@keyframes result-kernel-fall{0%{opacity:0;transform:translate(0,-20px) rotate(0)}8%,85%{opacity:1}100%{opacity:0;transform:translate(var(--drift),calc(100cqh + 100px)) rotate(var(--spin))}}
.reduced .result-popcorn-rain,.reduced .fever-active .board-fit:after{display:none}.reduced .fever-active .board-wrap:before,.reduced .fever-active .board-wrap:after{animation:none!important}
@media(prefers-reduced-motion:reduce){.result-popcorn-rain,.fever-active .board-fit:after{display:none}.popcorn-theme .fever-active .board-wrap:before,.popcorn-theme .fever-active .board-wrap:after{animation:none!important}}
.fever-meter{order:2;display:flex;align-items:center;gap:9px;flex-shrink:0;height:22px;min-height:22px;box-sizing:border-box;color:#725016;font-size:10px;font-weight:800;padding:2px 8px;background:#fff8dce8;border-radius:9px;border:1.5px solid transparent}.fever-meter>span{min-width:92px}.fever-track{height:7px;flex:1;background:#d4cdb7;border-radius:8px;overflow:hidden}.fever-track i{height:100%;display:block;background:linear-gradient(90deg,#ffb228,#fff04b);border-radius:8px;transition:width .15s}
.fever-active .fever-meter{background:#ffe680;color:#874313}.fever-active .fever-track i{background:linear-gradient(90deg,#ff8728,#fffbd2)}
#result-content{position:relative;isolation:isolate}.result-confetti{position:absolute;inset:0;overflow:hidden;border-radius:26px;pointer-events:none;z-index:8}.result-confetti i{position:absolute;top:-24px;left:var(--x);width:9px;height:16px;background:var(--color);border-radius:3px;animation:result-celebrate 2.8s var(--delay) ease-in both}.result-confetti i:nth-child(3n){width:13px;height:13px;clip-path:polygon(50% 0,62% 34%,100% 38%,70% 61%,80% 100%,50% 77%,20% 100%,30% 61%,0 38%,38% 34%)}
@keyframes result-celebrate{0%{transform:translate3d(0,-20px,0) rotate(0);opacity:0}10%{opacity:1}80%{opacity:1}100%{transform:translate3d(var(--drift),750px,0) rotate(650deg);opacity:0}}
.popcorn-theme #result-content .big-score{background:radial-gradient(ellipse,#ffe6a1,transparent 70%);padding:8px 0;color:#a65416}.dev-move-counts{text-align:center;font-size:11px;color:#826d4f;line-height:1.7}.reduced .result-confetti{display:none}@media(prefers-reduced-motion:reduce){.result-confetti{display:none}}
.settlement-show{text-align:center}.settlement-caption{color:#876d40;font-size:14px}.settlement-total{display:flex;justify-content:center;align-items:baseline;gap:7px;color:#b45619;margin:20px 0;font-variant-numeric:tabular-nums}.settlement-total strong{font-size:clamp(46px,12vw,72px);line-height:1.2}.settlement-total span{font-size:18px;font-weight:800}.settlement-steps{display:grid;gap:10px;margin:20px 0}.settlement-step{display:flex;justify-content:space-between;gap:12px;padding:14px;border:2px solid transparent;background:#eee5d2;border-radius:14px;opacity:.25;transform:translateY(8px);transition:opacity .2s,transform .25s,background .25s}.settlement-step.revealed{opacity:1;transform:none}.settlement-step.active{background:#fff0aa;border-color:#f1ba45}.settlement-step b{color:#a95d16;font-variant-numeric:tabular-nums}#settlement-status{min-height:24px;color:#876320;font-weight:800}.settlement-complete .settlement-total{color:#248259;text-shadow:0 0 20px #ffdc65}.settlement-complete .settlement-total strong{transform:scale(1.07);transition:transform .2s}
.reduced #board .tile.hinted:before{animation:none!important}@media(prefers-reduced-motion:reduce){.popcorn-theme #board .tile.hinted:before{animation:none!important}}

/* The fever meter stays gold; the board interior keeps its normal palette. */

.popcorn-theme .game.fever-active .fever-meter{background:linear-gradient(100deg,#ffe05c,#fff5a5,#ffc534);border:1.5px solid #fff8d2}
.sound-samples{display:grid;grid-template-columns:1fr 1fr;gap:10px}.sound-samples .secondary{margin:0;min-height:48px;font-size:13px}#sound-sample-status{text-align:center;min-height:24px}

/* Touch/small screens: keep the pop motion, avoid per-tile multi-pass blurs
   and repainting a board-sized gradient every frame during fever. */
@media (pointer:coarse), (max-width:700px){
  .popcorn-theme #board .tile,
  .popcorn-theme .game.fever-active #board .tile{filter:none}
  .popcorn-theme #board .tile.selected,
  .popcorn-theme .game.fever-active #board .tile.selected,
  .popcorn-theme #board[data-link-count] .tile.selected{filter:drop-shadow(0 0 4px #fff183)}
  .popcorn-theme #board .tile.hinted{filter:drop-shadow(0 0 4px #ffe329)}
  .popcorn-theme .path-lines line,
  .popcorn-theme .path-lines[data-link-count] line,
  .popcorn-theme .game.fever-active .path-lines line{filter:none}
  .popcorn-theme .path-lines .link-twinkle,
  .popcorn-theme .popcorn-kernel,
  .popcorn-theme .result-popcorn-rain i{filter:none}
  .popcorn-theme .path-lines .link-shimmer{animation:none;opacity:.85}
  
  
  .popcorn-theme #board .tile.hinted:before{animation-name:hint-mobile-pulse}
}
@keyframes fever-mobile-glow{from{opacity:.5}to{opacity:1}}
@keyframes hint-mobile-pulse{to{transform:scale(1.1)}}

/* A cool, static backdrop lets warm popcorn stand out without extra effects. */
.popcorn-theme .result-screen #result-content{background:linear-gradient(155deg,#225668,#132e45);border-color:#b9e5e9;color:#e7f4f4;box-shadow:0 6px 0 #0d293a,0 16px 35px #15394c35}
.popcorn-theme #result-content h2{color:#f4fbff}
.popcorn-theme #result-content .big-score{background:none;color:#ffe28a;text-shadow:0 3px 0 #102c3d}
.popcorn-theme #result-content .result-sub,.popcorn-theme #result-content .dev-move-counts{color:#c5dfe7}
.popcorn-theme #result-content .notice,.popcorn-theme #result-content .result-stats{background:#ffffff0d;color:#d6e9ee;border-color:#5c8495}
.popcorn-theme #result-content .result-stats strong{color:#fff0bd}
.popcorn-theme #result-content .settlement-card{background:#102d40;border-color:#547d8d;box-shadow:none}
.popcorn-theme #result-content .settlement-title{color:#ffe28a;border-bottom-color:#446878}
.popcorn-theme #result-content .settlement-grid{color:#d6e9ee}
.popcorn-theme #result-content .settlement-grid .num{color:#9ff0d0}
.popcorn-theme #result-content .settlement-caption,.popcorn-theme #result-content #settlement-status{color:#c5dfe7}
.popcorn-theme #result-content .settlement-total{color:#ffe28a;text-shadow:none}
.popcorn-theme #result-content .settlement-step{background:#193c50;color:#d6e9ee}
.popcorn-theme #result-content .settlement-step.active{background:#28576a;border-color:#ffe28a}
.popcorn-theme #result-content .settlement-step b{color:#9ff0d0}
.popcorn-theme #result-content .text-button,.popcorn-theme #result-content .result-more summary{color:#d6e9ee}
.popcorn-theme #result-content .result-stats span{color:#c5dfe7}

/* Result celebration: a large machine and three broad, staggered bursts. */
.result-popcorn-launch{position:absolute;inset:0;overflow:hidden;border-radius:24px;pointer-events:none;z-index:8}
.result-popcorn-machine{position:absolute;left:50%;top:var(--launch-top);width:240px;height:250px;background:url('/assets/e049bed6f187e96a8bd1/popcorn-machine.png') center/contain no-repeat;transform-origin:50% 80%;animation:machine-launch 3.1s both}
.result-popcorn-launch>i{position:absolute;left:calc(50% + var(--origin));top:calc(var(--launch-top) + 73px);width:var(--size);height:var(--size);background:url('/assets/e049bed6f187e96a8bd1/tile-popcorn.png') center/contain no-repeat;opacity:0;animation:machine-popcorn var(--duration) var(--delay) both;will-change:transform,opacity}
.machine-aura{position:absolute;left:50%;top:calc(var(--launch-top) - 35px);width:300px;height:300px;border-radius:50%;background:radial-gradient(ellipse,#fff3a14d,transparent 68%);animation:machine-aura 3.2s both}
.machine-shockwave{position:absolute;left:50%;top:calc(var(--launch-top) + 73px);width:55px;height:35px;border:3px solid #ffec93;border-radius:50%;opacity:0;animation:machine-wave .7s var(--delay) ease-out both}
.machine-star{position:absolute;left:50%;top:calc(var(--launch-top) + 73px);font:normal 24px/1 sans-serif;color:#fff4a6;opacity:0;animation:machine-star 1.15s var(--delay) ease-out both}
@keyframes machine-launch{0%{opacity:0;transform:translateX(-50%) translateY(40px) scale(.5)}12%{opacity:1;transform:translateX(-50%) scale(1.08)}18%,32%,48%{transform:translateX(-50%) rotate(-5deg) scale(.98,1.03)}25%,40%,55%{transform:translateX(-50%) rotate(5deg) scale(1.06,.96)}68%,76%{opacity:1;transform:translateX(-50%) scale(1)}100%{opacity:0;transform:translateX(-50%) translateY(35px) scale(.2)}}
@keyframes machine-popcorn{0%{opacity:0;transform:translate(-50%,0) scale(.45);animation-timing-function:cubic-bezier(.12,.65,.3,1)}6%{opacity:1}43%{opacity:1;transform:translate(calc(-50% + var(--dx)*.7),var(--lift)) rotate(calc(var(--spin)*.4)) scale(1.12);animation-timing-function:ease-in}85%{opacity:1}100%{opacity:0;transform:translate(calc(-50% + var(--dx)),var(--fall)) rotate(var(--spin)) scale(.9)}}
@keyframes machine-aura{0%,100%{opacity:0;transform:translateX(-50%) scale(.6)}20%,75%{opacity:1;transform:translateX(-50%) scale(1)}}
@keyframes machine-wave{0%{opacity:.9;transform:translate(-50%,-50%) scale(.4)}100%{opacity:0;transform:translate(-50%,-50%) scale(6)}}
@keyframes machine-star{0%{opacity:0;transform:translate(-50%,0) scale(.2)}20%{opacity:1}100%{opacity:0;transform:translate(var(--dx),var(--lift)) rotate(130deg) scale(1.2)}}
.reduced .result-popcorn-launch{display:none}
@media(prefers-reduced-motion:reduce){.result-popcorn-launch{display:none}}

/* Static value-specific kernels: no additional animated layers or hitbox changes. */
.popcorn-theme #board .tile{text-shadow:none}
.popcorn-theme #board .tile:before{background:var(--kernel-image) center/100% 100% no-repeat;background-blend-mode:normal;mask:none}
.popcorn-theme #board .tile[data-value="1"]{--kernel-image:url('/assets/e049bed6f187e96a8bd1/tile-kernel-1.png');--tile-ink:#08603b}
.popcorn-theme #board .tile[data-value="2"]{--kernel-image:url('/assets/e049bed6f187e96a8bd1/tile-kernel-2.png');--tile-ink:#094f9d}
.popcorn-theme #board .tile[data-value="3"]{--kernel-image:url('/assets/e049bed6f187e96a8bd1/tile-kernel-3.png');--tile-ink:#662296}
.popcorn-theme #board .tile[data-value="4"]{--kernel-image:url('/assets/e049bed6f187e96a8bd1/tile-kernel-4.png');--tile-ink:#b51e46}
.popcorn-theme #board .tile[data-value="5"]{--kernel-image:url('/assets/e049bed6f187e96a8bd1/tile-kernel-5.png');--tile-ink:#885008}

/* Preview the board during preparation; the inert board still blocks input. */
.popcorn-theme #board-cover.countdown-preview{background:transparent;border:0;box-shadow:none;backdrop-filter:none;pointer-events:auto}
.countdown-badge{display:inline-grid;place-items:center;background:#fff1b6;color:#885008;border:2px solid #fff;border-radius:50%;width:28px;height:28px;font-size:21px;line-height:1;vertical-align:middle}
/* Puffed-popcorn HUD: quiet mint backdrop, cream shells and tactile controls. */
.popcorn-theme:has(#game:not(.hidden)){background:radial-gradient(ellipse at 50% 0,#edf9ed,transparent 65%),linear-gradient(155deg,#b8deda,#d5ece1 70%,#e9efd5)}
.popcorn-theme .game:not(.hidden){--hud-shell:linear-gradient(155deg,#fffef5,#f7ebce);--hud-edge:#fffdf0}
.popcorn-theme .game>.scoreboard,.popcorn-theme .game>.level-status,.popcorn-theme .game>.fever-meter,.popcorn-theme .game>.time-track,.popcorn-theme .game>.board-toolbar,.popcorn-theme .game>.hint-progress,.popcorn-theme .game>.game-heading,.popcorn-theme .game>.duel-pressure{width:min(100%,var(--play-panel-width,100%));box-sizing:border-box;align-self:center}
.popcorn-theme .game .scoreboard{background:var(--hud-shell);border:2px solid var(--hud-edge);border-radius:24px;box-shadow:inset 0 2px 0 #fff,0 4px 0 #bca77c,0 7px 12px #315b5320;padding-top:8px;padding-bottom:8px}
.popcorn-theme .game .score-block small{color:#776746}.popcorn-theme .game .score-block strong{color:#286b58;text-shadow:0 1px #fff}.popcorn-theme .game .score-block:last-child strong{color:#a26b24}
.popcorn-theme .game .level-status{background:var(--hud-shell);border:1px solid #fff9e9;border-radius:15px;box-shadow:0 2px 0 #cbb68c;padding:5px 8px;color:#53695a;gap:7px}
.popcorn-theme .game .level-badge{background:linear-gradient(#ffe6a0,#edbf63);border:1px solid #fff1c5;border-radius:10px;color:#805421;box-shadow:inset 0 2px #fff3c5,0 2px #cc9f50}
.popcorn-theme .game .time-track{height:8px;margin-top:4px;border:2px solid #fff7df;background:#c9d1bb;box-shadow:inset 0 1px 2px #586a5533}
.popcorn-theme .game #time-fill{background:linear-gradient(#8cdbc5,#4fa48b)}
.popcorn-theme .game .fever-meter,.popcorn-theme .game.fever-active .fever-meter{background:#fff5d9;border:1px solid #fffdf0;border-radius:12px;box-shadow:0 2px 0 #cbb68c;color:#826127}
.popcorn-theme .game .hint-button{background:linear-gradient(#fff0b8,#edc578);border:2px solid #fff7d9;border-radius:14px;color:#765021;box-shadow:inset 0 2px #fff8dc,0 3px 0 #bd9859;min-height:36px}
.popcorn-theme .game .hint-button:disabled{opacity:.6}
.popcorn-theme .game .back-button,.popcorn-theme .game #pause,.popcorn-theme .game .haptics-button{background:var(--hud-shell);border:2px solid #fffdf2;border-radius:14px;box-shadow:inset 0 2px #fff,0 3px 0 #bca77c;color:#526a5b}
.popcorn-theme .game .turn-label{color:#3d695f}.popcorn-theme .game .hint-progress{color:#617970;font-size:10px}
.popcorn-theme .game .board-toolbar{padding:3px 0;gap:8px}.popcorn-theme .game .game-heading{margin-bottom:5px}
.popcorn-theme .game .path-info{color:#4e7163}
.popcorn-theme .game[data-duel-turn="bot"] .scoreboard{border-color:#e2dff5}
@media(max-height:700px){.popcorn-theme .game .scoreboard{padding-top:4px;padding-bottom:4px}.popcorn-theme .game .level-status{padding-top:3px;padding-bottom:3px}.popcorn-theme .game .board-toolbar{padding:0}}
.popcorn-theme .game .score-block strong.urgent{color:#dc3545}
.popcorn-theme .game .time-track.urgent #time-fill{background:linear-gradient(#ff9177,#ec4949)}
/* Gameplay HUD hierarchy: a compact title, inset score windows, and a popcorn gauge. */
.popcorn-theme .game-heading .eyebrow{display:none}
.popcorn-theme .game-heading h2{font-size:19px;letter-spacing:-.5px;color:#315d50;text-shadow:0 1px #fff;margin:0}
.popcorn-theme .game .game-heading{min-height:38px;gap:10px}
.popcorn-theme .game .haptics-button{font-size:10px;min-height:34px;padding:5px 9px}
.popcorn-theme .game[data-mode="time"] .scoreboard{display:grid;grid-template-columns:1.15fr 1fr;gap:8px;background:linear-gradient(145deg,#386d68,#254e50);border:3px solid #fff0c7;padding:7px;min-height:80px;border-radius:24px;box-shadow:0 4px 0 #b39a69,inset 0 2px 4px #193e4933}
.popcorn-theme .game[data-mode="time"] .score-block{position:relative;text-align:left;padding:7px 13px;background:linear-gradient(145deg,#fffdf1,#efe2bb);border:1px solid #fff9df;border-radius:17px;box-shadow:inset 0 2px 0 #fff;min-width:0}
.popcorn-theme .game[data-mode="time"] .score-block:last-child{background:linear-gradient(145deg,#fff7de,#f4d99b);text-align:right}
.popcorn-theme .game[data-mode="time"] .score-block strong{font-size:36px;line-height:1.05;font-weight:900;letter-spacing:-1px}
.popcorn-theme .game[data-mode="time"] .score-block small{font-size:10px;font-weight:800;display:block;margin-bottom:3px}
.popcorn-theme .game[data-mode="time"] .score-block em{font-size:11px;margin-left:3px}
.popcorn-theme .game .level-status{background:transparent;border:0;border-radius:0;box-shadow:none;padding:4px 3px;gap:9px}
.popcorn-theme .game .level-badge{border-radius:12px 12px 15px 15px;background:linear-gradient(#ffe6a2,#efb85c);border:2px solid #fff7d5;box-shadow:0 3px 0 #bf8e43;padding:5px 7px;font-weight:900;transform:rotate(-3deg)}
.popcorn-theme .game .level-status small{font-size:10px;color:#658273}
.popcorn-theme .game .fever-meter,.popcorn-theme .game.fever-active .fever-meter{position:relative;min-height:26px;height:26px;padding:4px 9px 4px 30px;border:2px solid #fff5d6;background:linear-gradient(#526f65,#3b5c54);color:#fff1c0;border-radius:14px;box-shadow:0 2px 0 #9d9872;font-weight:800}
.popcorn-theme .game .fever-meter:before{content:'';position:absolute;width:30px;height:30px;left:-3px;top:-4px;background:url('/assets/e049bed6f187e96a8bd1/tile-popcorn.png') center/contain no-repeat;pointer-events:none}
.popcorn-theme .game .fever-track{background:#243f38;box-shadow:inset 0 1px 3px #172e36;border-radius:8px}
.popcorn-theme .game .fever-track i{background:linear-gradient(#fff09a,#f7bd39);border-radius:8px;box-shadow:inset 0 1px #fff7c6}
.popcorn-theme .game .board-toolbar{min-height:35px;padding:2px 0}
.popcorn-theme .game .hint-button{border-radius:13px;font-weight:900}
@media(max-height:700px){.popcorn-theme .game[data-mode="time"] .scoreboard{min-height:66px;padding:5px}.popcorn-theme .game[data-mode="time"] .score-block{padding:4px 10px}.popcorn-theme .game[data-mode="time"] .score-block strong{font-size:29px}}
/* Compact layout places pause over the score shell; reserve its own lane. */
@media(max-width:600px){.popcorn-theme .game[data-mode="time"] .scoreboard{padding-right:53px;grid-template-columns:1fr 1fr}.popcorn-theme .game[data-mode="time"] .score-block{padding-left:9px;padding-right:9px}.popcorn-theme .game[data-mode="time"] .score-block strong{font-size:32px}}
/* A clear popcorn badge and a character-led pause screen. */
.popcorn-theme .game .fever-meter,.popcorn-theme .game.fever-active .fever-meter{padding-left:38px;overflow:visible;margin-top:5px;margin-bottom:3px}
.popcorn-theme .game .fever-meter:before{width:37px;height:37px;left:-3px;top:-8px;box-sizing:border-box;border:2px solid #fff0bd;border-radius:50%;background:#254f53 url('/assets/e049bed6f187e96a8bd1/tile-kernel-5.png') center/34px 34px no-repeat;box-shadow:0 2px 0 #b4995e}
.popcorn-theme #board-cover.pause-cover{box-sizing:border-box;background:radial-gradient(ellipse at 50% 12%,#f4fff0,transparent 65%),linear-gradient(155deg,#d8eee2,#a9d0c3);border:3px solid #fff2cf;border-radius:24px;box-shadow:inset 0 2px 0 #fff;gap:0;padding:18px 16px;color:#315d50;overflow:auto}
.pause-mascot{width:112px;height:112px;flex-shrink:0;background:url('/assets/e049bed6f187e96a8bd1/mascot-popcorn.png') center/contain no-repeat;margin:0 auto 10px}
.popcorn-theme #board-cover.pause-cover .pause-title{font-size:27px;line-height:1.2;color:#315d50;text-shadow:0 2px #fff8dd}
.popcorn-theme #board-cover.pause-cover .pause-caption{font-size:13px;color:#537a69;margin:10px 0 20px}
.popcorn-theme #board-cover.pause-cover .pause-settings{display:flex;gap:10px;margin:0 0 22px}
.popcorn-theme #board-cover.pause-cover .pause-settings button{min-width:86px;min-height:42px;border:2px solid #fffcdf;border-radius:14px;background:linear-gradient(#fffef4,#eee2bb);box-shadow:0 3px 0 #b2a47f;color:#52634c;font-weight:800}
.popcorn-theme #board-cover.pause-cover #resume,.popcorn-theme #board-cover.pause-cover #pause-exit{width:min(100%,290px);min-height:50px;padding:12px;font-size:17px;border-radius:17px}
.popcorn-theme #board-cover.pause-cover #resume{background:linear-gradient(#ffce65,#f29e39);border:2px solid #fff1bf;box-shadow:0 4px 0 #b66c29;color:#704019;text-shadow:0 1px #ffe4a8}
.popcorn-theme #board-cover.pause-cover #pause-exit{margin-top:13px;background:linear-gradient(#fffef4,#ede2c2);border:2px solid #fffdf0;box-shadow:0 3px 0 #b7a67c;color:#59674e}
@media(max-height:700px){.pause-mascot{width:70px;height:70px;margin-bottom:6px}.popcorn-theme #board-cover.pause-cover{padding:10px 14px}.popcorn-theme #board-cover.pause-cover .pause-caption{margin:6px 0 12px}.popcorn-theme #board-cover.pause-cover .pause-settings{margin-bottom:14px}}
/* A visible start countdown over a fully revealed, input-locked board. */
.popcorn-theme #board-cover.countdown-preview{background:transparent!important;backdrop-filter:none!important;display:flex;align-items:center;justify-content:center}
.countdown-number{font-size:clamp(92px,22vw,140px);font-weight:900;line-height:1;color:#fff7d5;-webkit-text-stroke:3px #77502c;paint-order:stroke fill;text-shadow:0 5px 0 #af743a,0 9px 18px #173d4a99;pointer-events:none;animation:countdown-pop .65s ease-out both}
@keyframes countdown-pop{0%{transform:scale(1.3);opacity:0}18%{opacity:1}75%{opacity:1;transform:scale(1)}100%{opacity:.65;transform:scale(.9)}}
@media(prefers-reduced-motion:reduce){.countdown-number{animation:none}}
.reduced .countdown-number{animation:none}
.popcorn-theme #board .tile.easy-nudge:before{animation:easy-start-cue 1.3s ease-in-out infinite}
@keyframes easy-start-cue{50%{transform:scale(1.06);opacity:.72}}
@media(prefers-reduced-motion:reduce){.popcorn-theme #board .tile.easy-nudge:before{animation:none}.popcorn-theme #board .tile.easy-nudge{outline:2px solid #ffed91;outline-offset:-4px}}
.reduced #board .tile.easy-nudge:before{animation:none}.reduced #board .tile.easy-nudge{outline:2px solid #ffed91;outline-offset:-4px}
/* Score Challenge HUD: time bar docked into the scoreboard, level inside the score card, toolbar under the board. */
.popcorn-theme .score-level{margin:2px 0 0;font-size:10px;line-height:1.2;color:#6d7a5e;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.popcorn-theme .score-level b{display:inline-block;margin-right:3px;padding:1px 6px;border-radius:8px;background:linear-gradient(#ffd877,#f2b23f);color:#6a4515;font-size:10px}
.popcorn-theme .game[data-duel-turn=""] .scoreboard{padding-bottom:20px}
.popcorn-theme .game[data-duel-turn=""] .time-track{position:relative;z-index:3;height:10px;margin:-17px 14px 6px;border-width:2px}
.popcorn-theme .game[data-duel-turn=""] .time-track.urgent{animation:none}
.popcorn-theme .game[data-duel-turn=""] .scoreboard{order:0}
.popcorn-theme .game[data-duel-turn=""] .time-track{order:1}
.popcorn-theme .game[data-duel-turn=""] .fever-meter{order:2}
.popcorn-theme .game[data-duel-turn=""] .board-fit{order:3}
.popcorn-theme .game[data-duel-turn=""] .board-toolbar{order:4;margin:8px 0 0}
.popcorn-theme .game[data-duel-turn=""] .hint-progress{order:5}
.popcorn-theme .game[data-duel-turn=""] .path-info{order:6}
/* Popcorn tiles sit inside their cells with a small gap so neighbours stop overlapping. */
.popcorn-theme #board .tile:before{inset:3%}
/* Popbot Duel HUD: opponent name lives in the scoreboard, turn timer docks under it, turn banner and hint move below the board. */
.popcorn-theme .game[data-duel-turn="player"] .scoreboard,.popcorn-theme .game[data-duel-turn="bot"] .scoreboard{order:0;padding-bottom:20px}
.popcorn-theme .game[data-duel-turn="player"] .time-track,.popcorn-theme .game[data-duel-turn="bot"] .time-track{order:1;position:relative;z-index:3;height:10px;margin:-17px 14px 6px;border-width:2px}
.popcorn-theme .game[data-duel-turn="player"] .duel-pressure,.popcorn-theme .game[data-duel-turn="bot"] .duel-pressure{order:2}
.popcorn-theme .game[data-duel-turn="player"] .board-fit,.popcorn-theme .game[data-duel-turn="bot"] .board-fit{order:3}
.popcorn-theme .game[data-duel-turn="player"] .board-toolbar,.popcorn-theme .game[data-duel-turn="bot"] .board-toolbar{order:4;margin:8px 0 0}
.popcorn-theme .game[data-duel-turn="player"] .hint-progress,.popcorn-theme .game[data-duel-turn="bot"] .hint-progress{order:5}
.popcorn-theme .game[data-duel-turn="player"] .path-info,.popcorn-theme .game[data-duel-turn="bot"] .path-info{order:6}
.popcorn-theme .game[data-duel-turn] .score-block small{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.popcorn-theme .game[data-duel-turn] .duel-turn-clock{white-space:nowrap;padding-inline:6px;gap:3px}
.popcorn-theme .game[data-duel-turn] .duel-turn-clock .turn-clock-seconds{font-size:.92em;letter-spacing:-.02em}
.popcorn-theme .game[data-duel-turn] .score-block p{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
/* Daily challenge card */
.popcorn-theme .daily-card{background:linear-gradient(#5cc59a,#2f9a74);box-shadow:0 6px 0 #1f6e53,0 10px 20px #376e7930}
.popcorn-theme .daily-card .mode-icon{background:none;font-size:34px;line-height:61px;text-align:center;color:#fff6c2;text-shadow:0 2px 0 #1f6e53}
.popcorn-theme .mode-card.daily-card{flex-direction:row;gap:normal}
.popcorn-theme .mode-card.daily-card,.popcorn-theme .mode-card.daily-card strong,.popcorn-theme .mode-card.daily-card small,.popcorn-theme .mode-card.daily-card .mode-tag{color:#fff}
/* Achievements */
.popcorn-theme #achievements-nav{display:inline-flex;align-items:center;gap:6px}
.achievement-list{display:grid;gap:8px;margin-top:10px;max-height:min(60vh,460px);overflow:auto}
.achievement{display:flex;align-items:center;gap:10px;padding:8px 10px;border-radius:14px;background:#fff8e6;border:1px solid #f0dfb3;opacity:.55}
.achievement.done{opacity:1;background:linear-gradient(110deg,#fff3c4,#fffaf0);border-color:#f2c45a}
.achievement b{font-size:22px;line-height:1}
.achievement span{display:flex;flex-direction:column;text-align:left}
.achievement strong{font-size:14px;color:#5b4416}
.achievement small{font-size:11px;color:#7b6a45}
/* Achievement unlock: popcorn-burst medal card */
.achievement-pop{position:fixed;inset:0;z-index:9999;display:flex;align-items:flex-start;justify-content:center;padding-top:max(18vh,90px);background:radial-gradient(circle at 50% 30%,#fff3b077,#12323bb3 72%);animation:ach-fade .25s ease-out both;cursor:pointer}
.achievement-pop.leaving{animation:ach-fade .35s ease-in reverse both}
.achievement-pop-card{position:relative;width:min(82vw,320px);padding:58px 22px 22px;border-radius:28px;text-align:center;background:linear-gradient(160deg,#fffdf2,#ffe9a6 70%,#ffd36a);border:4px solid #fff;box-shadow:0 8px 0 #c98f2b,0 18px 40px #0a2a3866;color:#5b3d0c;animation:ach-pop .6s cubic-bezier(.2,1.6,.4,1) both}
.achievement-pop-medal{position:absolute;left:50%;top:-38px;width:84px;height:84px;margin-left:-42px;border-radius:50%;display:grid;place-items:center;font-size:48px;background:radial-gradient(circle at 35% 30%,#fffbe0,#ffcf4a 60%,#e8a020);border:4px solid #fff;box-shadow:0 5px 0 #c98f2b,0 0 0 8px #fff3b088;animation:ach-medal .9s cubic-bezier(.3,1.5,.5,1) .1s both}
.achievement-pop-card small{display:block;font-size:13px;font-weight:900;letter-spacing:.08em;color:#c26a12}
.achievement-pop-card strong{display:block;margin:4px 0 6px;font-size:28px;line-height:1.15;color:#3f2a06}
.achievement-pop-card p{margin:0;font-size:14px;color:#7a5a1e}
.achievement-pop-card em{display:inline-block;margin-top:10px;padding:2px 10px;border-radius:99px;background:#fff8dd;font-style:normal;font-size:12px;color:#a06a10}
.achievement-pop-burst{position:absolute;left:50%;top:4px;width:0;height:0;pointer-events:none}
.achievement-pop-burst i{position:absolute;left:-11px;top:-11px;width:22px;height:22px;background:url('/assets/e049bed6f187e96a8bd1/tile-popcorn.png') center/contain no-repeat;opacity:0;animation:ach-burst .9s ease-out var(--d) both}
.achievement-pop.still,.achievement-pop.still *{animation:none!important}
.achievement-pop.still .achievement-pop-burst{display:none}
@keyframes ach-fade{from{opacity:0}to{opacity:1}}
@keyframes ach-pop{0%{transform:translateY(-40px) scale(.6);opacity:0}100%{transform:none;opacity:1}}
@keyframes ach-medal{0%{transform:scale(0) rotate(-200deg)}100%{transform:none}}
@keyframes ach-burst{0%{opacity:1;transform:rotate(var(--a)) translateY(0) scale(.4)}70%{opacity:1}100%{opacity:0;transform:rotate(var(--a)) translateY(calc(-1 * var(--r))) scale(1.1) rotate(160deg)}}
/* Lobby achievement card */
.popcorn-theme .achievement-card{display:flex;align-items:center;gap:12px;width:100%;margin:14px 0 4px;padding:12px 16px;border:3px solid #fff;border-radius:22px;background:linear-gradient(120deg,#fff6cf,#ffe08a);box-shadow:0 5px 0 #d29a35,0 9px 18px #376e7925;color:#5b3d0c;text-align:left;cursor:pointer}
.popcorn-theme .achievement-card:active{transform:translateY(2px);box-shadow:0 3px 0 #d29a35}
.achievement-card-medal{flex:0 0 auto;width:52px;height:52px;border-radius:50%;display:grid;place-items:center;font-size:30px;background:radial-gradient(circle at 35% 30%,#fffbe0,#ffcf4a 60%,#e8a020);border:3px solid #fff;box-shadow:0 3px 0 #c98f2b}
.achievement-card-body{flex:1;min-width:0;display:flex;flex-direction:column;gap:5px}
.achievement-card-head{display:flex;align-items:baseline;justify-content:space-between;gap:8px}
.achievement-card-head b{font-size:18px;color:#3f2a06}
.achievement-card-head small{font-size:11px;font-weight:800;color:#b06d12;white-space:nowrap}
.achievement-card-bar{display:block;height:9px;border-radius:99px;background:#fff8e2;box-shadow:inset 0 1px 2px #b9862d55;overflow:hidden}
.achievement-card-bar i{display:block;height:100%;width:0;border-radius:inherit;background:linear-gradient(90deg,#ffb52e,#ff7b2e);transition:width .6s ease}
#achievement-next{font-size:12px;line-height:1.35;color:#7a5a1e;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}
/* Achievement rewards: cosmetics menu */
.achievement-reward{display:block;margin-top:2px;font-style:normal;font-size:11px;font-weight:800;color:#b06d12}
.achievement:not(.done) .achievement-reward{color:#9a8a68}
.achievement-pop-card .achievement-pop-reward{margin-top:10px;padding:8px 10px;border-radius:14px;background:#fff8dd;font-size:14px;font-weight:900;color:#8a4f0c}
.achievement-pop-card .achievement-pop-reward small{display:inline;letter-spacing:0;font-size:11px;font-weight:700;color:#9a7330}
#dialog-content>.primary[data-action="cosmetics"]{width:100%;margin:4px 0 2px}
.popcorn-theme .lobby-tools #cosmetics-nav>.cosmetics-nav-copy{width:auto;height:auto;border-radius:0;background:none;box-shadow:none;display:flex;flex-direction:column;align-items:flex-start;gap:1px;font-weight:400}
#cosmetics-nav b{font-size:12px}#cosmetics-nav small{font-size:10px;color:#b06d12;max-width:9.5em;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.lobby-tools .lobby-tip.hidden{display:none}
.cosmetic-intro{font-size:13px;color:#7a5a1e}
#dialog-content h3{margin:14px 0 6px;font-size:15px;color:#5b4416;text-align:left}
.cosmetic-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(92px,1fr));gap:8px}
.cosmetic{display:flex;flex-direction:column;align-items:center;gap:3px;min-height:104px;padding:8px 4px;border-radius:16px;border:2px solid #f0dfb3;background:#fffaf0;color:#5b4416;cursor:pointer}
.cosmetic b{font-size:12px;line-height:1.2}.cosmetic small{font-size:10px;line-height:1.2;color:#9a7a45}
.cosmetic.on{border-color:#f2a93b;background:linear-gradient(160deg,#fff6cf,#ffe39a);box-shadow:0 3px 0 #d29a35}
.cosmetic.on small{color:#a35a00;font-weight:900}
.cosmetic:disabled{opacity:.55;cursor:default;filter:grayscale(.6)}
.cosmetic-grid.titles .cosmetic{min-height:0}.cosmetic-grid.titles .cosmetic-icon{display:none}
.cosmetic-icon{font-size:30px;line-height:46px;height:46px}
.bg-swatch{display:block;width:46px;height:46px;border-radius:12px;border:2px solid #fff;box-shadow:0 2px 0 #d8c08a}
.tile-swatch{position:relative;display:block;width:46px;height:46px}
.tile-swatch .tile{position:absolute;inset:0;display:grid;place-items:center;isolation:isolate;font-size:24px;font-weight:900;color:#8a2cc4;--tile-color:#e9d4f4;background:none;border:0;border-radius:0;box-shadow:none;transform:none;text-shadow:0 2px 0 #fff;filter:drop-shadow(0 2px 1px #ac85464d)}
.tile-swatch .tile:after{display:none}
.tile-swatch .tile:before{content:'';position:absolute;inset:-8%;width:auto;height:auto;border-radius:0;transform:none;opacity:1;z-index:-1;background:radial-gradient(ellipse at 50% 60%,var(--tile-color),transparent 65%),url('/assets/e049bed6f187e96a8bd1/tile-popcorn.png') center/100% 100% no-repeat;background-blend-mode:multiply;mask:url('/assets/e049bed6f187e96a8bd1/tile-popcorn.png') center/100% 100% no-repeat}
/* Tile flavors: a glaze multiplied over each number's kernel art and clipped to its shape. */
.tile-swatch .tile{--kernel-image:url('/assets/e049bed6f187e96a8bd1/tile-kernel-3.png');color:#662296}
.tile-swatch .tile:before{background:var(--kernel-image) center/100% 100% no-repeat;mask:none}
.popcorn-theme[data-tile-skin="caramel"] #board .tile:before,.tile-swatch[data-tile-skin="caramel"] .tile:before{background:radial-gradient(circle at 50% 50%,#0000 0 36%,#ec9c3e 64%),var(--kernel-image) center/100% 100% no-repeat;background-blend-mode:multiply;-webkit-mask:var(--kernel-image) center/100% 100% no-repeat;mask:var(--kernel-image) center/100% 100% no-repeat}
.popcorn-theme[data-tile-skin="choco"] #board .tile:before,.tile-swatch[data-tile-skin="choco"] .tile:before{background:repeating-linear-gradient(-28deg,#7b3f1d 0 6%,#0000 6% 19%),var(--kernel-image) center/100% 100% no-repeat;background-blend-mode:multiply;-webkit-mask:var(--kernel-image) center/100% 100% no-repeat;mask:var(--kernel-image) center/100% 100% no-repeat}
.popcorn-theme[data-tile-skin="cheese"] #board .tile:before,.tile-swatch[data-tile-skin="cheese"] .tile:before{background:radial-gradient(circle at 24% 30%,#ff8a00 0 6%,#0000 7%),radial-gradient(circle at 74% 70%,#ff8a00 0 5%,#0000 6%),radial-gradient(circle at 50% 50%,#0000 0 36%,#ffad2e 64%),var(--kernel-image) center/100% 100% no-repeat;background-blend-mode:multiply;-webkit-mask:var(--kernel-image) center/100% 100% no-repeat;mask:var(--kernel-image) center/100% 100% no-repeat}
.popcorn-theme[data-tile-skin="rainbow"] #board .tile:before,.tile-swatch[data-tile-skin="rainbow"] .tile:before{background:conic-gradient(from 30deg,#ffb8b8,#ffe29a,#c4f0a6,#a8e0ff,#dcc4ff,#ffb8b8),var(--kernel-image) center/100% 100% no-repeat;background-blend-mode:multiply;-webkit-mask:var(--kernel-image) center/100% 100% no-repeat;mask:var(--kernel-image) center/100% 100% no-repeat}
.popcorn-theme[data-tile-skin="rainbow"] #board .tile:not(.selected){filter:drop-shadow(0 2px 1px #ac85464d) drop-shadow(0 0 4px #fff6b0)}
/* Pop effects */
.fx-star{display:grid;place-items:center;font-size:var(--kernel-size);line-height:1;color:#ffd84a;-webkit-text-stroke:1px #e59a12;filter:drop-shadow(0 0 4px #fff3a0)}
.popcorn-theme[data-fx="flame"] .path-lines line{stroke:#ffcf6b;filter:drop-shadow(0 0 3px #ff6a00) drop-shadow(0 0 7px #ff3d00)}
.popcorn-theme[data-fx="flame"] .pop-ring{border-color:#ff7a1a}.popcorn-theme[data-fx="flame"] .pop-wave{border-color:#ffb347;box-shadow:0 0 18px #ff6a00,inset 0 0 10px #fff}
.fx-shock{position:absolute;width:60px;height:60px;border-radius:50%;border:7px solid #fff1a8;box-shadow:0 0 22px #ffb000,inset 0 0 14px #fff;pointer-events:none;animation:fx-shock .7s ease-out both}
.fx-shock.second{border-color:#ffb8e1;box-shadow:0 0 22px #ff5fb8;animation-delay:.12s}
@keyframes fx-shock{0%{transform:translate(-50%,-50%) scale(.2);opacity:1}100%{transform:translate(-50%,-50%) scale(6);opacity:0}}
.fx-rain{position:absolute;top:-30px;width:var(--kernel-size);height:var(--kernel-size);pointer-events:none;animation:fx-rain .78s cubic-bezier(.45,0,.8,.6) both}
.fx-rain svg{display:block;width:100%;height:100%}
@keyframes fx-rain{0%{transform:translateY(0) rotate(0);opacity:0}15%{opacity:1}85%{opacity:1}100%{transform:translateY(var(--fall-to)) rotate(260deg);opacity:0}}
.reduced .fx-star,.reduced .fx-shock,.reduced .fx-rain{display:none}@media(prefers-reduced-motion:reduce){.fx-star,.fx-shock,.fx-rain{display:none}}
/* Popbot outfits sit on the art's own box, whatever size the image is drawn at. */
.popbot-dress{position:relative;display:block;container-type:size}
.popbot-dress>img{position:relative;z-index:1;display:block;width:100%;height:100%;object-fit:contain}
.popbot-fit{position:absolute;left:50%;top:50%;z-index:2;width:min(100cqw,calc(100cqh * 1230 / 1278));aspect-ratio:1230/1278;transform:translate(-50%,-50%);container-type:inline-size;pointer-events:none}
.popbot-fit.back{z-index:0}
.popbot-outfit{position:absolute;left:50%;top:13%;font-style:normal;line-height:1;font-size:26cqw;transform:translate(-50%,-50%)}
[data-outfit="hat"] .popbot-fit .popbot-outfit{top:12%;transform:translate(-50%,-50%) rotate(-8deg)}
[data-outfit="bowtie"] .popbot-fit .popbot-outfit{left:53%;top:57%;font-size:17cqw}
[data-outfit="crown"] .popbot-fit .popbot-outfit{top:11%;font-size:27cqw}
[data-outfit="cape"] .popbot-fit.back:before{content:'';position:absolute;left:0;top:0;width:100%;height:100%;background:linear-gradient(#e2433f,#a8262c);clip-path:polygon(33% 58%,74% 58%,90% 96%,18% 96%)}
.popcorn-theme .hero-pair .popbot-dress{width:54%;height:100%}.popcorn-theme .hero-pair .popbot-dress>img{width:100%}
.play-scenery .popbot-dress{position:absolute;aspect-ratio:1230/1278}.play-scenery .popbot-dress>img{position:relative;width:100%}
.result-bot .popbot-outfit{top:-12px;font-size:30px}.result-bot[data-outfit="bowtie"] .popbot-outfit{top:auto;bottom:-14px;font-size:22px}.result-bot[data-outfit="crown"] .popbot-outfit{top:-16px}
/* Backgrounds */
.popcorn-theme[data-bg="morning"],.popcorn-theme[data-bg="morning"]:has(#game:not(.hidden)){background:radial-gradient(circle at 82% 10%,#fff9dc 0 7%,#fff3c400 22%),linear-gradient(#ffd3a1,#ffeec4 55%,#eaf7d2);background-attachment:fixed}
.popcorn-theme[data-bg="sunset"],.popcorn-theme[data-bg="sunset"]:has(#game:not(.hidden)){background:radial-gradient(ellipse at 50% 85%,#fff1b8 0,#fff1b800 45%),linear-gradient(#ff8f7a,#ffb98a 40%,#ffe0a8 72%,#d9efc4);background-attachment:fixed}
.popcorn-theme[data-bg="sunset"]:before{background:#7fba63;box-shadow:0 -18px 0 #a9d585}.popcorn-theme[data-bg="sunset"]:after{background:#5aa37a;box-shadow:0 -18px 0 #89c98e}
.popcorn-theme[data-bg="golden"],.popcorn-theme[data-bg="golden"]:has(#game:not(.hidden)){background:radial-gradient(circle,#fffbe6 0 2px,#0000 3px) 0 0/44px 44px,radial-gradient(ellipse at 50% 15%,#fff7cf 0,#fff7cf00 60%),linear-gradient(#f6c24a,#ffe08a 55%,#fff3c6);background-attachment:fixed}
.popcorn-theme[data-bg="golden"]:before{background:#e3a83a;box-shadow:0 -18px 0 #f2c45a}.popcorn-theme[data-bg="golden"]:after{background:#c98b25;box-shadow:0 -18px 0 #e0a83a}
.popcorn-theme[data-bg="cinema"],.popcorn-theme[data-bg="cinema"]:has(#game:not(.hidden)){background:radial-gradient(ellipse at 50% -5%,#fff2c266 0,#fff2c200 45%),repeating-linear-gradient(90deg,#0000 0 46px,#00000018 46px 52px),linear-gradient(#2d2252,#4b2e6d 55%,#7c344f);background-attachment:fixed}
.popcorn-theme[data-bg="cinema"]:before{background:#7a2335;box-shadow:0 -18px 0 #a33a4a}.popcorn-theme[data-bg="cinema"]:after{background:#5c1a29;box-shadow:0 -18px 0 #8a2b3c}
.popcorn-theme.dark-bg .lobby-title p,.popcorn-theme.dark-bg .brand,.popcorn-theme.dark-bg footer,.popcorn-theme.dark-bg footer button,.popcorn-theme.dark-bg footer a,.popcorn-theme.dark-bg .game-heading h2,.popcorn-theme.dark-bg .game-heading .eyebrow,.popcorn-theme.dark-bg .turn-label,.popcorn-theme.dark-bg .path-info,.popcorn-theme.dark-bg .languages a:not([aria-current]){color:#fff4d6}
.bg-swatch[data-bg="sky"]{background:linear-gradient(#5cc5f3,#abedfc 70%,#e5f8d0)}.bg-swatch[data-bg="morning"]{background:linear-gradient(#ffd3a1,#ffeec4 55%,#eaf7d2)}.bg-swatch[data-bg="sunset"]{background:linear-gradient(#ff8f7a,#ffb98a 40%,#ffe0a8)}.bg-swatch[data-bg="golden"]{background:linear-gradient(#f6c24a,#ffe08a 55%,#fff3c6)}.bg-swatch[data-bg="cinema"]{background:linear-gradient(#2d2252,#4b2e6d 55%,#7c344f)}
/* Bbeol Coin shop items (number.*) share the reward slots. */
.popcorn-theme[data-tile-skin="number.tile.mint"] #board .tile:before,.tile-swatch[data-tile-skin="number.tile.mint"] .tile:before{background:radial-gradient(circle at 50% 50%,#0000 0 36%,#7fdcbe 64%),var(--kernel-image) center/100% 100% no-repeat;background-blend-mode:multiply;-webkit-mask:var(--kernel-image) center/100% 100% no-repeat;mask:var(--kernel-image) center/100% 100% no-repeat}
.popcorn-theme[data-tile-skin="number.tile.strawberry"] #board .tile:before,.tile-swatch[data-tile-skin="number.tile.strawberry"] .tile:before{background:radial-gradient(circle at 26% 34%,#c4123a 0 3%,#0000 4%),radial-gradient(circle at 72% 30%,#c4123a 0 3%,#0000 4%),radial-gradient(circle at 64% 76%,#c4123a 0 3%,#0000 4%),radial-gradient(circle at 50% 50%,#0000 0 36%,#ff9db0 64%),var(--kernel-image) center/100% 100% no-repeat;background-blend-mode:multiply;-webkit-mask:var(--kernel-image) center/100% 100% no-repeat;mask:var(--kernel-image) center/100% 100% no-repeat}
.popcorn-theme[data-tile-skin="number.tile.cotton"] #board .tile:before,.tile-swatch[data-tile-skin="number.tile.cotton"] .tile:before{background:linear-gradient(135deg,#ffc6e8,#c9ddff),var(--kernel-image) center/100% 100% no-repeat;background-blend-mode:multiply;-webkit-mask:var(--kernel-image) center/100% 100% no-repeat;mask:var(--kernel-image) center/100% 100% no-repeat}
.fx-heart{display:grid;place-items:center;font-size:var(--kernel-size);line-height:1;color:#ff5c8a;-webkit-text-stroke:1px #fff;filter:drop-shadow(0 0 4px #ffc2d6)}
.fx-confetti{width:calc(var(--kernel-size) * .45);height:calc(var(--kernel-size) * .8);border-radius:2px;background:hsl(var(--hue) 85% 62%)}
.reduced .fx-heart,.reduced .fx-confetti{display:none}@media(prefers-reduced-motion:reduce){.fx-heart,.fx-confetti{display:none}}
[data-outfit="number.outfit.shades"] .popbot-fit .popbot-outfit{top:35%;font-size:36cqw}
[data-outfit="number.outfit.headset"] .popbot-fit .popbot-outfit{top:30%;font-size:74cqw;transform:translate(-50%,-50%) scale(1,.6)}
.result-bot[data-outfit="number.outfit.shades"] .popbot-outfit{top:6px;font-size:34px}.result-bot[data-outfit="number.outfit.headset"] .popbot-outfit{top:-10px;font-size:62px;left:50%}
.popcorn-theme[data-bg="number.bg.space"],.popcorn-theme[data-bg="number.bg.space"]:has(#game:not(.hidden)){background:radial-gradient(circle,#ffffffcc 0 1px,#0000 2px) 0 0/37px 41px,radial-gradient(circle,#fff6 0 1px,#0000 2px) 13px 19px/53px 47px,radial-gradient(ellipse at 50% -5%,#b9a4ff55 0,#0000 50%),linear-gradient(#1d1b4b,#3b2f78 55%,#5a3d9a);background-attachment:fixed}
.popcorn-theme[data-bg="number.bg.space"]:before{background:#2e2466;box-shadow:0 -18px 0 #43358a}.popcorn-theme[data-bg="number.bg.space"]:after{background:#211a4d;box-shadow:0 -18px 0 #362b73}
.popcorn-theme[data-bg="number.bg.beach"],.popcorn-theme[data-bg="number.bg.beach"]:has(#game:not(.hidden)){background:radial-gradient(circle at 18% 12%,#fffbe0 0 6%,#fff6c200 18%),linear-gradient(#8fdcff,#bff0ff 45%,#7fd6e8 62%,#ffe7a8 63%,#ffdf96);background-attachment:fixed}
.popcorn-theme[data-bg="number.bg.beach"]:before{background:#f5d48a;box-shadow:0 -18px 0 #ffe7a8}.popcorn-theme[data-bg="number.bg.beach"]:after{background:#e9c374;box-shadow:0 -18px 0 #f7dc9a}
.bg-swatch[data-bg="number.bg.space"]{background:linear-gradient(#1d1b4b,#5a3d9a)}.bg-swatch[data-bg="number.bg.beach"]{background:linear-gradient(#8fdcff 55%,#ffe7a8 56%)}
.cosmetic-shop{display:flex;flex-direction:column;gap:2px;margin:8px 0 2px;padding:10px 14px;border-radius:16px;background:linear-gradient(120deg,#fff3c4,#ffe08a);border:2px solid #fff;box-shadow:0 3px 0 #d29a35;color:#5b3d0c;text-decoration:none;text-align:left}
.cosmetic-shop span{font-size:13px;font-weight:900;color:#a35a00}.cosmetic-shop b{font-size:15px}.cosmetic-shop small{font-size:11px;color:#7a5a1e}
.coin-dot{display:inline-block;width:13px;height:13px;margin-right:5px;vertical-align:-1px;border-radius:50%;background:radial-gradient(circle at 35% 30%,#fff6c4,#ffc928 55%,#d99a0f);box-shadow:inset 0 0 0 1.5px #b9790a}
.cosmetic-login{margin:6px 2px 0;font-size:12px;color:#7a5a1e}.cosmetic-login a{font-weight:900;color:#c26a12}
/* Popbot Duel series box on the result screen */
.series-box{display:flex;flex-direction:column;align-items:center;gap:2px;margin:10px auto 4px;padding:10px 14px;max-width:320px;border-radius:18px;background:#f3eefb;border:2px solid #fff;box-shadow:0 3px 0 #cdbfe6}
.series-box small{font-size:11px;font-weight:800;color:#7a64a8}
.series-box strong{font-size:24px;color:#3d2f63}
.series-box span{font-size:13px;color:#5b4b80}
.series-box em{margin-top:4px;font-style:normal;font-size:12px;font-weight:800;color:#c2650f}
.series-box.won{background:linear-gradient(120deg,#fff6cf,#ffe08a);box-shadow:0 3px 0 #d29a35}
.series-box.won strong{color:#5b3d0c}
/* Leaderboard day/week tabs */
.ranking-tabs{display:flex;gap:6px;margin:0 0 10px;padding:4px;border-radius:14px;background:#f1ead2}
.ranking-tabs button{flex:1;padding:8px 0;border:0;border-radius:10px;background:transparent;font-weight:800;color:#8a6d33;cursor:pointer}
.ranking-tabs button.on{background:#fff;color:#4a3610;box-shadow:0 2px 0 #d9c58f}
/* PM polish: Popbot voice, best-of-three and leaderboard in the popcorn look */
.popcorn-theme .board-cover strong{word-break:keep-all;line-height:1.1}
.popcorn-theme .board-cover p{max-width:88%;margin:0;padding:8px 14px;border-radius:18px;background:#fffdf5;border:2px solid #fff;box-shadow:0 3px 0 #e2c58f;color:#6b4517;font-weight:800;word-break:keep-all}
.popcorn-theme .game[data-duel-turn="bot"] .turn-copy small{align-self:flex-start;max-width:100%;margin-top:2px;padding:3px 9px;border-radius:12px 12px 12px 3px;background:#fffdf5;border:1.5px solid #fff;box-shadow:0 2px 0 #d8c08a;color:#6b4517;font-size:11px;font-weight:800;line-height:1.3;word-break:keep-all}
.popcorn-theme .series-box{background:radial-gradient(circle at 12% 20%,#fff 0 3px,#0000 4px),radial-gradient(circle at 88% 70%,#fff 0 3px,#0000 4px),linear-gradient(150deg,#fffdf2,#ffefc2);border:3px solid #fff;box-shadow:0 4px 0 #d9b56a,0 8px 16px #9a6a2a22}
.popcorn-theme .series-box small{color:#c26a12;letter-spacing:.04em}
.popcorn-theme .series-box strong{color:#5b3d0c;font-size:26px;word-break:keep-all}
.popcorn-theme .series-box span{color:#7a5a1e;font-weight:700}
.popcorn-theme .series-box.won{background:radial-gradient(circle at 12% 20%,#fff 0 3px,#0000 4px),radial-gradient(circle at 88% 70%,#fff 0 3px,#0000 4px),linear-gradient(150deg,#fff6cf,#ffd36a);box-shadow:0 4px 0 #c98f2b,0 0 0 4px #ffe9a6}
.popcorn-theme .series-box.lost{background:linear-gradient(150deg,#fffaf0,#f1e6cf);box-shadow:0 4px 0 #cdb991}
.popcorn-theme .series-box.lost strong{color:#7a6646}
.popcorn-theme .ranking-tabs{background:#f6e3b4;box-shadow:inset 0 1px 2px #c8a2554d}
.popcorn-theme .ranking-tabs button{color:#946320}
.popcorn-theme .ranking-tabs button.on{background:linear-gradient(#ffb43e,#f18a27);color:#fff;text-shadow:0 1px #ae5c20;box-shadow:0 2px 0 #ae5c20}
.popcorn-theme #dialog-content .record-row{gap:10px;padding:10px 4px;border-bottom:1px dashed #ecd9a8;font-size:13px}
.popcorn-theme #dialog-content .record-row b{min-width:40px;color:#c26a12}
.popcorn-theme #dialog-content .record-row strong{min-width:0;flex:1;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:#5b3d0c}
.popcorn-theme #dialog-content .record-row small{flex-shrink:0;text-align:right;color:#8a6d33}
.popcorn-theme #result-content .result-sub{word-break:keep-all}

/* Best-of-three score inside the duel scoreboard (final styling by the design pass) */
.duel-goal .duel-series{display:block;font-size:10px;font-weight:800;color:#7a64a8;white-space:nowrap}
/* Daily Challenge nudge on early result screens (final styling by the design pass) */
.daily-nudge{display:flex;align-items:center;gap:10px;margin:10px auto;padding:10px 12px;max-width:340px;border-radius:18px;background:linear-gradient(120deg,#e3f7ec,#c6ecd8);border:2px solid #fff;box-shadow:0 3px 0 #8cc9a8;text-align:left}
.daily-nudge-icon{font-size:26px;color:#e8a020}
.daily-nudge-text{flex:1;display:flex;flex-direction:column}
.daily-nudge-text strong{font-size:14px;color:#1f5e47}
.daily-nudge-text small{font-size:11px;color:#3d7a62}
.daily-nudge button{flex:0 0 auto;padding:8px 10px;font-size:12px}
/* Next-number preview row for duels (final styling by the design pass) */
.next-row{display:grid;grid-template-columns:auto repeat(6,1fr);align-items:center;gap:4px;margin:0 6px 4px;font-weight:900}
.next-row small{font-size:10px;color:#5b6e63;padding-right:4px}
.next-row span{text-align:center;font-size:14px;line-height:22px;border-radius:8px;background:#fff8e6;color:#5b4416;box-shadow:inset 0 -2px 0 #e7d39d}
/* Embedded on itch.io / Newgrounds / Game Jolt: hide what needs bbeol.com cookies (final styling by the design pass) */
body.embedded [data-action="ranking"],body.embedded #publish-score,body.embedded .cosmetic-shop{display:none!important}
.embed-note{margin:10px auto;max-width:340px;padding:8px 12px;border-radius:14px;background:#fff8e2;border:1px dashed #e0c27a;font-size:12px;line-height:1.45;color:#6d5320;text-align:center}
.embed-note a{font-weight:800;color:#b5651d;white-space:nowrap}
/* Lobby comeback line and streak warning (final styling by the design pass) */
.comeback{margin:4px auto 8px;max-width:360px;text-align:center;font-size:12.5px;line-height:1.45}
.comeback p{margin:2px 0}
#comeback-line{color:#6d5320;font-weight:700}
.streak-warning{display:inline-block;padding:5px 12px;border-radius:999px;background:#ffe9d6;border:1.5px dashed #e8743b;color:#b13d12;font-weight:800;animation:streak-wiggle 2.4s ease-in-out infinite}
@keyframes streak-wiggle{0%,86%,100%{transform:rotate(0)}90%{transform:rotate(-2deg)}95%{transform:rotate(2deg)}}
@media (prefers-reduced-motion:reduce){.streak-warning{animation:none}}
body.reduced .streak-warning{animation:none}
/* Design pass: comeback line as a popcorn ticket, streak warning as a hot-butter badge */
.popcorn-theme .comeback{display:flex;flex-direction:column;align-items:center;gap:6px;max-width:100%;margin:6px auto 4px;padding:0 4px;box-sizing:border-box;word-break:keep-all;overflow-wrap:anywhere}
.popcorn-theme .comeback p{margin:0;max-width:100%;box-sizing:border-box}
.popcorn-theme #comeback-line{display:inline-flex;align-items:center;gap:6px;padding:5px 14px 5px 8px;border-radius:999px;background:#fffdf3e6;border:2px solid #fff;box-shadow:0 3px 0 #e2c58f;color:#6b4517;font-size:12.5px;font-weight:800;line-height:1.35;text-align:left}
.popcorn-theme #comeback-line:before{content:'';flex:none;width:20px;height:20px;background:url('/assets/e049bed6f187e96a8bd1/tile-popcorn.png') center/contain no-repeat}
.popcorn-theme .streak-warning{padding:6px 14px;border-radius:16px;background:linear-gradient(#ffb43e,#f1772a);border:2px solid #fff3cd;box-shadow:0 3px 0 #ae5c20,0 0 0 3px #ffd86b55;color:#fff;font-size:12.5px;font-weight:900;line-height:1.35;text-shadow:0 1px 0 #ae5c20}
.popcorn-theme.dark-bg #comeback-line{background:#fffdf3;color:#5b3d0c}
/* Score Challenge course entry, result card and ranking mode tabs (final styling by the design pass) */
.difficulty.course-pick{border:2px solid #e8b43c;background:linear-gradient(180deg,#fff7dc,#ffeab0)}
.course-or{margin:10px 0 4px;font-size:12px;color:#8a6d33;text-align:center}
.course-card{margin:10px auto;max-width:340px;padding:10px 12px;border-radius:16px;background:#fff8e2;border:1.5px solid #ecd28e;text-align:center}
.course-card form{margin-top:6px}
.ranking-tabs.ranking-modes{background:#e9dcb2}
.other-games{display:block;margin:12px auto 4px;text-align:center;font-weight:800;font-size:14px;color:#b5651d}
/* Long number lists in the guide (e.g. level thresholds) must wrap at 360px */
.game-guide{overflow-wrap:anywhere}
/* Consumable item bar (mock until the items API; final styling by the design pass) */
.item-bar{display:flex;flex-wrap:wrap;gap:6px;justify-content:center;align-items:center;margin:4px 0 6px}
.item-bar .item-use{padding:6px 10px;border-radius:999px;border:1.5px solid #e8b43c;background:#fff7dc;font-weight:800;font-size:12.5px;color:#6d4a10;cursor:pointer}
.item-bar .item-use:disabled{opacity:.45;cursor:default}
.item-bar small{flex-basis:100%;text-align:center;font-size:11px;color:#8a6d33}
.item-note{border:1.5px dashed #e8b43c}
