:root,[data-theme=light]{color-scheme:light;--font-display: "Outfit", "Nunito", system-ui, sans-serif;--font-body: "Outfit", "Nunito", system-ui, sans-serif;--font-num: "Outfit", "Nunito", system-ui, sans-serif;--bg: #f4f1ff;--bg-dot: rgba(124, 92, 255, .14);--surface: #ffffff;--surface-2: #ece7ff;--surface-3: #ddd5fb;--surface-sunk: #e4def9;--scrim: rgba(244, 241, 255, .84);--overlay: rgba(27, 33, 64, .45);--text: #1b2140;--muted: #6b7499;--primary: #7c5cff;--primary-d: #5a3fd1;--on-primary: #ffffff;--success: #3ee6a8;--success-d: #1fb683;--success-ink: #0e9c6b;--on-success: #05281c;--reward: #ffb547;--reward-d: #d18a1f;--reward-ink: #b86f00;--on-reward: #2a1b00;--danger: #ff6b6b;--danger-d: #d94848;--danger-ink: #e04444;--info: #4cc3ff;--info-d: #2799d6;--card-shadow: 0 8px 24px rgba(60, 40, 140, .1);--key-shadow: #cfc6f5;--hero-grad: linear-gradient(160deg, #e9e2ff, #ffffff);--board-frame: #bdb0ff;--board-cell-a: #f3f0ff;--board-cell-b: #e8e2ff;--pet-body: #7c5cff;--radius-sm: 12px;--radius-md: 18px;--radius-lg: 26px;--pad: clamp(14px, 4.5vmin, 28px);--bounce: cubic-bezier(.34, 1.9, .5, 1);--safe-t: env(safe-area-inset-top, 0px);--safe-r: env(safe-area-inset-right, 0px);--safe-b: env(safe-area-inset-bottom, 0px);--safe-l: env(safe-area-inset-left, 0px)}[data-theme=dark]{color-scheme:dark;--bg: #141b2d;--bg-dot: rgba(255, 255, 255, .075);--surface: #1e2740;--surface-2: #263152;--surface-3: #323f69;--surface-sunk: #141b2d;--scrim: rgba(20, 27, 45, .82);--overlay: rgba(8, 12, 24, .6);--text: #eaf0ff;--muted: #9aa7c7;--success-ink: #3ee6a8;--reward-ink: #ffb547;--danger-ink: #ff6b6b;--card-shadow: 0 8px 24px rgba(0, 0, 0, .28);--key-shadow: #161d36;--hero-grad: linear-gradient(160deg, #2b2f6b, #1e2740);--board-frame: #2f3a66;--board-cell-a: #1e2740;--board-cell-b: #232d4c}*{box-sizing:border-box;-webkit-tap-highlight-color:transparent}html,body{margin:0;height:100%;width:100%;overflow:hidden;overscroll-behavior:none;background:var(--bg) radial-gradient(var(--bg-dot) 1.3px,transparent 1.7px) 0 0 / 24px 24px;color:var(--text);font-family:var(--font-body);font-weight:500;-webkit-text-size-adjust:100%;touch-action:manipulation}body{user-select:none;-webkit-user-select:none}input{user-select:text;-webkit-user-select:text}#app{position:fixed;top:0;right:0;bottom:0;left:0;height:100vh;height:100dvh;width:100%;overflow:hidden}button{font-family:inherit;cursor:pointer;color:inherit}b,strong{font-weight:800}h1,h2,h3{font-family:var(--font-display)}.screen{position:absolute;top:0;right:0;bottom:0;left:0;display:flex;flex-direction:column;align-items:center;padding:calc(var(--safe-t) + var(--pad)) calc(var(--safe-r) + var(--pad)) calc(var(--safe-b) + var(--pad)) calc(var(--safe-l) + var(--pad));animation:screenIn .3s ease-out}.screen.scroll{overflow-x:hidden;overflow-y:auto;-webkit-overflow-scrolling:touch;scroll-behavior:smooth}@keyframes screenIn{0%{opacity:0;transform:translateY(10px)}}.col{width:100%;max-width:560px;margin:auto 0;display:flex;flex-direction:column;gap:clamp(10px,2.2vmin,18px)}.col.center{align-items:center;text-align:center}.hero-title{margin:0;font-size:clamp(28px,7.4vmin,52px);line-height:1.05;font-weight:800;letter-spacing:-.5px}.hero-sub{margin:0;font-size:clamp(17px,3.6vmin,24px);color:var(--muted)}.title{margin:0;font-size:clamp(26px,6.2vmin,40px);line-height:1.1;font-weight:800}.muted{color:var(--muted)}.shake{animation:shake .45s}@keyframes shake{15%,55%{transform:translate(-10px)}35%,75%{transform:translate(10px)}}.bump{animation:bump .35s var(--bounce)}@keyframes bump{40%{transform:scale(1.25)}}.btn{--c: var(--primary);--cd: var(--primary-d);--on: var(--on-primary);border:0;border-radius:20px;background:var(--c);color:var(--on);font-weight:800;font-size:clamp(17px,3.4vmin,22px);min-height:48px;min-width:44px;padding:12px 26px;box-shadow:0 6px 0 var(--cd),0 14px 22px #3c288c2e;transition:transform .45s var(--bounce),box-shadow .12s,filter .2s}.btn:active:not(:disabled){transform:scale(1.05,.9) translateY(5px);box-shadow:0 1px 0 var(--cd),0 4px 10px #3c288c33;transition-duration:.06s}.btn:disabled{filter:grayscale(.85) opacity(.55);cursor:not-allowed;box-shadow:0 4px 0 var(--surface-3)}.btn.primary{--c: var(--primary);--cd: var(--primary-d);--on: var(--on-primary)}.btn.amber{--c: var(--reward);--cd: var(--reward-d);--on: var(--on-reward)}.btn.mint{--c: var(--success);--cd: var(--success-d);--on: var(--on-success)}.btn.info{--c: var(--info);--cd: var(--info-d);--on: #04293d}.btn.coral{--c: var(--danger);--cd: var(--danger-d);--on: #fff}.btn.ghostbtn{--c: var(--surface);--cd: var(--surface-3);--on: var(--text)}.btn.big{width:100%;font-size:clamp(19px,4vmin,26px);min-height:56px}.link{background:none;border:0;color:var(--muted);font-weight:700;font-size:16px;padding:12px;min-height:44px;text-decoration:underline;text-underline-offset:3px}.iconbtn{width:44px;height:44px;border-radius:14px;border:0;background:var(--surface);box-shadow:0 3px 0 var(--surface-3);font-size:22px;display:grid;place-items:center;flex:none;transition:transform .35s var(--bounce)}.iconbtn:active{transform:scale(1.1,.88)}.card{background:var(--surface);border-radius:var(--radius-lg);padding:clamp(14px,3vmin,22px);position:relative;overflow:hidden;box-shadow:var(--card-shadow)}.card .k{display:block;color:var(--muted);font-weight:700;letter-spacing:.5px;margin-bottom:6px;font-size:clamp(13px,2.4vmin,16px)}.stat{background:var(--surface);border-radius:var(--radius-md);padding:12px 6px;text-align:center;box-shadow:var(--card-shadow)}.stat b{display:block;font-size:clamp(24px,6vmin,38px);line-height:1.1;font-family:var(--font-num)}.stat small{color:var(--muted);font-weight:700}.chip{display:flex;align-items:center;justify-content:center;gap:6px;background:var(--surface);border-radius:16px;padding:6px 12px;font-weight:800;font-size:clamp(18px,3.6vmin,24px);box-shadow:0 3px 0 var(--surface-3);min-height:44px}.chip svg{width:1.2em;height:1.2em;flex:none}.chip small{color:var(--muted);font-size:.65em}.chip.flame svg{color:var(--reward)}.chip.gem svg{color:var(--info)}.chip.heart svg{color:var(--danger)}.tag{background:var(--reward);color:var(--on-reward);font-weight:800;padding:4px 16px;border-radius:99px;letter-spacing:1px;text-transform:uppercase;font-size:14px}.checks{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:10px;text-align:left}.checks li{display:flex;gap:12px;align-items:center;font-size:clamp(16px,3.4vmin,20px)}.checks i{flex:none;width:28px;height:28px;border-radius:10px;background:color-mix(in srgb,var(--success) 25%,transparent);color:var(--success-ink);display:grid;place-items:center;font-size:16px;font-style:normal}.price{display:flex;align-items:baseline;gap:4px;margin-bottom:10px}.price b{font-size:clamp(34px,8vmin,52px);color:var(--reward-ink);line-height:1}.price span{color:var(--muted);font-weight:700}.progress{height:clamp(8px,1.8vmin,12px);background:var(--surface-2);border-radius:99px;overflow:hidden}.progress i{display:block;height:100%;width:0;background:var(--primary);border-radius:99px;transition:width .5s var(--bounce)}.star{color:var(--surface-3);display:inline-block}.star.on{color:var(--reward);animation:starPop .6s var(--bounce) both;text-shadow:0 3px 0 var(--reward-d)}@keyframes starPop{0%{transform:scale(0) rotate(-90deg)}}.blur{filter:blur(11px);pointer-events:none;user-select:none;-webkit-user-select:none}.card.locked{cursor:pointer}.card.locked:active{transform:scale(.98)}.lockov{position:absolute;top:0;right:0;bottom:0;left:0;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:4px;background:color-mix(in srgb,var(--bg) 35%,transparent)}.lockic{display:grid;place-items:center;width:52px;height:52px;border-radius:18px;background:var(--primary);color:var(--on-primary);font-size:26px;box-shadow:0 6px 18px color-mix(in srgb,var(--primary) 50%,transparent)}.lockov small{font-weight:700;color:var(--text)}.field{display:flex;flex-direction:column;gap:6px}.field>span{font-weight:700;color:var(--muted);font-size:15px}.field input{width:100%;min-height:52px;border-radius:16px;border:2px solid var(--surface-3);background:var(--surface);color:var(--text);font:inherit;font-weight:700;font-size:18px;padding:0 16px;outline:none;transition:border-color .15s}.field input:focus{border-color:var(--primary)}.field input.bad{border-color:var(--danger)}.err{color:var(--danger-ink);font-style:normal;font-weight:700;font-size:14px}.err:empty{display:none}.overlay{position:absolute;top:0;right:0;bottom:0;left:0;background:var(--overlay);display:flex;align-items:flex-end;justify-content:center;z-index:50;animation:fade .25s}.overlay.noscrim{background:none;pointer-events:none}.overlay.noscrim .sheet{pointer-events:auto}@keyframes fade{0%{opacity:0}}.sheet{position:relative;width:100%;max-width:560px;max-height:100%;overflow-y:auto;background:var(--surface);border-radius:var(--radius-lg) var(--radius-lg) 0 0;padding:22px calc(var(--safe-r) + 20px) calc(var(--safe-b) + 20px) calc(var(--safe-l) + 20px);text-align:center;animation:sheetUp .5s var(--bounce);box-shadow:0 -10px 40px #3c288c33}@keyframes sheetUp{0%{transform:translateY(100%)}}.sheet .x{position:absolute;right:14px;top:14px;width:44px;height:44px;border-radius:50%;border:0;background:var(--surface-2);font-weight:800;font-size:18px}.toast{position:absolute;left:24px;right:24px;bottom:calc(var(--safe-b) + 40px);max-width:480px;margin:0 auto;background:var(--text);color:var(--bg);padding:12px 16px;border-radius:18px;font-weight:700;text-align:center;animation:screenIn .3s;z-index:80}.hud{display:flex;flex-direction:column;gap:6px;position:relative;width:100%;z-index:3}.hud-row{display:grid;grid-template-columns:1fr auto 1fr;align-items:end;gap:8px}.hud-row.has-quit{grid-template-columns:auto 1fr auto 1fr}.hud small{display:block;font-size:clamp(10px,1.9vmin,13px);font-weight:700;letter-spacing:1px;color:var(--muted)}.hud-score b,.hud-rec b{font-size:clamp(22px,5vmin,34px);line-height:1;display:inline-block;font-family:var(--font-num)}.hud-rec{text-align:right}.hud-rec b{color:var(--reward-ink)}.hud-time{display:flex;align-items:baseline;gap:2px}.hud-time b{font-size:clamp(34px,8.5vmin,60px);line-height:1;font-variant-numeric:tabular-nums;font-family:var(--font-num)}.hud-time small{display:inline;font-size:16px}.tbar{height:clamp(8px,1.8vmin,12px);background:var(--surface-2);border-radius:99px;overflow:hidden}.tbar i{display:block;height:100%;width:100%;background:var(--primary);border-radius:99px;transform-origin:left;will-change:transform}.gbar{position:relative;height:6px;background:var(--surface-2);border-radius:99px;overflow:hidden}.gbar.off{visibility:hidden}.gbar i{position:absolute;top:0;right:0;bottom:0;left:0;transform-origin:left;transform:scaleX(0);border-radius:99px;will-change:transform}.gbar .ghost{background:color-mix(in srgb,var(--reward) 60%,transparent)}.gbar .you{background:var(--success)}.hud.low .tbar i{background:var(--danger);animation:lowBar .5s ease-in-out infinite}.hud.low .hud-time b{color:var(--danger-ink);animation:lowPulse .5s ease-in-out infinite}@keyframes lowBar{50%{opacity:.55}}@keyframes lowPulse{50%{transform:scale(1.18)}}.combo{--m: 1;position:absolute;right:0;top:calc(100% + 10px);font-weight:800;letter-spacing:.5px;color:var(--on-primary);background:var(--primary);border-radius:16px;padding:4px 14px;font-size:clamp(14px,calc(2.6vmin + var(--m) * .5vmin),30px);transform:scale(0);transform-origin:top right;box-shadow:0 0 calc(var(--m) * 4px) color-mix(in srgb,var(--primary) 80%,transparent);white-space:nowrap;z-index:4}.combo.show{transform:scale(1)}.combo.pop{animation:comboPop .4s var(--bounce)}.combo.hot{background:linear-gradient(135deg,var(--reward),var(--danger));color:var(--on-reward);box-shadow:0 0 22px 6px color-mix(in srgb,var(--reward) 70%,transparent)}@keyframes comboPop{0%{transform:scale(1.5)}}.countdown{position:absolute;top:0;right:0;bottom:0;left:0;display:grid;place-items:center;font-size:clamp(90px,28vmin,220px);font-weight:800;color:var(--primary);background:var(--scrim);opacity:0;pointer-events:none;z-index:20;text-shadow:0 8px 0 var(--surface-3);font-family:var(--font-display)}.countdown.show{opacity:1;animation:cdIn .45s var(--bounce) both}.countdown.end{color:var(--danger-ink);font-size:clamp(60px,18vmin,150px)}@keyframes cdIn{0%{transform:scale(.4)}}.keypad{display:grid;grid-template-columns:repeat(3,1fr);grid-template-rows:repeat(4,1fr);gap:clamp(8px,1.8vmin,14px);min-height:0;touch-action:none}.key{min-width:44px;min-height:44px;border:0;border-radius:clamp(14px,3vmin,22px);background:var(--surface);color:var(--text);font-size:clamp(24px,6vmin,40px);font-weight:800;box-shadow:0 4px 0 var(--key-shadow),var(--card-shadow);transition:transform .35s var(--bounce),background .1s;font-variant-numeric:tabular-nums;font-family:var(--font-num)}.key:active{transform:scale(.93);background:var(--primary);color:var(--on-primary);transition-duration:.04s}.key.ghost{background:none;box-shadow:none;pointer-events:none}.mascot{width:100%;height:100%;overflow:visible}.mascot .body{fill:var(--pet-body);transform-box:fill-box;transform-origin:50% 100%;animation:breathe 3s ease-in-out infinite}.mascot .eye{transition:transform .25s var(--bounce);transform-box:fill-box;transform-origin:center}.mascot .lid{fill:var(--pet-body);transition:transform .25s var(--bounce);transform-box:fill-box;transform-origin:center}.mascot .lidb{transform:translateY(32px)}.mascot .lidt{transform:translateY(-34px)}@keyframes breathe{50%{transform:scale(1.02,.98)}}.m-focused .lidt{transform:translateY(-8px)}.m-happy .lidb{transform:translateY(15px)}.m-sad .lidt.l{transform:translateY(-3px) rotate(-20deg)}.m-sad .lidt.r{transform:translateY(-3px) rotate(20deg)}.m-surprised .eye{transform:scale(1.18,1.3)}.pet{width:clamp(120px,26vmin,220px);aspect-ratio:120 / 130;animation:floaty 3s ease-in-out infinite}.pet.sm{width:clamp(90px,18vmin,150px)}.pet.xs{width:clamp(56px,11vmin,84px);animation:none}@keyframes floaty{50%{transform:translateY(-8px)}}.topbar{display:flex;gap:10px;justify-content:space-between;width:100%}.topbar .chip{flex:1}.topbar.wide{max-width:560px;align-items:center}.topbar .iconbtn{flex:none}.hub .col{margin:0 auto;gap:16px}.greet{display:flex;align-items:center;gap:14px;padding:14px 18px}.greet .title{font-size:clamp(24px,5.6vmin,32px)}.greet p{margin:2px 0 0}.greet b.out{color:var(--danger-ink)}.games{display:flex;flex-direction:column;gap:14px}.game-card{--c: var(--primary);--cd: var(--primary-d);display:flex;align-items:center;gap:14px;text-align:left;width:100%;min-height:96px;border:0;border-radius:var(--radius-lg);padding:16px 18px;background:var(--surface);box-shadow:0 6px 0 var(--surface-3),var(--card-shadow);transition:transform .45s var(--bounce)}.game-card:active{transform:scale(1.03,.94) translateY(4px)}.game-card.amber{--c: var(--reward);--cd: var(--reward-d)}.gc-ic{flex:none;width:60px;height:60px;border-radius:20px;background:var(--c);color:#fff;display:grid;place-items:center;font-size:32px;box-shadow:0 4px 0 var(--cd)}.game-card.amber .gc-ic{color:var(--on-reward)}.gc-t{flex:1;display:flex;flex-direction:column}.gc-t b{font-size:clamp(20px,4.4vmin,26px)}.gc-t small{color:var(--muted);font-weight:600;font-size:clamp(14px,2.8vmin,17px);line-height:1.25}.gc-go{transform:rotate(180deg);color:var(--muted);font-size:22px;display:grid}.trail{gap:8px}.title-row{display:flex;align-items:baseline;gap:10px;width:100%;max-width:560px}.title-row .title{font-size:clamp(30px,7vmin,44px);color:var(--primary)}.path-scroll{flex:1;width:100%;overflow-y:auto;overflow-x:hidden;scrollbar-width:none;display:flex;justify-content:center}.path-scroll::-webkit-scrollbar{display:none}.path{position:relative;width:390px;flex:none}.path svg{position:absolute;top:0;right:0;bottom:0;left:0}.node{position:absolute;width:88px;height:88px;background:none;border:none;padding:0;transition:transform .4s var(--bounce)}.node:active{transform:scale(1.1,.88)}.node .disc{position:absolute;top:0;right:0;bottom:0;left:0;display:grid;place-items:center;border-radius:50%;box-shadow:0 8px 0 var(--d, var(--surface-3));font-size:36px;font-weight:800;background:var(--c, var(--surface));color:var(--on, var(--muted))}.node.done{--c: var(--reward);--d: var(--reward-d);--on: var(--on-reward)}.node.current{--c: var(--success);--d: var(--success-d);--on: var(--on-success)}.node.current .disc{animation:pulse 1.3s ease-in-out infinite}.node.open{--c: var(--primary);--d: var(--primary-d);--on: #fff}.node.locked .disc{font-size:30px}.node .stars{position:absolute;left:50%;top:-16px;transform:translate(-50%);white-space:nowrap;font-size:20px;pointer-events:none}.node .label{position:absolute;top:100px;left:50%;transform:translate(-50%);white-space:nowrap;font-weight:800;font-size:15px;background:var(--surface);padding:2px 12px;border-radius:12px;box-shadow:0 2px 0 var(--surface-3)}@keyframes pulse{50%{transform:scale(1.1);box-shadow:0 8px 0 var(--success-d),0 0 0 10px color-mix(in srgb,var(--success) 35%,transparent)}}.premium .crown{font-size:54px;color:var(--reward);display:grid;place-items:center}.premium .title{color:var(--primary)}.reason{margin:4px 0 0;font-weight:700;font-size:16px;color:var(--reward-ink);line-height:1.15}.pm-benefits{margin:14px 0}.pm-benefits .checks li{background:var(--surface-2);border-radius:18px;padding:6px 12px;font-weight:700}.plans{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin-bottom:16px}.plan{position:relative;background:var(--surface);border:3px solid var(--surface-3);border-radius:22px;padding:16px 6px 10px;display:flex;flex-direction:column;line-height:1.05;color:var(--text);transition:transform .4s var(--bounce);min-height:44px}.plan b{font-size:20px}.plan span{font-size:28px;font-weight:800}.plan small{color:var(--muted);font-weight:700}.plan em{position:absolute;top:-13px;left:50%;transform:translate(-50%);background:var(--reward);color:var(--on-reward);border-radius:12px;font-size:11px;font-style:normal;font-weight:800;padding:1px 8px;white-space:nowrap}.plan.sel{background:color-mix(in srgb,var(--success) 18%,var(--surface));border-color:var(--success-d);transform:scale(1.04)}.fine{margin:8px 0 0;font-size:13px}.block-run{overflow:hidden;align-items:stretch;touch-action:none;gap:clamp(8px,2vmin,16px)}.block-run .hud{max-width:720px;margin:0 auto}.block-stage{flex:1;min-height:0;display:grid;place-items:center}.canvas-host{width:100%;height:100%;display:grid;place-items:center}.answers{width:100%}.aq{font-size:clamp(40px,9vmin,56px);font-weight:800;line-height:1.1;font-family:var(--font-num)}.aq i{color:var(--reward-ink);font-style:normal}.balloons{display:grid;grid-template-columns:1fr 1fr;gap:14px 22px;width:100%;margin:12px 0 6px}.balloon{min-height:72px;height:clamp(72px,12vmin,92px);border:0;border-radius:50% 50% 46% 46%/58% 58% 42% 42%;font-size:clamp(30px,7vmin,42px);font-weight:800;color:var(--b-on, #fff);background:var(--b, var(--primary));box-shadow:inset -8px -10px #0000001f,inset 10px 8px #ffffff4d,0 8px 18px #3c288c2e;animation:balloonIn .55s var(--bounce) both;transition:transform .4s var(--bounce);padding:0;font-family:var(--font-num)}.balloon:active{transform:scale(1.12,.88)}.balloon.primary{--b: var(--primary)}.balloon.info{--b: var(--info);--b-on: #04293d}.balloon.amber{--b: var(--reward);--b-on: var(--on-reward)}.balloon.coral{--b: var(--danger)}@keyframes balloonIn{0%{transform:translateY(60px) scale(.3)}}@media (orientation: landscape) and (max-height: 520px){.balloons{grid-template-columns:repeat(4,1fr)}.aq{font-size:34px}.sheet{padding-top:14px}}.hint{gap:14px}.hint .back{align-self:flex-start;background:var(--surface);border:0;border-radius:14px;width:44px;height:44px;box-shadow:0 3px 0 var(--surface-3);font-size:22px;font-weight:800}.hint .hint-pet{margin:6px auto 0}.bubble{width:100%;max-width:560px;background:var(--surface);border-radius:var(--radius-lg);padding:18px 20px;text-align:center;box-shadow:var(--card-shadow)}.kicker{font-weight:800;letter-spacing:1.5px;color:var(--reward-ink);font-size:14px}.bubble h2{margin:2px 0 6px;font-size:clamp(26px,6vmin,34px);line-height:1.05}.bubble p{margin:0 0 12px;font-size:clamp(17px,3.6vmin,21px);font-weight:600;line-height:1.25}.example{background:var(--surface-2);border-radius:16px;padding:8px 10px;display:flex;flex-direction:column}.example small{font-weight:700;color:var(--muted)}.example b{font-size:clamp(20px,4.4vmin,26px)}.hint .bottom{width:100%;max-width:560px;margin-top:auto}.warmup{gap:8px}.wbar{display:flex;align-items:center;gap:12px;width:100%;max-width:560px}.wbar .back{background:var(--surface);border:0;border-radius:14px;width:44px;height:44px;box-shadow:0 3px 0 var(--surface-3);font-size:20px;font-weight:800;flex:none}.wbar .progress{flex:1}.count{font-weight:800;font-size:20px;width:44px;text-align:right}.wbody{flex:1;display:flex;flex-direction:column;align-items:center;padding-top:14px;width:100%;max-width:560px}.question{font-size:clamp(44px,12vmin,68px);font-weight:800;margin:10px 0 20px;animation:starPop .5s var(--bounce);text-align:center;font-family:var(--font-num)}.options{display:grid;grid-template-columns:1fr 1fr;gap:14px;width:100%}.opt{font-size:clamp(28px,7vmin,40px);padding:16px 8px 12px;font-family:var(--font-num)}.opt.ok{--c: var(--success) !important;--cd: var(--success-d) !important;--on: var(--on-success) !important}.opt.bad{--c: var(--danger) !important;--cd: var(--danger-d) !important;--on: #fff !important}.opt.pop{animation:pop .5s var(--bounce)}@keyframes pop{40%{transform:scale(1.18,.9)}}.feedback{margin-top:18px;width:100%;min-height:110px;text-align:center;font-size:24px}.feedback.good{color:var(--success-ink);animation:starPop .4s var(--bounce)}.feedback.badbox{background:var(--surface);border-radius:20px;padding:12px 14px;display:flex;flex-direction:column;gap:4px;font-size:20px;animation:starPop .4s var(--bounce);box-shadow:var(--card-shadow)}.feedback.badbox b{color:var(--danger-ink);font-size:22px}.feedback.badbox span{font-weight:600}.cont{margin-top:6px;font-size:20px}.block-result .col{margin:auto 0}.r-head{font-size:clamp(28px,6vmin,36px);font-weight:800;color:var(--reward-ink)}.r-score b{font-size:clamp(80px,22vmin,120px);line-height:1;color:var(--primary);display:inline-block;font-family:var(--font-num)}.r-score small{display:block;font-weight:800;font-size:20px;margin-top:-4px;color:var(--muted)}.r-stars{font-size:clamp(48px,12vmin,70px);line-height:1;height:1.15em;margin:4px 0}.r-stars .star{margin:0 4px}.r-pct{font-size:22px;font-weight:700;margin:4px 0}.r-pct b{color:var(--success-ink);font-size:30px}.r-meta{margin:0 0 8px;font-size:15px;font-weight:600;color:var(--muted)}.level-card{width:100%;text-align:left}.level-card small.k{font-size:16px}.lvl{font-size:46px;font-weight:800;line-height:1;color:var(--primary);font-family:var(--font-num)}.r-actions{margin-top:6px;width:100%;display:flex;flex-direction:column;gap:12px;align-items:center;max-width:440px}.r-actions .btn{width:100%}.run{overflow:hidden;padding:0;align-items:stretch;touch-action:none}.run-grid{flex:1;min-height:0;width:100%;max-width:640px;margin:0 auto;display:grid;grid-template-rows:minmax(0,1fr) minmax(0,46%);gap:var(--pad);padding:calc(var(--safe-t) + var(--pad)) calc(var(--safe-r) + var(--pad)) calc(var(--safe-b) + var(--pad)) calc(var(--safe-l) + var(--pad))}.run-main{display:flex;flex-direction:column;min-height:0;position:relative;gap:clamp(10px,2.6vmin,22px)}.keypad-slot{display:grid;min-height:0}.keypad-slot .keypad{height:100%}.stage{flex:1;min-height:0;position:relative;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:clamp(8px,2.4vmin,22px);background:var(--surface);border-radius:clamp(20px,4vmin,32px);padding:var(--pad);overflow:hidden;box-shadow:var(--card-shadow)}.stage:after{content:"";position:absolute;top:0;right:0;bottom:0;left:0;border-radius:inherit;pointer-events:none;opacity:0}.stage.ok:after{animation:flashOut .35s ease-out;background:radial-gradient(circle,color-mix(in srgb,var(--success) 60%,transparent),transparent 75%)}.stage.bad:after{animation:flashOut .6s ease-out;background:radial-gradient(circle,color-mix(in srgb,var(--danger) 55%,transparent),transparent 75%)}.stage.bad{animation:shake .45s}@keyframes flashOut{0%{opacity:1}to{opacity:0}}.run-pet{position:absolute;left:12px;top:12px}.problem{width:100%;text-align:center;white-space:nowrap;overflow:hidden;font-weight:800;font-variant-numeric:tabular-nums;line-height:1.1;padding:.05em 0;font-size:clamp(34px,min(13vmin,14vw),110px);letter-spacing:-1px;font-family:var(--font-num)}.slots{display:flex;gap:clamp(6px,1.6vmin,12px);justify-content:center}.slot{width:clamp(38px,9vmin,70px);height:clamp(48px,11vmin,84px);border-radius:clamp(10px,2vmin,16px);background:var(--surface-sunk);display:grid;place-items:center;font-size:clamp(26px,6.4vmin,50px);font-weight:800;box-shadow:inset 0 0 0 3px transparent;transition:box-shadow .15s;font-family:var(--font-num)}.slot.cur{box-shadow:inset 0 0 0 3px var(--primary);animation:cur 1s steps(2) infinite}@keyframes cur{50%{box-shadow:inset 0 0 0 3px color-mix(in srgb,var(--primary) 25%,transparent)}}.slot.f{box-shadow:inset 0 0 0 3px color-mix(in srgb,var(--primary) 55%,transparent)}.slots.reveal .slot{color:var(--success-ink);box-shadow:inset 0 0 0 3px var(--success)}.pts-float{position:absolute;left:50%;bottom:10px;transform:translate(-50%);font-weight:800;font-size:clamp(18px,4vmin,28px);color:var(--success-ink);opacity:0;pointer-events:none}.pts-float.go{animation:ptsUp .7s ease-out}@keyframes ptsUp{0%{opacity:1;transform:translate(-50%)}to{opacity:0;transform:translate(-50%,-34px)}}.rec-banner{position:absolute;left:50%;top:40%;transform:translate(-50%,-50%) scale(0);font-weight:800;font-size:clamp(30px,8vmin,64px);color:var(--reward-ink);white-space:nowrap;text-shadow:0 4px 0 color-mix(in srgb,var(--reward) 40%,transparent),0 0 30px color-mix(in srgb,var(--reward) 60%,transparent);pointer-events:none;z-index:5}.rec-banner.show{animation:recIn 1.5s ease-out both}@keyframes recIn{0%{transform:translate(-50%,-50%) scale(.3);opacity:0}18%{transform:translate(-50%,-50%) scale(1.12);opacity:1}28%{transform:translate(-50%,-50%) scale(1)}80%{opacity:1}to{transform:translate(-50%,-80%) scale(1);opacity:0}}@media (orientation: landscape) and (min-width: 520px){.run-grid{max-width:1120px;grid-template-rows:minmax(0,1fr);grid-template-columns:minmax(0,1fr) minmax(0,1fr)}.problem{font-size:clamp(30px,min(12vmin,7vw),96px)}}@media (orientation: landscape) and (max-height: 460px){.run-pet{display:none}}.result .col{gap:14px;padding-bottom:calc(110px + var(--safe-b));margin:0}.res-top{display:flex;align-items:center;gap:clamp(12px,3vmin,24px)}.res-top .pet{width:clamp(70px,16vmin,120px);animation:none;flex:none}.res-score small{color:var(--muted);font-weight:700;letter-spacing:1px;font-size:13px;display:block}.res-score b{font-size:clamp(54px,15vmin,110px);line-height:1;display:inline-block;font-variant-numeric:tabular-nums;font-family:var(--font-num)}.badge-rec{display:inline-block;margin-left:10px;background:var(--reward);color:var(--on-reward);font-weight:800;border-radius:12px;padding:2px 12px;font-size:clamp(13px,2.6vmin,18px);vertical-align:middle;animation:bump .6s var(--bounce)}.rec-line{display:block;color:var(--muted)}.rec-line b{color:var(--reward-ink);font-size:inherit}.free-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:10px}.hero-card{padding:clamp(22px,5vmin,40px) 16px;text-align:center;background:var(--hero-grad);box-shadow:inset 0 0 0 2px color-mix(in srgb,var(--primary) 45%,transparent),var(--card-shadow)}.age{display:flex;justify-content:center;align-items:baseline;gap:10px}.age b{font-size:clamp(88px,26vmin,180px);line-height:1;color:var(--reward-ink);font-family:var(--font-num)}.age span{font-size:clamp(22px,5vmin,34px);font-weight:800}.est{color:var(--muted);font-style:normal;font-size:14px}.big-line{font-size:clamp(18px,3.8vmin,24px)}.mut{color:var(--muted);margin:4px 0 0}.fast{list-style:none;padding:0;margin:0;display:flex;flex-direction:column;gap:6px;font-size:clamp(16px,3.4vmin,21px)}.fast li{display:flex;justify-content:space-between}.fast b{color:var(--success-ink)}.chart{width:100%;height:auto;display:block}.near-miss{border:0;border-radius:18px;background:color-mix(in srgb,var(--reward) 22%,var(--surface));color:var(--reward-ink);font-weight:800;font-size:clamp(16px,3.4vmin,20px);text-align:left;padding:14px 16px;min-height:52px;box-shadow:inset 0 0 0 2px var(--reward);display:flex;justify-content:space-between;align-items:center;gap:10px}.near-miss span{transform:rotate(180deg);display:grid}.badge-plus{align-self:flex-start;background:linear-gradient(135deg,var(--reward),var(--danger));color:var(--on-reward);font-weight:800;padding:6px 16px;border-radius:99px}.cta-bar{position:fixed;left:0;right:0;bottom:0;padding:14px calc(var(--safe-r) + var(--pad)) calc(var(--safe-b) + 12px) calc(var(--safe-l) + var(--pad));background:linear-gradient(transparent,var(--bg) 38%);z-index:10}.cta-inner{max-width:560px;margin:0 auto;display:flex;flex-direction:column;gap:10px}.cta-inner .btn{min-height:52px}.start .btn{margin-top:10px;max-width:420px}.paywall .btn,.upsell .btn,.approved .btn,.pix .btn.big{max-width:440px}.age-preview{position:relative;width:100%;background:var(--surface);border-radius:var(--radius-lg);padding:14px 10px;display:flex;flex-direction:column;align-items:center;overflow:hidden;box-shadow:var(--card-shadow)}.age-preview small{color:var(--muted);font-weight:700}.age-preview .blur{font-size:clamp(30px,8vmin,52px)}.age-preview .blur b{color:var(--reward-ink);font-size:1.5em}.age-preview .lockic{position:absolute;right:14px;top:14px;width:40px;height:40px;font-size:20px;border-radius:14px}.offer{width:100%;text-align:left}.offer h2{margin:0 0 4px;font-size:clamp(20px,4.4vmin,28px)}.pw-title{margin:0;font-size:clamp(26px,6.2vmin,40px);line-height:1.1;font-weight:800}.checkout,.pix{padding-top:calc(var(--safe-t) + 52px)}.demo-banner{position:fixed;top:0;left:0;right:0;z-index:30;padding:calc(var(--safe-t) + 6px) 12px 6px;text-align:center;background:var(--reward);color:var(--on-reward);font-weight:800;font-size:13px}.co-head{display:flex;align-items:center;gap:12px;width:100%}.co-head h1{margin:0;font-size:clamp(22px,4.6vmin,30px)}.bump{display:flex;gap:14px;align-items:flex-start;padding:14px;border-radius:20px;border:2.5px dashed var(--reward);background:color-mix(in srgb,var(--reward) 12%,var(--surface));cursor:pointer;position:relative}.bump input{position:absolute;opacity:0;width:44px;height:44px;left:8px;top:8px;margin:0}.bump .box{flex:none;width:30px;height:30px;border-radius:10px;border:2.5px solid var(--reward);display:grid;place-items:center;color:transparent;font-size:18px;transition:all .25s var(--bounce)}.bump.on .box{background:var(--reward);color:var(--on-reward);transform:scale(1.1)}.bump-t{font-size:clamp(15px,3vmin,18px);line-height:1.3}.amb{color:var(--reward-ink)}.summary .row{display:flex;justify-content:space-between;padding:6px 0}.summary .row[hidden]{display:none}.summary .total{border-top:2px solid var(--surface-2);margin-top:6px;padding-top:12px;font-size:clamp(20px,4.4vmin,26px)}.summary .total b{color:var(--reward-ink)}.pix-total{margin:0;font-size:20px;color:var(--muted)}.pix-total b{color:var(--reward-ink);font-size:28px}.qr{background:#fff;border-radius:22px;padding:12px;width:min(280px,70vmin);aspect-ratio:1;display:grid;place-items:center;box-shadow:var(--card-shadow)}.qr img{width:100%;height:100%;display:block;image-rendering:pixelated}.copy{width:100%;text-align:left}.copy label{color:var(--muted);font-weight:700;font-size:14px}.copy-row{display:flex;gap:8px;margin-top:6px}.copy-row input{flex:1;min-width:0;min-height:48px;border-radius:14px;border:2px solid var(--surface-3);background:var(--surface);color:var(--text);padding:0 12px;font-size:14px}.copy-row .btn{padding:8px 18px;font-size:16px;min-height:48px}.expiry{color:var(--muted);font-weight:700}.expiry b{color:var(--text);font-variant-numeric:tabular-nums;font-size:22px}.status{display:flex;align-items:center;gap:10px;font-weight:700;color:var(--reward-ink)}.exp-t{color:var(--danger-ink)}.dots{display:flex;gap:5px}.dots i{width:9px;height:9px;border-radius:50%;background:var(--reward);animation:dot 1.2s infinite}.dots i:nth-child(2){animation-delay:.2s}.dots i:nth-child(3){animation-delay:.4s}@keyframes dot{0%,80%,to{transform:scale(.5);opacity:.4}40%{transform:scale(1.2);opacity:1}}
