:root{--ink:#10204b;--yellow:#ffd33d;--orange:#e98b11;--blue:#1761a5;--coral:#ff5d63;--cream:#fff8e6}*{box-sizing:border-box}html,body{background:var(--cream);min-height:100%;color:var(--ink);margin:0;font-family:Nunito Sans,sans-serif;overflow-x:hidden}button,input{font:inherit}button{-webkit-tap-highlight-color:transparent}.shell{background:radial-gradient(circle, #f2c94c55 2px, transparent 3px) 0 0/32px 32px, var(--cream);min-height:100dvh;padding:12px 22px 10px}header{justify-content:space-between;align-items:center;gap:14px;max-width:1180px;height:62px;margin:0 auto 10px;display:flex}.brand{align-items:center;gap:10px;display:flex}.brand img{object-fit:cover;object-position:50% 4%;border:3px solid var(--blue);background:#fff;border-radius:50%;width:66px;height:58px}.brand strong{letter-spacing:1.5px;font-size:24px;display:block}.brand small{letter-spacing:3px;color:var(--orange);font-size:9px;font-weight:900;display:block}.tag{background:var(--ink);color:#fff;letter-spacing:1.4px;border-radius:30px;padding:10px 18px;font-size:11px;font-weight:900}.header-actions{gap:7px;display:flex}.sound-toggle,.fullscreen-toggle{border:2px solid var(--ink);background:var(--yellow);color:var(--ink);cursor:pointer;border-radius:20px;padding:8px 12px;font-size:10px;font-weight:1000}.fullscreen-toggle{background:#fff}.game-wrap{aspect-ratio:16/9;border:7px solid var(--ink);width:min(1180px,100%);box-shadow:0 9px 0 var(--yellow), 0 20px 38px #332c1d33;background:#65cdf1;border-radius:25px;margin:auto;position:relative;overflow:hidden}.game-wrap canvas{object-fit:contain;width:100%;height:100%;display:block}.overlay{text-align:center;color:#fff;background:linear-gradient(100deg,#0d1d4bee,#193b6bd8);flex-direction:column;justify-content:center;align-items:center;padding:20px;display:flex;position:absolute;inset:0;overflow-y:auto}.overlay .eyebrow,.world-num,.game-badge{background:var(--coral);letter-spacing:2.3px;border-radius:20px;padding:7px 13px;font-size:10px;font-weight:1000}.overlay h1{letter-spacing:-2px;text-shadow:4px 5px #0b173b;margin:12px 0 9px;font-size:clamp(37px,5.7vw,68px);line-height:.84}.overlay h1 em{color:var(--yellow);font-style:normal}.overlay h2{text-shadow:4px 4px #111b3e;max-width:820px;margin:14px 0 5px;font-size:clamp(29px,4.5vw,53px);line-height:.95}.overlay p{max-width:650px;margin:5px 0 12px;font-size:clamp(13px,1.5vw,17px);font-weight:800;line-height:1.4}.overlay button{background:var(--yellow);color:var(--ink);cursor:pointer;border:0;border-radius:15px;margin-top:9px;padding:12px 19px;font-size:13px;font-weight:1000;box-shadow:0 6px #bb7f0b}.overlay button:hover{transform:translateY(-2px)}.overlay button b{margin-left:15px}.menu-overlay{background:radial-gradient(circle at 20% 20%,#54c7e54d,#0000 25%),linear-gradient(105deg,#0c1b48f4,#1764a7e8 55%,#e47a18dc)}.title-logo{object-fit:cover;object-position:50% 68%;background:#fff;border:3px solid #fff;border-radius:18px;width:155px;height:85px;padding:2px;box-shadow:5px 5px #081638}.game-badge{background:var(--yellow);color:var(--ink);margin-top:-8px;transform:rotate(-2deg)}.menu-overlay h1{margin-top:9px}.menu-overlay>p{max-width:680px;margin-bottom:8px}.menu-actions{align-items:center;gap:8px;display:flex}.menu-actions .screen-button{background:#fff;font-size:10px;box-shadow:0 6px #7c8aa5}.difficulty{gap:7px;margin-bottom:8px;display:flex}.difficulty button{color:#fff;box-shadow:none;letter-spacing:1px;background:#ffffff18;border:2px solid #fff8;margin:0;padding:7px 10px;font-size:9px}.difficulty button.selected{background:var(--yellow);color:var(--ink);border-color:var(--yellow)}.name-field{letter-spacing:2px;flex-direction:column;gap:4px;font-size:8px;font-weight:900;display:flex}.name-field input{border:3px solid var(--yellow);text-align:center;width:min(310px,78vw);color:var(--ink);border-radius:13px;outline:0;padding:9px 14px;font-size:15px;font-weight:900}.best{letter-spacing:2px;margin-top:12px;font-size:9px;font-weight:900}.story-overlay,.shop-overlay,.ending-overlay,.result-overlay{background:linear-gradient(120deg,#0e204df2,#254d79ee)}.comic-grid{grid-template-columns:repeat(3,1fr);gap:12px;width:min(850px,94%);margin:16px 0 8px;display:grid}.comic-grid article{text-align:left;background:radial-gradient(circle at 70% 20%,#ffd43b 0 7%,#0000 8%),linear-gradient(150deg,#2ca6ca,#1764a7 57%,#10204b 58%);border:4px solid #fff;border-radius:15px;flex-direction:column;justify-content:flex-end;align-items:flex-start;min-height:190px;padding:16px;display:flex;position:relative;overflow:hidden;box-shadow:7px 7px #091638}.comic-grid article:nth-child(2){background:radial-gradient(circle,#89909c 0 8%,#0000 9%) 0 0/42px 42px,linear-gradient(150deg,#73798a,#34394d)}.comic-grid article:nth-child(3){background:radial-gradient(circle at 75% 22%,#fff 0 6%,#0000 7%),linear-gradient(150deg,#f0a420,#d75c42 57%,#10204b 58%)}.comic-grid article>b{background:var(--coral);border-radius:50%;place-items:center;width:28px;height:28px;display:grid;position:absolute;top:9px;left:10px}.comic-grid .story-portrait{width:90px;height:90px;position:absolute;top:9px;right:10px}.comic-grid h3{margin:0 0 6px;font-size:15px}.comic-grid p{margin:0;font-size:11px}.dialogue-card{border:3px solid var(--yellow);width:min(650px,92%);color:var(--ink);text-align:left;background:#fff;border-radius:18px;align-items:center;gap:15px;margin:10px 0;padding:10px 16px;display:flex}.story-portrait{border:3px solid var(--ink);background-color:#72d6ee;background-image:url(/assets/game/story-portraits.png);background-repeat:no-repeat;background-size:200% 200%;border-radius:50%;flex:none;width:72px;height:72px}.story-portrait.jimmy{background-position:0 0}.story-portrait.florita{background-position:100% 0}.story-portrait.hilo{background-position:0 100%}.story-portrait.gris{background-position:100% 100%}.story-portrait.marchita{background-image:url(/assets/game/marchita-sprites.png);background-position:0 0;background-size:400% 200%}.story-portrait.guardian{background-image:url(/assets/game/enemy-sprites.png);background-position:66.67% 0;background-size:400% 400%}.dialogue-card b,.dialogue-card span{display:block}.dialogue-card b{color:var(--coral);margin-bottom:4px;font-size:12px}.dialogue-card span{font-size:14px;font-weight:900;line-height:1.3}.rule-strip{color:#fff;letter-spacing:1px;background:#10204bcc;border-radius:20px;padding:7px 12px;font-size:9px;font-weight:900}.boss-overlay{background:radial-gradient(circle at 50% 18%,#e75b654d,#0000 32%),linear-gradient(120deg,#131c41f7,#461e3ff2)}.boss-talk{grid-template-columns:1fr 1fr;gap:10px;width:min(760px,94%);margin:10px 0;display:grid}.talk-card{text-align:left;background:#ffffff16;border:2px solid #fff6;border-radius:16px;align-items:center;gap:10px;padding:10px 13px;display:flex}.talk-card .story-portrait{width:66px;height:66px}.talk-card p{margin:0;font-size:12px}.talk-card b{color:var(--yellow);margin-bottom:3px;font-size:10px;display:block}.jimmy-talk{border-color:#ffd43a88}.transform-overlay{background:radial-gradient(circle,#ffffff42 0 10%,#0000 42%),conic-gradient(from 90deg,#ff5d63dd,#f0ac27dd,#4ec678dd,#4ebfe2dd,#8d68d9dd,#ff5d63dd)}.transform-hero{filter:drop-shadow(0 0 14px #fff);background:url(/assets/game/jimmy-bakano-sprites.png) 0 0/400% 200% no-repeat;width:130px;height:130px;margin:5px 0 -5px;animation:.55s ease-in-out infinite alternate heroPulse}@keyframes heroPulse{to{filter:drop-shadow(0 0 22px #fff);transform:translateY(-5px)scale(1.04)}}.reward-button{color:var(--ink);background:#f0a51f;border:3px solid #fff;border-radius:18px;align-items:center;gap:12px;padding:10px 20px;display:flex;box-shadow:5px 5px #091638}.reward-button i{background:var(--yellow);border:4px solid #fff;border-radius:50%;place-items:center;width:46px;height:46px;font-size:26px;font-style:normal;display:grid}.reward-button strong,.reward-button span{text-align:left;display:block}.reward-button strong{font-size:15px}.reward-button span{font-size:9px}.wallet{margin-bottom:8px!important}.wallet b{color:var(--yellow)}.shop-grid{grid-template-columns:repeat(5,1fr);gap:8px;width:min(960px,97%);display:grid}.shop-grid button{color:#fff;min-height:145px;box-shadow:none;background:#ffffff18;border:2px solid #fff;flex-direction:column;align-items:center;gap:5px;margin:0;padding:11px 10px;display:flex}.shop-grid button:disabled{cursor:not-allowed;opacity:.45}.shop-grid button.owned{opacity:1;background:#2a9d6244;border-color:#75e4a0}.shop-grid i{background:var(--yellow);width:40px;height:40px;color:var(--ink);border-radius:50%;place-items:center;font-size:22px;font-style:normal;display:grid}.shop-grid strong{font-size:12px}.shop-grid span{min-height:30px;font-size:9px;line-height:1.3}.shop-grid b{color:var(--yellow);font-size:11px}.shop-overlay .continue{margin-top:14px}.epilogue-grid{grid-template-columns:repeat(3,1fr);gap:10px;width:min(700px,94%);display:grid}.epilogue-grid article{background:#ffffff13;border:2px solid #fff5;border-radius:15px;flex-direction:column;align-items:center;padding:10px;display:flex}.epilogue-grid .story-portrait{width:68px;height:68px}.epilogue-grid p{margin:6px 0 0;font-size:10px}.ending-overlay blockquote{border-left:5px solid var(--yellow);background:#ffffff15;max-width:620px;margin:8px 0;padding:10px 18px;font-size:12px;font-style:italic;font-weight:900}.lost-overlay{background:linear-gradient(120deg,#111a39f5,#5a2632f3)}.result-grid{gap:8px;margin:7px 0;display:flex}.result-grid span{letter-spacing:1px;background:#ffffff18;border:1px solid #fff5;border-radius:14px;min-width:95px;padding:9px;font-size:8px;font-weight:900}.result-grid b{color:var(--yellow);letter-spacing:0;font-size:20px;display:block}.desktop-help{letter-spacing:.7px;justify-content:center;align-items:center;gap:18px;max-width:1080px;margin:21px auto 8px;font-size:9px;font-weight:900;display:flex}.desktop-help span{align-items:center;gap:5px;display:flex}.desktop-help kbd{border:2px solid var(--ink);background:#fff;border-bottom-width:4px;border-radius:7px;padding:5px 8px;font-size:13px}.mobile-controls,.rotate-hint,.mobile-quick-actions{display:none}.mobile-quick-actions{z-index:40;gap:6px;position:absolute;top:8px;left:50%;transform:translate(-50%)}.mobile-quick-actions button{color:#fff;background:#10204be8;border:2px solid #fff;border-radius:15px;justify-content:center;align-items:center;gap:5px;min-width:84px;padding:6px 9px;font-size:7px;font-weight:1000;display:flex;box-shadow:0 3px #07122f}.mobile-quick-actions button:first-child{background:#1761a5e8}.mobile-quick-actions button span{font-size:14px}.ios-install-tip{display:none}.mobile-controls{justify-content:space-between;gap:22px;width:100%;max-width:720px;margin:0 auto}.mobile-controls>div{flex:1;gap:9px;display:flex}.mobile-controls button{touch-action:none;-webkit-user-select:none;user-select:none;background:var(--ink);color:#fff;border:0;border-radius:16px;flex-direction:column;flex:1;justify-content:center;align-items:center;gap:1px;min-width:0;padding:7px;font-size:24px;font-weight:1000;display:flex;box-shadow:0 5px #07122f}.mobile-controls button small{letter-spacing:.4px;font-size:6px;font-weight:1000}.mobile-controls button span{line-height:.9}.mobile-controls .jump{background:var(--orange)}.mobile-controls .music{background:#208bba}.mobile-controls .spin-button{background:#9b55cf}.mobile-controls .jet-button{background:#e15a72}.mobile-controls .whirl-button{background:#30a66f}.mobile-controls .passive-shield{color:#fff;background:#5e78dd;border:2px solid #fff;border-radius:50%;align-self:flex-start;place-items:center;width:22px;height:22px;margin-left:-18px;font-size:11px;display:grid;box-shadow:0 2px #07122f}footer{text-align:center;color:#6a6d79;letter-spacing:2px;margin-top:13px;font-size:9px;font-weight:900}html:fullscreen{width:100%;height:100%;overflow:hidden}html:fullscreen body{width:100%;height:100%;overflow:hidden}html:fullscreen .shell{width:100%;height:100dvh}.ios-fullscreen,.ios-fullscreen body{background:#081431;width:100%;height:100dvh;position:fixed;inset:0;overflow:hidden}.ios-fullscreen .shell{background:#081431;width:100%;height:100dvh;min-height:0;padding:0}.ios-fullscreen header,.ios-fullscreen footer,.ios-fullscreen .rotate-hint{display:none}.ios-fullscreen .game-wrap{width:min(100vw,177.778dvh);max-width:none;height:min(100dvh,56.25vw);box-shadow:none;border:0;border-radius:0;margin:auto}.ios-fullscreen .ios-install-tip{z-index:60;top:max(37px, env(safe-area-inset-top));color:#fff;background:#10204be8;border-radius:9px;width:max-content;max-width:88vw;padding:5px 9px;font-size:7px;font-weight:900;display:block;position:fixed;left:50%;transform:translate(-50%)}@media (width<=900px){.tag{display:none}.overlay{padding:10px}.overlay h1{margin:8px 0;font-size:clamp(31px,7vw,51px)}.overlay h2{margin-top:8px;font-size:clamp(25px,6vw,41px)}.overlay p{margin-bottom:7px;font-size:11px}.title-logo{width:112px;height:61px}.comic-grid{gap:6px;margin:8px 0 4px}.comic-grid article{border-width:2px;min-height:125px;padding:8px;box-shadow:3px 3px #091638}.comic-grid article>b{width:20px;height:20px;font-size:8px;top:5px;left:5px}.comic-grid .story-portrait{width:54px;height:54px;top:5px;right:5px}.comic-grid h3{margin-bottom:2px;font-size:9px}.comic-grid p{font-size:7px;line-height:1.2}.dialogue-card{gap:8px;margin:5px 0;padding:6px 9px}.story-portrait{width:46px;height:46px}.dialogue-card b{margin-bottom:1px;font-size:8px}.dialogue-card span{font-size:9px}.rule-strip{padding:4px 8px;font-size:7px}.boss-talk{margin:4px 0}.talk-card{padding:5px 7px}.talk-card .story-portrait{width:43px;height:43px}.talk-card p{font-size:8px}.transform-hero{width:82px;height:82px}.shop-grid button{min-height:105px;padding:6px 5px}.shop-grid i{width:29px;height:29px;font-size:16px}.shop-grid strong{font-size:8px}.shop-grid span{min-height:21px;font-size:7px}.shop-grid b{font-size:8px}.reward-button{padding:6px 12px}.reward-button i{width:34px;height:34px;font-size:19px}.reward-button strong{font-size:11px}}@media (hover:none),(pointer:coarse){html,body{overscroll-behavior:none}.desktop-help{display:none}.mobile-controls,.mobile-quick-actions{display:flex}}@media (hover:none) and (orientation:portrait),(width<=600px) and (orientation:portrait){html,body{width:100%;height:100%;overflow:hidden}.shell{background:#0d1d4b;grid-template-rows:44px auto 28px minmax(105px,1fr);align-content:start;width:100%;height:100dvh;min-height:0;padding:0;display:grid}header{background:var(--cream);width:100%;height:44px;margin:0;padding:3px 7px}.brand{gap:5px}.brand img{border-width:2px;width:37px;height:37px}.brand strong{letter-spacing:.6px;font-size:13px}.brand small{letter-spacing:1px;font-size:6px}.header-actions{gap:4px;display:none}.sound-toggle,.fullscreen-toggle{border-width:1px;padding:5px 7px;font-size:7px}.sound-toggle{white-space:nowrap;color:#0000;width:32px;overflow:hidden}.sound-toggle:first-letter{color:var(--ink)}.game-wrap{aspect-ratio:16/9;border:0;border-bottom:4px solid var(--yellow);width:100vw;max-width:none;box-shadow:none;border-radius:0;margin:0}.game-wrap canvas{width:100%;height:100%}.mobile-quick-actions{gap:3px;top:3px;left:auto;right:4px;transform:none}.mobile-quick-actions button{border-width:1px;border-radius:9px;min-width:62px;padding:3px 5px;font-size:5px;box-shadow:0 2px #07122f}.mobile-quick-actions button span{font-size:10px}.overlay{justify-content:center;padding:4px 7px;overflow-y:auto}.overlay .eyebrow,.world-num,.game-badge{letter-spacing:1px;padding:3px 7px;font-size:5px}.overlay h1{text-shadow:2px 2px #0b173b;margin:3px 0;font-size:21px;line-height:.88}.overlay h2{text-shadow:2px 2px #111b3e;margin:3px 0 1px;font-size:19px}.overlay>p{max-width:92%;margin:1px 0 3px;font-size:6px;line-height:1.2}.overlay button{border-radius:8px;margin-top:3px;padding:5px 9px;font-size:7px;box-shadow:0 3px #bb7f0b}.overlay button b{margin-left:7px}.title-logo{border-width:1px;border-radius:7px;width:58px;height:33px;box-shadow:2px 2px #081638}.game-badge{margin-top:-4px}.menu-overlay>p{display:none}.menu-actions{gap:4px}.menu-actions .screen-button{font-size:5.5px;box-shadow:0 3px #7c8aa5}.difficulty{gap:3px;margin:2px 0}.difficulty button{border-width:1px;padding:3px 5px;font-size:5px}.name-field{letter-spacing:1px;gap:1px;font-size:5px}.name-field input{border-width:1px;border-radius:7px;width:170px;height:23px;padding:2px 6px;font-size:8px}.best{margin-top:4px;font-size:5px}.comic-grid{gap:3px;width:96%;margin:4px 0 2px}.comic-grid article{border-width:1px;border-radius:6px;min-height:82px;padding:4px;box-shadow:2px 2px #091638}.comic-grid article>b{width:13px;height:13px;font-size:5px;top:2px;left:2px}.comic-grid .story-portrait{border-width:1px;width:34px;height:34px;top:2px;right:2px}.comic-grid h3{margin-bottom:1px;font-size:5.5px}.comic-grid p{font-size:4.7px;line-height:1.1}.dialogue-card{border-width:1px;border-radius:8px;gap:5px;width:94%;min-height:38px;margin:2px 0;padding:3px 5px}.story-portrait{border-width:1px;width:31px;height:31px}.dialogue-card b{font-size:5px}.dialogue-card span{font-size:5.8px;line-height:1.12}.rule-strip{letter-spacing:.3px;padding:2px 4px;font-size:4.7px}.boss-talk{gap:3px;width:96%;margin:2px 0}.talk-card{border-width:1px;border-radius:6px;gap:3px;padding:2px 3px}.talk-card .story-portrait{width:29px;height:29px}.talk-card p,.talk-card b{font-size:5px}.transform-hero{width:53px;height:53px;margin:1px 0 -3px}.reward-button{border-width:1px;border-radius:8px;gap:5px;padding:3px 7px;box-shadow:2px 2px #091638}.reward-button i{border-width:2px;width:25px;height:25px;font-size:13px}.reward-button strong{font-size:7px}.reward-button span{font-size:5px}.wallet{margin:1px 0 3px!important;font-size:6px!important}.shop-grid{gap:3px;width:96%}.shop-grid button{border-width:1px;border-radius:7px;gap:1px;min-height:67px;margin:0;padding:3px 2px}.shop-grid i{width:19px;height:19px;font-size:10px}.shop-grid strong{font-size:5.5px}.shop-grid span{min-height:14px;font-size:4.4px;line-height:1.1}.shop-grid b{font-size:5px}.shop-overlay .continue{margin-top:4px}.epilogue-grid{gap:3px;width:96%}.epilogue-grid article{border-width:1px;border-radius:7px;padding:3px}.epilogue-grid .story-portrait{width:29px;height:29px}.epilogue-grid p{margin-top:2px;font-size:4.7px}.result-grid{gap:3px;margin:2px 0}.result-grid span{border-radius:6px;min-width:60px;padding:3px;font-size:4.5px}.result-grid b{font-size:10px}.ending-overlay blockquote{border-left-width:2px;margin:2px 0;padding:3px 7px;font-size:5px}.rotate-hint{background:var(--yellow);width:100%;height:28px;color:var(--ink);letter-spacing:.8px;justify-content:center;align-items:center;gap:7px;font-size:7px;font-weight:1000;display:flex}.rotate-hint span{font-size:15px}.mobile-controls{width:100%;max-width:none;height:100%;padding:14px max(10px, env(safe-area-inset-right)) max(14px, env(safe-area-inset-bottom)) max(10px, env(safe-area-inset-left));background:#0d1d4b;align-self:stretch;gap:14px;margin:0;position:static}.mobile-controls>div{gap:7px;height:min(72px,100%)}.mobile-controls button{border-radius:13px;min-height:54px;max-height:72px;padding:6px;font-size:20px}.mobile-controls button small{font-size:6px}footer{display:none}}@media (hover:none) and (orientation:landscape),(pointer:coarse) and (orientation:landscape){html,body{background:#081431;width:100%;height:100%;overflow:hidden}.shell{background:#081431;width:100%;height:100dvh;min-height:0;padding:0}header,.rotate-hint,footer{display:none}.game-wrap{width:min(100vw,177.778dvh);max-width:none;height:min(100dvh,56.25vw);box-shadow:none;border:0;border-radius:0;margin:auto}.game-wrap canvas{object-fit:contain;width:100%;height:100%}.mobile-controls{z-index:20;left:max(8px, env(safe-area-inset-left));right:max(8px, env(safe-area-inset-right));bottom:max(7px, env(safe-area-inset-bottom));pointer-events:none;width:auto;max-width:none;margin:0;padding:0;position:fixed}.mobile-controls>div{pointer-events:none;flex:0 0 31%;height:54px}.mobile-controls .action-pad{flex-basis:min(54%,430px);justify-content:flex-end}.mobile-controls button{opacity:.72;pointer-events:auto;border:2px solid #fff8;border-radius:50%;height:49px;min-height:0;padding:4px;font-size:19px;box-shadow:0 3px #07122f}.mobile-controls .action-pad button{flex:0 58px}.mobile-controls button small{font-size:5px}.mobile-quick-actions{top:max(6px, env(safe-area-inset-top));position:fixed;left:50%;right:auto;transform:translate(-50%)}.mobile-quick-actions button{min-width:86px;padding:5px 8px;font-size:7px}.mobile-quick-actions button span{font-size:13px}.overlay{padding:45px 10px 58px}}@media (hover:hover) and (height<=700px){header{height:48px;margin-bottom:5px}.brand img{width:46px;height:42px}.brand strong{font-size:17px}.game-wrap{width:min(100%,177.778dvh - 222.222px)}.desktop-help{margin-top:10px}}@font-face{font-family:Nunito Sans;src:url(/assets/fonts/NunitoSans.ttf)}@font-face{font-family:Baloo;src:url(/assets/fonts/Baloo-Regular.ttf)}h1,h2,.brand strong{font-family:Baloo,Nunito Sans,sans-serif}.game-return{color:#fff;background:#0054a5;justify-content:center;gap:24px;padding:10px;font-weight:800;display:flex}.game-return a{color:#fff;align-items:center;min-height:32px;display:flex}.game-return a:focus-visible{outline-offset:3px;outline:3px solid #f58634}.brand img,.title-logo{object-fit:contain;object-position:center;background:#fff;border-radius:12px}.brand img{width:100px}.title-logo{width:180px;height:85px}
