.portal-worlds{--portal-ink:#12264d;isolation:isolate;color:#fff;width:100%;height:100dvh;min-height:100dvh;font-family:var(--font-kids,"Comfortaa", "Nunito", sans-serif);background:radial-gradient(circle at 68% 14%,#fff2ae 0,#8ee5ff 16%,#3ba9eb 45%,#175bb0 100%);position:relative;overflow:hidden}.portal-worlds button{font:inherit;-webkit-tap-highlight-color:transparent}.portal-worlds button:focus-visible{outline-offset:4px;outline:3px solid #fff7bd}.portal-worlds__stage,.portal-worlds__canvas{inset:0;width:100%!important;height:100%!important;position:absolute!important}.portal-worlds__stage{z-index:0;cursor:grab;touch-action:pan-y}.portal-worlds__stage:active{cursor:grabbing}.portal-worlds__sunwash{pointer-events:none;mix-blend-mode:screen;background:radial-gradient(circle at 73% 9%,#fffac7a3,#0000 22%),linear-gradient(#ffffff1f,#0000 34%,#04286029);position:absolute;inset:0}.portal-worlds__cloud-haze{pointer-events:none;filter:blur(18px);opacity:.72;background:radial-gradient(#ffffffeb,#dff7ff94 46%,#0000 72%);border-radius:50%;width:46%;height:42%;animation:12s ease-in-out infinite alternate portal-haze-drift;position:absolute;bottom:-17%}.portal-worlds__cloud-haze--left{left:-11%}.portal-worlds__cloud-haze--right{animation-delay:-6s;right:-12%}.portal-worlds__header{z-index:20;width:100%;padding:max(clamp(.85rem, 2vw, 1.45rem), env(safe-area-inset-top)) clamp(1rem, 2.4vw, 2rem) 0;box-sizing:border-box;pointer-events:none;background:linear-gradient(#0831718a,#08317100);grid-template-columns:1fr auto 1fr;align-items:start;gap:1rem;display:grid;position:absolute;top:0;left:0}.portal-worlds__back,.portal-worlds__progress,.portal-worlds__progress-badge,.portal-worlds__arrow,.portal-worlds__details,.portal-worlds__selector{pointer-events:auto}.portal-worlds__progress-badge{justify-self:end}.portal-worlds__back{color:#153363;width:fit-content;height:3.15rem;min-height:3.15rem;font-family:var(--font-kids,"Comfortaa", "Nunito", sans-serif);letter-spacing:.01em;white-space:nowrap;box-sizing:border-box;cursor:pointer;background:linear-gradient(#fffef3,#dff7ff);border:2px solid #ffffffd1;border-radius:999px;justify-content:center;align-items:center;gap:.55rem;padding:.55rem 1.15rem .55rem .85rem;font-size:clamp(.82rem,1.35vw,1.25rem);font-weight:1000;line-height:1;transition:transform .18s,filter .18s,box-shadow .18s;display:inline-flex;box-shadow:0 4px #195c9785,0 8px 18px #062d6538,inset 0 1px #ffffffe6}.portal-worlds__back:hover{filter:brightness(1.04);transform:translateY(-2px)}.portal-worlds__heading{text-align:center;color:#fff;text-shadow:0 3px 16px #05285f7a;min-width:min(42rem,62vw)}.portal-worlds__heading>span{color:#fff0a9;letter-spacing:.22em;justify-content:center;align-items:center;gap:.7rem;font-size:clamp(.75rem,1.15vw,.95rem);font-weight:900;display:flex}.portal-worlds__heading>span i{background:linear-gradient(90deg,#0000,#ffe99a);width:clamp(2rem,5vw,5.4rem);height:1px;display:block;box-shadow:0 0 10px #fff1aa}.portal-worlds__heading>span i:last-child{transform:scaleX(-1)}.portal-worlds__heading h1{letter-spacing:-.04em;margin:.12rem 0 0;font-size:clamp(2rem,4vw,4rem);font-weight:700;line-height:1}.portal-worlds__heading p{color:#ffffffe6;margin:.42rem auto 0;font-family:Nunito,sans-serif;font-size:clamp(.88rem,1.25vw,1.07rem);font-weight:800}.portal-worlds__progress{color:#fff;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);background:#0a2d69c2;border:2px solid #ffefa4cc;border-radius:999px;justify-self:end;align-items:center;gap:.65rem;max-width:19rem;min-height:3.35rem;padding:.45rem .85rem .5rem .48rem;display:flex;box-shadow:0 8px 28px #04265b42,inset 0 1px #ffffff2e}.portal-worlds__progress>span{color:#704b05;background:linear-gradient(145deg,#fff6b6,#f5bf45);border-radius:50%;flex:none;place-items:center;width:2.35rem;height:2.35rem;display:grid;box-shadow:inset 0 2px 4px #ffffffb8,0 0 18px #ffe06f75}.portal-worlds__progress div{min-width:8.6rem}.portal-worlds__progress strong{white-space:nowrap;font-family:Nunito,sans-serif;font-size:.82rem;font-weight:900;display:block}.portal-worlds__progress i{background:#ffffff29;border-radius:999px;height:.3rem;margin-top:.28rem;display:block;overflow:hidden}.portal-worlds__progress i b{border-radius:inherit;background:linear-gradient(90deg,#ffe067,#fff5b5);height:100%;transition:width .5s;display:block;box-shadow:0 0 8px #ffe377}.portal-worlds__arrow{z-index:8;color:#173e78;cursor:pointer;background:linear-gradient(145deg,#fffffff5,#c7efffe6);border:2px solid #ffffffd1;border-radius:50%;place-items:center;width:clamp(3.1rem,4vw,4rem);height:clamp(3.1rem,4vw,4rem);transition:transform .2s,filter .2s;display:grid;position:absolute;top:43%;box-shadow:0 5px #115e9e85,0 10px 28px #04285d38}.portal-worlds__arrow:hover{filter:brightness(1.05);transform:translateY(-2px)scale(1.03)}.portal-worlds__arrow--left{left:clamp(1.5rem,8vw,9.5rem)}.portal-worlds__arrow--right{right:clamp(6.5rem,12vw,13.5rem)}.portal-worlds__details{z-index:9;width:fit-content;min-width:min(24rem,100vw - 2rem);max-width:min(44rem,100vw - 2rem);color:var(--portal-ink);-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px);background:linear-gradient(145deg,#fffffff0,#dcf6ffe0);border:2px solid #ffffffc2;border-radius:1.4rem;justify-content:space-between;align-items:center;gap:1.25rem;margin-inline:auto;padding:.6rem .85rem .6rem .75rem;display:flex;position:absolute;bottom:clamp(.75rem,2vw,1.75rem);left:0;right:0;box-shadow:0 12px 40px #04295e45,inset 0 1px #fffffff2}.portal-worlds__world-copy{align-items:center;gap:.75rem;min-width:0;display:flex}.portal-worlds__world-icon{color:#17375f;background:linear-gradient(145deg, var(--portal-accent-secondary), var(--portal-accent));width:2.65rem;height:2.65rem;box-shadow:0 4px 12px color-mix(in srgb, var(--portal-accent) 42%, transparent);border-radius:.85rem;flex:none;place-items:center;display:grid}.portal-worlds__world-title{color:#102f5d;white-space:nowrap;margin:0;font-size:clamp(1.15rem,1.8vw,1.45rem);font-weight:900;line-height:1.15}.portal-worlds__enter-btn{box-sizing:border-box;min-width:9rem;min-height:2.9rem;color:#102e59;background:linear-gradient(145deg, var(--portal-accent-secondary), var(--portal-accent));box-shadow:0 5px 0 color-mix(in srgb, var(--portal-accent) 56%, #34587b), 0 10px 20px color-mix(in srgb, var(--portal-accent) 32%, transparent);cursor:pointer;white-space:nowrap;border:2px solid #ffffffe0;border-radius:999px;flex:none;justify-content:center;align-items:center;gap:.45rem;padding:.62rem 1.25rem;font-size:.9rem;font-weight:900;text-decoration:none;transition:transform .2s,filter .2s,min-width .2s,padding .2s;display:inline-flex}.portal-worlds__enter-btn.is-wide{min-width:10.8rem;padding:.62rem 1.65rem}.portal-worlds__enter-btn:hover{filter:brightness(1.04);transform:translateY(-2px)}.portal-worlds__enter-btn.is-locked,.portal-worlds__enter-btn.is-locked:hover{color:#f8fafc;filter:none;cursor:not-allowed;background:linear-gradient(145deg,#64748b,#334155);transform:none;box-shadow:0 5px #1e293b,0 10px 20px #0f172a47}.portal-worlds__enter-btn:disabled:not(.is-locked),.portal-worlds__back:disabled,.portal-worlds__arrow:disabled,.portal-worlds__selector button:disabled{cursor:wait}.portal-worlds__selector{z-index:10;overscroll-behavior:contain;scrollbar-width:none;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);background:#09377761;border:1px solid #ffffff85;border-radius:999px;flex-direction:column;gap:.34rem;max-height:calc(100dvh - 10rem);padding:.48rem;display:flex;position:absolute;top:50%;right:clamp(.65rem,1.8vw,1.5rem);overflow-y:auto;transform:translateY(-46%);box-shadow:0 10px 34px #04255633,inset 0 1px #ffffff3d}.portal-worlds__selector::-webkit-scrollbar{display:none}.portal-worlds__selector button{color:#fff;cursor:pointer;background:#235c99;border:2px solid #ffffffa3;border-radius:50%;flex:none;place-items:center;width:3.3rem;min-width:3.3rem;height:3.3rem;min-height:3.3rem;padding:0;transition:transform .22s,border-color .22s,box-shadow .22s;display:grid;position:relative;overflow:hidden;box-shadow:0 3px 9px #0427584d}.portal-worlds__selector button picture,.portal-worlds__selector button img{width:100%;height:100%;position:absolute;inset:0}.portal-worlds__selector button img{object-fit:cover;opacity:.82;transition:opacity .2s,transform .3s;display:block}.portal-worlds__selector button>span{z-index:2;filter:drop-shadow(0 2px 4px #00000059);background:#092a54a3;border-radius:50%;place-items:center;width:1.65rem;height:1.65rem;display:grid;position:relative}.portal-worlds__selector button small{z-index:3;color:#173a6a;background:#fff5bd;border-radius:50%;place-items:center;width:1rem;height:1rem;font:900 .58rem/1 Nunito,sans-serif;display:grid;position:absolute;bottom:.08rem;right:.14rem}.portal-worlds__selector button:hover{transform:scale(1.08)}.portal-worlds__selector button:hover img{opacity:1;transform:scale(1.08)}.portal-worlds__selector button.is-active{box-shadow:0 0 0 3px var(--portal-color), 0 0 22px var(--portal-color), 0 4px 12px #04255659;border-color:#fff7bf;transform:scale(1.12)}.portal-worlds__selector button.is-active img{opacity:1}.portal-worlds__selector button.is-locked img{filter:grayscale()brightness(.72);opacity:.78}.portal-worlds__selector button.is-locked.is-active img{opacity:.9}.portal-worlds__coming-soon{z-index:4;color:#fff8e7;pointer-events:none;background:#0f172a75;place-content:center;justify-items:center;gap:.08rem;font-style:normal;display:grid;position:absolute;inset:0}.portal-worlds__coming-soon b{color:#fff;letter-spacing:.01em;text-align:center;text-transform:uppercase;text-shadow:0 1px 3px #0000008c;max-width:2.85rem;font:900 .48rem/1.05 Nunito,sans-serif}.portal-worlds__loading{z-index:30;text-align:center;color:#173867;background:radial-gradient(circle,#ffffffc2,#83dafaeb);place-content:center;gap:.7rem;transition:opacity .45s,visibility .45s;display:grid;position:absolute;inset:0}.portal-worlds.is-ready .portal-worlds__loading{opacity:0;visibility:hidden}.portal-worlds__loading>span{justify-content:center;gap:.42rem;display:flex}.portal-worlds__loading i{background:#fff5a6;border-radius:50%;width:.72rem;height:.72rem;animation:1.1s ease-in-out infinite alternate portal-loading;box-shadow:0 0 18px #fff}.portal-worlds__loading i:nth-child(2){animation-delay:-.35s}.portal-worlds__loading i:nth-child(3){animation-delay:-.7s}.portal-worlds__loading strong{font-size:1rem;font-weight:900}.portal-worlds.is-activating:after{content:"";z-index:25;pointer-events:none;background:radial-gradient(circle at 50% 47%,#fff 0,#e0fafff5 18%,#78dbff7a 44%,#0000 72%);animation:.68s cubic-bezier(.2,.75,.2,1) forwards portal-entry-bloom;position:absolute;inset:0}.portal-worlds.is-activating .portal-worlds__header,.portal-worlds.is-activating .portal-worlds__details,.portal-worlds.is-activating .portal-worlds__selector,.portal-worlds.is-activating .portal-worlds__arrow{animation:.34s forwards portal-ui-depart}.portal-worlds__recovery{background:radial-gradient(circle at 50% 25%,#fff7c6,#9fe7ff 28%,#287fc5 72%,#164b96);place-items:center;min-height:100dvh;padding:1rem;display:grid}.portal-worlds__recovery-card{color:#153766;text-align:center;-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);background:#ffffffe8;border:3px solid #ffffffd1;border-radius:2rem;width:min(34rem,100%);padding:clamp(1.4rem,5vw,2.5rem);box-shadow:0 20px 60px #0530674d}.portal-worlds__recovery-symbol{color:#5f4600;background:linear-gradient(145deg,#fff5a8,#f2bd45);border-radius:50%;place-items:center;width:4rem;height:4rem;margin:0 auto 1rem;display:grid;box-shadow:0 0 28px #ffe16fb3}.portal-worlds__recovery-card>p{color:#3575a9;letter-spacing:.16em;margin:0;font-size:.8rem;font-weight:900}.portal-worlds__recovery-card h1{margin:.4rem 0 .65rem;font-size:clamp(1.65rem,5vw,2.5rem);line-height:1.05}.portal-worlds__recovery-card>span{color:#4a6781;font-family:Nunito,sans-serif;font-size:1rem;font-weight:750;line-height:1.5;display:block}.portal-worlds__recovery-card>div{flex-wrap:wrap;justify-content:center;gap:.65rem;margin-top:1.35rem;display:flex}.portal-worlds__recovery-card button{color:#153766;cursor:pointer;background:#fff;border:2px solid #b9dff2;border-radius:999px;justify-content:center;align-items:center;gap:.4rem;min-height:3rem;padding:.65rem 1rem;font-weight:900;display:inline-flex}.portal-worlds__recovery-card button:first-child{background:#fff0a5;border-color:#f4d46e}@keyframes portal-haze-drift{0%{transform:translate(-2%)scale(1)}to{transform:translate(5%,-3%)scale(1.08)}}@keyframes portal-loading{0%{opacity:.48;transform:translateY(.3rem)scale(.78)}to{opacity:1;transform:translateY(-.25rem)scale(1.08)}}@keyframes portal-entry-bloom{0%{opacity:0;transform:scale(.5)}45%{opacity:.72}to{opacity:1;transform:scale(1.5)}}@keyframes portal-ui-depart{to{opacity:0;transform:translateY(.5rem)scale(.97)}}@media (width<=900px){.portal-worlds__header{padding:max(.75rem, env(safe-area-inset-top)) max(.75rem, env(safe-area-inset-right)) 0 max(.75rem, env(safe-area-inset-left));grid-template-columns:auto 1fr auto}.portal-worlds__heading{min-width:0}.portal-worlds__heading h1{font-size:clamp(1.55rem,5vw,2.35rem)}.portal-worlds__heading p{display:none}.portal-worlds__heading>span{letter-spacing:.15em;font-size:.66rem}.portal-worlds__progress{min-height:2.85rem;padding:.32rem .55rem .34rem .34rem}.portal-worlds__progress>span{width:2rem;height:2rem}.portal-worlds__progress div{min-width:5.5rem}.portal-worlds__progress strong{font-size:.7rem}.portal-worlds__selector{scroll-snap-type:x proximity;border-radius:1.4rem;flex-direction:row;justify-content:flex-start;gap:.42rem;max-height:none;padding:.48rem;inset:auto .5rem .45rem;overflow:auto hidden;transform:none}.portal-worlds__selector button{scroll-snap-align:center}.portal-worlds__details{border-radius:1.25rem;gap:.85rem;width:fit-content;min-width:min(20rem,100vw - 1.2rem);max-width:calc(100vw - 1.2rem);margin-inline:auto;padding:.5rem .75rem;bottom:4.75rem;left:0;right:0}.portal-worlds__world-icon{border-radius:.75rem;width:2.3rem;height:2.3rem}.portal-worlds__world-title{font-size:1.15rem}.portal-worlds__enter-btn{min-width:7.8rem;min-height:2.7rem;padding:.5rem .95rem;font-size:.85rem}.portal-worlds__enter-btn.is-wide{min-width:9.2rem;padding:.5rem 1.15rem}.portal-worlds__arrow{top:39%}.portal-worlds__arrow--right{right:.75rem}}@media (width<=600px){.portal-worlds__back{gap:.2rem;width:fit-content;height:2.5rem;min-height:2.5rem;padding:.3rem .45rem .3rem .38rem;font-size:.76rem}.portal-worlds__header{grid-template-columns:auto 1fr auto}.portal-worlds__heading h1{font-size:clamp(1.45rem,7vw,2rem)}.portal-worlds__heading>span i{display:none}.portal-worlds__progress{width:2.85rem;height:2.85rem;min-height:2.85rem;padding:.28rem}.portal-worlds__progress>span{width:2.15rem;height:2.15rem}.portal-worlds__progress div{display:none;position:absolute;top:3.25rem;right:0}.portal-worlds__arrow{width:3rem;height:3rem;top:37%}.portal-worlds__arrow--left{left:.5rem}.portal-worlds__arrow--right{right:.5rem}.portal-worlds__details{gap:.6rem;width:calc(100vw - 1rem);min-width:0;padding:.45rem .6rem;bottom:4.55rem}.portal-worlds__world-title{white-space:normal;-webkit-line-clamp:2;-webkit-box-orient:vertical;font-size:clamp(.92rem,3.8vw,1.15rem);line-height:1.15;display:-webkit-box}.portal-worlds__enter-btn{min-width:0;min-height:2.6rem;padding:.45rem .8rem;font-size:.82rem}.portal-worlds__enter-btn.is-wide{min-width:0;padding:.45rem .85rem}.portal-worlds__selector button{width:3.2rem;min-width:3.2rem;height:3.2rem;min-height:3.2rem}}@media (height<=690px){.portal-worlds__heading p{display:none}.portal-worlds__details{width:min(27rem,100vw - 6rem);padding:.45rem .65rem}.portal-worlds__selector{max-height:calc(100dvh - 7.5rem)}}@media (width<=900px) and (height<=690px) and (orientation:landscape){.portal-worlds__header{grid-template-columns:auto 1fr auto}.portal-worlds__selector{border-radius:999px;flex-direction:column;width:4rem;max-height:calc(100dvh - 6rem);padding:.35rem;inset:50% .45rem auto auto;overflow:hidden auto;transform:translateY(-42%)}.portal-worlds__selector button{width:3rem;min-width:3rem;height:3rem;min-height:3rem}.portal-worlds__details{width:min(28rem,100vw - 10rem);margin-inline:auto;padding:.45rem .7rem;bottom:.55rem;left:0;right:0}.portal-worlds__arrow{top:47%}.portal-worlds__arrow--right{right:5rem}}@media (prefers-reduced-motion:reduce){.portal-worlds *,.portal-worlds :before,.portal-worlds :after{scroll-behavior:auto!important;transition-duration:1ms!important;animation-duration:1ms!important;animation-iteration-count:1!important}.portal-worlds__cloud-haze{display:none}}
