@import url('https://fonts.googleapis.com/css2?family=Outfit:wght@400;500;600;700;800;900&display=swap');
:root{font-family:Outfit,system-ui,sans-serif;color:#f8f6f0;background:#0c1322;color-scheme:dark}*{box-sizing:border-box}body{margin:0;background:radial-gradient(ellipse at 80% 15%,#18356670,transparent 50%),radial-gradient(ellipse at 0% 60%,#6b321a20,transparent 55%);min-height:100vh}main{max-width:900px;margin:auto;padding:28px 28px 12px}button,select{font:inherit;cursor:pointer}button{border:1px solid #ffffff18;background:#202c43;color:#fff;border-radius:12px;padding:13px 17px;transition:transform .15s,background .15s}button:hover{background:#33415b}button:active{transform:scale(.96)}button:focus-visible,select:focus-visible{outline:3px solid #ffcc42;outline-offset:3px}header{display:flex;align-items:center;justify-content:space-between}.brand{text-decoration:none;color:#ffe04b;font-size:25px;font-weight:900;letter-spacing:-1px;font-style:italic;line-height:1}.brand span{color:#ff6a31;margin-left:5px}.brand small{display:block;font-size:8px;letter-spacing:3px;color:#9eaac0;font-style:normal;margin-top:9px}.round{border-radius:50%;font-size:22px;width:44px;height:44px;padding:0}.intro{display:flex;align-items:center;justify-content:space-between;min-height:190px}.intro img{width:170px;height:190px;object-fit:contain;transform:rotate(5deg);filter:drop-shadow(0 8px 25px #ff9d0020)}.eyebrow{font-size:10px;color:#ffb54b;letter-spacing:2.5px;font-weight:700}h1{font-size:43px;line-height:1.1;letter-spacing:-1.5px;margin:13px 0}em{color:#ffc94a;font-style:normal}.intro p{color:#a6b1c5;font-size:13px}.game{max-width:620px;margin:auto;background:#141f32;border:1px solid #ffffff12;border-radius:24px;padding:22px;box-shadow:0 22px 80px #0004}.stats{display:flex;justify-content:space-between;align-items:center;padding:0 4px 18px}.stats label,.stats small{display:block;color:#96a4bc;font-size:10px;letter-spacing:1.5px}.stats strong{display:block;margin-top:5px;font-size:23px;color:#ffe395}.stats select{display:block;margin-top:5px;border:0;background:transparent;color:white;font-weight:700;font-size:23px;width:85px}.rules{display:flex;gap:8px;justify-content:space-between;font-size:10px;color:#b9c6d9;border-top:1px solid #ffffff0d;padding:14px 0}.boardwrap{background:#0a1220;border-radius:15px;padding:7px}#board{display:grid;gap:5px}.cell{aspect-ratio:1;padding:0;border:0;border-radius:8px;position:relative;box-shadow:inset 0 -3px #00000015;color:#1b2439;font-weight:800;font-size:clamp(18px,5vw,33px);overflow:hidden}.cell:hover{filter:brightness(1.09);background:var(--color)!important}.cell.conflict{outline:3px solid #fb455a;outline-offset:-4px}.sprite{display:block;width:100%;height:100%;background-image:url('jemono.png');background-size:185% auto;background-position:50% 0;background-repeat:no-repeat;filter:drop-shadow(0 2px 1px #0005);animation:pop .2s ease-out}.cell .x{opacity:.65}.cell:has(.sprite){box-shadow:inset 0 0 0 3px #fff9}#status{text-align:center;font-size:13px;color:#aebdd3;min-height:32px;margin:16px 0 8px}.modes{display:flex;background:#0c1526;padding:4px;border-radius:13px;gap:5px}.modes button{flex:1;border:0;background:transparent;color:#a1aec4;padding:12px 5px;font-size:13px}.modes button.active{background:#ffca49;color:#32220c;font-weight:700}.actions{display:flex;justify-content:space-between;gap:6px;margin-top:13px}.actions button{font-size:12px;background:transparent;padding:10px 8px}.actions span{background:#ffffff16;padding:2px 6px;border-radius:5px}#next,#start{background:#ffca49;color:#30210a;font-weight:700;width:100%;margin-top:14px}footer{text-align:center;letter-spacing:2px;font-size:8px;color:#73829e;padding:25px 0}footer span{color:#ffbd3c;padding:0 10px}dialog{border:1px solid #ffffff25;background:#18243a;color:#e8edf7;border-radius:22px;padding:28px;max-width:440px;width:90%;line-height:1.6}dialog::backdrop{background:#030916cc;backdrop-filter:blur(6px)}dialog .round{float:right}dialog h2{line-height:1.2}dialog li{margin-bottom:10px}@keyframes pop{from{transform:scale(.4)}to{transform:scale(1)}}@media(max-width:560px){main{padding:20px 14px}.intro{min-height:158px}.intro img{width:112px;height:140px}h1{font-size:30px;max-width:240px}.intro p{font-size:11px;max-width:220px}.eyebrow{font-size:8px}.game{padding:15px;border-radius:20px}.rules{font-size:9px;gap:4px}.cell{border-radius:6px}#board{gap:4px}.brand{font-size:22px}}

.cell{touch-action:manipulation;user-select:none}.tap-guide{text-align:center;font-size:12px;color:#aebdd3;background:#0c1526;padding:13px 5px;border-radius:12px}.tap-guide b{color:#ffdc75}

.life-bar{display:flex;align-items:center;justify-content:space-between;padding:8px 5px 14px}.life-bar span{font-size:10px;letter-spacing:2px;color:#96a4bc}.life-bar strong{color:#ff6c79;font-size:27px;letter-spacing:5px}#retry{width:100%;margin-top:14px;background:#ffca49;color:#30210a;font-weight:700}button:disabled{cursor:default}.actions button:disabled{opacity:.4}

.characters{max-width:620px;margin:0 auto 16px;padding:16px 20px;border-radius:20px;background:linear-gradient(120deg,#15263d,#10213a);border:1px solid #5dcaff25}.character-heading{display:flex;justify-content:space-between;gap:8px;font-size:10px;letter-spacing:1.5px;color:#c2d2e9}.character-heading small{color:#66d9ff;font-size:9px}.character-options{display:flex;gap:10px;margin-top:12px}.character-options button{display:flex;align-items:center;gap:10px;flex:1;padding:8px;font-size:12px;background:#0b1628}.character-options button[aria-pressed="true"]{border-color:#ffce49;background:#333026}.character-options button:disabled{opacity:.55}.character-avatar{width:48px;height:48px;flex-shrink:0;border-radius:10px;background-color:#223856}.sprite.blue{background-image:url('jemono-azul.png');background-size:320% auto;background-position:43% 39%}.characters p{font-size:11px;color:#9eb5d2;margin:12px 0 0}

.sprite{background-image:url('model-fire.png');background-size:contain;background-position:center}.sprite.blue{background-image:url('jemono-azul.png');background-size:320% auto;background-position:43% 39%}.sprite.aurora{filter:hue-rotate(80deg) drop-shadow(0 2px 2px #0005)}.sprite.violet{filter:hue-rotate(240deg) drop-shadow(0 2px 2px #0005)}.cell.auto-mark .x{opacity:.48}.character-options{flex-wrap:wrap}.mystery-icon{display:grid;place-items:center;width:40px;height:48px;font-size:33px;color:#a5b7d2}.shop{max-width:620px;margin:20px auto 0;padding:22px;background:#141f32;border:1px solid #ffffff12;border-radius:24px}.shop-heading{display:flex;justify-content:space-between;align-items:center}.shop h2{font-size:24px;margin:8px 0}.shop p{font-size:12px;color:#a4b5ce;line-height:1.5}.wallet{color:#ffdc75;background:#303024;padding:9px;border-radius:12px;white-space:nowrap}.shop-grid{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin:20px 0}.shop-grid article{background:#0c1628;border-radius:16px;padding:15px;text-align:center}.shop-sprite{height:110px;width:100%}.shop h3{font-size:16px;margin:8px 0}.shop-grid button{font-size:12px;width:100%;background:#263851}.shop-grid button:disabled{opacity:.5}.rewards{display:flex;justify-content:space-between;gap:8px;font-size:10px;flex-wrap:wrap}.rewards b{color:#ffce49}.shop .economy-note{font-size:10px;color:#8c9db7}.character-options .character-avatar{animation:none}@media(max-width:560px){.character-options button{font-size:10px;min-width:85px}.character-avatar{width:32px;height:38px}.shop{padding:16px}.shop-grid article{padding:10px}.shop h3{font-size:14px}.shop-heading h2{font-size:20px}}

#board{touch-action:none;user-select:none}.sprite.blue{background-image:url('model-blue.png');background-size:contain;background-position:center}.sprite.shadow{background-image:url('model-shadow.png');background-size:contain;background-position:center}.sprite.rose{filter:hue-rotate(290deg) saturate(.8)}.sprite.ruby{filter:hue-rotate(325deg) saturate(1.6)}.sprite.ice{filter:hue-rotate(145deg)}.sprite.lime{filter:hue-rotate(45deg) saturate(1.3)}.shop-grid{grid-template-columns:repeat(3,1fr)}@media(max-width:560px){.shop-grid{grid-template-columns:repeat(2,1fr)}}

.buddy{display:flex;align-items:center;gap:12px;margin:0 0 12px;padding:10px 12px;border-radius:15px;background:linear-gradient(110deg,#273249,#182639)}.buddy-art{position:relative;flex-shrink:0;width:64px;height:69px;animation:buddyFloat 3s ease-in-out infinite}.buddy-art .sprite{animation:none}.buddy-spark{position:absolute;top:4px;right:-5px;color:#ffd457;font-size:19px}.buddy-speech{font-size:12px;line-height:1.5;color:#e3eaf5}.buddy-speech button{display:block;padding:3px 0;margin-top:4px;border:0;background:transparent;font-size:10px;color:#9cb8df}.buddy-speech button[hidden]{display:none}.buddy.happy .buddy-art{animation:buddyCheer .6s ease-in-out 3}.buddy.encourage .buddy-art{animation:buddyNod .7s ease-in-out 2}.buddy.ready .buddy-art{animation:buddyCheer .7s ease-in-out}.buddy.happy .buddy-spark{animation:sparkle .5s ease-in-out 4}.win-dialog{width:min(450px,92vw);text-align:center;overflow:hidden;padding:30px 24px;border:1px solid #ffca4945;background:radial-gradient(circle at 50% 25%,#354069,#162239 65%);box-shadow:0 20px 100px #0009;max-height:92dvh;overflow-y:auto}.win-close{position:absolute;right:12px;top:10px;z-index:3}.win-dialog .eyebrow{display:block;margin-top:12px}.win-mascot{width:155px;height:160px;margin:14px auto 0;position:relative;animation:buddyCheer .9s ease-in-out 3}.win-mascot .sprite{animation:none}.win-spark{position:absolute;color:#ffe89a;font-size:32px;animation:sparkle 1.3s ease-in-out 4}.win-spark.left{left:-30px;top:50px}.win-spark.right{right:-25px;top:20px}.win-stars{color:#ffdb63;font-size:30px;letter-spacing:8px;text-shadow:0 0 20px #ffc43d66}.win-dialog h2{font-size:29px;line-height:1.1;margin:12px 0;color:#fff4cf}.win-dialog p{font-size:13px;color:#bdcce2;line-height:1.6}.win-dialog #win-points{display:block;color:#ffdc75;font-size:24px}.win-dialog #win-rewards{font-size:11px}.win-dialog #win-unlock{color:#92d9ff}.win-dialog #win-continue{background:#ffce49;color:#30210a;width:100%;font-weight:700;margin-top:8px}#confetti{position:absolute;inset:0;pointer-events:none;overflow:hidden}#confetti i{position:absolute;left:var(--x);top:-20px;width:7px;height:13px;background:#ffd74b;filter:hue-rotate(var(--hue));animation:confettiFall 3s ease-in var(--delay) 1 both}@keyframes buddyFloat{50%{transform:translateY(-4px) rotate(2deg)}}@keyframes buddyCheer{0%,100%{transform:translateY(0) rotate(-4deg) scale(1)}35%{transform:translateY(-10px) rotate(5deg) scale(1.04)}70%{transform:translateY(0) rotate(-3deg) scale(1.03,.95)}}@keyframes buddyNod{25%,75%{transform:rotate(6deg) translateY(3px)}50%{transform:rotate(-4deg)}}@keyframes sparkle{50%{transform:scale(1.35) rotate(20deg);opacity:.5}}@keyframes confettiFall{0%{transform:translateY(-20px) rotate(0);opacity:1}100%{transform:translateY(650px) rotate(620deg);opacity:0}}@media(prefers-reduced-motion:reduce){.buddy-art,.buddy.happy .buddy-art,.buddy.encourage .buddy-art,.buddy.ready .buddy-art,.win-mascot,.win-spark,.buddy.happy .buddy-spark,.sprite{animation:none!important}#confetti{display:none}}

.install-card{max-width:620px;margin:20px auto 0;padding:22px;border:1px solid #ffffff15;border-radius:22px;background:linear-gradient(120deg,#183049,#142033)}.install-card h2{margin:8px 0;font-size:23px}.install-card p{font-size:12px;color:#acbed7;line-height:1.5}.install-card button,#install-done{background:#ffce49;color:#30210a;font-weight:700}.install-card #install-status:empty{display:none}#install-dialog h2{padding-right:25px}#install-dialog p{font-size:13px}

.buddy-name{display:block;font-size:10px;color:#ffdc75;margin-bottom:4px}.shop-escalation{padding:12px;background:#0c1628;border-left:3px solid #ffce49;border-radius:7px}.buddy[data-personality="sway"] .buddy-art{animation:personalSway 3s ease-in-out infinite}.buddy[data-personality="float"] .buddy-art{animation:personalFloat 4s ease-in-out infinite}.buddy[data-personality="tilt"] .buddy-art{animation:personalTilt 3s ease-in-out infinite}.buddy[data-personality="pulse"] .buddy-art{animation:personalPulse 3s ease-in-out infinite}.buddy[data-personality="wiggle"] .buddy-art{animation:personalWiggle 2.5s ease-in-out infinite}.buddy.happy[data-personality] .buddy-art{animation-duration:.7s;animation-iteration-count:3}@keyframes personalSway{0%,100%{transform:rotate(-7deg)}50%{transform:rotate(7deg)}}@keyframes personalFloat{0%,100%{transform:translateY(2px)}50%{transform:translateY(-9px)}}@keyframes personalTilt{0%,80%,100%{transform:rotate(0)}35%{transform:rotate(-10deg)}60%{transform:rotate(8deg)}}@keyframes personalPulse{50%{transform:scale(1.08)}}@keyframes personalWiggle{0%,60%,100%{transform:rotate(0)}20%{transform:rotate(-12deg)}40%{transform:rotate(12deg)}}@media(prefers-reduced-motion:reduce){.buddy[data-personality] .buddy-art{animation:none!important}}

.metrics-notice{max-width:620px;margin:0 auto 20px;padding:0 20px;text-align:center;font-size:10px;color:#879ab8;line-height:1.5}

.tutorial-entry{max-width:620px;margin:0 auto 14px;display:flex;gap:10px;align-items:center;justify-content:space-between}.tutorial-entry button{color:#ffdb74;background:#2b2f30;font-size:12px}.tutorial-entry span{font-size:10px;color:#9caec9}.tutorial-dialog{width:min(540px,94vw);max-width:540px;padding:22px;max-height:94dvh;overflow-y:auto}.tutorial-top{display:flex;justify-content:space-between;align-items:center;gap:10px}.tutorial-top button{font-size:11px;padding:7px 10px;background:transparent}.tutorial-host{display:flex;align-items:center;gap:12px;margin-top:14px}.tutorial-host>.sprite{width:64px;height:75px;flex-shrink:0}.tutorial-host h2{margin:0;font-size:23px}.tutorial-safe{font-size:10px;color:#a9d9bf}#tutorial-message{font-size:13px;line-height:1.5;min-height:78px}#tutorial-board{display:grid;grid-template-columns:repeat(5,1fr);gap:5px;padding:7px;background:#0a1220;border-radius:14px;touch-action:none;user-select:none}#tutorial-board .cell{min-width:0}#tutorial-board .tutorial-target{outline:3px solid #fff6a2;outline-offset:-4px;box-shadow:inset 0 0 0 6px #111a2d77}#tutorial-board .tutorial-cross{outline:2px dashed #17243b;outline-offset:-5px}#tutorial-feedback{font-size:12px;color:#ffdf91;min-height:34px;line-height:1.5}#tutorial-finish,#tutorial-help-open{background:#ffce49;color:#30210a;font-weight:700;width:100%;margin-top:10px}#tutorial-finish[hidden]{display:none}@media(max-width:450px){.tutorial-entry{flex-direction:column;gap:5px}.tutorial-host h2{font-size:20px}.tutorial-dialog{padding:16px}.tutorial-safe{font-size:9px}#tutorial-message{min-height:95px}}

.power-mark{display:grid;place-items:center;width:100%;height:100%;pointer-events:none;animation:powerAppear .17s ease-out}.power-mark svg{display:block;width:57%;height:57%;fill:#ffffffe6;stroke:#17243bbf;stroke-width:1.3;stroke-linecap:round;stroke-linejoin:round;filter:drop-shadow(0 2px 1px #0002)}.power-ice svg{stroke-width:1.8;stroke:#fff;filter:drop-shadow(0 1px 1px #17243baa)}.power-guide{display:flex;align-items:center;justify-content:center;gap:7px;margin:10px 0 0;color:#bfd0e9;font-size:11px}.power-guide>span:first-child{width:28px;height:28px;background:#2e3e56;border-radius:7px}.power-guide .power-mark svg{width:75%;height:75%}.power-guide b{color:#ffde87}.shop .shop-power{color:#ffe093;font-size:11px;min-height:20px}.cell:has(.power-mark){box-shadow:inset 0 -3px #00000015}@keyframes powerAppear{from{transform:scale(.7);opacity:.4}to{transform:scale(1);opacity:1}}@media(prefers-reduced-motion:reduce){.power-mark{animation:none}}

.sprite.solar{background-image:url("model-solar.png");background-size:contain;background-position:center;filter:drop-shadow(0 2px 1px #0005)}
.sprite.crimson{background-image:url("model-crimson.png");background-size:contain;background-position:center;filter:drop-shadow(0 2px 1px #0005)}
.sprite.blossom{background-image:url("model-blossom.png");background-size:contain;background-position:center;filter:drop-shadow(0 2px 1px #0005)}
.sprite.inferno{background-image:url("model-inferno.png");background-size:contain;background-position:center;filter:drop-shadow(0 2px 1px #0005)}
.sprite.nova{background-image:url("nova-3d.png");background-size:contain;background-position:center;filter:drop-shadow(0 2px 1px #0005)}
.sprite.volt{background-image:url("model-volt.png");background-size:contain;background-position:center;filter:drop-shadow(0 2px 1px #0005)}
.sprite.dragon{background-image:url("model-dragon.png");background-size:contain;background-position:center;filter:drop-shadow(0 2px 1px #0005)}
.sprite.forest{background-image:url("model-forest.png");background-size:contain;background-position:center;filter:drop-shadow(0 2px 1px #0005)}
.character-options{display:grid;grid-template-columns:repeat(2,minmax(0,1fr))}.character-options button{min-width:0}.shop-grid h3{overflow-wrap:anywhere}

.brand .find-label{display:block;font-size:10px;letter-spacing:3px;color:#d3e0f5;margin:0 0 5px;font-style:normal}

.back-arcade{display:inline-block;color:#b7cae8;text-decoration:none;font-size:12px;margin-bottom:18px}.back-arcade:hover{color:#ffda78}
