:root{color:#1f2b24;background:#eef7f1;font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;font-synthesis:none;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased;--ink: #1f2b24;--muted: #637069;--panel: rgba(249, 253, 245, .82);--panel-strong: rgba(255, 255, 250, .94);--line: rgba(38, 58, 45, .15);--shadow: 0 18px 55px rgba(31, 43, 36, .16);--green: #2f8d64;--amber: #ed8a21;--blue: #3a83a5;--red: #bf5c45;--radius: 8px}*{box-sizing:border-box}html,body,#root{min-height:100%;margin:0}body{overflow:hidden}button{font:inherit;letter-spacing:0}.intro-screen{position:relative;display:grid;min-height:100dvh;place-items:center;overflow:hidden;color:#fff8e3;background:linear-gradient(180deg,#11191d24,#11191db3),linear-gradient(180deg,#10202a,#1a302d 55%,#2a3627)}.intro-video{position:absolute;top:0;right:0;bottom:0;left:0;width:100%;height:100%;object-fit:cover}.intro-fallback{position:relative;z-index:1;display:grid;gap:24px;place-items:center;width:min(92vw,620px);text-align:center}.intro-night{position:relative;display:grid;width:min(64vw,360px);aspect-ratio:1;place-items:center}.intro-glow,.intro-fire{position:absolute;width:100%;height:100%;object-fit:contain;pointer-events:none}.intro-glow{opacity:.62;border-radius:999px;background:radial-gradient(circle,rgba(255,167,66,.58) 0%,rgba(255,142,36,.2) 36%,transparent 68%);mix-blend-mode:screen;animation:introGlow 2.4s ease-in-out infinite}.intro-fire{width:72%;height:72%;filter:drop-shadow(0 22px 42px rgba(239,128,35,.38));animation:fireBreath 1.8s ease-in-out infinite}.intro-line{max-width:18rem;margin:0;font-size:1.3rem;line-height:1.25;text-wrap:balance}.intro-progress{width:min(280px,70vw);height:4px;overflow:hidden;border-radius:999px;background:#ffffff2e}.intro-progress:after{display:block;width:100%;height:100%;content:"";background:#f6a832;transform-origin:left;animation:introProgress 7.2s linear forwards}.intro-skip,.intro-enter{position:absolute;z-index:2;display:inline-flex;align-items:center;justify-content:center;gap:8px;min-height:42px;border:1px solid rgba(255,255,255,.22);border-radius:var(--radius);color:#fff8e3;background:#0c121270;-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);cursor:pointer}.intro-skip{top:22px;right:22px;padding:0 14px}.intro-enter{right:22px;bottom:22px;padding:0 16px;background:#ed8a215c}.game-screen{position:relative;--hud-edge: clamp(10px, 1.4vw, 20px);--hud-gap: clamp(8px, 1.1vw, 16px);--energy-header-height: 72px;--objective-strip-height: 58px;--side-panel-top: calc(var(--hud-edge) + var(--energy-header-height) + var(--hud-gap) + 12px);--progress-rail-height: 54px;--tech-rail-height: clamp(96px, 16dvh, 150px);--island-size: clamp(130px, 14vw, 210px);--island-center-x: 50%;--island-center-y: 50%;--mix-backdrop-opacity: .12;--bottom-zone-height: calc( var(--progress-rail-height) + var(--tech-rail-height) + var(--hud-gap) + var(--hud-edge) );--scene-safe-top: calc( var(--hud-edge) + var(--energy-header-height) + var(--objective-strip-height) + var(--hud-gap) * 2 );--scene-safe-right: calc(var(--purchase-panel-width) + var(--hud-edge) + var(--hud-gap));--scene-safe-bottom: calc(var(--bottom-zone-height) + var(--hud-gap));--scene-safe-left: calc(var(--mix-panel-width) + var(--hud-edge) + var(--hud-gap));--mix-panel-width: clamp(244px, 21vw, 300px);--purchase-panel-width: clamp(318px, 29vw, 400px);--restart-button-size: 38px;--restart-button-space: calc(16px + var(--restart-button-size) + 102px);min-height:100dvh;overflow:hidden;background:linear-gradient(rgba(47,141,100,.07) 1px,transparent 1px),linear-gradient(90deg,rgba(58,131,165,.08) 1px,transparent 1px),linear-gradient(180deg,#e9f6f1,#d8ece9 52%,#edf2dd);background-size:34px 34px,34px 34px,auto}.mix-evolution-backdrop{position:absolute;top:0;right:0;bottom:0;left:0;z-index:0;overflow:hidden;opacity:var(--mix-backdrop-opacity);pointer-events:none}.mix-evolution-backdrop svg{display:block;width:100%;height:100%;filter:blur(.5px) saturate(.92)}.mix-evolution-backdrop path{mix-blend-mode:multiply}.scene-layer{position:absolute;top:0;right:0;bottom:0;left:0;z-index:1;display:grid;place-items:center;padding:var(--scene-safe-top) var(--scene-safe-right) var(--scene-safe-bottom) var(--scene-safe-left)}.central-playfield-slot{position:relative;z-index:2;display:grid;width:min(680px,100%);height:min(500px,58dvh);min-height:360px;place-items:center}.energy-islands-layer{position:absolute;inset:var(--scene-safe-top) var(--scene-safe-right) var(--scene-safe-bottom) var(--scene-safe-left);z-index:1;display:block;overflow:hidden;pointer-events:none}.energy-island-world{position:absolute;top:0;right:0;bottom:0;left:0;transform:translate(var(--island-camera-pan-x, 0),var(--island-camera-pan-y, 0)) scale(var(--island-camera-zoom, 1));transform-origin:50% 50%;transition:transform .98s cubic-bezier(.22,1,.36,1);will-change:transform}.energy-island{position:absolute;left:var(--island-world-x, var(--island-center-x));top:var(--island-world-y, var(--island-center-y));width:var(--island-size);aspect-ratio:1;margin:0;display:grid;place-items:center;opacity:1;transform:translate(-50%,-50%) scale(var(--island-scale, 1));transition:opacity .18s ease}.energy-island-float{display:grid;width:100%;height:100%;place-items:center;animation:islandFloat var(--island-float-duration, 7s) ease-in-out infinite;animation-delay:var(--island-float-delay, 0s);will-change:transform}.energy-island[data-missing=true]{display:none}.energy-island img{display:block;width:100%;height:100%;object-fit:contain;filter:drop-shadow(0 20px 34px rgba(31,43,36,.14));-webkit-user-select:none;user-select:none}.energy-island[data-state=empty]{opacity:1}.energy-island[data-state=upgraded] img{filter:drop-shadow(0 20px 34px rgba(31,43,36,.14)) drop-shadow(0 0 18px rgba(58,131,165,.14))}.central-hotspot{width:min(560px,100%);height:min(420px,100%);border:0;background:transparent;cursor:pointer;-webkit-tap-highlight-color:transparent}.central-hotspot:focus-visible{outline:2px solid rgba(237,138,33,.52);outline-offset:8px}.game-hud{position:absolute;top:0;right:0;bottom:0;left:0;z-index:5;pointer-events:none}.panel{border:1px solid var(--line);border-radius:var(--radius);background:var(--panel);box-shadow:var(--shadow);-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px);pointer-events:auto}.energy-header{position:absolute;top:var(--hud-edge);left:50%;display:flex;width:min(520px,calc(100vw - 36px));min-height:var(--energy-header-height);align-items:center;justify-content:space-between;gap:18px;padding:13px 16px;padding-right:var(--restart-button-space);transform:translate(-50%)}.metric-kicker{display:block;color:var(--muted);font-size:.78rem;font-weight:750;text-transform:uppercase}.energy-value{display:block;margin-top:2px;color:var(--ink);font-size:2rem;line-height:1}.energy-actions{display:flex;min-width:0;align-items:center;justify-content:flex-end;gap:12px}.rate-cluster{display:grid;gap:8px;min-width:108px;color:var(--muted);font-size:.86rem;font-weight:720}.rate-cluster span{display:inline-flex;align-items:center;justify-content:flex-end;gap:6px}.rate-cluster span[data-active=true]{color:var(--amber)}.objective-strip{position:absolute;top:calc(var(--hud-edge) + var(--energy-header-height) + var(--hud-gap));left:50%;z-index:5;display:grid;grid-template-columns:minmax(0,1fr) minmax(72px,auto);width:min(430px,calc(100vw - var(--mix-panel-width) - var(--purchase-panel-width) - var(--hud-edge) * 4));min-width:280px;min-height:var(--objective-strip-height);align-items:center;gap:4px 12px;padding:9px 12px;pointer-events:none;transform:translate(-50%)}.objective-main{display:flex;min-width:0;align-items:center;gap:9px}.objective-icon{display:grid;width:28px;height:28px;flex:0 0 auto;place-items:center;border-radius:var(--radius);color:var(--amber);background:#ed8a211f}.objective-strip[data-ready=true] .objective-icon{color:var(--green);background:#2f8d641f}.objective-copy{display:grid;min-width:0;gap:1px}.objective-kicker{overflow:hidden;color:var(--muted);font-size:.62rem;font-weight:820;line-height:1;text-overflow:ellipsis;text-transform:uppercase;white-space:nowrap}.objective-copy strong{overflow:hidden;color:var(--ink);font-size:.88rem;line-height:1.05;text-overflow:ellipsis;white-space:nowrap}.objective-side{display:grid;min-width:76px;justify-items:end;gap:5px;color:var(--muted);font-size:.72rem;font-weight:820}.objective-progress{width:76px;height:4px;overflow:hidden;border-radius:999px;background:#1f2b241a}.objective-progress span{display:block;width:100%;height:100%;border-radius:inherit;background:linear-gradient(90deg,var(--amber),var(--green));transform-origin:left;transition:transform .18s ease}.objective-strip p{grid-column:1 / -1;overflow:hidden;margin:-2px 0 0 37px;color:var(--muted);font-size:.66rem;font-weight:690;line-height:1.1;text-overflow:ellipsis;white-space:nowrap}.restart-run-button{display:inline-flex;align-items:center;justify-content:center;gap:8px;min-height:34px;border:1px solid var(--line);border-radius:var(--radius);padding:0 10px;color:var(--muted);background:#fffffa6b;font-size:.78rem;font-weight:780;cursor:pointer;pointer-events:auto;transition:border-color .16s ease,color .16s ease,background .16s ease,transform .16s ease}.restart-run-button:hover,.restart-run-button:focus-visible{color:var(--ink);transform:translateY(-1px)}.restart-run-button--floating{position:absolute;top:var(--hud-edge);right:var(--hud-edge);z-index:6;width:auto;min-height:var(--restart-button-size);height:auto;padding:0 10px;border-radius:999px;border-color:#fffffa47;color:var(--ink);background:#fffffa38;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.restart-run-button--floating:hover,.restart-run-button--floating:focus-visible{border-color:#1f2b2447;background:#fffffa73;color:var(--ink)}.restart-run-button-label{display:inline;white-space:nowrap}.sandbox-run-button{position:absolute;right:var(--hud-edge);bottom:var(--hud-edge);z-index:7;display:inline-flex;align-items:center;justify-content:center;gap:7px;min-height:34px;border:1px solid rgba(31,43,36,.12);border-radius:999px;padding:0 11px;color:var(--ink);background:#fffffa94;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);box-shadow:0 12px 32px #1f2b241a;cursor:pointer;pointer-events:auto;transition:background .16s ease,border-color .16s ease,transform .16s ease}.sandbox-run-button:hover,.sandbox-run-button:focus-visible{border-color:#2f8d6447;background:#fffffad1;transform:translateY(-1px)}.sandbox-run-button-label{white-space:nowrap;font-size:.72rem;font-weight:780}.mix-panel{position:absolute;top:var(--side-panel-top);left:var(--hud-edge);width:var(--mix-panel-width);max-height:calc(100dvh - var(--side-panel-top) - var(--bottom-zone-height));overflow:auto;padding:15px}.purchase-panel{position:absolute;top:var(--side-panel-top);right:var(--hud-edge);width:var(--purchase-panel-width);max-height:calc(100dvh - var(--side-panel-top) - var(--bottom-zone-height));overflow:auto;padding:15px}.mix-panel,.purchase-panel,.tech-rail{scrollbar-width:thin;scrollbar-color:rgba(31,43,36,.22) transparent}.panel-title{display:flex;align-items:center;gap:8px;margin-bottom:12px}.panel-title h2{margin:0;font-size:1rem;line-height:1.1}.purchase-list{display:grid;gap:10px}.mix-chart{display:grid;gap:12px}.mix-pie{width:min(178px,100%);aspect-ratio:1;justify-self:center;color:var(--ink)}.mix-pie-segment{transition:stroke-dasharray .18s ease,stroke-dashoffset .18s ease}.mix-pie-value{font-size:.28rem;font-weight:850}.mix-pie-caption{fill:var(--muted);font-size:.13rem;font-weight:760;text-transform:uppercase}.mix-legend{display:grid;gap:7px;margin:0;padding:0;list-style:none}.mix-legend-item{display:grid;grid-template-columns:10px minmax(0,1fr);gap:8px;align-items:center;min-width:0}.mix-legend-marker{width:10px;height:36px;border-radius:999px;box-shadow:inset 0 0 0 1px #1f2b241f}.mix-legend-copy{display:grid;min-width:0;gap:2px}.mix-legend-heading,.mix-legend-rates{display:flex;min-width:0;align-items:baseline;justify-content:space-between;gap:8px}.mix-legend-label{overflow:hidden;color:var(--ink);font-size:.84rem;font-weight:780;line-height:1.1;text-overflow:ellipsis;white-space:nowrap}.mix-legend-share{color:var(--green);font-size:.8rem}.mix-legend-rates{color:var(--muted);font-size:.72rem;font-weight:650;line-height:1.1}.mix-legend-rates span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.purchase-panel-header{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:6px}.purchase-panel-header .panel-title{margin-bottom:0}.rail-count{color:var(--muted);font-size:.76rem;font-weight:760}.age-description{margin:0 0 12px;color:var(--muted);font-size:.78rem;font-weight:650;line-height:1.25}.purchase-card{display:grid;grid-template-columns:50px minmax(0,1fr) auto;gap:11px;align-items:start;width:100%;min-height:76px;border:1px solid var(--line);border-radius:var(--radius);background:#fffffa94;padding:10px;color:var(--ink);text-align:left;cursor:pointer}.purchase-card:disabled{cursor:default}.purchase-card[data-affordable=false]{color:#1f2b247a}.purchase-card[data-affordable=true]:not([data-purchased=true]){border-color:#2f8d6447;background:#fffffac7}.purchase-card[data-affordable=true]:not([data-purchased=true]) .purchase-asset{border-color:#2f8d6452;background:#2f8d641f}.purchase-card[data-purchased=true][data-affordable=true]{border-color:#2f8d6433;background:#edf6edb8}.purchase-card[data-purchased=true][data-affordable=true] .purchase-meta{color:var(--green)}.purchase-asset{display:grid;width:50px;height:50px;place-items:center;overflow:hidden;border:1px solid rgba(31,43,36,.1);border-radius:var(--radius);color:var(--muted);background:#1f2b240f}.purchase-asset img{width:46px;height:46px;object-fit:contain}.purchase-copy{display:grid;min-width:0;gap:4px}.source-chip{width:fit-content;border-radius:var(--radius);background:#1f2b2414;padding:2px 6px;color:var(--muted);font-size:.66rem;font-weight:820;line-height:1.1;text-transform:uppercase}.purchase-label{overflow-wrap:anywhere;color:var(--ink);font-size:.92rem;font-weight:780;line-height:1.08}.purchase-effect{color:var(--ink);font-size:.77rem;font-weight:760;line-height:1.15}.purchase-meta{display:grid;min-width:72px;justify-items:end;gap:4px;color:var(--muted);font-size:.76rem;font-weight:760}.tech-rail{position:absolute;right:var(--hud-edge);bottom:calc(var(--hud-edge) + var(--progress-rail-height) + var(--hud-gap));left:var(--hud-edge);max-width:1040px;max-height:var(--tech-rail-height);margin:0 auto;overflow:hidden;padding:12px}.tech-rail-header{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:10px}.tech-rail-header .panel-title{margin-bottom:0}.technology-list{display:grid;grid-template-columns:repeat(var(--technology-count),minmax(0,1fr));gap:8px}.technology-card{display:grid;grid-template-columns:36px minmax(0,1fr) auto;gap:4px 9px;align-items:center;width:100%;min-height:66px;border:1px solid var(--line);border-radius:var(--radius);background:#fffffa85;padding:8px;color:var(--ink);text-align:left;cursor:pointer}.technology-card:disabled{cursor:default}.technology-card[data-affordable=false]{color:#1f2b247a}.technology-card[data-available=false]{color:#1f2b246b}.technology-card[data-affordable=true]:not([data-researched=true]){border-color:#3a83a547;background:#f1f9fcbd}.technology-card[data-researched=true]{border-color:#3a83a533;background:#ebf7fcb3}.technology-icon{display:grid;width:36px;height:36px;place-items:center;overflow:hidden;border-radius:var(--radius);color:var(--blue);background:#3a83a51a}.technology-icon img{width:34px;height:34px;object-fit:contain}.technology-copy{display:grid;min-width:0;gap:2px}.technology-label{display:-webkit-box;overflow:hidden;overflow-wrap:normal;word-break:normal;-webkit-box-orient:vertical;-webkit-line-clamp:2;font-size:.82rem;font-weight:800;line-height:1.08}.technology-effect{overflow:hidden;color:var(--muted);font-size:.72rem;font-weight:700;line-height:1.12;text-overflow:ellipsis;white-space:nowrap}.technology-meta{display:flex;min-width:0;align-items:center;justify-content:flex-end;gap:6px;color:var(--muted);font-size:.72rem;font-weight:760}.technology-meta>span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.advance-age-card{display:grid;grid-template-columns:34px minmax(0,1fr) auto;gap:10px;align-items:center;width:100%;min-height:64px;margin-top:12px;border:1px solid rgba(237,138,33,.28);border-radius:var(--radius);background:#fff7e2b8;padding:10px;color:var(--ink);text-align:left;cursor:pointer}.advance-age-card:disabled{cursor:default;color:#1f2b2475;border-color:var(--line);background:#fffffa80}.advance-age-card[data-complete=true]:not(:disabled){background:#ed8a2124}.advance-icon{display:grid;width:34px;height:34px;place-items:center;border-radius:var(--radius);color:#fff7e2;background:#ed8a21e0}.advance-age-card:disabled .advance-icon{color:var(--muted);background:#1f2b2414}.advance-copy{display:grid;min-width:0;gap:3px}.advance-label{overflow-wrap:anywhere;font-size:.84rem;font-weight:800;line-height:1.1}.advance-description{color:var(--muted);font-size:.74rem;font-weight:620;line-height:1.18}.advance-meta{color:var(--muted);font-size:.76rem;font-weight:780}.progress-rail{position:absolute;right:var(--hud-edge);bottom:var(--hud-edge);left:var(--hud-edge);display:flex;min-height:var(--progress-rail-height);align-items:center;justify-content:center;gap:8px;pointer-events:none}.era-pill,.stage-dot{display:inline-flex;align-items:center;gap:6px;min-height:36px;border:1px solid var(--line);border-radius:var(--radius);background:#fffffac7;padding:0 12px;color:var(--muted);font-size:.82rem;font-weight:750;box-shadow:0 12px 32px #1f2b241a}.era-pill{color:#fff7e2;border-color:#7d450e1f;background:#ed8a21e0}.stage-dot[data-active=true]{color:var(--ink);background:var(--panel-strong)}.stage-dot[data-active=true] svg{color:var(--green)}.floating-layer{position:fixed;top:0;right:0;bottom:0;left:0;z-index:10;pointer-events:none}.breakthrough-toast{position:fixed;top:calc(var(--hud-edge) + var(--energy-header-height) + var(--hud-gap));left:50%;z-index:17;display:grid;width:min(440px,calc(100vw - 28px));place-items:center;pointer-events:none;transform:translate(-50%);animation:breakthroughToast 3.6s cubic-bezier(.22,1,.36,1) forwards}.breakthrough-orbit{position:absolute;width:min(42vmin,260px);aspect-ratio:1;border:1px solid rgba(237,138,33,.24);border-radius:999px;box-shadow:0 0 52px #ed8a2129,inset 0 0 34px #fffffa33;animation:breakthroughOrbit 3.6s cubic-bezier(.22,1,.36,1) forwards}.breakthrough-toast[data-tone=atomic] .breakthrough-orbit{border-color:#7b62c947;box-shadow:0 0 52px #7b62c92e,inset 0 0 34px #fffffa33}.breakthrough-toast[data-tone=stellar] .breakthrough-orbit{border-color:#e3b54f4d;box-shadow:0 0 58px #e3b54f38,inset 0 0 36px #fffffa38}.breakthrough-toast[data-tone=cosmic] .breakthrough-orbit{border-color:#58c7b352;box-shadow:0 0 64px #58c7b333,inset 0 0 36px #a152d124}.breakthrough-card{position:relative;display:grid;grid-template-columns:38px minmax(0,1fr);width:100%;align-items:center;gap:12px;border-color:#ed8a2133;background:#fffffad1;box-shadow:0 24px 80px #1f2b2429;padding:12px 14px}.breakthrough-icon{display:grid;width:38px;height:38px;place-items:center;border-radius:var(--radius);color:#fff8e3;background:#ed8a21e6}.breakthrough-toast[data-tone=atomic] .breakthrough-icon{background:#7b62c9e6}.breakthrough-toast[data-tone=stellar] .breakthrough-icon{background:#d7a72deb}.breakthrough-toast[data-tone=cosmic] .breakthrough-icon{background:#58c7b3eb;color:#06352e}.breakthrough-copy{display:grid;min-width:0;gap:2px}.breakthrough-copy span{color:var(--green);font-size:.66rem;font-weight:850;line-height:1;text-transform:uppercase}.breakthrough-copy strong{overflow:hidden;color:var(--ink);font-size:1rem;line-height:1.05;text-overflow:ellipsis;white-space:nowrap}.breakthrough-copy p{overflow:hidden;margin:0;color:var(--muted);font-size:.76rem;font-weight:690;line-height:1.2;text-overflow:ellipsis;white-space:nowrap}.age-transition-overlay{position:fixed;top:0;right:0;bottom:0;left:0;z-index:18;display:grid;place-items:center;padding:clamp(18px,4vw,44px);color:var(--ink);background:radial-gradient(circle at 50% 50%,rgba(255,247,226,.72),transparent 20%),radial-gradient(circle at 50% 50%,rgba(58,131,165,.14),transparent 44%),#e8f4ef38;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);pointer-events:none;animation:ageTransitionFade 2.2s cubic-bezier(.22,1,.36,1) forwards}.age-transition-ring{position:absolute;width:min(54vmin,440px);aspect-ratio:1;border:1px solid rgba(47,141,100,.22);border-radius:999px;box-shadow:0 0 54px #ed8a2129,inset 0 0 40px #3a83a51f;animation:ageTransitionRing 2.2s cubic-bezier(.22,1,.36,1) forwards}.age-transition-card{position:relative;display:grid;width:min(460px,100%);justify-items:center;gap:8px;border:1px solid rgba(31,43,36,.1);border-radius:var(--radius);background:#fffffab8;box-shadow:0 22px 70px #1f2b2429;padding:clamp(18px,4vw,28px);text-align:center;transform-origin:50% 50%;animation:ageTransitionCard 2.2s cubic-bezier(.22,1,.36,1) forwards}.age-transition-kicker{display:inline-flex;align-items:center;gap:7px;color:var(--green);font-size:.78rem;font-weight:820;text-transform:uppercase}.age-transition-card strong{font-size:clamp(1.8rem,6vw,3.5rem);line-height:.95}.age-transition-card span:last-child{max-width:34ch;color:var(--muted);font-size:clamp(.86rem,2.2vw,1rem);font-weight:720;line-height:1.28}.cosmic-ending{position:fixed;top:0;right:0;bottom:0;left:0;z-index:20;display:grid;place-items:center;padding:clamp(16px,3vw,32px);color:#eef9ff;background:radial-gradient(circle at 50% 50%,rgba(88,199,179,.18),transparent 22%),radial-gradient(circle at 50% 50%,rgba(161,82,209,.18),transparent 34%),linear-gradient(180deg,#0a0e16c2,#07080deb);pointer-events:auto}.cosmic-ending-visual{position:absolute;top:0;right:0;bottom:0;left:0;display:grid;place-items:center;overflow:hidden;pointer-events:none}.cosmic-ring,.cosmic-core{position:absolute;display:block;border-radius:50%}.cosmic-ring{border:1px solid rgba(238,249,255,.2);box-shadow:0 0 80px #58c7b32e,inset 0 0 60px #a152d124;animation:cosmicSpin 22s linear infinite}.cosmic-ring--outer{width:min(86vmin,760px);aspect-ratio:1}.cosmic-ring--middle{width:min(56vmin,500px);aspect-ratio:1;animation-direction:reverse;animation-duration:14s}.cosmic-core{width:min(24vmin,210px);aspect-ratio:1;background:radial-gradient(circle,rgba(255,255,255,.9) 0 5%,rgba(88,199,179,.65) 10%,transparent 42%),radial-gradient(circle,#a152d18c,#07080df5 68%);box-shadow:0 0 80px #58c7b361,0 0 160px #a152d147;animation:cosmicPulse 3.8s ease-in-out infinite}.cosmic-ending-panel{position:relative;z-index:1;display:grid;width:min(720px,100%);gap:16px;border-color:#eef9ff2e;background:#0d121bc7;box-shadow:0 24px 90px #00000061;padding:clamp(18px,3vw,28px)}.cosmic-ending-title{display:flex;align-items:center;gap:12px}.cosmic-ending-title h2,.cosmic-ending-panel p{margin:0}.cosmic-ending-title h2{font-size:clamp(1.4rem,3vw,2.2rem);line-height:1}.cosmic-ending-panel p{max-width:54ch;color:#eef9ffc7;font-weight:650;line-height:1.35}.cosmic-ending-beats{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}.cosmic-ending-beat{display:grid;gap:7px;min-width:0;border:1px solid rgba(238,249,255,.14);border-radius:var(--radius);background:#ffffff0f;padding:12px;opacity:0;transform:translateY(10px);animation:cosmicBeatReveal .56s ease forwards}.cosmic-ending-beat[data-index="1"]{animation-delay:.26s}.cosmic-ending-beat[data-index="2"]{animation-delay:.52s}.cosmic-ending-beat strong{font-size:.86rem}.cosmic-ending-beat span{color:#eef9ffb3;font-size:.75rem;font-weight:650;line-height:1.3}.cosmic-restart-button{display:inline-flex;width:fit-content;align-items:center;justify-content:center;gap:8px;min-height:40px;border:1px solid rgba(88,199,179,.38);border-radius:var(--radius);padding:0 14px;color:#062820;background:#58c7b3eb;font-weight:820;cursor:pointer}.rotate-device-overlay{position:fixed;top:0;right:0;bottom:0;left:0;z-index:30;display:none;place-items:center;padding:22px;color:var(--ink);background:linear-gradient(rgba(47,141,100,.07) 1px,transparent 1px),linear-gradient(90deg,rgba(58,131,165,.08) 1px,transparent 1px),linear-gradient(180deg,#e9f6f1f5,#edf2ddfa);background-size:34px 34px,34px 34px,auto;pointer-events:auto}.rotate-device-card{display:grid;width:min(320px,100%);place-items:center;gap:9px;padding:22px;text-align:center}.rotate-device-card svg{color:var(--amber)}.rotate-device-card strong{font-size:1.2rem;line-height:1.1}.rotate-device-card span{color:var(--muted);font-size:.9rem;font-weight:700;line-height:1.25}.floating-gain{position:absolute;display:inline-flex;min-width:54px;justify-content:center;border-radius:var(--radius);padding:5px 8px;color:#fffaf0;background:#ed8a21f0;box-shadow:0 12px 30px #ed8a2147;font-size:.88rem;font-weight:850;transform:translate(-50%,-50%);animation:gainFloat .9s ease-out forwards}.floating-gain[data-negative=true]{background:#5d6e64e6;box-shadow:0 12px 30px #1f2b242e}@keyframes ageTransitionFade{0%{opacity:0}12%,76%{opacity:1}to{opacity:0}}@keyframes ageTransitionRing{0%{opacity:0;transform:scale(.72) rotate(0)}40%{opacity:1}to{opacity:0;transform:scale(1.28) rotate(24deg)}}@keyframes ageTransitionCard{0%{opacity:0;transform:translateY(18px) scale(.94)}16%,76%{opacity:1;transform:translateY(0) scale(1)}to{opacity:0;transform:translateY(-12px) scale(.98)}}@keyframes breakthroughToast{0%{opacity:0;transform:translate(-50%,-12px) scale(.94)}12%,78%{opacity:1;transform:translate(-50%) scale(1)}to{opacity:0;transform:translate(-50%,-10px) scale(.98)}}@keyframes breakthroughOrbit{0%{opacity:0;transform:scale(.58) rotate(0)}24%,76%{opacity:1}to{opacity:0;transform:scale(1.28) rotate(26deg)}}@keyframes introGlow{0%,to{transform:scale(.96);opacity:.5}50%{transform:scale(1.08);opacity:.76}}@keyframes fireBreath{0%,to{transform:scale(.98)}50%{transform:scale(1.04)}}@keyframes introProgress{0%{transform:scaleX(0)}to{transform:scaleX(1)}}@keyframes gainFloat{0%{opacity:0;transform:translate(-50%,-35%) scale(.86)}18%{opacity:1}to{opacity:0;transform:translate(-50%,-150%) scale(1)}}@keyframes islandFloat{0%,to{transform:translate3d(0,-6px,0)}50%{transform:translate3d(0,7px,0)}}@keyframes islandFloatMobile{0%,to{transform:translate3d(0,-2px,0)}50%{transform:translate3d(0,2px,0)}}@keyframes cosmicSpin{0%{transform:rotate(0) scaleX(1.22)}to{transform:rotate(360deg) scaleX(1.22)}}@keyframes cosmicPulse{0%,to{transform:scale(.94)}50%{transform:scale(1.06)}}@keyframes cosmicBeatReveal{to{opacity:1;transform:translateY(0)}}@media(max-width:1120px),(max-height:820px){.game-screen{--hud-edge: 12px;--hud-gap: 10px;--energy-header-height: 68px;--objective-strip-height: 52px;--tech-rail-height: clamp(118px, 15dvh, 128px);--progress-rail-height: 50px;--island-size: clamp(96px, 12vw, 142px);--mix-panel-width: clamp(218px, 25vw, 258px);--purchase-panel-width: clamp(286px, 35vw, 334px);--restart-button-size: 34px;--restart-button-space: calc(12px + var(--restart-button-size) + 96px)}.energy-header{width:min(480px,calc(100vw - 24px))}.energy-actions{gap:8px}.objective-strip{width:min(390px,calc(100vw - var(--mix-panel-width) - var(--purchase-panel-width) - var(--hud-edge) * 4));min-width:250px;padding:8px 10px}.objective-copy strong{font-size:.8rem}.restart-run-button{min-height:32px;padding:0 8px;font-size:.72rem}.sandbox-run-button{min-height:32px;padding:0 9px}.mix-panel,.purchase-panel{padding:12px}.technology-list{gap:7px}.technology-card{grid-template-columns:30px minmax(0,1fr) auto;min-height:50px;padding:7px}.technology-icon{width:30px;height:30px}.technology-icon img{width:28px;height:28px}.technology-card .source-chip{display:none}.technology-label{font-size:.78rem}.technology-effect{font-size:.68rem}.progress-rail{gap:6px}}@media(max-width:760px){.game-screen{--hud-edge: 10px;--hud-gap: 8px;--energy-header-height: 66px;--objective-strip-height: 0px;--tech-rail-height: 118px;--progress-rail-height: 72px;--mobile-side-panel-height: clamp(156px, 25dvh, 210px);--island-size: 38px;--island-center-y: 40%;--mix-panel-width: calc(40vw - 14px) ;--purchase-panel-width: calc(60vw - 14px) ;--bottom-zone-height: calc( var(--progress-rail-height) + var(--tech-rail-height) + var(--hud-gap) + var(--hud-edge) );--scene-safe-top: calc(var(--hud-edge) + var(--energy-header-height) + var(--hud-gap));--scene-safe-right: var(--hud-edge);--scene-safe-bottom: calc( var(--bottom-zone-height) + var(--mobile-side-panel-height) + var(--hud-gap) * 2 );--scene-safe-left: var(--hud-edge);--restart-button-space: calc(12px + var(--restart-button-size) + 12px)}.scene-layer{padding:var(--scene-safe-top) var(--scene-safe-right) var(--scene-safe-bottom) var(--scene-safe-left)}.energy-islands-layer{opacity:1}.energy-header{right:var(--hud-edge);left:var(--hud-edge);width:auto;transform:none}.objective-strip{display:none}.breakthrough-toast{top:calc(var(--hud-edge) + var(--energy-header-height) + var(--hud-gap));width:min(360px,calc(100vw - 20px))}.breakthrough-card{grid-template-columns:32px minmax(0,1fr);gap:9px;padding:10px}.breakthrough-icon{width:32px;height:32px}.breakthrough-copy strong{font-size:.86rem}.breakthrough-copy p{font-size:.68rem}.mix-panel,.purchase-panel{top:auto;bottom:calc(var(--bottom-zone-height) + var(--hud-gap));height:var(--mobile-side-panel-height);max-height:var(--mobile-side-panel-height)}.mix-panel,.purchase-panel{padding:10px}.panel-title h2{font-size:.88rem}.rail-count,.age-description{font-size:.68rem}.mix-chart{gap:8px}.mix-pie{width:min(112px,100%)}.mix-legend{gap:6px}.mix-legend-item{grid-template-columns:8px minmax(0,1fr);gap:6px}.mix-legend-marker{width:8px;height:28px}.mix-legend-label{font-size:.72rem}.mix-legend-share,.mix-legend-rates{font-size:.64rem}.purchase-card{min-height:66px;padding:8px}.tech-rail{padding:8px 10px}.tech-rail-header{margin-bottom:6px}.technology-list{gap:6px}.technology-card{grid-template-columns:minmax(0,1fr);min-height:48px;align-content:start;gap:4px}.technology-icon{display:none}.technology-copy{gap:2px}.technology-label{-webkit-line-clamp:2;font-size:.68rem}.technology-effect{font-size:.6rem}.technology-meta{font-size:.58rem;gap:3px}.progress-rail{flex-wrap:wrap;align-content:center}.cosmic-ending-beats{grid-template-columns:1fr}.cosmic-ending-panel{max-height:calc(100dvh - 24px);overflow:auto}.era-pill,.stage-dot{min-height:30px;padding:0 8px;font-size:.7rem}}@media(max-width:560px){.intro-skip{top:14px;right:14px}.intro-enter{right:14px;bottom:14px;left:14px}.scene-layer{padding-top:calc(var(--hud-edge) + var(--energy-header-height) + var(--hud-gap))}.central-playfield-slot{height:min(290px,35dvh);min-height:220px}.energy-header{align-items:flex-start;gap:10px;padding:12px;padding-right:calc(12px + var(--restart-button-size) + 8px)}.energy-value{font-size:1.65rem}.rate-cluster{min-width:96px;font-size:.78rem}.energy-actions{gap:6px}.restart-run-button--floating{width:var(--restart-button-size);padding:0}.restart-run-button--floating .restart-run-button-label{display:none}.sandbox-run-button{width:34px;padding:0}.sandbox-run-button-label{display:none}.source-heading,.source-rates{display:grid;justify-content:stretch;gap:4px}.source-heading strong{justify-self:start}.purchase-card,.advance-age-card{grid-template-columns:32px minmax(0,1fr)}.purchase-asset,.advance-icon{width:32px;height:32px}.purchase-asset img,.technology-icon img{width:30px;height:30px}.purchase-meta,.advance-meta{grid-column:2;grid-row:2;display:flex;justify-content:flex-start;gap:8px}.technology-card{grid-template-columns:minmax(0,1fr)}.technology-meta{grid-column:1;grid-row:auto;display:flex;justify-content:space-between;gap:4px}}@media(max-width:960px)and (max-height:520px)and (orientation:landscape){.game-screen{--hud-edge: 6px;--hud-gap: 6px;--energy-header-height: 38px;--objective-strip-height: 0px;--side-panel-top: calc(var(--hud-edge) + var(--energy-header-height) + var(--hud-gap));--tech-rail-height: 50px;--progress-rail-height: 26px;--mix-panel-width: clamp(96px, 12vw, 112px);--purchase-panel-width: clamp(142px, 18vw, 168px);--bottom-zone-height: calc( var(--progress-rail-height) + var(--tech-rail-height) + var(--hud-gap) + var(--hud-edge) );--island-size: clamp(82px, 10.5vw, 104px);--island-center-x: 50%;--island-center-y: 46%;--scene-safe-top: calc(var(--hud-edge) + var(--energy-header-height) + var(--hud-gap));--scene-safe-right: calc(var(--purchase-panel-width) + var(--hud-edge) + var(--hud-gap));--scene-safe-bottom: calc(var(--bottom-zone-height) + var(--hud-gap));--scene-safe-left: calc(var(--mix-panel-width) + var(--hud-edge) + var(--hud-gap));--restart-button-size: 30px;--restart-button-space: 12px}.scene-layer{padding:var(--scene-safe-top) var(--scene-safe-right) var(--scene-safe-bottom) var(--scene-safe-left)}.central-playfield-slot{width:100%;height:100%;min-height:0}.central-hotspot{width:100%;height:100%}.energy-islands-layer{opacity:1}.energy-island-float{animation-name:islandFloatMobile;animation-duration:8.4s}.energy-header{right:auto;left:50%;width:min(292px,calc(100vw - 84px));min-height:var(--energy-header-height);align-items:center;gap:8px;padding:5px 9px;transform:translate(-50%)}.objective-strip,.breakthrough-toast{display:none}.metric-kicker{font-size:.56rem}.energy-value{font-size:1.16rem}.rate-cluster{min-width:74px;gap:2px;font-size:.58rem}.rate-cluster span{gap:4px}.restart-run-button--floating{width:var(--restart-button-size);min-height:var(--restart-button-size);padding:0}.restart-run-button--floating .restart-run-button-label{display:none}.sandbox-run-button{width:var(--restart-button-size);min-height:var(--restart-button-size);padding:0}.sandbox-run-button-label{display:none}.mix-panel,.purchase-panel{top:var(--side-panel-top);bottom:auto;height:auto;max-height:min(108px,calc(100dvh - var(--side-panel-top) - var(--bottom-zone-height) - var(--hud-gap)));padding:6px}.mix-panel{left:var(--hud-edge);width:var(--mix-panel-width)}.purchase-panel{right:var(--hud-edge);width:var(--purchase-panel-width)}.panel-title{gap:5px;margin-bottom:5px}.panel-title h2{font-size:.68rem}.rail-count,.age-description,.mix-legend-rates,.advance-description,.purchase-effect{display:none}.mix-chart{gap:5px}.mix-pie{width:min(50px,100%)}.mix-legend{gap:3px}.mix-legend-item{grid-template-columns:6px minmax(0,1fr);gap:4px}.mix-legend-marker{width:6px;height:16px}.mix-legend-label,.mix-legend-share{font-size:.52rem}.purchase-panel-header{gap:5px;margin-bottom:5px}.purchase-list{gap:5px}.purchase-card{grid-template-columns:24px minmax(0,1fr) auto;min-height:30px;gap:5px;padding:4px}.purchase-card .source-chip{display:none}.purchase-asset{width:24px;height:24px}.purchase-asset img{width:22px;height:22px}.purchase-copy{gap:2px}.purchase-label{font-size:.58rem;line-height:1.05}.purchase-meta{grid-column:auto;grid-row:auto;display:grid;min-width:36px;gap:2px;font-size:.5rem}.advance-age-card{grid-template-columns:24px minmax(0,1fr) auto;min-height:30px;gap:5px;margin-top:5px;padding:4px}.advance-icon{width:24px;height:24px}.advance-label{font-size:.58rem}.advance-meta{grid-column:auto;grid-row:auto;font-size:.5rem}.tech-rail{right:var(--hud-edge);bottom:calc(var(--hud-edge) + var(--progress-rail-height) + var(--hud-gap));left:var(--hud-edge);display:grid;grid-template-columns:auto minmax(0,1fr);align-items:center;gap:6px;max-height:var(--tech-rail-height);overflow:hidden;padding:5px 7px}.tech-rail-header,.tech-rail-header .panel-title{margin-bottom:0}.technology-list{gap:4px}.technology-card{grid-template-columns:minmax(0,1fr);min-height:38px;gap:2px;padding:4px}.technology-icon{display:none}.technology-label{-webkit-line-clamp:2;font-size:.52rem;line-height:1.06}.technology-effect{font-size:.48rem}.technology-meta{display:flex;grid-column:auto;grid-row:auto;justify-content:space-between;gap:4px;font-size:.48rem}.progress-rail{min-height:var(--progress-rail-height);gap:5px;flex-wrap:nowrap}.era-pill,.stage-dot{min-height:24px;padding:0 6px;font-size:.54rem}}@media(max-width:760px)and (orientation:portrait){.game-screen{--island-size: 64px;--island-center-y: 34%}.rotate-device-overlay{display:grid}}@media(prefers-reduced-motion:reduce){.energy-island-float{animation:none}.age-transition-overlay,.age-transition-ring,.age-transition-card,.breakthrough-toast,.breakthrough-orbit,.cosmic-ending-beat{animation-duration:1ms}}
