@font-face{font-family:Nunito;src:url(../fonts/nunito-regular.ttf);font-weight:400 600;font-display:swap}@font-face{font-family:Nunito;src:url(../fonts/nunito-heavy.ttf);font-weight:700 1000;font-display:swap}:root{font-family:Nunito,ui-rounded,sans-serif;color:#fff;font-synthesis:none;background:#65ccd2}*{box-sizing:border-box}body{margin:0;overflow:hidden}button{font:inherit;cursor:pointer;touch-action:manipulation;-webkit-tap-highlight-color:transparent}button:disabled{cursor:default}svg{width:24px;height:24px;flex-shrink:0}[hidden]{display:none!important}button:focus-visible,summary:focus-visible{outline:3px solid #fff;outline-offset:4px}.game-page,.arena{position:fixed;inset:0;width:100%;height:100%;height:100dvh;overflow:hidden}.arena{display:grid;place-items:center;background:linear-gradient(#5ec9db,#a8e6d7 65%,#5aaa73)}canvas{display:block;width:min(100vw,180dvh);height:min(100dvh,55.5556vw);touch-action:none;outline:none}.hud{position:absolute;inset:22px 25px auto;display:flex;align-items:flex-start;pointer-events:none;z-index:3}.hud,.hero-dock,.instruction,#restart,.aim-hint{visibility:hidden}.playing .hud,.playing .hero-dock,.playing .instruction,.playing #restart,.playing .aim-hint{visibility:visible}.level-picker{pointer-events:auto;position:relative}.level-picker summary{list-style:none;font-size:17px;font-weight:1000;cursor:pointer;color:#fff;text-shadow:2px 2px #326d61,-1px -1px #326d61,1px -1px #326d61,-1px 1px #326d61;-webkit-user-select:none;user-select:none;padding:6px 0}.level-picker summary::-webkit-details-marker{display:none}.level-menu{position:absolute;top:42px;left:0;width:278px;background:#266b62ed;border:3px solid #b9eea1;border-radius:20px;padding:10px;box-shadow:0 6px #1b4a44;display:grid;gap:5px}.level-choice{display:flex;align-items:center;gap:9px;border:0;border-radius:10px;padding:9px;background:#ffffff0d;color:#fff;text-align:left;font-size:10px;font-weight:900}.level-choice strong{display:grid;place-items:center;background:#ffd452;color:#486143;min-width:30px;height:30px;font-size:18px;border-radius:50%}.level-choice.active,.level-choice:hover{background:#ffffff25}.level-stars{color:#9aa997;white-space:nowrap;font-size:14px;margin-left:auto}.level-stars.earned{color:#ffd65f}.scoreboard{position:absolute;left:50%;transform:translate(-50%);text-align:center;color:#fff;text-shadow:2px 3px #326658,-2px -1px #326658,2px -1px #326658,-2px 1px #326658}.scoreboard>span{font-size:12px;font-weight:1000;display:block}.scoreboard>strong{font-size:42px;font-weight:1000;display:block;line-height:1.1}.counters{display:flex;justify-content:center;gap:21px;margin-top:6px}.counters>span{display:flex;align-items:center;gap:5px;font-size:19px;font-weight:1000}.counters svg{width:21px;height:21px;filter:drop-shadow(1px 2px #326658)}.game-buttons{position:absolute;top:20px;right:22px;display:flex;gap:10px;z-index:5}.round-button{display:grid;place-items:center;width:44px;height:44px;background:#fff3bd;border:3px solid #e8b34d;border-radius:50%;color:#347264;box-shadow:0 4px #876544,0 5px 12px #1b544333;transition:transform .12s}.round-button:hover{transform:rotate(-7deg);background:#ffdb72}.round-button:active{transform:translateY(3px);box-shadow:0 1px #876544}.intro{position:absolute;inset:0;z-index:4;display:flex;flex-direction:column;align-items:center;justify-content:center;background:radial-gradient(ellipse,#82d9d21a 30%,#2d75503d);padding:65px 18px 24px}h1{color:#fffaf0;-webkit-text-stroke:3px #315e48;paint-order:stroke fill;text-shadow:0 7px #315e48,0 10px 0 #2347374d;font-size:clamp(45px,7.7vw,108px);font-weight:1000;line-height:1;margin:0;letter-spacing:-3px;transform:rotate(-3deg);text-align:center}.subtitle{font-size:clamp(12px,1.7vw,23px);letter-spacing:5px;color:#ffe682;text-shadow:2px 3px #486b46;font-weight:1000;margin:19px 0 0;transform:rotate(-3deg)}.intro-birds{display:flex;align-items:flex-end;justify-content:center;height:clamp(155px,28dvh,310px);margin:10px 0 22px;filter:drop-shadow(0 12px 7px #244e442c)}.intro-birds img{height:95%;width:clamp(120px,17vw,230px);object-fit:contain;transform:rotate(-12deg)}.intro-birds img:nth-child(2){height:110%;transform:rotate(4deg);z-index:1;margin:0 -32px}.intro-birds img:nth-child(3){height:83%;transform:rotate(13deg)}.primary-button,.secondary-button{display:flex;align-items:center;justify-content:center;gap:15px;border:3px solid #805b30;border-radius:22px;padding:15px 27px;color:#57492b;background:linear-gradient(#ffe88b,#ffc541);font-weight:1000;box-shadow:inset 0 3px #fff1ba,0 7px #855e35,0 10px 16px #284f4233;text-shadow:0 1px #fff2b3;transition:transform .1s}.primary-button:hover,.secondary-button:hover{filter:brightness(1.08);transform:translateY(-2px)}.primary-button:active,.secondary-button:active{transform:translateY(5px);box-shadow:inset 0 3px #fff1ba,0 2px #855e35}.play-button{font-size:31px;letter-spacing:2px;min-width:260px;padding:15px 42px;transform:rotate(-2deg)}.play-button svg{width:34px;height:34px}.hero-dock{list-style:none;margin:0;padding:0;pointer-events:none;position:absolute;bottom:16px;left:24px;display:flex;align-items:flex-end;gap:9px;z-index:3}.queue-hero{background:none;border:0;position:relative;padding:0;width:65px;color:#fff;transition:transform .15s;filter:drop-shadow(0 4px 2px #24584055)}.queue-hero img{width:100%;height:75px;object-fit:contain}.queue-hero small{position:absolute;left:0;top:2px;font-weight:1000;font-size:9px;color:#ffe582;text-shadow:1px 2px #305b42}.queue-hero span{display:block;text-align:center;font-size:12px;font-weight:1000;text-shadow:1px 2px #305b42,-1px -1px #305b42,1px -1px #305b42}.queue-hero.selected img{filter:drop-shadow(0 0 4px #fff8a7) drop-shadow(0 0 10px #ffd757)}.queue-hero.selected:after{content:"";position:absolute;bottom:-7px;left:38%;width:24%;height:5px;background:#ffde5a;border-radius:8px;box-shadow:0 1px #578453}.queue-hero.spent{opacity:.28;filter:grayscale(.8)}.instruction{position:absolute;left:24px;bottom:112px;max-width:350px;transform:none;text-align:left;font-size:11px;line-height:1.4;font-weight:900;text-shadow:1px 2px #366244,-1px -1px #366244;pointer-events:none}.aim-hint{position:absolute;left:11%;top:40%;font-size:14px;font-weight:1000;transform:rotate(-5deg);text-shadow:1px 2px #376d56,-1px -1px #376d56;pointer-events:none}.hero-action{position:absolute;bottom:22px;right:24px;z-index:3;display:flex;align-items:center;gap:15px;max-width:420px}.ability-info{display:flex;flex-direction:column;gap:5px;max-width:230px;text-shadow:1px 2px #305b42,-1px -1px #305b42}.ability-info strong{font-size:14px;font-weight:1000}.ability-info>span{font-size:11px;font-weight:800;line-height:1.5}.ability-button{font-size:12px;min-height:46px;max-width:165px;flex-shrink:0;padding:11px 13px;gap:7px;border-radius:17px}.ability-button:disabled{opacity:1;box-shadow:inset 0 3px #fff1ba,0 4px #855e35;filter:saturate(.55)}.ability-button svg{width:21px;height:21px}.rotate-hint{display:none}.result-overlay{position:absolute;inset:0;z-index:10;display:grid;place-items:center;background:radial-gradient(ellipse,#1c4b4970,#153e35ce);-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px);padding:20px}.result-content{text-align:center;max-width:640px}.eyebrow{font-size:13px;font-weight:1000;letter-spacing:3px;color:#f4e9bc}.result-stars{color:#ffdb64;-webkit-text-stroke:2px #ad702e;paint-order:stroke fill;text-shadow:0 7px #815d38;font-size:88px;letter-spacing:13px;line-height:1.2;transform:rotate(-5deg);margin:14px 0}.result-content h2{font-size:clamp(32px,5vw,60px);font-weight:1000;text-shadow:0 5px #234936;margin:10px 0}.result-content p{font-size:15px;color:#d5edd5;max-width:420px;margin:0 auto;line-height:1.5}.result-score{display:grid;gap:3px;margin:20px 0}.result-score span{font-size:11px;letter-spacing:2px;color:#cfe5b9;font-weight:900}.result-score strong{font-size:42px;font-weight:1000;text-shadow:0 4px #244938}.result-actions{display:flex;justify-content:center;gap:17px;margin-top:20px}.result-actions button{font-size:17px}.secondary-button{background:linear-gradient(#fff4d0,#e8d791)}dialog{max-width:470px;width:calc(100% - 32px);max-height:90dvh;overflow:auto;background:#fff1ce;border:4px solid #936f3d;border-radius:25px;padding:30px;color:#385842;box-shadow:0 8px #694f30}dialog::backdrop{background:#164b48a8;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px)}.dialog-close{position:absolute;right:10px;top:9px;border:0;border-radius:50%;background:#e8c579;font-size:24px;width:32px;height:32px;color:#5d4f31}dialog .eyebrow{color:#937745;font-size:9px;letter-spacing:1.3px}dialog h2{font-size:28px;font-weight:1000;margin:14px 0 20px}.help-step{display:flex;gap:12px;margin:13px 0}.help-step>span{background:#efcf80;width:28px;height:28px;flex-shrink:0;display:grid;place-items:center;border-radius:50%;font-weight:1000}.help-step p{font-size:12px;line-height:1.6;margin:0}.keyboard-note{font-size:11px;line-height:1.6;color:#7c7857;margin:20px 0}dialog .primary-button{width:100%;font-size:14px;padding:12px;border-radius:15px}@media(max-height:550px)and (orientation:landscape){.hud{inset:12px 16px auto}.game-buttons{top:12px;right:16px;gap:7px}.round-button{width:36px;height:36px;border-width:2px}.round-button svg{width:19px;height:19px}.scoreboard>strong{font-size:30px}.scoreboard>span{font-size:9px}.counters{margin-top:3px;gap:13px}.counters>span{font-size:14px}.counters svg{width:15px;height:15px}.level-picker summary{font-size:13px}.intro{padding:45px 10px 17px}h1{font-size:50px}.subtitle{font-size:12px;letter-spacing:3px;margin-top:13px}.intro-birds{height:120px;margin:7px 0 10px}.intro-birds img{width:132px}.play-button{font-size:23px;min-width:215px;padding:8px 26px;border-radius:17px}.hero-dock{bottom:11px;left:17px;gap:8px}.queue-hero{width:65px}.queue-hero img{height:65px}.queue-hero span{font-size:11px}.instruction{bottom:12px;font-size:9px}.aim-hint{font-size:10px}.ability-button{bottom:15px;right:17px;font-size:12px;padding:10px 14px;border-radius:16px;max-width:240px}.result-stars{font-size:52px;margin:7px 0}.result-content h2{font-size:32px;margin:5px 0}.result-content p{font-size:11px}.result-score{margin:9px 0}.result-score strong{font-size:27px}.result-actions{margin-top:12px}.result-actions button{padding:9px 17px;font-size:12px}.eyebrow{font-size:10px}}@media(orientation:portrait)and (hover:none)and (pointer:coarse){.hud{inset:19px 15px auto}.game-buttons{top:17px;right:14px;gap:7px}.round-button{width:35px;height:35px;border-width:2px}.round-button svg{width:18px;height:18px}.scoreboard{top:60px}.scoreboard>span{font-size:11px}.scoreboard>strong{font-size:36px}.level-picker summary{font-size:12px}h1{font-size:clamp(40px,11vw,76px);letter-spacing:-2px;-webkit-text-stroke:2px}.subtitle{font-size:11px;letter-spacing:3px;margin-top:15px}.intro-birds{height:210px;margin:15px 0 25px}.intro-birds img{width:135px}.hero-dock{bottom:76px;left:50%;transform:translate(-50%);gap:18px}.queue-hero{width:76px}.queue-hero img{height:85px}.instruction{bottom:48px;left:50%;transform:translate(-50%);text-align:center;max-width:88%;width:88%;font-size:10px}.ability-button{bottom:203px;right:50%;transform:translate(50%);padding:11px 17px;font-size:13px;white-space:nowrap}.aim-hint{top:calc(50% - 34px);left:5%;font-size:8px}.rotate-hint{display:block;position:absolute;bottom:18px;left:0;right:0;text-align:center;color:#dff3ce;font-size:9px;font-weight:800;pointer-events:none}.result-stars{font-size:65px;letter-spacing:6px}.result-content p{font-size:12px}.result-actions{flex-wrap:wrap;gap:14px}.result-actions button{font-size:14px;padding:12px 18px}.result-content h2{font-size:34px}.eyebrow{font-size:10px;letter-spacing:1.5px}}@media(prefers-reduced-motion:reduce){*{transition:none!important}}@media(max-height:550px)and (orientation:landscape){.hero-dock{bottom:10px;left:15px;gap:6px}.queue-hero{width:46px}.queue-hero img{height:52px}.queue-hero span{font-size:9px}.queue-hero small{font-size:7px}.hero-action{bottom:12px;right:15px;max-width:350px;gap:10px}.ability-info{max-width:200px;gap:3px}.ability-info strong{font-size:11px}.ability-info>span{font-size:9px;line-height:1.4}.ability-button{position:static;transform:none;max-width:140px;min-height:38px;font-size:10px;padding:8px 10px}.ability-button svg{width:17px;height:17px}.instruction{bottom:90px;left:20%;max-width:32%;font-size:8px}.aim-hint{top:39%}}@media(orientation:portrait)and (hover:none)and (pointer:coarse){.hero-dock{bottom:74px;gap:12px}.queue-hero{width:52px}.queue-hero img{height:62px}.queue-hero span{font-size:10px}.hero-action{bottom:181px;left:20px;right:20px;max-width:none;justify-content:center;gap:12px}.ability-info{max-width:200px}.ability-info strong{font-size:12px}.ability-info>span{font-size:10px;line-height:1.4}.ability-button{position:static;transform:none;white-space:normal;max-width:132px;min-height:44px;font-size:11px;padding:10px;gap:5px}.ability-button:hover,.ability-button:active{transform:none}}.music-hint{color:#eaffdf;font-size:11px;font-weight:900;text-shadow:1px 2px #37624b;margin-top:19px;text-align:center}.music-hint[hidden]{display:none}@media(max-height:550px)and (orientation:landscape){.music-hint{font-size:9px;margin-top:12px}}@media(max-width:700px)and (orientation:landscape){.hero-action{right:12px;max-width:260px;gap:8px}.ability-info{max-width:150px}.ability-info strong{font-size:10px}.ability-info>span{font-size:8px;line-height:1.4}.ability-button{max-width:95px;font-size:9px;padding:8px 7px;gap:4px}.ability-button span{min-width:0;overflow-wrap:anywhere}.ability-button svg{width:15px;height:15px}}@media(max-width:540px)and (orientation:landscape){.hero-dock{left:12px;gap:4px}.queue-hero{width:35px}.queue-hero img{height:43px}.hero-action{right:10px;max-width:245px}.ability-info{max-width:140px}}.fullscreen-steps{font-size:12px;line-height:1.7;padding-left:20px;margin:0 0 22px}.fullscreen-steps li+li{margin-top:8px}:root{--safe-top:env(safe-area-inset-top,0px);--safe-right:env(safe-area-inset-right,0px);--safe-bottom:env(safe-area-inset-bottom,0px);--safe-left:env(safe-area-inset-left,0px)}.hud{margin-top:var(--safe-top);margin-left:var(--safe-left);margin-right:var(--safe-right)}.game-buttons{margin-top:var(--safe-top);margin-right:var(--safe-right)}.hero-dock{margin-left:var(--safe-left);margin-bottom:var(--safe-bottom)}.hero-action{margin-left:var(--safe-left);margin-right:var(--safe-right);margin-bottom:var(--safe-bottom)}.instruction,.rotate-hint{margin-bottom:var(--safe-bottom)}@media(orientation:portrait)and (hover:none)and (pointer:coarse){.hero-dock{margin-left:0}}@media(max-width:700px)and (orientation:landscape){.hero-dock{gap:clamp(4px,calc((100vw - var(--safe-left) - var(--safe-right) - 474px)/10),6px)}.queue-hero{width:clamp(35px,calc((100vw - var(--safe-left) - var(--safe-right) - 338px)/5),46px)}.hero-action{max-width:clamp(205px,calc(100vw - var(--safe-left) - var(--safe-right) - 274px),260px)}}@media(max-width:540px)and (orientation:landscape){.hero-dock{gap:4px}.queue-hero{width:35px}.hero-action{max-width:clamp(205px,calc(100vw - var(--safe-left) - var(--safe-right) - 274px),245px)}}@media(hover:hover)and (pointer:fine){.game-page{background:linear-gradient(#5ec9db,#a8e6d7 65%,#5aaa73)}.arena{position:absolute;inset:50% auto auto 50%;transform:translate(-50%,-50%);width:min(100vw,180dvh);height:min(100dvh,55.5556vw);container-type:size;container-name:game-frame}canvas{width:100%;height:100%;min-width:0;min-height:0}}@container game-frame (max-height:550px){.hud{inset:12px 16px auto}.game-buttons{top:12px;right:16px;gap:7px}.round-button{width:36px;height:36px;border-width:2px}.round-button svg{width:19px;height:19px}.scoreboard>strong{font-size:30px}.scoreboard>span{font-size:9px}.counters{margin-top:3px;gap:13px}.counters>span{font-size:14px}.counters svg{width:15px;height:15px}.level-picker summary{font-size:13px}.intro{padding:45px 10px 17px}h1{font-size:50px}.subtitle{font-size:12px;letter-spacing:3px;margin-top:13px}.intro-birds{height:120px;margin:7px 0 10px}.intro-birds img{width:132px}.play-button{font-size:23px;min-width:215px;padding:8px 26px;border-radius:17px}.hero-dock{bottom:11px;left:17px;gap:8px}.queue-hero{width:65px}.queue-hero img{height:65px}.queue-hero span{font-size:11px}.instruction{bottom:12px;font-size:9px}.aim-hint{font-size:10px}.ability-button{bottom:15px;right:17px;font-size:12px;padding:10px 14px;border-radius:16px;max-width:240px}.result-stars{font-size:52px;margin:7px 0}.result-content h2{font-size:32px;margin:5px 0}.result-content p{font-size:11px}.result-score{margin:9px 0}.result-score strong{font-size:27px}.result-actions{margin-top:12px}.result-actions button{padding:9px 17px;font-size:12px}.eyebrow{font-size:10px}.hero-dock{bottom:10px;left:15px;gap:6px}.queue-hero{width:46px}.queue-hero img{height:52px}.queue-hero span{font-size:9px}.queue-hero small{font-size:7px}.hero-action{bottom:12px;right:15px;max-width:350px;gap:10px}.ability-info{max-width:200px;gap:3px}.ability-info strong{font-size:11px}.ability-info>span{font-size:9px;line-height:1.4}.ability-button{position:static;transform:none;max-width:140px;min-height:38px;font-size:10px;padding:8px 10px}.ability-button svg{width:17px;height:17px}.instruction{bottom:90px;left:20%;max-width:32%;font-size:8px}.aim-hint{top:39%}.music-hint{font-size:9px;margin-top:12px}}@container game-frame (max-width:700px){.hero-action{right:12px;max-width:260px;gap:8px}.ability-info{max-width:150px}.ability-info strong{font-size:10px}.ability-info>span{font-size:8px;line-height:1.4}.ability-button{max-width:95px;font-size:9px;padding:8px 7px;gap:4px}.ability-button span{min-width:0;overflow-wrap:anywhere}.ability-button svg{width:15px;height:15px}}@container game-frame (max-width:700px){.hero-dock{gap:clamp(4px,calc((100cqw - var(--safe-left) - var(--safe-right) - 474px)/10),6px)}.queue-hero{width:clamp(35px,calc((100cqw - var(--safe-left) - var(--safe-right) - 338px)/5),46px)}.hero-action{max-width:clamp(205px,calc(100cqw - var(--safe-left) - var(--safe-right) - 274px),260px)}}@container game-frame (max-width:540px){.hero-dock{left:12px;gap:4px}.queue-hero{width:35px}.queue-hero img{height:43px}.hero-action{right:10px;max-width:245px}.ability-info{max-width:140px}}@container game-frame (max-width:540px){.hero-dock{gap:4px}.queue-hero{width:35px}.hero-action{max-width:clamp(205px,calc(100cqw - var(--safe-left) - var(--safe-right) - 274px),245px)}}@container game-frame (max-height:300px){.intro{padding:32px 10px 8px}h1{font-size:32px}.subtitle{font-size:9px;letter-spacing:2px;margin-top:8px}.intro-birds{height:58px;margin:5px 0 6px}.intro-birds img{width:85px}.play-button{font-size:16px;min-width:170px;padding:6px 20px}.play-button svg{width:22px;height:22px}.music-hint{font-size:8px;margin-top:8px}}@container game-frame (max-height:400px){.intro{padding:60px 12px 14px}h1{font-size:38px}.subtitle{font-size:11px;letter-spacing:3px;margin-top:9px}.intro-birds{height:80px;margin:8px 0 10px}.intro-birds img{width:105px}.play-button{font-size:20px;min-width:205px;padding:8px 25px}.play-button svg{width:25px;height:25px}.music-hint{font-size:9px;margin-top:10px}}@container game-frame (max-height:300px){.intro{padding:48px 10px 6px}h1{font-size:28px}.subtitle{font-size:8px;letter-spacing:2px;margin-top:8px}.intro-birds{height:40px;margin:3px 0}.intro-birds img{width:75px}.play-button{font-size:16px;min-width:170px;padding:6px 20px}.play-button svg{width:22px;height:22px}.music-hint{font-size:7px;margin-top:6px}}
