@font-face{font-family:Nunito;src:url(../fonts/Nunito.ttf) format("truetype");font-weight:200 1000;font-display:swap}:root{--primary:#7C4DFF;--second:#FF6F91;--bg:#FFF7EC;--accent:#FFC23D;--ink:#2D2250;--muted:#7A7095;--card:#fff;--line:#EEE6F7;--good:#2EBD6B;--bad:#FF5A6E;--r:22px;--shadow:0 6px 0 rgba(45,34,80,.08),0 10px 24px rgba(45,34,80,.08)}.dark{--ink:#F3EEFF;--muted:#B7AEDB;--card:#2A2748;--line:#3A3660;--shadow:0 6px 0 rgba(0,0,0,.25)}*{box-sizing:border-box;-webkit-tap-highlight-color:transparent}html{font-size:calc(16px * var(--fs-scale,1));-webkit-text-size-adjust:100%;text-size-adjust:100%}html,body{margin:0;background:var(--bg);color:var(--ink);font-family:Nunito,"Baloo 2",system-ui,-apple-system,Segoe UI,Roboto,sans-serif;overscroll-behavior:none}body{font-size:1rem;overflow-wrap:break-word}button{font:inherit;color:inherit;border:0;background:none;cursor:pointer}h1,h2,h3{margin:.2em 0;line-height:1.15;font-weight:900}p{line-height:1.45}#app{max-width:560px;margin:0 auto;min-height:100vh;position:relative}.view{padding:10px 14px 110px}.pad{padding:12px 14px}.center{text-align:center}.small{font-size:.86rem;color:var(--muted)}.row{display:flex;gap:10px;flex-wrap:wrap;align-items:center}.row.center{justify-content:center}.col{display:flex;flex-direction:column;gap:10px;margin-top:14px}.card{background:var(--card);border-radius:var(--r);padding:16px;margin:12px 0;box-shadow:var(--shadow)}.btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;background:var(--primary);color:#fff;font-weight:900;padding:13px 20px;border-radius:18px;box-shadow:0 5px #0000002e;transition:transform .08s,box-shadow .08s;font-size:1rem}.btn:active{transform:translateY(4px);box-shadow:0 1px #0000002e}.btn:disabled{opacity:.45;filter:grayscale(.4)}.btn.big{width:100%;padding:17px;font-size:1.1rem;border-radius:22px;margin:6px 0}.btn small{font-weight:700;opacity:.85}.btn.ghost{background:var(--card);color:var(--primary);box-shadow:0 5px 0 var(--line),inset 0 0 0 3px var(--line)}.btn.alt{background:var(--second)}.btn.bad{background:var(--bad)}.btn.mid{background:#ffa726}.btn.good{background:var(--good)}.btn.easy{background:#29b6f6}.link{color:var(--primary);font-weight:800;text-decoration:underline;padding:8px}.chip{display:inline-block;background:color-mix(in srgb,var(--primary) 14%,transparent);color:var(--primary);font-weight:800;border-radius:99px;padding:5px 12px;font-size:.8rem}.chip.exam{background:#ffe9ec;color:#d2344b}.chip.lvl{background:#e6f8ee;color:#1e9e57}.chip.tiny{font-size:.65rem;padding:2px 7px}.topbar{position:sticky;top:0;z-index:20;display:flex;align-items:center;gap:10px;padding:10px 14px;background:color-mix(in srgb,var(--bg) 88%,transparent);backdrop-filter:blur(8px)}.lvl{flex:1}.lvl b{font-size:.85rem}.xpbar{height:9px;border-radius:9px;background:var(--line);overflow:hidden;margin-top:3px}.xpbar i{display:block;height:100%;background:linear-gradient(90deg,var(--primary),var(--second));border-radius:9px}.stat{display:flex;align-items:center;gap:3px;background:var(--card);padding:6px 10px;border-radius:99px;box-shadow:var(--shadow);font-size:.95rem}.stat b{font-weight:900}.gear{font-size:1.35rem;padding:4px}.avatar{--s:56px;width:var(--s);height:var(--s);border-radius:50%;background:radial-gradient(circle at 30% 30%,#fff,color-mix(in srgb,var(--accent) 55%,#fff));position:relative;display:grid;place-items:center;box-shadow:inset 0 0 0 3px #fff,0 3px 8px #0000001f;flex:none}.av-btn{padding:0}.tabs{position:fixed;bottom:0;left:50%;transform:translate(-50%);width:100%;max-width:560px;display:flex;background:var(--card);border-radius:26px 26px 0 0;box-shadow:0 -6px 24px #2d22501f;padding:6px 6px calc(8px + env(safe-area-inset-bottom));z-index:30}.tabs button{flex:1;display:flex;flex-direction:column;align-items:center;font-size:.72rem;font-weight:800;color:var(--muted);padding:6px 0;border-radius:18px;transition:.15s}.tabs button span{font-size:1.5rem;transition:transform .2s}.tabs button.on{color:var(--primary);background:color-mix(in srgb,var(--primary) 12%,transparent)}.tabs button.on span{transform:translateY(-2px) scale(1.15)}.hello{display:flex;align-items:center;justify-content:space-between}.hello h1{font-size:1.6rem}.hello p{margin:.2em 0;color:var(--muted)}.goal{display:flex;gap:14px;align-items:center}.ring{--p:0;width:5.75rem;height:5.75rem;flex:none;border-radius:50%;background:conic-gradient(var(--good) calc(var(--p)*1%),var(--line) 0);display:grid;place-items:center}.ring span{width:4.5rem;height:4.5rem;text-align:center;border-radius:50%;background:var(--card);display:grid;place-items:center;font-size:.8rem;color:var(--muted)}.ring b{font-size:1.4rem;color:var(--ink);display:block;line-height:1}.goal-t{flex:1;min-width:0;display:flex;flex-direction:column;gap:3px}.goal-t span{font-size:.82rem;color:var(--muted)}.hour{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:6px;margin-top:6px}.hour-b{background:var(--bg);border-radius:14px;padding:6px 2px;display:flex;flex-direction:column;align-items:center;line-height:1.25;min-width:0;overflow-wrap:anywhere}.hour-b span{font-size:1.2rem}.hour-b b{font-size:.72rem}.hour-b small{font-size:.66rem;color:var(--muted)}.continue{--uc:var(--primary);width:100%;display:flex;align-items:center;gap:12px;background:linear-gradient(135deg,var(--uc),color-mix(in srgb,var(--uc) 60%,var(--second)));color:#fff;border-radius:26px;padding:16px;box-shadow:0 7px color-mix(in srgb,var(--uc) 60%,#000),0 14px 30px #00000026;text-align:left;margin:6px 0 4px;animation:bob 3s ease-in-out infinite}.continue .em{font-size:2.6rem;background:#ffffff4d;border-radius:20px;width:64px;height:64px;display:grid;place-items:center}.continue .t{flex:1;display:flex;flex-direction:column;min-width:0;overflow-wrap:anywhere}.continue small{opacity:.9;font-weight:700}.continue b{font-size:1.25rem}.continue .go{background:#fff;color:var(--ink);font-weight:900;padding:10px 14px;border-radius:16px;white-space:nowrap;box-shadow:0 3px #00000026}@keyframes bob{50%{transform:translateY(-3px)}}.row-h{display:flex;justify-content:space-between;align-items:center}.ach-mini{display:flex;flex-wrap:wrap;gap:10px;align-items:center;margin-top:8px}.ach-mini>div{display:flex;flex-direction:column;align-items:center;width:70px;text-align:center}.ach-mini small{font-size:.66rem;font-weight:800;line-height:1.1}.next-ach{flex-direction:row!important;width:auto!important;flex:1 1 11rem;gap:8px;text-align:left!important;background:var(--bg);border-radius:16px;padding:6px 10px;min-width:0}.next-ach>div{flex:1;min-width:0;overflow-wrap:anywhere}.next-ach b{font-size:.8rem;display:block}.next-ach small{color:var(--muted)}.pbar{height:10px;background:var(--line);border-radius:10px;overflow:hidden;margin-top:4px}.pbar i{display:block;height:100%;background:linear-gradient(90deg,var(--accent),var(--second));border-radius:10px}.pbar.big{height:16px}.sec-t{margin:22px 4px 6px;font-size:1.25rem}.sec-t small{font-size:.8rem;color:var(--muted);font-weight:700}.map{position:relative;padding-bottom:20px}.map:before{content:"";position:absolute;left:50%;top:0;bottom:0;width:10px;margin-left:-5px;background:repeating-linear-gradient(var(--line) 0 18px,transparent 18px 30px);border-radius:10px}.barrio{position:relative;margin-bottom:18px}.barrio-h{position:relative;display:flex;gap:12px;align-items:center;background:linear-gradient(135deg,var(--uc),color-mix(in srgb,var(--uc) 70%,#fff));color:#fff;border-radius:24px;padding:14px;box-shadow:var(--shadow);margin:10px 0}.barrio-h .em{font-size:2.2rem}.barrio-h div{flex:1;display:flex;flex-direction:column;min-width:0;overflow-wrap:anywhere}.barrio-h small{opacity:.9;font-weight:800}.barrio-h b{font-size:1.2rem;text-shadow:0 2px 0 rgba(0,0,0,.12)}.barrio-h span{font-size:.8rem;opacity:.95}.barrio-h .prog{background:#ffffff4d;font-weight:900;padding:6px 10px;border-radius:14px;font-size:.9rem!important}.barrio-h.lit{box-shadow:0 0 0 4px #ffe082,0 0 24px #ffd54f}.node-wrap{position:relative;display:flex;flex-direction:column;align-items:center;width:120px;margin:10px auto}.node-wrap.l{transform:translate(-80px)}.node-wrap.r{transform:translate(80px)}.node{--uc:var(--primary);position:relative;width:78px;height:78px;border-radius:50%;background:var(--uc);box-shadow:0 7px color-mix(in srgb,var(--uc) 60%,#000),inset 0 -6px #0000001a;display:grid;place-items:center;transition:transform .1s}.node:active{transform:translateY(4px)}.node .em{font-size:2.1rem;filter:drop-shadow(0 2px 0 rgba(0,0,0,.15))}.node.locked{background:#d9d3e6;box-shadow:0 7px #b9b0cc}.node.locked .em{opacity:.7;font-size:1.6rem}.node.done:after{content:"";position:absolute;inset:-6px;border-radius:50%;border:4px solid #FFD54F}.node .tick{position:absolute;right:-8px;top:-8px;background:#fff;border-radius:50%;width:32px;height:32px;display:grid;place-items:center;font-size:1.1rem;box-shadow:0 2px 6px #0003;font-weight:900;color:var(--good)}.node.current{animation:pulse 1.6s infinite}.node .flag{position:absolute;top:-34px;background:var(--ink);color:#fff;font-weight:900;font-size:.75rem;padding:5px 10px;border-radius:12px;white-space:nowrap;animation:bob 1.4s infinite}.node .flag:after{content:"";position:absolute;left:50%;bottom:-5px;margin-left:-5px;border:5px solid transparent;border-top-color:var(--ink);border-bottom:0}@keyframes pulse{0%{box-shadow:0 7px color-mix(in srgb,var(--uc) 60%,#000),0 0 color-mix(in srgb,var(--uc) 60%,transparent)}70%{box-shadow:0 7px color-mix(in srgb,var(--uc) 60%,#000),0 0 0 18px transparent}}.node.exam{width:88px;height:88px;border-radius:26px;background:linear-gradient(135deg,#ffd54f,#ffa000);box-shadow:0 7px #c77700}.node.exam.locked{background:#d9d3e6;box-shadow:0 7px #b9b0cc}.node-t{font-size:.8rem;font-weight:800;text-align:center;margin-top:8px;background:var(--card);padding:3px 9px;border-radius:10px;box-shadow:var(--shadow);max-width:150px;line-height:1.15}.node-t small{display:block;color:var(--good);font-weight:900}.map-end{position:relative;text-align:center;font-weight:900;font-size:1.2rem;background:var(--card);border-radius:20px;padding:14px;box-shadow:var(--shadow);width:max-content;margin:0 auto}.unit-hero{--uc:var(--primary);position:relative;background:linear-gradient(160deg,var(--uc),color-mix(in srgb,var(--uc) 55%,var(--second)));color:#fff;border-radius:30px;padding:18px 18px 16px;text-align:center;box-shadow:var(--shadow);overflow:hidden}.unit-hero:before{content:"";position:absolute;width:220px;height:220px;border-radius:50%;background:#ffffff1f;right:-60px;top:-80px}.uh-em{font-size:3.6rem;animation:bob 2.5s infinite}.unit-hero small{font-weight:800;opacity:.9}.unit-hero h1{font-size:1.8rem}.unit-hero p{margin:.3em 0 .8em;opacity:.95}.uh-stats{display:flex;gap:8px;justify-content:center;flex-wrap:wrap}.uh-stats span{background:#ffffff40;padding:6px 12px;border-radius:14px;font-size:.82rem;font-weight:700}.back{position:absolute;left:12px;top:12px;width:40px;height:40px;border-radius:14px;background:#ffffff4d;color:#fff;font-size:2rem;line-height:1;font-weight:900;z-index:2;display:grid;place-items:center;padding-bottom:4px}.steps{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,9.5rem),1fr));gap:10px;margin-top:14px}.step{display:flex;align-items:center;gap:8px;background:var(--card);border-radius:20px;padding:12px;box-shadow:var(--shadow);text-align:left;transition:transform .1s}.step:active{transform:scale(.97)}.step .se{font-size:1.7rem;background:var(--bg);border-radius:14px;width:46px;height:46px;display:grid;place-items:center;flex:none}.step .st{flex:1;display:flex;flex-direction:column;min-width:0}.step b{font-size:.92rem;overflow-wrap:anywhere}.step small{font-size:.72rem;color:var(--muted)}.step .sc{font-weight:900;color:var(--muted)}.step.done .sc{color:#fff;background:var(--good);border-radius:50%;width:24px;height:24px;display:grid;place-items:center;font-size:.8rem}.exam-cta{--uc:var(--primary);width:100%;display:flex;gap:12px;align-items:center;margin-top:14px;background:linear-gradient(135deg,#ffd54f,#ff9f1c);border-radius:24px;padding:16px;box-shadow:0 7px #d57a00;text-align:left;color:#4a2a00}.exam-cta span{font-size:2.3rem}.exam-cta div{flex:1;display:flex;flex-direction:column;min-width:0}.exam-cta b{font-size:1.15rem}.exam-cta small{font-size:.78rem}.exam-cta em{font-style:normal;font-size:2rem}.gchips{display:flex;flex-wrap:wrap;gap:8px;margin-top:8px}.gchip{background:var(--bg);border-radius:14px;padding:8px 12px;font-weight:800;font-size:.85rem;text-align:left}.gchip small{color:var(--primary)}.locked-screen{padding-top:40px}.learn-h{--uc:var(--primary);position:relative;display:flex;flex-wrap:wrap;align-items:center;gap:10px;background:linear-gradient(135deg,var(--uc),color-mix(in srgb,var(--uc) 60%,var(--second)));color:#fff;border-radius:24px;padding:14px;box-shadow:var(--shadow)}.learn-h>div{flex:1 1 7rem;min-width:0;overflow-wrap:anywhere}.learn-h small{font-weight:800;opacity:.9}.learn-h h1{font-size:1.4rem}.learn-h .back{position:static;flex:none;transform:none}.learn-h .pill-btn{flex:none;margin-left:auto}.learn-h.lv-A1{--uc:#7ED957}.learn-h.lv-A2{--uc:#4FC3F7}.learn-h.lv-B1{--uc:#9575CD}.learn-h.lv-B2{--uc:#FF8A5B}.learn-h.lv-C1{--uc:#F06292}.pill-btn{background:#fff;color:var(--ink);font-weight:900;padding:9px 13px;border-radius:14px;font-size:.85rem;box-shadow:0 3px #00000026}.list{display:flex;flex-direction:column;gap:10px;margin-top:12px}.vcard,.pcard,.myw,.ex{display:flex;flex-wrap:wrap;align-items:center;gap:10px 12px;background:var(--card);border-radius:20px;padding:12px 14px;box-shadow:var(--shadow);min-width:0}.item-tx{flex:1 1 10rem;display:flex;flex-direction:column;align-items:flex-start;gap:3px;min-width:0;overflow-wrap:anywhere;word-break:normal}.item-tx>*{max-width:100%}.item-tx b{font-size:1.1rem;line-height:1.3}.item-tx>span{color:var(--muted);font-size:.9rem;line-height:1.35}.item-tip{display:flex;align-items:flex-start;gap:6px;font-style:normal;font-size:.8rem;line-height:1.4;background:#fff6d6;color:#7a5a00;padding:6px 10px;border-radius:12px;margin-top:4px}.item-tip .ki{flex:none;margin-top:1px}.item-tip span{min-width:0;flex:1}.myw small{font-size:.72rem;color:var(--muted)}.item-acts{display:flex;gap:8px;flex-wrap:wrap;align-items:center;flex:0 0 auto;margin-left:auto}.pcard,.ex{flex-direction:column;align-items:stretch}.pcard .item-tx,.ex .item-tx{flex:none;width:100%}.pcard .item-acts,.ex .item-acts{margin-left:0;justify-content:flex-start;padding-top:10px;border-top:2px dashed var(--line)}.pcard .item-acts .snd{width:44px;height:44px}.snd{width:40px;height:40px;border-radius:14px;background:color-mix(in srgb,var(--primary) 14%,transparent);font-size:1.15rem;display:inline-grid;place-items:center;flex:none;transition:transform .1s}.snd:active,.snd.playing{transform:scale(.9);background:var(--accent)}.snd.slow{background:#e6f8ee}.snd.plus{background:#fff0d1;font-weight:900;color:#e08600}.snd.plus.saved{background:var(--good);color:#fff}.snd.mic-s{background:#ffe4ea}.snd.b{background:#e3f2fd}.snd.c{background:#fce4ec}.reg{align-self:flex-start;font-size:.68rem;font-weight:900;text-transform:uppercase;letter-spacing:.04em;padding:3px 8px;border-radius:8px;margin-bottom:2px}.reg.informal{background:#ffe7d6;color:#d2601a}.reg.neutral{background:#ddf0ff;color:#1f6fb2}.reg.formal{background:#ede3ff;color:#5e35b1}.chat{display:flex;flex-direction:column;gap:10px;padding:8px 4px}.bubble{position:relative;max-width:86%;min-width:0;overflow-wrap:anywhere;padding:12px 14px;border-radius:22px;box-shadow:var(--shadow);background:var(--card);cursor:pointer;transition:transform .15s}.bubble b{display:block;font-size:.75rem;color:var(--primary);margin-bottom:2px}.bubble.left{align-self:flex-start;border-bottom-left-radius:6px}.bubble.right{align-self:flex-end;background:color-mix(in srgb,var(--primary) 16%,var(--card));border-bottom-right-radius:6px}.bubble.right b{color:var(--second)}.bubble .tr{display:block;font-size:.82rem;color:var(--muted);margin-top:4px}.chat.notr .tr{display:none}.bubble .bb{display:flex;flex-wrap:wrap;gap:6px;margin-top:6px}.bubble .bb .snd{width:32px;height:32px;font-size:.95rem}.bubble.talking{transform:scale(1.03);box-shadow:0 0 0 3px var(--accent),var(--shadow)}.chat.mini .bubble{cursor:default}.tog{display:inline-flex;gap:6px;align-items:center;font-weight:700}.ccard{background:var(--card);border-radius:20px;padding:14px;box-shadow:var(--shadow);overflow-wrap:anywhere}.ccard .book{color:#c2394e;background:#ffecef;padding:8px 10px;border-radius:12px}.ccard .native{display:flex;gap:8px;align-items:center;flex-wrap:wrap;color:#177a43;background:#e6f8ee;padding:8px 10px;border-radius:12px;margin-top:6px}.ccard p{margin:.5em 0 0;font-size:.9rem}.ccard .native b{flex:1 1 6rem;min-width:0}.ccard .native .cc-acts{display:flex;gap:6px;margin-left:auto;flex:none}.reading h2{margin-top:8px}.rpara{border-left:4px solid var(--line);padding-left:10px;margin:10px 0}.rpara p{margin:0 0 6px;font-size:1.05rem;line-height:1.7}.rb{display:flex;gap:6px}.rb .snd{width:34px;height:34px;font-size:.95rem}.w{border-radius:6px;padding:1px 0;cursor:pointer}.w:active,.w.sel{background:var(--accent)}.rq{margin-bottom:12px}.rq p{margin:.3em 0}.opt.small{padding:10px 12px;font-size:.92rem;margin:4px 0}.gloss{display:flex;flex-wrap:wrap;gap:8px;margin-top:8px}.gloss span{background:var(--bg);border-radius:12px;padding:6px 6px 6px 10px;font-size:.85rem;display:flex;flex-wrap:wrap;align-items:center;gap:6px;max-width:100%;overflow-wrap:anywhere}.gloss .snd{width:30px;height:30px;font-size:.85rem}.wpop b{font-size:1.6rem}.wpop p{font-size:1.1rem}.seg{display:flex;background:var(--card);border-radius:18px;padding:5px;box-shadow:var(--shadow);gap:4px;position:sticky;top:64px;z-index:10}.seg button{flex:1;padding:10px 4px;border-radius:14px;font-weight:800;font-size:.85rem;color:var(--muted)}.seg button.on{background:var(--primary);color:#fff}.glist{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.gcard{display:flex;flex-direction:column;align-items:flex-start;gap:4px;background:var(--card);border-radius:20px;padding:12px;box-shadow:var(--shadow);text-align:left;border-top:6px solid var(--lc,#ccc)}.gcard .ge{font-size:1.6rem}.gcard b{font-size:.88rem;line-height:1.25;overflow-wrap:anywhere;max-width:100%}.gcard small{font-size:.72rem;color:var(--muted);font-weight:800}.gcard small.ok{color:var(--good)}.lv-A1{--lc:#7ED957}.lv-A2{--lc:#4FC3F7}.lv-B1{--lc:#9575CD}.lv-B2{--lc:#FF8A5B}.lv-C1{--lc:#F06292}.gram p{margin:.4em 0}.forms{background:var(--bg);border-radius:14px;padding:10px 12px;margin-top:10px;font-family:ui-monospace,Menlo,monospace;font-size:.88rem;display:flex;flex-direction:column;gap:4px}.ex{box-shadow:none;background:var(--bg);margin:6px 0}.tipbox{background:#fff6d6;color:#5c4400}.search{width:100%;padding:14px 16px;border-radius:18px;border:3px solid var(--line);font:inherit;font-size:1rem;background:var(--card);color:var(--ink);margin:6px 0}.chips{display:flex;gap:8px;flex-wrap:wrap;margin:6px 0}.fchip{background:var(--card);border-radius:99px;padding:8px 14px;font-weight:800;font-size:.85rem;box-shadow:inset 0 0 0 2px var(--line)}.fchip.on{background:var(--primary);color:#fff;box-shadow:none}.vhead,.vf{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:6px}.vhead{font-size:.72rem;font-weight:900;color:var(--muted);text-transform:uppercase;margin-top:10px;padding:0 10px}.verbs{padding:0 14px;display:flex;flex-direction:column;gap:8px}.verb{background:var(--card);border-radius:16px;padding:10px;box-shadow:var(--shadow);border-left:6px solid #4FC3F7}.verb.irr{border-left-color:var(--second)}.vf button{background:var(--bg);border-radius:10px;padding:8px 4px;font-weight:800;font-size:.88rem;overflow-wrap:anywhere;min-width:0}.vf button:first-child{color:var(--primary)}.ves{display:flex;align-items:center;gap:6px;margin-top:6px;font-size:.85rem;color:var(--muted)}.ves .snd{width:30px;height:30px;margin-left:auto;font-size:.9rem}.vstats{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin-bottom:8px}.vstats div{background:var(--card);border-radius:18px;padding:12px;text-align:center;box-shadow:var(--shadow)}.vstats b{font-size:1.8rem;display:block;color:var(--primary)}.vstats span{font-size:.8rem;color:var(--muted)}.empty{padding:20px}.flash{perspective:900px;display:grid;margin:14px 0;cursor:pointer;position:relative}.flash>div{grid-area:1/1;min-height:260px;overflow-wrap:anywhere;border-radius:28px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:8px;backface-visibility:hidden;transition:transform .5s;box-shadow:var(--shadow);padding:16px;text-align:center}.flash .fc-front{background:linear-gradient(135deg,var(--primary),var(--second));color:#fff}.flash .fc-front b{font-size:2.3rem}.flash .fc-front small{opacity:.85}.flash .fc-back{background:var(--card);transform:rotateY(180deg)}.flash .fc-back b{font-size:1.6rem}.flash.flip .fc-front{transform:rotateY(180deg)}.flash.flip .fc-back{transform:rotateY(360deg)}.flash .fc-back p{margin:6px 0}.flash .fc-back small{display:block;color:var(--muted);font-size:.75rem}.grades{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,4.6rem),1fr));gap:6px}.grades .btn{padding:14px 4px;font-size:.85rem}.form label{display:flex;flex-direction:column;gap:4px;font-weight:800;font-size:.9rem;margin:8px 0}.form input:not([type=checkbox]){padding:12px;border-radius:14px;border:3px solid var(--line);font:inherit;background:var(--card);color:var(--ink)}.form input[type=range]{accent-color:var(--primary)}.full{min-height:100vh}.player{--uc:var(--primary);min-height:100vh;display:flex;flex-direction:column;padding:12px 14px calc(14px + env(safe-area-inset-bottom))}.p-top{display:flex;align-items:center;gap:10px}.x{font-size:1.4rem;font-weight:900;color:var(--muted);width:40px;height:40px}.bar{flex:1;height:16px;background:var(--line);border-radius:10px;overflow:hidden}.bar i{display:block;height:100%;background:linear-gradient(90deg,var(--uc),var(--accent));border-radius:10px;transition:width .4s}.count{font-weight:900;color:var(--muted);font-size:.85rem}.p-tag{margin:10px 0 0;display:flex;gap:6px}.p-body{flex:1;padding:6px 0 10px}.p-foot{position:sticky;bottom:0;padding-top:8px;background:var(--bg)}.prompt{font-size:1.3rem;margin:12px 0}.listen-box{display:flex;gap:14px;justify-content:center;margin:18px 0}.big-snd{width:110px;height:110px;border-radius:32px;background:var(--uc);color:#fff;font-size:3rem;box-shadow:0 8px color-mix(in srgb,var(--uc) 60%,#000)}.big-snd.slow{width:80px;height:80px;font-size:2.1rem;align-self:flex-end;background:#2ebd6b;box-shadow:0 7px #1c8a4b}.big-snd:active{transform:translateY(5px);box-shadow:none}.sentence{font-size:1.25rem;font-weight:800;background:var(--card);border-radius:20px;padding:16px;box-shadow:var(--shadow);line-height:1.6}.sentence .gap{display:inline-block;min-width:70px;border-bottom:4px solid var(--uc);color:var(--uc);text-align:center;padding:0 6px}.sentence.quote{display:flex;gap:8px;align-items:center;justify-content:space-between;overflow-wrap:anywhere}.sentence.quote>*{min-width:0}.hint{color:var(--muted);font-size:.92rem;margin:8px 4px}.options{display:flex;flex-direction:column;gap:10px;margin-top:16px}.opt{display:flex;align-items:center;gap:10px;text-align:left;width:100%;min-width:0;overflow-wrap:anywhere;background:var(--card);border-radius:18px;padding:14px;font-weight:700;font-size:1rem;box-shadow:0 4px 0 var(--line),inset 0 0 0 3px var(--line);transition:transform .08s}.opt .ok-dot{width:30px;height:30px;border-radius:10px;background:var(--bg);display:grid;place-items:center;font-weight:900;font-size:.85rem;flex:none;color:var(--muted)}.opt.sel{box-shadow:0 4px color-mix(in srgb,var(--uc) 60%,#000),inset 0 0 0 3px var(--uc);background:color-mix(in srgb,var(--uc) 10%,var(--card))}.opt.sel .ok-dot{background:var(--uc);color:#fff}.opt.right{background:#e6f8ee;box-shadow:0 4px #9adbb5,inset 0 0 0 3px var(--good);color:#155d35}.opt.right .ok-dot{background:var(--good);color:#fff}.opt.wrong{background:#ffecef;box-shadow:0 4px #f6b3bd,inset 0 0 0 3px var(--bad);color:#8f1d2e;animation:shake .4s}.opt.wrong .ok-dot{background:var(--bad);color:#fff}@keyframes shake{25%{transform:translate(-6px)}75%{transform:translate(6px)}}.passage{background:var(--card);border-radius:18px;padding:10px 14px;max-height:230px;overflow:auto;box-shadow:var(--shadow);font-size:.9rem}.passage p{margin:.4em 0}.question{font-weight:900;font-size:1.05rem}.order-line{min-height:70px;background:var(--card);border-radius:20px;padding:10px;display:flex;flex-wrap:wrap;gap:8px;align-content:flex-start;box-shadow:inset 0 0 0 3px var(--line);margin:10px 0}.order-line .ph{color:var(--muted);padding:10px}.order-line.right{box-shadow:inset 0 0 0 3px var(--good);background:#e6f8ee}.order-line.wrong{box-shadow:inset 0 0 0 3px var(--bad);background:#ffecef}.order-bank{display:flex;flex-wrap:wrap;gap:8px;justify-content:center;margin-top:14px}.chipw{background:var(--card);border-radius:14px;padding:10px 14px;font-weight:800;box-shadow:0 4px 0 var(--line),inset 0 0 0 2px var(--line);font-size:1.02rem}.chipw.on{background:color-mix(in srgb,var(--uc) 14%,var(--card))}.chipw.used{opacity:.25}.match{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin-top:10px}.match>div{display:flex;flex-direction:column;gap:10px}.mt{background:var(--card);border-radius:16px;padding:14px 8px;font-weight:800;box-shadow:0 4px 0 var(--line),inset 0 0 0 3px var(--line);min-height:62px;overflow-wrap:anywhere}.mt.es{font-weight:700;font-size:.92rem}.mt.sel{box-shadow:inset 0 0 0 3px var(--uc);background:color-mix(in srgb,var(--uc) 12%,var(--card))}.mt.done{background:#e6f8ee;color:#1e9e57;box-shadow:none;opacity:.7}.mt.shake{animation:shake .4s;box-shadow:inset 0 0 0 3px var(--bad)}.speak-card{background:var(--card);border-radius:24px;padding:18px;box-shadow:var(--shadow);text-align:center}.target{font-size:1.45rem;font-weight:900;line-height:1.5}.target .hit{color:#fff;background:var(--good);border-radius:8px;padding:0 5px}.target .miss{color:#fff;background:var(--bad);border-radius:8px;padding:0 5px}.mic-wrap{display:flex;flex-direction:column;align-items:center;margin-top:18px}.mic{width:118px;height:118px;border-radius:50%;background:linear-gradient(135deg,var(--second),#FF3D6E);color:#fff;font-size:3.2rem;box-shadow:0 8px #c2294f,0 0 #ff3d6e80;margin:10px auto;display:block}.mic.on{animation:micpulse 1.1s infinite}@keyframes micpulse{0%{box-shadow:0 8px #c2294f,0 0 #ff3d6e8c}to{box-shadow:0 8px #c2294f,0 0 0 26px #ff3d6e00}}.pron-result{text-align:center;margin-top:14px}.score-ring{--p:0;width:6.9rem;height:6.9rem;margin:0 auto;border-radius:50%;background:conic-gradient(var(--good) calc(var(--p)*1%),var(--line) 0);display:grid;place-items:center}.score-ring span{width:5.4rem;height:5.4rem;border-radius:50%;background:var(--bg);display:grid;place-items:center;font-size:2.1rem;font-weight:900}.stars{font-size:2rem;color:#ffc107;letter-spacing:4px}.stars i{color:var(--line);font-style:normal}.heard{font-size:.9rem;color:var(--muted)}.tip{background:#fff6d6;color:#5c4400;border-radius:16px;padding:10px 12px;font-weight:700;font-size:.92rem}.honest{font-size:.72rem;color:var(--muted);text-align:center;margin-top:14px}.warn{background:#fff1e0;color:#8a4b00;border-radius:16px;padding:12px;margin:12px 0;font-weight:700;font-size:.9rem}.dict{width:100%;min-height:110px;border-radius:20px;border:3px solid var(--line);padding:14px;font:inherit;font-size:1.15rem;background:var(--card);color:var(--ink);resize:none}.dict:focus{outline:none;border-color:var(--uc)}.dict-res{background:var(--card);border-radius:20px;padding:14px;margin-top:10px;box-shadow:var(--shadow)}.diff{font-size:1.2rem;font-weight:800;line-height:1.7}.diff .hit{color:#fff;background:var(--good);border-radius:7px;padding:0 5px}.diff .miss{color:#fff;background:var(--bad);border-radius:7px;padding:0 5px}.diff .extra{text-decoration:line-through;color:var(--bad)}.pill{display:inline-block;background:var(--primary);color:#fff;font-weight:900;border-radius:12px;padding:5px 12px}.fb{border-radius:24px 24px 0 0;padding:16px;margin:0 -14px -14px;animation:up .25s}.fb.good{background:#ddf7e8;color:#155d35}.fb.bad{background:#ffe6ea;color:#8f1d2e}.fb-h{font-size:1.25rem;font-weight:900}.fb-a{font-weight:800;margin:6px 0;display:flex;align-items:center;gap:8px;flex-wrap:wrap}.fb-es{font-size:.9rem;margin:4px 0}.card .fb{margin:10px 0 0;border-radius:18px}@keyframes up{0%{transform:translateY(40px);opacity:0}}.results{padding-top:30px}.results h1{font-size:3.2rem;color:var(--primary)}.results h1.fail{color:var(--bad)}.kicker{font-weight:900;text-transform:uppercase;letter-spacing:.06em;color:var(--second);font-size:.85rem;margin-top:6px}.medal-name{font-weight:900;font-size:1.2rem}.big-stars{font-size:3.4rem;letter-spacing:6px}.big-stars span{color:var(--line);display:inline-block}.big-stars span.on{color:#ffc107;animation:starpop .5s both}@keyframes starpop{0%{transform:scale(0) rotate(-90deg)}80%{transform:scale(1.3)}}.gains{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;margin:16px 0}.gains div{background:var(--card);border-radius:18px;padding:12px 4px;box-shadow:var(--shadow)}.gains b{display:block;font-size:1.4rem;color:var(--primary)}.gains span{font-size:.75rem;color:var(--muted)}@keyframes bldpop{0%{transform:scale(0) translateY(40px)}70%{transform:scale(1.15)}}.fails{text-align:left;margin-top:14px}.fail-row{background:var(--card);border-radius:18px;padding:12px;margin:8px 0;box-shadow:var(--shadow)}.fail-row .q{font-weight:800}.fail-row .given{color:var(--bad);font-size:.88rem;margin-top:3px}.fail-row .a{color:#177a43;font-weight:800;display:flex;flex-wrap:wrap;align-items:center;gap:8px;margin-top:4px}.fail-row{overflow-wrap:anywhere}.fail-row .snd{width:34px;height:34px}.medal-pop{animation:bldpop .9s both}.level-badge{width:8.1rem;min-height:8.1rem;margin:10px auto;border-radius:36px;background:linear-gradient(135deg,var(--primary),var(--second));color:#fff;display:flex;flex-direction:column;align-items:center;justify-content:center;box-shadow:0 8px #0003;animation:bldpop .8s both}.level-badge span{font-size:2.4rem}.level-badge b{font-size:2.6rem;line-height:1}.level-scale{display:flex;justify-content:center;gap:6px;margin:10px 0}.level-scale span{padding:6px 12px;border-radius:12px;background:var(--line);font-weight:900;color:var(--muted)}.level-scale span.past{background:#c8f0d8;color:#1e9e57}.level-scale span.on{background:var(--primary);color:#fff;transform:scale(1.15)}.explain{font-size:1.02rem}.place-card{--uc:var(--primary);display:flex;gap:12px;align-items:center;text-align:left;background:var(--uc);color:#fff;border-radius:22px;padding:14px;margin:12px 0;box-shadow:var(--shadow)}.place-card .em{font-size:2.4rem}.place-card div{display:flex;flex-direction:column;flex:1;min-width:0}.place-card small{opacity:.9;font-weight:800}.welcome{padding-top:40px}.brand{font-size:2.8rem;color:var(--primary)}.brand span{color:var(--second)}.lead{font-size:1.1rem}.feat{display:flex;flex-wrap:wrap;gap:8px;justify-content:center;margin:14px 0 20px}.feat span{background:var(--card);border-radius:99px;padding:8px 12px;font-weight:800;font-size:.85rem;box-shadow:var(--shadow)}.mascot{animation:bob 2.6s ease-in-out infinite}.page-h{padding:6px 4px}.page-h h1{font-size:1.8rem}.badges{display:grid;grid-template-columns:repeat(auto-fill,minmax(min(100%,6.2rem),1fr));gap:10px}.bcard{background:var(--card);border-radius:20px;padding:10px 6px;box-shadow:var(--shadow);display:flex;flex-direction:column;align-items:center;text-align:center;gap:3px}.bcard b{font-size:.78rem;line-height:1.25;overflow-wrap:anywhere;max-width:100%}.bcard small{font-size:.66rem;color:var(--muted);line-height:1.25;overflow-wrap:anywhere;max-width:100%}.bcard .pbar{width:88%}.bcard .date{font-size:.66rem;font-weight:800;color:var(--muted)}.bcard.ok{background:linear-gradient(180deg,#FFF8E1,var(--card))}.bcard.ok .date{color:var(--good)}.badge.locked{filter:grayscale(.2)}.shop-h{display:flex;gap:16px;align-items:center;padding:8px 4px}.shop-av{padding:22px 26px 14px 10px}.coins-big{font-size:1.8rem;font-weight:900;color:#e08600}.shop{display:grid;grid-template-columns:repeat(auto-fill,minmax(min(100%,6.2rem),1fr));gap:10px}.sitem{background:var(--card);border-radius:20px;padding:12px 6px;box-shadow:var(--shadow);display:flex;flex-direction:column;align-items:center;gap:4px;position:relative;transition:transform .1s}.sitem:active{transform:scale(.95)}.sitem .se{font-size:2.4rem}.sitem b{font-size:.82rem;line-height:1.25;text-align:center;overflow-wrap:anywhere;max-width:100%}.sitem .price{font-size:.75rem;font-weight:900;background:#fff0d1;color:#b86b00;border-radius:10px;padding:3px 8px}.sitem.own .price{background:#e3f2fd;color:#1565c0}.sitem.on{box-shadow:0 0 0 3px var(--good),var(--shadow)}.sitem.on .price{background:var(--good);color:#fff}.sitem.poor{opacity:.6}.swatch{display:flex;gap:2px}.swatch i{width:14px;height:14px;border-radius:50%;display:block}.big-emoji{font-size:4rem}.modal-bg{position:fixed;inset:0;background:#1e143c73;display:flex;align-items:center;justify-content:center;z-index:100;padding:18px;animation:fade .2s}.modal-bg.out{opacity:0;transition:.25s}.modal{background:var(--card);border-radius:28px;padding:20px;width:100%;max-width:420px;max-height:88vh;overflow:auto;animation:popin .35s cubic-bezier(.2,1.4,.4,1)}.modal.sheet{align-self:flex-end;border-radius:28px 28px 0 0;margin-bottom:-18px;max-width:560px}.modal.pop{background:radial-gradient(circle at 50% 30%,#FFF8D6,var(--card) 70%)}@keyframes popin{0%{transform:scale(.7);opacity:0}}@keyframes fade{0%{opacity:0}}.ach-pop{text-align:center;position:relative}.ach-pop svg{animation:bldpop .9s both}.ach-pop h2{font-size:1.5rem}.reward{display:inline-block;background:#fff0d1;color:#b86b00;font-weight:900;border-radius:14px;padding:6px 14px;font-size:1.2rem;margin-bottom:10px}.ach-rays{position:absolute;left:50%;top:70px;width:260px;height:260px;margin:-130px;background:repeating-conic-gradient(rgba(255,193,7,.22) 0 10deg,transparent 10deg 20deg);border-radius:50%;animation:spin 12s linear infinite;z-index:-1}.speak-modal{text-align:center}.toast{position:fixed;left:50%;bottom:100px;transform:translate(-50%);background:var(--ink);color:var(--bg);padding:12px 18px;border-radius:16px;font-weight:800;z-index:200;box-shadow:0 8px 24px #00000040;max-width:90vw;text-align:center;animation:up .25s}.toast.out{opacity:0;transition:.4s}.confetti{position:fixed;inset:0;width:100vw;height:100vh;pointer-events:none;z-index:300}.ki{display:inline-block;vertical-align:middle;flex:none;overflow:visible}.btn .ki,.tool .ki,.fchip .ki,.gchip .ki,.pill-btn .ki{margin:-4px 0}h1 .ki,h2 .ki,h3 .ki,b .ki,.sec-t .ki{vertical-align:-.22em}.avatar{overflow:visible;background:radial-gradient(circle at 30% 30%,#fff,color-mix(in srgb,var(--accent) 45%,#fff))}.avatar .av-svg{width:118%;height:118%;margin-top:-6%;overflow:visible}.avatar.mini{box-shadow:none;background:none}.mmini{display:inline-block;vertical-align:middle}.es-pill{display:inline-grid;place-items:center;background:linear-gradient(180deg,#ff8a8a,#f25c6b);color:#fff;font-weight:900;font-size:.68rem;letter-spacing:.04em;border-radius:99px;padding:2px 7px;vertical-align:middle;box-shadow:inset 0 -2px #0000001f,0 0 0 2px #ffd84d}.stat{gap:4px;padding:4px 10px 4px 6px}.gear{padding:0;display:grid;place-items:center}.tabs button span{display:grid;place-items:center;height:34px}.tabs button.on span{transform:translateY(-3px) scale(1.12)}.tabs button:not(.on) span .ki{filter:saturate(.75) opacity(.85)}.hour-b span{display:grid;place-items:center;height:32px}.continue .em{font-size:0;background:#ffffff73}.node .em{font-size:0;display:grid;place-items:center}.node.locked .em .ki{opacity:.6;filter:grayscale(.4)}.node .tick{font-size:0}.barrio-h .em{font-size:0;display:grid;place-items:center;background:#fff6;border-radius:18px;padding:3px}.uh-em{font-size:0;display:inline-grid;place-items:center;background:#ffffff73;border-radius:30px;padding:8px;margin-bottom:4px}.step .se,.exam-cta span{font-size:0}.exam-cta em{font-style:normal}.gcard .ge{font-size:0}.lh-ico{display:grid;place-items:center;background:#ffffff73;border-radius:16px;padding:3px;flex:none}.learn-h .lh-ico+div{margin-left:0}.snd{padding:0}.snd .ki{width:70%;height:70%}.big-snd,.mic{font-size:0;display:grid;place-items:center}.mic .ki{filter:drop-shadow(0 2px 0 rgba(0,0,0,.15))}.prompt{display:flex;align-items:center;gap:8px}.p-ico{display:grid;place-items:center;background:color-mix(in srgb,var(--uc,var(--primary)) 18%,var(--card));border-radius:14px;padding:4px;flex:none}.level-badge span,.place-card .em{font-size:0}.bt-h span{font-size:0;display:grid;place-items:center}.sitem .se{font-size:0;display:grid;place-items:center;min-height:64px}.big-art{display:grid;place-items:center;margin:4px auto 8px;animation:bob 2.5s infinite}.feat span{display:inline-flex;align-items:center;gap:6px}.toast .ki{vertical-align:-.25em}.talk-cta{display:flex;align-items:center;gap:12px;width:100%;text-align:left;margin:12px 0 0;padding:14px;border-radius:26px;background:linear-gradient(135deg,#ffe3f1,#e6e0ff 60%,#ddf4ff);box-shadow:0 6px #d7c9f5,var(--shadow);color:var(--ink);position:relative;overflow:hidden}.talk-cta:active{transform:translateY(3px);box-shadow:0 3px #d7c9f5}.talk-cta .tc-ico{display:grid;place-items:center;background:#fff;border-radius:20px;width:66px;height:66px;flex:none;box-shadow:0 3px #785ac826}.talk-cta .t{flex:1;display:flex;flex-direction:column;min-width:0}.talk-cta small{font-weight:900;color:#8a5cf6}.talk-cta b{font-size:1.08rem}.talk-cta .t span{font-size:.8rem;color:var(--muted)}.talk-cta .mic-mini{display:grid;place-items:center;width:52px;height:52px;border-radius:50%;background:linear-gradient(180deg,#ff8fb8,#f2669a);box-shadow:0 4px #d04c7e;animation:pulse 1.8s infinite;flex:none}.link-row{display:flex;align-items:center;gap:10px;width:100%;background:var(--card);border-radius:18px;padding:10px 14px;margin:10px 0 0;box-shadow:var(--shadow);font-weight:800;color:var(--ink)}.link-row span{flex:1;text-align:left;min-width:0}.link-row small{color:var(--muted);margin-left:6px}.link-row b{color:var(--muted);font-size:1.3rem}.dark .talk-cta{background:linear-gradient(135deg,#4a3566,#2f3a63);box-shadow:0 6px #241b38}.dark .talk-cta small{color:#cdb8ff}.step.wide{grid-column:1/-1}.step.talk-step{background:linear-gradient(135deg,#ffe9f4,#ece6ff);box-shadow:0 5px #dccdf7}.step.talk-step .se{background:#fff}.step.talk-step b{color:#7b4fe0}.dark .step.talk-step{background:linear-gradient(135deg,#46325f,#33325c)}.talk{display:flex;flex-direction:column;height:100dvh;max-width:560px;margin:0 auto;background:linear-gradient(180deg,color-mix(in srgb,var(--uc) 16%,var(--bg)) 0,var(--bg) 220px)}.talk .p-top{padding:10px 12px 0}.tk-hands{display:flex;align-items:center;gap:4px;font-size:.72rem;font-weight:900;padding:6px 10px;border-radius:99px;background:var(--card);color:var(--muted);box-shadow:var(--shadow)}.tk-hands.on{background:#e3f8ec;color:#1e7a48}.tk-stage{display:flex;align-items:center;gap:12px;padding:6px 16px 4px}.tk-name{display:flex;flex-direction:column;min-width:0}.tk-name small{font-weight:800;color:var(--muted);font-size:.75rem}.tk-name b{font-size:1.25rem}#tkstatus{font-size:.85rem;font-weight:800;color:var(--uc);min-height:1.2em}.partner{position:relative;width:104px;height:112px;flex:none;display:grid;place-items:center}.partner .partner-svg{width:100%;height:auto;overflow:visible}.partner svg *{transform-box:fill-box;transform-origin:center}.partner .e-happy,.partner .m-talk,.partner .m-o,.partner .x-q,.partner .x-listen,.partner .x-hearts{display:none}.pt-idle .partner-svg,.pt-intro .partner-svg,.pt-listen .partner-svg{animation:breathe 3s ease-in-out infinite}.pt-talk .m-smile{display:none}.pt-talk .m-talk{display:inline;animation:talkmouth .26s ease-in-out infinite alternate}.pt-talk .partner-svg{animation:bob 1s ease-in-out infinite}.pt-listen .x-listen{display:inline;animation:blink 1s infinite}.pt-listen .arm-r{transform:translate(2px,-14px) rotate(-20deg)}.pt-confused .m-smile{display:none}.pt-confused .m-o,.pt-confused .x-q{display:inline}.pt-confused .x-q{animation:pop .4s}.pt-confused .partner-svg{animation:tilt 1.2s ease-in-out infinite alternate}.pt-happy .e-open{display:none}.pt-happy .e-happy,.pt-happy .x-hearts{display:inline}.pt-happy .x-hearts{animation:floatup 1.4s ease-out infinite}.pt-happy .partner-svg{animation:hop .6s ease-in-out 2}.pt-happy .arm-l{transform:translate(-2px,-12px) rotate(25deg)}.pt-happy .arm-r{transform:translate(2px,-12px) rotate(-25deg)}.partner .rings{position:absolute;inset:6px;border-radius:50%;pointer-events:none;opacity:0}.pt-listen .rings{opacity:1;box-shadow:0 0 color-mix(in srgb,var(--uc) 45%,transparent);animation:rings 1.4s infinite}@keyframes talkmouth{0%{transform:scaleY(.45)}to{transform:scaleY(1.1)}}@keyframes breathe{50%{transform:scale(1.03,.98)}}@keyframes tilt{0%{transform:rotate(-6deg)}to{transform:rotate(6deg)}}@keyframes hop{50%{transform:translateY(-12px)}}@keyframes floatup{0%{transform:translateY(4px);opacity:1}to{transform:translateY(-14px);opacity:0}}@keyframes rings{0%{box-shadow:0 0 color-mix(in srgb,var(--uc) 45%,transparent)}to{box-shadow:0 0 0 22px transparent}}@keyframes blink{50%{opacity:.35}}@keyframes spin{to{transform:rotate(360deg)}}.tk-chat{flex:1;overflow-y:auto;padding:8px 14px 14px;display:flex;flex-direction:column;gap:10px;scroll-behavior:smooth}.tk-intro{background:var(--card);border-radius:26px;padding:16px;box-shadow:var(--shadow)}.tk-intro h2{margin:.4em 0 .2em}.tk-intro>p{margin:.2em 0 .6em;color:var(--muted)}.tk-how{list-style:none;padding:0;margin:8px 0;display:flex;flex-direction:column;gap:8px}.tk-how li{display:flex;gap:10px;align-items:center;background:var(--bg);border-radius:16px;padding:8px 10px;font-size:.92rem}.tb{max-width:84%;min-width:0;overflow-wrap:anywhere;border-radius:22px;padding:11px 14px;box-shadow:var(--shadow);animation:up .25s}.tb.bot{align-self:flex-start;background:var(--card);border-bottom-left-radius:6px}.tb.bot.sorry{background:#fff4dc;border:2px dashed #F5C55B}.tb-t{font-weight:700;font-size:1.05rem;line-height:1.35}.tb-b{display:flex;gap:6px;align-items:center;margin-top:6px}.tb-b .snd{width:34px;height:34px;border-radius:12px}.tb .tr{display:block;font-size:.84rem;color:var(--muted);margin-top:4px}.es-btn{font-size:.7rem;font-weight:900;color:#fff;background:linear-gradient(180deg,#ff8a8a,#f25c6b);border-radius:99px;padding:5px 9px}.slow-tag{display:inline-flex;align-items:center;gap:3px;font-size:.72rem;font-weight:900;background:#e3f8ec;color:#1e7a48;border-radius:99px;padding:1px 7px;vertical-align:middle}.tb.me{align-self:flex-end;border-bottom-right-radius:6px;color:#fff}.tb.me small{display:flex;align-items:center;gap:4px;font-weight:800;opacity:.92;font-size:.75rem;margin-top:3px}.tb.me.ok{background:linear-gradient(135deg,#5ccb8a,#3db474)}.tb.me.miss{background:linear-gradient(135deg,#ffb27a,#ff8c69)}.tk-fb{align-self:center;display:flex;align-items:center;gap:6px;background:#fff7d1;color:#7a5a00;font-weight:900;font-size:.85rem;padding:5px 12px 5px 6px;border-radius:99px;animation:pop .35s}.tk-foot{padding:10px 14px calc(12px + env(safe-area-inset-bottom));background:var(--card);border-radius:28px 28px 0 0;box-shadow:0 -6px 20px #50328c14}.tk-tools{display:flex;flex-wrap:wrap;gap:6px;justify-content:center;margin-bottom:8px}.tool{display:inline-flex;align-items:center;gap:5px;background:var(--bg);border-radius:99px;padding:7px 12px;font-weight:800;font-size:.82rem;color:var(--ink)}.tool.hl{background:#fff1c7;color:#7a5a00;animation:pop .35s}.tool.on{background:#ffd84d}.tk-hint{display:flex;align-items:center;gap:8px;background:#fff0f3;border-radius:16px;padding:10px 12px;margin-bottom:8px;font-weight:700}.tk-ans{background:#eef7ff;border-radius:18px;padding:10px 12px;margin-bottom:8px;display:flex;flex-direction:column;gap:6px}.tk-ans b{font-size:.85rem}.tk-a{display:flex;align-items:center;gap:6px;background:var(--card);border-radius:14px;padding:6px 6px 6px 12px;font-weight:700}.tk-a span{flex:1;min-width:0}.tk-a .snd{width:32px;height:32px}.tk-mic{display:flex;flex-direction:column;align-items:center;gap:4px}.mic.big{width:96px;height:96px;transition:transform .2s,filter .2s;filter:grayscale(.55) opacity(.75)}.mic.big.ready{filter:none;animation:pulse 1.6s infinite}.mic.big.on{filter:none;animation:none;transform:scale(1.08);box-shadow:0 0 0 10px color-mix(in srgb,#FF6FA5 30%,transparent),0 0 0 22px color-mix(in srgb,#FF6FA5 14%,transparent)}.tk-type .row{gap:8px}.tk-type .search{flex:1}.talk-res .partner{margin:0 auto;width:130px;height:140px}.tk-score{display:flex;align-items:center;gap:14px;background:var(--card);border-radius:22px;padding:14px;box-shadow:var(--shadow);text-align:left;margin:10px 0}.tk-score>div:last-child{display:flex;flex-direction:column;gap:3px;flex:1;min-width:0}.tk-score small{color:var(--muted);font-weight:700}.tk-score .score-ring{margin:0;flex:none;width:5.75rem;height:5.75rem}.tk-score .score-ring span{width:4.5rem;height:4.5rem;font-size:1.7rem}.ach-hook{display:flex;gap:12px;align-items:center;text-align:left;background:linear-gradient(135deg,#fff6d8,#ffe9f4);border-radius:22px;padding:12px;margin:12px 0}.ach-hook>div{flex:1;display:flex;flex-direction:column;gap:3px;min-width:0}.ach-hook small{color:var(--muted);font-weight:800}.talk-list{padding:0 14px 20px}.talk-list .sec-t{color:var(--uc)}.talk-item{display:flex;align-items:center;gap:12px;width:100%;text-align:left;background:var(--card);border-radius:20px;padding:10px 12px;margin:8px 0;box-shadow:0 4px color-mix(in srgb,var(--uc) 35%,var(--line))}.talk-item .ti-ico{display:grid;place-items:center;width:52px;height:52px;border-radius:16px;background:color-mix(in srgb,var(--uc) 20%,var(--card));flex:none}.talk-item .ti-t{flex:1;display:flex;flex-direction:column;min-width:0}.talk-item small{color:var(--muted);font-weight:700}.talk-item.locked{opacity:.55}.talk-item.done .ti-ico{box-shadow:inset 0 0 0 3px var(--good)}@keyframes pop{0%{transform:scale(.6);opacity:0}70%{transform:scale(1.08)}to{transform:scale(1);opacity:1}}@keyframes softpulse{50%{transform:scale(1.08)}}.talk-cta .mic-mini,.mic.big.ready{animation:softpulse 1.6s ease-in-out infinite}.tb-es{display:none;font-size:.86rem;color:var(--muted);margin-top:5px;font-weight:600}.tb-es.on{display:block;animation:up .2s}.ach-hook.got{background:linear-gradient(135deg,#e3f8ec,#fff6d8)}.rec-idle{display:flex;flex-direction:column;align-items:center;gap:3px;text-align:center}.rec-idle .mic{margin:4px auto}.rec-idle .rec-label{font-size:1.05rem}.rec-idle small{color:var(--muted);font-weight:700}.rec-box{display:flex;flex-direction:column;align-items:center;gap:6px;text-align:center;background:#fff1f4;border:2px solid #FFC2D1;border-radius:22px;padding:10px 12px;animation:pop .3s}.rec-head{display:flex;align-items:center;justify-content:center;flex-wrap:wrap;gap:8px;color:#c2294f}.rec-head b{font-size:1rem}.rec-dot{width:12px;height:12px;border-radius:50%;background:#e8174a;animation:recblink 1s infinite;flex:none}@keyframes recblink{50%{opacity:.25}}.rec-time{font-variant-numeric:tabular-nums;font-weight:900;background:#fff;border-radius:99px;padding:1px 9px;color:#c2294f}.rec-text{width:100%;min-height:2.6em;background:#fff;border-radius:14px;padding:7px 10px;font-weight:700;overflow-wrap:anywhere}.rec-text i{color:var(--muted);font-weight:600;font-size:.88rem}.mic.rec-mic{width:var(--ms,96px);height:var(--ms,96px);margin:4px auto;background:linear-gradient(135deg,#ff4d6d,#e8174a);box-shadow:0 6px #a8123a;animation:recpulse 1.2s infinite}@keyframes recpulse{0%{box-shadow:0 6px #a8123a,0 0 #e8174a80}to{box-shadow:0 6px #a8123a,0 0 0 22px #e8174a00}}.rec-sub{color:#8a3a50;font-weight:700}.rec-cancel{font-weight:800;color:var(--muted);text-decoration:underline;background:none;padding:4px}.tk-confirm{display:flex;flex-direction:column;gap:8px;background:#eef7ff;border-radius:22px;padding:12px;animation:pop .3s}.tk-confirm>small{font-weight:800;color:var(--muted)}.tk-confirm .said{font-size:1.1rem;font-weight:800;background:var(--card);border-radius:14px;padding:8px 12px;overflow-wrap:anywhere}.tk-confirm .row{display:flex;flex-wrap:wrap;gap:8px}.tk-confirm .row .btn{flex:1 1 9.5rem;min-width:0}.tk-note{background:#fff7d1;color:#6b5000;border-radius:14px;padding:8px 12px;font-weight:700;font-size:.88rem;margin-bottom:8px;text-align:center}.speak-modal .rec-box,.mic-wrap .rec-box{margin:10px 0;width:100%}.rec-sq{display:block;width:34%;height:34%;border-radius:18%;background:#fff;box-shadow:0 2px #00000026}.tk-sw{position:relative;width:24px;height:14px;border-radius:99px;background:#d5cde6;flex:none;transition:background .2s}.tk-sw:after{content:"";position:absolute;top:2px;left:2px;width:10px;height:10px;border-radius:50%;background:#fff;transition:left .2s}.tk-hands.on .tk-sw{background:#2fb86a}.tk-hands.on .tk-sw:after{left:12px}.talk{height:var(--vvh,100dvh)}.tk-chat{min-height:0}.tk-foot{max-height:calc(var(--vvh,100dvh) * .66);overflow-y:auto;overscroll-behavior:contain}.kb-open .talk .tk-stage{display:none}.kb-open .talk .tk-foot{max-height:calc(var(--vvh,100dvh) - 70px)}.modal{max-height:min(88vh,calc(var(--vvh,100vh) - 24px))}.tk-confirm button.said{display:flex;align-items:flex-start;gap:8px;width:100%;text-align:left;color:var(--ink);font:inherit;font-size:1.1rem;font-weight:800;border:2px dashed transparent;cursor:text}.tk-confirm button.said:active,.tk-confirm button.said:focus-visible{border-color:#9cc8f5}.said-ed{margin-left:auto;flex:none;opacity:.75}.tk-fix{width:100%;min-width:0}.tk-edit-l{display:flex;align-items:center;gap:6px;font-weight:900;font-size:.95rem}.tk-edit{width:100%;min-height:4.6em;max-height:30vh;border-radius:16px;border:3px solid #9CC8F5;padding:10px 12px;font:inherit;font-size:1.1rem;font-weight:700;line-height:1.35;background:var(--card);color:var(--ink);resize:none;overflow-wrap:anywhere}.tk-edit:focus{outline:none;border-color:var(--uc,var(--primary));box-shadow:0 0 0 3px color-mix(in srgb,var(--uc,var(--primary)) 25%,transparent)}.tk-orig{color:var(--muted);font-weight:700;overflow-wrap:anywhere}.tk-editing>small:last-child{color:var(--muted);font-weight:700;display:flex;gap:4px;align-items:flex-start}.tb-st{display:flex;flex-wrap:wrap;align-items:center;gap:6px;margin-top:4px}.tb-st small{margin-top:0!important}.tb-pill{display:inline-flex;align-items:center;gap:4px;background:#ffffffeb;color:#7b4fe0;font-weight:900;font-size:.72rem;padding:2px 9px 2px 5px;border-radius:99px}.tb.me.ok.manual{background:linear-gradient(135deg,#7fcfa0,#5bb98c)}.tb-heard{font-size:.78rem;font-weight:700;opacity:.92;margin-top:2px}.tb-heard s{text-decoration-thickness:1px}.fails.aloud{background:#f3eeff;border-radius:22px;padding:10px 12px}.fails.aloud .given .small{color:var(--muted)}.mic-wrong{display:inline-flex;align-items:center;gap:6px;margin:10px auto 0;font-weight:800;color:var(--muted);text-decoration:underline;background:none;padding:6px;max-width:100%}.mic-err{display:flex;flex-direction:column;gap:8px;text-align:left;background:#fff7e6;border:2px dashed #F5C55B;border-radius:22px;padding:12px;margin-top:12px;animation:pop .3s}.mic-err b{display:flex;align-items:center;gap:6px}.mic-err p{margin:0}.mic-err label{font-weight:800;display:flex;align-items:center;gap:4px}.mic-err .row{display:flex;flex-wrap:wrap;gap:8px}.mic-err .row .btn{flex:1 1 9.5rem;min-width:0}.mic-err .link{align-self:center}.mic-err.done{background:#eef7ff;border-color:#9cc8f5}.mic-said{min-height:3em;font-size:1rem}.dark .mic-err{background:#3a3150}.dark .mic-err.done{background:#2f3a63}.dark .fails.aloud{background:#3a3150}.fails.aloud .given{color:#5b3fb0}.dark .fails.aloud .given{color:#cdb8ff}.rec-text.rec-editable{display:flex;align-items:center;gap:8px;text-align:left;color:var(--ink);font:inherit;font-weight:700;border:2px dashed #FFB3C6;cursor:text;box-shadow:0 3px #ffd6e0}.rec-text.rec-editable:active,.rec-text.rec-editable:focus-visible{border-color:#e8174a;background:#fff8fa}.rec-tx{flex:1;min-width:0;overflow-wrap:anywhere}.rec-pen{flex:none;display:grid;place-items:center;width:40px;height:40px;border-radius:14px;background:#fff3c4;box-shadow:0 2px #f5c55b}.rec-edhint{display:flex;align-items:center;justify-content:center;gap:4px;color:#8a3a50;font-weight:800;margin-top:-2px}.rec-stopedit{width:100%;min-width:0;padding:11px 14px;color:#7b4fe0}.tk-confirm .btn.tk-fix{width:100%;min-width:0;background:#8e6cf0;color:#fff;box-shadow:0 5px #5e3fc2}.tk-confirm .btn.tk-fix:active{box-shadow:0 1px #5e3fc2}.dark .rec-text.rec-editable{background:var(--card)}.dark .rec-pen{background:#4a3f2a}.pet-svg{overflow:visible;display:block}.pet-svg .pe-body{transform-box:fill-box;transform-origin:50% 100%;animation:pe-breathe 3.2s ease-in-out infinite}@keyframes pe-breathe{0%,to{transform:scale(1)}50%{transform:scale(1.018,1.03)}}.pet-svg .pe-blink{transform-box:fill-box;transform-origin:50% 50%;animation:pe-blink 4.8s infinite}@keyframes pe-blink{0%,91%,97%,to{transform:scaleY(1)}94%{transform:scaleY(.08)}}.pet-svg .pe-ear-l,.pet-svg .pe-ear-r{transform-box:fill-box;transform-origin:50% 100%}.pet-svg .pe-ear-r{animation:pe-ear 5.5s ease-in-out infinite}.pet-svg .pe-ear-l{animation:pe-ear 7s ease-in-out 1.3s infinite reverse}@keyframes pe-ear{0%,78%,to{transform:rotate(0)}83%{transform:rotate(7deg)}88%{transform:rotate(-3deg)}}.pet-svg .pe-tail{transform-box:fill-box;transform-origin:0% 100%;animation:pe-wag 1.9s ease-in-out infinite}@keyframes pe-wag{0%,to{transform:rotate(-5deg)}50%{transform:rotate(6deg)}}.pet-svg .pe-wing-l{transform-box:fill-box;transform-origin:100% 85%;animation:pe-flapl 2.6s ease-in-out infinite}.pet-svg .pe-wing-r{transform-box:fill-box;transform-origin:0% 85%;animation:pe-flapr 2.6s ease-in-out infinite}@keyframes pe-flapl{0%,to{transform:rotate(0)}50%{transform:rotate(-9deg)}}@keyframes pe-flapr{0%,to{transform:rotate(0)}50%{transform:rotate(9deg)}}.pet-svg .pe-rays{animation:spin 26s linear infinite}.pet-svg .pe-tw,.room-svg .rm-tw{animation:pe-tw 2.4s ease-in-out infinite}@keyframes pe-tw{0%,to{opacity:1}50%{opacity:.3}}.pet-svg .pe-float{animation:pe-float 3.8s ease-in-out infinite}.pet-svg .pe-float2{animation:pe-float 4.6s ease-in-out .8s infinite}@keyframes pe-float{0%,to{transform:translateY(0)}50%{transform:translateY(-7px)}}.pet-svg .pe-chew{transform-box:fill-box;transform-origin:50% 50%;animation:pe-chew .28s ease-in-out infinite alternate}@keyframes pe-chew{0%{transform:scaleY(.35)}to{transform:scaleY(1.05)}}.pet-svg .pe-cloud{animation:pe-float 3s ease-in-out infinite}.pet-svg .pe-rain{animation:pe-rain 1.1s linear infinite}@keyframes pe-rain{0%{transform:translateY(-3px);opacity:1}to{transform:translateY(9px);opacity:0}}.pet-svg .pe-tear{animation:pe-tear 2.6s ease-in infinite}@keyframes pe-tear{0%,30%{transform:translateY(0);opacity:0}40%{opacity:1}to{transform:translateY(12px);opacity:0}}.pet-svg .pe-zzz text{animation:pe-z 2.6s ease-in-out infinite}.pet-svg .pe-zzz text:nth-child(2){animation-delay:.5s}.pet-svg .pe-zzz text:nth-child(3){animation-delay:1s}@keyframes pe-z{0%,to{opacity:.2;transform:translateY(4px)}50%{opacity:1;transform:translateY(-3px)}}.pet-svg .pe-hearts{animation:pe-float 1.4s ease-in-out infinite}.pet-svg .pe-arm-r,.pet-svg .pe-arm-l{transform-box:fill-box;transform-origin:50% 15%}.pet-svg.m-joy .pe-arm-r,.pet-svg.m-love .pe-arm-r{animation:pe-wave .45s ease-in-out infinite alternate}@keyframes pe-wave{0%{transform:rotate(0)}to{transform:rotate(-38deg)}}.pet-svg.m-sad .pe-body{animation-duration:5.5s}.pet-svg.m-sleepy .pe-body{animation:pe-sleepy 4.5s ease-in-out infinite}@keyframes pe-sleepy{0%,to{transform:rotate(0) scale(1)}50%{transform:rotate(-3deg) scale(1.01,1.03)}}.pet-svg.sil{filter:brightness(0) opacity(.16)}.pet-svg.sil *{animation:none!important}.item-ico.sil{filter:grayscale(1) brightness(1.12) opacity(.38)}.room-thumb.sil{filter:grayscale(1) opacity(.45)}.room-svg .rm-fly{animation:rm-fly 7s ease-in-out infinite}@keyframes rm-fly{0%,to{transform:translate(0)}50%{transform:translate(14px)}}.room-svg .rm-spin{animation:spin 40s linear infinite}@media (prefers-reduced-motion:reduce){.pet-svg *,.room-svg *{animation:none!important}}.pet-room{position:relative;min-height:350px;padding-bottom:220px;border-radius:30px;overflow:hidden;box-shadow:var(--shadow);margin:2px 0 12px;background:#ffe9f1}.room-bg{position:absolute;inset:0}.room-bg svg{width:100%;height:100%;display:block}.pet-live{position:absolute;left:50%;bottom:2px;transform:translate(-50%);cursor:pointer;-webkit-tap-highlight-color:transparent;z-index:1}.pet-live.hop{animation:pet-hop .6s}.pet-live.wiggle{animation:pet-wiggle .6s}@keyframes pet-hop{0%,to{transform:translate(-50%) translateY(0)}35%{transform:translate(-50%) translateY(-30px)}60%{transform:translate(-50%) translateY(0) scale(1.06,.94)}}@keyframes pet-wiggle{25%{transform:translate(calc(-50% - 6px)) rotate(-3deg)}75%{transform:translate(calc(-50% + 6px)) rotate(3deg)}}.pet-toy{position:absolute;right:7%;bottom:8px;animation:bob 3s ease-in-out infinite;z-index:1}.room-top{position:relative;z-index:2;display:flex;flex-direction:column;align-items:stretch;gap:12px;padding:10px 10px 0}.ph-top{display:flex;justify-content:space-between;align-items:flex-start;gap:8px}.nameplate{background:#ffffffed;border-radius:18px;padding:6px 14px;box-shadow:0 4px #2d22501f;display:flex;flex-direction:column;align-items:flex-start;color:#2d2250}.nameplate{min-width:0;max-width:100%;overflow-wrap:anywhere;text-align:left}.nameplate b{font-size:1.15rem;line-height:1.25}.nameplate span{font-size:.72rem;font-weight:900;color:#e2557f}.gift-btn{position:relative;animation:gift-wobble 1.6s ease-in-out infinite}.gift-btn i,.tab-dot{position:absolute;top:-4px;right:-6px;background:#ff5a6e;color:#fff;border-radius:99px;font-style:normal;font-weight:900;font-size:.72rem;min-width:22px;height:22px;display:grid;place-items:center;border:2px solid #fff}.tabs button span{position:relative}.tab-dot{min-width:18px;height:18px;font-size:.62rem;top:-2px;right:-10px}.pet-bubble{display:flex;gap:8px;align-items:center;background:#fff;border-radius:20px;padding:7px 12px 7px 7px;box-shadow:0 4px #2d22501a;text-align:left;color:#2d2250;position:relative}.pet-bubble>div{min-width:0;flex:1;overflow-wrap:anywhere}.pet-bubble b{display:block;font-size:.95rem;line-height:1.3}.pet-bubble small{display:block;font-size:.74rem;color:#7a7095;line-height:1.3;margin-top:1px}.pb-say{width:34px;height:34px;border-radius:12px;background:#f1eaff;display:grid;place-items:center;flex:none}.room-bubble{align-self:center;width:max-content;max-width:min(88%,100%);z-index:2}.room-bubble:after{content:"";position:absolute;bottom:-9px;left:50%;margin-left:-9px;border:9px solid transparent;border-top-color:#fff;border-bottom:0}.room-bubble.pop-in{animation:bubble-in .35s cubic-bezier(.2,1.4,.4,1)}@keyframes bubble-in{0%{transform:scale(.6);opacity:0}}.hearts-layer{position:absolute;inset:0;pointer-events:none;z-index:3}.fly-heart{position:absolute;bottom:40%;animation:heart-fly 1.7s ease-out both}@keyframes heart-fly{0%{transform:translate(0) scale(.3);opacity:0}15%{opacity:1;transform:translateY(-10px) scale(1.15)}to{transform:translate(var(--dx),-160px) scale(.8);opacity:0}}.food-fly{position:absolute;left:50%;bottom:120px;margin-left:-32px;animation:food-in 1.6s ease-out forwards;z-index:3}@keyframes food-in{0%{transform:translate(120px,-90px) scale(.5) rotate(-30deg);opacity:0}25%{opacity:1;transform:translate(0) scale(1) rotate(0)}70%{transform:scale(.85)}to{transform:scale(0);opacity:0}}.pet-home.mood-sad .pet-room .room-bg{filter:saturate(.5) brightness(.9)}.sad-card>div{min-width:0}.sad-card{display:flex;gap:12px;align-items:flex-start;background:linear-gradient(135deg,#eaf2ff,#f4eeff);color:#2d2250}.sad-card p{font-size:.88rem;margin:4px 0 8px}.pet-bars{display:grid;gap:10px}.vbar{display:flex;gap:10px;align-items:center}.vbar>div{flex:1}.vbar>div{min-width:0}.vbar-h{display:flex;flex-wrap:wrap;justify-content:space-between;gap:0 8px;font-size:.85rem}.vbar-h span{font-weight:900;color:var(--muted)}.vtrack{height:14px;border-radius:9px;background:var(--line);overflow:hidden;margin-top:3px}.vtrack i{display:block;height:100%;border-radius:9px;transition:width .6s}.vbar.happy .vtrack i{background:linear-gradient(90deg,#ffb3cc,#ff6f9b)}.vbar.energy .vtrack i{background:linear-gradient(90deg,#ffe08a,#ffa94d)}.mood-t{margin:0;font-weight:800;font-size:.85rem;color:var(--muted);display:flex;gap:6px;align-items:center}.pet-actions{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,9rem),1fr));gap:10px;margin:10px 0}.pet-actions .btn{margin:0;font-size:1rem;padding:14px 8px}.cnt{background:#ffffff4d;border-radius:99px;padding:1px 8px;font-size:.85rem}.pet-home .card h3,.growth h3{display:flex;align-items:center;gap:8px;margin:0 0 10px;font-size:1.05rem}.gr-bar{position:relative;display:grid;min-height:22px;border-radius:12px;background:var(--line);overflow:hidden}.gr-bar>*{grid-area:1/1}.gr-bar i{display:block;justify-self:start;align-self:stretch;background:linear-gradient(90deg,#a8ebc8,#3fbf92);border-radius:12px;transition:width .8s}.gr-bar span{place-self:center;padding:2px 6px;line-height:1.2;font-weight:900;font-size:.8rem;color:#2d2250}.gr-next{display:flex;gap:12px;align-items:center;margin-top:10px}.gr-next>div:last-child{min-width:0;flex:1}.gr-next p{margin:2px 0 0;font-size:.85rem;color:var(--muted)}.gr-next.legend{display:block;text-align:center}.gr-sil{position:relative;flex:none;background:var(--bg);border-radius:20px;padding:4px}.gr-sil span{position:absolute;inset:0;display:grid;place-items:center;font-weight:900;font-size:1.9rem;color:var(--primary)}.gr-how{display:flex;flex-wrap:wrap;gap:6px;margin-top:10px}.gr-how span{background:var(--bg);border-radius:99px;padding:4px 10px;font-size:.72rem;font-weight:800}.gr-how b{color:#2ead7b}.album{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,3.9rem),1fr));gap:6px}.alb{text-align:center;background:var(--bg);border-radius:16px;padding:4px 2px 6px}.alb.cur{box-shadow:inset 0 0 0 3px var(--primary)}.alb{min-width:0;overflow-wrap:anywhere}.alb b{display:block;font-size:.64rem;line-height:1.3}.alb small{font-size:.58rem;color:var(--muted);line-height:1.3;display:block}.alb-art svg{margin:0 auto;width:100%;height:auto;max-width:74px}.coll{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:10px}.coll>div{flex:1 1 11rem;min-width:0}.coll p{margin:0;font-size:.85rem}.coll .btn{flex:none}.wd-head{display:flex;gap:12px;align-items:center;padding:2px 0 10px}.wd-head>div{min-width:0;overflow-wrap:anywhere}.wd-head h2{margin:0;font-size:1.3rem}.wd-head small{color:var(--muted);font-weight:800}.wd-head .back{position:static;flex:none;width:44px;height:44px;border-radius:15px;background:var(--card);box-shadow:var(--shadow);font-size:1.7rem;font-weight:900;color:var(--primary);transform:none}.wd-preview{position:relative;height:260px;border-radius:26px;overflow:hidden;box-shadow:var(--shadow);background:#ffe9f1}.wd-tabs{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:4px;margin:12px 0 6px;background:var(--card);border-radius:18px;padding:5px;box-shadow:var(--shadow);position:sticky;top:64px;z-index:5}.wd-tabs button{display:flex;flex-direction:column;align-items:center;gap:1px;font-size:.64rem;font-weight:800;padding:6px 0;border-radius:14px;color:var(--muted);min-width:0;overflow-wrap:anywhere;text-align:center}.wd-tabs button.on{background:var(--primary);color:#fff}.wd-hint{margin:6px 2px 10px}.wd-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(min(100%,6.2rem),1fr));gap:10px;margin-bottom:12px}.wd-grid.rooms{grid-template-columns:repeat(auto-fill,minmax(min(100%,9rem),1fr))}.wd-item{position:relative;background:var(--card);border-radius:20px;padding:8px 4px;box-shadow:var(--shadow);display:flex;flex-direction:column;align-items:center;gap:4px;font-size:.74rem;font-weight:800;line-height:1.25;transition:transform .1s;min-width:0;overflow-wrap:anywhere;text-align:center}.wd-item:active{transform:scale(.95)}.wd-item.on{box-shadow:0 0 0 3px var(--primary),var(--shadow);background:color-mix(in srgb,var(--primary) 8%,var(--card))}.wd-item.locked{background:color-mix(in srgb,var(--card) 75%,var(--line));color:var(--muted)}.wd-item .tick{position:absolute;top:5px;right:5px;font-style:normal}.rare-dot{position:absolute;top:3px;left:9px;color:#ffb300;font-style:normal;font-size:1rem}.wd-item.rare:not(.locked){background:linear-gradient(160deg,#FFF8DC,var(--card))}.room-thumb{position:relative;border-radius:14px;overflow:hidden;box-shadow:inset 0 0 0 2px #0000000f;flex:none}.room-thumb svg{width:100%;height:100%;display:block}.pet-strip{display:flex;align-items:center;gap:4px;background:linear-gradient(135deg,#ffeaf3,#efe6ff);border-radius:26px;padding:6px 12px 8px 2px;box-shadow:var(--shadow);margin:10px 0 12px;position:relative;cursor:pointer;color:#2d2250}.ps-pet{flex:none;width:118px;height:118px}.ps-meta{overflow-wrap:anywhere}.ps-main{flex:1;min-width:0}.strip-bubble{margin-bottom:6px}.strip-bubble:before{content:"";position:absolute;left:-8px;top:50%;margin-top:-8px;border:8px solid transparent;border-right-color:#fff;border-left:0}.ps-meta{font-size:.8rem;color:#5b4b7a;padding-left:4px}.ps-gr{height:7px;border-radius:9px;background:#5b4b7a26;overflow:hidden;margin-top:4px}.ps-gr i{display:block;height:100%;background:linear-gradient(90deg,#a8ebc8,#3fbf92)}.gift-btn.small{position:absolute;top:-12px;right:-4px}.pet-strip.mood-sad{background:linear-gradient(135deg,#e6eeff,#eee8fa)}.pet-celebrate{display:flex;align-items:center;gap:6px;justify-content:center;margin:12px 0 6px;animation:up .5s}.pc-pet{flex:none}.pet-celebrate.ok .pc-pet{animation:pet-jump 1.1s ease-in-out infinite}@keyframes pet-jump{0%,to{transform:translateY(0)}40%{transform:translateY(-14px)}60%{transform:translateY(0) scale(1.05,.95)}}.pc-bubble{max-width:58%}.pc-bubble:before{content:"";position:absolute;left:-8px;top:50%;margin-top:-8px;border:8px solid transparent;border-right-color:#fff;border-left:0}.res-gift{display:flex;align-items:center;gap:10px;background:linear-gradient(135deg,#ffeaf3,#fff6d6);border-radius:22px;padding:10px 12px;box-shadow:var(--shadow);margin:8px 0;text-align:left;animation:up .6s;color:#2d2250}.res-gift.rare{background:linear-gradient(135deg,#efe6ff,#fff3c4);box-shadow:0 0 0 3px #ffd45e,var(--shadow)}.res-gift>div{flex:1;min-width:0;overflow-wrap:anywhere}.res-gift{flex-wrap:wrap}.res-gift small{display:block;color:#7a7095;font-size:.8rem}.res-gift .rg-box{flex:none;animation:gift-wobble 1.4s ease-in-out infinite}.gp-gain{font-weight:900;color:#2ead7b;margin:4px 0}.unlock-t{margin:4px 0}.res-pet{display:flex;justify-content:center}.pet-ov{flex-direction:column;background:radial-gradient(circle at 50% 40%,#6240aaf2,#1c1238fb);color:#fff;text-align:center;overflow:hidden}.pet-ov .kicker{color:#ffe08a}.gift-ov{position:relative;width:100%;max-width:420px;display:flex;flex-direction:column;align-items:center}.gift-ov .kicker{font-size:1.1rem}.gift-sub{opacity:.85;font-weight:700}.gift-wrap{margin:22px 0 4px;animation:gift-wobble 1.4s ease-in-out infinite;position:relative;z-index:2}.gift-rays,.evo-rays{position:absolute;left:50%;border-radius:50%;opacity:0;transition:opacity .6s;animation:spin 16s linear infinite;background:repeating-conic-gradient(rgba(255,240,180,.3) 0 9deg,transparent 9deg 18deg);-webkit-mask:radial-gradient(circle,#000 25%,transparent 68%);mask:radial-gradient(circle,#000 25%,transparent 68%);pointer-events:none}.gift-rays{top:170px;width:560px;height:560px;margin:-280px 0 0 -280px}.opening .gift-wrap{animation:gift-shake .11s linear infinite}.opened .gift-wrap{animation:none;height:60px;margin:0;pointer-events:none}.gift-svg .gift-lid,.gift-svg .gift-box{transform-box:fill-box;transform-origin:50% 100%;transition:transform .7s cubic-bezier(.2,1.2,.4,1),opacity .6s}.opened .gift-svg .gift-lid{transform:translate(40px,-150px) rotate(40deg);opacity:0}.opened .gift-svg .gift-box{transform:scale(.4) translateY(60px);opacity:0}.opened .gift-rays,.e3 .evo-rays{opacity:1}.gift-hint{opacity:.8;font-size:.85rem}.opened .gift-hint{display:none}.gift-items{display:none;flex-wrap:wrap;justify-content:center;gap:10px;position:relative;z-index:3}.opened .gift-items{display:flex}.gi{background:#fff;color:#2d2250;border-radius:22px;padding:12px 8px 8px;width:118px;display:flex;flex-direction:column;align-items:center;box-shadow:0 8px 24px #00000047;animation:gi-pop .6s var(--d) both cubic-bezier(.2,1.5,.4,1);position:relative}.gi{overflow-wrap:anywhere;text-align:center}.gi b{font-size:.82rem;line-height:1.25}.gi small{font-size:.7rem;color:#7a7095}.gi-coin{display:grid;place-items:center;height:78px}.gi.rare{background:linear-gradient(160deg,#fff8d6,#f3e9ff);box-shadow:0 0 0 3px #ffd45e,0 0 28px #ffd45ed9}.rare-tag{position:absolute;top:-10px;background:linear-gradient(90deg,#ffb300,#ff6f91);color:#fff;font-style:normal;font-weight:900;font-size:.65rem;padding:2px 9px;border-radius:99px;letter-spacing:.08em}@keyframes gi-pop{0%{transform:translateY(70px) scale(.2);opacity:0}to{transform:none;opacity:1}}.gift-done{display:none;width:100%;gap:6px;flex-direction:column;margin-top:18px}.opened .gift-done{display:flex;animation:fade .4s .9s both}.pet-ov .btn.ghost{background:#ffffff24;color:#fff;box-shadow:inset 0 0 0 2px #fff6}@keyframes gift-wobble{0%,60%,to{transform:rotate(0)}70%{transform:rotate(-8deg)}80%{transform:rotate(7deg)}90%{transform:rotate(-4deg)}}@keyframes gift-shake{0%{transform:translate(0) rotate(0)}25%{transform:translate(-5px,1px) rotate(-6deg)}75%{transform:translate(5px,-1px) rotate(6deg)}}@keyframes flash{0%{opacity:0}30%{opacity:1}to{opacity:0}}.evo{position:relative;width:100%;max-width:440px;min-height:540px;display:flex;flex-direction:column;align-items:center;justify-content:center}.evo-t1{font-weight:900;font-size:1.25rem;transition:opacity .4s;margin:0 0 6px}.evo-stage{position:relative;width:260px;height:260px;z-index:2}.evo-old,.evo-new{position:absolute;inset:0;display:grid;place-items:center}.evo-new{opacity:0}.evo-glow{position:absolute;left:50%;top:50%;width:320px;height:320px;margin:-160px;border-radius:50%;background:radial-gradient(circle,rgba(255,255,255,.95),rgba(255,214,246,.45) 40%,transparent 70%);transform:scale(.3);opacity:0;transition:transform 3s ease-in,opacity 1s;pointer-events:none}.evo-rays{top:50%;width:760px;height:760px;margin:-380px 0 0 -380px}.evo-flash,.hatch-flash{position:fixed;inset:0;background:#fff;opacity:0;pointer-events:none;z-index:5}.evo-reveal{opacity:0;pointer-events:none;transform:translateY(20px);transition:.5s;position:relative;z-index:3}.evo-reveal h2{font-size:1.9rem;color:#ffe08a;margin:4px 0}.e0 .evo-old{animation:pet-jump 1s ease-in-out infinite}.e1 .evo-t1,.e2 .evo-t1{opacity:0}.e1 .evo-glow{opacity:1;transform:scale(1.25)}.e2 .evo-glow{opacity:1;transform:scale(2.2)}.e1 .pet-svg,.e2 .pet-svg{filter:brightness(0) invert(1) drop-shadow(0 0 14px #fff)}.e1 .evo-old{animation:evo-a 3s linear forwards}.e1 .evo-new{animation:evo-b 3s linear forwards}@keyframes evo-a{0%,18%{opacity:1}19%,32%{opacity:0}33%,44%{opacity:1}45%,54%{opacity:0}55%,62%{opacity:1}63%,69%{opacity:0}70%,75%{opacity:1}76%,80%{opacity:0}81%,84%{opacity:1}85%,88%{opacity:0}89%,91%{opacity:1}92%,to{opacity:0}}@keyframes evo-b{0%,18%{opacity:0}19%,32%{opacity:1}33%,44%{opacity:0}45%,54%{opacity:1}55%,62%{opacity:0}63%,69%{opacity:1}70%,75%{opacity:0}76%,80%{opacity:1}81%,84%{opacity:0}85%,88%{opacity:1}89%,91%{opacity:0}92%,to{opacity:1}}.e2 .evo-old{opacity:0}.e2 .evo-new{opacity:1}.e2 .evo-flash{animation:flash .9s forwards}.e3 .evo-old,.e3 .evo-t1{display:none}.e3 .evo-new{opacity:1;animation:evo-pop .9s cubic-bezier(.2,1.5,.4,1) both}.e3 .evo-glow{opacity:.55;transform:scale(1.5)}.e3 .evo-reveal{opacity:1;pointer-events:auto;transform:none}@keyframes evo-pop{0%{transform:scale(.5)}to{transform:scale(1)}}.hatch{position:relative;width:100%;max-width:420px;min-height:500px;display:flex;flex-direction:column;align-items:center;justify-content:center}.hatch-glow{position:absolute;width:340px;height:340px;border-radius:50%;background:radial-gradient(circle,rgba(255,240,200,.7),transparent 70%);top:50%;left:50%;margin:-210px 0 0 -170px;pointer-events:none}.hatch-egg{position:relative;animation:egg-wobble 1.2s ease-in-out infinite;transform-origin:50% 90%;z-index:2}@keyframes egg-wobble{0%,50%,to{transform:rotate(0)}65%{transform:rotate(-7deg)}80%{transform:rotate(6deg)}}@keyframes egg-shake{25%{transform:translate(-4px) rotate(-4deg)}75%{transform:translate(4px) rotate(4deg)}}.p1 .hatch-egg{animation:egg-wobble .55s ease-in-out infinite}.p2 .hatch-egg{animation:egg-shake .12s linear infinite}.p1 .ck1,.p2 .ck1,.p2 .ck2,.p3 .ck1,.p3 .ck2{opacity:1}.hatch-baby{position:absolute;opacity:0;transform:scale(.4);z-index:2}.p3 .hatch-flash{animation:flash .8s forwards}.p3 .hatch-egg{opacity:0;transition:opacity .2s .25s}.p4 .hatch-egg{display:none}.p4 .hatch-baby{position:relative;opacity:1;transform:none;transition:transform .7s cubic-bezier(.2,1.6,.4,1),opacity .3s}.hatch-end{display:none;position:relative;z-index:3}.p4 .hatch-end{display:block;animation:up .5s .3s both}.p4 .hatch-txt{display:none}.hatch-end h2{color:#ffe08a;margin:4px 0}.comeback{text-align:center}.cb-pet{display:flex;justify-content:center;animation:pet-jump 1s ease-in-out infinite}.comeback small{display:block;color:var(--muted)}.adopt{max-width:560px;margin:0 auto;padding-top:22px;padding-bottom:40px}.adopt-head{text-align:center}.adopt-head h1{font-size:2rem;color:var(--primary);margin:2px 0}.adopt-head p{margin:4px 0}.adopt-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin:14px 0}.adopt-card{background:var(--card);border-radius:26px;padding:6px 8px 12px;box-shadow:var(--shadow);display:flex;flex-direction:column;align-items:center;transition:transform .15s,box-shadow .15s;color:var(--ink)}.adopt-card.on{box-shadow:0 0 0 4px var(--primary),var(--shadow);transform:translateY(-4px)}.adopt-card b{font-size:1.1rem}.adopt-card small{color:var(--muted);font-size:.8rem}.ac-art{background:radial-gradient(circle at 50% 62%,#FFEAF3 0,transparent 70%);border-radius:20px}.adopt-name{background:var(--card);border-radius:24px;padding:14px;box-shadow:var(--shadow);transition:opacity .2s}.adopt-name.dim{opacity:.5}.adopt-name label{font-weight:900}.name-row{display:flex;gap:8px;margin:8px 0}.name-row input{flex:1;min-width:0;padding:14px;border-radius:16px;border:3px solid var(--line);font:inherit;font-size:1.1rem;font-weight:800;background:var(--bg);color:var(--ink)}.icon-btn{width:54px;flex:none;border-radius:16px;background:color-mix(in srgb,var(--primary) 14%,transparent);display:grid;place-items:center}.v3-banner{display:flex;gap:10px;align-items:flex-start;background:linear-gradient(135deg,#fff3c4,#ffe0ee);border-radius:22px;padding:12px;margin-bottom:10px;color:#4a2a50;text-align:left}.v3-banner p{margin:4px 0 0;font-size:.85rem}.adopt-go{margin-top:14px}.shop-group{padding:0 4px}.shop-group>b{display:flex;gap:6px;align-items:center;font-size:.85rem;color:var(--muted);margin-top:8px}.pitem.rare .price{background:linear-gradient(90deg,#fff3c4,#ffe0ee)}.rare-l{color:#b86e00}.sitem .have{font-size:.7rem;color:var(--muted);font-weight:800}.shop-av.pet{background:radial-gradient(circle,#FFEAF3 0,transparent 70%);border-radius:30px}.buy-room{position:relative;width:250px;height:190px;border-radius:20px;overflow:hidden;margin:0 auto}.buy-toy{display:flex;align-items:flex-end;justify-content:center}.buy-pet .big-art{display:flex;justify-content:center}.en-name{margin:-6px 0 4px;color:var(--muted);font-style:italic}.food-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(min(100%,5.6rem),1fr));gap:8px;margin:10px 0}.food-it{background:var(--bg);border-radius:18px;padding:8px 4px;display:flex;flex-direction:column;align-items:center;color:var(--ink)}.food-it{min-width:0;overflow-wrap:anywhere;text-align:center}.food-it b{font-size:.8rem}.food-it small{font-size:.68rem;color:var(--muted)}.dark{--ink:#F2E6CC;--muted:#B5A27E;--card:#231A13;--line:#3E2E20;--good:#5BAA5E;--bad:#C8323E;--shadow:0 4px 0 rgba(0,0,0,.45),0 10px 22px rgba(0,0,0,.35)}html.dark,html.dark body{background:var(--bg) radial-gradient(ellipse at 50% -10%,#3A2414 0,transparent 60%) fixed}h1,h2,h3,.brand,.sec-t,.barrio-h b,.node-t,.kicker{font-family:Palatino,Palatino Linotype,Book Antiqua,Georgia,Times New Roman,serif;letter-spacing:.01em}.dark .card,.dark .continue,.dark .talk-cta,.dark .link-row,.dark .hour-b,.dark .stat{border:1px solid #4A3626;background-image:linear-gradient(180deg,rgba(255,220,160,.05),transparent 40%)}.dark .btn{box-shadow:0 4px #00000080,inset 0 0 0 1px #ffdca040;text-shadow:0 1px 0 rgba(0,0,0,.35)}.dark .btn.ghost{background:transparent;color:var(--accent);box-shadow:inset 0 0 0 2px var(--accent)}.dark .chip{color:var(--accent);background:#c9962e24}.dark .tabs{background:#17110c;border-top:1px solid #4A3626;box-shadow:0 -6px 24px #0009}.dark .tabs button.on{color:var(--accent)}.dark .topbar{background:color-mix(in srgb,var(--bg) 90%,transparent);padding-top:calc(10px + env(safe-area-inset-top))}.dark .xpbar i{background:linear-gradient(90deg,#8a1e22,#e8b64a)}.brand span{color:var(--accent)}.welcome{padding-top:calc(24px + env(safe-area-inset-top))}.player,.full{padding-top:max(12px,env(safe-area-inset-top))}.view{padding-left:max(14px,env(safe-area-inset-left));padding-right:max(14px,env(safe-area-inset-right))}.fmap-card{padding:8px;background:#0e1820!important}.fmap{width:100%;height:auto;display:block;border-radius:16px}.fmap .fm-l{font:700 11px Palatino,Georgia,serif;fill:#2a1a10;paint-order:stroke;stroke:#f2e2b8;stroke-width:3px}.fmap .fm-n{font:900 9px system-ui,sans-serif;fill:#f2e2b8}.fmap .fm-pin{cursor:pointer}.fmap .fm-pin:not(.on):not(.here){opacity:.8}.fmap .fm-pulse{fill:#e8b64a59;transform-box:fill-box;transform-origin:center;animation:fm-p 1.8s ease-out infinite}@keyframes fm-p{0%{transform:scale(.6);opacity:1}to{transform:scale(1.7);opacity:0}}.fmap .fm-trail{animation:fm-d 1.2s linear infinite}@keyframes fm-d{to{stroke-dashoffset:-13}}.barrio{scroll-margin-top:80px}.dark .barrio-h,.dark .continue,.dark .node:not(.locked){filter:saturate(.7) brightness(.82)}.dark .node.locked{filter:brightness(.55) sepia(.4)}.view{padding-bottom:calc(130px + env(safe-area-inset-bottom))}.map-end{white-space:normal!important;max-width:100%;text-align:center}.gender-pick{display:grid;grid-template-columns:repeat(3,1fr);gap:8px;margin:10px 0}.g-opt{display:flex;flex-direction:column;align-items:center;gap:4px;padding:8px 4px;border-radius:16px;background:var(--card);border:2px solid var(--line);font-weight:800;line-height:1.15;text-align:center;min-width:0}.g-opt small{font-size:.72rem;overflow-wrap:anywhere}.g-opt.on{border-color:var(--accent);box-shadow:0 0 0 3px #e8b64a40}.wel-g{margin-top:14px}.sec-t,.page-h h1,.shop-h h1{position:relative;display:inline-flex;align-items:center;gap:8px;background:linear-gradient(180deg,#f2e2b8,#d9be8a);color:#3a2414!important;padding:6px 22px;border-radius:4px;clip-path:polygon(0 0,100% 0,95% 50%,100% 100%,0 100%,5% 50%);text-shadow:none;max-width:100%;flex-wrap:wrap}.card h3{border-bottom:1px dashed var(--line);padding-bottom:6px}.g-opt .avatar{margin-bottom:12px;flex:none}.g-opt small{position:relative;z-index:1}
