@import "https://fonts.googleapis.com/css2?family=Cinzel:wght@600;700;800&family=Inter:wght@400;500;600;700;800&display=swap";:root{--drawer-gap:24px;--drawer-width:min(300px, calc((100vw - 180px) / 2));--radius-panel:30px;--radius-card:24px;--radius-pill:999px;--font-display:"Cinzel", "Times New Roman", serif;--font-body:"Inter", "Segoe UI", sans-serif;--color-bg-0:#120b07;--color-bg-1:#1a110a;--color-bg-2:#27170d;--color-panel-border:#ffd8941f;--color-panel-inner:#fff6e414;--color-text:#f8f0e3;--color-text-soft:#f8f0e3c2;--color-text-muted:#f8f0e394;--color-gold-0:#c8a45a;--color-gold-1:#f3cd84;--color-gold-2:#fff0c2;--color-green-0:#b9efcb;--color-slate-0:#c5ceda;--glow-panel:0 28px 80px #00000061;--glow-card:0 16px 30px #0000003d;--generator-tier-1:#d9b46f;--generator-tier-1-glow:#d9b46f57;--generator-tier-2:#f0a36d;--generator-tier-2-glow:#f0a36d57;--generator-tier-3:#d5c48f;--generator-tier-3-glow:#d5c48f57;--generator-tier-4:#82e2d7;--generator-tier-4-glow:#82e2d757;color:var(--color-text);font-family:var(--font-body);background:radial-gradient(circle at top,#ffc2742e,#0000 28%),radial-gradient(circle at 15% 15%,#ffe9aa12,#0000 30%),radial-gradient(circle at 85% 20%,#ffa25c14,#0000 24%),linear-gradient(160deg,#110b07 0%,#24160e 52%,#402513 100%);font-weight:400;line-height:1.5}*{box-sizing:border-box}html{--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;min-height:100%}body,#root{min-height:100vh}body{background:radial-gradient(circle at top, #ffbf7424, transparent 36%), linear-gradient(160deg, var(--color-bg-0) 0%, var(--color-bg-1) 52%, #3f2412 100%);color:var(--color-text);font-family:var(--font-body);margin:0;position:relative;overflow-x:hidden}body:before,body:after{content:"";pointer-events:none;z-index:0;position:fixed;inset:0}body:before{background:radial-gradient(circle at 20% 8%,#ffe5b30f,#0000 22%),radial-gradient(circle at 78% 16%,#ffb15314,#0000 18%),radial-gradient(circle at 50% 100%,#70401738,#0000 46%)}body:after{opacity:.28;background-image:radial-gradient(circle,#ffefca57 0 1px,#0000 1.5px),radial-gradient(circle,#ffd08638 0 1px,#0000 1.6px);background-position:0 0,22px 28px;background-size:160px 160px,190px 190px}button{font:inherit}img{display:block}h1,h2,h3,h4{font-family:var(--font-display);letter-spacing:.03em;color:var(--color-text);margin:0}.app-shell{z-index:1;justify-content:flex-start;align-items:center;width:100%;min-height:100vh;padding:24px;transition:padding-left .18s,padding-right .18s;display:flex;position:relative}.app-shell.generators-open{padding-left:calc(var(--drawer-width) + (var(--drawer-gap) * 2))}.app-shell.upgrades-open{padding-right:calc(var(--drawer-width) + (var(--drawer-gap) * 2))}.main-stage{justify-content:center;width:100%;display:flex}.game-panel,.side-drawer,.profiles-panel,.achievements-panel{border:1px solid var(--color-panel-border);border-radius:var(--radius-panel);box-shadow:var(--glow-panel), inset 0 1px 0 var(--color-panel-inner), inset 0 0 0 1px #fff0d608;-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px);background:linear-gradient(#49301b24,#0000 22%),linear-gradient(#281910eb 0%,#140d08f5 100%);position:relative;overflow:hidden}.game-panel:before,.side-drawer:before,.profiles-panel:before,.achievements-panel:before{content:"";border-radius:inherit;pointer-events:none;background:linear-gradient(140deg,#ffeecc14,#0000 18% 82%,#ffd48f0a),radial-gradient(circle at top,#ffcd8414,#0000 50%);position:absolute;inset:1px}.game-panel{width:min(100%,980px);padding:34px}.game-body,.game-controls-column,.game-visual-column,.game-panel,.side-drawer,.profiles-panel,.achievements-panel{min-width:0}.game-header{z-index:1;grid-template-columns:minmax(0,1.35fr) minmax(260px,.82fr);align-items:end;gap:14px 32px;display:grid;position:relative}.game-body{z-index:1;grid-template-columns:minmax(0,1.18fr) minmax(330px,.96fr);align-items:start;gap:24px;margin-top:26px;display:grid;position:relative}.game-controls-column{align-content:start;gap:18px;display:grid}.utility-actions{flex-wrap:wrap;align-items:center;gap:12px;display:flex}.sound-toggle,.panel-toggle,.panel-close-button,.side-tab-toggle,.buy-button,.profile-reset-button,.mine-button{isolation:isolate;position:relative;overflow:hidden}.sound-toggle,.panel-toggle,.panel-close-button,.side-tab-toggle{border-radius:var(--radius-pill);color:var(--color-text);letter-spacing:.01em;cursor:pointer;background:linear-gradient(#fff7ea0f,#fff7ea05),#22160de0;border:1px solid #ffdba429;font-weight:700;transition:transform .16s,background-color .16s,border-color .16s,box-shadow .16s;box-shadow:0 10px 24px #00000038,inset 0 1px #fff3dc14}.sound-toggle:before,.panel-toggle:before,.panel-close-button:before,.side-tab-toggle:before,.buy-button:before,.profile-reset-button:before,.mine-button:before{content:"";pointer-events:none;background:linear-gradient(#0000,#fff3dc2e,#0000);width:32%;height:320%;position:absolute;top:-120%;left:-36%;transform:rotate(24deg)}.sound-toggle,.panel-toggle,.panel-close-button{justify-self:start;padding:11px 16px}.sound-toggle:hover,.panel-toggle:hover,.panel-close-button:hover,.side-tab-toggle:hover{border-color:#ffdba43d;transform:translateY(-2px);box-shadow:0 14px 28px #00000042,0 0 24px #f3cd8414,inset 0 1px #fff3dc1c}.sound-toggle.is-muted{color:#f8f0e3b8;border-color:#a9b2c12e}.panel-toggle.is-active{color:var(--color-gold-1);background:linear-gradient(#f3cd841f,#f3cd840a),#22160df0;border-color:#f3cd8457}.profiles-panel-backdrop,.achievements-panel-backdrop{z-index:34;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);background:#0704028f;transition:opacity .18s;position:fixed;inset:0}.profiles-panel-backdrop.closed,.achievements-panel-backdrop.closed{opacity:0;pointer-events:none}.profiles-panel-backdrop.open,.achievements-panel-backdrop.open{opacity:1}.profiles-panel,.achievements-panel{z-index:35;flex-direction:column;gap:18px;width:min(100vw - 120px,980px);padding:24px;transition:opacity .18s,transform .18s;display:flex;position:fixed;top:92px;bottom:24px;left:50%}.profiles-panel.closed,.achievements-panel.closed{opacity:0;pointer-events:none;transform:translate(-50%,16px)scale(.98)}.profiles-panel.open,.achievements-panel.open{opacity:1;transform:translate(-50%)scale(1)}.profiles-panel-scroll,.achievements-panel-scroll,.side-drawer-scroll{z-index:1;flex:1;min-height:0;position:relative}.panel-close-button{align-self:flex-end}.side-tab-toggle{top:var(--drawer-gap);z-index:30;text-shadow:0 1px #00000038;padding:12px 17px;font-weight:800;position:fixed}.side-tab-toggle-left{left:16px}.side-tab-toggle-right{right:16px}.app-shell.generators-open .side-tab-toggle-left{left:calc(var(--drawer-width) + var(--drawer-gap))}.app-shell.upgrades-open .side-tab-toggle-right{right:calc(var(--drawer-width) + var(--drawer-gap))}.eyebrow{color:var(--color-gold-1);letter-spacing:.18em;text-transform:uppercase;margin:0 0 8px;font-size:.78rem;font-weight:700}.game-header .eyebrow{grid-column:1/-1;margin-bottom:2px}h1{text-shadow:0 0 24px #f3cd8414,0 4px 18px #0000004d;grid-column:1;font-size:clamp(2.2rem,5vw,3.6rem);line-height:.98}.intro{max-width:none;color:var(--color-text-soft);grid-column:2;align-self:end;margin:0;font-size:1rem}.rock-display{text-align:center;background:radial-gradient(circle at 50% 0,#ffd08024,#0000 45%),linear-gradient(#fff8ec0d,#fff8ec04),#fff3dc08;border:1px solid #ffd8941a;border-radius:28px;padding:28px;position:relative;overflow:hidden;box-shadow:0 18px 36px #00000038,inset 0 1px #fff3dc12}.rock-display:before{content:"";pointer-events:none;background:linear-gradient(135deg,#fff5e30d,#0000 32% 74%,#ffcd840a),radial-gradient(circle at 50% 100%,#ffa65714,#0000 42%);position:absolute;inset:0}.rock-display-visual{isolation:isolate;background:radial-gradient(circle,#ffdc9b24,#0000 45%),linear-gradient(#fff8ec0a,#0000);border-radius:26px;place-items:center;min-height:260px;padding:24px;display:grid;position:relative}.rock-display-visual:before,.rock-display-visual:after{content:"";pointer-events:none;border-radius:50%;position:absolute;inset:18px}.rock-display-visual:before{filter:blur(8px);background:radial-gradient(circle,#f3cd8452,#0000 48%);animation:4.4s ease-in-out infinite rock-aura-pulse}.rock-display-visual:after{border:1px solid #ffdc9b14;inset:30px;box-shadow:0 0 0 1px #ffdc9b08,inset 0 0 28px #ffcd840a}.rock-display-idle{z-index:2;transform-origin:bottom;animation:5.3s ease-in-out infinite rock-float,4.6s ease-in-out infinite rock-breathe;display:inline-flex;position:relative}.rock-display-purchase{transform-origin:bottom;display:inline-flex}.rock-display-purchase.is-purchasing{animation:.42s cubic-bezier(.2,.9,.28,1.08) rock-purchase-bounce}.rock-display-motion{transform-origin:bottom;will-change:transform;display:inline-flex;position:relative}.rock-display-motion:before,.rock-display-motion:after{content:"";opacity:0;pointer-events:none;border-radius:50%;position:absolute;inset:-12%}.rock-display-motion:before{background:radial-gradient(circle at 18% 34%,#fff2d6d9 0 2px,#0000 3px),radial-gradient(circle at 26% 64%,#f3cd84f2 0 3px,#0000 4px),radial-gradient(circle at 78% 30%,#ffbf74eb 0 2px,#0000 3px),radial-gradient(circle at 82% 64%,#ffe8bae6 0 2px,#0000 3px),radial-gradient(circle at 50% 14%,#ffe8babf 0 2px,#0000 3px),radial-gradient(circle at 50% 84%,#f0a25db8 0 3px,#0000 4px)}.rock-display-motion:after{border:1px solid #ffdea524;inset:-8%;box-shadow:0 0 36px #f3cd8424}.rock-display-motion.is-mining{animation:.28s ease-out rock-mine-hit}.rock-display-motion.is-mining:before{animation:.42s ease-out rock-particle-burst}.rock-display-motion.is-mining:after{animation:.42s ease-out rock-click-ring}.rock-display-image{filter:drop-shadow(0 18px 30px #00000061)drop-shadow(0 0 18px #f3cd8414);width:min(100%,292px);height:auto;animation:3.8s ease-in-out infinite alternate rock-image-glow}.floating-rock-texts{z-index:4;pointer-events:none;position:absolute;inset:0;overflow:hidden}.floating-rock-text{z-index:3;color:var(--color-gold-2);letter-spacing:.02em;text-shadow:0 2px #341f0b80,0 0 18px #f3cd844d;font-size:1.02rem;font-weight:800;animation:.9s ease-out forwards floating-rock-gain;position:absolute;bottom:56px;left:50%;transform:translate(-50%)}.rock-purchase-flash{z-index:1;opacity:0;pointer-events:none;background:radial-gradient(circle,#ffe7b24d,#0000 54%),linear-gradient(#fff8ec1f,#0000);border-radius:26px;position:absolute;inset:0}.rock-purchase-flash.is-active{animation:.32s ease-out rock-purchase-flash}.rock-display-copy{z-index:2;margin-top:20px;position:relative}.rock-display-copy h2{text-shadow:0 0 18px #f3cd8414;font-size:clamp(1.95rem,4vw,2.7rem)}.rock-display-description{max-width:34ch;color:var(--color-text-soft);margin:10px auto 0}.rock-display-progress{color:#f8f0e3d6;margin:14px 0 0}.rock-display-progress strong{color:var(--color-gold-1)}.rock-stage-special .rock-display-visual:before{background:radial-gradient(circle,#ffda8e6b,#0000 48%)}.rock-stage-special .rock-display-image{filter:drop-shadow(0 20px 34px #00000061)drop-shadow(0 0 26px #f3cd8438)}.stats-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;display:grid}.stat-card{box-shadow:var(--glow-card), inset 0 1px 0 #fff3dc12, inset 0 0 22px #f3cd840d;background:linear-gradient(#fff8ec0f,#fff8ec04),#fff3dc09;border:1px solid #ffdba41f;border-radius:22px;padding:18px;transition:transform .16s,border-color .16s,box-shadow .16s;position:relative;overflow:hidden}.stat-card:before,.stat-card:after{content:"";pointer-events:none;position:absolute}.stat-card:before{border-radius:inherit;background:linear-gradient(135deg,#fff5df14,#0000 30% 78%,#ffd3910d);inset:1px}.stat-card:after{border:1px solid #ffdc9b0f;border-radius:18px;inset:9px;box-shadow:inset 0 0 18px #f3cd840d}.stat-card:hover{border-color:#ffdba42e;transform:translateY(-4px);box-shadow:0 20px 34px #00000042,0 0 22px #f3cd8414,inset 0 1px #fff3dc14,inset 0 0 22px #f3cd8412}.stat-label{z-index:1;color:var(--color-text-muted);letter-spacing:.06em;text-transform:uppercase;font-size:.86rem;font-weight:600;display:block;position:relative}.stat-value{z-index:1;color:var(--color-text);font-variant-numeric:tabular-nums;text-shadow:0 0 16px #f3cd8414;margin-top:10px;font-size:clamp(1.6rem,4vw,2.42rem);line-height:1;animation:.32s cubic-bezier(.2,.9,.28,1.08) stat-value-tick;display:block;position:relative}.mine-button{color:#2d1807;letter-spacing:.04em;text-transform:uppercase;cursor:pointer;background:linear-gradient(#ffd08d 0%,#ef9b43 52%,#cf6d1f 100%);border:1px solid #ffe3ae42;border-radius:22px;width:100%;padding:18px 20px;font-size:1.08rem;font-weight:900;transition:transform .15s,box-shadow .15s,filter .15s;box-shadow:0 18px 34px #b5631a57,0 0 24px #f3cd8424,inset 0 1px #fff9ecad,inset 0 -10px 24px #9b4a1033}.mine-button:before{animation:2.9s linear infinite button-shimmer}.mine-button:after{content:"";z-index:-1;border-radius:inherit;position:absolute;inset:0;box-shadow:0 0 0 1px #fff0d31f,0 0 28px #f3cd8433}.mine-button:hover{filter:brightness(1.03);transform:translateY(-3px)scale(1.005)}.mine-button:active{transform:translateY(2px)scale(.986);box-shadow:0 12px 22px #b5631a3d,0 0 18px #f3cd841f,inset 0 2px #6b350f29}.progress-panel,.achievement-bonus-summary,.achievement-column,.profile-stat{background:linear-gradient(#fff8ec0d,#fff8ec05),#fff3dc08;border:1px solid #ffdba417;border-radius:22px;position:relative;overflow:hidden;box-shadow:inset 0 1px #fff3dc0f,inset 0 0 18px #f3cd8408}.progress-panel{padding:18px}.progress-copy{color:#f8f0e3d1;margin:0}.progress-copy strong{color:var(--color-gold-1)}.achievements-board,.profiles-board{border-top:0;gap:18px;margin-top:0;padding-top:0;display:grid}.panel-intro{color:var(--color-text-soft);margin:0}.achievement-toast-stack{z-index:50;pointer-events:none;gap:12px;width:min(100vw - 48px,420px);display:grid;position:fixed;top:84px;left:50%;transform:translate(-50%)}.achievement-toast{background:radial-gradient(circle at top,#ffcd7829,#0000 64%),linear-gradient(#4a3019f0 0%,#1c120bfa 100%);border:1px solid #ffdc9b29;border-radius:22px;padding:16px 18px;animation:.24s cubic-bezier(.2,.9,.28,1.08) achievement-toast-in;overflow:hidden;box-shadow:0 24px 54px #00000047,0 0 24px #f3cd8414,inset 0 1px #fff0d714}.achievement-toast.is-closing{animation:.36s forwards achievement-toast-out}.achievement-toast-label{color:var(--color-gold-1);letter-spacing:.16em;text-transform:uppercase;margin:0 0 6px;font-size:.74rem;font-weight:800}.achievement-toast h3{font-size:1.1rem}.achievement-toast-reward{color:#f8f0e3d6;margin:8px 0 0;font-weight:700}.achievement-board-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:20px;display:grid}.achievement-column{padding:18px}.achievement-column-heading{justify-content:space-between;align-items:center;gap:16px;margin-bottom:14px;display:flex}.achievement-column-heading h4{font-size:1rem}.side-drawer{top:var(--drawer-gap);bottom:var(--drawer-gap);z-index:20;width:var(--drawer-width);flex-direction:column;padding:24px;transition:transform .18s,opacity .18s;display:flex;position:fixed}.drag-scroll-area{overscroll-behavior:contain;-webkit-overflow-scrolling:touch;scrollbar-width:none;touch-action:pan-y;cursor:grab;overflow-y:auto}.drag-scroll-area::-webkit-scrollbar{width:0;height:0}.drag-scroll-area.is-dragging{cursor:grabbing;-webkit-user-select:none;user-select:none}.drag-scroll-area.is-dragging *{-webkit-user-select:none;user-select:none}.side-drawer-left{left:var(--drawer-gap)}.side-drawer-right{right:var(--drawer-gap)}.side-drawer-left.closed{transform:translateX(calc(-100% - var(--drawer-gap)));opacity:0;pointer-events:none}.side-drawer-right.closed{transform:translateX(calc(100% + var(--drawer-gap)));opacity:0;pointer-events:none}.side-drawer-heading{z-index:1;margin-bottom:22px;position:relative}.side-drawer-heading h2{font-size:1.72rem;line-height:1.08}.drawer-copy{max-width:32ch;color:var(--color-text-soft);margin:12px 0 0}.drawer-section+.drawer-section{margin-top:30px}.section-heading{justify-content:space-between;align-items:center;gap:16px;margin-bottom:14px;display:flex}.section-heading h3{font-size:1.08rem}.section-meta{color:var(--color-text-muted);white-space:nowrap;font-size:.88rem;font-weight:700}.profile-list,.upgrade-list,.achievement-list,.generator-list{gap:14px;display:grid}.profile-card,.upgrade-card,.achievement-card,.generator-card{border-radius:var(--radius-card);box-shadow:var(--glow-card), inset 0 1px 0 #fff3dc0f, inset 0 0 24px #f3cd8408;background:linear-gradient(#fff8ec0d,#fff8ec05),#fff3dc08;border:1px solid #ffdba41a;gap:14px;padding:18px;transition:transform .17s,border-color .17s,box-shadow .17s,background-color .17s;display:grid;position:relative;overflow:hidden}.profile-card:before,.upgrade-card:before,.achievement-card:before,.generator-card:before,.profile-card:after,.upgrade-card:after,.achievement-card:after,.generator-card:after{content:"";pointer-events:none;position:absolute}.profile-card:before,.upgrade-card:before,.achievement-card:before,.generator-card:before{border-radius:inherit;background:linear-gradient(135deg,#fff7e614,#0000 30% 82%,#ffd28c0d);inset:1px}.profile-card:hover,.upgrade-card:hover,.achievement-card:hover,.generator-card:hover{border-color:#ffdba429;transform:translateY(-5px);box-shadow:0 24px 36px #00000047,0 0 22px #f3cd840f,inset 0 1px #fff3dc12,inset 0 0 24px #f3cd840a}.profile-card-active{border-color:#f3cd8433}.generator-card{--generator-accent:var(--generator-tier-1);--generator-accent-glow:var(--generator-tier-1-glow);padding-left:22px}.generator-card:after{background:var(--generator-accent);width:4px;box-shadow:0 0 20px var(--generator-accent-glow);border-radius:999px;top:16px;bottom:16px;left:0}.generator-card-tier-small-rock-pile{--generator-accent:var(--generator-tier-1);--generator-accent-glow:var(--generator-tier-1-glow)}.generator-card-tier-rock-mine{--generator-accent:var(--generator-tier-2);--generator-accent-glow:var(--generator-tier-2-glow)}.generator-card-tier-giant-boulder{--generator-accent:var(--generator-tier-3);--generator-accent-glow:var(--generator-tier-3-glow)}.generator-card-tier-suspicious-rock-generator{--generator-accent:var(--generator-tier-4);--generator-accent-glow:var(--generator-tier-4-glow)}.upgrade-card-started{border-color:#f3cd8424}.upgrade-card-milestone{border-color:#f3cd843d;box-shadow:0 22px 36px #00000047,0 0 26px #f3cd841a,inset 0 1px #fff3dc14,inset 0 0 24px #f3cd8414}.achievement-card-unlocked{border-color:#b9efcb29}.achievement-card-claimable{border-color:#f3cd8433}.achievement-card-locked,.generator-card-locked{opacity:.68;filter:saturate(.9)grayscale(.08)}.profile-copy,.upgrade-copy,.achievement-copy,.generator-copy{z-index:1;justify-content:space-between;align-items:start;gap:16px;display:flex;position:relative}.profile-copy h4,.upgrade-copy h4,.achievement-copy h4,.generator-copy h4{font-size:1.02rem}.profile-copy p,.upgrade-copy p,.achievement-copy p,.generator-copy p{color:var(--color-text-soft);margin:5px 0 0;font-size:.94rem}.status-chip{z-index:1;border-radius:var(--radius-pill);white-space:nowrap;background:#fff8ec0f;border:1px solid #ffe7bd14;align-items:center;gap:8px;padding:7px 12px;font-size:.78rem;font-weight:800;display:inline-flex;position:relative;box-shadow:inset 0 1px #fff8ec0f}.status-available,.status-owned,.status-claimable{color:var(--color-gold-1)}.status-purchased,.status-unlocked{color:var(--color-green-0)}.status-awaiting,.status-locked{color:var(--color-slate-0)}.status-milestone{color:#2f1a07;background:linear-gradient(#ffe0a0 0%,#f0b55d 62%,#cc7c24 100%);border-color:#ffe2ac42;animation:2.8s ease-in-out infinite milestone-badge-glow;box-shadow:0 0 22px #f3cd8429,inset 0 1px #fff9eca3}.profile-actions,.upgrade-actions,.achievement-actions,.generator-actions{z-index:1;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:16px;display:flex;position:relative}.profile-stats{grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;display:grid}.profile-stat{padding:14px 16px}.profile-stat span{color:var(--color-text-muted);letter-spacing:.04em;text-transform:uppercase;font-size:.84rem;font-weight:600;display:block}.profile-stat strong{font-variant-numeric:tabular-nums;margin-top:8px;font-size:1.08rem;display:block}.achievement-reward,.upgrade-cost,.generator-cost{color:#f8f0e3d6;font-weight:700}.upgrade-detail,.generator-detail{color:var(--color-text-muted);font-size:.9rem}.achievement-bonus-summary{gap:10px;padding:16px 18px;display:grid}.achievement-bonus-line{color:#f8f0e3d1;justify-content:space-between;align-items:center;gap:16px;display:flex}.achievement-bonus-line strong{color:var(--color-gold-1)}.empty-state{color:var(--color-text-soft);background:#fff3dc08;border:1px dashed #ffdba41f;border-radius:20px;margin:0;padding:16px 18px}.buy-button,.profile-reset-button{cursor:pointer;border-radius:15px;min-width:104px;padding:10px 16px;font-weight:800;transition:transform .15s,background-color .15s,border-color .15s,box-shadow .15s,opacity .15s}.buy-button{color:#fae2b7;background:linear-gradient(#f3cd8433,#f3cd841a),#fff3dc0d;border:1px solid #ffdc9b29;box-shadow:0 10px 18px #0000002e,inset 0 1px #fff3dc14}.buy-button:before,.profile-reset-button:before{animation:5s linear infinite button-shimmer}.buy-button:hover:enabled,.profile-reset-button:hover{transform:translateY(-2px)}.buy-button:disabled{opacity:.42;cursor:not-allowed}.buy-button:disabled:before{opacity:0;animation:none}.profile-reset-button{color:#ffd4c0;background:linear-gradient(#ffb08c24,#ffb08c0f),#fff3dc0d;border:1px solid #ffb08c2e;box-shadow:0 10px 18px #0000002e,inset 0 1px #fff3dc14}@keyframes rock-aura-pulse{0%,to{opacity:.55;transform:scale(.96)}50%{opacity:1;transform:scale(1.04)}}@keyframes rock-float{0%,to{transform:translateY(0)}50%{transform:translateY(-10px)}}@keyframes rock-breathe{0%,to{transform:scale(1)}50%{transform:scale(1.03)}}@keyframes rock-image-glow{0%{filter:drop-shadow(0 18px 30px #00000061)drop-shadow(0 0 16px #f3cd8414)}to{filter:drop-shadow(0 20px 34px #00000061)drop-shadow(0 0 26px #f3cd8429)}}@keyframes rock-mine-hit{0%{transform:translate(0,0)rotate(0)scale(1)}18%{transform:translate(-7px,-4px)rotate(-2.4deg)scale(1.08)}38%{transform:translate(7px,1px)rotate(2deg)scale(1.15)}58%{transform:translate(-4px,-2px)rotate(-1.6deg)scale(1.09)}78%{transform:translate(3px)rotate(.8deg)scale(1.04)}to{transform:translate(0,0)rotate(0)scale(1)}}@keyframes rock-purchase-bounce{0%{transform:translate(0,0)scale(1)}22%{transform:translateY(-18px)scale(1.11)}50%{transform:translateY(6px)scale(.96)}74%{transform:translateY(-3px)scale(1.03)}to{transform:translate(0,0)scale(1)}}@keyframes rock-purchase-flash{0%{opacity:0}24%{opacity:1}to{opacity:0}}@keyframes rock-particle-burst{0%{opacity:0;transform:scale(.62)}18%{opacity:.92}to{opacity:0;transform:scale(1.26)}}@keyframes rock-click-ring{0%{opacity:.65;transform:scale(.82)}to{opacity:0;transform:scale(1.24)}}@keyframes floating-rock-gain{0%{opacity:0;transform:translateX(-50%) translate3d(var(--floating-rock-offset-x), 12px, 0) scale(.92)}14%{opacity:1;transform:translateX(-50%) translate3d(var(--floating-rock-offset-x), 0, 0) scale(1)}to{opacity:0;transform:translateX(-50%) translate3d(var(--floating-rock-offset-x), calc(-92px - var(--floating-rock-offset-y)), 0) scale(1.04)}}@keyframes button-shimmer{0%{transform:translate(-240%)rotate(24deg)}to{transform:translate(580%)rotate(24deg)}}@keyframes milestone-badge-glow{0%,to{box-shadow:0 0 18px #f3cd8424,inset 0 1px #fff9eca3}50%{box-shadow:0 0 28px #f3cd843d,inset 0 1px #fff9ecb8}}@keyframes stat-value-tick{0%{opacity:.2;transform:translateY(8px)scale(.96)}65%{opacity:1;transform:translateY(-2px)scale(1.02)}to{opacity:1;transform:translateY(0)scale(1)}}@keyframes achievement-toast-in{0%{opacity:0;transform:translateY(-18px)scale(.96)}to{opacity:1;transform:translate(0,0)scale(1)}}@keyframes achievement-toast-out{0%{opacity:1;transform:translate(0,0)scale(1)}to{opacity:0;transform:translateY(-12px)scale(.98)}}@media (width<=960px){.game-header{grid-template-columns:1fr;gap:12px}.game-header .eyebrow,h1,.intro{grid-column:1}.intro{margin-top:4px}.game-panel{width:min(100%,780px)}.game-body,.achievement-board-grid,.profile-stats{grid-template-columns:1fr}.profiles-panel,.achievements-panel{width:min(100vw - 56px,860px)}}@media (width<=640px){.app-shell,.app-shell.generators-open,.app-shell.upgrades-open{padding-left:24px;padding-right:24px}.side-tab-toggle{top:16px}.side-tab-toggle-left,.app-shell.generators-open .side-tab-toggle-left{left:12px}.side-tab-toggle-right,.app-shell.upgrades-open .side-tab-toggle-right{right:12px}.game-panel{padding:24px}.rock-display{padding:20px}.rock-display-visual{min-height:224px;padding:18px}.floating-rock-text{font-size:.94rem;bottom:44px}.stats-grid{grid-template-columns:1fr}.utility-actions{flex-direction:column;align-items:stretch}.sound-toggle,.panel-toggle{justify-self:stretch;width:100%}.profiles-panel,.achievements-panel{transform-origin:top;width:auto;padding:20px;inset:84px 12px 12px}.profiles-panel.closed,.achievements-panel.closed{transform:translateY(16px)scale(.98)}.profiles-panel.open,.achievements-panel.open{transform:translateY(0)scale(1)}.side-drawer{width:calc(100vw - 24px);padding:20px;top:84px;bottom:12px}.side-drawer-left{left:12px}.side-drawer-right{right:12px}.section-heading,.achievement-column-heading,.achievement-bonus-line,.profile-copy,.achievement-copy,.upgrade-copy,.generator-copy,.profile-actions,.achievement-actions,.upgrade-actions,.generator-actions{flex-direction:column;align-items:start}.achievement-toast-stack{width:min(100vw - 24px,360px);top:72px}}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}.factory-layout{grid-template-columns:clamp(280px,18vw,320px) minmax(480px,760px) clamp(320px,22vw,400px);justify-content:center;align-items:stretch;gap:12px;height:100%;min-height:0}.factory-column,.hero-column,.panel-frame,.hero-panel{height:100%;min-height:0}.hero-zone .rock-display-idle,.hero-zone .rock-display-purchase,.hero-zone .rock-display-motion{justify-content:center;align-items:center;width:100%}.hero-zone .rock-display-image{width:min(100%,210px);margin-inline:auto}@media (width<=1180px){body{overflow:auto}.page-shell{height:auto;min-height:auto;overflow:visible}.factory-layout,.factory-column,.hero-column,.panel-frame,.hero-panel{height:auto}}.upgrade-filter-controls{gap:8px;margin-bottom:12px;display:grid}.upgrade-filter-controls .filter-strip{margin-bottom:0}.filter-toggle{width:fit-content;color:var(--color-text-soft);letter-spacing:.04em;cursor:pointer;-webkit-user-select:none;user-select:none;align-items:center;gap:8px;font-size:.78rem;font-weight:700;display:inline-flex}.filter-checkbox{width:15px;height:15px;accent-color:var(--color-gold-1);cursor:pointer;margin:0}.upgrade-effect{color:var(--color-gold-2);letter-spacing:.02em;margin-top:6px;font-size:.82rem;font-weight:700}.app-shell{justify-content:center;align-items:stretch;padding:20px}.factory-layout{grid-template-columns:220px minmax(0,1fr) 280px;gap:20px;width:min(100%,1680px);min-height:calc(100vh - 40px);display:grid}.factory-column,.hero-column{min-height:0}.panel-frame{background:linear-gradient(#ffda920d,#0000 18%),linear-gradient(#2a1f0efa,#1c150cfa);border:1px solid #5a3e1b;border-radius:28px;flex-direction:column;height:100%;padding:18px;display:flex;position:relative;overflow:hidden;box-shadow:0 26px 48px #00000047,inset 0 1px #ffeec90f,inset 0 0 28px #0000002e}.panel-frame:before,.panel-frame:after,.hero-panel:before,.hero-panel:after{content:"";pointer-events:none;position:absolute;inset:0}.panel-frame:before{opacity:.22;background:repeating-linear-gradient(135deg,#ffe0ad0a 0 2px,#0000 2px 14px),repeating-linear-gradient(0deg,#0000001f 0 1px,#0000 1px 24px)}.panel-frame:after{border:1px solid #ffdd9c0a;border-radius:22px;inset:10px}.panel-header{z-index:1;margin-bottom:16px;position:relative}.panel-header h2{font-size:1.58rem;line-height:1.05}.panel-copy{color:var(--color-text-soft);margin:10px 0 0;font-size:.94rem}.column-scroll{z-index:1;flex:1;min-height:0;padding-right:4px;position:relative}.column-section+.column-section{border-top:1px solid #ffd38c14;margin-top:22px;padding-top:22px}.column-section-muted .section-heading h3{color:#f8f0e3db}.hero-panel{background:radial-gradient(circle at 50% 45%,#ffc9751f,#0000 28%),radial-gradient(circle at 50% 55%,#ffe4b30a,#0000 48%),linear-gradient(#2f2212f5,#1c140bfa);border:1px solid #5a3e1b;border-radius:34px;grid-template-rows:auto auto 1fr auto;gap:18px;min-height:100%;padding:32px 34px 26px;display:grid;position:relative;overflow:hidden;box-shadow:0 30px 60px #0000004d,inset 0 1px #fff0d60f,inset 0 0 46px #00000029}.hero-panel:before{opacity:.22;background:radial-gradient(circle at 50% 48%,#ffd48b2e,#0000 28%),radial-gradient(circle at 50% 100%,#7c491c24,#0000 46%)}.hero-panel:after{border:1px solid #ffdd9c0a;border-radius:26px;inset:14px}.hero-header,.hero-readouts,.hero-zone,.hero-footer{z-index:1;position:relative}.hero-header{grid-template-columns:minmax(0,1fr) auto;align-items:start;gap:16px 24px;display:grid}.hero-copy h1{margin-top:2px}.hero-copy .intro{margin-top:12px}.hero-header .intro{grid-column:auto}.utility-actions{justify-content:flex-end;align-items:flex-start}.hero-readouts{flex-wrap:wrap;gap:10px;display:flex}.readout-chip{background:#fff4e00a;border:1px solid #ffd6931a;border-radius:999px;align-items:baseline;gap:10px;padding:8px 12px;display:inline-flex;box-shadow:inset 0 1px #fff0d60d}.readout-label{color:var(--color-text-muted);letter-spacing:.12em;text-transform:uppercase;font-size:.78rem;font-weight:700}.readout-value{color:var(--color-gold-2);font-variant-numeric:tabular-nums;font-weight:800;animation:.32s cubic-bezier(.2,.9,.28,1.08) stat-value-tick}.hero-zone{align-content:center;justify-items:center;gap:18px;min-height:0;display:grid}.hero-zone .rock-display{width:min(100%,560px);box-shadow:none;background:0 0;border:0;margin:0 auto;padding:0}.hero-zone .rock-display:before{display:none}.hero-zone .rock-display-visual{background:radial-gradient(circle,#ffdb9629,#0000 42%),radial-gradient(circle at 50% 70%,#ffc4631f,#0000 34%),linear-gradient(#fff4e008,#0000);border-radius:52px;min-height:360px;padding:24px}.rock-display-kicker{color:var(--color-gold-1);letter-spacing:.18em;text-transform:uppercase;margin:0 0 8px;font-size:.78rem;font-weight:700}.rock-display-flavour{max-width:36ch;color:var(--color-text-soft);margin:10px auto 0}.rock-display-stockpile{gap:3px;margin:16px 0 0;display:grid}.rock-display-stockpile span{color:var(--color-text-muted);letter-spacing:.12em;text-transform:uppercase;font-size:.78rem}.rock-display-stockpile strong{color:var(--color-gold-2);font-family:var(--font-display);letter-spacing:.02em;font-size:clamp(1.2rem,3vw,1.8rem)}.hero-zone .mine-button{width:min(100%,320px)}.hero-footer{border-top:1px solid #ffd38c14;gap:6px;padding-top:14px;display:grid}.hero-footer-label{color:var(--color-gold-1);letter-spacing:.18em;text-transform:uppercase;font-size:.76rem;font-weight:700}.hero-footer-copy{color:var(--color-text-soft);margin:0}.hero-footer-copy strong{color:var(--color-gold-1)}.filter-strip{z-index:1;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;margin-bottom:16px;display:grid;position:relative}.filter-tab{color:var(--color-text-soft);cursor:pointer;background:#fff4e009;border:1px solid #ffd6931a;border-radius:999px;padding:10px 12px;font-weight:700;transition:transform .15s,border-color .15s,background-color .15s,color .15s}.filter-tab:hover{border-color:#ffd6932e;transform:translateY(-1px)}.filter-tab.is-active{color:var(--color-gold-2);background:linear-gradient(#f3cd8429,#f3cd840f),#fff4e00a;border-color:#ffd69347;box-shadow:0 0 18px #f3cd8414}.generator-card,.upgrade-card{gap:12px}.generator-card-head,.upgrade-card-head{z-index:1;grid-template-columns:auto minmax(0,1fr);align-items:start;gap:12px;display:grid;position:relative}.generator-icon,.upgrade-icon{width:44px;height:44px;color:var(--color-gold-2);background:linear-gradient(#fff6e414,#fff6e408),#fff3dc08;border:1px solid #ffdd9c1f;border-radius:15px;place-items:center;font-size:1.1rem;font-weight:800;display:grid;box-shadow:inset 0 1px #fff3dc14,0 10px 16px #0000002e}.generator-card-copy,.upgrade-card-copy{min-width:0}.generator-title-row,.upgrade-title-row{justify-content:space-between;align-items:center;gap:10px;display:flex}.generator-card-copy p,.upgrade-card-copy p{color:var(--color-text-soft);margin:4px 0 0;font-size:.92rem}.owned-badge,.upgrade-level-badge{color:var(--color-gold-1);white-space:nowrap;background:#fff4e00d;border:1px solid #ffd69324;border-radius:999px;justify-content:center;align-items:center;padding:6px 10px;font-size:.78rem;font-weight:800;display:inline-flex}.upgrade-level-badge.is-milestone{color:#2f1a07;background:linear-gradient(#ffe0a0 0%,#f0b55d 62%,#cc7c24 100%);border-color:#ffe2ac47;animation:2.8s ease-in-out infinite milestone-badge-glow;box-shadow:0 0 22px #f3cd8429,inset 0 1px #fff9eca3}.generator-readouts,.upgrade-meta{z-index:1;gap:6px;display:grid;position:relative}.generator-rate,.generator-cost,.upgrade-category-tag,.upgrade-detail,.upgrade-cost{font-size:.88rem}.upgrade-meta{align-items:start}.upgrade-category-tag{width:fit-content;color:var(--color-text-muted);letter-spacing:.08em;text-transform:uppercase;background:#fff4e00d;border-radius:999px;align-items:center;padding:5px 9px;display:inline-flex}.generator-buy-button{width:100%}.upgrade-card-mining .upgrade-icon{color:#ffd4bf;border-color:#ffa88a29}.upgrade-card-passive .upgrade-icon{color:#f6ddad}@media (width<=1180px){.factory-layout{grid-template-columns:1fr;gap:16px}.hero-column{order:1}.generator-column{order:2}.upgrade-column{order:3}.panel-frame,.hero-panel{min-height:auto}}@media (width<=720px){.app-shell{padding:12px}.factory-layout{min-height:auto}.hero-panel,.panel-frame{border-radius:24px;padding:18px}.hero-header{grid-template-columns:1fr}.utility-actions{justify-content:flex-start}.hero-zone .rock-display-visual{border-radius:34px;min-height:280px}.filter-strip{grid-template-columns:1fr}.generator-title-row,.upgrade-title-row{flex-direction:column;align-items:start}}.app-shell{padding:12px}.page-shell{grid-template-rows:auto minmax(0,1fr);gap:16px;width:100%;min-height:calc(100vh - 24px);display:grid}.website-banner{background:radial-gradient(circle at 50% 0,#ffcd7814,#0000 34%),linear-gradient(#332313f5,#1f150cfa);border:1px solid #5a3e1b;border-radius:28px;padding:20px 24px 18px;position:relative;overflow:hidden;box-shadow:0 26px 52px #00000047,inset 0 1px #fff0d60f,inset 0 0 32px #00000024}.website-banner:before,.website-banner:after{content:"";pointer-events:none;position:absolute;inset:0}.website-banner:before{opacity:.18;background:radial-gradient(circle at 20% 0,#ffe5b324,#0000 22%),radial-gradient(circle at 80% 0,#ffb15314,#0000 18%)}.website-banner:after{border:1px solid #ffdd9c0a;border-radius:20px;inset:12px}.website-banner-top,.website-banner-readouts{z-index:1;position:relative}.website-banner-top{grid-template-columns:minmax(0,1fr) auto;grid-template-areas:"eyebrow actions""heading heading""intro intro";align-items:start;gap:20px 24px;display:grid}.website-banner-copy{display:contents}.website-banner-copy .eyebrow{grid-area:eyebrow}.website-banner-copy h1{text-wrap:balance;grid-area:heading;width:100%;max-width:none;margin-top:4px;font-size:clamp(2.4rem,4.1vw,4.6rem);line-height:.92}.website-banner-copy .intro{grid-area:intro;max-width:68ch;margin-top:12px}.website-banner-actions{grid-area:actions;justify-content:flex-end}.factory-layout{grid-template-columns:220px minmax(0,1fr) 280px;gap:16px;width:100%;max-width:none;min-height:0}.factory-layout>*{min-height:0}.hero-panel{grid-template-rows:minmax(0,1fr) auto;gap:12px;height:100%;min-height:0;padding:18px 24px}.hero-zone{align-content:center;gap:12px;height:100%}.hero-zone .rock-display-visual{min-height:clamp(280px,44vh,420px)}.hero-zone .mine-button{margin-top:-2px}.hero-footer{padding-top:12px}@media (width<=1180px){.page-shell{grid-template-rows:auto auto;min-height:auto}.website-banner-top{grid-template-columns:1fr;grid-template-areas:"eyebrow""actions""heading""intro"}.website-banner-copy h1{max-width:none}.website-banner-actions{justify-content:flex-start}}@media (width<=720px){.page-shell{gap:12px}.website-banner{border-radius:22px;padding:16px 18px}.website-banner-copy h1{max-width:none;font-size:clamp(2rem,7.6vw,3.1rem)}.website-banner-actions{flex-direction:column;align-items:stretch}.website-banner-actions .sound-toggle,.website-banner-actions .panel-toggle{width:100%}.hero-panel{padding:14px 16px 16px}.hero-zone .rock-display-visual{min-height:240px}.hero-zone .rock-display{width:100%}}body{overflow:hidden}.page-shell{gap:12px;height:calc(100dvh - 24px);min-height:calc(100dvh - 24px);overflow:hidden}.website-banner{border-radius:22px;padding:14px 18px 12px;box-shadow:0 18px 30px #00000038,inset 0 1px #fff0d60d,inset 0 0 18px #0000001a}.website-banner:before{opacity:.1}.website-banner-top{gap:12px 18px}.website-banner-copy h1{margin-top:0;font-size:clamp(2rem,3.1vw,3.2rem);line-height:.96}.website-banner-copy .intro{max-width:70ch;margin-top:8px;font-size:.92rem}.website-banner-readouts{margin-top:10px}.readout-chip{padding:6px 10px}.readout-label{font-size:.72rem}.readout-value{font-size:.95rem}.factory-layout{grid-template-columns:minmax(300px,340px) minmax(420px,640px) minmax(340px,420px);justify-content:center;align-items:stretch;gap:12px;width:100%;height:100%;min-height:0}.factory-column,.hero-column,.panel-frame,.hero-panel{height:100%;min-height:0}.panel-frame{border-radius:22px;padding:14px;box-shadow:0 18px 28px #0003,inset 0 1px #ffeec90d,inset 0 0 18px #0000001f}.panel-frame:before{opacity:.12}.panel-header{margin-bottom:12px}.panel-header h2{font-size:1.32rem}.panel-copy{margin-top:8px;font-size:.88rem}.column-section+.column-section{margin-top:18px;padding-top:18px}.hero-panel{border-radius:24px;gap:8px;padding:12px 16px 14px;box-shadow:0 20px 34px #00000038,inset 0 1px #fff0d60d,inset 0 0 20px #0000001a}.hero-panel:before{opacity:.1}.hero-zone{align-content:start;justify-items:center;gap:10px;padding-top:6px;overflow:hidden}.hero-zone .rock-display{width:min(100%,480px)}.hero-zone .rock-display-visual{border-radius:30px;min-height:clamp(190px,28vh,280px);padding:12px}.hero-zone .rock-display-image{width:min(100%,210px)}.hero-zone .rock-display-copy{margin-top:4px}.rock-display-kicker{margin-bottom:6px;font-size:.72rem}.rock-display-copy h2{font-size:clamp(1.55rem,2.7vw,2.15rem)}.rock-display-flavour{margin-top:8px;font-size:.92rem}.rock-display-stockpile{margin-top:12px}.rock-display-stockpile span{font-size:.72rem}.rock-display-stockpile strong{font-size:clamp(1.05rem,2vw,1.55rem)}.rock-display-progress{margin-top:10px;font-size:.9rem}.hero-zone .mine-button{width:min(100%,290px);margin-top:0}.hero-footer{gap:4px;padding-top:10px}.hero-footer-copy{font-size:.9rem}.generator-card,.upgrade-card{border-radius:18px;gap:10px;padding:14px;box-shadow:0 12px 20px #00000029,inset 0 1px #fff3dc0d}.generator-card:hover,.upgrade-card:hover,.achievement-card:hover,.profile-card:hover{transform:translateY(-2px)}.generator-card-head,.upgrade-card-head{gap:10px}.generator-icon,.upgrade-icon{border-radius:12px;width:38px;height:38px;font-size:.98rem}.generator-card-copy h4,.upgrade-card-copy h4{font-size:.92rem}.generator-card-copy p,.upgrade-card-copy p,.generator-rate,.generator-cost,.upgrade-detail,.upgrade-cost{font-size:.84rem}.owned-badge,.upgrade-level-badge,.upgrade-category-tag,.status-chip{padding:4px 8px;font-size:.68rem}.filter-strip{gap:6px;margin-bottom:12px}.filter-tab{padding:8px 10px;font-size:.84rem}@media (width<=1180px){body{overflow:auto}.page-shell{height:auto;min-height:auto;overflow:visible}.factory-layout,.factory-column,.hero-column,.panel-frame,.hero-panel{height:auto}}
