*,:after,:before{--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:#3b82f680;--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:#3b82f680;--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: }
/* ! tailwindcss v3.4.18 | MIT License | https://tailwindcss.com */*,:after,:before{border:0 solid #e5e7eb;box-sizing:border-box}:after,:before{--tw-content:""}:host,html{-webkit-text-size-adjust:100%;font-feature-settings:normal;-webkit-tap-highlight-color:transparent;font-family:ui-sans-serif,system-ui,sans-serif,Apple Color Emoji,Segoe UI Emoji,Segoe UI Symbol,Noto Color Emoji;font-variation-settings:normal;line-height:1.5;tab-size:4}body{line-height:inherit}hr{border-top-width:1px;color:inherit;height:0}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,pre,samp{font-feature-settings:normal;font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,Liberation Mono,Courier New,monospace;font-size:1em;font-variation-settings:normal}small{font-size:80%}sub,sup{font-size:75%;line-height:0;position:relative;vertical-align:initial}sub{bottom:-.25em}sup{top:-.5em}table{border-collapse:collapse;border-color:inherit;text-indent:0}button,input,optgroup,select,textarea{font-feature-settings:inherit;color:inherit;font-family:inherit;font-size:100%;font-variation-settings:inherit;font-weight:inherit;letter-spacing:inherit;line-height: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:initial;background-image:none}:-moz-focusring{outline:auto}:-moz-ui-invalid{box-shadow:none}progress{vertical-align:initial}::-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,dd,dl,figure,h1,h2,h3,h4,h5,h6,hr,p,pre{margin:0}fieldset{margin:0}fieldset,legend{padding:0}menu,ol,ul{list-style:none;margin:0;padding:0}dialog{padding:0}textarea{resize:vertical}input::placeholder,textarea::placeholder{color:#9ca3af;opacity:1}[role=button],button{cursor:pointer}:disabled{cursor:default}audio,canvas,embed,iframe,img,object,svg,video{display:block;vertical-align:middle}img,video{height:auto;max-width:100%}[hidden]:where(:not([hidden=until-found])){display:none}.container{width:100%}@media (min-width:640px){.container{max-width:640px}}@media (min-width:768px){.container{max-width:768px}}@media (min-width:1024px){.container{max-width:1024px}}@media (min-width:1280px){.container{max-width:1280px}}@media (min-width:1536px){.container{max-width:1536px}}.visible{visibility:visible}.static{position:static}.absolute{position:absolute}.relative{position:relative}.-left-9{left:-2.25rem}.mb-10{margin-bottom:2.5rem}.mb-2{margin-bottom:.5rem}.ml-6{margin-left:1.5rem}.block{display:block}.inline{display:inline}.flex{display:flex}.table{display:table}.grid{display:grid}.hidden{display:none}.h-4{height:1rem}.w-4{width:1rem}.transform{transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.resize{resize:both}.items-center{align-items:center}.justify-center{justify-content:center}.rounded{border-radius:.25rem}.rounded-full{border-radius:9999px}.border{border-width:1px}.border-l{border-left-width:1px}.border-gray-200{--tw-border-opacity:1;border-color:#e5e7eb;border-color:rgb(229 231 235/var(--tw-border-opacity,1))}.text-2xl{font-size:1.5rem;line-height:2rem}.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}.font-bold{font-weight:700}.font-normal{font-weight:400}.font-semibold{font-weight:600}.leading-none{line-height:1}.text-gray-400{--tw-text-opacity:1;color:#9ca3af;color:rgb(156 163 175/var(--tw-text-opacity,1))}.text-gray-500{--tw-text-opacity:1;color:#6b7280;color:rgb(107 114 128/var(--tw-text-opacity,1))}.text-gray-900{--tw-text-opacity:1;color:#111827;color:rgb(17 24 39/var(--tw-text-opacity,1))}.shadow{--tw-shadow:0 1px 3px 0 #0000001a,0 1px 2px -1px #0000001a;--tw-shadow-colored:0 1px 3px 0 var(--tw-shadow-color),0 1px 2px -1px var(--tw-shadow-color);box-shadow:0 0 #0000,0 0 #0000,var(--tw-shadow);box-shadow:var(--tw-ring-offset-shadow,0 0 #0000),var(--tw-ring-shadow,0 0 #0000),var(--tw-shadow)}.outline{outline-style:solid}.ring{--tw-ring-offset-shadow:var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);--tw-ring-shadow:var(--tw-ring-inset) 0 0 0 calc(3px + var(--tw-ring-offset-width)) var(--tw-ring-color);box-shadow:var(--tw-ring-offset-shadow),var(--tw-ring-shadow),0 0 #0000;box-shadow:var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow,0 0 #0000)}.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)}.transition{transition-duration:.15s;transition-property:color,background-color,border-color,fill,stroke,opacity,box-shadow,transform,filter,-webkit-text-decoration-color,-webkit-backdrop-filter;transition-property:color,background-color,border-color,text-decoration-color,fill,stroke,opacity,box-shadow,transform,filter,backdrop-filter;transition-property:color,background-color,border-color,text-decoration-color,fill,stroke,opacity,box-shadow,transform,filter,backdrop-filter,-webkit-text-decoration-color,-webkit-backdrop-filter;transition-timing-function:cubic-bezier(.4,0,.2,1)}body{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,Fira Sans,Droid Sans,Helvetica Neue,sans-serif;margin:0}code{font-family:source-code-pro,Menlo,Monaco,Consolas,Courier New,monospace}@media (max-width:768px){.about-container{flex-direction:column}.about-text,.profile-image{flex-basis:100%;order:0}}.btn{background:#333;border-radius:25px;color:#fff;display:inline-block;padding:10px 20px;text-decoration:none;transition:background .3s ease}.btn-small:hover,.btn:hover{background:#18e}@media (max-width:768px){body{font-size:14px}}@media (prefers-color-scheme:dark){.dark\:border-gray-700{--tw-border-opacity:1;border-color:#374151;border-color:rgb(55 65 81/var(--tw-border-opacity,1))}.dark\:bg-blue-400{--tw-bg-opacity:1;background-color:#60a5fa;background-color:rgb(96 165 250/var(--tw-bg-opacity,1))}.dark\:text-black{--tw-text-opacity:1;color:#000;color:rgb(0 0 0/var(--tw-text-opacity,1))}.dark\:text-gray-400{--tw-text-opacity:1;color:#9ca3af;color:rgb(156 163 175/var(--tw-text-opacity,1))}.dark\:text-gray-500{--tw-text-opacity:1;color:#6b7280;color:rgb(107 114 128/var(--tw-text-opacity,1))}}body,h1,h2,p{margin:0;padding:0}body{font-family:Jost,sans-serif;line-height:1.6}.container{margin:auto;overflow:hidden;width:60%}header{align-items:center;background:#eee;display:flex;justify-content:space-between;padding:20px 0}.name{flex-grow:1;font-weight:700;margin-left:20px}.name a{color:#333;display:inline-block;text-decoration:none;transition:color .3s ease,transform .3s ease}.name a:hover,.navigation .social-icon:hover,.navigation a:hover{color:#18e;transform:scale(1.04)}.navigation{align-items:center;display:flex;justify-content:flex-end}.navigation a{color:#333;margin-left:20px;text-decoration:none;transition:color .3s ease,transform .3s ease}.social-icon{height:24px;transition:filter .3s ease,transform .3s ease;width:24px}.navigation .social-icon{filter:grayscale(100%);transition:filter .3s ease}.navigation .social-icon:hover{filter:none;transform:none}.header-centered{background:linear-gradient(220deg,#0ac850cc,#ff7f3f00 70.71%),linear-gradient(130deg,#0032aacc,#007fff00 70.71%),linear-gradient(340deg,#6400aacc,#00c8ff00 70.71%);color:#fff;padding:50px 0;text-align:center}.header-centered h1{font-size:2.5em}.header-centered p{font-size:1.2em;margin-top:.5em}.header-centered-reversed{background:linear-gradient(-220deg,#0ac850cc,#ff7f3f00 70.71%),linear-gradient(-130deg,#0032aacc,#007fff00 70.71%),linear-gradient(-340deg,#6400aacc,#00c8ff00 70.71%);color:#fff;padding:50px 0;text-align:center}.header-centered-reversed h1{font-size:2.5em}.header-centered-reversed p{font-size:1.2em;margin-top:.5em}.about-me{padding:20px 0}.about-container{align-items:center;display:flex;flex-wrap:wrap;justify-content:space-between}.profile-image{flex-basis:35%;order:-1;padding:10px}.profile-image img{height:auto;max-width:100%}.about-text{flex-basis:60%;padding:10px}.button-container{display:flex;flex-wrap:wrap;gap:8px}.btn-large,.btn-large a,.btn-large button{background:#333;border:none;border-radius:25px;color:#fff;display:inline-block;font-family:Jost,sans-serif;font-size:1em;line-height:1.6;outline:none;padding:10px 20px;text-decoration:none;transition:background .3s ease}.btn-large:first-child,.btn-small:first-child{margin-left:0}.btn-small{background:#333;border-radius:13px;color:#fff;display:inline-block;margin-bottom:3px;margin-left:10px;margin-top:2px;padding:5px 10px;text-decoration:none;transition:background .3s ease}.btn-large a:hover,.btn-large button:hover,.btn-large:hover,.btn-small:hover{background:#18e}.project-header{align-items:center;display:flex}.project-item h2{flex-grow:0;margin:0}.highlighted-text{color:blue;cursor:pointer}.tooltip{word-wrap:break-word;background-color:#fff;border:1px solid #000;border-radius:5px;box-shadow:0 0 10px #0000001a;max-width:300px;padding:10px;position:fixed;transform:translate(-50%,-100%);z-index:1000}.badge-overlay{align-items:flex-end;display:flex;inset:0;justify-content:flex-end;pointer-events:none;position:fixed;z-index:2000}.badge-toast{-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);background:#1e1e1ee6;border-radius:12px;box-shadow:0 12px 24px #0003;color:#fff;margin:0 24px 80px 0;max-width:320px;min-width:200px;padding:16px 20px;pointer-events:auto;transition:transform .3s ease,opacity .3s ease,pointer-events 0s linear .3s}.badge-toast h3{font-size:1.1rem;margin:0 0 4px}.badge-toast p{font-size:.9rem;margin:0;opacity:.9}@media (min-width:1200px){.profile-image img{margin:0 auto;max-width:70%}.container{width:70%}}@media (max-width:768px){.btn-large,.btn-small{margin-bottom:10px}.btn-small{flex:1 1;min-width:0;padding:5px 10px;text-align:center;white-space:normal}.button-container{flex-direction:row}.btn-large{flex:1 1;min-width:0;padding:15px 10px;text-align:center;white-space:normal}.profile-image img{display:block;margin:0 auto;max-width:70%}.container{width:90%}h1{font-size:medium}.about-container{flex-direction:column}.about-text,.profile-image{flex-basis:100%;order:0}}.timeline{border-left:2px solid #e5e7eb;padding-left:1.5rem;position:relative}.timeline-item{margin-left:0;position:relative}@media (min-width:1200px){.timeline{border-left:none;border-top:2px solid #e5e7eb;display:flex;flex-direction:row-reverse;justify-content:space-between;padding-left:0;padding-top:1.5rem}.timeline-item{flex:1 1;margin-right:10px;padding-bottom:0;padding-top:0;text-align:left}.timeline-item h3{font-size:.95rem;line-height:1.25;margin-bottom:.25rem}.timeline-item time{font-size:.8rem}.timeline-item p,.timeline-item time{line-height:1.25rem;margin-bottom:.25rem}.timeline-item p{font-size:.875rem}.timeline-item span{left:0;top:-2.1rem}}.badge-stats-icon{align-items:center;background:linear-gradient(135deg,#1e88e5f2,#1877f2f2);border-radius:50%;bottom:20px;box-shadow:0 4px 12px #0003;color:#fff;cursor:pointer;display:flex;height:44px;justify-content:center;position:fixed;right:20px;transition:transform .2s ease,box-shadow .2s ease;width:44px;z-index:1999}.badge-stats-icon:hover{box-shadow:0 6px 16px #0000004d;transform:scale(1.1)}.badge-stats-icon svg{height:22px;width:22px}.badge-count{align-items:center;background:#f44;border:2px solid #fff;border-radius:50%;color:#fff;display:flex;font-size:11px;font-weight:700;height:20px;justify-content:center;position:absolute;right:-4px;top:-4px;width:20px}.badge-stats-tooltip{-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);background:#1e1e1ef2;border-radius:12px;bottom:70px;box-shadow:0 8px 24px #0000004d;color:#fff;min-width:200px;padding:16px;pointer-events:none;position:absolute;right:0}.badge-stats-header{border-bottom:1px solid #fff3;margin-bottom:8px;padding-bottom:8px}.badge-stats-header strong{font-size:1rem}.badge-stats-content{font-size:.9rem;line-height:1.6}.badge-stats-content p{margin:4px 0}.party-rank{border-top:1px solid #fff3;color:gold;font-weight:600;margin-top:8px!important;padding-top:8px}@media (max-width:768px){.badge-stats-icon{bottom:16px;height:48px;right:16px;width:48px}.badge-stats-icon svg{height:24px;width:24px}.badge-stats-tooltip{min-width:180px;right:0}}.site-footer{background:linear-gradient(-220deg,#0ac850cc,#ff7f3f00 70.71%),linear-gradient(-130deg,#0032aacc,#007fff00 70.71%),linear-gradient(-340deg,#6400aacc,#00c8ff00 70.71%);color:#fff;margin-top:20px;padding:40px 0;text-align:center}.footer-content{align-items:center;display:flex;justify-content:center}.footer-badge-message{align-items:center;display:flex;flex-direction:column;gap:12px}.badge-emoji{animation:bounce 2s infinite;font-size:3rem}.footer-badge-message p{font-size:1.2rem;font-weight:500;margin:0}@media (max-width:768px){.site-footer{padding:30px 0}.badge-emoji{font-size:2.5rem}.footer-badge-message p{font-size:1rem}}.App-logo{height:40vmin;pointer-events:none}@media (prefers-reduced-motion:no-preference){.App-logo{animation:App-logo-spin 20s linear infinite}}.App-header{align-items:center;background-color:#282c34;color:#fff;display:flex;flex-direction:column;font-size:calc(10px + 2vmin);justify-content:center;min-height:100vh}.App-link{color:#61dafb}@keyframes App-logo-spin{0%{transform:rotate(0deg)}to{transform:rotate(1turn)}}.tech-tree-simple{background:#0d1117;border-radius:12px;color:#e0e0e0;max-height:70vh;overflow-y:auto;padding:20px}.tech-tree-simple .tree-header{align-items:center;border-bottom:1px solid #ffffff1a;display:flex;justify-content:space-between;margin-bottom:20px;padding-bottom:16px}.tech-tree-simple .tree-header h2{color:#fff;font-size:1.4rem;margin:0}.tree-resources{display:flex;gap:16px}.insight-display{background:#ffc83226;border-radius:6px;color:#ffc832;font-weight:700;padding:6px 12px}.progress-display{background:#58a6ff26;border-radius:6px;color:#58a6ff;padding:6px 12px}.branches-container{display:flex;flex-direction:column;gap:20px}.branch-section{background:#ffffff05;border-left:4px solid;border-radius:8px;padding:12px 16px}.branch-header{align-items:center;display:flex;gap:12px;margin-bottom:12px}.branch-name{font-size:1.1rem;font-weight:700}.branch-desc{color:#888;font-size:.85rem}.branch-nodes{display:flex;flex-direction:column;gap:8px}.tech-node-row{align-items:center;background:#0000004d;border-radius:8px;display:flex;justify-content:space-between;padding:12px;transition:all .2s}.tech-node-row:hover{background:#ffffff0d}.tech-node-row.researched{background:#4caf501a;border:1px solid #4caf504d}.tech-node-row.available:not(.researched){background:#58a6ff1a;border:1px solid #58a6ff4d}.node-main{align-items:flex-start;display:flex;flex:1 1;gap:12px}.node-status{font-size:1.2rem;min-width:28px}.node-info{flex:1 1}.node-title{align-items:center;display:flex;gap:10px;margin-bottom:4px}.node-name{color:#fff;font-weight:700}.node-cost{background:#0000004d;border-radius:4px;color:#888;font-size:.8rem;padding:2px 8px}.node-cost.affordable{background:#4caf5026;color:#4caf50}.node-cost.free{background:#58a6ff26;color:#58a6ff}.node-desc{color:#aaa;font-size:.85rem;margin-bottom:6px}.node-effects{display:flex;flex-wrap:wrap;gap:6px}.effect-badge{background:#4caf5026;border-radius:4px;color:#4caf50;font-size:.75rem;padding:3px 8px}.node-prereqs{color:#888;font-size:.8rem;margin-top:6px}.node-prereqs .done{color:#4caf50}.research-btn{background:linear-gradient(135deg,#58a6ff,#a371f7);border:none;border-radius:6px;color:#fff;cursor:pointer;font-size:.85rem;font-weight:700;min-width:100px;padding:8px 16px;transition:all .2s}.research-btn:hover:not(:disabled){box-shadow:0 4px 12px #58a6ff4d;transform:scale(1.05)}.research-btn:disabled{background:#333;color:#666;cursor:not-allowed}.researched-badge{color:#4caf50;font-size:.9rem;font-weight:700;padding:8px 12px}.tech-tree-simple::-webkit-scrollbar{width:8px}.tech-tree-simple::-webkit-scrollbar-track{background:#0003;border-radius:4px}.tech-tree-simple::-webkit-scrollbar-thumb{background:#fff3;border-radius:4px}.tech-tree-simple::-webkit-scrollbar-thumb:hover{background:#ffffff4d}@media (max-width:600px){.tech-tree-simple .tree-header{align-items:flex-start;flex-direction:column;gap:12px}.tech-node-row{align-items:stretch;flex-direction:column;gap:12px}.research-btn{width:100%}}.celebrate-page{background:linear-gradient(220deg,#0ac850cc,#ff7f3f00 70.71%),linear-gradient(130deg,#0032aacc,#007fff00 70.71%),linear-gradient(340deg,#6400aacc,#00c8ff00 70.71%);min-height:100vh;padding:20px;position:relative;transition:all .3s ease}.celebrate-page.shake{animation:shake .5s cubic-bezier(.36,.07,.19,.97) both}@keyframes shake{10%,90%{transform:translate3d(-2px,0,0)}20%,80%{transform:translate3d(4px,0,0)}30%,50%,70%{transform:translate3d(-8px,0,0)}40%,60%{transform:translate3d(8px,0,0)}}.back-button{background:#333;border-radius:25px;color:#fff;font-family:Jost,sans-serif;font-weight:600;left:20px;padding:10px 20px;position:fixed;text-decoration:none;top:20px;transition:all .3s ease;z-index:100}.back-button:hover{background:#18e;transform:translateX(-5px)}.celebrate-container{margin:0 auto;max-width:1200px;padding-top:40px}.celebrate-header{color:#fff;margin-bottom:40px;text-align:center}.celebrate-header h1{font-size:2.5rem;font-weight:600;margin-bottom:30px}.celebrate-stats{display:flex;flex-wrap:wrap;gap:60px;justify-content:center}.stat-item{align-items:center;display:flex;flex-direction:column;gap:8px}.stat-label{font-size:.95rem;font-weight:400;opacity:.85}.stat-value{font-size:2.5rem;font-weight:600}.celebrate-main{grid-gap:30px;align-items:start;display:grid;gap:30px;grid-template-columns:1fr 400px}.clicker-section{min-height:500px}.clicker-section,.mega-celebrate-button{align-items:center;display:flex;justify-content:center}.mega-celebrate-button{background:linear-gradient(135deg,#00cccce6,#0088cce6 50%,#00cc66e6);border:4px solid #ffffff4d;border-radius:50%;cursor:pointer;flex-direction:column;font-family:Jost,sans-serif;gap:10px;height:280px;position:relative;transition:all .2s ease;-webkit-user-select:none;user-select:none;width:280px}.mega-celebrate-button:hover{background:linear-gradient(135deg,#0cc,#08c 50%,#0c6);transform:scale(1.05)}.mega-celebrate-button.holding,.mega-celebrate-button:active{transform:scale(.95)}.celebrate-text{color:#fff;font-size:2rem;font-weight:600}.celebrate-hint{color:#ffffffb3;font-size:.9rem;text-align:center}.upgrades-section{background:#fffffff2;border-radius:20px;box-shadow:0 10px 40px #0003;max-height:600px;overflow-y:auto;padding:25px}.upgrades-section h2{color:#333;font-size:1.8rem;margin-bottom:20px;margin-top:0}.upgrades-list{display:flex;flex-direction:column;gap:15px}.upgrade-item{background:#fff;border:2px solid #e0e0e0;border-radius:12px;cursor:pointer;padding:15px;transition:all .2s ease}.upgrade-item:hover{box-shadow:0 4px 12px #0000001a;transform:translateY(-2px)}.upgrade-item.can-afford{background:linear-gradient(135deg,#00cccc1a,#0088cc1a);border-color:#0cc}.upgrade-item.can-afford:hover{background:linear-gradient(135deg,#0cc3,#08c3);border-color:#08c}.upgrade-item.cannot-afford{cursor:not-allowed;opacity:.6}.upgrade-header{align-items:center;display:flex;justify-content:space-between;margin-bottom:8px}.upgrade-name{color:#333;font-size:1.1rem;font-weight:700}.upgrade-owned{background:linear-gradient(135deg,#08c,#0cc);border-radius:15px;color:#fff;font-size:.9rem;font-weight:700;padding:4px 12px}.upgrade-description{color:#666;font-size:.9rem;margin-bottom:10px}.upgrade-footer{align-items:center;display:flex;justify-content:space-between}.upgrade-cps{color:#0c6}.upgrade-cost,.upgrade-cps{font-size:.9rem;font-weight:600}.upgrade-cost{color:#08c}@media (max-width:1024px){.celebrate-main{grid-template-columns:1fr}.upgrades-section{max-height:none}}@media (max-width:768px){.celebrate-header h1,.stat-value{font-size:2rem}.mega-celebrate-button{height:240px;width:240px}.celebrate-text{font-size:1.7rem}.celebrate-hint{font-size:.85rem}.back-button{font-size:.9rem;padding:8px 16px}}.event-message{animation:slideDown .5s ease,pulse 1s ease infinite;background:linear-gradient(135deg,#ffd700f2,#ffa500f2);border-radius:30px;box-shadow:0 8px 30px #0000004d;color:#333;font-family:Jost,sans-serif;font-size:1.2rem;font-weight:600;left:50%;padding:15px 30px;position:fixed;top:100px;transform:translateX(-50%);z-index:1000}@keyframes slideDown{0%{opacity:0;top:-100px}to{opacity:1;top:100px}}@keyframes pulse{0%,to{transform:translateX(-50%) scale(1)}50%{transform:translateX(-50%) scale(1.05)}}.achievement-popup{animation:popIn .5s cubic-bezier(.68,-.55,.27,1.55);background:linear-gradient(135deg,#ffd700fa,#ff8c00fa);border-radius:20px;box-shadow:0 10px 50px #00000080;color:#333;font-family:Jost,sans-serif;left:50%;min-width:300px;padding:30px 40px;position:fixed;text-align:center;top:50%;transform:translate(-50%,-50%);z-index:1001}.achievement-popup h3{font-size:1.8rem;margin:0 0 10px}.achievement-popup p{font-size:1.3rem;font-weight:600;margin:10px 0}.achievement-popup small{display:block;margin-top:5px;opacity:.8}.achievement-reward{background:#fff6;border-radius:15px;font-size:1.1rem;font-weight:700;margin-top:15px;padding:10px 20px}@keyframes popIn{0%{opacity:0;transform:translate(-50%,-50%) scale(0)}to{opacity:1;transform:translate(-50%,-50%) scale(1)}}.golden-celebration{animation:float 3s ease-in-out infinite,spin 4s linear infinite,glow 1.5s ease-in-out infinite;cursor:pointer;filter:drop-shadow(0 0 10px rgba(255,215,0,.8));font-size:3rem;position:fixed;transition:transform .2s ease;z-index:999}.golden-celebration:hover{transform:scale(1.3)}.golden-value{color:gold;font-family:Jost,sans-serif;font-size:.5rem;font-weight:700;left:50%;position:absolute;text-shadow:0 0 5px #00000080;top:-30px;transform:translateX(-50%);white-space:nowrap}@keyframes float{0%,to{transform:translateY(0)}50%{transform:translateY(-20px)}}@keyframes spin{0%{transform:rotate(0deg)}to{transform:rotate(1turn)}}@keyframes glow{0%,to{filter:drop-shadow(0 0 10px rgba(255,215,0,.8))}50%{filter:drop-shadow(0 0 25px rgba(255,215,0,1))}}.prestige-badge{background:linear-gradient(135deg,#ffd700e6,#ff8c00e6);border-radius:20px;color:#333;font-size:.8rem;font-weight:600;margin-left:15px;padding:5px 15px}.combo-display{animation:comboPulse .5s ease}.combo-display .stat-value{color:gold!important;text-shadow:0 0 10px #ffd700cc}@keyframes comboPulse{0%,to{transform:scale(1)}50%{transform:scale(1.1)}}.active-powerups{display:flex;flex-wrap:wrap;gap:15px;justify-content:center;margin-top:20px}.powerup-badge{align-items:center;animation:powerupGlow 2s ease-in-out infinite;background:linear-gradient(135deg,#8a2be2e6,#4b0082e6);border-radius:24px;box-shadow:0 4px 15px #8a2be266;color:#fff;display:inline-flex;font-family:Jost,sans-serif;font-weight:600;gap:12px;min-width:170px;padding:10px 18px;transition:transform .2s ease,box-shadow .2s ease}.powerup-badge.is-hovered{box-shadow:0 6px 20px #8a2be299;transform:translateY(-3px)}.powerup-emoji{font-size:1.6rem}.powerup-text{display:flex;flex-direction:column;line-height:1.2}.powerup-text strong{font-size:1rem}.powerup-text p{color:#ffffffe6;font-size:.9rem;font-weight:500;margin:2px 0 0}.powerup-name{display:block;font-size:1rem}.powerup-timer{background:#fff3;border-radius:10px;font-size:.85rem;padding:2px 8px}@keyframes powerupGlow{0%,to{box-shadow:0 4px 15px #8a2be266}50%{box-shadow:0 4px 25px #8a2be2cc}}.button-powerup-icons{animation:bounce 1s ease infinite;bottom:10px;display:flex;font-size:1.5rem;gap:5px;position:absolute}@keyframes bounce{0%,to{transform:translateY(0)}50%{transform:translateY(-10px)}}.mega-celebrate-button.combo-active{animation:comboGlow .5s ease infinite;box-shadow:0 0 30px #ffd700cc}@keyframes comboGlow{0%,to{box-shadow:0 0 30px #ffd700cc}50%{box-shadow:0 0 50px gold}}.stats-panel{background:#fffffff2;border-radius:20px;box-shadow:0 10px 40px #0003;font-family:Jost,sans-serif;margin-top:30px;padding:25px}.stats-panel h3{color:#333;font-size:1.5rem;margin-bottom:15px;margin-top:0}.stat-row{border-bottom:1px solid #0000001a;color:#333;display:flex;justify-content:space-between;padding:10px 0}.stat-row:last-child{border-bottom:none}.prestige-button{align-items:center;background:linear-gradient(135deg,#8a2be299,#4b008299);border:2px solid #8a2be2cc;border-radius:15px;color:#fff;cursor:not-allowed;display:flex;flex-direction:column;font-family:Jost,sans-serif;font-size:1.1rem;font-weight:700;gap:5px;margin-top:20px;opacity:.6;padding:15px;transition:all .3s ease;width:100%}.prestige-button small{font-size:.85rem;font-weight:400}.prestige-button.can-prestige{animation:prestigePulse 2s ease infinite;background:linear-gradient(135deg,#ffd700e6,#ff8c00e6);border-color:gold;color:#333;cursor:pointer;opacity:1}.prestige-button.can-prestige:hover{box-shadow:0 8px 30px #ffd70099;transform:scale(1.05)}@keyframes prestigePulse{0%,to{box-shadow:0 4px 20px #ffd70066}50%{box-shadow:0 4px 35px #ffd700cc}}.achievements-section{border-top:2px solid #0000001a;margin-top:30px;padding-top:20px}.achievements-section h3{color:#333;font-size:1.3rem;margin-bottom:15px}.achievements-grid{grid-gap:10px;display:grid;gap:10px;grid-template-columns:repeat(auto-fill,minmax(140px,1fr))}.achievement-item{background:#ffffff80;border:2px solid #0000001a;border-radius:10px;padding:10px;text-align:center;transition:all .2s ease}.achievement-item.unlocked{background:linear-gradient(135deg,#ffd7004d,#ff8c004d);border-color:#ffd70080}.achievement-item:hover{box-shadow:0 4px 12px #00000026;transform:translateY(-3px)}.achievement-icon{display:block;font-size:2rem;margin-bottom:5px}.achievement-name{color:#333;display:block;font-size:.85rem;font-weight:600}.achievement-item.locked{opacity:.5}.achievement-item.locked .achievement-name{color:#666}.manage-factory-button{background:linear-gradient(135deg,#667eea,#764ba2);padding:10px 20px}.manage-factory-button:hover{box-shadow:0 4px 12px #667eea66;transform:translateY(-2px)}.factory-minigames{background:#9c88ff1a;border:2px solid #9c88ff4d;border-radius:10px;display:flex;flex-direction:column;gap:10px;padding:15px}.factory-minigames .minigame-button{background:linear-gradient(135deg,#667eea,#764ba2);border:none;border-radius:8px;color:#fff;cursor:pointer;font-family:Jost,sans-serif;font-size:1rem;font-weight:600;padding:12px;transition:all .3s ease}.factory-minigames .minigame-button:hover{box-shadow:0 4px 12px #667eea66;transform:translateY(-2px)}.resource-requirements{background:#ffd7001a;border:2px solid #ffd7004d;border-radius:8px;margin-top:10px;padding:10px}.requirements-text{color:#666;font-weight:600;margin:0;text-align:center}.factory-access-button{background:linear-gradient(135deg,#667eea,#764ba2);border:none;border-radius:15px;box-shadow:0 4px 15px #667eea66;color:#fff;cursor:pointer;font-family:Jost,sans-serif;font-size:1.2rem;font-weight:700;margin-bottom:20px;padding:15px 30px;transition:all .3s ease;width:100%}.factory-access-button:hover{box-shadow:0 6px 20px #667eea99;transform:translateY(-3px)}@media (max-width:768px){.event-message{font-size:1rem;padding:12px 24px}.achievement-popup{min-width:250px;padding:20px 30px}.achievement-popup h3{font-size:1.5rem}.golden-celebration{font-size:2rem}.active-powerups{gap:10px}.powerup-badge{min-width:150px;padding:8px 14px}.powerup-emoji{font-size:1.4rem}.powerup-name,.powerup-text strong{font-size:.95rem}.powerup-text p{font-size:.85rem}.stats-panel{padding:20px}.achievements-grid{gap:8px;grid-template-columns:repeat(auto-fill,minmax(100px,1fr))}.achievement-item{padding:8px}.achievement-icon{font-size:1.5rem}.achievement-name{font-size:.75rem}}.fortune-cookie{animation:slideInRight .5s ease,float 3s ease-in-out infinite;background:linear-gradient(135deg,#ffdfbafa,#ffcc80fa);border-radius:20px;bottom:30px;box-shadow:0 8px 30px #0000004d;color:#8b4513;font-family:Jost,sans-serif;font-size:1rem;font-weight:600;max-width:300px;padding:15px 25px;position:fixed;right:30px;z-index:1000}@keyframes slideInRight{0%{opacity:0;right:-400px}to{opacity:1;right:30px}}.party-guest{align-items:center;animation:slideInLeft .5s ease,bounce 2s ease-in-out infinite;background:linear-gradient(135deg,#fffffffa,#f0f8fffa);border-radius:20px;bottom:100px;box-shadow:0 8px 30px #0000004d;display:flex;font-family:Jost,sans-serif;gap:15px;left:30px;max-width:320px;padding:20px;position:fixed;z-index:1000}.guest-emoji{font-size:3rem}.guest-info{display:flex;flex-direction:column;gap:5px}.guest-info strong{color:#333;font-size:1.1rem}.guest-info p{color:#666;font-size:.9rem;margin:0}.guest-gift{color:#0c6;font-size:1rem;font-weight:700}@keyframes slideInLeft{0%{left:-400px;opacity:0}to{left:30px;opacity:1}}.conditions-display{display:flex;flex-wrap:wrap;gap:30px;justify-content:center;margin:15px 0}.condition-item{align-items:center;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#fff3;border-radius:20px;display:flex;gap:10px;padding:10px 20px}.condition-emoji{font-size:1.5rem}.condition-text{color:#fff;font-size:.9rem;font-weight:600}.secret-unlocked{animation:secretGlow 2s ease-in-out infinite;background:linear-gradient(135deg,#ffd70033,#ff8c0033);border-radius:8px;padding:12px 10px!important}@keyframes secretGlow{0%,to{box-shadow:0 0 10px #ffd7004d}50%{box-shadow:0 0 20px #ffd70099}}@media (max-width:768px){.fortune-cookie{bottom:20px;font-size:.9rem;padding:12px 20px}.fortune-cookie,.party-guest{left:20px;max-width:none;right:20px}.party-guest{bottom:80px;padding:15px}.guest-emoji{font-size:2.5rem}.guest-info strong{font-size:1rem}.guest-info p{font-size:.85rem}.conditions-display{gap:15px}.condition-item{font-size:.85rem;padding:8px 15px}.condition-emoji{font-size:1.2rem}.condition-text{font-size:.8rem}}.weather-rain{animation:rainDrop .5s linear infinite;background:linear-gradient(#0000,#0064ff1a)}.weather-rain,.weather-snow{height:100%;left:0;pointer-events:none;position:fixed;top:0;width:100%}.weather-snow{animation:snowFall 20s linear infinite;background-image:radial-gradient(circle,#fff 2px,#0000 0),radial-gradient(circle,#fff 2px,#0000 0);background-position:0 0,50px 50px;background-size:100px 100px,150px 150px}.weather-storm{background:#3232644d}.weather-fog,.weather-storm{height:100%;left:0;pointer-events:none;position:fixed;top:0;width:100%}.weather-fog{background:radial-gradient(circle,#0000 0,#c8c8c880 100%)}.weather-wind{animation:windBlow 3s linear infinite;background:linear-gradient(90deg,#0000,#96c8ff33 50%,#0000);height:100%;left:0;pointer-events:none;position:fixed;top:0;width:100%}@keyframes rainDrop{0%{transform:translateY(-100vh)}to{transform:translateY(0)}}@keyframes snowFall{0%{transform:translateY(0)}to{transform:translateY(100px)}}@keyframes lightning{0%,90%,to{opacity:1}95%{background:#fffc;opacity:.3}}@keyframes windBlow{0%{transform:translateX(-100%)}to{transform:translateX(100%)}}.minigame-overlay{align-items:center;animation:fadeIn .3s ease;background:#000c;display:flex;height:100vh;justify-content:center;left:0;position:fixed;top:0;width:100vw;z-index:2000}.minigame-modal{background:#fff;border-radius:20px;box-shadow:0 20px 60px #00000080;font-family:Jost,sans-serif;max-width:500px;min-width:400px;padding:30px}.minigame-modal h2{color:#333;margin-top:0;text-align:center}.whack-a-mole-game .game-info{color:#333;display:flex;font-weight:600;justify-content:space-between;margin-bottom:20px}.mole-grid{grid-gap:15px;display:grid;gap:15px;grid-template-columns:repeat(3,1fr)}.mole-hole{align-items:center;background:#8b4513;border:4px solid #654321;border-radius:50%;cursor:pointer;display:flex;font-size:3rem;height:100px;justify-content:center;transition:all .2s ease;width:100px}.mole-hole.mole-up{animation:molePopUp .3s ease}@keyframes molePopUp{0%{transform:translateY(20px)}to{transform:translateY(0)}}.memory-grid{grid-gap:10px;display:grid;gap:10px;grid-template-columns:repeat(4,1fr);margin-top:20px}.memory-card{align-items:center;background:linear-gradient(135deg,#667eea,#764ba2);border-radius:10px;color:#fff;cursor:pointer;display:flex;font-size:2.5rem;font-weight:700;height:80px;justify-content:center;transition:all .3s ease;width:80px}.memory-card.flipped{background:linear-gradient(135deg,#f093fb,#f5576c);transform:rotateY(180deg)}.reaction-game{flex-direction:column;text-align:center}.reaction-box,.reaction-game{align-items:center;display:flex}.reaction-box{border-radius:20px;cursor:pointer;font-size:2rem;font-weight:700;height:300px;justify-content:center;margin:20px auto;position:relative;transition:background .3s ease;width:300px}.reaction-box.waiting{background:linear-gradient(135deg,#ff6b6b,#ee5a6f);color:#fff}.reaction-box.go{animation:pulse .5s ease infinite;background:linear-gradient(135deg,#56ab2f,#a8e063);color:#fff}.factory-overlay{align-items:center;animation:fadeIn .3s ease;background:#000c;display:flex;height:100vh;justify-content:center;left:0;position:fixed;top:0;width:100vw;z-index:2000}.factory-modal{background:#fff;border-radius:20px;box-shadow:0 20px 60px #00000080;font-family:Jost,sans-serif;max-height:80vh;max-width:600px;overflow-y:auto;padding:30px;position:relative;width:90%}.factory-modal h2{color:#333;margin-top:0;text-align:center}.close-factory{background:none;border:none;color:#666;cursor:pointer;font-size:1.5rem;position:absolute;right:15px;top:15px;transition:color .3s ease}.close-factory:hover{color:#ff6b6b}.factory-content{display:flex;flex-direction:column;gap:25px}.factory-minigames h3,.factory-production h3,.factory-resources h3{color:#555;font-size:1.2rem;margin-bottom:15px}.production-target{align-items:center;display:flex;gap:10px;margin-bottom:15px}.production-target label{color:#333;font-weight:600}.production-target select{border:2px solid #ddd;border-radius:8px;flex:1 1;font-family:Jost,sans-serif;font-size:1rem;padding:8px}.progress-bar{background:#f0f0f0;border-radius:15px;height:30px;overflow:hidden;position:relative}.progress-fill{background:linear-gradient(90deg,#0cc,#0c6);border-radius:15px;height:100%;transition:width .3s ease}.progress-bar span{color:#333;font-weight:600;left:50%;position:absolute;text-shadow:0 0 3px #fff;top:50%;transform:translate(-50%,-50%)}.resource-item{align-items:center;background:#f8f9fa;border-radius:10px;display:flex;justify-content:space-between;margin-bottom:10px;padding:10px}.resource-item span{color:#333;font-weight:600}.resource-item button{background:linear-gradient(135deg,#667eea,#764ba2);border:none;border-radius:8px;color:#fff;cursor:pointer;font-family:Jost,sans-serif;font-weight:600;padding:8px 15px;transition:all .3s ease}.resource-item button:hover{box-shadow:0 4px 12px #667eea66;transform:translateY(-2px)}.minigames-panel{background:#fffffff2;border-radius:20px;box-shadow:0 10px 40px #0003;margin-top:20px;padding:20px}.minigames-panel h3{color:#333;font-size:1.3rem;margin-bottom:15px;margin-top:0}.minigame-button{background:linear-gradient(135deg,#f093fb,#f5576c);border:none;border-radius:12px;color:#fff;cursor:pointer;font-family:Jost,sans-serif;font-size:1rem;font-weight:600;margin-bottom:10px;padding:12px;transition:all .3s ease;width:100%}.minigame-button:hover{box-shadow:0 6px 20px #f093fb66;transform:translateY(-2px)}.manage-factory-button{background:linear-gradient(135deg,#ff6b6b,#ee5a6f);border:none;border-radius:8px;color:#fff;cursor:pointer;font-family:Jost,sans-serif;font-weight:600;padding:8px 15px;transition:all .3s ease}.manage-factory-button:hover{box-shadow:0 4px 15px #ff6b6b66;transform:scale(1.05)}.upgrade-item.has-factory{background:linear-gradient(135deg,#ff6b6b1a,#ee5a6f1a);border-color:#ff6b6b}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}@media (max-width:768px){.minigame-modal{max-width:90%;min-width:300px;padding:20px}.mole-hole{font-size:2rem;height:70px;width:70px}.memory-card{font-size:2rem;height:60px;width:60px}.reaction-box{font-size:1.5rem;height:250px;width:250px}.factory-modal{padding:20px}.minigames-panel{padding:15px}}.v3-tabs{align-items:center;background:#0000004d;border-radius:12px;display:flex;flex-wrap:wrap;gap:8px;justify-content:center;margin:15px 0;padding:10px}.v3-tab{background:#ffffff1a;border:2px solid #fff3;border-radius:8px;color:#fff;cursor:pointer;font-family:Jost,sans-serif;font-size:.95rem;font-weight:600;padding:10px 20px;transition:all .2s ease}.v3-tab:hover{background:#fff3;border-color:#fff6;transform:translateY(-2px)}.v3-tab.active{background:linear-gradient(135deg,#0cc,#08c);border-color:#0cc;box-shadow:0 4px 15px #0cc6}.v3-resources{background:#0006;border:1px solid #fff3;border-radius:8px;display:flex;gap:15px;margin-left:auto;padding:8px 16px}.v3-resource{color:gold;font-size:.9rem;font-weight:600;text-shadow:0 2px 4px #00000080}@media (max-width:768px){.v3-tabs{flex-direction:column;gap:10px}.v3-resources{justify-content:center;margin-left:0;margin-top:10px;width:100%}}.parts-lab-tile{background:linear-gradient(135deg,#1a1a2e,#16213e);border:2px solid #7c3aed;border-radius:12px;box-shadow:0 4px 15px #7c3aed33;cursor:pointer;display:flex;gap:15px;margin-bottom:15px;padding:16px;transition:all .2s}.parts-lab-tile:hover{border-color:#a78bfa;box-shadow:0 8px 25px #7c3aed4d;transform:translateY(-2px)}.parts-lab-tile-icon{align-items:center;background:#7c3aed33;border-radius:12px;display:flex;font-size:2.5rem;height:60px;justify-content:center;width:60px}.parts-lab-tile-content{flex:1 1}.parts-lab-tile-header{align-items:center;display:flex;justify-content:space-between;margin-bottom:4px}.parts-lab-tile-name{color:#fff;font-size:1.2rem;font-weight:700}.parts-lab-tile-count{background:#7c3aed4d;border-radius:4px;color:#a78bfa;font-size:.9rem;padding:2px 8px}.parts-lab-tile-desc{color:#aaa;font-size:.85rem;margin-bottom:10px}.parts-lab-tile-categories{display:flex;gap:8px;margin-bottom:10px}.parts-lab-cat-icon{align-items:center;background:#ffffff1a;border-radius:8px;display:flex;font-size:1.1rem;height:36px;justify-content:center;opacity:.5;position:relative;transition:all .2s;width:36px}.parts-lab-cat-icon.active{background:#4caf5033;border:1px solid #4caf50;opacity:1}.cat-tier{background:#4caf50;border-radius:3px;bottom:-4px;color:#fff;font-size:.6rem;font-weight:700;padding:1px 4px;position:absolute;right:-4px}.parts-lab-tile-resources{color:#888;display:flex;font-size:.85rem;gap:12px}.parts-lab-tile-resources .parts-bonus{color:#4caf50;font-weight:600}.parts-lab-modal{background:linear-gradient(135deg,#0f0f1a,#1a1a2e);border-radius:16px;color:#e0e0e0;max-height:85vh;max-width:800px;overflow-y:auto;padding:24px;position:relative;width:95%}.parts-lab-header{align-items:center;display:flex;justify-content:space-between;margin-bottom:8px}.parts-lab-modal h2{color:#fff;font-size:1.5rem;margin:0}.parts-lab-resources-bar{display:flex;font-size:.9rem;font-weight:600;gap:15px}.parts-lab-resources-bar span{color:#fff}.parts-lab-desc{color:#888;font-size:.9rem;margin:0 0 20px}.parts-categories-grid{grid-gap:16px;display:grid;gap:16px;grid-template-columns:repeat(auto-fill,minmax(240px,1fr))}.parts-category-tile{background:#ffffff0d;border:2px solid #ffffff1a;border-radius:12px;padding:16px;transition:all .2s}.parts-category-tile:hover{background:#ffffff14;border-color:#7c3aed80}.cat-tile-header{align-items:center;display:flex;gap:10px;margin-bottom:8px}.cat-tile-icon{align-items:center;background:#7c3aed33;border-radius:8px;display:flex;font-size:1.5rem;height:40px;justify-content:center;width:40px}.cat-tile-name{color:#fff;flex:1 1;font-size:1.1rem;font-weight:700}.cat-tile-progress{background:#7c3aed4d;border-radius:4px;color:#a78bfa;font-size:.8rem;padding:2px 8px}.cat-tile-desc{color:#888;font-size:.8rem;margin-bottom:12px}.cat-tile-tiers{display:flex;gap:6px;margin-bottom:12px}.tier-dot{align-items:center;background:#ffffff1a;border:2px solid #0000;border-radius:6px;color:#666;display:flex;font-size:.7rem;font-weight:700;height:32px;justify-content:center;width:32px}.tier-dot.done{background:#4caf504d;border-color:#4caf50;color:#4caf50}.tier-dot.available:not(.done){animation:tierPulse 2s infinite;border-color:#00d4ff;color:#00d4ff}@keyframes tierPulse{0%,to{box-shadow:0 0 0 0 #00d4ff66}50%{box-shadow:0 0 8px 2px #00d4ff33}}.cat-tile-next{background:#0000004d;border-radius:8px;padding:12px}.next-part-info{margin-bottom:8px}.next-part-info strong{color:#fff;display:block;font-size:.9rem;margin-bottom:2px}.next-part-effect{color:#4caf50;font-size:.8rem}.next-part-costs{display:flex;font-size:.8rem;gap:8px;margin-bottom:10px}.next-part-costs span{color:#ff6b6b}.next-part-costs span.affordable{color:#4caf50}.research-part-btn{background:linear-gradient(90deg,#7c3aed,#00d4ff);border:none;border-radius:6px;color:#fff;cursor:pointer;font-size:.9rem;font-weight:700;padding:10px;transition:all .2s;width:100%}.research-part-btn:hover:not(:disabled){box-shadow:0 4px 15px #7c3aed66;transform:translateY(-1px)}.research-part-btn:disabled{background:#444;cursor:not-allowed;opacity:.6}.cat-tile-complete{border-radius:8px;color:#4caf50;font-size:1rem;font-weight:700}.cat-tile-complete,.parts-total-bonus{background:#4caf501a;padding:12px;text-align:center}.parts-total-bonus{border:1px solid #4caf504d;border-radius:8px;color:#aaa;margin-top:20px}.parts-total-bonus strong{color:#4caf50}.tech-tree-modal{max-height:90vh;max-width:1000px;overflow:hidden;padding:0}.tech-tree-modal .tech-tree{border-radius:0}.agi-cutscene{animation:agi-fade-in .6s ease both;background:radial-gradient(ellipse at center,#06121f 0,#01050c 70%);font-family:Jost,system-ui,sans-serif;inset:0;overflow:hidden;position:fixed;z-index:2000}@keyframes agi-fade-in{0%{opacity:0}to{opacity:1}}.agi-canvas{height:100%;inset:0;position:absolute;width:100%}.agi-content{flex-direction:column;gap:40px;height:100%;justify-content:flex-end;padding:24px 24px 16vh;position:relative;text-align:center}.agi-content,.agi-messages{align-items:center;display:flex}.agi-messages{justify-content:center;max-width:780px;min-height:120px}.agi-message{animation:agi-message-in .9s cubic-bezier(.16,1,.3,1) both;color:#e2f4ffeb;font-size:clamp(1.4rem,3.6vw,2.6rem);font-weight:300;letter-spacing:.02em;margin:0;text-shadow:0 0 26px #78d2ff8c}.agi-message.bright{color:#fff;font-weight:600;text-shadow:0 0 40px #96e6ffe6}.agi-message.voice{color:#b9f0ff;font-style:italic;text-shadow:0 0 34px #78f0ffcc}.agi-message.system{color:#7ff0c8;font-family:JetBrains Mono,ui-monospace,monospace;font-size:clamp(.95rem,2vw,1.35rem);letter-spacing:.16em;text-shadow:0 0 24px #50ffbeb3;text-transform:uppercase}@keyframes agi-message-in{0%{filter:blur(6px);opacity:0;transform:translateY(18px) scale(.97)}to{filter:blur(0);opacity:1;transform:translateY(0) scale(1)}}.agi-stats{animation:agi-message-in 1s ease both;display:flex;flex-wrap:wrap;gap:18px;justify-content:center}.agi-stat{-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);background:#0c22368c;border:1px solid #82dcff3d;border-radius:14px;display:flex;flex-direction:column;gap:6px;min-width:150px;padding:14px 20px}.agi-stat-label{color:#b4d7f0b3;font-size:.72rem;letter-spacing:.14em;text-transform:uppercase}.agi-stat-value{color:#dff4ff;font-size:1.35rem;font-weight:600}.agi-progress-track{background:#ffffff14;bottom:0;height:3px;left:0;position:absolute;right:0}.agi-progress-fill{background:linear-gradient(90deg,#4fd3ff,#b8f5ff);box-shadow:0 0 16px #78dcffe6;height:100%;transition:width .35s cubic-bezier(.16,1,.3,1);width:0}.agi-log{bottom:28px;color:#82c8af8c;display:flex;flex-direction:column;font-family:JetBrains Mono,ui-monospace,SFMono-Regular,Menlo,monospace;font-size:.68rem;gap:3px;left:28px;letter-spacing:.02em;max-width:42vw;pointer-events:none;position:absolute}.agi-log-line{animation:agi-log-in .35s ease both;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.agi-log-line:before{content:"> ";opacity:.5}.agi-log-line.warn{color:#ffbe6eb8}@keyframes agi-log-in{0%{opacity:0;transform:translateX(-8px)}to{opacity:1;transform:translateX(0)}}@media (max-width:900px){.agi-log{display:none}}.agi-cutscene{cursor:pointer}.agi-continue{animation:agi-nudge 2.4s ease-in-out infinite;bottom:26px;color:#bee0fa8c;font-size:.8rem;letter-spacing:.16em;pointer-events:none;position:absolute;right:28px;text-transform:uppercase}@keyframes agi-nudge{0%,to{opacity:.4;transform:translateX(0)}50%{opacity:.9;transform:translateX(4px)}}.village-page{--panel-bg:#09111ec7;--panel-border:#82bef029;--text:#e6f1ff;--muted:#bed6ee9e;--good:#6fe8a8;--bad:#ff7a6b;--accent:#6fd8ff;background:#04070f;color:var(--text);font-family:Jost,system-ui,-apple-system,sans-serif;inset:0;overflow:hidden;position:fixed;-webkit-user-select:none;user-select:none}.village-canvas{cursor:grab;height:100%;inset:0;position:absolute;touch-action:none;width:100%}.village-canvas:active{cursor:grabbing}.vg-panel{-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);background:var(--panel-bg);border:1px solid var(--panel-border);border-radius:16px;box-shadow:0 18px 44px #00000073;padding:14px;pointer-events:auto}.vg-panel-header{align-items:baseline;display:flex;justify-content:space-between;margin-bottom:10px}.vg-panel-header h3{color:#dceeffe6;font-size:.95rem;font-weight:600;letter-spacing:.1em;margin:0;text-transform:uppercase}.vg-panel-sub{color:var(--muted);font-size:.74rem}.vg-btn{background:#1e3a5a80;border:1px solid #8cc8f547;border-radius:10px;color:var(--text);cursor:pointer;font-family:inherit;font-size:.85rem;padding:9px 14px;transition:all .18s ease}.vg-btn:hover:not(:disabled){background:#346496b3;border-color:#b4e6ff99}.vg-btn:disabled{cursor:not-allowed;opacity:.4}.vg-btn.primary{background:linear-gradient(135deg,#3282c8bf,#235a96bf)}.vg-btn.danger{background:linear-gradient(135deg,#be3c46b3,#82233cb3);border-color:#ff8c8c59}.vg-btn.full{margin-top:16px;width:100%}.vg-hud{align-items:center;background:linear-gradient(180deg,#040912eb,#04091200);display:flex;flex-wrap:wrap;gap:16px;left:0;padding:12px 18px;pointer-events:none;position:absolute;right:0;top:0;z-index:10}.vg-hud>*{pointer-events:auto}.vg-home{background:#0a1422b3;border:1px solid var(--panel-border);border-radius:999px;color:var(--muted);font-size:.85rem;padding:7px 13px;text-decoration:none;transition:all .2s ease;white-space:nowrap}.vg-home:hover{border-color:var(--accent);color:#fff}.vg-resources{display:flex;gap:8px}.vg-resource{align-items:flex-start;background:#0a1422b8;border:1px solid var(--panel-border);border-radius:12px;display:flex;flex-direction:column;line-height:1.15;min-width:104px;padding:7px 12px}.vg-res-name{color:#b2cae2b3;font-size:.63rem;letter-spacing:.13em;text-transform:uppercase}.vg-res-amount{font-feature-settings:"tnum";font-size:1.06rem;font-variant-numeric:tabular-nums;font-weight:600}.vg-res-rate{font-feature-settings:"tnum";color:var(--muted);font-size:.7rem;font-variant-numeric:tabular-nums}.vg-power{background:#0a1422b8;border:1px solid var(--panel-border);border-radius:12px;min-width:224px;padding:8px 13px}.vg-power-head{font-feature-settings:"tnum";display:flex;font-size:.9rem;font-variant-numeric:tabular-nums;font-weight:600;gap:12px;justify-content:space-between}.vg-power-status{font-size:.7rem;font-weight:500;letter-spacing:.06em;opacity:.85;text-transform:uppercase}.vg-power-bar{background:#ffffff1a;border-radius:3px;height:5px;margin:6px 0 4px;overflow:hidden}.vg-power-fill{background:linear-gradient(90deg,#6fe8a8,#ffe066);border-radius:3px;height:100%;transition:width .3s ease}.vg-power-sub{font-feature-settings:"tnum";color:var(--muted);font-size:.68rem;font-variant-numeric:tabular-nums}.vg-power-nominal{border-color:#6fe8a859}.vg-power-strained{border-color:#ffc8508c}.vg-power-strained .vg-power-fill{background:linear-gradient(90deg,#ffd166,#ff9f43)}.vg-power-critical{border-color:#ff8250b3}.vg-power-critical .vg-power-fill{background:linear-gradient(90deg,#ff9f43,#ff6b5b)}.vg-power-blackout{animation:vg-alarm 1.1s ease-in-out infinite;border-color:#ff5a50e6}.vg-power-blackout .vg-power-fill{background:#ff5a50}@keyframes vg-alarm{0%,to{box-shadow:0 0 0 #ff504600}50%{box-shadow:0 0 20px #ff504699}}.vg-pop{font-feature-settings:"tnum";background:#0a1422b8;border:1px solid var(--panel-border);border-radius:12px;display:flex;flex-direction:column;font-size:.9rem;font-variant-numeric:tabular-nums;padding:7px 12px}.vg-pop-bonus{color:var(--good);font-size:.68rem}.vg-hud-buttons{display:flex;gap:8px;margin-left:auto}.vg-hud-buttons button{align-items:center;background:#0a1422bf;border:1px solid var(--panel-border);border-radius:12px;color:var(--text);cursor:pointer;display:flex;font-family:inherit;font-size:.82rem;gap:6px;padding:9px 13px;transition:all .18s ease}.vg-hud-buttons button:hover{background:#1e3c5ed9;border-color:var(--accent)}.vg-hud-buttons button em{background:#6ec8ff2e;border-radius:999px;color:var(--accent);font-size:.72rem;font-style:normal;padding:1px 7px}.vg-hud-buttons button.dev{border-style:dashed;color:#ffd166}.vg-site-strip{align-items:center;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#080f1bb8;border:1px solid var(--panel-border);border-radius:999px;color:var(--muted);display:flex;font-size:.78rem;gap:8px;left:50%;padding:6px 16px;pointer-events:none;position:absolute;top:92px;transform:translateX(-50%);white-space:nowrap;z-index:5}.vg-site-name{color:#e8f4fff2;font-size:.9rem;font-weight:600;letter-spacing:.14em;text-transform:uppercase}.vg-site-sep{opacity:.35}.vg-site-next{align-items:center;background:#ffc85021;border:1px solid #ffd1664d;border-radius:999px;color:#ffd98a;display:inline-flex;gap:7px;margin-left:4px;padding:3px 10px}.vg-site-next em{font-feature-settings:"tnum";font-style:normal;font-variant-numeric:tabular-nums;opacity:.75}.vg-left,.vg-right{bottom:132px;display:flex;flex-direction:column;pointer-events:none;position:absolute;top:128px;width:296px;z-index:8}.vg-left{left:18px}.vg-right{right:18px}.vg-palette{display:flex;flex:1 1;flex-direction:column;min-height:0}.vg-cat-filter{display:flex;flex-wrap:wrap;gap:5px;margin-bottom:10px}.vg-cat-filter button{background:#ffffff0a;border:1px solid #ffffff1a;border-radius:8px;color:var(--muted);cursor:pointer;flex:1 1;font-family:inherit;font-size:.78rem;min-width:32px;padding:5px 4px;transition:all .15s ease}.vg-cat-filter button.active,.vg-cat-filter button:hover{background:#ffffff1f;border-color:var(--cat,var(--accent));color:#fff}.vg-palette-scroll{flex:1 1;min-height:0;overflow-y:auto;padding-right:4px;scrollbar-color:#8cc8f559 #0000;scrollbar-width:thin}.vg-palette-scroll::-webkit-scrollbar{width:6px}.vg-palette-scroll::-webkit-scrollbar-thumb{background:#8cc8f54d;border-radius:3px}.vg-cat-label{font-size:.68rem;letter-spacing:.14em;margin:10px 0 6px;opacity:.85;text-transform:uppercase}.vg-cat-group:first-child .vg-cat-label{margin-top:0}.vg-build-card{background:hsla(0,0%,100%,.035);border:1px solid #ffffff14;border-left:3px solid var(--cat);border-radius:11px;color:var(--text);cursor:pointer;display:block;font-family:inherit;margin-bottom:6px;padding:9px 11px;text-align:left;transition:all .15s ease;width:100%}.vg-build-card:hover{background:#ffffff17;transform:translateX(2px)}.vg-build-card.selected{background:#6ec8ff29;border-color:var(--cat);box-shadow:0 0 0 1px var(--cat),0 0 18px #6ec8ff40}.vg-build-card.unaffordable{opacity:.5}.vg-build-top{align-items:baseline;display:flex;gap:8px;justify-content:space-between}.vg-build-name{font-size:.86rem;font-weight:600}.vg-build-count{color:var(--accent);font-size:.72rem}.vg-build-desc{color:var(--muted);font-size:.7rem;line-height:1.35;margin:3px 0 5px}.vg-build-cost{font-feature-settings:"tnum";font-size:.72rem;font-variant-numeric:tabular-nums}.vg-build-cost .ok{color:#d7ebffd9}.vg-build-cost .short{color:var(--bad)}.vg-locked-teaser{align-items:center;border:1px dashed #ffffff29;border-radius:11px;color:var(--muted);display:flex;font-size:.72rem;gap:10px;margin-top:12px;padding:10px}.vg-lock-icon{font-size:1.1rem;opacity:.6}.vg-cancel-place{background:#78282d66;border:1px solid #ff8c8c4d;border-radius:10px;color:#ffd6d0;cursor:pointer;font-family:inherit;font-size:.78rem;margin-top:10px;padding:8px}.vg-cancel-place:hover{background:#a0373c8c}.vg-inspector{max-height:100%;overflow-y:auto}.vg-hint{color:var(--muted);font-size:.76rem;line-height:1.55;margin:0 0 10px}.vg-hint-list{color:var(--muted);font-size:.72rem;line-height:1.7;margin:0;padding-left:16px}.vg-locked-note{color:#ffd166;font-size:.76rem;margin:0 0 10px}.vg-terrain-row{display:flex;flex-direction:column;gap:5px;margin-bottom:12px}.vg-chip{align-self:flex-start;background:#8cc8f526;border-radius:999px;color:var(--accent);font-size:.68rem;letter-spacing:.1em;padding:3px 9px;text-transform:uppercase}.vg-terrain-desc{color:var(--muted);font-size:.72rem;line-height:1.4}.vg-stat-grid{grid-gap:7px;display:grid;gap:7px;grid-template-columns:1fr 1fr;margin-bottom:12px}.vg-stat{background:#ffffff0d;border-radius:9px;display:flex;flex-direction:column;gap:2px;padding:7px 9px}.vg-stat-key{color:var(--muted);font-size:.66rem}.vg-stat-val{font-feature-settings:"tnum";font-size:.94rem;font-variant-numeric:tabular-nums;font-weight:600}.vg-stat-val.good{color:var(--good)}.vg-stat-val.draw{color:#ffb27a}.vg-adjacency{border-top:1px solid #ffffff14;margin-bottom:10px;padding-top:10px}.vg-adjacency-head{color:var(--muted);display:flex;font-size:.7rem;justify-content:space-between;letter-spacing:.12em;margin-bottom:6px;text-transform:uppercase}.vg-adjacency-head .good{color:var(--good)}.vg-adjacency-row{display:flex;font-size:.74rem;gap:10px;justify-content:space-between;padding:3px 0}.vg-adjacency-row.muted{color:var(--muted);font-style:italic}.vg-adjacency-row .good{font-feature-settings:"tnum";color:var(--good);font-variant-numeric:tabular-nums}.vg-flavor{color:#bed6ee80;font-size:.72rem;font-style:italic;line-height:1.5;margin:0 0 12px}.vg-demolish{background:#5a202673;border:1px solid #ff8c8c47;border-radius:10px;color:#ffcfc8;cursor:pointer;font-family:inherit;font-size:.78rem;padding:8px;width:100%}.vg-demolish:hover{background:#96323799}.vg-preview{border:1px solid;border-radius:11px;padding:10px 12px}.vg-preview.valid{background:#1e5a4247;border-color:#6fe8a873}.vg-preview.invalid{background:#64242447;border-color:#ff7a6b73}.vg-preview-head{font-size:.8rem;font-weight:600;gap:10px;margin-bottom:6px}.vg-preview-body,.vg-preview-head{display:flex;justify-content:space-between}.vg-preview-body{color:var(--muted);font-size:.76rem}.vg-preview-body .good{color:var(--good)}.vg-compute-dock{align-items:center;bottom:26px;display:flex;flex-direction:column;gap:8px;left:50%;position:absolute;transform:translateX(-50%);z-index:9}.vg-combo{animation:vg-combo-pop .25s ease;background:#ffd16629;border:1px solid #ffd16673;border-radius:999px;color:#ffe08a;font-size:.78rem;font-weight:600;letter-spacing:.06em;padding:4px 14px}.vg-combo[data-tier="5"]{background:#ff825a33;border-color:#ff965ab3;box-shadow:0 0 22px #ff8c5073;color:#ffc7a0}@keyframes vg-combo-pop{0%{opacity:0;transform:scale(.85)}to{opacity:1;transform:scale(1)}}.vg-compute{align-items:center;background:linear-gradient(135deg,#1e5c96e6,#123058e6);border:1px solid #8cdcff73;border-radius:18px;box-shadow:0 12px 38px #00000080,inset 0 1px 0 #ffffff2e;color:#eaf7ff;cursor:pointer;display:flex;flex-direction:column;font-family:inherit;gap:2px;min-width:210px;padding:14px 34px;transition:transform .08s ease,box-shadow .2s ease}.vg-compute:hover{box-shadow:0 12px 44px #3caaff59,inset 0 1px 0 #ffffff40}.vg-compute:active{transform:scale(.96)}.vg-compute-label{font-size:1.05rem;font-weight:600;letter-spacing:.28em}.vg-compute-value{font-feature-settings:"tnum";color:var(--accent);font-size:1rem;font-variant-numeric:tabular-nums;font-weight:600}.vg-toast{animation:vg-toast-in .3s cubic-bezier(.16,1,.3,1);background:#0c1828f0;border:1px solid var(--panel-border);border-radius:12px;bottom:130px;box-shadow:0 12px 32px #00000080;font-size:.85rem;left:50%;padding:11px 20px;position:absolute;transform:translateX(-50%);z-index:20}.vg-toast.good{border-color:#6fe8a899;color:#cdffe4}.vg-toast.bad{border-color:#ff7a6b99;color:#ffd6d0}@keyframes vg-toast-in{0%{opacity:0;transform:translate(-50%,14px)}to{opacity:1;transform:translate(-50%)}}.vg-modal-backdrop{align-items:center;animation:vg-fade .2s ease;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);background:#02060ebf;display:flex;inset:0;justify-content:center;padding:24px;position:fixed;z-index:100}@keyframes vg-fade{0%{opacity:0}to{opacity:1}}.vg-modal{animation:vg-modal-in .28s cubic-bezier(.16,1,.3,1);background:linear-gradient(160deg,#0e1a2cfa,#080f1cfa);border:1px solid var(--panel-border);border-radius:20px;box-shadow:0 30px 80px #0009;display:flex;flex-direction:column;max-height:86vh;width:min(560px,100%)}.vg-modal.wide{width:min(940px,100%)}@keyframes vg-modal-in{0%{opacity:0;transform:translateY(20px) scale(.98)}to{opacity:1;transform:translateY(0) scale(1)}}.vg-modal-head{align-items:flex-start;border-bottom:1px solid #ffffff12;display:flex;gap:16px;justify-content:space-between;padding:20px 24px 14px}.vg-modal-head h2{font-size:1.2rem;font-weight:500;letter-spacing:.1em;margin:0;text-transform:uppercase}.vg-modal-head p{color:var(--muted);font-size:.78rem;line-height:1.5;margin:5px 0 0;max-width:62ch}.vg-modal-close{background:#ffffff12;border:none;border-radius:8px;color:var(--text);cursor:pointer;flex-shrink:0;font-size:.9rem;height:30px;width:30px}.vg-modal-close:hover{background:#ff64644d}.vg-modal-body{overflow-y:auto;padding:20px 24px 24px}.vg-planet-grid{grid-gap:14px;display:grid;gap:14px;grid-template-columns:repeat(auto-fill,minmax(280px,1fr))}.vg-planet-card{background:hsla(0,0%,100%,.035);border:1px solid #ffffff17;border-radius:14px;display:flex;gap:14px;padding:14px}.vg-planet-card.current{border-color:var(--accent);box-shadow:0 0 0 1px var(--accent)}.vg-planet-card.locked{opacity:.82}.vg-planet-orb{border-radius:50%;flex-shrink:0;height:58px;width:58px}.vg-planet-info{flex:1 1;min-width:0}.vg-planet-info h4{display:flex;flex-direction:column;font-size:.95rem;margin:0 0 6px}.vg-planet-info h4 span{color:var(--muted);font-size:.68rem;font-weight:400;letter-spacing:.1em;text-transform:uppercase}.vg-challenge,.vg-perk{font-size:.72rem;line-height:1.4;margin:3px 0}.vg-perk{color:var(--good)}.vg-challenge{color:#ffb27a}.vg-planet-stats{color:var(--muted);display:flex;flex-wrap:wrap;font-size:.7rem;gap:10px;margin:8px 0}.vg-planet-cost{font-feature-settings:"tnum";display:flex;font-size:.78rem;font-variant-numeric:tabular-nums;gap:14px;margin:8px 0}.vg-planet-cost .ok{color:var(--good)}.vg-planet-cost .short{color:var(--bad)}.vg-planet-info .vg-btn{margin-top:4px;width:100%}.vg-quantum-head{align-items:stretch;display:flex;flex-wrap:wrap;gap:12px;margin-bottom:20px}.vg-shard-box{background:#966eff1a;border:1px solid #aa82ff47;border-radius:12px;display:flex;flex:1 1;flex-direction:column;gap:3px;min-width:120px;padding:12px 16px}.vg-shard-count{font-feature-settings:"tnum";color:#dcc8ff;font-size:1.35rem;font-variant-numeric:tabular-nums;font-weight:600}.vg-shard-label{color:var(--muted);font-size:.68rem;letter-spacing:.1em;text-transform:uppercase}.vg-quantum-head .vg-btn{flex:1 1;min-width:180px}.vg-meta-grid{grid-gap:10px;display:grid;gap:10px;grid-template-columns:repeat(auto-fill,minmax(240px,1fr))}.vg-meta-card{background:hsla(0,0%,100%,.035);border:1px solid #ffffff14;border-radius:12px;color:var(--text);cursor:pointer;font-family:inherit;padding:12px;text-align:left;transition:all .15s ease}.vg-meta-card.affordable{background:#7850dc24;border-color:#aa82ff80}.vg-meta-card:hover:not(:disabled){transform:translateY(-2px)}.vg-meta-card:disabled{cursor:not-allowed;opacity:.45}.vg-meta-card.maxed{border-color:#6fe8a873;opacity:.75}.vg-meta-top{align-items:baseline;display:flex;gap:8px;margin-bottom:5px}.vg-meta-icon{font-size:.9rem}.vg-meta-name{flex:1 1;font-size:.85rem;font-weight:600}.vg-meta-level{color:var(--muted);font-size:.7rem}.vg-meta-desc{color:var(--muted);font-size:.72rem;line-height:1.4;margin-bottom:7px}.vg-meta-cost{color:#dcc8ff;font-size:.78rem}.vg-section-title{color:var(--muted);font-size:.72rem;letter-spacing:.14em;margin:0 0 10px;text-transform:uppercase}.vg-victory-list{display:flex;flex-direction:column;gap:7px;margin-bottom:24px}.vg-victory{grid-gap:12px;align-items:center;background:hsla(0,0%,100%,.035);border:1px solid #ffffff12;border-radius:10px;display:grid;font-size:.76rem;gap:12px;grid-template-columns:1.1fr 1.2fr 1.4fr;padding:10px 13px}.vg-victory.done{background:#ffbe3c17;border-color:#ffd16680}.vg-victory-name{font-weight:600}.vg-victory-req,.vg-victory-reward{color:var(--muted)}.vg-achieve-grid{grid-gap:9px;display:grid;gap:9px;grid-template-columns:repeat(auto-fill,minmax(230px,1fr))}.vg-achieve{align-items:center;background:#ffffff08;border:1px solid #ffffff0f;border-radius:11px;display:flex;gap:11px;opacity:.55;padding:10px 12px}.vg-achieve.done{background:#3ca0781a;border-color:#6fe8a859;opacity:1}.vg-achieve-icon{font-size:1.3rem}.vg-achieve strong{display:block;font-size:.82rem}.vg-achieve p{color:var(--muted);font-size:.7rem;line-height:1.35;margin:2px 0 0}.vg-dev-grid{grid-gap:9px;display:grid;gap:9px;grid-template-columns:repeat(auto-fill,minmax(230px,1fr))}.vg-dev-card{background:#ffc8500f;border:1px dashed #ffd16659;border-radius:11px;color:var(--text);cursor:pointer;font-family:inherit;padding:12px;text-align:left;transition:all .15s ease}.vg-dev-card:hover{background:#ffc85029;border-style:solid}.vg-dev-card strong{display:block;font-size:.85rem;margin-bottom:3px}.vg-dev-card span{color:var(--muted);font-size:.7rem;line-height:1.4}@media (max-width:1100px){.vg-left,.vg-right{width:250px}.vg-site-strip{top:132px}}@media (max-width:860px){.vg-left,.vg-right{bottom:auto;left:12px;position:absolute;right:12px;top:auto;width:auto}.vg-left{bottom:120px;max-height:34vh}.vg-right,.vg-site-strip{display:none}.vg-hud{gap:8px;padding:8px 10px}.vg-resource{min-width:74px;padding:5px 9px}}.vg-power-numbers{font-feature-settings:"tnum";align-items:baseline;display:flex;font-size:.94rem;font-variant-numeric:tabular-nums;gap:5px;margin-top:2px}.vg-power-numbers span{color:var(--muted);font-size:.7rem}.vg-pop{min-width:104px}.vg-pop-count{font-feature-settings:"tnum";font-size:1.06rem;font-variant-numeric:tabular-nums;font-weight:600}.vg-pop-count em{color:var(--muted);font-size:.78rem;font-style:normal}.vg-cat-filter button{flex:0 1 auto;font-size:.68rem;letter-spacing:.03em;min-width:0;padding:5px 9px}.vg-build-effect{align-items:baseline;display:flex;font-size:.72rem;gap:8px;justify-content:space-between;margin:4px 0 6px}.vg-effect-out{color:#d6eaffe6}.vg-effect-power.gen{color:#ffd98a}.vg-effect-power.draw{color:#bed6ee99}.vg-build-cost{display:flex;flex-wrap:wrap;font-size:.7rem;gap:10px}.vg-build-cost em{font-feature-settings:"tnum";font-style:normal;font-variant-numeric:tabular-nums;font-weight:600}.vg-cat-label.locked{color:#ffd166bf}.vg-research-card{background:#3c968c12;border:1px dashed #5fe8d852;border-radius:11px;margin-bottom:6px;padding:10px 11px}.vg-research-card.ready{background:#3caa9b26;border-color:#5fe8d8a6;border-style:solid}.vg-build-cat{font-size:.66rem;letter-spacing:.06em;text-transform:uppercase}.vg-unlock-btn{background:#28787059;border:1px solid #5fe8d866;border-radius:8px;color:#cffff7;cursor:pointer;font-family:inherit;font-size:.72rem;margin-top:4px;padding:7px 9px;transition:all .15s ease;width:100%}.vg-unlock-btn:hover:not(:disabled){background:#3cafa099;color:#fff}.vg-unlock-btn:disabled{border-style:dashed;cursor:not-allowed;opacity:.45}.vg-help-grid{grid-gap:10px;display:grid;gap:10px;grid-template-columns:repeat(auto-fill,minmax(230px,1fr));margin-bottom:24px}.vg-help-card{background:#ffffff0a;border:1px solid #ffffff14;border-radius:12px;padding:12px 14px}.vg-help-card.power{background:#ffc85012;border-color:#ffd16659}.vg-help-card.power .vg-help-name{color:#ffd98a}.vg-help-name{font-size:.9rem;font-weight:600;margin-bottom:5px}.vg-help-what{color:#d4e6f8d9;font-size:.75rem;line-height:1.5;margin:0 0 8px}.vg-help-flow{color:var(--muted);display:flex;flex-direction:column;font-size:.71rem;gap:3px;line-height:1.4}.vg-help-flow strong{color:#bed6eef2;font-weight:600;margin-right:4px}.vg-help-steps{color:#cee2f5d9;font-size:.8rem;line-height:1.85;margin:0 0 24px;padding-left:20px}.vg-help-steps strong{color:#fff}.vg-help-para{color:#cee2f5cc;font-size:.8rem;line-height:1.6;margin:0 0 12px}.vg-help-phases{display:flex;flex-direction:column;gap:6px;margin-bottom:14px}.vg-help-phase{align-items:center;background:hsla(0,0%,100%,.035);border-radius:10px;display:flex;gap:12px;padding:8px 12px}.vg-help-phase-n{align-items:center;background:#6ec8ff2e;border-radius:50%;color:var(--accent);display:flex;flex-shrink:0;font-size:.72rem;font-weight:600;height:22px;justify-content:center;width:22px}.vg-help-phase strong{display:block;font-size:.8rem}.vg-help-phase span{color:var(--muted);font-size:.71rem}.vg-meta-icon:empty{display:none}.vg-cat-tag{background:color-mix(in srgb,var(--cat) 16%,#0000);border:1px solid color-mix(in srgb,var(--cat) 45%,#0000);border-radius:999px;color:var(--cat);display:inline-block;font-size:.66rem;letter-spacing:.12em;margin-bottom:10px;padding:3px 10px;text-transform:uppercase}.vg-stat.wide{grid-column:1/-1}.vg-stat-val.big{font-size:1.3rem}.vg-stat-val.big em{color:var(--muted);font-size:.74rem;font-style:normal;font-weight:500}.vg-working{background:hsla(0,0%,100%,.035);border:1px solid #ffffff12;border-radius:11px;margin-bottom:12px;padding:10px 11px}.vg-working-head{color:var(--muted);font-size:.66rem;letter-spacing:.13em;margin-bottom:7px;text-transform:uppercase}.vg-factor{font-feature-settings:"tnum";display:flex;font-size:.74rem;font-variant-numeric:tabular-nums;gap:10px;justify-content:space-between;padding:2.5px 0}.vg-factor.muted{opacity:.42}.vg-factor .good{color:var(--good)}.vg-factor.total{border-top:1px solid #ffffff1a;font-size:.82rem;font-weight:600;margin-top:6px;padding-top:7px}.vg-rules{border:1px dashed #8cc8f53d;border-radius:11px;margin-bottom:12px;padding:9px 11px}.vg-rules.compact{margin:8px 0 0;padding:7px 9px}.vg-rules-head{color:var(--muted);font-size:.66rem;letter-spacing:.13em;margin-bottom:5px;text-transform:uppercase}.vg-rule-row{color:#cee2f5cc;display:flex;font-size:.73rem;gap:10px;justify-content:space-between;padding:2px 0}.vg-rule-row span:last-child{font-feature-settings:"tnum";color:var(--accent);font-variant-numeric:tabular-nums;white-space:nowrap}
/*# sourceMappingURL=main.57b3e570.css.map*/