*,:before,:after{--tw-border-spacing-x: 0;--tw-border-spacing-y: 0;--tw-translate-x: 0;--tw-translate-y: 0;--tw-rotate: 0;--tw-skew-x: 0;--tw-skew-y: 0;--tw-scale-x: 1;--tw-scale-y: 1;--tw-pan-x: ;--tw-pan-y: ;--tw-pinch-zoom: ;--tw-scroll-snap-strictness: proximity;--tw-gradient-from-position: ;--tw-gradient-via-position: ;--tw-gradient-to-position: ;--tw-ordinal: ;--tw-slashed-zero: ;--tw-numeric-figure: ;--tw-numeric-spacing: ;--tw-numeric-fraction: ;--tw-ring-inset: ;--tw-ring-offset-width: 0px;--tw-ring-offset-color: #fff;--tw-ring-color: rgb(59 130 246 / .5);--tw-ring-offset-shadow: 0 0 #0000;--tw-ring-shadow: 0 0 #0000;--tw-shadow: 0 0 #0000;--tw-shadow-colored: 0 0 #0000;--tw-blur: ;--tw-brightness: ;--tw-contrast: ;--tw-grayscale: ;--tw-hue-rotate: ;--tw-invert: ;--tw-saturate: ;--tw-sepia: ;--tw-drop-shadow: ;--tw-backdrop-blur: ;--tw-backdrop-brightness: ;--tw-backdrop-contrast: ;--tw-backdrop-grayscale: ;--tw-backdrop-hue-rotate: ;--tw-backdrop-invert: ;--tw-backdrop-opacity: ;--tw-backdrop-saturate: ;--tw-backdrop-sepia: ;--tw-contain-size: ;--tw-contain-layout: ;--tw-contain-paint: ;--tw-contain-style: }::backdrop{--tw-border-spacing-x: 0;--tw-border-spacing-y: 0;--tw-translate-x: 0;--tw-translate-y: 0;--tw-rotate: 0;--tw-skew-x: 0;--tw-skew-y: 0;--tw-scale-x: 1;--tw-scale-y: 1;--tw-pan-x: ;--tw-pan-y: ;--tw-pinch-zoom: ;--tw-scroll-snap-strictness: proximity;--tw-gradient-from-position: ;--tw-gradient-via-position: ;--tw-gradient-to-position: ;--tw-ordinal: ;--tw-slashed-zero: ;--tw-numeric-figure: ;--tw-numeric-spacing: ;--tw-numeric-fraction: ;--tw-ring-inset: ;--tw-ring-offset-width: 0px;--tw-ring-offset-color: #fff;--tw-ring-color: rgb(59 130 246 / .5);--tw-ring-offset-shadow: 0 0 #0000;--tw-ring-shadow: 0 0 #0000;--tw-shadow: 0 0 #0000;--tw-shadow-colored: 0 0 #0000;--tw-blur: ;--tw-brightness: ;--tw-contrast: ;--tw-grayscale: ;--tw-hue-rotate: ;--tw-invert: ;--tw-saturate: ;--tw-sepia: ;--tw-drop-shadow: ;--tw-backdrop-blur: ;--tw-backdrop-brightness: ;--tw-backdrop-contrast: ;--tw-backdrop-grayscale: ;--tw-backdrop-hue-rotate: ;--tw-backdrop-invert: ;--tw-backdrop-opacity: ;--tw-backdrop-saturate: ;--tw-backdrop-sepia: ;--tw-contain-size: ;--tw-contain-layout: ;--tw-contain-paint: ;--tw-contain-style: }*,:before,:after{box-sizing:border-box;border-width:0;border-style:solid;border-color:#e5e7eb}:before,:after{--tw-content: ""}html,:host{line-height:1.5;-webkit-text-size-adjust:100%;-moz-tab-size:4;-o-tab-size:4;tab-size:4;font-family:ui-sans-serif,system-ui,sans-serif,"Apple Color Emoji","Segoe UI Emoji",Segoe UI Symbol,"Noto Color Emoji";font-feature-settings:normal;font-variation-settings:normal;-webkit-tap-highlight-color:transparent}body{margin:0;line-height:inherit}hr{height:0;color:inherit;border-top-width:1px}abbr:where([title]){-webkit-text-decoration:underline dotted;text-decoration:underline dotted}h1,h2,h3,h4,h5,h6{font-size:inherit;font-weight:inherit}a{color:inherit;text-decoration:inherit}b,strong{font-weight:bolder}code,kbd,samp,pre{font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,Liberation Mono,Courier New,monospace;font-feature-settings:normal;font-variation-settings:normal;font-size:1em}small{font-size:80%}sub,sup{font-size:75%;line-height:0;position:relative;vertical-align:baseline}sub{bottom:-.25em}sup{top:-.5em}table{text-indent:0;border-color:inherit;border-collapse:collapse}button,input,optgroup,select,textarea{font-family:inherit;font-feature-settings:inherit;font-variation-settings:inherit;font-size:100%;font-weight:inherit;line-height:inherit;letter-spacing:inherit;color:inherit;margin:0;padding:0}button,select{text-transform:none}button,input:where([type=button]),input:where([type=reset]),input:where([type=submit]){-webkit-appearance:button;background-color:transparent;background-image:none}:-moz-focusring{outline:auto}:-moz-ui-invalid{box-shadow:none}progress{vertical-align:baseline}::-webkit-inner-spin-button,::-webkit-outer-spin-button{height:auto}[type=search]{-webkit-appearance:textfield;outline-offset:-2px}::-webkit-search-decoration{-webkit-appearance:none}::-webkit-file-upload-button{-webkit-appearance:button;font:inherit}summary{display:list-item}blockquote,dl,dd,h1,h2,h3,h4,h5,h6,hr,figure,p,pre{margin:0}fieldset{margin:0;padding:0}legend{padding:0}ol,ul,menu{list-style:none;margin:0;padding:0}dialog{padding:0}textarea{resize:vertical}input::-moz-placeholder,textarea::-moz-placeholder{opacity:1;color:#9ca3af}input::placeholder,textarea::placeholder{opacity:1;color:#9ca3af}button,[role=button]{cursor:pointer}:disabled{cursor:default}img,svg,video,canvas,audio,iframe,embed,object{display:block;vertical-align:middle}img,video{max-width:100%;height:auto}[hidden]:where(:not([hidden=until-found])){display:none}.pointer-events-none{pointer-events:none}.visible{visibility:visible}.fixed{position:fixed}.absolute{position:absolute}.relative{position:relative}.inset-0{top:0;right:0;bottom:0;left:0}.inset-x-0{left:0;right:0}.bottom-0{bottom:0}.left-0{left:0}.right-0{right:0}.top-0{top:0}.z-10{z-index:10}.z-30{z-index:30}.z-50{z-index:50}.my-auto{margin-top:auto;margin-bottom:auto}.-mt-44{margin-top:-11rem}.-mt-6{margin-top:-1.5rem}.mb-0\.5{margin-bottom:.125rem}.mb-2{margin-bottom:.5rem}.mb-5{margin-bottom:1.25rem}.flex{display:flex}.table{display:table}.grid{display:grid}.hidden{display:none}.h-12{height:3rem}.h-20{height:5rem}.h-24{height:6rem}.h-3\.5{height:.875rem}.h-40{height:10rem}.h-5{height:1.25rem}.h-7{height:1.75rem}.h-full{height:100%}.min-h-0{min-height:0px}.min-h-full{min-height:100%}.w-3\.5{width:.875rem}.w-5{width:1.25rem}.w-56{width:14rem}.w-64{width:16rem}.w-full{width:100%}.max-w-sm{max-width:24rem}.flex-1{flex:1 1 0%}.flex-shrink-0{flex-shrink:0}.-scale-x-100{--tw-scale-x: -1;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}@keyframes bannerPop{0%{transform:scale(.6);opacity:0}60%{transform:scale(1.08)}to{transform:scale(1);opacity:1}}.animate-banner-pop{animation:bannerPop .55s cubic-bezier(.34,1.56,.64,1) backwards}@keyframes bounceIn{0%{transform:scale(.3);opacity:0}50%{transform:scale(1.05)}70%{transform:scale(.9)}to{transform:scale(1);opacity:1}}.animate-bounce-in{animation:bounceIn .5s ease-out}@keyframes fadeInUp{0%{transform:translateY(12px);opacity:0}to{transform:translateY(0);opacity:1}}.animate-fade-in-up{animation:fadeInUp .5s ease-out backwards}@keyframes floatBob{0%,to{transform:translateY(0) rotate(-2deg)}50%{transform:translateY(-9px) rotate(2deg)}}.animate-float-bob{animation:floatBob 3s ease-in-out infinite}@keyframes popIn{0%{transform:scale(.85) translateY(14px);opacity:0}to{transform:scale(1) translateY(0);opacity:1}}.animate-pop-in{animation:popIn .45s cubic-bezier(.34,1.56,.64,1) backwards}@keyframes pulse{50%{opacity:.5}}.animate-pulse{animation:pulse 2s cubic-bezier(.4,0,.6,1) infinite}@keyframes rowFlash{0%,to{filter:brightness(1)}50%{filter:brightness(1.25)}}.animate-row-flash{animation:rowFlash 1.4s ease-in-out infinite}@keyframes spin{to{transform:rotate(360deg)}}.animate-spin{animation:spin 1s linear infinite}@keyframes titleDrop{0%{transform:translateY(-30px) scale(.8);opacity:0}to{transform:translateY(0) scale(1);opacity:1}}.animate-title-drop{animation:titleDrop .6s cubic-bezier(.34,1.56,.64,1) backwards}.grid-cols-1{grid-template-columns:repeat(1,minmax(0,1fr))}.grid-cols-5{grid-template-columns:repeat(5,minmax(0,1fr))}.flex-col{flex-direction:column}.items-end{align-items:flex-end}.items-center{align-items:center}.items-baseline{align-items:baseline}.justify-center{justify-content:center}.justify-between{justify-content:space-between}.gap-0\.5{gap:.125rem}.gap-1{gap:.25rem}.gap-1\.5{gap:.375rem}.gap-2{gap:.5rem}.gap-3{gap:.75rem}.gap-4{gap:1rem}.gap-8{gap:2rem}.overflow-hidden{overflow:hidden}.overflow-y-auto{overflow-y:auto}.overflow-x-hidden{overflow-x:hidden}.rounded{border-radius:.25rem}.rounded-full{border-radius:9999px}.rounded-lg{border-radius:.5rem}.border-2{border-width:2px}.border-\[3px\]{border-width:3px}.object-contain{-o-object-fit:contain;object-fit:contain}.p-3{padding:.75rem}.px-1{padding-left:.25rem;padding-right:.25rem}.px-2{padding-left:.5rem;padding-right:.5rem}.px-2\.5{padding-left:.625rem;padding-right:.625rem}.px-3{padding-left:.75rem;padding-right:.75rem}.px-6{padding-left:1.5rem;padding-right:1.5rem}.py-0\.5{padding-top:.125rem;padding-bottom:.125rem}.py-1\.5{padding-top:.375rem;padding-bottom:.375rem}.py-2\.5{padding-top:.625rem;padding-bottom:.625rem}.py-3{padding-top:.75rem;padding-bottom:.75rem}.py-6{padding-top:1.5rem;padding-bottom:1.5rem}.pb-6{padding-bottom:1.5rem}.pt-12{padding-top:3rem}.pt-14{padding-top:3.5rem}.text-center{text-align:center}.text-right{text-align:right}.text-3xl{font-size:1.875rem;line-height:2.25rem}.text-\[10px\]{font-size:10px}.text-\[11px\]{font-size:11px}.text-\[9px\]{font-size:9px}.text-base{font-size:1rem;line-height:1.5rem}.text-lg{font-size:1.125rem;line-height:1.75rem}.text-sm{font-size:.875rem;line-height:1.25rem}.text-xl{font-size:1.25rem;line-height:1.75rem}.font-black{font-weight:900}.font-bold{font-weight:700}.font-extrabold{font-weight:800}.uppercase{text-transform:uppercase}.tabular-nums{--tw-numeric-spacing: tabular-nums;font-variant-numeric:var(--tw-ordinal) var(--tw-slashed-zero) var(--tw-numeric-figure) var(--tw-numeric-spacing) var(--tw-numeric-fraction)}.leading-none{line-height:1}.tracking-wide{letter-spacing:.025em}.tracking-widest{letter-spacing:.1em}.opacity-40{opacity:.4}.opacity-80{opacity:.8}.blur{--tw-blur: blur(8px);filter:var(--tw-blur) var(--tw-brightness) var(--tw-contrast) var(--tw-grayscale) var(--tw-hue-rotate) var(--tw-invert) var(--tw-saturate) var(--tw-sepia) var(--tw-drop-shadow)}.drop-shadow{--tw-drop-shadow: drop-shadow(0 1px 2px rgb(0 0 0 / .1)) drop-shadow(0 1px 1px rgb(0 0 0 / .06));filter:var(--tw-blur) var(--tw-brightness) var(--tw-contrast) var(--tw-grayscale) var(--tw-hue-rotate) var(--tw-invert) var(--tw-saturate) var(--tw-sepia) var(--tw-drop-shadow)}.drop-shadow-xl{--tw-drop-shadow: drop-shadow(0 20px 13px rgb(0 0 0 / .03)) drop-shadow(0 8px 5px rgb(0 0 0 / .08));filter:var(--tw-blur) var(--tw-brightness) var(--tw-contrast) var(--tw-grayscale) var(--tw-hue-rotate) var(--tw-invert) var(--tw-saturate) var(--tw-sepia) var(--tw-drop-shadow)}.filter{filter:var(--tw-blur) var(--tw-brightness) var(--tw-contrast) var(--tw-grayscale) var(--tw-hue-rotate) var(--tw-invert) var(--tw-saturate) var(--tw-sepia) var(--tw-drop-shadow)}.backdrop-filter{-webkit-backdrop-filter:var(--tw-backdrop-blur) var(--tw-backdrop-brightness) var(--tw-backdrop-contrast) var(--tw-backdrop-grayscale) var(--tw-backdrop-hue-rotate) var(--tw-backdrop-invert) var(--tw-backdrop-opacity) var(--tw-backdrop-saturate) var(--tw-backdrop-sepia);backdrop-filter:var(--tw-backdrop-blur) var(--tw-backdrop-brightness) var(--tw-backdrop-contrast) var(--tw-backdrop-grayscale) var(--tw-backdrop-hue-rotate) var(--tw-backdrop-invert) var(--tw-backdrop-opacity) var(--tw-backdrop-saturate) var(--tw-backdrop-sepia)}:root{--sand: #f0d45c;--terra: #d9805f;--terra-hi: #e89673;--terra-deep: #b05a3c;--terra-edge: #8a4127;--teal: #1d7a99;--teal-hi: #2391b5;--teal-deep: #0f546b;--teal-ink: #0a3b4d;--cream: #faf4ce;--cream-deep: #e3d49a;--ink: #33201a;--gold: #ffc93c;--gold-hi: #ffe066;--gold-edge: #c98a1e;--gem-blue: #4fc7e8;--gem-green: #a8d959;--gem-orange: #e0815e;--gem-purple: #cf6fe0;--gem-red: #ed5f73;--gem-turquoise: #4fe8b5;--gem-yellow: #eed75f}*{font-family:Nunito,system-ui,sans-serif;box-sizing:border-box}.font-display{font-family:"Baloo 2",Nunito,system-ui,sans-serif}html,body{background:var(--sand);height:100%;min-width:375px;margin:0;overflow-x:auto;overflow-y:hidden}#app{height:100dvh;display:flex;flex-direction:column}@media (max-height: 699px){.hide-on-short{display:none}}.game-bg{background:url(/img/gems-background.png) center / cover no-repeat var(--sand)}.game-bar{width:100%;min-width:375px;flex-shrink:0;z-index:20;display:flex;align-items:center;justify-content:space-between;gap:12px;padding:8px 16px;background:linear-gradient(180deg,var(--terra-hi),var(--terra));color:var(--cream)}.game-bar--top{border-bottom:3px solid var(--terra-edge);box-shadow:0 3px 10px #33201a40}.game-bar--bottom{border-top:3px solid var(--terra-edge);box-shadow:0 -3px 10px #33201a40;padding:10px 12px}.panel-card{background:linear-gradient(180deg,var(--teal-hi),var(--teal));border:3px solid var(--teal-deep);border-radius:20px;box-shadow:inset 0 2px #ffffff2e,0 6px 0 var(--teal-ink),0 14px 26px #33201a4d}.panel-card--cream{background:linear-gradient(180deg,#fffbe3,var(--cream));border:3px solid var(--cream-deep);border-radius:20px;color:var(--ink);box-shadow:0 6px #b09a5e,0 14px 26px #33201a59}.btn-chunky{position:relative;display:inline-flex;align-items:center;justify-content:center;gap:8px;font-family:"Baloo 2",sans-serif;font-weight:800;letter-spacing:.03em;border-radius:9999px;border:3px solid var(--ink);cursor:pointer;-webkit-user-select:none;-moz-user-select:none;user-select:none;transition:transform .08s ease,box-shadow .08s ease,filter .15s ease;overflow:hidden}.btn-chunky:active:not(:disabled){transform:translateY(4px)}.btn-chunky:disabled{cursor:not-allowed;filter:saturate(.3) brightness(.8)}.btn-gold{background:linear-gradient(180deg,var(--gold-hi),var(--gold));color:var(--ink);box-shadow:0 6px 0 var(--gold-edge),0 12px 18px #33201a59}.btn-gold:active:not(:disabled){box-shadow:0 2px 0 var(--gold-edge),0 5px 9px #33201a59}.btn-step{width:38px;height:38px;flex-shrink:0;display:inline-flex;align-items:center;justify-content:center;font-family:"Baloo 2",sans-serif;font-weight:800;font-size:1.25rem;line-height:1;border-radius:9999px;border:3px solid var(--terra-edge);background:linear-gradient(180deg,#fffbe3,var(--cream));color:var(--terra-deep);cursor:pointer;box-shadow:0 3px 0 var(--terra-edge);transition:transform .08s ease,box-shadow .08s ease,filter .15s ease}.btn-step:active:not(:disabled){transform:translateY(2px);box-shadow:0 1px 0 var(--terra-edge)}.btn-step:disabled{cursor:not-allowed;filter:saturate(.4) brightness(.85)}.btn-shine:after{content:"";position:absolute;top:-20%;bottom:-20%;width:34%;left:-50%;background:linear-gradient(105deg,transparent,rgba(255,255,255,.6),transparent);transform:skew(-20deg);animation:shineSweep 2.8s ease-in-out infinite;pointer-events:none}@keyframes shineSweep{0%,60%{left:-50%}to{left:130%}}.tile{position:relative;aspect-ratio:.72;border-radius:14px;border:2px solid rgba(255,255,255,.22);background:linear-gradient(180deg,var(--teal-hi),var(--teal));box-shadow:inset 0 2px #fff3,0 5px 0 var(--teal-ink);display:flex;align-items:center;justify-content:center;overflow:hidden}.tile__gem,.tile__egg,.tile__burst,.tile__glow{position:absolute;top:0;right:0;bottom:0;left:0;display:flex;align-items:center;justify-content:center;pointer-events:none}.tile__gem img{width:64%;max-height:64%;-o-object-fit:contain;object-fit:contain;filter:drop-shadow(0 4px 4px rgba(10,59,77,.45))}.tile__egg img{width:52%;-o-object-fit:contain;object-fit:contain;filter:drop-shadow(0 4px 4px rgba(10,59,77,.45))}.tile__burst img{width:95%;-o-object-fit:contain;object-fit:contain}.tile__glow{background:radial-gradient(circle at 50% 55%,var(--glow, transparent) 0%,transparent 68%);opacity:0}.tile--spin .tile__egg{animation:eggDrop .42s cubic-bezier(.34,1.4,.64,1) var(--drop-delay) backwards,eggWobble 1.1s ease-in-out calc(var(--drop-delay) + .5s) infinite}@keyframes eggDrop{0%{transform:translateY(-130%)}70%{transform:translateY(6%)}to{transform:translateY(0)}}@keyframes eggWobble{0%,to{transform:rotate(0)}25%{transform:rotate(-5deg) translateY(-2%)}50%{transform:rotate(0)}75%{transform:rotate(5deg) translateY(-2%)}}.tile--reveal .tile__egg{animation:crackShake .3s ease-in var(--reveal-delay) both,vanish 1ms linear calc(var(--reveal-delay) + .3s) forwards}.tile--reveal .tile__burst{opacity:0;animation:shellBurst .45s ease-out calc(var(--reveal-delay) + .26s) backwards}.tile--reveal .tile__gem{animation:gemPop .5s cubic-bezier(.34,1.56,.64,1) calc(var(--reveal-delay) + .3s) backwards}@keyframes crackShake{0%{transform:translate(0) rotate(0)}20%{transform:translate(-7%) rotate(-6deg)}40%{transform:translate(7%) rotate(6deg)}60%{transform:translate(-6%) rotate(-5deg) scale(1.04)}80%{transform:translate(5%) rotate(4deg) scale(1.08)}to{transform:translate(0) rotate(0) scale(1.12)}}@keyframes vanish{to{opacity:0}}@keyframes shellBurst{0%{opacity:0;transform:scale(.4)}15%{opacity:1}to{opacity:0;transform:scale(1.5)}}@keyframes gemPop{0%{opacity:0;transform:scale(.2) translateY(20%)}70%{transform:scale(1.18) translateY(-4%)}to{opacity:1;transform:scale(1) translateY(0)}}.tile--won{border-color:#ffffff8c}.tile--won .tile__glow{animation:winGlow 1.8s ease-in-out infinite}.tile--won .tile__gem{animation:winBounce 1.8s ease-in-out infinite}@keyframes winGlow{0%,to{opacity:.35}50%{opacity:.8}}@keyframes winBounce{0%,to{transform:translateY(0) scale(1)}50%{transform:translateY(-5%) scale(1.07)}}.sparkle{position:absolute;top:50%;left:50%;width:7px;height:7px;border-radius:9999px;pointer-events:none;animation:sparkleFly .7s ease-out var(--spark-delay) backwards}@keyframes sparkleFly{0%{transform:translate(-50%,-50%) scale(1);opacity:1}to{transform:translate(calc(-50% + var(--sx)),calc(-50% + var(--sy))) scale(0);opacity:0}}.confetti{position:absolute;top:-16px;width:9px;height:13px;border-radius:3px;pointer-events:none;animation:confettiFall linear infinite}@keyframes confettiFall{0%{transform:translateY(-5vh) rotate(0);opacity:1}90%{opacity:1}to{transform:translateY(105vh) rotate(540deg);opacity:0}}@media (min-width: 640px){.sm\:grid-cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (min-width: 1024px){.lg\:flex{display:flex}}
