.score-strip span{font-size:10px;color:#556732;letter-spacing:.35px}.small-label{font-size:10px;color:#70627e}.board-caption{font-size:12px;line-height:1.5;color:#665471;min-height:48px;padding:12px 0}.difficulty-row{display:flex;gap:12px;justify-content:space-between;align-items:center;margin:-3px 0 12px;font-size:10px;color:#78608c}.difficulty-row>span:first-child{background:#eee4ff;padding:5px 9px;border-radius:20px;font-weight:800;color:#6b3fba}.difficulty-row>span:last-child{text-align:right;line-height:1.3}.tool-row{gap:8px}.tool-button{min-height:50px;gap:5px;flex-wrap:wrap;padding:9px 5px;font-size:12px}.tool-button svg{width:15px;height:15px}.reward-tag{font-size:8px;padding:3px 5px;background:#e9e0f9;color:#68469a;border-radius:5px;white-space:nowrap;font-weight:800}.tool-button:disabled{opacity:.45}.reward-note{font-size:10px;line-height:1.5;text-align:center;color:#7a6b85;margin:12px 0 0}.new-run-link{display:block;margin:17px auto 0;font-size:11px;color:#746283;border:0;background:transparent;padding:10px 14px}.under-game{font-size:9px;flex-wrap:wrap;gap:10px}.under-game button{font-size:10px;color:#735d86}.footer button{font-size:11px;color:#6d5c7b;padding:10px}.result-overlay{padding:18px 14px}.result-overlay h3{font-size:28px;margin:4px 0 7px}.result-overlay p{font-size:12px;line-height:1.5;margin-bottom:10px}.result-badges{margin-bottom:12px}.result-overlay .primary-button{min-height:43px;padding:11px 13px;font-size:12px;gap:10px}.result-overlay .secondary-button{font-size:11px;padding-top:12px}.result-emblem{width:51px;height:51px;font-size:29px;margin-bottom:10px}.game-heading h2{font-size:24px}.game-heading{gap:15px}.game-heading>div:first-child{min-width:0}.run-progress{flex-shrink:0}.modal p{color:#695975}.modal .modal-footnote{font-size:11px;line-height:1.6;color:#786b82}.classic-help p,.help-step p,.retry-dialog p{font-size:13px;color:#665671}.classic-help h3,.help-step h3{font-size:14px}.ad-modal{max-width:440px;padding:24px}.demo-label{font-size:9px;font-weight:800;letter-spacing:.7px;color:#766382}.ad-modal h2{font-size:30px;margin:17px 0 8px}.ad-modal #ad-reward-copy{font-size:13px;line-height:1.6;margin-bottom:17px}.demo-creative{position:relative;isolation:isolate;overflow:hidden;border-radius:20px;padding:26px 16px;background:linear-gradient(145deg,#9065f4,#6041b7);color:white;min-height:210px;display:flex;align-items:center;justify-content:center;flex-direction:column;text-align:center;gap:15px}.ad-brand{font-family:Outfit,sans-serif;letter-spacing:-1px;font-size:24px;font-weight:800}.demo-creative strong{font-family:Outfit,sans-serif;font-size:30px;line-height:1.04;letter-spacing:-.8px;z-index:1}.demo-creative>span:last-child{font-size:12px;color:#eee5ff}.ad-orbit{position:absolute;inset:0;pointer-events:none;z-index:-1}.ad-orbit i{position:absolute;font-style:normal;font-size:85px;color:#d9f77f;opacity:.6;animation:demo-drift 4s ease-in-out infinite}.ad-orbit i:nth-child(1){left:-10px;top:-17px}.ad-orbit i:nth-child(2){right:-15px;bottom:-25px;color:#ffb3a6;font-size:110px;animation-delay:-2s}.ad-orbit i:nth-child(3){right:15px;top:10px;color:#d7f7ed;font-size:50px;animation-delay:-1s}#ad-progress{display:block;width:100%;height:8px;border:0;border-radius:8px;margin-top:22px;overflow:hidden;accent-color:#7953e9}#ad-progress::-webkit-progress-bar{background:#e9e1f3;border-radius:8px}#ad-progress::-webkit-progress-value{background:linear-gradient(90deg,#7953e9,#ad83fa);border-radius:8px}#ad-countdown{font-size:12px;text-align:center;margin:8px 0 0;font-weight:650}.ad-modal .primary-button{margin-top:15px}.ad-modal .primary-button:disabled{background:#d6cbe9;box-shadow:none;color:#665778;transform:none}#save-status{margin:10px auto 20px;max-width:800px;padding:12px 18px;background:#fff0c9;border-radius:12px;color:#70551f;font-size:12px;text-align:center}@keyframes demo-drift{50%{transform:translate(10px,-8px) rotate(18deg)}}
.score-strip span{font-size:10px!important}
#next-puzzle{width:min(100%,260px);min-height:60px;flex-shrink:0;padding:16px 24px;font-size:17px;gap:20px;border-radius:16px}#next-puzzle svg{width:22px;height:22px;flex-shrink:0}
.result-overlay .decline-button{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:4px;min-height:46px;margin-top:13px;padding:8px 12px;border:1px solid #bba4db;border-radius:11px;background:#fffafc;color:#5b3d7c;font-size:12px;font-weight:750;line-height:1.2}.decline-button small{font-size:9px;font-weight:500;color:#705a81}.decline-button:hover{background:#eae0fa;border-color:#8f6cbb}.decline-button:active{transform:translateY(1px)}
/* Pop removal follows a 125–180ms wave; complete its squash inside that window. */
.board.settled .bubble.burst,.bubble.burst{animation-duration:.12s}
@media(max-width:760px){.header{padding:0 14px;gap:10px}.header nav{gap:5px}.header .brand{font-size:22px;gap:7px}.header .icon-button{width:39px;height:39px;flex-shrink:0}.main{padding-top:4px;gap:17px}.intro .eyebrow{font-size:8px}h1{margin:10px 0 8px}.intro-copy{font-size:11px;margin-top:17px}.game-card{padding:17px}.game-heading h2{font-size:23px}.score-strip span{font-size:9px}.difficulty-row{font-size:9px;margin-bottom:10px;gap:6px}.board-caption{font-size:11px}.tool-button{font-size:11px;min-height:48px;gap:4px}.tool-button svg{width:13px}.reward-tag{font-size:7px;padding:3px 4px}.reward-note{font-size:9px}.result-overlay h3{font-size:25px}.result-overlay p{font-size:11px}.result-emblem{width:40px;height:40px;font-size:25px;margin-bottom:7px}.result-badges span{font-size:8px}.result-overlay .primary-button{font-size:10px;min-height:38px;padding:10px}.result-overlay .secondary-button{font-size:9px;padding-top:10px}.under-game{font-size:8px}.under-game button{font-size:9px}.ad-modal{padding:20px}.demo-creative{min-height:180px;padding:20px 12px}.demo-creative strong{font-size:27px}}
@media(max-width:370px){.header{padding:0 10px;gap:7px}.header .brand{font-size:20px}.brand-period{display:none}.header .icon-button{width:37px;height:37px}.header nav{gap:4px}.game-card{padding:12px}.main{padding-left:10px;padding-right:10px}.score-strip span{font-size:8px}.game-heading h2{font-size:21px}.tool-button{font-size:10px;gap:3px}.tool-button svg{display:none}.reward-note{font-size:8px}.result-overlay .result-badges{display:none}.result-overlay h3{font-size:23px}.result-overlay p{font-size:10px}.result-overlay .secondary-button{padding-top:9px}.difficulty-row{font-size:8px}.intro h1{font-size:27px}.intro .big-pop{font-size:30px}}
@media(min-width:761px) and (max-height:800px){.main{grid-template-columns:1fr 400px;gap:65px;padding-bottom:18px}.game-card{padding:18px}.score-strip span{font-size:9px}.game-heading h2{font-size:24px}.board-caption{font-size:11px;min-height:40px}.difficulty-row{font-size:9px}.tool-button{min-height:44px}.reward-note{font-size:9px}.new-run-link{margin-top:9px}.under-game{margin-top:17px}.result-overlay .result-emblem{width:40px;height:40px;font-size:25px}.result-overlay h3{font-size:25px}.result-overlay .secondary-button{font-size:10px;padding-top:9px}}
@media(max-height:500px) and (orientation:landscape){.intro{display:none}.main{display:block;max-width:475px}.header{height:65px}.game-topline{margin-top:10px}}
/* Mobile play takes priority over the desktop introduction. */
@media(max-width:760px){.intro{display:none}.main{padding:8px 8px 20px;gap:0;max-width:490px}.header{height:62px;padding:0 10px}.header .brand{font-size:21px}.header .icon-button{width:44px;height:44px}.header nav{gap:4px}.brand-period{display:none}.game-topline{display:none}.game-card{padding:12px 8px}.game-heading{margin-bottom:10px}.game-heading h2{font-size:22px}.small-label{font-size:11px}.difficulty-row{font-size:11px;gap:8px;margin-bottom:10px}.score-strip{padding:8px 0;margin-bottom:10px}.budget-row{margin-bottom:10px}.budget-row>span:first-child{font-size:10px;letter-spacing:.5px}.bubble-count{font-size:12px}.board-wrap{padding:5px;border-radius:15px}.board{gap:4px}.bubble{inset:0;font-size:24px}.board-caption{font-size:13px;line-height:1.45;padding:10px 0;min-height:48px}.tool-row{gap:6px}.tool-button{font-size:13px;min-height:48px;padding:8px 4px;gap:5px}.tool-button svg{display:none}.hint-button{flex:1}.reward-tag{font-size:10px;padding:3px 4px}.reward-note{font-size:12px;line-height:1.5;margin-top:10px;color:#665174}.under-game{font-size:10px;gap:10px;margin:14px 3px 0}.under-game button{font-size:12px;min-height:44px}.new-run-link{font-size:13px;min-height:44px;margin-top:8px}.footer{margin:0 12px;gap:10px}.footer>span:first-child{font-size:8px;letter-spacing:.3px}.footer button{font-size:13px;min-height:44px;white-space:nowrap}.result-overlay p{font-size:12px}.result-overlay .primary-button{font-size:13px;min-height:46px;padding:12px}.result-overlay .secondary-button{font-size:12px;min-height:36px;padding-top:10px}.decline-button small{font-size:10px}.result-overlay .decline-button{font-size:14px;min-height:48px}.result-overlay .result-emblem.fail{width:32px;height:32px;font-size:23px;margin-bottom:5px}.result-overlay:has(.fail){padding:10px}.result-overlay:has(.fail) h3{font-size:23px}.result-overlay:has(.fail) p{margin-bottom:7px}.result-overlay:has(.fail) .decline-button{margin-top:10px}}
