@font-face{font-family:Fredoka;src:url(fonts/fredoka.woff2) format("woff2");font-weight:300 700;font-display:swap}
@font-face{font-family:Nunito;src:url(fonts/nunito.woff2) format("woff2");font-weight:400 900;font-display:swap}
:root{color-scheme:light;--ink:#251d38;--muted:#5f546b;--paper:#f8f5ef;--white:#fffefa;--border:#e7dfeb;--violet:#6345ca;--violet-deep:#4d319e;--lilac:#e5d9ff;--pink:#ffd8e8;--mint:#d5f3e5;--sun:#ffe17b;--mel-claro:#fff0aa;--pastel-1:#e6dbff;--pastel-2:#cfeffa;--pastel-3:#ffe0e9;--pastel-4:#ffeab0;--pastel-5:#d3f1e3;--display:Fredoka,system-ui,sans-serif;--text:Nunito,system-ui,sans-serif;--ease:cubic-bezier(.2,.8,.25,1);--frame:840px;--gutter:clamp(17px,5.2vw,44px);--shadow:0 3px 0 #28194413;--star:polygon(50% 0%,64% 32%,99% 37%,73% 63%,79% 99%,50% 82%,21% 99%,27% 63%,1% 37%,36% 32%)}
*{box-sizing:border-box}
[hidden]{display:none!important}
html{min-height:100%;background:#eae3f8}
body{margin:0;color:var(--ink);font:700 16px/1.45 var(--text);min-height:100vh;-webkit-tap-highlight-color:transparent}
h1,h2,h3,p,ol{margin:0}
h1,h2,h3{font-family:var(--display);line-height:1.05;font-weight:600}
button,input{font:inherit;color:inherit}
button{cursor:pointer;touch-action:manipulation}
button:disabled{cursor:default}
button:focus-visible,input:focus-visible{outline:3px solid var(--violet);outline-offset:4px}
img{max-width:100%;object-fit:contain}
.ico{width:22px;height:22px;display:inline-block;flex:none;fill:none;stroke:currentColor;stroke-width:2;stroke-linecap:round;stroke-linejoin:round;vertical-align:middle}
.app{max-width:var(--frame);min-height:100svh;margin:auto;background:var(--paper);position:relative;box-shadow:0 0 80px #36295a1a}
.tela{min-height:100svh;padding:calc(24px + env(safe-area-inset-top)) var(--gutter) calc(28px + env(safe-area-inset-bottom))}
.tem-dock .tela{padding-bottom:calc(109px + env(safe-area-inset-bottom))}
.anim-frente{animation:enter .34s var(--ease) both}
.anim-tras{animation:back .3s var(--ease) both}
.anim-fade{animation:appear .32s ease both}
@keyframes enter{from{opacity:0;transform:translateX(12px)}}
@keyframes back{from{opacity:0;transform:translateX(-12px)}}
@keyframes appear{from{opacity:0}}
.btn,.btn-redondo,.btn-som,.btn-sn{display:inline-flex;align-items:center;justify-content:center;gap:9px;border:0;font-weight:900;border-radius:18px;min-height:52px;box-shadow:var(--shadow);transition:transform .22s var(--ease),background .22s ease,box-shadow .22s ease}
.btn{padding:10px 18px;background:var(--ink);color:white}
.btn-mel{background:var(--sun);color:var(--ink)}.btn-verde{background:var(--mint);color:var(--ink)}
.btn-branco,.btn-redondo{background:var(--white);color:var(--ink);border:1px solid var(--border)}
.btn-perigo{background:#9b3054;color:white}
.btn-full{width:100%}.btn-xl{min-height:60px;font:600 22px/1 var(--display)}
.btn-redondo{min-height:46px;width:46px;border-radius:16px;padding:0;flex:none}
button:active:not(:disabled){transform:translateY(2px) scale(.974);box-shadow:none}
.etiqueta{font:900 10px/1.2 var(--text);letter-spacing:.16em;display:flex;align-items:center;gap:7px;color:var(--violet-deep)}
.etiqueta>span{display:inline-block;width:9px;height:9px;background:var(--violet);border-radius:3px;rotate:-13deg}
.spark{display:block;width:24px;aspect-ratio:1;background:currentColor;clip-path:polygon(50% 0,61% 38%,100% 50%,61% 61%,50% 100%,38% 61%,0 50%,38% 38%)}
.tela-abertura{position:relative;isolation:isolate;display:grid;grid-template-rows:auto minmax(230px,1fr) auto;align-content:center;gap:12px;text-align:center;overflow:hidden;background:radial-gradient(ellipse at 54% 54%,#e9dfff 0,transparent 60%),var(--paper)}
.abertura-centro{position:relative;z-index:2}.abertura-centro .etiqueta{justify-content:center;margin:12px 0 8px}
.logo-img img{width:124px;height:auto;display:block;margin:auto}
.abertura-centro h1{font-size:clamp(49px,11vw,90px);letter-spacing:-.045em;line-height:.88}
.abertura-centro h1 em{font-style:normal;color:var(--violet)}
.abertura-centro>p:last-child{color:var(--muted);max-width:280px;margin:13px auto 0}
.abertura-arte{width:min(100%,485px);height:100%;min-height:230px;max-height:430px;align-self:center;aspect-ratio:1.2;position:relative;margin:auto;isolation:isolate}
.abertura-orbita{position:absolute;inset:11% 4% 10%;border:2px dashed #a894e8;border-radius:50%;transform:rotate(-26deg)}
.blob{position:absolute;display:block}.blob-sol{width:56%;height:83%;left:16%;top:10%;background:#ffdb65;border-radius:52% 48% 41% 59%/58% 45% 55% 42%;transform:rotate(-11deg)}
.blob-rosa{width:45%;height:59%;right:2%;top:20%;background:#ffcce4;border-radius:66% 34% 51% 49%/51% 53% 47% 49%;transform:rotate(15deg)}
.blob-menta{width:30%;height:38%;right:7%;bottom:3%;background:#aeead1;border-radius:51% 49% 65% 35%/54% 56% 44% 46%}
.abertura-arte img,.mundo img,.fig img,.jogo-ilu img,.op img,.carta-frente img,.simnao-card img,.casa img,.peao img,.boas-fig,.premio-img img,.pausa img{mix-blend-mode:multiply}
.abertura-arte img{position:absolute;height:auto;filter:drop-shadow(0 8px 0 #44246212);animation:flutua 4s ease-in-out infinite}
.hero-leao{width:63%;top:0;left:4%;z-index:2;--r:-12deg}
.hero-baleia{width:52%;right:-1%;top:27%;--r:-13deg;animation-delay:-1s!important}
.hero-morango{width:21%;left:78%;top:78%;translate:-50% -50%;--r:14deg;animation-delay:-2s!important}
@keyframes flutua{0%,100%{transform:translateY(0) rotate(var(--r,0deg))}50%{transform:translateY(-8px) rotate(calc(var(--r,0deg) + 4deg))}}
.fig-tag{display:block;color:var(--ink);background:var(--white);border:1.5px solid var(--ink);border-radius:16px 16px 16px 4px;box-shadow:2px 3px 0 var(--ink);font:600 16px/1 var(--display);padding:6px 10px;white-space:nowrap}
.abertura-arte .fig-tag,.abertura-arte .spark{position:absolute;z-index:4}
.hero-oi{left:1%;top:50%;rotate:-12deg}.hero-hi{right:8%;top:16%;rotate:10deg}
.s1{color:var(--violet);top:9%;right:34%;transform:rotate(10deg)}.s2{color:var(--violet);bottom:6%;left:14%;width:19px}.s3{color:#c85491;bottom:19%;right:0;width:15px}
.abertura-base{z-index:2;width:min(100%,440px);margin:auto}.abertura-base .btn{justify-content:space-between;padding-inline:21px;box-shadow:0 5px 0 #9684c7}
.abertura-pista{font-size:10px;font-weight:900;letter-spacing:.18em;color:var(--muted);display:block;margin-top:13px}.abertura-pista b{color:var(--violet)}
.tela-boas{max-width:465px;margin:auto;text-align:center;display:flex;flex-direction:column;justify-content:center;align-items:center;gap:11px}
.boas-logo{width:104px;height:auto}.boas-fig{width:130px;height:130px;border-radius:42% 58% 48% 52%;background:var(--sun)}
.tela-boas h1{font-size:clamp(35px,10vw,58px)}.boas-sub{color:var(--muted)}.boas-passos{display:grid;gap:8px;text-align:left;list-style:none;padding:0;width:100%;margin:5px 0 10px}
.boas-passos li{display:flex;align-items:center;gap:10px;background:var(--white);padding:10px;border:1px solid var(--border);border-radius:16px;font-size:14px}
.bola{display:grid;place-items:center;flex:none;width:34px;height:34px;border-radius:11px;background:var(--lilac);font-weight:900}.bola-mel{background:var(--sun)}
.campo{display:block;font-weight:900;text-align:left;width:100%;margin-top:3px}.campo small{font-weight:700;color:var(--muted)}
.input{display:block;width:100%;min-height:49px;border-radius:14px;border:1px solid #cfc4d8;background:var(--white);padding:10px 14px}
.home-topo,.home-acoes,.topo{display:flex;align-items:center;gap:12px}
.home-topo{justify-content:space-between}.home-logo img{width:119px;height:auto;display:block}.home-acoes{gap:8px}.home-acoes .btn-redondo{width:42px;min-height:42px;border-radius:14px}
.home-intro{margin:24px 0 18px}.home-intro .oi{font-size:clamp(39px,10.2vw,68px);letter-spacing:-.03em;overflow-wrap:anywhere;margin:5px 0 4px}.home-intro>p:last-child{color:var(--muted)}
.chip-estrelas{display:inline-flex;align-items:center;gap:6px;padding:8px 11px;border-radius:14px;background:#fff3bf;color:var(--ink);border:1px solid #f0dda1;font-weight:900;font-variant-numeric:tabular-nums;flex:none}
.estrela{display:inline-block;width:19px;aspect-ratio:1;background:#f5af19;clip-path:var(--star)}
.chip-mini{margin-left:auto;padding:7px 9px}.chip-mini .estrela{width:15px}
.dois-botoes{display:grid;gap:12px}.grande{border:0;isolation:isolate;position:relative;overflow:hidden;text-align:left;border-radius:25px;min-height:146px;padding:16px 16px 19px;display:grid;justify-items:start;align-content:center;gap:4px;box-shadow:var(--shadow);transition:transform .22s var(--ease),box-shadow .22s}
.grande-aprender{background:#ddcfff}.grande-jogar{background:#ffe180}
.grande-kicker{z-index:1;display:flex;align-items:center;gap:7px;font-weight:900;letter-spacing:.11em;font-size:9px;margin-bottom:2px}
.grande-kicker>span{display:grid;place-items:center;width:29px;height:29px;border-radius:9px;background:#ffffffac}.grande-kicker .ico{width:16px;height:16px}
.grande-nome{z-index:1;font:600 clamp(30px,8.2vw,46px)/.99 var(--display);letter-spacing:-.02em}.grande-sub{z-index:1;font-size:clamp(11px,3vw,14px);font-weight:800;max-width:52%}
.grande-arrow{position:absolute;z-index:2;bottom:12px;right:12px;width:33px;height:33px;display:grid;place-items:center;background:var(--ink);color:white;border-radius:11px}
.grande-arrow .ico{width:17px;height:17px}
.grande-palco{width:47%;height:100%;position:absolute;right:0;bottom:0;z-index:0}
.grande-palco::before{content:"";position:absolute;width:107%;height:115%;right:-17%;bottom:-28%;background:#c3aaff;border-radius:48% 52% 46% 54%;rotate:-25deg}
.grande-jogar .grande-palco::before{background:#ffc451;rotate:20deg}
.grande-palco img{position:absolute;width:min(95%,230px);height:90%;bottom:5%;right:8%;transition:transform .32s var(--ease)}
.titulo-sec{font-size:24px;margin:0 0 10px}.home-progresso{margin-top:24px;display:grid;gap:9px}.home-progresso .titulo-sec{margin:0 0 2px}
.trilha-card,.card-prog{border:1px solid var(--border);border-radius:21px;padding:13px 15px;background:var(--white);box-shadow:var(--shadow)}
.trilha-card{width:100%;display:flex;align-items:center;text-align:left;gap:12px;background:#e0f4e9;border-color:#c7e9d9;transition:transform .2s var(--ease)}
.trilha-ilustracao{flex:none;width:52px;height:52px;border-radius:17px;background:#bde8d3;display:grid;place-items:center}.trilha-ilustracao img{width:49px;height:49px}
.trilha-txt{flex:1;min-width:0;display:grid;gap:3px}.trilha-tit{font:600 22px/1 var(--display)}.trilha-casa,.caminho{font-size:12px;color:var(--muted)}
.trilha-mini,.barra-prog{display:block;height:6px;border-radius:30px;background:#d2e5da;overflow:hidden}.trilha-mini span,.barra-prog span{height:100%;display:block;background:#45876d;border-radius:inherit;transition:width .45s var(--ease)}
.trilha-seta{width:18px;height:18px}.prog-linha{display:flex;justify-content:space-between;align-items:center;gap:8px;margin-bottom:8px}
.nivel{font:600 18px/1 var(--display)}.prog-txt{font-weight:900;font-size:12px;color:var(--muted)}.barra-prog{background:#ede7fc}.barra-prog span{background:var(--violet)}
.semana{list-style:none;padding:10px 0 0;display:flex;justify-content:space-between;text-align:center;font-size:11px;color:var(--muted)}
.semana .dia{display:grid;place-items:center;width:22px;height:22px;background:#f0ecf3;border-radius:8px;margin-bottom:3px}.semana .on .dia{background:var(--sun)}.semana .on .dia::after{content:"✓";color:var(--ink);font-weight:900}.semana .hoje .dia{outline:1.5px solid var(--violet);outline-offset:1px}
.dock{position:fixed;bottom:0;z-index:6;left:50%;width:min(100%,var(--frame));transform:translateX(-50%);padding:9px var(--gutter) calc(10px + env(safe-area-inset-bottom));background:linear-gradient(transparent,var(--paper) 28%);pointer-events:none}
.dock-in{display:flex;justify-content:space-around;gap:2px;padding:5px;border:1px solid #e4dcea;border-radius:23px;background:#fffefa;box-shadow:0 6px 24px #34204e21;pointer-events:auto}
.dock button{border:0;background:none;color:#5e536d;border-radius:17px;min-width:0;flex:1;display:grid;justify-items:center;gap:3px;font-weight:900;font-size:11px;line-height:1.1;padding:5px 0 6px;transition:transform .24s var(--ease),color .2s}
.dock button>span{height:30px;width:min(52px,90%);border-radius:12px;display:grid;place-items:center;transition:background .24s,color .24s}
.dock .ico{width:19px;height:19px}.dock [aria-current]{color:var(--violet-deep)}.dock [aria-current]>span{background:var(--lilac);color:var(--violet-deep)}
.topo{margin-bottom:16px}.topo-voltar{gap:10px}.titulo-mundo{font-size:clamp(25px,7.5vw,46px);letter-spacing:-.025em}.sobretitulo{font-size:10px;letter-spacing:.14em;text-transform:uppercase;font-weight:900;color:var(--violet-deep);margin-bottom:3px}.tela-intro{color:var(--muted);margin:-4px 0 16px}
.grade-mundos,.grade-figs,.grade-ops,.grade-memoria{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:11px}
.mundo{position:relative;border:0;border-radius:22px;padding:11px;min-height:147px;display:grid;align-content:end;justify-items:start;text-align:left;box-shadow:var(--shadow);overflow:hidden;transition:transform .24s var(--ease),box-shadow .24s}
.mundo[data-indice]::before{content:attr(data-indice);position:absolute;top:10px;left:11px;color:#30224e;background:#ffffffa8;border-radius:9px;padding:2px 6px;font-size:10px;font-weight:900}
.mundo img{width:clamp(75px,22vw,124px);height:clamp(75px,22vw,124px);justify-self:center;transition:transform .27s var(--ease)}
.mundo-nome{font:600 clamp(17px,4.8vw,25px)/1.06 var(--display);margin:1px 0 4px}.mundo-sub{font-size:11px;color:#514560;font-weight:800}
.mundo-misto{grid-column:1/-1;min-height:115px;display:flex;flex-wrap:wrap;align-items:center;justify-content:center;gap:8px 14px;padding:14px}.misto-figs{display:flex;align-items:center}.misto-figs img{width:clamp(34px,12vw,66px);height:auto;margin-left:-7px}.misto-figs img:first-child{margin:0}.mundo-breve{margin:14px auto}
.idiomas{display:flex;padding:4px;gap:4px;background:#eee8f5;border-radius:17px;margin-bottom:12px}
.idioma,.idioma-jogo{border:0;border-radius:13px;min-height:43px;flex:1;background:none;font-weight:900;font-size:clamp(12px,3.5vw,15px);padding:5px;color:var(--muted)}
.idiomas [aria-pressed=true]{background:var(--violet-deep);color:#fff;box-shadow:0 2px 0 #2d1852}
.dica-ouvir{display:flex;align-items:center;gap:11px;color:var(--ink);background:var(--mint);border-radius:16px;padding:10px 12px;margin-bottom:13px;font-size:14px}.dica-ouvir small{display:block;font-size:11px;color:#3c6054}.som-mini{display:grid;place-items:center;flex:none;width:31px;height:31px;border-radius:10px;background:#fffefa;color:#356957;font-weight:900;font-size:19px}
.fig,.op{background:var(--white);border:1px solid var(--border);border-radius:20px;position:relative;display:flex;flex-direction:column;align-items:center;justify-content:center;padding:9px 8px 13px;box-shadow:var(--shadow);transition:transform .22s var(--ease),border-color .22s,background .22s}
.fig{padding-top:24px}.fig img{width:min(100%,132px);height:auto;aspect-ratio:1}.fig-pt{font:600 clamp(16px,4.7vw,23px)/1.12 var(--display)}.fig-en{font-size:12px;color:var(--violet-deep);font-weight:900;margin-top:2px}
.contador{position:absolute;top:8px;display:inline-flex;align-items:center;gap:3px;border-radius:8px;padding:3px 5px;font-size:11px;line-height:1.05;font-weight:900;color:#275341;background:#def4e8}.cont-en{right:8px;background:#f8e4f3;color:#74346a}.cont-pt{left:8px}.cont-lg{font-size:8px;letter-spacing:.03em}.cont-pt.c-meio,.cont-pt.c-cheio{background:#b2e4cf}.cont-en.c-meio,.cont-en.c-cheio{background:#efc8e9}.contador.ouvindo{outline:2px solid currentColor;outline-offset:2px}.contador.conta,.contador.salta,.chip-estrelas.brilha{animation:pop .44s var(--ease)}
.fig.falando img,.simnao-card.entra img{animation:bob .55s var(--ease)}
.mais-um,.faisca{position:absolute;z-index:2;pointer-events:none}.mais-um{top:5%;left:50%;color:var(--violet-deep);font-weight:900;animation:rise 1s ease-out both}.faisca{top:50%;left:50%;width:7px;height:7px;border-radius:50%;background:var(--sun);animation:burst .7s ease-out both}
.rodape-fixo{position:sticky;bottom:0;z-index:3;margin:10px calc(-1 * var(--gutter)) calc(-28px - env(safe-area-inset-bottom));padding:10px var(--gutter) calc(12px + env(safe-area-inset-bottom));background:linear-gradient(transparent,var(--paper) 33%)}
.lista-jogos{display:grid;gap:13px}.jogo-card{min-height:110px;display:flex;align-items:center;position:relative;gap:14px;text-align:left;border:0;padding:10px 32px 10px 10px;border-radius:22px;box-shadow:var(--shadow);transition:transform .22s var(--ease)}
.jogo-card::after{content:"";width:8px;height:8px;border-top:2px solid;border-right:2px solid;transform:rotate(45deg);position:absolute;right:16px}
.jogo-cade{background:var(--lilac)}.jogo-memoria{background:var(--sun)}.jogo-simnao{background:var(--mint)}
.jogo-ilu{position:relative;flex:none;display:grid;place-items:center;width:78px;height:76px;border-radius:19px;background:#ffffff9e}.jogo-ilu img{width:65px;height:65px}.jogo-txt{display:grid;gap:5px}.jogo-nome{font:600 clamp(22px,6vw,33px)/1 var(--display)}.jogo-sub{font-size:13px;color:#4e405f}
.ilu-lupa,.ilu-sn{position:absolute;bottom:0;right:0;display:grid;place-items:center;width:28px;height:28px;color:white;background:var(--violet-deep);border-radius:10px}.ilu-lupa .ico,.ilu-sn .ico{width:16px;height:16px}.ilu-sn{background:#286249}
.ilu-memo{display:grid;grid-template-columns:repeat(2,19px);gap:4px;rotate:-9deg}.ilu-memo span{height:23px;background:#a47fee;border-radius:5px}.ilu-memo span:nth-child(1),.ilu-memo span:nth-child(4){background:#f8b828}
.passos-jogo{display:flex;align-items:center;gap:5px;list-style:none;padding:0;flex:1}.passos-jogo li{height:8px;border-radius:99px;background:#e5deeb;flex:1}.passos-jogo .feito{background:#5eaa8b}.passos-jogo .atual{background:var(--violet)}
.card-pergunta{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:17px;background:var(--lilac);border-radius:22px;margin-bottom:14px}.pergunta{font:600 clamp(22px,5.5vw,38px)/1.05 var(--display)}.pergunta b{color:var(--violet-deep)}.pergunta-pt{font-size:13px;color:#534366;margin-top:4px}
.btn-som{width:49px;min-height:49px;border-radius:16px;flex:none;background:var(--violet-deep);color:white;padding:0}.btn-som .ico{width:24px;height:24px}
.op{aspect-ratio:1.08;min-height:90px}.op img{width:min(90%,165px);height:auto;aspect-ratio:1}.op.certo{background:#cbefdb;border-color:#589d7e;animation:pop .48s var(--ease)}.op.certo::after{content:"✓";position:absolute;top:8px;right:8px;background:#286249;color:white;border-radius:9px;padding:1px 8px;font-weight:900}.op.apagado{opacity:.46}.op.errado,.btn-sn.errado{animation:shake .38s ease;background:#f9d9e4}
.feedback{font-weight:900;text-align:center;min-height:1.6em;margin-top:12px;color:#683a63}.feedback.ok{color:#246046}
.grade-memoria{grid-template-columns:repeat(3,minmax(0,1fr));gap:9px}.carta{position:relative;aspect-ratio:.9;min-height:80px;border:0;padding:0;background:none;perspective:700px;border-radius:17px}
.carta-in{position:absolute;inset:0;display:block;transform-style:preserve-3d;transition:transform .48s var(--ease)}.carta.virada .carta-in,.carta.par .carta-in{transform:rotateY(180deg)}
.carta-frente,.carta-verso{position:absolute;inset:0;border-radius:16px;backface-visibility:hidden;box-shadow:var(--shadow);overflow:hidden}
.carta-verso{display:grid;place-items:center;background:radial-gradient(circle at 13% 15%,#d7c3ff 0 3px,transparent 4px),radial-gradient(circle at 86% 82%,#c2aaff 0 4px,transparent 5px),#b293fa;border:1px solid #a98aef}.carta-verso::after{content:"";width:40%;aspect-ratio:1;background:#f7ebff;clip-path:var(--star);transform:rotate(-12deg)}
.carta-frente{transform:rotateY(180deg);background:var(--white);border:1px solid var(--border);display:flex;flex-direction:column;align-items:center;justify-content:center;line-height:1.08;padding:3px;overflow-wrap:anywhere}.carta-frente img{width:78%;max-height:64%;height:auto}.carta-frente span{font-size:clamp(10px,2.7vw,15px);font-weight:900}.cf-en{color:var(--violet-deep)}.carta.par .carta-frente{background:#d8f1e6;border-color:#8bc5ac}
.simnao-card{display:grid;justify-items:center;gap:4px;background:var(--white);border:1px solid var(--border);border-radius:25px;box-shadow:var(--shadow);padding:15px 15px 13px}.simnao-card img{width:min(68%,240px);height:auto;aspect-ratio:1}.simnao-fala{display:flex;align-items:center;justify-content:space-between;gap:8px;background:var(--lilac);padding:8px 8px 8px 13px;border-radius:17px;width:100%}.simnao-palavra{font:600 clamp(21px,6vw,33px)/1.12 var(--display)}
.simnao-botoes{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin-top:13px}.btn-sn{padding:8px}.btn-sim{background:#c7edd8}.btn-nao{background:#f7d6e7}.btn-sn .ico{width:22px;height:22px}
.tela-vitoria{overflow:hidden;position:relative;isolation:isolate;text-align:center;display:grid;align-content:center;justify-items:center;gap:13px;background:radial-gradient(ellipse at 50% 18%,#ffe7a0,transparent 51%),var(--paper)}
.tela-vitoria h1{font-size:clamp(43px,11vw,72px);margin-top:8px}.tres-estrelas{display:flex;align-items:center;justify-content:center;gap:10px;min-height:79px}.tres-estrelas .estrela{width:55px;background:#e3d7cd;transform:rotate(-12deg)}.tres-estrelas .estrela:nth-child(2){width:76px;transform:rotate(0)}.tres-estrelas .estrela:nth-child(3){transform:rotate(12deg)}.tres-estrelas .estrela.on{background:#f8b022;animation:pop .65s var(--ease) both}.tres-estrelas .estrela.on:nth-child(2){animation-delay:.12s}.tres-estrelas .estrela.on:nth-child(3){animation-delay:.24s}
.ganhou{font:600 28px/1 var(--display);color:var(--violet-deep)}.nivel-novo{background:var(--lilac);border-radius:15px;padding:6px 13px;font-weight:900}.tela-vitoria .card-prog,.vit-botoes,.novas{width:min(100%,430px)}.conquistas{margin-top:7px;font-size:13px}.vit-botoes{display:grid;gap:8px}
.link-pais{min-height:44px;border:0;background:none;color:var(--violet-deep);font-weight:900}.novas-tit{font-weight:900;margin-bottom:7px}.novas-lista{display:flex;justify-content:center;flex-wrap:wrap;gap:7px}.nova{display:grid;justify-items:center;background:var(--mint);border-radius:15px;padding:6px;font-size:11px}.nova img{width:45px;height:45px;mix-blend-mode:multiply}
.confete{position:absolute;inset:0;overflow:hidden;pointer-events:none;z-index:2}.confete i{position:absolute;top:-20px;width:8px;height:13px;border-radius:3px;animation:confete linear both}
/* Trilha: um atlas ilustrado de palavras, do jardim ao vulcão. */
.tela-trilha.anim-frente, .tela-trilha.anim-tras {
  animation-fill-mode: none;
}
.topo-trilha {
  position: sticky;
  top: 0;
  z-index: 4;
  display: grid;
  grid-template-columns: auto minmax(0, 1fr) auto;
  row-gap: 7px;
  margin-top: -10px;
  padding: calc(9px + env(safe-area-inset-top)) 0 8px;
  background: var(--paper);
}
.trilha-controles {
  grid-column: 1 / -1;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 8px;
  padding: 3px 4px 3px 12px;
  border: 1px solid #d7e7ce;
  border-radius: 16px;
  background: #edf4e4;
}
.trilha-zona {
  color: #34553c;
  font: 600 17px/1 var(--display);
}
.trilha-localizar {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 5px;
  min-height: 40px;
  padding: 5px 10px;
  border: 0;
  border-radius: 12px;
  background: #fffdf5;
  color: #2b4f35;
  font: 900 12px/1.2 var(--text);
}
.trilha-localizar .ico { width: 17px; height: 17px; }
.trilha-dica {
  max-width: 520px;
  margin: 0 auto 9px;
  color: var(--muted);
  font-size: 14px;
}
.trilha-legenda {
  display: flex;
  flex-wrap: wrap;
  gap: 6px;
  max-width: 520px;
  margin: 0 auto 12px;
}
.trilha-legenda span {
  padding: 5px 8px;
  border-radius: 9px;
  background: #f4e5bd;
  color: #694a25;
  font: 900 11px/1.2 var(--text);
}
.tabuleiro {
  position: relative;
  isolation: isolate;
  overflow: hidden;
  max-width: 520px;
  margin: auto;
  border: 1px solid #a6b791;
  border-radius: 25px;
  background: #d8edbe;
  box-shadow: 0 4px 0 #28371e18;
}
.trilha-paisagem {
  position: absolute;
  inset-inline: 0;
  overflow: hidden;
  pointer-events: none;
}
.trilha-paisagem + .trilha-paisagem { border-bottom: 2px solid #fff7e8; }
.trilha-paisagem img { display: block; width: 100%; height: 100%; object-fit: cover; }
.trilha-conteudo, .estrada { position: absolute; inset: 0; width: 100%; height: 100%; }
.estrada { pointer-events: none; }
.casa, .casa-inicio, .bandeira, .peao { position: absolute; translate: -50% -50%; }
.casa {
  display: grid;
  place-items: center;
  width: 40px;
  height: 40px;
  padding: 0;
  border: 2px solid #a98b59;
  border-radius: 50%;
  background: #fff9e9;
  color: #513f29;
  box-shadow: 0 2px 0 #7e603748;
  font: 900 12px/1 var(--text);
}
.casa:disabled { opacity: 1; }
.casa.feita { background: #ecf8d9; border-color: #528254; }
.casa.feita img { width: 32px; height: 32px; }
.casa.pegada { border-style: dashed; border-color: #966427; background: #fff1bb; color: #7b501a; }
.casa.pegada svg { width: 21px; fill: currentColor; }
.casa.pula, .trilha-placa.pula { animation: pop .4s var(--ease); }
.casa.marco { width: 44px; height: 44px; background: #ffeab1; border-color: #a77726; }
.casa.marco:not(.feita):not(.pegada) .casa-n { display: none; }
.casa[aria-current="location"] { outline: 2px solid #286249; outline-offset: 2px; }
.medalha { position: relative; width: 35px; height: 35px; display: grid; place-items: center; }
.casa.feita .medalha, .casa.pegada .medalha { position: absolute; right: -12px; top: -11px; width: 25px; height: 25px; }
.medalha svg, .medalha img { width: 100%; height: 100%; object-fit: contain; }
.med-n { position: absolute; bottom: 0; right: 0; background: var(--ink); color: white; border-radius: 6px; padding: 1px 3px; font: 800 8px/1.1 var(--text); }
.trilha-placa {
  position: absolute;
  left: 50%;
  z-index: 2;
  translate: -50% -50%;
  display: grid;
  grid-template-columns: 35px minmax(0, 1fr) auto;
  align-items: center;
  gap: 7px;
  width: max-content;
  max-width: 78%;
  min-height: 47px;
  padding: 4px 10px 4px 5px;
  border: 2px solid #98723c;
  border-radius: 16px;
  background: #fff9e9;
  color: #543d24;
  text-align: left;
  box-shadow: 0 3px 0 #7553336b;
}
.trilha-placa-inicio { left: 60%; }
.trilha-placa img { width: 35px; height: 35px; mix-blend-mode: multiply; }
.trilha-placa-texto { display: grid; gap: 1px; }
.trilha-placa b { font: 600 18px/1 var(--display); }
.trilha-placa-palavra { font: 800 10px/1.2 var(--text); }
.trilha-placa::after { content: "♪"; color: #426848; font-size: 16px; }
.casa-inicio, .bandeira {
  padding: 4px 8px;
  border-radius: 9px;
  background: #284d35;
  color: white;
  font: 900 11px/1.2 var(--text);
  white-space: nowrap;
}
.casa-inicio { translate: -50% 0; margin-top: 15px; }
.bandeira { z-index: 2; translate: calc(-100% - 28px) -180%; }
.bandeira-fim { translate: 28px -180%; background: #70402a; }
.peao {
  position: absolute;
  z-index: 3;
  pointer-events: none;
  display: grid;
  place-items: center;
  width: 49px;
  height: 49px;
  border: 2px solid #9a6218;
  border-radius: 50%;
  background: #ffdc69;
  box-shadow: 0 3px 0 #78531155;
  transition: left .32s var(--ease), top .32s var(--ease);
  translate: -50% -92%;
}
.peao img { width: 43px; height: 43px; }
.peao.salto img { animation: bob .43s var(--ease); }
.premio-fundo,.pausa{position:fixed;inset:0;z-index:10;display:grid;place-items:center;padding:18px;background:#251d3879;backdrop-filter:blur(5px)}
.modal,.premio{width:min(100%,420px);padding:20px;background:var(--white);border-radius:25px;box-shadow:0 12px 60px #19102b50;animation:pop .35s var(--ease)}.modal h2,.premio h2{font-size:28px}.modal p,.premio p{color:var(--muted);margin:9px 0 14px}.modal-botoes{display:grid;gap:8px}
.premio{text-align:center;position:relative;overflow:hidden}.premio-img{width:126px;height:126px;display:grid;place-items:center;position:relative;margin:0 auto 8px;background:var(--sun);border-radius:39% 61% 60% 40%}.premio-img svg,.premio-img img{width:106px;height:106px}.premio-img .med-n{font-size:13px;bottom:7px;right:5px}
.pausa{display:flex;flex-direction:column;justify-content:center;gap:13px;text-align:center;background:#ece2ff;color:var(--ink)}.pausa img{width:150px;height:150px;background:#ddc9ff;border-radius:46% 54% 45% 55%}.pausa h2{font-size:clamp(32px,8vw,52px)}.pausa p{color:var(--muted)}.btn-segurar{position:relative;isolation:isolate;overflow:hidden;min-height:52px;padding:8px 18px;background:var(--ink);color:#fff;border:0;border-radius:16px;font-weight:900;touch-action:none;user-select:none}.segurar-fill{position:absolute;inset:0 auto 0 0;width:0;background:var(--violet);z-index:-1}.segurar-fill.enchendo{width:100%;transition:width 3s linear}
@keyframes pop{0%{scale:.86}55%{scale:1.08}100%{scale:1}}
@keyframes bob{0%,100%{transform:translateY(0)}45%{transform:translateY(-7px) rotate(-4deg)}}
@keyframes shake{25%,75%{translate:-4px 0}50%{translate:4px 0}}
@keyframes rise{from{opacity:1;transform:translateY(0)}to{opacity:0;transform:translateY(-28px)}}
@keyframes burst{to{transform:translate(var(--dx,12px),var(--dy,-22px));opacity:0}}
@keyframes confete{from{transform:translateY(0) rotate(0)}to{transform:translateY(100vh) rotate(550deg);opacity:0}}
@media(hover:hover){.btn:hover,.btn-redondo:hover,.dock button:hover{filter:brightness(.96)}.grande:hover,.mundo:not(:disabled):hover,.jogo-card:hover,.trilha-card:hover{transform:translateY(-3px);box-shadow:0 7px 0 #2819441b}.grande:hover img,.mundo:hover img{transform:scale(1.07) rotate(-4deg)}.fig:hover,.op:hover{border-color:#a891d5}.dock button:hover>span{background:var(--lilac)}}
@media(min-width:580px){
  .tela-abertura{min-height:100svh;grid-template-columns:minmax(0,1fr) minmax(0,1fr);grid-template-rows:1fr auto 1fr;align-items:center;gap:14px}
  .abertura-centro{grid-column:1;grid-row:2;text-align:left}.abertura-centro .etiqueta{justify-content:flex-start}.abertura-centro .logo-img img{margin-left:0}.abertura-centro>p:last-child{margin-left:0}
  .abertura-centro h1{font-size:clamp(51px,8.4vw,83px)}.abertura-arte{grid-column:2;grid-row:1/4}.abertura-base{grid-column:1;grid-row:3;align-self:start;margin-top:8px}
  .dois-botoes,.home-progresso{grid-template-columns:repeat(2,minmax(0,1fr))}.home-progresso .titulo-sec{grid-column:1/-1}
  .grande{min-height:210px}.grande-palco img{height:92%}.grande-sub{max-width:61%}
  .grade-mundos,.grade-figs{grid-template-columns:repeat(3,minmax(0,1fr))}.grade-ops{max-width:500px;margin:auto}.grade-memoria{grid-template-columns:repeat(4,minmax(0,1fr));max-width:650px;margin:auto}
  #tela-simnao .simnao-card,#tela-simnao .simnao-botoes{max-width:540px;margin-inline:auto}
}
@media(min-width:900px){body{padding-inline:20px;background:radial-gradient(circle at 10% 30%,#dfd0fa,transparent 36%),radial-gradient(circle at 90% 73%,#f7deea,transparent 34%),#eee8f6}.app{border-inline:1px solid #fff9}}
@media(max-width:350px){.topo-voltar{gap:7px}.titulo-mundo{font-size:23px}.btn-redondo{width:42px;min-height:42px}.grade-figs,.grade-mundos{gap:8px}.tela{padding-top:calc(18px + env(safe-area-inset-top))}}
@media(prefers-reduced-motion:reduce){*,*::before,*::after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important;scroll-behavior:auto!important}.segurar-fill.enchendo{transition-duration:3s!important}}


/* Artwork shares the card's backdrop so the white paper disappears. */
.abertura-arte{isolation:auto;max-height:370px}
.abertura-arte img{filter:none}
.grande-palco{z-index:auto}
@media(min-width:580px){.abertura-arte{height:auto;aspect-ratio:1;max-height:390px}}

/* Clip the brief slide-in at the app frame; keep sticky controls tied to the page. */
.app{overflow-x:clip}
@media(min-width:580px){.grande-nome{font-size:clamp(32px,5.2vw,44px)}}

#offline-download{margin-top:12px}
#offline-progress{display:block;width:100%;height:12px;margin-top:14px;accent-color:#4e309f}
#offline-status:not(:empty){margin-top:8px;font-size:14px}
