:root{--ink:#40237a;--violet:#642bb8;--pink:#ed4794;--muted:#66597f;--teal:#30cbd4;--yellow:#ffd95e}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{font-family:ui-rounded,"Arial Rounded MT Bold",system-ui,-apple-system,"Segoe UI",sans-serif;margin:0;color:var(--ink);background:radial-gradient(circle at 5% 2%,#ddfaff,transparent 25%),radial-gradient(circle at 95% 21%,#ffe8f4,transparent 28%),#fffaf5}button,input{font:inherit}button{cursor:pointer}button:disabled{opacity:.55;cursor:not-allowed}a{color:#6b34ba}button:focus-visible,a:focus-visible,input:focus-visible{outline:3px solid #03bbcf;outline-offset:4px}.wrap{max-width:770px;margin:auto;padding:0 16px}.topbar{display:flex;justify-content:space-between;align-items:center;gap:8px;padding:17px 0}.brand{font-size:18px;font-weight:1000;letter-spacing:-.5px;text-decoration:none;color:#462486}.brand span{color:var(--pink)}.top-pill{font-size:11px;border:2px solid #e8ddf7;background:white;padding:7px 12px;border-radius:24px;font-weight:900}.hero{text-align:center;padding:18px 0 36px}.tiny-head{display:inline-block;background:#efe3ff;color:#6932ae;font-size:11px;font-weight:1000;letter-spacing:1.5px;border-radius:24px;padding:10px 15px}.hero h1{font-size:clamp(43px,9vw,66px);font-weight:1000;line-height:1;letter-spacing:-2px;color:var(--violet);margin:13px 0;text-shadow:2px 4px #e6d6ff}.hero h1 strong{display:block;color:var(--pink);text-shadow:2px 4px #ffdeec}.hero p{font-size:17px;line-height:1.45;font-weight:700;color:var(--muted);max-width:550px;margin:12px auto}.hero .duration{color:#714aa3;font-size:13px;font-weight:950;margin:15px 0 22px}.intro-chips{display:flex;gap:8px;justify-content:center;flex-wrap:wrap}.intro-chips span{padding:9px 12px;background:white;border:2px solid #e9dff5;border-radius:22px;font-weight:900;font-size:12px}.mascot{position:relative;width:238px;height:210px;margin:10px auto 0}.squish-head{position:absolute;inset:20px 30px 28px;border:7px solid #672aab;background:linear-gradient(125deg,#ff7aad,#ffe568 52%,#66e7d8 90%);border-radius:43% 46% 38% 44%;box-shadow:inset -12px -13px #6760c533,inset 10px 10px #fff9,0 13px #be94e9;transform:rotate(-5deg)}.eyes{position:absolute;left:0;right:0;top:42px;color:#62208c;font-size:33px;font-weight:1000;letter-spacing:4px}.smile{position:absolute;left:0;right:0;top:66px;color:#66248e;font-size:66px;line-height:1}.hands{position:absolute;left:0;right:0;top:80px;display:flex;justify-content:space-between;font-size:57px;filter:drop-shadow(3px 3px #6f30a2)}.hands i{font-style:normal}.star{position:absolute;font-size:31px;color:#ffcd2c;filter:drop-shadow(2px 2px #792c9e)}.star.s1{left:7px;top:4px}.star.s2{right:6px;top:7px}.star.s3{left:9px;bottom:3px}.map-emoji{position:absolute;right:4px;bottom:0;font-size:31px;transform:rotate(12deg)}.btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;border:0;border-radius:18px;padding:14px 22px;text-decoration:none;font-size:17px;font-weight:1000;transition:transform .1s;background:white}.btn.primary{background:linear-gradient(145deg,#f65698,#e83383);color:white;box-shadow:0 6px #ad1b65,0 12px 21px #d62c7224}.btn:not(:disabled):active{transform:translateY(3px)}.btn.outline{border:2px solid #dbcbf1;color:#6730a9;background:#fff;box-shadow:none;font-size:14px;padding:11px 15px}.direct-entry{display:block;text-align:center;font-size:13px;font-weight:900;margin:21px auto 6px}.game-card{background:white;border:3px solid #ebdafa;box-shadow:0 9px #efe4fa,0 16px 32px #6b2a8715;border-radius:29px;padding:clamp(16px,4vw,30px);margin:24px 0 37px}.game-card h2{font-size:clamp(25px,5.8vw,38px);line-height:1.14;margin:14px 0 9px;letter-spacing:-1.3px}.adventure-header{display:flex;justify-content:space-between;align-items:center;gap:6px}.label{font-size:11px;font-weight:1000;color:#713dbb;letter-spacing:.5px}.label.muted{color:#8c7ca5}.progress{display:grid;grid-template-columns:repeat(7,1fr);gap:7px;margin:12px 0 18px}.progress i{height:9px;background:#f0e9f8;border-radius:12px}.progress i.on{background:linear-gradient(90deg,#f64a9b,#ffce55)}.mission{text-align:center}.mission h3{font-size:17px;margin:22px 0 10px}.sub{color:var(--muted);font-weight:680;line-height:1.5;font-size:15px}.choices{display:flex;gap:9px;flex-wrap:wrap;justify-content:center}.choices button{color:var(--ink);background:#f8f2ff;border:3px solid #e5d3f6;border-radius:14px;min-height:49px;padding:10px 13px;font-weight:900}.choices button[aria-pressed=true]{border-color:var(--pink);background:#fff0f8;box-shadow:0 4px #f5c6e3}.actions{display:flex;flex-wrap:wrap;justify-content:center;gap:10px;margin:24px 0 7px}.my-pal{--pal:#ffe568;background:var(--pal);border:6px solid #6930a7;border-radius:44% 47% 38% 42%;height:148px;width:170px;font-size:62px;display:grid;place-items:center;margin:20px auto 10px;box-shadow:inset -12px -10px #a460c226,inset 10px 10px #fff8,0 10px #b691e1;user-select:none;transition:background .2s,transform .13s}.my-pal.pressed{transform:scale(1.15,.76)}.pal-label{display:inline-block;background:#e8fafa;padding:9px 15px;border-radius:14px;font-weight:950;color:#3c6889}.squish-button{border:0;background:none;margin:4px auto;display:block;padding:0;touch-action:manipulation}.squish-button .my-pal{height:183px;width:215px;font-size:74px}.meter-list{max-width:385px;margin:18px auto;display:grid;gap:12px}.meter-list>div{display:flex;align-items:center;gap:12px;font-weight:900;font-size:13px}.meter-list>div>span:first-child{text-align:left;min-width:94px}.meter-list>div>b{background:#f3e8fb;border-radius:20px;overflow:hidden;flex:1;height:17px}.meter-list b i{display:block;width:0;height:100%;background:linear-gradient(100deg,#1bcbd0,#f44b96);transition:width .15s}.scoreline{font-weight:1000;color:#6c2ca8;background:#f5edff;border-radius:13px;padding:12px;margin:12px 0 16px}.memory-grid,.spot-grid,.pop-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:9px;max-width:470px;margin:18px auto}.memory-grid button,.spot-grid button,.pop-grid button{aspect-ratio:1/1;border-radius:16px;font-weight:1000;font-size:clamp(22px,5vw,38px);touch-action:manipulation}.memory-grid button{background:linear-gradient(145deg,#975ed8,#7540c3);border:3px solid #e2cef9;color:white;box-shadow:0 4px #6236a4}.memory-grid button.open{background:#fff8e3;color:var(--ink);border-color:#f9dd7a}.memory-grid button.matched{background:#e4fbf2;border-color:#78d7b0;color:#386d64;box-shadow:none}.memory-grid button:disabled{opacity:1}.secondary-actions{display:flex;gap:8px;justify-content:center;flex-wrap:wrap}.target-line{font-weight:900;font-size:18px}.target-line span{display:inline-block;font-size:58px;vertical-align:middle}.spot-grid button{background:#f9f1ff;border:2px solid #ddc8f8}.quiz-question{font-size:21px!important;color:#562595}.quiz-options{display:grid;gap:10px;max-width:510px;margin:18px auto}.quiz-options button{background:#fff8ef;border:3px solid #f2dba9;border-radius:15px;padding:17px;color:var(--ink);font-weight:900;text-align:left}.quiz-options button.chosen{border-color:#47cba8;background:#dffbf0}.quiz-response{font-weight:950;min-height:23px;color:#398e69}.pop-grid button{border-radius:50%;border:4px solid #fff;outline:3px solid #dcc8f6;background:var(--pop);box-shadow:0 5px #ab89d0;color:#fff;font-size:29px}.pop-grid button.popped{background:#f0ebf7;box-shadow:inset 0 3px #e0d4e9;color:#b4a0cb;outline:2px solid #e5d8f7}.pop-grid button:disabled{opacity:1}.door-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:13px;margin:22px 0}.door{border:5px solid white;outline:3px solid #e4d1ff;border-radius:18px;min-height:158px;font-size:61px;font-weight:1000;color:white;box-shadow:0 8px #b38ee2}.door.pink{background:#ee5398}.door.aqua{background:#39c5d4}.door.purple{background:#8b61de}.skip{display:block;margin:21px auto 0;border:0;background:transparent;color:#82729b;font-size:12px;font-weight:900;text-decoration:underline}.result{border-radius:26px;background:linear-gradient(135deg,#f1e6ff,#ffecf5,#e6fffb);padding:20px;border:3px dashed #c4a1e9;margin:19px 0}.result .my-pal{width:130px;height:122px;font-size:50px}.result h3{font-size:30px;margin:14px 0 5px;color:#682cae}.result p{font-weight:750;color:#5b4a7a}.result-emojis{font-size:42px}.ribbon{display:inline-block;background:white;border:2px solid #dbcbf4;color:#7e44b7;border-radius:20px;font-weight:950;padding:10px 13px;font-size:12px}.thankyou{background:#e9faf8;border-radius:17px;color:#4e5b80;font-weight:700;padding:17px;line-height:1.45;margin:18px 0}.giveaway h2{text-align:center}.giveaway .tiny-head{display:block;width:max-content;margin:0 auto;font-size:10px}.prize{display:flex;align-items:center;gap:16px;background:#fff7d9;border:3px solid #ffe291;border-radius:20px;margin:18px 0;padding:14px}.prize-art{font-size:49px;line-height:1}.prize p{font-size:13px;line-height:1.5;color:#645075;margin:0;font-weight:700}.prize b{display:block;font-size:18px;color:var(--ink)}.form-fields{display:grid;gap:12px;margin:18px 0}.form-fields label{font-weight:900;font-size:14px}.form-fields input{display:block;width:100%;padding:15px;border:2px solid #ddd0ec;border-radius:13px;margin-top:6px;color:var(--ink);font-size:17px;background:white}.check-list{display:grid;gap:14px;margin:18px 0}.check-list label{display:flex;align-items:flex-start;gap:12px;font-size:13px;line-height:1.45;color:#65597d;font-weight:700}.check-list input{flex:0 0 20px;height:20px;width:20px;margin:1px 0 0;accent-color:#7133b1}.submit{width:100%}.form-status{padding:12px;border-radius:11px;background:#ffebf4;color:#a92267;font-weight:900}.fine{font-size:12px;line-height:1.5;color:#716385}.thankyou-success{padding:22px;text-align:center;background:#e9ffed;border:3px solid #9ee0ae;border-radius:21px;color:#286c3b}.footer{text-align:center;color:#817596;font-size:12px;line-height:1.8;padding:8px 0 70px}.footer a{margin:0 5px}.sticky-gift{position:fixed;z-index:5;bottom:calc(12px + env(safe-area-inset-bottom));right:12px;background:#fff7d7;border:2px solid #e6c86a;color:#62309f;border-radius:28px;padding:11px 14px;font-size:12px;font-weight:1000;text-decoration:none;box-shadow:0 4px 18px #342a4f20}.confetti{position:fixed;z-index:50;top:-15px;width:10px;height:13px;border-radius:2px;pointer-events:none;animation:fall 1.8s ease-in forwards}@keyframes fall{to{transform:translateY(107vh) rotate(520deg);opacity:0}}[hidden]{display:none!important}
@media(max-width:450px){.topbar .brand{font-size:16px}.top-pill{font-size:10px}.wrap{padding:0 13px}.hero h1{font-size:46px}.hero p{font-size:15px}.game-card{border-radius:23px}.choices{gap:7px}.choices button{padding:9px 10px;min-height:45px}.memory-grid,.spot-grid,.pop-grid{gap:7px}.door-grid{gap:9px}.door{min-height:124px;font-size:47px}.prize-art{font-size:36px}.result h3{font-size:26px}}@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation:none!important;transition:none!important;scroll-behavior:auto!important}}