:root{--pink:#ff76a5;--pink-deep:#e8447f;--pink-soft:#ffd0e0;--cream:#fff4e2;--rex-red:#e8394f;--rex-red-dark:#8e1b2c;--sun:#ffd166;--ink:#5a2338;--enter-dur:1.5s;--highfive-dur:.52s;--exit-dur:.62s;--font-display:"Prompt", system-ui, sans-serif;--font-body:"Prompt", system-ui, sans-serif;--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;font-family:var(--font-body);-webkit-text-size-adjust:100%;-webkit-font-smoothing:antialiased;font-weight:600}*,:before,:after{box-sizing:border-box;margin:0;padding:0}html,body,#root{height:100%}body{background:var(--pink);color:var(--ink);overscroll-behavior:none;-webkit-touch-callout:none;-webkit-user-select:none;user-select:none;-webkit-tap-highlight-color:transparent;overflow:hidden}#root{width:100vw;height:100dvh;position:relative;overflow:hidden}img{-webkit-user-drag:none;-webkit-user-select:none;user-select:none;max-width:100%;display:block}button{font:inherit;color:inherit;cursor:pointer;touch-action:manipulation;background:0 0;border:none}.gate{background:radial-gradient(120% 90% at 50% 0,#ffa3c4 0%,#ff76a5 45%,#f0578f 100%);place-items:center;padding:24px;display:grid;position:absolute;inset:0}.gate__card{text-align:center;max-width:26rem;color:var(--ink);background:#fffffff0;border-radius:28px;padding:2.6rem 2rem;box-shadow:0 18px 40px #8c163e47}.gate__emoji{font-size:3.4rem;line-height:1}.gate__emoji--spin{animation:2.4s ease-in-out infinite gate-spin}.gate__card h1{font-family:var(--font-display);color:var(--pink-deep);margin:.45em 0 .3em;font-size:clamp(1.6rem,6vw,2.2rem)}.gate__lead{margin-bottom:.7em;font-size:1.15rem}.gate__note{opacity:.7;font-size:1rem;line-height:1.7}@keyframes gate-spin{0%,60%,to{transform:rotate(0)}75%{transform:rotate(-90deg)}90%{transform:rotate(-90deg)}}@media (prefers-reduced-motion:reduce){.gate__emoji--spin{animation:none}}.land{background:#079fe9;place-items:center;display:grid;position:absolute;inset:0;overflow:hidden}.land__frame{flex:none;width:max(112vw,199.111dvh);height:max(63vw,112dvh);position:relative}.map-art{width:100%;height:100%;display:block}.map-art__image{object-fit:fill;width:100%;height:100%}.map-ambience,.water-motion,.world-scenery,.character-layers{pointer-events:none;width:100%;height:100%;position:absolute;inset:0}.map-ambience{z-index:1;contain:strict;overflow:hidden}.water-motion{z-index:1}.world-scenery{z-index:2}.character-layers{z-index:3}.world-scenery__image{transform-origin:50% 72%;height:auto;animation:world-scenery-breathe 3.8s var(--scenery-delay) ease-in-out infinite alternate;will-change:transform;position:absolute}.map-sprite,.map-character{position:absolute}.map-sprite{transform-origin:50% 88%;will-change:transform;height:auto}.map-character{isolation:isolate;height:auto;display:block}.map-character__art{z-index:1;transform-origin:50% 88%;will-change:transform;width:100%;height:auto;display:block;position:relative}.character-shadow{z-index:0;opacity:.42;filter:blur(1.4px);width:64%;height:13%;position:absolute;bottom:4%;left:18%;overflow:visible}.character-shadow ellipse{fill:#233653}.map-sprite--breathe{animation:creature-breathe 3.1s var(--layer-delay) ease-in-out infinite}.map-sprite--bob{animation:creature-bob 3.8s var(--layer-delay) ease-in-out infinite}.map-sprite--nest{animation:nest-warmth 4.2s var(--layer-delay) ease-in-out infinite}.water-glints path{fill:none;stroke:#fffffff2;stroke-width:5px;stroke-linecap:round;transform-box:fill-box;transform-origin:50%;animation:2.8s ease-in-out infinite glint-twinkle}.water-glints path:nth-child(2){animation-delay:-.6s}.water-glints path:nth-child(3){animation-delay:-1.4s}.water-glints path:nth-child(4){animation-delay:-2s}.water-glints path:nth-child(5){animation-delay:-2.5s}.cloud-layer{z-index:4;will-change:transform;width:100%;height:100%;display:block;position:absolute;inset:0}.cloud-layer img{width:100%;height:100%}.cloud-layer--one{clip-path:inset(0 48% 0 0);animation:16s ease-in-out infinite alternate cloud-drift-left}.cloud-layer--two{clip-path:inset(0 0 0 48%);animation:19s ease-in-out -5s infinite alternate cloud-drift-right}@keyframes creature-breathe{0%,to{transform:translate(0,0)scale(1)}50%{transform:translateY(-.35%)scale(1.008,1.018)}}@keyframes creature-bob{0%,to{transform:translate(0,0)rotate(-.35deg)}48%{transform:translateY(-.9%)rotate(.55deg)}58%{transform:translateY(-.9%)rotate(.4deg)}}@keyframes nest-warmth{0%,76%,to{filter:brightness();transform:scale(1)}84%{filter:brightness(1.08);transform:scale(1.025)}92%{filter:brightness(1.02);transform:scale(.995)}}@keyframes glint-twinkle{0%,to{opacity:0;transform:scale(.35)rotate(0)}48%{opacity:1;transform:scale(1)rotate(45deg)}64%{opacity:.55;transform:scale(.72)rotate(60deg)}}@keyframes world-scenery-breathe{0%{transform:translate(0,0)rotate(-.35deg)}to{transform:translateY(-1.2%)rotate(.45deg)}}@keyframes cloud-drift-left{0%{transform:translate(-1.3%)}to{transform:translate(1.7%,.6%)}}@keyframes cloud-drift-right{0%{transform:translate(1.5%,.3%)}to{transform:translate(-1.8%,-.4%)}}.biome-particles{z-index:3;pointer-events:none;position:absolute;overflow:hidden}.biome-particles i{animation-iteration-count:infinite;display:block;position:absolute}.biome-particles--snow{width:34%;height:31%;top:2%;left:10%}.biome-particles--snow i{left:calc(5% + var(--i) * 7.5%);aspect-ratio:1;opacity:.85;width:clamp(2px,.35vw,5px);animation:snow-fall calc(4s + (var(--i) % 4) * .7s) calc(var(--i) * -.45s) linear infinite;background:#fff;border-radius:50%;top:-8%}.biome-particles--dust{width:34%;height:25%;top:5%;left:43%}.biome-particles--dust i{left:-6%;top:calc(6% + var(--i) * 10.5%);width:clamp(4px,.55vw,8px);height:2px;animation:dust-drift calc(5s + (var(--i) % 3) * .8s) calc(var(--i) * -.6s) linear infinite;background:#ffde9dbf;border-radius:999px}.biome-particles--embers{width:39%;height:32%;top:64%;left:39%}.biome-particles--embers i{left:calc(5% + var(--i) * 10.5%);aspect-ratio:1;width:clamp(2px,.3vw,4px);animation:ember-rise calc(3.7s + (var(--i) % 4) * .5s) calc(var(--i) * -.5s) ease-out infinite;background:#ff8a2d;border-radius:50%;bottom:-5%;box-shadow:0 0 5px #ff4c18}@keyframes snow-fall{to{opacity:.2;transform:translate(22px,220px)}}@keyframes dust-drift{to{opacity:0;transform:translate(380px,-10px)}}@keyframes ember-rise{0%{opacity:0;transform:translate(0,0)scale(.5)}25%{opacity:.85}to{opacity:0;transform:translate(14px,-150px)scale(1)}}@media (prefers-reduced-motion:reduce){.map-ambience{display:none}}.descend{background:#d8f1ff;position:absolute;inset:0;overflow:hidden}.descend__world{transform-origin:50% 62%;animation:1.5s cubic-bezier(.25,.48,.3,1) both world-settle;position:absolute;inset:0}@keyframes world-settle{0%{transform:scale(1.3)}to{transform:scale(1)}}.descend__clouds{transform-origin:50%;animation:1.5s cubic-bezier(.22,.7,.3,1) both clouds-pullback;position:absolute;inset:0}@keyframes clouds-pullback{0%{transform:scale(2.4)}17%{transform:scale(1.72)}to{transform:scale(1.02)}}.bank{filter:drop-shadow(0 6px 14px #5485b247);width:74%;height:116%;position:absolute;top:-8%}.bank--l{animation:1.5s cubic-bezier(.5,0,.28,1) both bank-part-l;left:-22%}.bank--r{animation:1.5s cubic-bezier(.5,0,.28,1) both bank-part-r;right:-22%}.bank__body{background:#fff;position:absolute;inset:0}.bank__lump{top:var(--y);width:var(--d);height:var(--d);background:#fff;border-radius:50%;position:absolute}.bank--l .bank__lump{right:0;transform:translate(50%,-50%)}.bank--r .bank__lump{left:0;transform:translate(-50%,-50%)}@keyframes bank-part-l{0%,17%{transform:translate(-2%)}to{transform:translate(-104%)}}@keyframes bank-part-r{0%,17%{transform:translate(2%)}to{transform:translate(104%)}}.wisp{left:var(--x);top:var(--y);width:var(--d);height:var(--d);filter:blur(2px);opacity:0;animation:wisp-rush .98s var(--delay) cubic-bezier(.35, 0, .6, 1) both;background:#ffffffeb;border-radius:50%;position:absolute}@keyframes wisp-rush{0%{opacity:0;transform:translate(0,0)scale(.45)}22%{opacity:.95}to{transform:translate3d(var(--dx), var(--dy), 0) scale(2.4);opacity:0}}.descend__haze{background:#fff;animation:.9s cubic-bezier(.4,0,.5,1) both haze-clear;position:absolute;inset:0}@keyframes haze-clear{0%{opacity:1}30%{opacity:.86}to{opacity:0}}@media (prefers-reduced-motion:reduce){.descend__world,.descend__clouds,.wisp,.bank--l,.bank--r{animation-duration:.01ms}.descend__haze{animation:.4s linear both haze-clear}}.pretest{--forest:#097f73;--forest-dark:#07584f;--sky:#23b9ec;--sun:#ffdd4f;--berry:#ed3f76;--ink:#542338;z-index:40;padding:max(2dvh, env(safe-area-inset-top)) max(3vw, env(safe-area-inset-right)) max(2dvh, env(safe-area-inset-bottom)) max(3vw, env(safe-area-inset-left));isolation:isolate;grid-template-columns:minmax(9rem,31%) minmax(0,1fr);align-items:end;gap:clamp(.75rem,3vw,2.5rem);display:grid;position:absolute;inset:0;overflow:hidden}.pretest__shade{z-index:-4;-webkit-backdrop-filter:blur(3px)saturate(1.18);backdrop-filter:blur(3px)saturate(1.18);background:#07729f80;animation:.24s ease-out both pretest-shade-in;position:absolute;inset:0}.pretest__shade:after{content:"";background:linear-gradient(#074b770f 0 58%,#04594e47 100%),radial-gradient(at 72% 110%,#1086648f 0 25%,#0000 26%),radial-gradient(at 24% 108%,#0d775d7a 0 25%,#0000 26%);position:absolute;inset:0}.pretest__canopy{z-index:-2;pointer-events:none;position:absolute;inset:0;overflow:hidden}.pretest__canopy i{aspect-ratio:1.6;transform-origin:0;background:#19a66f;border-radius:70% 18% 70% 20%;width:clamp(5rem,13vw,11rem);animation:4.8s ease-in-out infinite alternate canopy-sway;position:absolute;box-shadow:inset -10px -8px #04624838}.pretest__canopy i:first-child{top:-4%;left:-4%;transform:rotate(18deg)}.pretest__canopy i:nth-child(2){background:#36bd65;animation-delay:-1.3s;top:-10%;left:6%;transform:rotate(54deg)}.pretest__canopy i:nth-child(3){background:#0d9568;animation-delay:-2.6s;top:-3%;right:-5%;transform:scaleX(-1)rotate(14deg)}.pretest__canopy i:nth-child(4){background:#58ca65;animation-delay:-3.4s;top:-11%;right:7%;transform:scaleX(-1)rotate(48deg)}.pretest__mascot-wrap{transform-origin:50% 100%;place-self:end center;width:min(29vw,48dvh);height:min(90dvh,39rem);animation:.68s cubic-bezier(.16,.86,.28,1) 80ms both rex-jump-in;position:relative}.pretest__mascot{object-fit:contain;object-position:center bottom;filter:drop-shadow(0 7px 1px #0c43543d);transform-origin:50% 92%;width:100%;height:100%;animation:2.8s ease-in-out .9s infinite rex-breathe}.pretest__mascot-shadow{filter:blur(3px);background:#0543464d;border-radius:50%;height:5%;animation:.68s ease-out 80ms both rex-shadow-in;position:absolute;bottom:0;left:16%;right:8%}.pretest__panel{width:min(100%,55rem);min-width:0;max-height:96dvh;color:var(--ink);align-self:center;animation:.42s cubic-bezier(.22,1,.36,1) .28s both pretest-panel-in;overflow:visible}.pretest-hello,.pretest-result,.pretest-quiz{flex-direction:column;justify-content:center;min-height:min(82dvh,34rem);display:flex}.pretest-speech{color:var(--ink);border:4px solid var(--ink);background:#fff;border-radius:14px;position:relative;box-shadow:7px 8px #054d584d}.pretest-speech:before{content:"";background:var(--ink);clip-path:polygon(100% 0,100% 100%,0 74%);width:32px;height:34px;position:absolute;bottom:26%;left:-29px}.pretest-speech:after{content:"";clip-path:polygon(100% 0,100% 100%,0 72%);background:#fff;width:24px;height:25px;position:absolute;bottom:calc(26% + 5px);left:-20px}.pretest-speech--hello{width:min(100%,46rem);padding:clamp(1rem,4dvh,2.25rem) clamp(1.1rem,3vw,2.5rem)}.pretest-speech__who{color:var(--berry);margin-bottom:.18rem;font-size:clamp(.72rem,1.8dvh,.9rem);font-weight:900;display:block}.pretest h1{color:var(--ink);font-family:var(--font-display);letter-spacing:-.025em;text-wrap:balance;font-size:clamp(1.45rem,5dvh,2.8rem);font-weight:900;line-height:1.12}.pretest-speech--hello p,.pretest-speech--result p{color:#674253;text-wrap:pretty;max-width:58ch;margin-top:clamp(.35rem,1.2dvh,.65rem);font-size:clamp(.78rem,2.3dvh,1.08rem);font-weight:650;line-height:1.48}.pretest__promise{color:#177386;border-top:2px solid #d9e9ed;margin-top:clamp(.6rem,2dvh,1rem);padding-top:clamp(.5rem,1.6dvh,.8rem);font-size:clamp(.67rem,1.8dvh,.88rem);font-weight:850}.pretest__primary{color:#fff;min-height:clamp(2.8rem,8.5dvh,4rem);font-family:var(--font-body);background:var(--berry);border:3px solid #fff;border-radius:14px;align-self:flex-start;margin-top:clamp(.9rem,2.5dvh,1.4rem);padding:.5rem clamp(1.25rem,3vw,2.15rem);font-size:clamp(.9rem,2.7dvh,1.2rem);font-weight:900;transition:transform .15s,box-shadow .15s,background-color .15s;box-shadow:0 6px #9b204d}.pretest__primary:hover{background:#f24c82}.pretest__primary:focus-visible{outline:4px solid var(--sun);outline-offset:4px}.pretest__primary:active{transform:translateY(5px);box-shadow:0 1px #9b204d}.pretest-progress{color:#fff;text-shadow:0 2px #04465659;align-items:center;gap:clamp(.45rem,1.2vw,.9rem);min-height:2.4rem;margin-bottom:clamp(.45rem,1.5dvh,.8rem);display:flex}.pretest-progress__label{flex:1;font-size:clamp(.68rem,1.8dvh,.88rem);font-weight:900}.pretest-progress strong{text-align:right;min-width:3rem;font-size:clamp(.7rem,2dvh,.95rem)}.pretest-progress__trail{justify-content:center;align-items:center;gap:clamp(.35rem,.8vw,.65rem);display:flex}.pretest-progress__trail>span{aspect-ratio:.82;width:clamp(.7rem,2.4dvh,1.05rem);transform:rotate(calc(-16deg + var(--trail-angle,0deg)));background:#ffffff61;border-radius:52% 48% 45% 55%;transition:transform .18s,background-color .18s;display:block;position:relative}.pretest-progress__trail>span:nth-child(2n){--trail-angle:30deg}.pretest-progress__trail>span>i{aspect-ratio:1;background:inherit;border-radius:50%;width:37%;position:absolute;top:-28%}.pretest-progress__trail>span>i:first-child{left:-8%}.pretest-progress__trail>span>i:nth-child(2){top:-42%;left:32%}.pretest-progress__trail>span>i:nth-child(3){right:-8%}.pretest-progress__trail>span.is-done{background:#fff}.pretest-progress__trail>span.is-current{background:var(--sun);transform:rotate(calc(-16deg + var(--trail-angle,0deg))) scale(1.3)}.pretest-speech--question{grid-template-columns:clamp(3.4rem,10dvh,5rem) minmax(0,1fr);align-items:center;gap:clamp(.7rem,1.6vw,1.2rem);min-height:clamp(7.4rem,27dvh,11rem);padding:clamp(.75rem,2.5dvh,1.35rem) clamp(.8rem,2.4vw,1.8rem);display:grid}.pretest-question__badge{z-index:1;aspect-ratio:1;color:#086c77;font-family:var(--font-display);background:var(--sun);border:3px solid var(--ink);border-radius:50% 45% 52% 48%;place-items:center;font-size:clamp(1.35rem,5dvh,2.35rem);font-weight:900;display:grid;position:relative;transform:rotate(-4deg)}.pretest-question__copy{min-width:0}.pretest-question__copy small{color:#0a7882;font-size:clamp(.65rem,1.7dvh,.82rem);font-weight:900;display:block}.pretest-question__copy h2{color:var(--ink);font-family:var(--font-display);letter-spacing:-.02em;text-wrap:balance;margin-top:.08rem;font-size:clamp(1rem,3.7dvh,1.8rem);font-weight:900;line-height:1.26}.pretest-question__copy p{color:#765666;margin-top:.18rem;font-size:clamp(.65rem,1.7dvh,.82rem);font-weight:650}.pretest-options{gap:clamp(.5rem,1.2vw,.9rem);margin-top:clamp(.8rem,2.4dvh,1.25rem);display:flex}.pretest-options button{--answer-top:#fff;--answer-bottom:#cce9ec;border:3px solid var(--ink);min-width:0;min-height:clamp(3.7rem,13dvh,5.7rem);color:var(--ink);background:var(--answer-top);box-shadow:0 7px 0 var(--answer-bottom);transform:translateY(0) rotate(var(--tilt));border-radius:12px 12px 16px 16px;flex:1 1 0;justify-content:center;align-items:center;padding:.55rem clamp(.5rem,1.4vw,1rem);transition:transform .15s,box-shadow .15s,background-color .15s;display:flex;position:relative}.pretest-options button:first-child{--tilt:-1.5deg;--answer-bottom:#83d6a5}.pretest-options button:nth-child(2){--tilt:1deg;--answer-bottom:#73cbea}.pretest-options button:nth-child(3){--tilt:-.5deg;--answer-bottom:#f3a7c0}.pretest-options button strong{z-index:1;font-family:var(--font-body);font-size:clamp(1rem,3.5dvh,1.65rem);font-weight:900;line-height:1.1;position:relative}.pretest-option__leaf{aspect-ratio:.65;background:var(--answer-bottom);opacity:.75;border-radius:80% 10%;width:clamp(.5rem,1.8dvh,.85rem);position:absolute;top:13%;left:7%;transform:rotate(-24deg)}.pretest-option__feedback{aspect-ratio:1;color:#fff;background:var(--forest);border:3px solid #fff;border-radius:50%;place-items:center;width:clamp(1.7rem,5.3dvh,2.35rem);font-size:1.15rem;font-style:normal;display:none;position:absolute;top:-.65rem;right:-.5rem}.pretest-options button:hover:not(:disabled){transform:translateY(-3px) rotate(var(--tilt))}.pretest-options button:focus-visible{outline:4px solid var(--sun);outline-offset:4px}.pretest-options button:active:not(:disabled){transform:translateY(6px) rotate(var(--tilt));box-shadow:0 1px 0 var(--answer-bottom)}.pretest-options button:disabled{opacity:.62}.pretest-options button.is-correct,.pretest-options button.is-wrong{opacity:1}.pretest-options button.is-correct{background:#e7ffed;border-color:#075e52;animation:.36s ease-out answer-correct}.pretest-options button.is-wrong{background:#fff0f3;border-color:#a92a55;animation:.28s ease-out answer-wrong}.pretest-options button.is-correct .pretest-option__feedback,.pretest-options button.is-wrong .pretest-option__feedback{display:grid}.pretest-options button.is-wrong .pretest-option__feedback{background:#c72d5f}.pretest-quiz__note{color:#fff;text-align:center;text-shadow:0 2px #0446565c;align-self:center;min-height:1.7rem;margin-top:clamp(.7rem,2dvh,1rem);font-size:clamp(.66rem,1.8dvh,.84rem);font-weight:850}.pretest-quiz__note.is-visible{animation:.18s ease-out note-in}.pretest-result{align-items:flex-start}.pretest-speech--result{width:min(100%,46rem);padding:clamp(.8rem,2.5dvh,1.4rem) clamp(1rem,2.5vw,1.8rem)}.pretest-result__icon{font-size:clamp(1.8rem,7dvh,3.5rem);position:absolute;top:clamp(.7rem,2dvh,1rem);right:clamp(.8rem,2vw,1.4rem)}.pretest-speech--result h1{padding-right:4rem}.pretest-result__skills{color:#fff;width:min(100%,46rem);margin-top:clamp(.75rem,2dvh,1rem)}.pretest-result__skills p{text-shadow:0 2px #0446564d;border-bottom:2px solid #ffffff4d;grid-template-columns:minmax(8rem,38%) 1fr;align-items:baseline;gap:.7rem;padding:.38rem 0;display:grid}.pretest-result__skills small{font-size:clamp(.61rem,1.6dvh,.76rem);font-weight:700}.pretest-result__skills strong{font-size:clamp(.68rem,1.8dvh,.88rem);font-weight:900}@keyframes rex-jump-in{0%{opacity:0;transform:translate(-62vw,-30dvh)rotate(-18deg)scale(.72)}68%{opacity:1;transform:translateY(-3dvh)rotate(3deg)scale(1.03,.97)}84%{transform:translate(0)rotate(-1deg)scale(.96,1.05)}to{opacity:1;transform:none}}@keyframes rex-shadow-in{0%,50%{opacity:0;transform:scale(.35)}82%{opacity:.5;transform:scale(1.12)}to{opacity:1;transform:none}}@keyframes rex-breathe{0%{transform:scale(1)}to{transform:scale(.985,1.022)}}@keyframes pretest-panel-in{0%{opacity:0;transform:translate(4vw)}to{opacity:1;transform:none}}@keyframes pretest-shade-in{0%{opacity:0}to{opacity:1}}@keyframes canopy-sway{0%{margin-left:-4px}to{margin-left:5px}}@keyframes answer-correct{50%{transform:translateY(-4px) rotate(var(--tilt))}}@keyframes answer-wrong{25%{transform:translateX(-3px) rotate(var(--tilt))}75%{transform:translateX(3px) rotate(var(--tilt))}}@keyframes note-in{0%{opacity:0;transform:translateY(4px)}to{opacity:1;transform:none}}@media (height<=430px){.pretest{grid-template-columns:minmax(7.5rem,24%) minmax(0,1fr);gap:.6rem;padding-block:1.6dvh}.pretest__mascot-wrap{width:min(22vw,42dvh);height:82dvh}.pretest__panel{max-height:97dvh}.pretest-hello,.pretest-result,.pretest-quiz{min-height:93dvh}.pretest-speech--hello{padding-block:.75rem}.pretest-progress{margin-bottom:.3rem}.pretest-speech--question{min-height:27dvh;padding-block:.45rem}.pretest-options{margin-top:1.5dvh}.pretest-options button{min-height:13dvh}.pretest-quiz__note{margin-top:1.5dvh}.pretest-result__skills{margin-top:1.4dvh}.pretest-result__skills p{padding-block:.25rem}.pretest-result .pretest__primary{margin-top:1.5dvh}}@media (width<=680px) and (orientation:landscape){.pretest{grid-template-columns:8rem minmax(0,1fr);padding-inline:2vw}.pretest__mascot-wrap{width:8rem}.pretest-speech{border-width:3px;box-shadow:4px 5px #054d584d}.pretest-speech:before{width:25px;height:27px;left:-22px}.pretest-speech:after{width:19px;height:20px;left:-15px}.pretest-speech--question{grid-template-columns:2.8rem minmax(0,1fr);gap:.5rem;padding-inline:.6rem}.pretest-options button{border-width:2px}.pretest-progress__label{display:none}.pretest-progress__trail{flex:1;justify-content:flex-start}}@media (prefers-reduced-motion:reduce){.pretest *,.pretest :before,.pretest :after{transition-duration:1ms!important;animation-duration:1ms!important;animation-iteration-count:1!important}}.game{color:var(--ink);background:#079fe9;position:absolute;inset:0;overflow:hidden}.game:after{content:"";z-index:1;pointer-events:none;background:linear-gradient(#015a9d1f,#0000 22% 78%,#00549129);position:absolute;inset:0}.game[data-pretest=open] .game__map{pointer-events:none;-webkit-user-select:none;user-select:none}.game__map{z-index:2;animation:.5s cubic-bezier(.2,.85,.3,1) 80ms both map-arrive;position:absolute;inset:0}.map-viewport{overscroll-behavior:none;scrollbar-width:none;touch-action:pan-x pan-y;-webkit-overflow-scrolling:touch;position:absolute;inset:0;overflow:auto}.map-viewport::-webkit-scrollbar{display:none}.map-canvas{width:max(112vw,199.111dvh);height:max(63vw,112dvh);position:relative;overflow:hidden}.map-canvas__art{pointer-events:none;position:absolute;inset:0}.map-heading{z-index:3;top:max(calc(env(safe-area-inset-top) + 10px), 2.5dvh);left:max(calc(env(safe-area-inset-left) + 12px), 2vw);text-align:left;-webkit-backdrop-filter:blur(7px);backdrop-filter:blur(7px);background:#ffffffeb;border:3px solid #ffffffeb;border-radius:clamp(16px,2.5vw,24px);width:min(25vw,16rem);min-width:10.5rem;padding:clamp(.45rem,1.4dvh,.75rem) clamp(.7rem,1.5vw,1rem);position:absolute;box-shadow:0 6px #206c992e,0 12px 24px #004f882e}.map-heading__eyebrow{color:var(--pink-deep);letter-spacing:.03em;font-size:clamp(.58rem,1.45dvh,.78rem);font-weight:800;display:block}.map-heading h1{color:#4e2034;font-family:var(--font-display);margin-top:.05em;font-size:clamp(.9rem,2.8dvh,1.45rem);font-weight:800;line-height:1.22}.region-markers{z-index:2;position:absolute;inset:0}.region-marker{--marker-size:clamp(2.3rem, 8.2dvh, 4.1rem);left:var(--x);top:var(--y);min-width:calc(var(--marker-size) + 1.5rem);filter:drop-shadow(0 4px 4px #2a3d4b42);animation:marker-pop .48s var(--delay) cubic-bezier(.18, 1.35, .38, 1) both;justify-items:center;display:grid;position:absolute;transform:translate(-50%,-50%)}.region-marker__pulse{width:var(--marker-size);aspect-ratio:1;opacity:0;animation:marker-pulse 2.3s calc(var(--delay) + .6s) ease-out infinite;border:clamp(2px,.55dvh,4px) solid #fff;border-radius:50%;position:absolute;top:0}.region-marker__icon{width:var(--marker-size);aspect-ratio:1;font-size:calc(var(--marker-size) * .5);background:var(--region);box-shadow:inset 0 -4px 0 #561e3721, 0 0 0 3px var(--region-dark);border:clamp(3px,.75dvh,5px) solid #fff;border-radius:50%;place-items:center;line-height:1;display:grid;position:relative}.region-marker__label{border:2px solid var(--region-dark);color:var(--region-dark);white-space:nowrap;background:#fff;border-radius:999px;margin-top:-.22rem;padding:.2rem .55rem .24rem;font-size:clamp(.56rem,1.75dvh,.82rem);font-weight:800;line-height:1;position:relative}.region-marker:active{transform:translate(-50%,-50%)scale(.9)}.region-marker:focus-visible,.levels__back:focus-visible,.level-card:focus-visible{outline-offset:4px;outline:4px solid #fff}.map-progress{z-index:3;right:max(calc(env(safe-area-inset-right) + 12px), 2vw);bottom:max(calc(env(safe-area-inset-bottom) + 10px), 2.5dvh);color:#23547b;white-space:nowrap;background:#ffffffeb;border:3px solid #fff;border-radius:999px;align-items:center;gap:.4rem;padding:clamp(.4rem,1.25dvh,.58rem) .8rem;font-size:clamp(.62rem,1.75dvh,.86rem);display:flex;position:absolute;box-shadow:0 5px #17588433}.map-progress i{aspect-ratio:1;background:#77ccef;border-radius:50%;width:5px}.region-map,.region-map__art,.region-map__art img,.region-ambience,.level-path{width:100%;height:100%;position:absolute;inset:0}.region-map{z-index:5;background:var(--region-dark);animation:.43s cubic-bezier(.2,.9,.3,1) both region-enter;overflow:hidden}.region-map__art{z-index:0;display:block}.region-map__art img{object-fit:cover}.region-map:after{content:"";z-index:2;pointer-events:none;background:linear-gradient(#16215229,#0000 17% 78%,#111b442e);position:absolute;inset:0}.region-hud{z-index:8;top:max(calc(env(safe-area-inset-top) + 8px), 1.5dvh);left:max(calc(env(safe-area-inset-left) + 9px), 1.5vw);right:max(calc(env(safe-area-inset-right) + 9px), 1.5vw);pointer-events:none;align-items:center;gap:clamp(.4rem,1vw,.7rem);display:flex;position:absolute}.region-hud__back,.region-hud__title,.region-hud__progress{box-shadow:0 5px 0 color-mix(in srgb, var(--region-dark) 36%, transparent), 0 8px 18px #23255226;-webkit-backdrop-filter:blur(7px);backdrop-filter:blur(7px);background:#ffffffed;border:2px solid #fff}.region-hud__back{aspect-ratio:1;width:clamp(2.3rem,8dvh,3.6rem);color:var(--region-dark);pointer-events:auto;border-radius:50%;place-items:center;font-size:clamp(1.15rem,4dvh,1.8rem);font-weight:900;display:grid}.region-hud__title{border-radius:clamp(15px,2.5dvh,22px);align-items:center;gap:.55rem;padding:clamp(.3rem,1dvh,.48rem) clamp(.7rem,1.5vw,1rem);display:flex}.region-hud__title>span{font-size:clamp(1.25rem,4.2dvh,2rem)}.region-hud__title small{color:var(--region-dark);font-size:clamp(.52rem,1.45dvh,.72rem);font-weight:800;display:block}.region-hud__title h1{color:#502138;font-family:var(--font-display);font-size:clamp(.86rem,2.7dvh,1.35rem);line-height:1.05}.region-hud__progress{color:var(--region-dark);border-radius:999px;align-items:baseline;gap:.25rem;margin-left:auto;padding:.4rem .75rem;font-size:clamp(.6rem,1.7dvh,.82rem);display:flex}.region-hud__progress strong{font-size:1.15em}.level-path{z-index:6}.level-path__line{pointer-events:none;width:100%;height:100%;position:absolute;inset:0}.level-path__line polyline{fill:none;stroke:#ffffffd1;stroke-width:.58px;stroke-linecap:round;stroke-linejoin:round;vector-effect:non-scaling-stroke;filter:drop-shadow(0 2px 0 color-mix(in srgb, var(--region-dark) 44%, transparent))}.level-node{--node-size:clamp(2.55rem, 9.2dvh, 4.6rem);left:var(--x);top:var(--y);width:var(--node-size);aspect-ratio:1;color:#fff;background:color-mix(in srgb, var(--region) 78%, #fff);box-shadow:inset 0 -4px 0 color-mix(in srgb, var(--region-dark) 23%, transparent), 0 0 0 2px var(--region-dark), 0 5px 0 color-mix(in srgb, var(--region-dark) 42%, transparent), 0 9px 18px #1a2b5224;animation:node-pop .43s var(--node-delay) cubic-bezier(.2, 1.35, .38, 1) both;border:clamp(2px,.5dvh,4px) solid #fff;border-radius:50%;place-items:center;display:grid;position:absolute;transform:translate(-50%,-50%)}.level-node:disabled{filter:grayscale(.25)saturate(.55);opacity:.72}.level-node--open{animation:node-pop .43s var(--node-delay) cubic-bezier(.2, 1.35, .38, 1) both, node-float 2.3s .7s ease-in-out infinite}.level-node:active:not(:disabled){transform:translate(-50%,-44%)scale(.92)}.level-node__number{aspect-ratio:1;background:var(--region-dark);border:2px solid #fff;border-radius:50%;place-items:center;width:clamp(1.05rem,3.5dvh,1.5rem);font-size:clamp(.48rem,1.4dvh,.68rem);font-weight:900;display:grid;position:absolute;top:-.35rem;left:-.35rem}.level-node__icon{font-size:calc(var(--node-size) * .42);filter:drop-shadow(0 2px #4a1d3a2e)}.level-node__ring{opacity:0;border:2px solid #fff;border-radius:50%;position:absolute;inset:-13%}.level-node--open .level-node__ring{animation:1.9s ease-out infinite node-ring}.region-tip{z-index:8;left:50%;bottom:max(calc(env(safe-area-inset-bottom) + 8px), 1.6dvh);color:#59324b;box-shadow:0 5px 0 color-mix(in srgb, var(--region-dark) 35%, transparent);white-space:nowrap;background:#ffffffeb;border:2px solid #fff;border-radius:999px;align-items:center;gap:.4rem;padding:clamp(.34rem,1dvh,.5rem) .8rem;font-size:clamp(.56rem,1.6dvh,.78rem);display:flex;position:absolute;transform:translate(-50%)}.region-tip span:last-child{color:#7b6170}.region-ambience{z-index:3;pointer-events:none;contain:strict;overflow:hidden}.region-props{position:absolute;inset:0}.region-props img{transform-origin:50% 88%;height:auto;animation:prop-sway 2.9s var(--prop-delay) ease-in-out infinite alternate;will-change:transform;position:absolute}.region-character{z-index:2;isolation:isolate;width:clamp(4.4rem,10vw,8.4rem);display:block;position:absolute;top:33%;left:9%}.region-dino{z-index:1;transform-origin:50% 90%;width:100%;height:auto;animation:3.4s ease-in-out infinite dino-idle;display:block;position:relative}.region-character__shadow{z-index:0;opacity:.45;filter:blur(1.5px);width:66%;height:13%;position:absolute;bottom:3%;left:17%;overflow:visible}.region-character__shadow ellipse{fill:#1d314d}.water-shimmer{position:absolute;inset:0}.water-shimmer i{left:calc(13% + (var(--i) * 12%));top:calc(29% + ((var(--i) % 3) * 19%));width:clamp(12px,2vw,28px);height:4px;animation:water-flash 2.4s calc(var(--i) * -.38s) ease-in-out infinite;background:#ffffffe6;border-radius:99px;position:absolute}.region-particles{position:absolute;inset:0;overflow:hidden}.region-particles i{display:block;position:absolute}.region-ambience--snow .region-particles i{left:calc(2% + var(--i) * 5.5%);aspect-ratio:1;width:clamp(3px,.45vw,7px);animation:region-snow calc(3.6s + (var(--i) % 4) * .5s) calc(var(--i) * -.31s) linear infinite;background:#fff;border-radius:50%;top:-5%}.region-ambience--dust .region-particles i{left:-5%;top:calc(10% + (var(--i) % 9) * 9%);width:clamp(8px,1.3vw,18px);height:3px;animation:region-dust calc(4s + (var(--i) % 3) * .7s) calc(var(--i) * -.3s) linear infinite;background:#ffc4cdcc;border-radius:99px}.region-ambience--leaves .region-particles i,.region-ambience--fireflies .region-particles i,.region-ambience--bubbles .region-particles i,.region-ambience--embers .region-particles i{left:calc(4% + var(--i) * 5.3%);aspect-ratio:1;width:clamp(3px,.55vw,8px);animation:region-rise calc(4s + (var(--i) % 5) * .6s) calc(var(--i) * -.36s) ease-in infinite;background:#72ffbc;border-radius:60% 40% 55% 45%;bottom:-7%}.region-ambience--fireflies .region-particles i{background:#c8ff65;box-shadow:0 0 8px #9dff43}.region-ambience--bubbles .region-particles i{background:0 0;border:2px solid #ffffffd9;border-radius:50%}.region-ambience--embers .region-particles i{background:#ff5b5b;box-shadow:0 0 6px #ff2e8b}.level-dialog{z-index:20;-webkit-backdrop-filter:blur(5px);backdrop-filter:blur(5px);background:#1e1e4e61;place-items:center;padding:1rem;animation:.2s ease-out both levels-fade;display:grid;position:absolute;inset:0}.level-dialog__card{text-align:center;background:linear-gradient(145deg, #fff, color-mix(in srgb, var(--region) 28%, #fff));width:min(86vw,25rem);box-shadow:0 10px 0 color-mix(in srgb, var(--region-dark) 48%, transparent), 0 20px 45px #191f4b47;border:4px solid #fff;border-radius:clamp(22px,4dvh,34px);justify-items:center;padding:clamp(.85rem,2.5dvh,1.35rem);animation:.35s cubic-bezier(.2,.9,.3,1) both sheet-up;display:grid;position:relative}.level-dialog__close{color:var(--region-dark);font-size:1.35rem;font-weight:900;position:absolute;top:.55rem;right:.65rem}.level-dialog__icon{font-size:clamp(2rem,8dvh,3.7rem)}.level-dialog p{color:var(--region-dark);margin-top:.25rem;font-size:clamp(.58rem,1.65dvh,.78rem);font-weight:800}.level-dialog h2{color:#502138;font-family:var(--font-display);font-size:clamp(1.15rem,4dvh,1.8rem)}.level-dialog>span,.level-dialog__card>span:not(.level-dialog__icon){color:#785d6c;font-size:clamp(.68rem,1.9dvh,.9rem)}.level-dialog__start{color:#fff;background:var(--region-dark);box-shadow:0 5px 0 color-mix(in srgb, var(--region-dark) 55%, #29182b);border:3px solid #fff;border-radius:999px;margin-top:.85rem;padding:.52rem 1.15rem;font-weight:900}@keyframes map-arrive{0%{opacity:0;transform:scale(1.03)}to{opacity:1;transform:scale(1)}}@keyframes marker-pop{0%{opacity:0;transform:translate(-50%,-35%)scale(.3)}to{opacity:1;transform:translate(-50%,-50%)scale(1)}}@keyframes marker-pulse{0%{opacity:.7;transform:scale(.75)}80%,to{opacity:0;transform:scale(1.65)}}@keyframes levels-fade{0%{opacity:0}to{opacity:1}}@keyframes sheet-up{0%{opacity:0;transform:translateY(7%)scale(.97)}to{opacity:1;transform:translate(0,0)scale(1)}}@keyframes region-enter{0%{opacity:0;transform:scale(1.045)}to{opacity:1;transform:scale(1)}}@keyframes node-pop{0%{opacity:0;transform:translate(-50%,-25%)scale(.35)}to{opacity:1;transform:translate(-50%,-50%)scale(1)}}@keyframes node-float{0%,to{transform:translate(-50%,-50%)}50%{transform:translate(-50%,-60%)}}@keyframes node-ring{0%{opacity:.8;transform:scale(.72)}90%,to{opacity:0;transform:scale(1.35)}}@keyframes prop-sway{0%{transform:scaleX(var(--flip)) rotate(-2.5deg) translateY(0)}to{transform:scaleX(var(--flip)) rotate(3deg) translateY(-2%)}}@keyframes dino-idle{0%,to{transform:translate(0,0)rotate(-1deg)scale(1)}45%{transform:translateY(-2.5%)rotate(1deg)scale(1.015,1.025)}55%{transform:translateY(-2.5%)rotate(.5deg)scale(1.01,1.02)}}@keyframes water-flash{0%,to{opacity:0;transform:translate(-12px)scaleX(.5)}45%{opacity:.9;transform:translate(8px)scaleX(1)}}@keyframes region-snow{to{opacity:.25;transform:translate(35px,115vh)}}@keyframes region-dust{to{opacity:0;transform:translate(110vw,-12px)}}@keyframes region-rise{0%{opacity:0;transform:translate(0,0)rotate(0)}20%{opacity:.85}to{opacity:0;transform:translate(30px,-110vh)rotate(260deg)}}@media (width<=740px),(height<=430px){.map-heading{min-width:9rem;padding:.35rem .6rem}.map-progress span:last-child,.map-progress i,.region-tip span:last-child,.region-props img:nth-child(4){display:none}}@media (prefers-reduced-motion:reduce){.game__map,.region-marker,.region-marker__pulse,.region-map,.level-node,.region-props img,.region-dino,.water-shimmer i,.region-particles i,.level-dialog,.level-dialog__card{animation-duration:.01ms;animation-iteration-count:1}}.intro{background:#fff;place-items:center;animation:.46s ease-in 1.4s both intro-out;display:grid;position:absolute;inset:0}.intro__mark{flex-direction:column;align-items:center;gap:.7rem;display:flex}.intro__mark h1{font-family:var(--font-display);letter-spacing:.01em;color:var(--pink-deep);font-size:clamp(2.6rem,11vw,4.6rem);font-weight:800;line-height:1;animation:.62s cubic-bezier(.16,.9,.3,1.06) both mark-slide-in}.intro__mark h1 span{color:var(--rex-red)}.intro__rule{background:linear-gradient(90deg, var(--pink), var(--sun));border-radius:3px;width:min(46vw,260px);height:5px;animation:.56s cubic-bezier(.16,.9,.3,1.06) .12s both rule-slide-in}@keyframes mark-slide-in{0%{opacity:0;transform:translate(-100vw)}60%{opacity:1}to{opacity:1;transform:translate(0,0)}}@keyframes rule-slide-in{0%{opacity:0;transform:translate(100vw)}60%{opacity:1}to{opacity:1;transform:translate(0,0)}}@keyframes intro-out{0%{opacity:1}to{opacity:0}}@media (prefers-reduced-motion:reduce){.intro__mark h1,.intro__rule{animation-duration:.01ms}}.welcome{padding:calc(env(safe-area-inset-top) + 2dvh) env(safe-area-inset-right) calc(env(safe-area-inset-bottom) + 1dvh) env(safe-area-inset-left);background:radial-gradient(120% 90% at 50% 0,#ffa3c4 0%,#ff76a5 45%,#f0578f 100%);flex-direction:column;align-items:center;display:flex;position:absolute;inset:0;overflow:hidden}.welcome__sky{pointer-events:none;position:absolute;inset:0}.blob{filter:blur(6px);opacity:.35;background:#fff;border-radius:50%;position:absolute}.blob--a{opacity:.22;width:46vw;height:46vw;animation:19s ease-in-out infinite alternate blob-drift;top:-14vw;left:-12vw}.blob--b{opacity:.18;width:34vw;height:34vw;animation:23s ease-in-out infinite alternate-reverse blob-drift;top:26%;right:-14vw}.blob--c{opacity:.16;width:60vw;height:30vw;animation:27s ease-in-out infinite alternate blob-drift;bottom:-12vw;left:12vw}@keyframes blob-drift{0%{transform:translate(0,0)scale(1)}to{transform:translate(4vw,-3vw)scale(1.12)}}.motes{position:absolute;inset:0}.mote{left:calc(4% + var(--i) * 6.5%);width:calc(4px + (var(--i) % 3) * 3px);aspect-ratio:1;opacity:0;animation:mote-rise calc(9s + (var(--i) % 5) * 2.2s) linear infinite;animation-delay:calc(var(--i) * -1.6s);background:#fff;border-radius:50%;position:absolute;bottom:-6vh}@keyframes mote-rise{0%{opacity:0;transform:translate(0,0)}12%{opacity:.55}85%{opacity:.4}to{opacity:0;transform:translate(3vw,-108dvh)}}.stage{z-index:1;flex:1;justify-content:center;align-items:center;width:100%;min-height:0;padding-bottom:clamp(8px,2.5dvh,32px);display:flex;position:relative}.figure{position:relative}.figure__shadow{aspect-ratio:3.4;opacity:.45;will-change:transform, opacity;background:radial-gradient(closest-side,#8c163e99,#8c163e24 62%,#8c163e00 100%);border-radius:50%;width:64%;position:absolute;bottom:-1.5%;left:50%;transform:translate(-50%)scale(1)}.rex{margin:0 -2vw -1vh;padding:0 2vw 1vh;display:block;position:relative}.rex__jump,.rex__tilt,.rex__squash{will-change:transform;display:block}.rex__tilt{transform-origin:50% 92%;position:relative}.rex__squash{transform-origin:50% 100%}.rex picture{display:block}.rex img{filter:drop-shadow(0 6px 10px #78143c47);width:min(78vw,46dvh);height:auto}@media (width>=700px){.rex img{width:min(52vw,36dvh)}}[data-phase=enter] .rex__jump{animation:rex-arc var(--enter-dur) both}[data-phase=enter] .rex__tilt{animation:rex-tilt-in var(--enter-dur) both}[data-phase=enter] .rex__squash{animation:rex-squash-in var(--enter-dur) both}[data-phase=enter] .figure__shadow{animation:shadow-in var(--enter-dur) both}@keyframes rex-arc{0%{animation-timing-function:cubic-bezier(.16,.72,.3,1);transform:translateY(105dvh)}28%{animation-timing-function:cubic-bezier(.6,0,.9,.42);transform:translateY(-16%)}44%{animation-timing-function:cubic-bezier(.2,.75,.4,1);transform:translate(0,0)}58%{animation-timing-function:cubic-bezier(.6,0,.9,.42);transform:translateY(-10%)}72%{animation-timing-function:cubic-bezier(.2,.75,.4,1);transform:translate(0,0)}82%{animation-timing-function:cubic-bezier(.6,0,.9,.42);transform:translateY(-3.5%)}92%,to{transform:translate(0,0)}}@keyframes rex-squash-in{0%{transform:scale(.84,1.18)}22%{transform:scale(.92,1.09)}40%{transform:scale(1)}46%{transform:scale(1.2,.8)}54%{transform:scale(.93,1.08)}70%{transform:scale(1)}75%{transform:scale(1.13,.89)}83%{transform:scale(.97,1.03)}91%{transform:scale(1.03,.98)}to{transform:scale(1)}}@keyframes rex-tilt-in{0%{transform:rotate(-14deg)}26%{transform:rotate(7deg)}46%{transform:rotate(-4deg)}62%{transform:rotate(3deg)}78%{transform:rotate(-1.5deg)}to{transform:rotate(0)}}@keyframes shadow-in{0%{opacity:0;transform:translate(-50%)scale(.15)}28%{opacity:.16;transform:translate(-50%)scale(.4)}44%{opacity:.5;transform:translate(-50%)scale(1.18)}58%{opacity:.28;transform:translate(-50%)scale(.7)}72%{opacity:.46;transform:translate(-50%)scale(1.08)}82%{opacity:.36;transform:translate(-50%)scale(.88)}to{opacity:.42;transform:translate(-50%)scale(1)}}.dust{opacity:0;pointer-events:none;width:0;height:0;position:absolute;bottom:0;left:50%}.puff{aspect-ratio:1;background:#ffffffd9;border-radius:50%;width:clamp(10px,2.4vh,20px);position:absolute;bottom:0;left:0;transform:translate(-50%)scale(0)}[data-phase=enter] .dust{opacity:1}[data-phase=enter] .dust--first .puff{animation:.52s cubic-bezier(.2,.7,.3,1) both puff-out;animation-delay:calc(var(--enter-dur) * .44 + var(--i) * 18ms)}[data-phase=enter] .dust--second .puff{animation:.42s cubic-bezier(.2,.7,.3,1) both puff-out;animation-delay:calc(var(--enter-dur) * .72 + var(--i) * 16ms)}@keyframes puff-out{0%{opacity:.9;transform:translate(-50%)scale(.2)}to{transform:translate(calc(-50% + (var(--i) - 2) * 7vw), -3.2vh) scale(1.5);opacity:0}}[data-phase=idle] .rex__jump{animation:2.6s ease-in-out infinite alternate rex-bob}[data-phase=idle] .rex__squash{animation:2.6s ease-in-out infinite alternate rex-breathe}[data-phase=idle] .rex__tilt{animation:3.7s ease-in-out infinite alternate rex-sway}[data-phase=idle] .figure__shadow{animation:2.6s ease-in-out infinite alternate shadow-breathe}@keyframes rex-bob{0%{transform:translate(0,0)}to{transform:translateY(-2.4%)}}@keyframes rex-sway{0%{transform:rotate(-2.3deg)}to{transform:rotate(2.3deg)}}@keyframes shadow-breathe{0%{opacity:.42;transform:translate(-50%)scale(1)}to{opacity:.34;transform:translate(-50%)scale(.93)}}[data-phase=highFive] .rex__jump{animation:rex-hf-jump var(--highfive-dur) cubic-bezier(.3, 1.2, .4, 1) both}[data-phase=highFive] .rex__squash{animation:rex-hf-squash var(--highfive-dur) cubic-bezier(.25, 1, .4, 1) both}[data-phase=highFive] .rex__tilt{animation:rex-hf-tilt var(--highfive-dur) cubic-bezier(.25, 1, .4, 1) both}[data-phase=highFive] .stage{animation:.38s cubic-bezier(.36,.07,.19,.97) both stage-shake}@keyframes rex-hf-jump{0%{transform:translate(0,0)}18%{transform:translateY(3%)}45%{transform:translateY(-5%)}to{transform:translate(0,0)}}@keyframes rex-hf-squash{0%{transform:scale(1)}16%{transform:scale(1.08,.92)}40%{transform:scale(.93,1.1)}70%{transform:scale(1.04,.97)}to{transform:scale(1)}}@keyframes rex-hf-tilt{0%{transform:rotate(0)}20%{transform:rotate(6deg)}55%{transform:rotate(-3deg)}to{transform:rotate(0)}}@keyframes stage-shake{0%,to{transform:translate(0,0)}15%{transform:translate(-6px,3px)}30%{transform:translate(5px,-3px)}45%{transform:translate(-4px,-2px)}60%{transform:translate(3px,2px)}80%{transform:translate(-2px)}}.palm{pointer-events:none;width:0;height:0;position:absolute}.ripples{position:absolute;top:0;left:0}.ripple{aspect-ratio:1;opacity:0;border:.42vh solid #ffffffe6;border-radius:50%;width:14vh;position:absolute;top:0;left:0;transform:translate(-50%,-50%)scale(.22);box-shadow:0 0 1.4vh #ffffff59}[data-phase=idle] .ripple{animation:2.4s linear infinite ripple-out;animation-delay:calc(var(--i) * .8s)}@keyframes ripple-out{0%{opacity:0;transform:translate(-50%,-50%)scale(.22)}14%{opacity:.85}60%{opacity:.4;border-width:.24vh}to{opacity:0;border-width:.12vh;transform:translate(-50%,-50%)scale(1.75)}}.palm__ring,.palm__flash{opacity:0;border-radius:50%;position:absolute;top:0;left:0}.palm__ring{aspect-ratio:1;border:.7vh solid #fff;width:18vh;transform:translate(-50%,-50%)scale(.15)}.palm__flash{aspect-ratio:1;background:radial-gradient(closest-side,#fffffff2,#fff0);width:26vh;transform:translate(-50%,-50%)scale(.4)}.palm__stars{position:absolute;top:0;left:0}.star{aspect-ratio:1;background:var(--sun);clip-path:polygon(50% 0%,61% 35%,98% 35%,68% 57%,79% 91%,50% 70%,21% 91%,32% 57%,2% 35%,39% 35%);width:3.4vh;transform:translate(-50%, -50%) rotate(var(--a)) translateY(0) scale(0);opacity:0;position:absolute;top:0;left:0}[data-phase=highFive] .palm__ring{animation:ring-pop var(--highfive-dur) cubic-bezier(.15, .8, .3, 1) both}[data-phase=highFive] .palm__flash{animation:.26s ease-out both flash-pop}[data-phase=highFive] .star{animation:star-fly var(--highfive-dur) cubic-bezier(.2, .8, .3, 1) both}@keyframes ring-pop{0%{opacity:0;transform:translate(-50%,-50%)scale(.15)}10%{opacity:1}to{opacity:0;transform:translate(-50%,-50%)scale(1.7)}}@keyframes flash-pop{0%{opacity:0;transform:translate(-50%,-50%)scale(.35)}25%{opacity:.9}to{opacity:0;transform:translate(-50%,-50%)scale(1.25)}}@keyframes star-fly{0%{transform:translate(-50%, -50%) rotate(var(--a)) translateY(0) scale(.2);opacity:0}18%{opacity:1}to{transform:translate(-50%, -50%) rotate(var(--a)) translateY(-15vh) scale(1);opacity:0}}[data-phase=exit] .rex{animation:rex-exit-fade var(--exit-dur) ease-in both}[data-phase=exit] .rex__jump{animation:rex-exit-jump var(--exit-dur) both}[data-phase=exit] .rex__squash{animation:rex-exit-squash var(--exit-dur) both}[data-phase=exit] .rex__tilt{animation:rex-exit-tilt var(--exit-dur) ease-in both}[data-phase=exit] .figure__shadow{animation:shadow-exit var(--exit-dur) ease-in both}@keyframes rex-exit-jump{0%{animation-timing-function:cubic-bezier(.4,0,.7,.4);transform:translate(0,0)}24%{animation-timing-function:cubic-bezier(.3,.9,.5,1);transform:translateY(7%)}to{transform:translateY(-160%)}}@keyframes rex-exit-squash{0%{transform:scale(1)}24%{transform:scale(1.2,.82)}48%{transform:scale(.84,1.22)}to{transform:scale(.72,1.14)}}@keyframes rex-exit-tilt{0%{transform:rotate(0)}to{transform:rotate(-26deg)}}@keyframes rex-exit-fade{0%,62%{opacity:1}to{opacity:0}}@keyframes shadow-exit{0%{opacity:.42;transform:translate(-50%)scale(1)}24%{opacity:.5;transform:translate(-50%)scale(1.15)}to{opacity:0;transform:translate(-50%)scale(.2)}}@media (prefers-reduced-motion:reduce){.welcome *,.welcome :before,.welcome :after{animation-duration:.01ms!important;animation-iteration-count:1!important}[data-phase=enter] .rex{animation:.4s ease-out both soft-in!important}[data-phase=exit] .rex{animation:.4s ease-in both soft-out!important}}@keyframes soft-in{0%{opacity:0;transform:scale(.92)}to{opacity:1;transform:scale(1)}}@keyframes soft-out{0%{opacity:1;transform:scale(1)}to{opacity:0;transform:scale(.92)}}.boot{background:radial-gradient(120% 90% at 50% 0,#ffa3c4 0%,#ff76a5 45%,#f0578f 100%);position:absolute;inset:0}
