#app.fel-math-theme{background:linear-gradient(#edf9ff,#fff6df)}
#app.fel-word-theme{background:radial-gradient(ellipse at 50% 50%,#fff7cf,#eaf2fa)}
.fel-score{display:flex;align-items:center;justify-content:space-between;gap:8px;font-size:clamp(14px,2vw,19px);margin:4px 0 12px;padding:8px 12px;background:#fff9;border-radius:14px}
.game-app-prompt .fel-mission{font-size:clamp(24px,4vw,36px);line-height:1.25;text-align:center;margin:10px 0;font-weight:850}
.fel-math-theme .game-app-prompt .fel-mission{font-size:clamp(34px,7vw,64px);color:#163e65;letter-spacing:.02em}
.fel-math-theme .game-app-layout{grid-template-rows:minmax(110px,26%) minmax(0,1fr) 140px}
.fel-word-theme .game-app-board{flex-direction:column;gap:18px}
.game-app-board>.fel-balloons{grid-auto-rows:clamp(100px,18dvh,150px);max-width:530px;gap:24px 20px;padding-bottom:22px}
.game-app-board>.fel-balloons button{position:relative;justify-self:center;width:min(100%,145px);height:100%;border-radius:50% 50% 46% 46%;background:radial-gradient(circle at 30% 25%,#fff9 0 8%,transparent 9%),linear-gradient(135deg,#ffb5c8,#ee759a);border:3px solid #c33e69;box-shadow:inset -8px -8px 0 #0001,0 5px 0 #0001;color:#38213d;font-size:clamp(25px,4vw,38px);overflow:visible;transition:background .15s;isolation:isolate}
.game-app-board>.fel-balloons button:nth-child(2){background:radial-gradient(circle at 30% 25%,#fff9 0 8%,transparent 9%),linear-gradient(135deg,#abe9ff,#61bbef);border-color:#2876a1;color:#14374d}
.game-app-board>.fel-balloons button:nth-child(3){background:radial-gradient(circle at 30% 25%,#fff9 0 8%,transparent 9%),linear-gradient(135deg,#fff09e,#ffd653);border-color:#ad7e16;color:#503508}
.game-app-board>.fel-balloons button:nth-child(4){background:radial-gradient(circle at 30% 25%,#fff9 0 8%,transparent 9%),linear-gradient(135deg,#d5c1ff,#aa90ef);border-color:#7251ad;color:#38275d}
.fel-balloons button:before{content:'';position:absolute;bottom:-11px;left:calc(50% - 8px);border-left:8px solid transparent;border-right:8px solid transparent;border-bottom:11px solid currentColor;opacity:.6}
.game-app-board .fel-balloons button:after{content:'';position:absolute;display:block;bottom:-30px;left:50%;width:1px;height:20px;background:#74634d}
.fel-balloons button:focus-visible,.fel-word-cards button:focus-visible{outline:4px solid #1b4d78;outline-offset:5px}
.fel-balloons button:disabled,.fel-word-cards button:disabled{opacity:1}
.game-app-board>.fel-balloons button.fel-hit{background:transparent;border-color:transparent;box-shadow:none}
.fel-balloons button.fel-hit:before,.fel-balloons button.fel-hit:after{visibility:hidden}
.fel-burst{display:none;position:absolute;inset:-10px;font-size:110px;line-height:1;color:#dc9120;text-shadow:20px 15px 0 #ff789c,-20px -15px 0 #61bcec;pointer-events:none}
.fel-hit .fel-burst{display:block;animation:fel-pop .65s ease-out both!important;z-index:-1}
.fel-choice-value{position:relative;z-index:1}
.game-app-board>.fel-word-cards{grid-auto-rows:clamp(60px,10dvh,90px);gap:12px;max-width:620px}
.game-app-board>.fel-word-cards button{background:linear-gradient(#fffdf2,#fff3d4);border:2px solid #ad8241;border-radius:16px;box-shadow:0 5px 0 #d8bd89;color:#3d301c;font-weight:800;font-size:clamp(18px,3vw,26px);display:flex;justify-content:center;align-items:center;gap:8px}
.fel-key{font-size:18px;opacity:.7;flex-shrink:0}
.game-app-board>.fel-word-cards button.fel-hit{background:#d7f1d5;border-color:#318b53;box-shadow:0 5px 0 #8bb998}
.game-app-board button.fel-miss{border:3px dashed #9d3844!important;background:#ffe2e2!important}
.fel-chest{position:relative;width:120px;height:100px;flex-shrink:0}
.fel-chest-base{position:absolute;bottom:0;left:5px;right:5px;height:58px;border:4px solid #895126;background:repeating-linear-gradient(0deg,#a96330 0 12px,#bc7741 13px 24px);border-radius:6px 6px 15px 15px;box-shadow:inset 12px 0 #eac362,inset -12px 0 #eac362,0 6px 0 #0001;text-align:center}
.fel-chest-base b{display:block;padding:8px;font-size:27px}
.fel-chest-lid{position:absolute;left:5px;right:5px;bottom:55px;height:32px;background:#e6ba55;border:4px solid #895126;border-radius:40px 40px 3px 3px;transform-origin:50% 100%;transition:transform .35s}
.fel-chest-gem{position:absolute;left:35px;top:15px;font-size:40px;opacity:0}
.fel-chest-open .fel-chest-lid{transform:translateY(-22px) rotate(-12deg)}
.fel-chest-open .fel-chest-gem{opacity:1;z-index:2;animation:fel-gem .6s ease-out both}
@keyframes fel-pop{0%{opacity:0;transform:scale(.3)}45%{opacity:1}100%{opacity:0;transform:scale(1.25)}}
@keyframes fel-gem{from{transform:translateY(30px) scale(.4)}to{transform:translateY(-20px) scale(1)}}
@media(max-height:600px){.fel-math-theme .game-app-layout,.fel-word-theme .game-app-layout{grid-template-rows:minmax(85px,26%) minmax(0,1fr) 100px}.game-app-board>.fel-balloons{grid-template-columns:repeat(4,minmax(0,1fr));grid-auto-rows:clamp(70px,24dvh,100px);gap:14px}.fel-word-theme .game-app-board{flex-direction:row}.fel-chest{width:90px;height:90px}.fel-score{margin:0;padding:3px}.fel-math-theme .game-app-prompt .fel-mission{font-size:36px}}
@media(prefers-reduced-motion:reduce){.fel-hit .fel-burst,.fel-chest-open .fel-chest-gem{animation:none!important}.fel-hit .fel-burst{font-size:65px;opacity:.5;text-shadow:none}.fel-chest-lid{transition:none}}
body.game-app-active #app.fel-math-theme{background:linear-gradient(#edf9ff,#fff6df)}body.game-app-active #app.fel-word-theme{background:radial-gradient(ellipse at 50% 50%,#fff7cf,#eaf2fa)}.game-app-board>.fel-balloons button{display:grid;place-items:center;text-align:center}.fel-balloons button:last-child:nth-child(odd){grid-column:1/-1}.fel-math-theme .game-app-layout{grid-template-rows:minmax(140px,30%) minmax(0,1fr) 140px}@media(max-height:600px){.fel-math-theme .game-app-layout{grid-template-rows:minmax(85px,30%) minmax(0,1fr) 100px}.fel-balloons button:last-child:nth-child(odd){grid-column:auto}}
.game-app-board>.fel-balloons{height:100%;max-height:340px;grid-template-rows:repeat(2,minmax(0,1fr));grid-auto-rows:auto;gap:24px 20px;padding:4px 0 26px;box-sizing:border-box}@media(max-height:600px){.game-app-board>.fel-balloons{grid-template-rows:minmax(0,1fr);max-height:150px;gap:14px}}
