*{box-sizing:border-box}body{margin:0;color:#6d386e;font-family:system-ui,-apple-system,"Noto Sans Bengali",sans-serif;background:#c1f3f2;background-image:radial-gradient(ellipse at 10% 10%,#f7e8ff 0,transparent 50%),linear-gradient(#b8edf7,#e3fff0 65%,#fff1c5);min-height:100dvh;overflow-x:hidden}button,a{-webkit-tap-highlight-color:transparent}button{cursor:pointer;font:inherit;font-weight:850;color:inherit;border:0}button:disabled{cursor:default;opacity:.5}button:focus-visible,a:focus-visible{outline:3px solid #762880;outline-offset:4px}[hidden]{display:none!important}.app{max-width:540px;margin:auto;padding:10px 14px 24px;position:relative;z-index:1}.top{display:flex;align-items:center;justify-content:space-between;height:48px}.top a,.top button{width:40px;height:40px;border-radius:15px;background:#fff9;color:#9f5198;text-decoration:none;display:grid;place-items:center;font-size:28px}.top span{font-size:8px;letter-spacing:2px;text-align:center;color:#87608d}.top b{display:block;font-size:12px;letter-spacing:2.5px}.screen{animation:screenEnter .3s ease}.cloud{position:fixed;width:240px;height:60px;filter:blur(3px);border-radius:50%;background:#fff8;pointer-events:none}.c1{left:-60px;top:18%}.c2{right:-60px;top:57%}.landing{min-height:calc(100dvh - 95px);display:flex;align-items:center;flex-direction:column;text-align:center;justify-content:center;padding:15px 0 24px}.eyebrow{font-size:11px;font-weight:850;letter-spacing:1px;color:#ae649a}.landing h1{font-size:clamp(64px,18vw,96px);line-height:.9;margin:8px 0 0;letter-spacing:-4px;color:#e96bae;text-shadow:0 3px 0 #fff,0 6px 0 #c64a96,0 12px 30px #b4578d44;font-weight:950;rotate:-4deg}.landing h1 em{font-style:normal;color:#ffca65;text-shadow:0 3px 0 #fff,0 6px 0 #db9957,0 12px 30px #b4578d44}.landingStars{font-size:25px;color:#ffb85a;letter-spacing:30px;margin-left:30px}.landingStars i{font-style:normal;color:#e779b8}.hero{height:210px;width:260px;position:relative;margin:15px 0 0}.heroBubu{position:absolute;width:190px;height:190px;left:35px;bottom:5px;animation:bubuFloat 3s ease-in-out infinite;filter:drop-shadow(0 15px 15px #a962a444)}.heroOrbit{position:absolute;width:70px;height:70px;background-size:contain;background-repeat:no-repeat;animation:orbit 4s ease-in-out infinite}.o1{left:0;top:20px;background-image:url('fruit-0.svg');rotate:-20deg}.o2{right:0;top:55px;background-image:url('fruit-3.svg');animation-delay:-1s;rotate:15deg}.o3{right:20px;bottom:0;background-image:url('crown.svg');animation-delay:-2s;width:55px;height:55px}.heroBubble{position:absolute;left:124px;top:112px;width:26px;height:26px;border-radius:50%;background:radial-gradient(circle at 30% 25%,#fff9,#f8a6d7 45%,#df72b5);animation:heroBubble 4s infinite}.landingCopy{font-size:14px;line-height:1.8;margin:0 0 18px}.primary{padding:14px 32px;border-radius:999px;background:linear-gradient(#ff99cb,#e75dab);color:#fff;border:3px solid #ffd2ed;box-shadow:0 6px 0 #bf458e,0 12px 25px #c36aa433;font-size:20px;min-width:200px;text-shadow:0 2px #b84b8c}.primary:active{translate:0 3px;box-shadow:0 3px 0 #bf458e}.textButton{background:transparent;padding:13px 18px;font-size:13px;color:#935a97}.landing>small{font-size:10px;color:#a679a4}.mapHead{display:flex;align-items:center;justify-content:space-between;margin:20px 5px 0}.mapHead h2{font-size:30px;margin:0}.mapHead p{margin:0 0 4px}.freeBadge{background:#fff9;border:2px solid #fff;padding:9px 13px;border-radius:20px;color:#ac6399;font-size:13px;font-weight:900}.mapStatus{font-size:12px;margin:12px 6px;color:#9b6595}.map{height:1590px;position:relative;background-image:radial-gradient(ellipse at 20% 20%,#c5efb8 0 10%,transparent 10.2%),radial-gradient(ellipse at 90% 43%,#b7e7bd 0 15%,transparent 15.2%),linear-gradient(#d1f7dd,#e4f7c3 45%,#fce9c4);border-radius:35px;border:4px solid #fff8;overflow:hidden;box-shadow:0 10px 30px #789e7a15}.map:before{content:"";position:absolute;inset:0;background:radial-gradient(ellipse at 0% 30%,#fff8 0 7%,transparent 7.5%),radial-gradient(ellipse at 100% 70%,#fff8 0 8%,transparent 8.5%)}.pathSvg{position:absolute;inset:0;width:100%;height:100%;pointer-events:none}.mapNode{position:absolute;width:58px;height:58px;border-radius:50%;translate:-50% -50%;background:linear-gradient(#fc9dcc,#e763ac);border:4px solid #fff0ce;box-shadow:0 5px 0 #be5397,0 8px 14px #b788a033;color:#fff;font-size:21px;text-shadow:0 2px #bd558d}.mapNode.locked{background:linear-gradient(#d8c7d9,#b6acbf);box-shadow:0 4px 0 #9a8fa5;color:#f8f1fc}.mapNode.current{outline:4px solid #ffe19c;outline-offset:4px;animation:current 2s infinite}.mapNode .nodeStars{position:absolute;top:53px;left:-8px;width:66px;font-size:13px;color:#e8a830;text-shadow:0 1px #fff;letter-spacing:1px}.mapNode .nodeTitle{position:absolute;left:-40px;top:-24px;width:130px;font-size:10px;white-space:nowrap;color:#927693;text-shadow:none}.mapTree{position:absolute;width:48px;height:90px;background:linear-gradient(80deg,#d388ce,#ba9ce4);border-radius:80% 30% 55% 40%;box-shadow:inset -8px -3px #b06fc466;rotate:12deg}.mapTree:after{content:"";position:absolute;top:80%;left:45%;width:8px;height:35px;background:#cda97e;z-index:-1}.localNote,.scoreNote{text-align:center;display:block;font-size:10px;color:#a586a6;line-height:1.6}.gameHud{display:flex;align-items:center;gap:7px;background:linear-gradient(#fff1fb,#f9b8d9);border:3px solid #fff9;padding:8px 8px;border-radius:24px;box-shadow:0 5px 0 #d891bb;margin-top:12px}.mapBack{background:#fff7;border-radius:12px;font-size:28px;width:24px;padding:0;flex-shrink:0}.moveBadge{text-align:center;min-width:53px}.moveBadge small{font-size:9px;color:#bb7da3;display:block}.moveBadge b{font-size:38px;line-height:1.1;color:#dc4f9f;text-shadow:0 2px #fff}.hudMiddle{flex:1;min-width:0}.starTrack{position:relative;height:20px;border-radius:99px;background:#e8a9ce;margin:0 4px 6px;overflow:hidden;border:2px solid #fdf3fa}.starTrack span{position:absolute;inset:0;text-align:center;color:#ffef8e;z-index:1;letter-spacing:12px;font-size:12px;line-height:16px}.starTrack i{height:100%;width:0;display:block;background:linear-gradient(90deg,#8cdcf6,#54bad7);transition:width .3s}.targetPill{background:linear-gradient(#f8b4db,#ed7fbb);border:2px solid #ffcce7;border-radius:18px;display:flex;gap:6px;align-items:center;justify-content:center;padding:5px 6px;color:#fff;min-height:38px;font-size:12px;font-weight:900;text-shadow:0 1px #cc639e}.targetPill img{width:27px;height:27px}.bubuButton{width:66px;flex-shrink:0;position:relative;background:none;padding:0}.bubuButton img{width:100%;display:block}.bubuButton i{display:none;position:absolute;left:37%;top:49%;width:22px;height:22px;border-radius:50%;background:radial-gradient(circle at 30% 20%,#fff9,#f0a0d2 50%,#ce6aad)}.bubuButton.party img{animation:bubuFlip .8s}.bubuButton.party i{display:block;animation:gum .8s}.levelRibbon{display:flex;gap:6px;align-items:center;margin:16px 5px 10px;font-size:10px;color:#9c6f9c}.levelRibbon b{margin-left:auto;font-size:18px;color:#a34f9f}.arena{position:relative;isolation:isolate;border-radius:22px;padding:9px;background:linear-gradient(135deg,#83cfe9,#a0bcdf);border:3px solid #e0faff;box-shadow:0 6px 0 #689acb,0 18px 30px #5d9faf33;overflow:hidden}.board{display:grid;grid-template-columns:repeat(8,minmax(0,1fr));gap:3px;position:relative;z-index:1;touch-action:none}.tile{aspect-ratio:1;position:relative;border:1px solid #bee2ff66;border-radius:8px;padding:0;background:linear-gradient(135deg,#6b9bd2,#627fb5);box-shadow:inset 0 2px 2px #e5f4ff22;min-width:0;touch-action:none}.tile.void{visibility:hidden;pointer-events:none}.fruit{position:absolute;inset:3%;width:94%;height:94%;object-fit:contain;pointer-events:none;filter:drop-shadow(0 3px 1px #294e8177)}.tile.selected{outline:3px solid #fff1ac;outline-offset:-2px;background:#9bbbed}.tile.hint{box-shadow:inset 0 0 0 3px #fff4c1,0 0 8px #fff6ad;z-index:3}.tile.hint .fruit{animation:hint .6s ease-in-out 2}.tile.power{background:#9aa9db;outline:1px solid #ffe49b;outline-offset:-2px}.tile.power[data-power=column] .fruit{rotate:90deg}.tile.power[data-power=crown]{box-shadow:inset 0 0 15px #ffdb7488,0 0 8px #ffef8d55}.tile.jelly{background:#d37aca;border:2px solid #fbb1e8}.blocker{position:absolute;inset:2%;pointer-events:none;border-radius:8px;z-index:2;display:grid;place-items:center;font-size:24px;font-weight:900}.ice{background:linear-gradient(145deg,#fff9,#bce8ff66);border:3px solid #effcff;box-shadow:inset 0 0 0 3px #d5e9f777;color:#fff}.ice:after{content:'❄';text-shadow:0 1px 2px #6ba3c2}.crate{background:linear-gradient(135deg,#f1ca8f99,#bd8c5b88);border:3px solid #f6d2a3;color:#94663a}.crate:after{content:'╳';opacity:.8}.chocolate{background:linear-gradient(135deg,#ac7455bb,#774c3fbb);border:3px solid #d8a584;color:#e9b990}.chocolate:after{content:'▦'}.blocker[data-hp='1']{border-style:dashed}.tile.pop .fruit{animation:juicyPop .32s both}.tile.pop .blocker{animation:blockPop .32s both}.tile.fall .fruit{animation:fall .2s ease-out both}.effects{position:absolute;inset:0;z-index:4;pointer-events:none;overflow:hidden}.effects svg{position:absolute;inset:0;width:100%;height:100%;overflow:visible}.comboToast{position:absolute;inset:30% 2% auto;z-index:5;text-align:center;pointer-events:none;font-size:clamp(26px,8vw,42px);font-weight:950;color:#fff2a1;text-shadow:0 3px #b362a4,0 0 15px #a8629c;opacity:0}.comboToast.show{animation:toast .8s both}.particle{position:absolute;font-style:normal;color:var(--color,#fff5a4);font-size:17px;text-shadow:0 0 6px #fff;animation:particle .65s ease-out both}.floatingScore{position:absolute;font-size:14px;color:#fff8a5;font-weight:950;text-shadow:0 2px #765087;animation:floatScore .65s both}.beam{position:absolute;height:7px;background:#fff;border-radius:50%;box-shadow:0 0 9px #fff,0 0 20px #51efff,0 0 32px #b97dff;animation:beam .35s both}.beam.vertical{width:7px;height:auto}.rocketFly{position:absolute;width:42px;height:42px;object-fit:contain;animation:rocketFly .45s ease-in both;filter:drop-shadow(-15px 8px 6px #ffc65a)}.gumBlast{position:absolute;left:50%;top:50%;width:70px;height:70px;margin:-35px;border-radius:50%;background:radial-gradient(circle at 30% 25%,#fff9,#f7a0dc 45%,#b861b7);box-shadow:inset -5px -8px 10px #ba56a566;animation:gum .65s both}.lightningLine{stroke:#fff;stroke-width:3;fill:none;filter:drop-shadow(0 0 4px #71f0ff);animation:lightning .5s both}.gameStatus{text-align:center;font-size:12px;min-height:36px;line-height:1.5;color:#856091;margin:14px 4px 8px}.boosters{display:grid;grid-template-columns:repeat(4,1fr);background:#fff9;border:3px solid #fff;border-radius:24px;padding:10px 5px;gap:6px;box-shadow:0 5px 0 #dcb6d0}.boosters button{position:relative;background:linear-gradient(#fff1fb,#f1c2df);border:2px solid #fff;border-radius:18px;padding:7px 2px;color:#a35490;box-shadow:0 3px 0 #d78ebc}.boosters button>span{display:block;font-size:26px;line-height:1.3}.boosters b{display:block;font-size:9px}.boosters small{position:absolute;top:-7px;right:-2px;border:2px solid #fff;border-radius:999px;padding:1px 5px;background:#8fc99b;color:#fff;font-size:9px}.boosters button[aria-pressed=true]{outline:3px solid #df62b2}.bottomTools{display:flex;justify-content:center;gap:6px;margin:16px 0 10px}.bottomTools button{font-size:10px;background:#fff8;border:1px solid #fff;padding:8px 12px;border-radius:99px}.scoreNote{font-size:9px}dialog{width:min(420px,calc(100% - 30px));border:4px solid #fff1fb;border-radius:30px;background:linear-gradient(#fff5fd,#f6d4ed);color:#884b8d;text-align:center;padding:24px 22px;box-shadow:0 20px 80px #69416755;overflow:visible}dialog::backdrop{background:#52366388;backdrop-filter:blur(4px)}dialog h2{font-size:26px;line-height:1.3;margin:10px 0 12px}#modalBody{font-size:14px;line-height:1.8}#modalBody p{margin:8px 0}.modalDecor{font-size:40px;color:#eeb447;filter:drop-shadow(0 2px #fff)}.modalButtons{display:flex;flex-direction:column;gap:12px;margin-top:20px}.modalButtons .primary{font-size:17px;min-width:0;width:100%}.modalButtons .secondary{background:#fff9;padding:10px 18px;border-radius:99px;color:#ab689f}.settingsRow{display:flex;align-items:center;justify-content:space-between;padding:10px 0;border-bottom:1px solid #ddb5d044;gap:12px}.settingsRow button{padding:7px 14px;border-radius:99px;background:#eeb6d8}.settingsRow input{width:110px;accent-color:#d768ac}.winStars{font-size:42px;color:#efb039;letter-spacing:10px;text-shadow:0 2px #fff;animation:winStars .7s both}.winBubu{width:100px;height:100px;animation:bubuFlip .85s}.confetti{position:fixed;width:9px;height:15px;z-index:30;pointer-events:none;border-radius:3px;animation:confetti 1.8s ease-in both}.arena.shake{animation:shake .15s ease-out}.saveWarning{color:#a36469}@keyframes screenEnter{from{opacity:0;translate:0 8px}to{opacity:1;translate:0 0}}@keyframes bubuFloat{50%{translate:0 -10px;rotate:3deg}}@keyframes orbit{50%{translate:0 -14px;rotate:10deg}}@keyframes heroBubble{0%,25%,100%{scale:0;opacity:0}40%{opacity:1}70%{scale:2.5;opacity:1}75%{scale:3;opacity:0}}@keyframes current{50%{outline-offset:7px}}@keyframes juicyPop{30%{translate:0 -12px;scale:1.2}65%{scale:1.08}100%{translate:0 -22px;scale:.2;opacity:0}}@keyframes fall{from{translate:0 -70%;opacity:.3}to{translate:0 0;opacity:1}}@keyframes blockPop{to{scale:1.25;opacity:0;rotate:15deg}}@keyframes hint{50%{scale:1.1;translate:0 -3px}}@keyframes toast{0%{opacity:0;scale:.6}25%{opacity:1;scale:1.1}70%{opacity:1;scale:1}100%{opacity:0;translate:0 -20px}}@keyframes particle{to{translate:var(--dx) var(--dy);opacity:0;rotate:160deg;scale:.3}}@keyframes floatScore{to{translate:0 -35px;opacity:0}}@keyframes beam{0%{scale:.1;opacity:0}25%{scale:1;opacity:1}100%{opacity:0}}@keyframes rocketFly{to{translate:var(--dx) var(--dy);opacity:0}}@keyframes gum{0%{scale:.2;opacity:0}25%{opacity:.95}70%{scale:3;opacity:.7}100%{scale:4;opacity:0}}@keyframes lightning{25%,65%{opacity:1}0%,40%,100%{opacity:0}}@keyframes bubuFlip{40%{translate:0 -8px;rotate:170deg}100%{rotate:360deg}}@keyframes winStars{from{scale:.2;opacity:0}to{scale:1;opacity:1}}@keyframes confetti{to{translate:var(--dx) 65vh;rotate:600deg;opacity:0}}@keyframes shake{25%{translate:-3px 1px}50%{translate:3px -1px}75%{translate:-2px 0}100%{translate:0 0}}@media(max-width:360px){.app{padding:8px 8px 20px}.gameHud{padding:7px 5px;gap:4px}.moveBadge{min-width:43px}.moveBadge b{font-size:32px}.bubuButton{width:54px}.arena{padding:6px}.board{gap:2px}.targetPill{font-size:10px}.starTrack span{letter-spacing:7px}.boosters b{font-size:8px}}@media(min-width:700px){.app{padding-top:18px}.gameScreen{padding:0 18px}.landing{min-height:850px}.map{margin:0 20px}.hero{height:240px}.heroBubu{height:220px;width:220px;left:20px}}@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation:none!important;transition:none!important}.heroBubble,.particle,.confetti,.lightningLine{display:none}.comboToast.show{opacity:1}}
/* DRUTO_BUBU_SMART_UI_V12 — presentation only */
body{background:#7845ae;background-image:radial-gradient(ellipse at 50% -10%,#d49be0 0,transparent 50%),radial-gradient(ellipse at 0 70%,#a471c5 0,transparent 45%),linear-gradient(165deg,#8655ba,#69419f 65%,#513885);color:#fff1fb}.app{max-width:570px;padding:12px 16px 28px}.top{height:48px}.top a,.top button{background:#ffffff19;color:#fff1fb;border:1px solid #ffffff2e;border-radius:14px}.top span{color:#e4cee9;font-size:7px;letter-spacing:2px}.top b{color:#fff6ef;font-size:11px;letter-spacing:2px}.cloud{background:#e8c8ff0a;filter:blur(10px)}.landing{min-height:calc(100dvh - 76px);justify-content:flex-start;padding:24px 0 15px;position:relative;isolation:isolate}.landing:before{content:"";position:absolute;inset:10% -10px 20%;background:radial-gradient(ellipse,#eec4fb33,transparent 66%);z-index:-1}.landingLabel{display:flex;align-items:center;gap:7px;font-size:8px;font-weight:800;letter-spacing:2px;background:#ffffff10;border:1px solid #ffffff28;border-radius:99px;padding:7px 12px;color:#f3dced}.liveDot{width:5px;height:5px;background:#fbe699;border-radius:50%;box-shadow:0 0 9px #ffe9a4}.landing h1{rotate:-3deg;letter-spacing:-3px;line-height:.84;margin:24px 0 0;position:relative;z-index:2;font-family:system-ui,sans-serif;font-weight:1000}.landing h1>span{display:block;font-size:clamp(62px,18vw,90px);color:#fff6c6;text-shadow:0 3px 0 #dba66e,0 7px 0 #814c96,0 11px 18px #3e25634d;-webkit-text-stroke:1px #fff8e8}.landing h1 em{display:block;font-size:clamp(66px,19vw,98px);letter-spacing:-4px;color:#ffb5da;text-shadow:0 3px 0 #d36da9,0 7px 0 #814c96,0 11px 18px #3e25634d;-webkit-text-stroke:1px #ffe1ee}.landing h1 i{display:block;rotate:3deg;font-family:system-ui,sans-serif;font-style:normal;letter-spacing:0;font-size:12px;font-weight:750;margin-top:17px;color:#f9e3f2;text-shadow:none;-webkit-text-stroke:0}.hero{width:calc(100% + 28px);height:auto;aspect-ratio:600/470;margin:-2px -14px -10px;max-width:490px;position:relative}.heroScene{width:100%;height:100%;display:block;filter:drop-shadow(0 15px 14px #32204a33);animation:worldFloat 5s ease-in-out infinite}.heroSpark{position:absolute;color:#fff1a4;animation:worldSpark 3s ease-in-out infinite;text-shadow:0 0 20px #ffdfa3;pointer-events:none}.spark1{left:18%;top:32%;font-size:25px}.spark2{right:11%;top:20%;font-size:35px;animation-delay:-1s}.spark3{right:17%;bottom:12%;font-size:22px;animation-delay:-2s}.landingInfo{display:flex;justify-content:center;gap:0;margin:0 0 20px;width:min(330px,94%);background:#ffffff0c;border:1px solid #ffffff22;border-radius:18px;padding:9px 2px}.landingInfo>span{flex:1;font-size:10px;color:#ead6ee;text-align:center;border-right:1px solid #ffffff1c}.landingInfo>span:last-child{border:0}.landingInfo b{display:block;color:#fff0bc;font-size:19px;line-height:1.4}.playMain{width:min(355px,95%);background:linear-gradient(#ffe1a1,#ffc15e);color:#76498a;border:3px solid #fff1c8;box-shadow:0 6px 0 #d2924f,0 13px 30px #3b245e44;border-radius:24px;font-size:21px;text-shadow:0 1px #fff0c7;position:relative;padding:12px 25px}.playMain>span{font-size:19px;margin-right:7px}.playMain>i{font-style:normal;display:block;font-size:8px;letter-spacing:3px;color:#9f6f74;margin:2px 0 0 18px}.playMain:active{box-shadow:0 3px 0 #d2924f;translate:0 3px}.landingActions{display:flex;align-items:center;gap:26px;margin-top:9px;color:#f2dcea}.landingActions button{color:#f5dff0;font-size:11px;font-weight:700}.landingActions>span{font-size:10px;color:#e0c9e8}.landingFoot{font-size:10px;color:#cbb2d7;margin:5px 0 0}.mapHead h2{font-size:34px;color:#fff3cb}.eyebrow{color:#edd3e9}.freeBadge{background:#ffffff15;border:1px solid #ffffff26;color:#fff0bb}.mapStatus{color:#e8d0eb;margin:15px 5px}.map{border:5px solid #fff2fa;border-radius:30px;box-shadow:0 7px 0 #4d317a,0 24px 40px #3a24582e}.mapNode{border-width:4px;box-shadow:0 5px 0 #bd5297,0 9px 13px #745c8755}.mapTree{box-shadow:inset -8px -3px #a66bc566,0 6px 9px #65847822}.map .nodeStars{font-size:14px}.localNote{color:#d5c0df;margin-top:18px}.mapScreen>.textButton,#backLanding{color:#ffe9f7}.gameScreen{padding-top:4px}.gameHud{border:3px solid #fff6fc;border-radius:25px;padding:10px 8px;background:linear-gradient(145deg,#fff5fc,#ffd1e8 50%,#f5afd4);box-shadow:0 5px 0 #c67ba8,0 12px 20px #30204422;position:relative}.moveBadge b{font-size:42px;color:#da4898}.moveBadge small{font-size:9px;color:#ad6f96}.hudMiddle{padding:0 3px}.targetPill{background:linear-gradient(#f9badc,#e97fb8);border-color:#fff0fa;min-height:40px;border-radius:15px;font-size:13px}.starTrack{height:17px;margin-bottom:8px}.bubuButton{width:66px}.levelRibbon{margin:18px 4px 10px;color:#e2c8e8}.levelRibbon b{color:#ffe6a6;font-size:21px}.arena{border:4px solid #e6f6ff;border-radius:22px;background:linear-gradient(145deg,#7eafe0,#5364a0);padding:8px;box-shadow:0 6px 0 #4d4481,0 18px 36px #36245244}.board{gap:3px}.tile{background:linear-gradient(140deg,#6e9bd2,#5475ae);border:1px solid #badcff66;border-radius:8px;box-shadow:inset 0 2px 1px #d5edff22}.fruit{inset:0;width:100%;height:100%;filter:drop-shadow(0 3px 1px #29365a55)}.gameStatus{color:#f0dcf2;font-size:11px;margin:16px 4px 10px;min-height:34px}.boosters{background:linear-gradient(#ffe7f4,#f5bfdf);border:3px solid #fff2fb;border-radius:23px;padding:11px 7px;gap:8px;box-shadow:0 5px 0 #b675a7,0 12px 25px #30204422}.boosters button{background:linear-gradient(#fffafd,#edb0d5);border-color:#fff7fc;border-radius:17px;box-shadow:0 3px 0 #d68cba;min-height:65px;padding:6px 2px}.boosters button>span{font-size:28px}.boosters b{font-size:9px;color:#a35092}.boosters small{background:#93c8a1;border-width:2px;right:-4px;top:-8px}.bottomTools{gap:6px;margin-top:17px}.bottomTools button{color:#ead4ed;background:#ffffff12;border:1px solid #ffffff22;padding:8px 12px}.scoreNote{color:#bca1cf;margin-top:10px}.comboToast{color:#ffedb0;text-shadow:0 3px #9c4d99,0 0 18px #774b9b}dialog{background:linear-gradient(145deg,#fff7fd,#f5d4ed);border:4px solid #fff4fb;box-shadow:0 8px 0 #a46c9d,0 30px 80px #271b4655;color:#854b87}dialog .primary{background:linear-gradient(#ffce83,#ffb353);border-color:#fff1bf;color:#85528b;text-shadow:none;box-shadow:0 5px 0 #d1945c;border-radius:20px}.modalDecor{font-size:44px}dialog::backdrop{background:#24143b99;backdrop-filter:blur(7px)}@keyframes worldFloat{50%{translate:0 -6px;rotate:.7deg}}@keyframes worldSpark{50%{opacity:.35;scale:.7}}@media(min-width:700px){.app{max-width:570px;padding-top:16px}.landing{min-height:850px;padding-top:28px}.hero{max-width:470px;margin-top:3px}.landing h1{margin-top:26px}.gameScreen{padding:4px 4px 0}.map{margin:0 8px}.landingInfo{margin-bottom:24px}}@media(max-width:360px){.app{padding:8px 10px 20px}.landing{padding-top:16px}.landing h1{margin-top:18px}.landing h1>span{font-size:63px}.landing h1 em{font-size:69px}.landingInfo{margin-bottom:15px}.playMain{font-size:19px}.gameHud{padding:7px 5px}.moveBadge b{font-size:34px}.bubuButton{width:52px}.targetPill{font-size:10px;padding:4px}.arena{padding:5px}.board{gap:2px}}@media(max-height:760px) and (max-width:600px){.landing{padding-top:12px}.landing h1{margin-top:16px}.landing h1>span{font-size:62px}.landing h1 em{font-size:66px}.landing h1 i{margin-top:12px;font-size:10px}.hero{max-width:350px;margin-top:-7px;margin-bottom:-16px}.landingInfo{margin-bottom:15px;padding:6px 2px}.landingInfo b{font-size:17px}.playMain{padding:9px 22px}.landingFoot{margin-top:0}}@media(prefers-reduced-motion:reduce){.heroScene,.heroSpark{animation:none!important}}

/* DRUTO_CHOCO_POP_V13 */
body{background:#f4d5e2;background-image:radial-gradient(ellipse at 25% 0,#fff8e9,transparent 55%),linear-gradient(#fae5ee,#e4d1ed 70%,#dabfdc);color:#6a3a59}.top span{color:#9a6e84}.top b{color:#7e4d6d}.top a,.top button{background:#fff9;color:#945e83;border-color:#fff}.landingLabel{background:#fff8;border-color:#fff;color:#a17288}.landing h1>span{color:#ffe9b4;text-shadow:0 3px #bb805b,0 7px #74425c,0 11px 18px #6e435333;-webkit-text-stroke:1px #fff8df}.landing h1 em{color:#b57591;text-shadow:0 3px #874c6d,0 7px #633b57,0 11px 18px #6e435333;-webkit-text-stroke:1px #f2c7dc}.landing h1 i{color:#9b6b83}.hero{margin-bottom:-8px}.landingInfo{background:#fff8;border-color:#fff;box-shadow:0 7px 20px #a77d9a15}.landingInfo>span{color:#a27289;border-color:#d3acbf66}.landingInfo b{color:#895570}.landingActions button{color:#8e5b79}.landingActions>span,.landingFoot{color:#a47d93}.playMain{background:linear-gradient(#c687a7,#9a5d86);color:#fff3df;border-color:#ffe7f0;box-shadow:0 6px #7f466d,0 13px 30px #9a6a8c33;text-shadow:0 1px #854f72}.playMain>i{color:#edcadc}.playMain:active{box-shadow:0 3px #7f466d}.mapHead h2{color:#7e4b69}.eyebrow,.mapStatus,.localNote{color:#a0718c}.freeBadge{background:#fff8;border-color:#fff;color:#946077}.levelRibbon{color:#9a6c89}.levelRibbon b{color:#8b4f79}.gameStatus{color:#946e89}.bottomTools button{background:#fff9;border-color:#fff;color:#996284}.scoreNote{color:#a5859c}.arena{background:linear-gradient(#91b1d3,#647eac);box-shadow:0 6px #aa8daf,0 18px 36px #996a8c22}.tile{background:linear-gradient(145deg,#7797c0,#5c79a7)}.tile.touching .fruit{scale:1.08}.tile.pop .fruit{animation-duration:.18s}.tile.fall .fruit{animation-duration:.1s}.board .fruit{filter:drop-shadow(0 3px 1px #29365a55)}.comboToast{font-size:clamp(24px,7vw,36px)}.landing h1{letter-spacing:-4px}#backLanding{color:#996284}.modalDecor{color:#c88d62}@media(prefers-reduced-motion:reduce){.tile.touching .fruit{scale:1}}

/* DRUTO_FLOWER_LOGO_BOMB_V3 */
body{background:#75d6ee;background-image:radial-gradient(ellipse at 15% 10%,#d5fcff 0,transparent 45%),radial-gradient(ellipse at 90% 70%,#aeb6f0 0,transparent 60%),linear-gradient(#9ee6f2,#d4d4f5 60%,#e8c8eb)}.app{max-width:650px;padding:10px 12px 22px}.top{height:44px}.top a,.top button{color:#a13e95;background:#fff8}.top span{color:#936698}.top b{color:#8e438f}.landing{min-height:calc(100dvh - 64px);padding-top:14px}.landing h1>span{color:#fff1a7;text-shadow:0 3px #e9a94e,0 7px #b0699f,0 11px 20px #7755ad33}.landing h1 em{color:#f38abd;text-shadow:0 3px #ce559b,0 7px #a0529a,0 11px 20px #7755ad33;-webkit-text-stroke:1px #ffd9ed}.landingLabel{background:#fff7;color:#a2649c}.playMain{background:linear-gradient(#ff9fce,#e960ae);color:#fff;border-color:#ffdcf0;box-shadow:0 6px #bd4c9a,0 13px 30px #a460b333}.playMain>i{color:#ffdaee}.playMain:active{box-shadow:0 3px #bd4c9a}.landingInfo b{color:#b94c9e}.landingInfo>span,.landing h1 i,.landingFoot{color:#98629c}.gameHud{padding:8px 9px;border:3px solid #fff7fc;border-radius:20px;gap:10px;background:linear-gradient(#ffe5f3,#f6a8d2);box-shadow:0 5px #cf76b3}.moveBadge{min-width:64px}.moveBadge small{font-size:12px;font-weight:850;color:#ad468f}.moveBadge b{font-size:48px;font-weight:1000;color:#d42a94}.targetPill{font-size:17px;min-height:43px;color:#fff;text-shadow:0 2px #ce5a9e;border:2px solid #ffe8f6}.targetPill img{height:34px;width:34px}.hudMiddle{padding:0}.starTrack{height:19px}.starTrack span{font-size:16px;line-height:16px}.bubuButton{width:62px}.levelRibbon{margin:14px 5px 8px;font-size:12px;color:#8d5b93}.levelRibbon b{font-size:23px;color:#a93498}.arena{background:linear-gradient(#7cadd5,#5c80ba);border:4px solid #bdecff;border-radius:18px;padding:5px;box-shadow:0 5px #759bcc,0 18px 35px #6389b333}.board{gap:1px}.tile{border-radius:5px;border:0;background:#5e85b5;box-shadow:inset 0 0 0 1px #abd1ee55}.tile:nth-child(2n){background:#688ebe}.fruit{inset:1%;width:98%;height:98%;filter:drop-shadow(0 3px 1px #35468266)}.tile.selected{outline:3px solid #fff4a5;background:#9abced;z-index:2}.tile.jelly{background:#be6cb9;box-shadow:inset 0 0 0 2px #f5b5e7}.tile.power{background:#789ed0;outline:1px solid #cbe5ff}.tile.power[data-power=crown]{box-shadow:0 0 15px #fff1ac66,inset 0 0 15px #c4dcff66}.gameStatus{font-size:13px;color:#8b548f;margin:13px 4px 9px;min-height:38px}.boosters{padding:8px 6px;border-radius:18px;gap:7px;border:3px solid #fff0fa;box-shadow:0 4px #cc8bbf;background:linear-gradient(#ffd6ec,#eea9d4)}.boosters button{border-radius:15px;min-height:62px}.boosters b{font-size:11px}.boosters button>span{font-size:29px}.bottomTools button{font-size:11px;padding:9px 13px;color:#98529b}.scoreNote{color:#96749f}.mapHead h2{color:#a5499a}.mapStatus{color:#915d97}.map{background-image:radial-gradient(ellipse at 10% 20%,#a6e4c3 0 10%,transparent 10.2%),radial-gradient(ellipse at 90% 43%,#bdecd2 0 15%,transparent 15.2%),linear-gradient(#c8f4dd,#def4ce 50%,#ffe7c6)}.mapNode{background:linear-gradient(#ff9fd1,#e663b2);border-color:#fff0bf}.freeBadge{color:#ab589c}.comboToast{font-size:clamp(27px,8vw,44px);color:#fff19b;text-shadow:0 3px #a952ab,0 6px #7946a0}.floatingScore{font-size:18px}.blocker{font-size:28px}.chocolate{background:linear-gradient(135deg,#b78260e0,#775347dc);border-color:#dca880}.ice{background:linear-gradient(145deg,#fff9,#bce8ff88)}.heroScene{animation-duration:6s}.landingActions button{color:#a24d9a}dialog{border-color:#fff3fa;background:linear-gradient(#fff7fd,#f6cde6)}dialog h2{font-size:28px}.modalButtons .primary{font-size:19px}#modalBody{font-size:15px;line-height:1.8}@media(min-width:1000px){.app{max-width:1080px}.top{max-width:1020px;margin:0 auto;height:52px}.landing{max-width:600px;margin:auto}.gameScreen{display:grid;grid-template-columns:220px minmax(0,620px);grid-template-areas:'hud board' 'ribbon board' 'boost board' 'tools status' 'note note';column-gap:32px;row-gap:14px;justify-content:center;padding-top:24px;align-items:start}.gameHud{grid-area:hud;flex-wrap:wrap;justify-content:center;margin:0;padding:16px 12px;gap:12px}.moveBadge{order:1;flex-basis:45%}.moveBadge b{font-size:64px}.bubuButton{order:2;width:75px}.hudMiddle{order:3;flex-basis:100%}.mapBack{order:0;position:absolute;top:10px;left:10px}.levelRibbon{grid-area:ribbon;flex-wrap:wrap;justify-content:center;margin:0;text-align:center}.levelRibbon b{margin-left:0;font-size:28px}.levelRibbon>span:first-child{flex-basis:100%;font-size:13px}.arena{grid-area:board;margin:0}.boosters{grid-area:boost;grid-template-columns:repeat(2,1fr);padding:10px;gap:12px;margin:0}.boosters button{min-height:78px}.boosters button>span{font-size:33px}.boosters b{font-size:12px}.gameStatus{grid-area:status;font-size:14px;margin:3px 0}.bottomTools{grid-area:tools;flex-wrap:wrap;margin:0;gap:7px}.bottomTools button{font-size:10px;padding:8px}.scoreNote{grid-area:note;text-align:center}.map{max-width:500px;margin:auto}.mapHead,.mapStatus{max-width:500px;margin-left:auto;margin-right:auto}.mapHead{padding:0 10px}.mapScreen,#mapScreen{text-align:center}.mapHead{text-align:left}.localNote{margin-top:20px}}@media(max-width:380px){.app{padding:7px 6px 20px}.gameHud{padding:7px 5px;gap:5px}.moveBadge{min-width:51px}.moveBadge b{font-size:40px}.moveBadge small{font-size:10px}.targetPill{font-size:13px}.bubuButton{width:50px}.gameStatus{font-size:11px}.boosters b{font-size:9px}.arena{padding:4px;border-width:3px}.landing h1>span{font-size:63px}.landing h1 em{font-size:66px}}

.boosters button>span{font-size:0!important;height:39px;background-size:contain;background-position:center;background-repeat:no-repeat;margin-bottom:3px}#hammer>span{background-image:url("hammer.svg")}#shuffle>span{background-image:url("shuffle.svg")}#hint>span{background-image:url("hint.svg")}#pause>span{background-image:url("pause.svg")}@media(min-width:1000px){.boosters button>span{height:44px}}

/* Turbo timings match JS clear/fall waits. Normal mode keeps slower motion. */
#board[data-speed="turbo"] .tile.pop .fruit{animation-duration:90ms}#board[data-speed="turbo"] .tile.fall .fruit{animation-duration:55ms}#board[data-speed="normal"] .tile.pop .fruit{animation-duration:360ms}#board[data-speed="normal"] .tile.fall .fruit{animation-duration:220ms}.beam{animation-duration:220ms}.rocketFly{animation-duration:260ms}.gumBlast{animation-duration:320ms}.lightningLine{animation-duration:280ms}.floatingScore{animation-duration:500ms}

#board[data-speed="turbo"] .tile.pop .fruit{animation-duration:65ms}#board[data-speed="turbo"] .tile.fall .fruit{animation-duration:40ms}.tile[data-power="bomb"]{background:radial-gradient(circle,#ffed7a,#f744ae);border:2px solid #fff19d;box-shadow:inset 0 0 9px #fff8,0 0 6px #fa2eab}.tile[data-power="bomb"] .fruit{filter:drop-shadow(0 2px 1px #681752);scale:1.1}.powerLabel{position:absolute;bottom:0;left:0;right:0;background:#57216fef;color:#fff;font-weight:900;font-size:clamp(7px,1.8vw,12px);line-height:1.35;border-radius:4px;pointer-events:none;z-index:3;text-shadow:none}.tile[data-power="bomb"] .powerLabel{background:#a80057;color:#fff7a0}#musicToggle{background:#f833a0;color:#fff;border-color:#ffb8e2}@media(prefers-reduced-motion:reduce){.tile[data-power="bomb"] .fruit{scale:1}}

.blastLayer{position:absolute;inset:0;pointer-events:none}.rocketFly{width:76px;height:44px;filter:drop-shadow(-13px 0 5px #ffad18);animation:rocketJet 300ms cubic-bezier(.2,.1,.7,1) both}.rocketFly[style*="rotate"]{rotate:-90deg!important}.beam{height:10px;background:linear-gradient(#ffa731,#fffbd1,#ff8c25);box-shadow:0 0 12px #ffce40;animation:beam 260ms both}.beam.vertical{width:10px}.gumBlast{background:radial-gradient(circle,#fff8c6 0 12%,#ffdf43 20%,#ff6397 45%,#ff229588 62%,transparent 70%);box-shadow:none;animation:bombBloom 360ms ease-out both}.shockRing{position:absolute;width:60px;height:60px;margin:-30px;border:5px solid #ffe991;border-radius:50%;box-shadow:0 0 12px #ff8f31;animation:shockWave 420ms ease-out both}.blastWord{position:absolute;translate:-50% -50%;font-size:clamp(22px,7vw,46px);font-weight:1000;color:#fff590;text-shadow:2px 3px #a42465;white-space:nowrap;animation:blastWord 460ms both}.lightningLine{stroke:#eaffff;stroke-width:4;filter:drop-shadow(0 0 3px #00c3ff);animation:electricArc 300ms ease-out both}@keyframes electricArc{0%{opacity:0;stroke-dasharray:12 6;stroke-dashoffset:60}25%{opacity:1}100%{opacity:0;stroke-dasharray:0;stroke-dashoffset:0}}@keyframes rocketJet{0%{opacity:1;scale:.7}100%{translate:var(--dx) var(--dy);opacity:0;scale:1.3}}@keyframes bombBloom{0%{scale:.3;opacity:1}80%{scale:4;opacity:.5}100%{scale:4.5;opacity:0}}@keyframes shockWave{from{scale:.4;opacity:1}to{scale:5;opacity:0}}@keyframes blastWord{0%{scale:.4;opacity:0}30%{scale:1.15;opacity:1}100%{scale:1;opacity:0;translate:-50% -90%}}@media(prefers-reduced-motion:reduce){.shockRing,.blastWord,.rocketFly,.gumBlast,.beam{display:none}}

#board[data-speed="turbo"] .tile.pop .fruit{animation-duration:50ms}#board[data-speed="turbo"] .tile.fall .fruit{animation-duration:35ms}

.gumBlast{width:110px;height:110px;margin:-55px;animation-duration:450ms}.shockRing{border-width:7px;animation-duration:500ms}.lightningLine{stroke:#fff8a1;stroke-width:5;filter:drop-shadow(0 0 4px #38cfff);animation-duration:420ms}.blastWord{color:#fff48d;font-size:clamp(30px,8vw,58px)}

body{background:radial-gradient(ellipse at 15% 0,#fff1f8,transparent 55%),linear-gradient(#c6f8e7,#dbf2ff 60%,#fff0d3)}.arena{background:linear-gradient(#78b8b2,#538d93);border-color:#edfff2;box-shadow:0 6px #387875,0 15px 30px #477f7733}.tile{background:linear-gradient(145deg,#7dc1b7,#529692);border-color:#caffd580}.landing h1 em{color:#fd8fbe}.mapHead h2{color:#815795}.gameHud{background:linear-gradient(#fff8fd,#ffd7eb)}.powerLabel{font-size:clamp(7px,1.7vw,11px)}

/* Real Flower edition: clean garden UI and photographic sprite tiles. */
body{background:#f3f8f1;color:#254d43}.cloud{display:none}.app{padding:12px 12px 25px}.top a,.top button{background:#fff;border:1px solid #d9e6db;color:#316657}.top span,.top b{color:#4e7664}.landing h1{rotate:0;letter-spacing:-2px;margin-top:20px}.landing h1>span{font-size:30px;color:#3f7861;text-shadow:none;-webkit-text-stroke:0;letter-spacing:6px}.landing h1 em{display:block;color:#254d43;font-size:clamp(53px,13vw,76px);text-shadow:none;-webkit-text-stroke:0;margin-top:8px}.landing h1 i{color:#6d8776;font-size:15px;margin-top:17px}.landingLabel{color:#517c62;background:#e6efdf;border:0}.hero{width:100%;max-width:470px;aspect-ratio:3/2;margin:24px 0 16px;background:linear-gradient(#e3eddd,#f7e9ed);border-radius:32px;overflow:hidden}.heroScene{animation:none;filter:none;padding:12px;object-fit:contain}.heroSpark{display:none}.landingInfo{background:white;border:1px solid #e0e9dd;box-shadow:none;border-radius:16px}.landingInfo b{color:#36674f}.landingInfo>span{color:#6e846e}.playMain{background:#336b50;color:#fff;border:0;box-shadow:0 4px 0 #234d3b;border-radius:18px;text-shadow:none}.playMain>i{color:#cee7d6}.landingActions button,.landingActions>span,.landingFoot{color:#66846e}.gameHud{background:#fff;border:1px solid #dce8db;box-shadow:0 3px 12px #33583b0d;border-radius:22px}.moveBadge b{color:#326a50}.moveBadge small{color:#738877}.targetPill{background:#eaf3e4;color:#365d40;border:1px solid #d4e4ce}.bubuButton{display:none}.arena{background:#e1ecde;border:3px solid #fff;border-radius:22px;box-shadow:0 8px 24px #34503d18;padding:7px}.tile{background:#f9fcf6;border:1px solid #dce8d6;border-radius:10px;box-shadow:inset 0 1px 0 #fff}.tile.selected{outline:3px solid #df6f9a;outline-offset:-3px}.photoFlower{background-repeat:no-repeat;background-size:300% 200%;display:block}.tile .fruit.photoFlower{inset:0;width:100%;height:100%;filter:none}.targetPill .photoFlower{width:34px;height:34px;flex-shrink:0}.levelRibbon,.gameStatus{color:#55715b}.levelRibbon b{color:#285c40}.boosters{background:#fff;border:1px solid #dce8db;box-shadow:none;border-radius:20px}.boosters button{background:#f1f7ed;border:1px solid #e0eada;box-shadow:none}.boosters b{color:#4e6b54}.bottomTools button{background:#fff;color:#42674f;border:1px solid #dce8db;border-radius:13px}#musicToggle{background:#e8f2e4;color:#3f6c50;border-color:#d3e4cd}.scoreNote{color:#859780}.mapHead h2{color:#32644b}.mapStatus,.localNote,.eyebrow{color:#6e8b73}.map{box-shadow:none;border:3px solid #fff}.tile[data-power="bomb"]{background:#f6d8e4}.photoFlower{border-radius:inherit}

.tile[data-power="bomb"]{background:radial-gradient(circle,#fff5ca,#ffe3b2);border:2px solid #ffaf53;box-shadow:inset 0 0 9px #fff,0 0 4px #f9b768}.tile[data-power="bomb"] img.fruit{object-fit:contain;padding:3px 3px 10px;scale:1;filter:drop-shadow(0 2px 1px #9e382933)}.tile[data-power="bomb"] .powerLabel{background:#c33d22;color:#fff}.tile[data-power="bomb"].selected{outline-color:#ff8734}
