:root{font-family:Inter,Noto Sans TC,Microsoft JhengHei,system-ui,sans-serif;color:#fff5dc;background:#08111d;font-synthesis:none;--ink: #17263b;--cream: #fff5d4;--orange: #ff8b47;--yellow: #ffd65a;--cyan: #42dddf;--glass: rgba(12, 31, 51, .76);--safe-x: max(20px, calc((100vw - 2200px)/2 + 20px) );--safe-y: max(16px, env(safe-area-inset-top));--text-sm: clamp(15px, .38vw + 10px, 20px);--text-md: clamp(18px, .46vw + 11px, 24px);--text-lg: clamp(22px, .58vw + 12px, 31px)}*{box-sizing:border-box}html,body,#app{width:100%;height:100%;margin:0}body{overflow:hidden;background:radial-gradient(circle at 50% 30%,#24425b,#07101b 72%)}button,input,select{font:inherit}button:focus-visible,input:focus-visible,select:focus-visible{outline:3px solid var(--yellow);outline-offset:3px}.portal-home-link{position:fixed;z-index:80;left:max(14px,env(safe-area-inset-left));bottom:max(14px,env(safe-area-inset-bottom));display:inline-flex;align-items:center;min-height:44px;padding:9px 14px;color:#fff6dd;border:1px solid rgba(255,255,255,.23);border-radius:999px;background:#081827c2;box-shadow:0 10px 28px #0000003d;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);font-size:clamp(14px,.32vw + 10px,18px);font-weight:900;text-decoration:none;letter-spacing:.04em;transition:transform .18s ease,background .18s ease}.portal-home-link:hover{transform:translateY(-2px);background:#12344beb}.portal-home-link:focus-visible{outline:3px solid var(--yellow);outline-offset:3px}#app{min-height:100dvh}.game-shell{position:relative;width:100vw;height:100dvh;overflow:hidden;isolation:isolate;background:#6bcbd1 var(--chapter-bg, linear-gradient(145deg, #4fb5c8, #244a72)) center / cover no-repeat;-webkit-user-select:none;user-select:none;touch-action:none}.game-shell:before{content:"";position:absolute;inset:0;z-index:-1;background:linear-gradient(180deg,#0c3f5414,#ffc55d0a 55%,#0b192466)}.game-shell:after{content:"";position:absolute;inset:0;z-index:40;pointer-events:none;box-shadow:inset 0 0 clamp(70px,8vw,180px) #05131f6b}.scene-glow{position:absolute;inset:0;z-index:0;pointer-events:none;background:radial-gradient(circle at 54% 54%,rgba(255,227,147,.32),transparent 28%);mix-blend-mode:screen}.game-shell[data-chapter="1"] .scene-glow{background:radial-gradient(circle at 54% 54%,rgba(104,255,238,.24),transparent 31%)}.game-shell[data-chapter="2"] .scene-glow{background:radial-gradient(circle at 54% 54%,rgba(255,190,95,.2),transparent 32%)}.game-shell[data-chapter="3"] .scene-glow{background:radial-gradient(circle at 54% 54%,rgba(119,159,255,.18),transparent 34%)}.game-shell[data-chapter="4"] .scene-glow{background:radial-gradient(circle at 54% 54%,rgba(255,208,106,.28),transparent 30%)}#gameCanvas{position:absolute;inset:0;width:100%;height:100%;z-index:2;cursor:var(--aim-cursor, crosshair)}.hud{position:absolute;z-index:12;top:0;left:0;right:0;display:grid;grid-template-columns:minmax(0,1fr) auto minmax(0,1fr);column-gap:clamp(8px,1vw,20px);align-items:start;padding:var(--safe-y) var(--safe-x);pointer-events:none;text-shadow:0 2px 7px rgba(7,18,27,.62);transition:opacity .25s ease}.hud-cluster{display:flex;align-items:center;gap:clamp(7px,.7vw,14px);pointer-events:auto;min-width:0}.hud-cluster-right{justify-content:flex-end}.icon-button,.close-button{border:1px solid rgba(255,255,255,.24);color:#fff7dc;background:#0d2739c2;box-shadow:0 6px 18px #05121e40,inset 0 1px #ffffff2b;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);cursor:pointer;transition:transform .18s ease,background .18s ease}.icon-button{width:clamp(42px,2.6vw,58px);height:clamp(42px,2.6vw,58px);flex:0 0 auto;border-radius:50%;font-size:clamp(18px,1.05vw,24px);font-weight:900}.icon-button:hover,.close-button:hover{transform:translateY(-2px);background:#184258eb}.level-readout{display:flex;flex-direction:column;min-width:0;padding:5px 12px 6px 0}.eyebrow,.kicker{font-size:clamp(13px,.3vw + 8px,17px);letter-spacing:.16em;text-transform:uppercase;opacity:.78;font-weight:900}.level-readout strong{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:var(--text-lg);letter-spacing:.035em}.score-panel{min-width:clamp(155px,11vw,235px);text-align:center;padding:10px 22px 9px;border-radius:22px;background:linear-gradient(180deg,#113144d6,#0b1e30b8);border:1px solid rgba(255,255,255,.19);box-shadow:0 9px 25px #0816233b;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px)}.score-panel strong{display:block;font-size:clamp(22px,1.45vw,34px);letter-spacing:.1em;font-variant-numeric:tabular-nums}.record-readout{display:flex;justify-content:center;gap:8px;margin-top:2px;font-size:clamp(13px,.3vw + 8px,17px);color:#ffe69b}.record-readout span{opacity:.7}.record-readout b{font-variant-numeric:tabular-nums}.ammo-panel{display:flex;gap:5px;padding:5px 10px;min-height:clamp(42px,2.6vw,58px);align-items:center;border-radius:30px;background:#0d2739ab;border:1px solid rgba(255,255,255,.16);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.ammo-token{width:clamp(28px,1.65vw,38px);height:clamp(28px,1.65vw,38px);border-radius:50%;display:grid;place-items:center;font-size:clamp(12px,.65vw,17px);font-weight:1000;box-shadow:inset 0 -4px #00000029,0 2px 6px #0000003d}.ammo-token.ember{background:#ef6847}.ammo-token.split{background:#53cbe0}.ammo-token.bomb{background:#394358}.ammo-token.titan{background:linear-gradient(145deg,#9a73c5,#3a2b50);color:#ffe59a;border:2px solid rgba(255,214,106,.7);box-shadow:inset 0 -4px #0003,0 0 13px #ffcd5c66}.ammo-empty{padding:0 8px;font-size:var(--text-sm);opacity:.66}.wind-gauge{position:absolute;top:clamp(128px,14vh,154px);left:50%;transform:translate(-50%);z-index:9;display:flex;align-items:center;gap:10px;padding:8px 16px;border-radius:22px;color:#fef2cf;background:#0d27399e;border:1px solid rgba(255,255,255,.16);font-size:var(--text-sm);font-weight:900;letter-spacing:.08em;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px)}.wind-line{position:relative;width:clamp(72px,5.5vw,112px);height:2px;background:#ffffff42}.wind-line:after{content:"";position:absolute;left:50%;top:-4px;width:1px;height:10px;background:#ffffff8f}.wind-line i{position:absolute;left:50%;top:-4px;width:10px;height:10px;border-radius:50%;background:var(--yellow);transform:translate(-50%);box-shadow:0 0 10px var(--yellow);transition:left .5s cubic-bezier(.2,.8,.2,1)}.wind-gauge strong{min-width:34px;color:var(--yellow)}.ability-hint{position:absolute;left:var(--safe-x);bottom:max(24px,env(safe-area-inset-bottom));z-index:10;display:flex;align-items:center;gap:12px;color:#fff3d2;opacity:0;transform:translateY(15px);transition:.3s ease;pointer-events:none}.ability-hint.visible{opacity:1;transform:none}.ability-hint>span{width:clamp(46px,3vw,64px);height:clamp(46px,3vw,64px);border-radius:50%;display:grid;place-items:center;background:linear-gradient(145deg,#fb5,#f56646);border:2px solid rgba(255,255,255,.46);box-shadow:0 7px 18px #571c1452;font-size:clamp(20px,1.3vw,29px)}.ability-hint div{text-shadow:0 2px 6px #142334}.ability-hint strong,.ability-hint small{display:block}.ability-hint strong{font-size:var(--text-md)}.ability-hint small{font-size:var(--text-sm);opacity:.78;margin-top:3px}.assist-meter{position:absolute;right:var(--safe-x);bottom:max(25px,env(safe-area-inset-bottom));z-index:10;display:flex;align-items:center;gap:12px;padding:9px 15px;border-radius:24px;color:#fff0c3;background:#131c30b8;border:1px solid rgba(255,217,116,.26);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);opacity:0;transform:translateY(12px);transition:.25s ease;pointer-events:none}.assist-meter.visible{opacity:1;transform:none}.assist-meter span{font-size:var(--text-sm);font-weight:900}.assist-meter strong{min-width:60px;font-size:var(--text-md);color:#ffd46a;font-variant-numeric:tabular-nums}.assist-meter.ready{background:linear-gradient(135deg,#634189e6,#2d2246e6);box-shadow:0 0 24px #ffcd5a38}.combo{position:absolute;z-index:10;top:22%;left:50%;transform:translate(-50%,-10px) scale(.8);text-align:center;opacity:0;transition:.22s ease;color:#fff2c6;text-shadow:0 3px 0 #9d472e,0 6px 20px rgba(0,0,0,.4);pointer-events:none}.combo.visible{opacity:1;transform:translate(-50%) scale(1)}.combo span{display:block;font-size:var(--text-sm);letter-spacing:.28em;font-weight:1000}.combo strong{font-size:clamp(36px,3vw,62px);font-style:italic}.toast{position:absolute;z-index:20;left:50%;bottom:9%;transform:translate(-50%,15px);padding:10px 19px;border-radius:24px;background:#0e2334d6;border:1px solid rgba(255,255,255,.2);color:#fff4d3;opacity:0;transition:.25s ease;font-size:var(--text-md);font-weight:800;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);pointer-events:none;white-space:nowrap}.toast.visible{opacity:1;transform:translate(-50%)}.audio-unlock{position:absolute;z-index:24;right:var(--safe-x);bottom:max(24px,env(safe-area-inset-bottom));display:none;align-items:center;gap:9px;padding:10px 16px;color:#fff4d1;border:1px solid rgba(255,255,255,.2);border-radius:24px;background:#0d2739cc;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);cursor:pointer;box-shadow:0 8px 22px #00000040}.audio-unlock.visible{display:flex}.audio-unlock span{color:#ffd45c;font-size:20px}.audio-unlock b{font-size:var(--text-sm)}.overlay{position:absolute;inset:0;z-index:20;display:grid;place-items:center;padding:clamp(24px,4vw,80px);background:#05121f7a;-webkit-backdrop-filter:blur(9px);backdrop-filter:blur(9px);opacity:0;visibility:hidden;overflow:auto;transition:opacity .28s ease,visibility .28s ease}.overlay.is-visible{opacity:1;visibility:visible}.menu-overlay{justify-items:center;align-content:center;background:linear-gradient(90deg,#071825c4,#0718252b 62%,#07182557);-webkit-backdrop-filter:none;backdrop-filter:none;text-align:center}.menu-content{display:grid;justify-items:center;max-width:min(760px,92vw)}.brand-mark{position:relative;width:82px;height:50px;margin-bottom:7px}.brand-mark span,.brand-mark span:after{position:absolute;content:"";width:31px;height:44px;border-radius:70% 20% 55% 40%;background:#f36d48;transform:rotate(-24deg);left:10px;box-shadow:inset -5px -6px #7d2a2033}.brand-mark span:after{left:34px;top:2px;transform:rotate(24deg);background:#55cfe1}.brand-mark i{position:absolute;left:34px;top:9px;font-style:normal;color:#fff4c7;font-size:20px;z-index:2}.menu-overlay .kicker{margin:5px 0 8px;color:#ffe4a4}.menu-overlay h1{margin:0;font-family:Impact,Arial Black,sans-serif;font-size:clamp(68px,7.4vw,145px);line-height:.72;letter-spacing:.03em;transform:skew(-4deg);color:#fff2c7;text-shadow:0 6px 0 #923f32,0 12px 34px rgba(13,31,42,.38)}.menu-overlay h1 em{color:#ff8050;font-style:normal}.subtitle{margin:clamp(14px,2vh,24px) 0 9px;letter-spacing:.55em;text-indent:.55em;font-size:var(--text-md);font-weight:900}.menu-copy{margin:0 0 clamp(18px,2.5vh,30px);font-size:var(--text-md);line-height:1.7;opacity:.86}.primary-button,.secondary-button,.text-button{cursor:pointer;border:0;color:inherit}.primary-button{min-width:clamp(220px,16vw,330px);display:flex;align-items:center;justify-content:space-between;gap:30px;padding:clamp(14px,1vw,19px) 18px clamp(14px,1vw,19px) 24px;border-radius:10px 28px 28px 10px;background:linear-gradient(135deg,#ff9852,#f46447);color:#fff8df;font-size:var(--text-md);font-weight:1000;letter-spacing:.07em;box-shadow:0 8px #9b4635,0 14px 28px #39191942,inset 0 1px #fff6;transition:.18s ease}.primary-button i{font-style:normal;width:32px;height:32px;border-radius:50%;display:grid;place-items:center;background:#ffffff3b}.primary-button:hover{transform:translateY(-2px);filter:saturate(1.1)}.primary-button:active{transform:translateY(4px);box-shadow:0 3px #9b4635}.text-button{padding:10px 14px;background:transparent;color:#fff3d2;opacity:.83;font-size:var(--text-sm);font-weight:850;letter-spacing:.06em}.text-button:hover{opacity:1}.menu-actions{display:flex;align-items:center;gap:16px;margin-top:16px}.menu-footer{position:absolute;bottom:max(18px,env(safe-area-inset-bottom));display:flex;gap:15px;font-size:var(--text-sm);letter-spacing:.1em;opacity:.64}.menu-footer b{color:#ffb95c}.overlay-card{position:relative;width:min(650px,94vw);max-height:94dvh;overflow:auto;padding:clamp(26px,2.2vw,46px);color:#fff5d8;border:1px solid rgba(255,255,255,.21);border-radius:28px;background:linear-gradient(145deg,#123343f5,#081b2bf5);box-shadow:0 34px 80px #030d177a,inset 0 1px #ffffff21;-webkit-backdrop-filter:blur(22px);backdrop-filter:blur(22px)}.wide-card{width:min(1500px,95vw)}.section-heading{display:flex;align-items:flex-start;justify-content:space-between;margin-bottom:clamp(20px,2vh,32px)}.overlay-card h2{margin:4px 0 0;font-size:clamp(32px,2.4vw,52px);line-height:1}.close-button{position:absolute;top:20px;right:20px;width:clamp(38px,2.3vw,50px);height:clamp(38px,2.3vw,50px);border-radius:50%;font-size:clamp(21px,1.25vw,29px)}.world-tabs{display:flex;gap:8px;margin:-5px 0 clamp(14px,1.8vh,22px);padding:4px 2px 8px;overflow-x:auto;scrollbar-width:thin}.world-tab{flex:1 0 min(220px,30vw);display:flex;flex-direction:column;gap:4px;padding:11px 14px;border:1px solid rgba(255,255,255,.14);border-radius:14px;background:#071a298f;color:#fff2d3;text-align:left;cursor:pointer}.world-tab span{font-size:var(--text-sm);font-weight:900;white-space:nowrap}.world-tab b{font-size:clamp(12px,.28vw + 8px,16px);color:#ffd66d;opacity:.76}.world-tab.active{background:linear-gradient(135deg,#ff934ed6,#e24e3dcc);border-color:#ffd38a;box-shadow:0 7px 18px #00000038}.world-tab.active b{color:#fff8dd;opacity:1}.level-grid{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:clamp(9px,.8vw,15px)}.level-card{position:relative;display:flex;flex-direction:column;min-height:clamp(190px,23vh,260px);overflow:hidden;padding:clamp(14px,1.05vw,21px);border-radius:20px;border:1px solid rgba(255,255,255,.17);background:linear-gradient(180deg,#6dcdd43b,#081c2cb8);color:#fff5da;text-align:left;cursor:pointer;transition:.2s ease}.level-card:before{content:"";position:absolute;inset:0;background:radial-gradient(circle at 72% 10%,rgba(255,213,114,.3),transparent 42%);pointer-events:none}.level-card:hover:not(:disabled){transform:translateY(-6px);border-color:#ffdb7ead;box-shadow:0 14px 28px #040f1857}.level-card:disabled{filter:grayscale(.8);opacity:.45;cursor:not-allowed}.level-card .level-index{position:relative;display:block;font-size:clamp(38px,2.6vw,58px);line-height:.92;font-family:Impact,sans-serif;color:#ffcf67}.level-card>strong{position:relative;display:block;margin-top:12px;font-size:clamp(17px,.72vw + 8px,23px);line-height:1.22}.level-card>small{position:relative;display:block;margin-top:5px;font-size:clamp(13px,.3vw + 7px,17px);line-height:1.25;opacity:.7}.lock{position:absolute;right:16px;top:16px;font-size:20px}.level-status{position:relative;display:flex;align-items:center;gap:9px;margin-top:auto;padding-top:14px;min-height:58px}.clear-star{flex:0 0 auto;font-size:clamp(28px,1.7vw,38px);line-height:1;color:#ffffff2e;filter:grayscale(1)}.clear-star.won{color:#ffd55c;filter:drop-shadow(0 3px 0 #975034) drop-shadow(0 5px 8px rgba(0,0,0,.25))}.level-status div{min-width:0}.level-status small,.level-status b{display:block!important;margin:0!important;overflow:hidden;text-overflow:ellipsis}.level-status small{font-size:clamp(13px,.25vw + 8px,16px)!important}.level-status b{margin-top:3px!important;font-size:clamp(13px,.32vw + 7px,17px)!important;white-space:nowrap}.legend-row{display:flex;gap:24px;margin-top:22px;justify-content:center;font-size:var(--text-sm);opacity:.78}.legend-row span{display:flex;align-items:center;gap:8px}.legend-row b{font-weight:700}.dot{width:10px;height:10px;border-radius:50%;display:inline-block}.dot.ember{background:#ef6847}.dot.split{background:#53cbe0}.dot.bomb{background:#3e495e}.how-card{text-align:center;width:min(900px,95vw)}.how-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:16px;margin:28px 0}.how-grid article{position:relative;padding:22px 18px 18px;min-height:230px;border-left:1px solid rgba(255,255,255,.13)}.how-grid article:first-child{border:0}.step-number{position:absolute;top:0;left:18px;font-size:var(--text-sm);color:#ffcf67;font-weight:900}.how-grid h3{margin:11px 0 7px;font-size:var(--text-lg)}.how-grid p{margin:0;font-size:var(--text-sm);line-height:1.65;opacity:.72}.gesture{display:block;position:relative;width:clamp(75px,5vw,104px);height:clamp(75px,5vw,104px);margin:6px auto 12px;border-radius:50%;border:1px dashed rgba(255,255,255,.22)}.gesture:before{content:"";position:absolute;width:24px;height:24px;border-radius:50%;background:#ff7b4d;box-shadow:0 0 0 6px #ff7b4d2e}.gesture.pull:before{left:13px;bottom:12px}.gesture.pull:after{content:"↙";position:absolute;left:42px;top:9px;color:#ffd66d;font-size:34px}.gesture.release:before{right:11px;top:11px}.gesture.release:after{content:"•••";position:absolute;left:10px;bottom:18px;letter-spacing:6px;color:#ffd66d;transform:rotate(-25deg)}.gesture.tap:before{left:calc(50% - 12px);top:calc(50% - 12px);box-shadow:0 0 0 11px #ff7b4d24,0 0 0 21px #ff7b4d0f}.gesture.tap:after{content:"✦";position:absolute;right:6px;top:4px;color:#ffd66d;font-size:25px}.key-row{display:flex;align-items:center;justify-content:center;flex-wrap:wrap;gap:9px;margin:12px 0 25px;font-size:var(--text-sm);opacity:.75}.key-row kbd{padding:6px 9px;border-radius:6px;background:#ffffff1a;border:1px solid rgba(255,255,255,.17);font:inherit;color:#ffd878}.how-card .primary-button{margin:auto}.tutorial-card{width:min(940px,94vw);text-align:center}.tutorial-objective{max-width:760px;margin:10px auto 22px;font-size:var(--text-md);line-height:1.55;color:#fff0b5}.tutorial-birds{display:grid;grid-template-columns:repeat(3,1fr);gap:12px}.tutorial-bird{display:flex;align-items:flex-start;gap:13px;padding:18px;text-align:left;border:1px solid rgba(255,255,255,.13);border-radius:18px;background:#ffffff0e}.tutorial-bird>span{flex:0 0 auto;width:52px;height:52px;display:grid;place-items:center;border-radius:50%;font-size:25px;font-weight:1000;box-shadow:inset 0 -5px #00000024}.tutorial-bird.ember>span{background:#ef6847}.tutorial-bird.split>span{background:#53cbe0}.tutorial-bird.bomb>span{background:#3f485d}.tutorial-bird h3{margin:2px 0 7px;font-size:var(--text-lg)}.tutorial-bird p{margin:0;font-size:var(--text-sm);line-height:1.55;opacity:.75}.tutorial-tip{margin:18px 0;padding:12px 16px;border-radius:14px;background:#ffd3681c;font-size:var(--text-sm);color:#ffe29a}.tutorial-card .primary-button{margin:auto}.settings-card{width:min(760px,94vw)}.settings-list{display:grid;gap:13px;margin:28px 0 22px}.setting-row,.select-row{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:10px 18px;padding:14px 16px;border-bottom:1px solid rgba(255,255,255,.1)}.setting-row span b,.setting-row span small,.select-row span b,.select-row span small{display:block}.setting-row b,.select-row b{font-size:var(--text-md)}.setting-row small,.select-row small{margin-top:3px;font-size:var(--text-sm);opacity:.63}.setting-row output{font-size:var(--text-md);font-weight:900;color:#ffd66d;font-variant-numeric:tabular-nums}.setting-row input{grid-column:1/-1;width:100%;height:8px;accent-color:#ff8a4a;cursor:pointer}.select-row select{min-width:180px;padding:11px 35px 11px 13px;color:#fff3d5;background:#173d53;border:1px solid rgba(255,255,255,.2);border-radius:12px;font-size:var(--text-sm)}.settings-reset{display:block;margin:0 auto}.result-overlay{background:#04111c99}.result-card{text-align:center;width:min(560px,92vw)}.result-card h2{font-size:clamp(38px,3vw,62px)}.result-stars{display:flex;justify-content:center;margin:18px 0;font-size:clamp(70px,6vw,118px);color:#ffffff24}.result-stars span{transform:scale(.55) rotate(-12deg);transition:.55s cubic-bezier(.2,1.6,.4,1)}.result-stars span.won{color:#ffd355;filter:drop-shadow(0 7px 0 #a85832) drop-shadow(0 10px 12px rgba(0,0,0,.24));transform:scale(1) rotate(0)}.result-stars.is-failed{display:none}.result-score{display:flex;align-items:baseline;justify-content:center;gap:16px}.result-score span{font-size:var(--text-sm);opacity:.68}.result-score strong{font-size:clamp(34px,2.6vw,55px);color:#fff0b9;font-variant-numeric:tabular-nums}.result-stats{display:grid;grid-template-columns:repeat(3,1fr);gap:1px;margin:22px 0;background:#ffffff1c}.result-stats div{padding:14px;background:#102e43}.result-stats span,.result-stats strong{display:block}.result-stats span{font-size:var(--text-sm);opacity:.65}.result-stats strong{font-size:var(--text-lg);margin-top:4px}.result-actions{display:flex;align-items:center;justify-content:center;gap:13px}.secondary-button{padding:13px 18px;border-radius:22px;background:#ffffff1a;border:1px solid rgba(255,255,255,.15);font-size:var(--text-sm);font-weight:900}.result-actions .primary-button{min-width:210px}.result-burst{position:absolute;width:min(70vw,850px);aspect-ratio:1;border-radius:50%;background:repeating-conic-gradient(from 0deg,rgba(255,224,125,.09) 0 4deg,transparent 4deg 10deg);animation:spin 45s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}.pause-card{text-align:center;width:min(430px,90vw)}.pause-card .primary-button{margin:24px auto 10px}.pause-card .text-button{display:block;margin:6px auto}.rotate-notice{display:none}@media(max-width:1500px){.wide-card{width:min(1250px,97vw)}}@media(max-width:1050px){:root{--safe-x:16px}.hud{grid-template-columns:1fr auto 1fr}.level-readout,.ammo-panel{display:none}.wide-card{width:min(980px,98vw)}.menu-overlay h1{font-size:clamp(58px,10vw,100px)}}@media(max-height:760px)and (orientation:landscape){.hud{padding-top:8px}.icon-button{width:42px;height:42px}.score-panel{padding:5px 16px}.wind-gauge{top:102px;padding:6px 12px}.menu-overlay h1{font-size:clamp(52px,8.5vh,78px)}.brand-mark{display:none}.menu-copy{margin-bottom:10px}.subtitle{margin-top:8px}.overlay{padding:10px}.overlay-card{padding:18px}.section-heading{margin-bottom:12px}.world-tabs{margin-bottom:8px}.world-tab{padding:7px 10px}.level-card{min-height:145px;padding:11px}.level-card .level-index{font-size:34px}.level-card>strong{margin-top:7px}.level-card>small{margin-top:2px}.level-status{padding-top:7px;min-height:44px}.how-grid article{min-height:170px;padding-top:12px}.gesture{width:58px;height:58px}.settings-list{gap:3px;margin:15px 0}.setting-row,.select-row{padding:8px 12px}.result-stars{font-size:62px;margin:8px 0}.result-stats{margin:12px 0}.tutorial-objective{margin-bottom:10px}.tutorial-bird{padding:11px}.tutorial-tip{margin:10px 0}}@media(min-aspect-ratio:2/1){.menu-content{transform:translate(-10vw)}.level-grid{grid-template-columns:repeat(5,minmax(180px,1fr))}.wide-card{width:min(1600px,82vw)}}@media(max-aspect-ratio:4/3)and (orientation:landscape){.level-grid{gap:7px}.level-card{padding:10px}.level-card .level-index{font-size:34px}.level-card>strong{margin-top:7px;font-size:16px}.level-card>small{font-size:13px}.level-status{padding-top:6px}.clear-star{font-size:26px}.wide-card{width:min(1000px,98vw);padding:16px}.legend-row{margin-top:9px}.menu-footer{display:none}.hud-cluster-right .icon-button:nth-last-child(3){display:none}.world-tab{flex-basis:190px}.tutorial-birds{gap:7px}.tutorial-bird{padding:10px;gap:8px}.tutorial-bird>span{width:42px;height:42px}}@media(orientation:portrait){.game-shell>*:not(.rotate-notice){filter:blur(8px)}.rotate-notice{display:flex;position:absolute;inset:0;z-index:99;align-items:center;justify-content:center;flex-direction:column;gap:10px;padding:30px;text-align:center;background:#07131fed;color:#fff2d3}.rotate-notice strong{font-size:clamp(28px,8vw,46px)}.rotate-notice span{font-size:clamp(15px,4vw,22px);opacity:.76}}@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation-duration:.01ms!important;transition-duration:.01ms!important}}#dynamicRangeSelect{min-width:min(310px,42vw)}.assist-notice{display:none;align-items:center;gap:12px;margin:-7px 0 18px;padding:12px 15px;border:1px solid rgba(255,210,98,.24);border-radius:15px;background:linear-gradient(135deg,#714c9740,#ffb5481a);text-align:left}.assist-notice.visible{display:flex}.assist-notice>span{flex:0 0 auto;width:38px;height:38px;display:grid;place-items:center;border-radius:50%;background:#74559b;color:#ffd66a}.assist-notice strong,.assist-notice small{display:block}.assist-notice strong{font-size:var(--text-md);color:#ffe19a}.assist-notice small{margin-top:3px;font-size:var(--text-sm);opacity:.72}.result-card{width:min(620px,92vw)}@media(max-height:560px)and (orientation:landscape){:root{--text-sm: clamp(11px, 1.35vh + 6px, 14px);--text-md: clamp(13px, 1.65vh + 7px, 17px);--text-lg: clamp(16px, 2vh + 8px, 21px)}.portal-home-link{top:max(7px,env(safe-area-inset-top));bottom:auto;left:max(7px,env(safe-area-inset-left));width:38px;height:38px;min-height:38px;justify-content:center;padding:0;overflow:hidden;font-size:0;border-radius:50%}.portal-home-link:before{content:"←";font-size:18px;line-height:1}body:not(:has(.overlay.is-visible)) .portal-home-link{opacity:0;pointer-events:none}.overlay{padding:6px}.overlay-card{max-height:calc(100dvh - 12px);padding:12px 15px;border-radius:18px;overscroll-behavior:contain}.overlay-card h2{font-size:clamp(23px,7vh,31px)}.close-button{top:9px;right:9px;width:34px;height:34px;font-size:19px}.section-heading{margin-bottom:7px;padding-right:42px}.section-heading .kicker{margin:0 0 3px;font-size:9px}#gameShell:has(#menuOverlay.is-visible) .wind-gauge{display:none}.menu-overlay{place-items:center;padding:6px 5vw 6px 58px;text-align:left}.menu-content{width:min(1040px,92vw);max-width:none;display:grid;grid-template-columns:minmax(290px,1.15fr) minmax(260px,.85fr);grid-template-areas:"kicker copy" "title copy" "title campaign" "subtitle actions";align-items:center;justify-items:stretch;column-gap:clamp(20px,4vw,52px);row-gap:5px;transform:none!important}.brand-mark{display:none}.menu-overlay .kicker{grid-area:kicker;margin:0;font-size:10px;letter-spacing:.16em}.menu-overlay h1{grid-area:title;align-self:center;font-size:clamp(48px,18vh,76px);line-height:.72;text-align:center}.subtitle{grid-area:subtitle;margin:3px 0 0;font-size:12px;text-align:center}.menu-copy{grid-area:copy;align-self:end;margin:0 0 4px;font-size:clamp(12px,3.6vh,15px);line-height:1.4;text-align:left}.menu-content>.primary-button{grid-area:campaign;width:100%;min-width:0;min-height:43px;padding:8px 11px 8px 16px;border-radius:10px 22px 22px 10px}.menu-actions{grid-area:actions;justify-content:center;gap:5px;margin:1px 0 0}.menu-actions .text-button{padding:5px 8px}.menu-footer{display:none}.level-overlay .wide-card{width:calc(100vw - 92px)!important;height:calc(100dvh - 12px);max-height:calc(100dvh - 12px);display:grid;grid-template-rows:auto auto minmax(0,1fr);overflow:hidden;padding:9px 12px}.level-overlay .section-heading{margin:0 0 4px}.world-tabs{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:5px;margin:0 0 5px;padding:0;overflow:visible}.world-tab{min-width:0;min-height:38px;padding:5px 7px;border-radius:9px}.world-tab span{overflow:hidden;font-size:11px;text-overflow:ellipsis}.world-tab b{font-size:9px}.level-grid{min-height:0;grid-template-columns:repeat(5,minmax(0,1fr));gap:5px;overflow:auto;padding-right:2px}.level-card{min-height:82px;padding:7px 8px;border-radius:11px}.level-card .level-index{font-size:25px}.level-card>strong{margin-top:4px;font-size:12px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.level-card>small{display:none}.level-status{min-height:19px;gap:4px;padding-top:3px}.clear-star{font-size:18px}.level-status small{display:none!important}.level-status b{margin:0!important;font-size:10px!important}.lock{top:7px;right:7px;font-size:14px}.legend-row{display:none}.result-overlay .result-card{width:min(720px,calc(100vw - 104px));max-height:calc(100dvh - 12px);overflow:auto;padding:10px 18px;border-radius:18px}.result-card>.kicker{margin:0 0 2px;font-size:10px}.result-card h2{margin:0;font-size:clamp(27px,8vh,36px)}.result-stars{margin:0;font-size:clamp(38px,12vh,52px);line-height:1}.result-score{gap:10px;line-height:1}.result-score strong{font-size:clamp(27px,8vh,36px)}.result-stats{margin:6px 0}.result-stats div{padding:5px 8px}.result-stats span{font-size:10px}.result-stats strong{margin-top:1px;font-size:14px}.result-actions{gap:7px}.secondary-button{padding:7px 11px;border-radius:15px;font-size:12px}.result-actions .primary-button{min-width:155px;min-height:38px;padding:6px 9px 6px 13px;font-size:13px}.result-actions .primary-button i{width:26px;height:26px}.assist-notice{margin:4px 0 6px;padding:6px 9px}.assist-notice>span{width:28px;height:28px}.how-card,.tutorial-card,.settings-card,.pause-card{max-height:calc(100dvh - 12px)}.how-grid{gap:7px;margin:7px 0}.how-grid article{min-height:108px;padding:8px 9px}.gesture{width:38px;height:38px;margin:2px auto 4px}.how-grid h3{margin:3px 0}.how-grid p{font-size:10px;line-height:1.3}.key-row{margin:5px 0 7px}.tutorial-objective{margin:3px auto 6px;font-size:12px}.tutorial-birds{gap:5px}.tutorial-bird{gap:7px;padding:7px;border-radius:10px}.tutorial-bird>span{width:32px;height:32px;font-size:16px}.tutorial-bird h3{margin:0 0 2px;font-size:13px}.tutorial-bird p{font-size:10px;line-height:1.3}.tutorial-tip{margin:5px 0;padding:6px 9px;font-size:10px}.settings-list{gap:0;margin:5px 0}.setting-row,.select-row{gap:3px 9px;padding:5px 8px}.setting-row small,.select-row small{display:none!important}.setting-row input{height:5px}.select-row select{min-width:150px;padding:6px 28px 6px 9px}.pause-card .primary-button{margin:8px auto 4px}.pause-card .text-button{margin:1px auto;padding:4px 8px}}@media(max-height:390px)and (orientation:landscape){.menu-overlay h1{font-size:clamp(43px,17vh,62px)}.menu-copy{font-size:12px;line-height:1.25}.level-overlay .wide-card{width:calc(100vw - 82px)!important}.world-tab{min-height:32px;padding:3px 6px}.world-tab b{display:none}.level-card{min-height:70px}.level-card .level-index{font-size:21px}.result-card h2{font-size:26px}.result-stars{font-size:36px}.result-stats{margin:4px 0}}
