@import"https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;700&family=Playfair+Display:wght@600;700;800&display=swap";:root{color-scheme:dark;font-family:DM Sans,system-ui,sans-serif;color:#f8e7ba;background:#06182e;font-synthesis:none}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;min-width:320px;background:#06182e}button,select{font:inherit}button{cursor:pointer}.app-shell,.game-shell{min-height:100vh;overflow:hidden;background:radial-gradient(circle at 88% -6%,#28526b 0,transparent 32rem),#06182e}.topbar,.gamebar{display:flex;align-items:center;justify-content:space-between;gap:1rem;padding:1.1rem clamp(1.2rem,5vw,5.8rem);border-bottom:1px solid rgba(248,231,186,.12);position:relative;z-index:3}.brand{display:inline-flex;align-items:center;gap:.75rem;color:#f8e7ba;border:0;background:transparent;padding:0;text-align:left}.brand img{width:48px;height:48px;object-fit:contain;border-radius:14px;box-shadow:0 10px 30px #0003}.brand strong{display:block;font:700 1.3rem Playfair Display,serif;letter-spacing:.02em}.brand small{display:block;color:#a5c1c0;font-size:.68rem;margin-top:.15rem}.brand.mini img{width:38px;height:38px;border-radius:10px}.brand.mini strong{font-size:1.05rem}.top-actions,.gamebar-actions,.hero-actions,.card-foot{display:flex;align-items:center;gap:.65rem}.nav-button,.ghost-button,.icon-button,.help-button{border:1px solid rgba(248,231,186,.26);color:#f8e7ba;background:#f8e7ba0f;border-radius:999px;padding:.65rem .9rem;transition:.2s ease}.nav-button:hover,.ghost-button:hover,.icon-button:hover,.help-button:hover{background:#f8e7ba29;transform:translateY(-1px)}.icon-button{width:40px;height:40px;padding:0;border-radius:50%}.primary-button{border:0;border-radius:999px;padding:.86rem 1.2rem;color:#06182e;background:#f2d39b;font-weight:700;box-shadow:0 10px 24px #f2d39b2e}.primary-button span{margin-left:.35rem}.hero{position:relative;min-height:450px;display:grid;grid-template-columns:minmax(0,1fr) minmax(300px,1fr);align-items:center;gap:2rem;padding:3.8rem clamp(1.2rem,8vw,9rem) 4.2rem}.hero-copy{position:relative;z-index:1;max-width:580px}.kicker,.eyebrow{color:#84c9c4;letter-spacing:.14em;text-transform:uppercase;font-size:.68rem;font-weight:700}h1,h2,h3,p{margin-top:0}h1,h2{font-family:Playfair Display,serif}.hero h1{font-size:clamp(3.8rem,9vw,7.4rem);line-height:.88;letter-spacing:-.05em;margin:.65rem 0 1.35rem}.hero h1 span{color:#f2d39b}.hero p{max-width:430px;color:#b8d1cf;font-size:1.02rem;line-height:1.65}.hero-island{height:310px;position:relative;isolation:isolate}.sun{position:absolute;top:10%;right:16%;width:145px;height:145px;border-radius:50%;background:#f2d39b;box-shadow:0 0 80px #f2d39b59}.island-shape{position:absolute;left:12%;right:2%;bottom:24%;height:100px;background:#17385b;border-radius:55% 45% 20% 20%;transform:rotate(-3deg);box-shadow:0 18px #10405d,0 34px #0b3550}.island-shape:before,.island-shape:after{content:"";position:absolute;width:70px;height:150px;bottom:40px;border-left:8px solid #2b7a78;border-radius:50%;transform:rotate(30deg)}.island-shape:before{left:28%}.island-shape:after{left:48%;transform:rotate(-28deg)}.wave{position:absolute;left:-4%;right:-4%;height:36px;border-top:4px solid #76c7c0;border-radius:50%;opacity:.72}.wave-one{bottom:14%;transform:rotate(2deg)}.wave-two{bottom:4%;transform:rotate(-2deg);opacity:.38}.tapa-stamp{position:absolute;bottom:34%;right:19%;width:74px;height:74px;display:grid;place-items:center;border:3px solid #f2d39b;border-radius:50%;color:#f2d39b;font:700 2rem Playfair Display,serif;transform:rotate(12deg);opacity:.9}.game-section,.console-strip,.install-banner{margin:0 clamp(1.2rem,8vw,9rem) 2.8rem}.section-heading{display:flex;justify-content:space-between;align-items:end;margin-bottom:1.2rem}.section-heading h2{margin:.4rem 0 0;font-size:clamp(2rem,4vw,3rem)}.carousel-dots{display:flex;gap:.35rem;padding-bottom:.5rem}.carousel-dots span{display:block;width:28px;height:3px;background:#28526b}.carousel-dots span.active{background:#f2d39b}.game-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1rem}.game-card{--accent: #84c9c4;display:flex;flex-direction:column;overflow:hidden;min-height:380px;border:1px solid rgba(248,231,186,.15);border-radius:22px;background:#0c2946;box-shadow:0 18px 50px #00000026;transition:transform .25s ease,border-color .25s ease}.game-card:hover{transform:translateY(-6px);border-color:var(--accent)}.game-art{position:relative;height:150px;display:grid;place-items:center;background:radial-gradient(circle at 25% 30%,color-mix(in srgb,var(--accent),white 16%),transparent 30%),linear-gradient(135deg,var(--accent),#17385b 85%)}.game-icon{font-size:4.1rem;filter:drop-shadow(0 12px 14px rgba(0,0,0,.25))}.card-ribbon{position:absolute;right:.8rem;top:.8rem;padding:.35rem .55rem;border-radius:999px;color:#06182e;background:#f8e7ba;font-size:.64rem;font-weight:700}.game-card-body{display:flex;flex:1;flex-direction:column;padding:1.15rem}.game-card h3{margin:.4rem 0 .55rem;font:700 1.5rem Playfair Display,serif;color:#f8e7ba}.game-card p{color:#b8d1cf;line-height:1.55;font-size:.86rem}.card-foot{align-items:end;justify-content:space-between;gap:.7rem;margin-top:auto}.card-foot>span{color:#729ca1;font-size:.7rem;line-height:1.35}.play-button{white-space:nowrap;padding:.6rem .75rem;border:0;border-radius:10px;color:#06182e;background:#f2d39b;font-size:.78rem;font-weight:700}.console-strip,.install-banner{display:flex;align-items:center;justify-content:space-between;gap:2rem;padding:1.4rem 1.5rem;border:1px solid rgba(248,231,186,.12);border-radius:20px;background:#ffffff0a}.console-strip h2{margin:.35rem 0 .3rem}.console-strip p,.install-banner p{margin:0;color:#a5c1c0;font-size:.8rem}.mini-stats{display:flex;gap:1.6rem}.mini-stats div{min-width:70px}.mini-stats strong{display:block;font-size:1.4rem;color:#f2d39b}.mini-stats span{color:#729ca1;font-size:.68rem}.install-banner{margin-bottom:1.5rem;border-color:#84c9c43d;background:linear-gradient(90deg,#84c9c41a,#f2d39b0f)}.install-icon{width:42px;height:42px;display:grid;place-items:center;flex:none;border-radius:13px;background:#84c9c4;color:#06182e;font-size:1.8rem}.install-banner>div:nth-child(2){flex:1}.install-banner h3{margin:0 0 .3rem;font:700 1.2rem Playfair Display,serif}footer{padding:1.6rem;text-align:center;color:#729ca1;font-size:.72rem}footer span{color:#f2d39b;margin:0 .35rem}footer a{color:#84c9c4;text-decoration:none}.modal-layer{position:fixed;inset:0;z-index:10;display:grid;place-items:center;padding:1rem;background:#020913bf;backdrop-filter:blur(12px)}.modal-layer[hidden]{display:none}.modal{width:min(560px,100%);max-height:min(740px,90vh);overflow:auto;padding:1.4rem;border:1px solid rgba(248,231,186,.2);border-radius:20px;background:#0b2744;box-shadow:0 22px 80px #0006}.modal-head{display:flex;justify-content:space-between;align-items:center;margin-bottom:1.4rem}.modal h2{margin:0;font-size:2rem}.setting-row{display:flex;align-items:center;justify-content:space-between;gap:1rem;padding:1rem 0;border-bottom:1px solid rgba(248,231,186,.1)}.setting-row label{font-weight:700}.setting-row small{display:block;margin-top:.3rem;color:#729ca1;font-size:.72rem;font-weight:400}.segmented{display:flex;padding:.2rem;border-radius:9px;background:#06182e}.segmented button{padding:.5rem .65rem;color:#a5c1c0;border:0;border-radius:7px;background:transparent;font-size:.72rem}.segmented button.selected{color:#06182e;background:#f2d39b;font-weight:700}.toggle{min-width:80px;padding:.45rem .65rem;border:1px solid rgba(248,231,186,.24);border-radius:999px;color:#729ca1;background:transparent;font-size:.7rem}.toggle span{display:inline-block;width:10px;height:10px;margin-right:.35rem;border-radius:50%;background:#729ca1}.toggle.on{color:#f2d39b;border-color:#f2d39b}.toggle.on span{background:#84c9c4}.setting-row select{max-width:150px;padding:.5rem;border:1px solid rgba(248,231,186,.2);border-radius:7px;color:#f8e7ba;background:#06182e}.modal-note{margin:1rem 0 0;color:#729ca1;font-size:.75rem;line-height:1.5}.full{width:100%;margin-top:1.3rem}.achievement-list,.leaderboard-list{display:grid;gap:.65rem}.achievement,.leader-row{display:flex;align-items:center;gap:.8rem;padding:.8rem;border-radius:12px;background:#ffffff0a}.achievement.unlocked{border:1px solid rgba(132,201,196,.35)}.achievement-icon{font-size:1.55rem}.achievement strong{font-size:.88rem}.achievement p{margin:.2rem 0 0;color:#729ca1;font-size:.72rem}.achievement>span:last-child{margin-left:auto;color:#84c9c4;font-size:1.3rem}.leader-row .rank{width:30px;color:#f2d39b;font-weight:700}.leader-game{flex:1;font-size:.85rem}.leader-row strong{color:#84c9c4}.gamebar{padding-top:.7rem;padding-bottom:.7rem}.voice-line{color:#f2d39b;font-size:.78rem;text-align:right}.voice-line small{display:block;margin-top:.15rem;color:#84c9c4;font-size:.65rem}.game-main{width:min(1100px,100% - 2rem);margin:1.4rem auto 0}.phaser-frame{position:relative;overflow:hidden;min-height:320px;border:1px solid rgba(248,231,186,.2);border-radius:20px;background:#06182e;box-shadow:0 22px 70px #0000004d}.phaser-game{width:100%;min-height:320px}.phaser-game canvas{display:block;width:100%;height:auto;touch-action:none}.game-overlay{position:absolute;top:.75rem;right:.75rem;z-index:2}.help-button{width:34px;height:34px;padding:0;border-radius:50%;font-weight:700}.tutorial-popover{position:absolute;right:0;top:44px;width:230px;padding:.8rem;border:1px solid rgba(248,231,186,.2);border-radius:12px;background:#0b2744;box-shadow:0 14px 40px #0000004d;font-size:.75rem;line-height:1.45}.tutorial-popover[hidden]{display:none}.tutorial-popover strong{color:#f2d39b}.tutorial-popover p{margin:.35rem 0 0;color:#a5c1c0}.game-caption{display:flex;justify-content:space-between;align-items:center;gap:1rem;padding:1.3rem .3rem}.game-caption h1{margin:.35rem 0;font-size:clamp(2rem,5vw,3rem)}.game-caption p{max-width:600px;margin:0;color:#a5c1c0;line-height:1.55}.score-card{min-width:130px;padding:1rem;text-align:center;border:1px solid rgba(248,231,186,.18);border-radius:14px;background:#ffffff0a}.score-card span{display:block;color:#729ca1;font-size:.68rem;text-transform:uppercase;letter-spacing:.08em}.score-card strong{display:block;margin-top:.3rem;color:#f2d39b;font:700 2rem Playfair Display,serif}@media(max-width:800px){.top-actions span,.gamebar-actions .ghost-button{display:none}.hero{min-height:auto;grid-template-columns:1fr;padding-top:3rem}.hero-island{height:200px;margin-top:-1rem}.game-grid{grid-template-columns:1fr}.game-card{min-height:0}.game-art{height:120px}.console-strip,.install-banner{align-items:flex-start;flex-direction:column}.mini-stats{width:100%;justify-content:space-between}.install-banner>.ghost-button{align-self:stretch}.game-caption{align-items:flex-start;flex-direction:column}.score-card{width:100%}.gamebar-actions{gap:.35rem}.voice-line{max-width:150px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}}@media(max-width:480px){.topbar,.gamebar{padding-inline:1rem}.hero,.game-section,.console-strip,.install-banner{margin-left:1rem;margin-right:1rem}.hero h1{font-size:4rem}.hero-actions{flex-wrap:wrap}.setting-row{align-items:flex-start;flex-direction:column}.segmented,.setting-row select,.toggle{width:100%}.segmented button{flex:1}.game-main{width:calc(100% - 1rem);margin-top:.5rem}.phaser-frame{border-radius:13px}.top-actions{gap:.25rem}.nav-button{padding-inline:.6rem}}body{overflow-x:hidden}button:focus-visible,a:focus-visible,.game-card:focus-visible{outline:3px solid #84c9c4;outline-offset:4px}.app-shell{position:relative;isolation:isolate;background:radial-gradient(circle at 86% 4%,rgba(52,112,137,.55),transparent 26rem),radial-gradient(circle at 8% 40%,rgba(19,73,94,.32),transparent 30rem),#06182e}.app-shell:before{content:"";position:absolute;z-index:-1;inset:0;pointer-events:none;opacity:.34;background-image:linear-gradient(rgba(132,201,196,.035) 1px,transparent 1px),linear-gradient(90deg,rgba(132,201,196,.035) 1px,transparent 1px);background-size:48px 48px;mask-image:linear-gradient(to bottom,black,transparent 72%)}.topbar{position:sticky;top:0;background:#06182ebd;backdrop-filter:blur(18px);-webkit-backdrop-filter:blur(18px)}.brand img{transition:transform .35s ease,box-shadow .35s ease}.brand:hover img{transform:rotate(-5deg) scale(1.07);box-shadow:0 12px 34px #84c9c447}.nav-button,.ghost-button,.primary-button,.play-button{transition:transform .22s ease,box-shadow .22s ease,background .22s ease,border-color .22s ease}.primary-button:hover,.play-button:hover{transform:translateY(-2px);box-shadow:0 13px 28px #f2d39b40}.reveal{opacity:0;transform:translateY(20px);transition:opacity .7s ease,transform .7s cubic-bezier(.2,.8,.2,1)}.reveal.is-visible{opacity:1;transform:none}.live-dot{display:inline-flex;align-items:center;gap:.3rem;margin-left:.55rem;padding:.23rem .48rem;border:1px solid rgba(132,201,196,.35);border-radius:999px;color:#a9e6e0;font-size:.57rem;letter-spacing:.08em;vertical-align:middle}.live-dot:before{content:"";width:.38rem;height:.38rem;border-radius:50%;background:#84c9c4;box-shadow:0 0 #84c9c4a6;animation:live-pulse 2s infinite}.hero{overflow:hidden}.hero-copy{animation:hero-arrive .75s cubic-bezier(.2,.8,.2,1) both}.hero h1{text-wrap:balance}.hero h1 span{text-shadow:0 14px 40px rgba(242,211,155,.12)}.hero-actions .ghost-button{display:inline-flex;align-items:center;gap:.35rem}.resume-title{max-width:10rem;overflow:hidden;color:#84c9c4;text-overflow:ellipsis;white-space:nowrap}.hero-resume{color:#f2d39b;white-space:nowrap}.hero-signal{display:inline-flex;align-items:center;gap:.7rem;margin-top:1.6rem;padding:.6rem .85rem .6rem .65rem;border:1px solid rgba(132,201,196,.16);border-radius:14px;background:#07233a75;box-shadow:inset 0 1px #ffffff0a}.signal-icon{display:grid;width:29px;height:29px;place-items:center;border-radius:9px;color:#06182e;background:#84c9c4}.hero-signal strong,.hero-signal small{display:block}.hero-signal strong{color:#f8e7ba;font-size:.75rem}.hero-signal small{margin-top:.1rem;color:#80a7aa;font-size:.67rem}.hero-island{--island-x: 0px;--island-y: 0px;transition:transform .25s ease-out}.hero-halo{position:absolute;width:310px;height:310px;top:0;right:2%;border-radius:50%;background:radial-gradient(circle,rgba(242,211,155,.16),transparent 66%);filter:blur(3px);animation:halo-breathe 5s ease-in-out infinite}.star{position:absolute;z-index:-1;width:5px;height:5px;border-radius:50%;background:#f8e7ba;box-shadow:0 0 15px #f8e7ba;animation:twinkle 3s ease-in-out infinite}.star-one{top:15%;left:22%}.star-two{top:32%;right:4%;animation-delay:1.1s}.sun{transform:translate(calc(var(--island-x) * -.32),calc(var(--island-y) * -.32));animation:sun-float 6s ease-in-out infinite}.island-shape{transform:translate(var(--island-x),var(--island-y)) rotate(-3deg);transition:transform .25s ease-out;animation:island-bob 5.5s ease-in-out infinite}.wave{transition:transform .25s ease-out}.wave-one{transform:translate(calc(var(--island-x) * 1.2),calc(var(--island-y) * 1.2)) rotate(2deg);animation:wave-drift 5s ease-in-out infinite}.wave-two{transform:translate(calc(var(--island-x) * .8),calc(var(--island-y) * .8)) rotate(-2deg);animation:wave-drift 6.5s ease-in-out infinite reverse}.tapa-stamp{transform:translate(calc(var(--island-x) * .45),calc(var(--island-y) * .45)) rotate(12deg);animation:stamp-float 6s ease-in-out infinite}.island-caption{position:absolute;right:7%;bottom:4%;z-index:1;display:grid;gap:.18rem;padding:.65rem .8rem;border:1px solid rgba(132,201,196,.2);border-radius:12px;background:#06182e8c;backdrop-filter:blur(8px)}.island-caption span{color:#84c9c4;font-size:.58rem;letter-spacing:.13em}.island-caption strong{color:#f8e7ba;font-size:.78rem}.continue-strip{display:grid;grid-template-columns:auto minmax(0,1fr) auto auto;align-items:center;gap:1rem;margin:0 clamp(1.2rem,8vw,9rem) 2.8rem;padding:.75rem .85rem;border:1px solid rgba(132,201,196,.23);border-radius:20px;background:linear-gradient(100deg,#84c9c41f,#0e2d48b8 48%,#f2d39b12);box-shadow:0 18px 44px #0000001c}.continue-art{position:relative;display:grid;width:76px;height:76px;place-items:center;overflow:hidden;border-radius:15px;background:linear-gradient(135deg,var(--continue-accent),#17385b)}.continue-art:before{content:"";position:absolute;width:100px;height:100px;border:1px solid rgba(255,255,255,.35);border-radius:50%;animation:rotate-slow 10s linear infinite}.continue-art span{position:relative;z-index:1;font-size:2.7rem;filter:drop-shadow(0 8px 8px rgba(0,0,0,.25))}.continue-copy h2{margin:.2rem 0;font-size:clamp(1.25rem,2.2vw,1.75rem)}.continue-copy p{margin:0;color:#a5c1c0;font-size:.78rem}.continue-score{min-width:72px;text-align:center}.continue-score span{display:block;color:#729ca1;font-size:.62rem;text-transform:uppercase;letter-spacing:.1em}.continue-score strong{display:block;margin-top:.15rem;color:#f2d39b;font:700 1.6rem Playfair Display,serif}.showcase-controls{display:flex;align-items:center;gap:.8rem}.showcase-label{color:#729ca1;font-size:.67rem;letter-spacing:.08em;text-transform:uppercase}.carousel-dots{padding-bottom:0}.carousel-dots button{width:26px;height:5px;padding:0;border:0;border-radius:999px;background:#28526b;cursor:pointer;transition:width .25s ease,background .25s ease}.carousel-dots button.active{width:40px;background:#f2d39b}.game-card{position:relative;transform:translateY(0);box-shadow:0 18px 50px #00000026,inset 0 1px #ffffff08}.game-card:hover,.game-card.featured{transform:translateY(-8px);border-color:color-mix(in srgb,var(--accent),white 22%);box-shadow:0 26px 56px #00000040,0 0 0 1px color-mix(in srgb,var(--accent),transparent 68%)}.game-card.featured:after{content:"";position:absolute;inset:0;pointer-events:none;border:1px solid color-mix(in srgb,var(--accent),transparent 42%);border-radius:22px;animation:card-glow 2.7s ease-in-out infinite}.game-card.last-played .card-ribbon{color:#06182e;background:#84c9c4}.game-art{isolation:isolate;overflow:hidden}.game-art:after{content:"";position:absolute;z-index:-1;inset:-30%;opacity:.35;background:conic-gradient(from 40deg,transparent,rgba(255,255,255,.3),transparent 38%);animation:sheen 8s linear infinite}.game-art-beautiful-beast{background:radial-gradient(circle at 18% 32%,rgba(255,186,212,.7),transparent 22%),linear-gradient(135deg,var(--accent),#17385b 85%)}.game-art-fruits-roots{background:radial-gradient(circle at 75% 28%,rgba(166,235,187,.5),transparent 25%),linear-gradient(135deg,var(--accent),#17385b 85%)}.art-grid{position:absolute;z-index:-1;inset:0;opacity:.23;background-image:linear-gradient(45deg,transparent 46%,rgba(255,255,255,.55) 47%,transparent 49%),linear-gradient(-45deg,transparent 46%,rgba(255,255,255,.4) 47%,transparent 49%);background-size:28px 28px}.game-icon{position:relative;z-index:2;transition:transform .35s cubic-bezier(.2,.8,.2,1)}.game-card:hover .game-icon,.game-card.featured .game-icon{transform:translateY(-5px) scale(1.1) rotate(-4deg)}.art-orb{position:absolute;z-index:1;width:72px;height:72px;border:1px solid rgba(255,255,255,.42);border-radius:50%;opacity:.55}.orb-one{top:-24px;left:17%;animation:orb-drift 6s ease-in-out infinite}.orb-two{right:9%;bottom:-30px;width:98px;height:98px;animation:orb-drift 7s ease-in-out infinite reverse}.card-ribbon{z-index:3}.game-progress{margin-top:.25rem;margin-bottom:.95rem}.game-progress>div{display:flex;justify-content:space-between;color:#729ca1;font-size:.61rem;letter-spacing:.09em}.game-progress strong{color:var(--accent)}.game-progress i{display:block;height:5px;margin-top:.35rem;overflow:hidden;border-radius:99px;background:#f8e7ba1c}.game-progress b{display:block;height:100%;border-radius:inherit;background:var(--accent);box-shadow:0 0 12px var(--accent);transition:width .8s ease}.game-card .play-button{box-shadow:0 6px 18px #0000001f}.card-actions,.install-actions{display:flex;align-items:center;gap:.5rem}.download-button{padding:.55rem .65rem;border:1px solid rgba(132,201,196,.3);border-radius:10px;color:#8ce0d6;background:#05192d73;font-size:.7rem;font-weight:700;white-space:nowrap}.download-button:hover{border-color:#84c9c4;background:#84c9c41f}.download-button.downloaded{color:#06182e;border-color:#84c9c4;background:#84c9c4}.download-button:disabled,.install-actions button:disabled{cursor:wait;opacity:.7}.install-actions{flex-wrap:wrap;justify-content:flex-end}.single-game-grid{grid-template-columns:minmax(0,1fr)}.single-game-grid .game-card{display:grid;grid-template-columns:minmax(270px,.72fr) minmax(0,1fr);min-height:330px}.single-game-grid .game-art{height:auto;min-height:330px}.single-game-grid .game-icon{font-size:6.8rem}.single-game-grid .game-card-body{padding:clamp(1.4rem,3vw,2.3rem)}.single-game-grid .game-card h3{font-size:clamp(2rem,4vw,3.2rem)}.single-game-grid .game-card p{max-width:650px;font-size:.96rem}.single-game-grid .card-foot{max-width:720px}.console-strip{position:relative;overflow:hidden}.console-strip:after{content:"";position:absolute;width:260px;height:260px;top:-180px;right:16%;border-radius:50%;background:#84c9c414;filter:blur(8px)}.mini-stats{position:relative;z-index:1}.mini-stats strong{text-shadow:0 8px 24px rgba(242,211,155,.18)}.toast-region{position:fixed;z-index:30;right:1.25rem;bottom:1.25rem;display:grid;gap:.55rem;pointer-events:none}.toast{display:flex;align-items:center;gap:.55rem;max-width:min(350px,calc(100vw - 2rem));padding:.78rem .95rem;border:1px solid rgba(132,201,196,.32);border-radius:13px;color:#e3f4f1;background:#0a2b43eb;box-shadow:0 16px 42px #0000004d;backdrop-filter:blur(14px);animation:toast-in .35s cubic-bezier(.2,.8,.2,1) both;font-size:.8rem}.toast span{color:#84c9c4;font-size:1rem}.toast.toast-out{animation:toast-out .38s ease forwards}.motion-battery *,.motion-battery *:before,.motion-battery *:after{animation-duration:.001ms!important;animation-iteration-count:1!important;transition-duration:.001ms!important}@keyframes hero-arrive{0%{opacity:0;transform:translateY(24px)}to{opacity:1;transform:none}}@keyframes live-pulse{70%{box-shadow:0 0 0 7px #84c9c400}to{box-shadow:0 0 #84c9c400}}@keyframes halo-breathe{50%{transform:scale(1.13);opacity:.72}}@keyframes sun-float{50%{margin-top:-8px}}@keyframes island-bob{50%{margin-bottom:7px}}@keyframes wave-drift{50%{margin-left:16px}}@keyframes stamp-float{50%{margin-bottom:8px}}@keyframes twinkle{50%{opacity:.18;transform:scale(.55)}}@keyframes rotate-slow{to{transform:rotate(360deg)}}@keyframes orb-drift{50%{transform:translate(15px,9px)}}@keyframes sheen{to{transform:rotate(360deg)}}@keyframes card-glow{50%{opacity:.34}}@keyframes toast-in{0%{opacity:0;transform:translateY(12px) scale(.96)}to{opacity:1;transform:none}}@keyframes toast-out{to{opacity:0;transform:translateY(8px)}}@media(max-width:800px){.continue-strip{grid-template-columns:auto 1fr auto}.continue-strip>.primary-button{grid-column:1 / -1;width:100%}.showcase-label{display:none}.hero-signal{margin-top:1.1rem}.island-caption{right:4%}.game-grid{gap:1.1rem}.single-game-grid .game-card{display:flex;min-height:0}.single-game-grid .game-art{min-height:160px;height:160px}.single-game-grid .game-icon{font-size:4.8rem}}@media(max-width:560px){.continue-strip{grid-template-columns:auto minmax(0,1fr);gap:.75rem;padding:.75rem}.continue-art{width:60px;height:60px}.continue-art span{font-size:2.15rem}.continue-score{grid-column:2;text-align:left}.continue-score span,.continue-score strong{display:inline}.continue-score strong{margin-left:.4rem}.continue-strip>.primary-button{margin-top:.1rem}.resume-title{display:none}.hero-actions .ghost-button{font-size:.8rem}.toast-region{right:.75rem;bottom:.75rem}}@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation-duration:.001ms!important;animation-iteration-count:1!important;scroll-behavior:auto!important;transition-duration:.001ms!important}.reveal{opacity:1;transform:none}}.game-art-bridge-run{background-image:linear-gradient(90deg,#04122324,#04122352),url(/bridgebreak-runway.webp);background-position:center;background-size:cover}.game-art-bridge-run .game-icon{color:#d8fff4;font-size:4.4rem;letter-spacing:.08em;text-shadow:0 0 24px rgba(118,238,219,.75)}.game-art-celestial-cards{background-image:linear-gradient(90deg,#05091d33,#05091d33),url(/celestial-confluence-backdrop.webp);background-position:center;background-size:cover}.game-art-celestial-cards .game-icon{color:#ffe19a;font-size:3.8rem;letter-spacing:.08em;text-shadow:0 0 24px rgba(255,218,135,.65)}.featured-game-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.featured-game-grid .game-card{min-height:410px}.featured-game-grid .game-art{height:185px}.featured-game-grid .game-card-body{padding:1.4rem}.featured-game-grid .game-card h3{font-size:clamp(1.75rem,3.2vw,2.45rem)}.featured-game-grid .game-card p{max-width:520px;font-size:.92rem}@media(max-width:1100px){.featured-game-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:800px){.featured-game-grid{grid-template-columns:1fr}.featured-game-grid .game-card{min-height:0}.featured-game-grid .game-art{height:155px}}.phaser-game{position:relative}.phaser-game canvas{position:relative;z-index:1}.game-loading{position:absolute;z-index:3;inset:0;display:grid;place-content:center;justify-items:center;gap:.45rem;padding:1.5rem;color:#dcefed;background:radial-gradient(circle at 50% 40%,rgba(91,145,170,.24),transparent 18rem),#07182d;text-align:center}.game-loading strong{color:#f8e7ba;font:700 1.25rem Playfair Display,serif}.game-loading small{max-width:26rem;color:#8fc9c5;font-size:.74rem}.loading-orbit{display:grid;width:48px;height:48px;place-items:center;border:1px solid rgba(242,211,155,.65);border-radius:50%;color:#f2d39b;font-size:1.3rem;animation:rotate-slow 3s linear infinite}.game-loading-error .loading-orbit{border-color:#ffaa8fe6;color:#ffb6a5;animation:none}.game-loading-error .primary-button{margin-top:.45rem}.auth-modal{max-width:540px}.auth-modal>p{color:#b5d0d0;font-size:.88rem;line-height:1.6}.auth-modal form{display:grid;gap:.85rem;margin-top:1.2rem}.auth-modal label{display:grid;gap:.42rem;color:#d8ece7;font-size:.78rem;font-weight:700}.auth-modal input{width:100%;box-sizing:border-box;padding:.78rem .85rem;border:1px solid rgba(132,201,196,.28);border-radius:10px;outline:0;color:#f8e7ba;background:#031121bf;font:inherit}.auth-modal input:focus{border-color:#84c9c4;box-shadow:0 0 0 3px #84c9c41f}.form-status{min-height:1.2rem;margin:0;color:#f2d39b;font-size:.78rem;line-height:1.45}.text-button{padding:.55rem .2rem;border:0;color:#8ce0d6;background:transparent;cursor:pointer;font:inherit;font-size:.82rem;text-decoration:underline;text-underline-offset:.22rem}.text-button:hover{color:#f8e7ba}.totp-scan{display:grid;grid-template-columns:136px 1fr;gap:1rem;align-items:center;margin:1.1rem 0;padding:.9rem;border:1px solid rgba(132,201,196,.2);border-radius:15px;background:#04162aa6}.totp-scan img{width:136px;height:136px;padding:.45rem;border-radius:9px;background:#fff}.totp-scan strong,.totp-scan span{display:block}.totp-scan span{margin-top:.35rem;color:#a9c8c4;font-size:.76rem;line-height:1.45}.totp-scan code{display:block;overflow-wrap:anywhere;margin-top:.65rem;color:#f2d39b;font-size:.72rem}.admin-event-list{display:grid;gap:.65rem;margin-top:1rem}.admin-event-list>div{display:grid;grid-template-columns:minmax(130px,.7fr) minmax(180px,1fr) auto;gap:.75rem;align-items:center;padding:.75rem .85rem;border:1px solid rgba(132,201,196,.14);border-radius:11px;color:#cbe2dd;background:#03142861;font-size:.82rem}.admin-event-list strong{color:#f2d39b;text-transform:capitalize}.admin-event-list small{color:#7fa5a4;font-size:.68rem;text-align:right}.admin-error{grid-column:1 / -1}.account-status{display:flex;align-items:center;justify-content:space-between;gap:1rem;padding:.9rem 1rem;border:1px solid rgba(132,201,196,.2);border-radius:12px;color:#8bb8b7;background:#03142861;font-size:.78rem}.account-status strong{color:#f2d39b}@media(max-width:560px){.totp-scan{grid-template-columns:1fr;justify-items:center;text-align:center}.admin-event-list>div{grid-template-columns:1fr;gap:.25rem}.admin-event-list small{text-align:left}}.top-actions .selected{border-color:#84c9c4a6;color:#f5e6bd;background:#84c9c41f}.site-footer{display:flex;flex-wrap:wrap;justify-content:center;gap:.35rem .75rem;padding:2rem 1.25rem;color:#78a5a9;text-align:center;font-size:.72rem;line-height:1.5}.site-footer strong{color:#d6e8df}.site-footer a{color:#8ce0d6;text-decoration:none}.site-footer a:hover{color:#f4d08b}.projects-main,.admin-main,.access-main{width:min(1440px,calc(100% - 2.5rem));margin:0 auto}.projects-hero{position:relative;display:grid;min-height:430px;margin-top:1.25rem;overflow:hidden;border:1px solid rgba(242,211,155,.22);border-radius:26px;background:#0b1118 url(/projects/tongaai-banner.webp) center / cover no-repeat;box-shadow:0 28px 70px #00000047}.projects-hero-shade{position:absolute;inset:0;background:linear-gradient(90deg,#040f1ae0,#040f1a73 52%,#040f1a21)}.projects-hero-copy{position:relative;z-index:1;align-self:center;max-width:680px;padding:clamp(2rem,6vw,5rem)}.projects-hero h1{max-width:580px;margin:.5rem 0 1rem;color:#fff2c8;font-size:clamp(2.65rem,6vw,5.4rem);line-height:.97}.projects-hero h1 span{color:#87dfd2}.projects-hero p{max-width:555px;color:#d7e9e2;font-size:clamp(1rem,2vw,1.27rem);line-height:1.55}.projects-tongan{color:#f2d39b!important;font-family:Playfair Display,Georgia,serif;font-size:1.08rem!important}.contact-actions,.access-actions{display:flex;flex-wrap:wrap;gap:.7rem;margin-top:1.6rem}.contact-actions a,.access-actions a{text-decoration:none}.projects-intro{display:grid;grid-template-columns:minmax(0,1.2fr) minmax(260px,.8fr);gap:2rem;align-items:end;padding:clamp(2.2rem,6vw,5rem) 1rem 2rem}.projects-intro h2,.projects-section h2{margin:.25rem 0 0;color:#f8e7ba;font-size:clamp(2rem,4vw,3.4rem)}.projects-intro p{margin:0;color:#a7c7c7;line-height:1.65}.projects-section{padding:2rem 1rem 3.4rem}.projects-section .section-heading{margin-bottom:1.25rem}.projects-section .section-heading>span{color:#86b8b5;font-size:.76rem;letter-spacing:.08em;text-transform:uppercase}.projects-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:1.1rem}.project-card{display:grid;grid-template-rows:180px minmax(0,1fr);overflow:hidden;border:1px solid rgba(132,201,196,.2);border-radius:18px;background:linear-gradient(145deg,#11374ee6,#071a30f2);box-shadow:0 16px 42px #0000002e;transition:transform .25s ease,border-color .25s ease,box-shadow .25s ease}.project-card:hover{transform:translateY(-5px);border-color:#f2d39b8c;box-shadow:0 23px 52px #0000004d}.project-card img{width:100%;height:100%;object-fit:cover;background:#0b1f38}.project-card-body{display:grid;align-content:space-between;gap:1rem;min-height:220px;padding:1.25rem}.project-card h3{margin:.65rem 0 .55rem;color:#f8e7ba;font-size:1.42rem;line-height:1.08}.project-card p{margin:0;color:#b5d0d0;font-size:.86rem;line-height:1.52}.project-tag{display:inline-flex;padding:.27rem .5rem;border:1px solid rgba(132,201,196,.32);border-radius:999px;color:#8ae3d6;background:#84c9c414;font-size:.64rem;font-weight:700;letter-spacing:.08em;text-transform:uppercase}.project-link{color:#f1cf8c;font-size:.78rem;font-weight:800;letter-spacing:.04em;text-decoration:none}.project-link:hover{color:#fff1c6}.admin-main{padding:clamp(1.5rem,4vw,4rem) 0}.admin-heading{display:flex;justify-content:space-between;gap:1rem;align-items:end;padding:1rem 0 1.8rem}.admin-heading h1{margin:.35rem 0;color:#f8e7ba;font-size:clamp(2.35rem,5vw,4rem)}.admin-heading p{margin:0;color:#a4c9c5}.admin-heading a{color:#87dfd2}.admin-warning{margin-bottom:1rem;padding:1.1rem 1.25rem;border:1px solid rgba(245,191,113,.48);border-radius:16px;color:#f6deb4;background:#6841163d}.admin-warning p{margin:.45rem 0 0;color:#d2c3a8;line-height:1.55}.admin-metrics{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:1rem}.admin-metrics article{display:grid;min-height:140px;align-content:start;gap:.45rem;padding:1.2rem;border:1px solid rgba(132,201,196,.18);border-radius:17px;background:#0b2840ad}.admin-metrics span,.admin-metrics small{color:#82a9aa;font-size:.72rem}.admin-metrics strong{color:#f3d08c;font:700 2.4rem Playfair Display,serif;line-height:1}.admin-metrics .admin-event{color:#dbf0ec;font-family:system-ui;font-size:1rem;line-height:1.25}.admin-next{display:flex;justify-content:space-between;gap:2rem;align-items:end;margin-top:1rem;padding:clamp(1.5rem,4vw,3rem);border:1px solid rgba(132,201,196,.23);border-radius:20px;background:linear-gradient(110deg,#14485385,#0e1e39c2)}.admin-next h2{max-width:700px;margin:.4rem 0;color:#f8e7ba;font-size:clamp(1.55rem,3vw,2.35rem)}.admin-next p{max-width:700px;margin:0;color:#b1cdca;line-height:1.55}.admin-next a{text-decoration:none;white-space:nowrap}.access-main{display:grid;min-height:calc(100vh - 220px);place-items:center;padding:3rem 0}.access-card{width:min(680px,100%);padding:clamp(1.7rem,5vw,4rem);border:1px solid rgba(242,211,155,.35);border-radius:24px;background:radial-gradient(circle at 50% 0,rgba(140,226,214,.12),transparent 18rem),#0a223d;box-shadow:0 28px 72px #00000052;text-align:center}.access-mark{display:grid;width:88px;height:88px;margin:0 auto 1.2rem;place-items:center;border:1px solid rgba(242,211,155,.6);border-radius:50%;color:#f8e7ba;font:700 1.8rem Playfair Display,serif}.access-card h1{margin:.5rem 0 1rem;color:#f8e7ba;font-size:clamp(2rem,4.5vw,3.1rem)}.access-card>p{color:#bdd3d0;line-height:1.62}.access-status{display:grid;gap:.35rem;margin-top:1.4rem;padding:1rem;border:1px solid rgba(255,183,130,.4);border-radius:14px;color:#ffc7a4;background:#5d2f2342;text-align:left}.access-status span{color:#dbbdaf;font-size:.82rem;line-height:1.45}.access-actions{justify-content:center}@media(max-width:1050px){.projects-grid,.admin-metrics{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:760px){.projects-main,.admin-main,.access-main{width:min(100% - 1.2rem,1440px)}.projects-hero{min-height:500px;background-position:38% center}.projects-hero-shade{background:linear-gradient(90deg,#040f1adb,#040f1a75)}.projects-hero-copy{align-self:end;padding:2rem 1.5rem}.projects-intro{grid-template-columns:1fr;gap:.8rem;padding-inline:.2rem}.projects-section{padding-inline:.2rem}.projects-grid{grid-template-columns:1fr}.project-card{grid-template-rows:190px minmax(0,1fr)}.admin-heading,.admin-next{align-items:flex-start;flex-direction:column}.admin-next a{width:100%;text-align:center}.admin-metrics{grid-template-columns:1fr}.site-footer{padding-inline:1rem}.gamebar-actions [data-projects],.gamebar-actions [data-admin]{display:none}}@media(max-width:800px){.install-actions{width:100%;justify-content:stretch}.install-actions button{flex:1}.card-foot{align-items:flex-start}.card-actions{flex:none}}@media(max-width:440px){.card-foot{align-items:stretch;flex-direction:column}.card-actions{width:100%}.card-actions button{flex:1}.hero-resume{width:100%;text-align:left}}
