@font-face{font-family:Heebo;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/heebo-latin-400-normal-BGyEuwIV.woff2)format("woff2"),url(/assets/heebo-latin-400-normal-BVgBBEsj.woff)format("woff")}@font-face{font-family:Heebo;font-style:normal;font-display:swap;font-weight:500;src:url(/assets/heebo-latin-500-normal-CRntKADR.woff2)format("woff2"),url(/assets/heebo-latin-500-normal-D9arPEGc.woff)format("woff")}@font-face{font-family:Heebo;font-style:normal;font-display:swap;font-weight:600;src:url(/assets/heebo-latin-600-normal-C0GLQ-RT.woff2)format("woff2"),url(/assets/heebo-latin-600-normal-2W86uxnp.woff)format("woff")}@font-face{font-family:Heebo;font-style:normal;font-display:swap;font-weight:700;src:url(/assets/heebo-latin-700-normal-PoyjiH5f.woff2)format("woff2"),url(/assets/heebo-latin-700-normal-DxB9_ClD.woff)format("woff")}@font-face{font-family:Heebo;font-style:normal;font-display:swap;font-weight:800;src:url(/assets/heebo-latin-800-normal-CXX3wFtI.woff2)format("woff2"),url(/assets/heebo-latin-800-normal-jzg0ZXtx.woff)format("woff")}@font-face{font-family:Heebo;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/heebo-latin-ext-400-normal-DRmJUxQB.woff2)format("woff2"),url(/assets/heebo-latin-ext-400-normal-DXPdCX6a.woff)format("woff")}@font-face{font-family:Heebo;font-style:normal;font-display:swap;font-weight:500;src:url(/assets/heebo-latin-ext-500-normal-i0ou_jpq.woff2)format("woff2"),url(/assets/heebo-latin-ext-500-normal-BxM-et3U.woff)format("woff")}@font-face{font-family:Heebo;font-style:normal;font-display:swap;font-weight:600;src:url(/assets/heebo-latin-ext-600-normal-RIbyLypU.woff2)format("woff2"),url(/assets/heebo-latin-ext-600-normal-BYQD5BMZ.woff)format("woff")}@font-face{font-family:Heebo;font-style:normal;font-display:swap;font-weight:700;src:url(/assets/heebo-latin-ext-700-normal-qhovM35d.woff2)format("woff2"),url(/assets/heebo-latin-ext-700-normal-uPTFHbI6.woff)format("woff")}@font-face{font-family:Poppins;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/poppins-latin-400-normal-cpxAROuN.woff2)format("woff2"),url(/assets/poppins-latin-400-normal-BOb3E3N0.woff)format("woff")}@font-face{font-family:Poppins;font-style:normal;font-display:swap;font-weight:500;src:url(/assets/poppins-latin-500-normal-C8OXljZJ.woff2)format("woff2"),url(/assets/poppins-latin-500-normal-DGXqpDMm.woff)format("woff")}@font-face{font-family:Poppins;font-style:normal;font-display:swap;font-weight:600;src:url(/assets/poppins-latin-600-normal-zEkxB9Mr.woff2)format("woff2"),url(/assets/poppins-latin-600-normal-BJdTmd5m.woff)format("woff")}@font-face{font-family:Poppins;font-style:normal;font-display:swap;font-weight:700;src:url(/assets/poppins-latin-700-normal-Qrb0O0WB.woff2)format("woff2"),url(/assets/poppins-latin-700-normal-BVuQR_eA.woff)format("woff")}@font-face{font-family:Poppins;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/poppins-latin-ext-400-normal-by3JarPu.woff2)format("woff2"),url(/assets/poppins-latin-ext-400-normal-DaBSavcJ.woff)format("woff")}@font-face{font-family:Poppins;font-style:normal;font-display:swap;font-weight:500;src:url(/assets/poppins-latin-ext-500-normal-CK-6C4Hw.woff2)format("woff2"),url(/assets/poppins-latin-ext-500-normal-CgAe2rWW.woff)format("woff")}@font-face{font-family:Poppins;font-style:normal;font-display:swap;font-weight:600;src:url(/assets/poppins-latin-ext-600-normal-CAhIAdZj.woff2)format("woff2"),url(/assets/poppins-latin-ext-600-normal-Df5ffKXP.woff)format("woff")}@font-face{font-family:Poppins;font-style:normal;font-display:swap;font-weight:700;src:url(/assets/poppins-latin-ext-700-normal-cby-RkWa.woff2)format("woff2"),url(/assets/poppins-latin-ext-700-normal-DctTR6Tg.woff)format("woff")}@font-face{font-family:Inter;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/inter-latin-400-normal-C38fXH4l.woff2)format("woff2"),url(/assets/inter-latin-400-normal-CyCys3Eg.woff)format("woff")}@font-face{font-family:Inter;font-style:normal;font-display:swap;font-weight:500;src:url(/assets/inter-latin-500-normal-Cerq10X2.woff2)format("woff2"),url(/assets/inter-latin-500-normal-BL9OpVg8.woff)format("woff")}@font-face{font-family:Inter;font-style:normal;font-display:swap;font-weight:600;src:url(/assets/inter-latin-600-normal-LgqL8muc.woff2)format("woff2"),url(/assets/inter-latin-600-normal-CiBQ2DWP.woff)format("woff")}@font-face{font-family:Inter;font-style:normal;font-display:swap;font-weight:700;src:url(/assets/inter-latin-700-normal-Yt3aPRUw.woff2)format("woff2"),url(/assets/inter-latin-700-normal-BLAVimhd.woff)format("woff")}@font-face{font-family:Inter;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/inter-latin-ext-400-normal-C1nco2VV.woff2)format("woff2"),url(/assets/inter-latin-ext-400-normal-77YHD8bZ.woff)format("woff")}@font-face{font-family:Inter;font-style:normal;font-display:swap;font-weight:500;src:url(/assets/inter-latin-ext-500-normal-CV4jyFjo.woff2)format("woff2"),url(/assets/inter-latin-ext-500-normal-BxGbmqWO.woff)format("woff")}@font-face{font-family:Inter;font-style:normal;font-display:swap;font-weight:600;src:url(/assets/inter-latin-ext-600-normal-D2bJ5OIk.woff2)format("woff2"),url(/assets/inter-latin-ext-600-normal-CIVaiw4L.woff)format("woff")}@font-face{font-family:Inter;font-style:normal;font-display:swap;font-weight:700;src:url(/assets/inter-latin-ext-700-normal-Ca8adRJv.woff2)format("woff2"),url(/assets/inter-latin-ext-700-normal-TidjK2hL.woff)format("woff")}@font-face{font-family:Rajdhani;font-style:normal;font-display:swap;font-weight:500;src:url(/assets/rajdhani-latin-500-normal-ByNUCHrt.woff2)format("woff2"),url(/assets/rajdhani-latin-500-normal-DfvNI-Td.woff)format("woff")}@font-face{font-family:Rajdhani;font-style:normal;font-display:swap;font-weight:600;src:url(/assets/rajdhani-latin-600-normal-CXCVEoA9.woff2)format("woff2"),url(/assets/rajdhani-latin-600-normal-Dx02qI2_.woff)format("woff")}@font-face{font-family:Rajdhani;font-style:normal;font-display:swap;font-weight:700;src:url(/assets/rajdhani-latin-700-normal-BPDUZo87.woff2)format("woff2"),url(/assets/rajdhani-latin-700-normal-e0Uj8ZlN.woff)format("woff")}@font-face{font-family:Rajdhani;font-style:normal;font-display:swap;font-weight:500;src:url(/assets/rajdhani-latin-ext-500-normal-DiyUS11w.woff2)format("woff2"),url(/assets/rajdhani-latin-ext-500-normal-CyRWJZ5B.woff)format("woff")}@font-face{font-family:Rajdhani;font-style:normal;font-display:swap;font-weight:600;src:url(/assets/rajdhani-latin-ext-600-normal-C9ZjJQAt.woff2)format("woff2"),url(/assets/rajdhani-latin-ext-600-normal-BleIgkPp.woff)format("woff")}@font-face{font-family:Rajdhani;font-style:normal;font-display:swap;font-weight:700;src:url(/assets/rajdhani-latin-ext-700-normal-S6aYESQK.woff2)format("woff2"),url(/assets/rajdhani-latin-ext-700-normal-BPaQ7tlD.woff)format("woff")}@font-face{font-family:Barlow;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/barlow-latin-400-normal-qiz4-Cze.woff2)format("woff2"),url(/assets/barlow-latin-400-normal-fsAxiSwU.woff)format("woff")}@font-face{font-family:Barlow;font-style:normal;font-display:swap;font-weight:500;src:url(/assets/barlow-latin-500-normal-BPAOfeC8.woff2)format("woff2"),url(/assets/barlow-latin-500-normal-C1h8hMer.woff)format("woff")}@font-face{font-family:Barlow;font-style:normal;font-display:swap;font-weight:600;src:url(/assets/barlow-latin-600-normal-DILqtrty.woff2)format("woff2"),url(/assets/barlow-latin-600-normal-CNwfPWQD.woff)format("woff")}@font-face{font-family:Barlow;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/barlow-latin-ext-400-normal-HxX4XjxC.woff2)format("woff2"),url(/assets/barlow-latin-ext-400-normal-CvBsJvxq.woff)format("woff")}@font-face{font-family:Barlow;font-style:normal;font-display:swap;font-weight:500;src:url(/assets/barlow-latin-ext-500-normal-DOaysfXq.woff2)format("woff2"),url(/assets/barlow-latin-ext-500-normal-CJPcKP2Q.woff)format("woff")}@font-face{font-family:Barlow;font-style:normal;font-display:swap;font-weight:600;src:url(/assets/barlow-latin-ext-600-normal-B8NK_A3D.woff2)format("woff2"),url(/assets/barlow-latin-ext-600-normal-DMVRjfRT.woff)format("woff")}@font-face{font-family:Barlow Condensed;font-style:normal;font-display:swap;font-weight:500;src:url(/assets/barlow-condensed-latin-500-normal-BgYH2mbd.woff2)format("woff2"),url(/assets/barlow-condensed-latin-500-normal-HIEiP5Ov.woff)format("woff")}@font-face{font-family:Barlow Condensed;font-style:normal;font-display:swap;font-weight:600;src:url(/assets/barlow-condensed-latin-600-normal-DepVgxBB.woff2)format("woff2"),url(/assets/barlow-condensed-latin-600-normal-BFJEwTuo.woff)format("woff")}@font-face{font-family:Barlow Condensed;font-style:normal;font-display:swap;font-weight:700;src:url(/assets/barlow-condensed-latin-700-normal-v1xN8_Wq.woff2)format("woff2"),url(/assets/barlow-condensed-latin-700-normal-Dmwat-ge.woff)format("woff")}@font-face{font-family:Barlow Condensed;font-style:normal;font-display:swap;font-weight:500;src:url(/assets/barlow-condensed-latin-ext-500-normal-yA5ONLQ9.woff2)format("woff2"),url(/assets/barlow-condensed-latin-ext-500-normal-B1RE8WP7.woff)format("woff")}@font-face{font-family:Barlow Condensed;font-style:normal;font-display:swap;font-weight:600;src:url(/assets/barlow-condensed-latin-ext-600-normal-18ESti3H.woff2)format("woff2"),url(/assets/barlow-condensed-latin-ext-600-normal-Clv9cIcR.woff)format("woff")}@font-face{font-family:Barlow Condensed;font-style:normal;font-display:swap;font-weight:700;src:url(/assets/barlow-condensed-latin-ext-700-normal-CwuXbfVR.woff2)format("woff2"),url(/assets/barlow-condensed-latin-ext-700-normal-BIHFfxf0.woff)format("woff")}:root{--bg:#1f1f1f;--panel:#292929;--panel-2:#303030;--raised:#3f3f3f;--line:#474747;--line-2:#575757;--slot-top:#545454;--slot-bottom:#3d3d3d;--paper:#fff;--dim:#cccbcb;--faint:#a09f9f;--radius:4px;--radius-lg:6px;--button-top:#4c4c4c;--button-bottom:#393939;--button-edge:#1c1c1c;--ficsit:#fa9549;--ficsit-deep:#e07a2e;--ficsit-ink:#1d1206;--alt:#6fcab8;--converter:#bda2f5;--fluid:#4aa3df;--power:#f7d154;--shard:#52b2ff;--sloop:#f27ad2;--supply:#8cc27a;--alert:#e95a4f;--floor:#242424;--font-display:"Barlow Condensed", "Arial Narrow", sans-serif;--font-body:"Barlow", "Segoe UI", sans-serif;--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark}*{box-sizing:border-box}html,body,#root{height:100%;margin:0}body{background:var(--bg);color:var(--paper);font:400 16px / 1.45 var(--font-body);font-variant-numeric:tabular-nums;-webkit-font-smoothing:antialiased;overflow:hidden}.sr-only{clip-path:inset(50%);white-space:nowrap;width:1px;height:1px;position:absolute;overflow:hidden}button,input{font:inherit;color:inherit}button{cursor:pointer}button:disabled{cursor:default;opacity:.35}:focus-visible{outline:2px solid var(--focus,var(--ficsit));outline-offset:2px}::selection{background:var(--ficsit);color:var(--ficsit-ink)}::-webkit-scrollbar{width:12px;height:12px}::-webkit-scrollbar-track{background:#151515;border-radius:6px;box-shadow:inset 0 1px 3px #0009}::-webkit-scrollbar-thumb{background:linear-gradient(90deg,#6e6e6e,#585858) padding-box padding-box;border:2px solid #151515;border-radius:6px;box-shadow:inset 0 1px #ffffff2e}::-webkit-scrollbar-thumb:horizontal{background:linear-gradient(#6e6e6e,#585858) padding-box padding-box}::-webkit-scrollbar-thumb:hover{background:linear-gradient(90deg,#858585,#686868) padding-box padding-box}::-webkit-scrollbar-thumb:active{background:var(--ficsit) padding-box}::-webkit-scrollbar-corner{background:0 0;display:none}::-webkit-scrollbar-button{background:0 0;display:none}@supports not selector(::-webkit-scrollbar){*{scrollbar-width:thin;scrollbar-color:#666 #151515}}.app{font-family:var(--font-body);--top-h:calc(64px * var(--ui-scale,1));--mode:var(--ficsit);--deck:min(max(calc(300px * var(--ui-scale,1)), var(--deck-h,calc(clamp(250px, 36vh, 420px) * var(--ui-scale,1)))), max(calc(300px * var(--ui-scale,1)), 100dvh - var(--top-h) - 300px));--deck-row:fit-content(var(--deck));grid-template-columns:minmax(0,1fr);grid-template-rows:var(--top-h) var(--deck-row) minmax(0, 1fr);-webkit-user-select:none;user-select:none;height:100%;display:grid}.app input,.app textarea{-webkit-user-select:text;user-select:text}.app[data-empty]{grid-template-rows:var(--top-h) minmax(0, 1fr)}.app[data-mode=power]{--mode:var(--power)}.app[data-empty] .side{display:none}.topbar{background:var(--panel);border-bottom:1px solid var(--line);grid-column:1/-1;align-items:center;gap:18px;padding-right:18px;display:flex}.brand{flex:none;align-self:stretch;align-items:stretch;gap:16px;display:flex}.brand-mark{--tile:25.456px;clip-path:polygon(0 0,100% 0,calc(100% - 18px) 100%,0 100%);width:56px;position:relative;overflow:hidden}.brand-mark:before{content:"";inset:0 auto 0 calc(var(--tile) * -1);width:calc(100% + var(--tile) * 2);background:repeating-linear-gradient(-45deg, var(--mode) 0 9px, var(--bg) 9px 18px);will-change:transform;animation:3.2s linear infinite hazard-march;position:absolute}@keyframes hazard-march{to{transform:translateX(var(--tile))}}.brand-name{font:700 28px / 1 var(--font-display);letter-spacing:.08em;color:var(--ficsit);align-self:center;margin:0}.topbar-controls{flex:none;align-items:center;gap:14px;display:flex}.control-label{font:600 15px var(--font-display);letter-spacing:.02em;color:var(--faint)}.plan-tabs{flex:1;align-self:stretch;align-items:stretch;min-width:0;display:flex}.plan-tabs-frame{flex:0 auto;min-width:0;display:flex;position:relative}.plan-tabs-strip{scrollbar-width:none;overscroll-behavior-x:contain;flex:1;align-items:stretch;gap:2px;min-width:0;display:flex;overflow-x:auto}.plan-tabs-strip::-webkit-scrollbar{display:none}.plan-tabs-frame[data-more-left] .plan-tabs-strip{-webkit-mask-image:linear-gradient(90deg,#0000,#000 44px);mask-image:linear-gradient(90deg,#0000,#000 44px)}.plan-tabs-frame[data-more-right] .plan-tabs-strip{-webkit-mask-image:linear-gradient(90deg,#000 calc(100% - 44px),#0000);mask-image:linear-gradient(90deg,#000 calc(100% - 44px),#0000)}.plan-tabs-frame[data-more-left][data-more-right] .plan-tabs-strip{-webkit-mask-image:linear-gradient(90deg,#0000,#000 44px calc(100% - 44px),#0000);mask-image:linear-gradient(90deg,#0000,#000 44px calc(100% - 44px),#0000)}.tabs-track{pointer-events:none;background:#ffffff12;height:3px;position:absolute;inset:0 0 auto}.tabs-track span{background:var(--mode,var(--ficsit));border-radius:2px;transition:left .12s ease-out;position:absolute;top:0;bottom:0}.tabs-nudge{width:30px;height:36px;color:var(--paper);background:linear-gradient(180deg, var(--button-top), var(--button-bottom));border:1px solid var(--button-edge);border-radius:var(--radius);flex:none;align-self:center;place-items:center;margin:0 4px;padding:0;display:grid;box-shadow:inset 0 1px #ffffff1f}.tabs-nudge:hover:not(:disabled){color:var(--ficsit)}.tabs-nudge:disabled{opacity:.3;cursor:default}.plan-tab{max-width:280px;font:600 19px var(--font-display);letter-spacing:.02em;color:var(--faint);white-space:nowrap;background:0 0;border:0;flex:none;padding:0 6px 0 0;position:relative}.plan-tab-name{min-width:0;height:100%;color:inherit;font:inherit;letter-spacing:inherit;background:0 0;border:0;align-items:center;gap:8px;padding:0 4px 0 18px;display:inline-flex}.plan-tab-label{text-overflow:ellipsis;min-width:0;overflow:hidden}.plan-tab-close{width:24px;height:24px;color:var(--faint);opacity:0;background:0 0;border:0;border-radius:5px;flex:none;place-items:center;padding:0;display:grid}.plan-tab:hover .plan-tab-close,.plan-tab[aria-current=page] .plan-tab-close,.plan-tab-close:focus-visible{opacity:1}.plan-tab-close:hover{background:var(--raised);color:var(--paper)}@media (hover:none){.plan-tab:not([aria-current=page]) .plan-tab-close{display:none}}.plan-tab:hover,.plan-tab[aria-current=page]{color:var(--paper);background:var(--panel-2)}.plan-tab[aria-current=page]:after{content:"";background:var(--ficsit);height:4px;position:absolute;inset:auto 0 0}.plan-tab{align-items:center;gap:8px;display:inline-flex}.plan-tab-icon{flex:none;margin-left:-4px}.plan-tabs.power .plan-tab[aria-current=page]:after{background:var(--power)}.plan-tab.editing{background:var(--bg);border:1px solid var(--ficsit);width:220px;color:var(--paper);outline:none;margin:10px 0;padding:0 12px}.plan-add{width:44px;color:var(--faint);background:0 0;border:0;flex:none;font-size:28px;line-height:1}.plan-add:hover{color:var(--ficsit)}.tab-menu{flex:none;align-self:center;position:relative}.tab-menu-button{width:36px;height:36px;color:var(--faint);background:0 0;border:1px solid #0000;place-items:center;display:grid}.tab-menu-button:hover,.tab-menu-button[aria-expanded=true]{border-color:var(--line-2);color:var(--paper)}.tab-menu-list{z-index:60;zoom:var(--ui-scale,1);background:var(--raised);border:1px solid var(--line-2);border-top:3px solid var(--mode);flex-direction:column;min-width:190px;padding:4px;display:flex;position:fixed;box-shadow:0 10px 24px #00000080}.menu-item{color:var(--paper);font:600 16px var(--font-display);text-align:left;white-space:nowrap;background:0 0;border:0;align-items:center;gap:10px;padding:9px 12px;display:flex}.menu-item .glyph{color:var(--faint)}.menu-item:hover{background:var(--panel-2)}.menu-item.delete{border-top:1px solid var(--line);color:var(--alert);margin-top:4px}.menu-item.delete .glyph{color:var(--alert)}.share-button.copied .glyph{color:var(--supply)}.share-button.failed{border-color:var(--alert)}.splitter{z-index:20;cursor:row-resize;touch-action:none;height:10px;position:absolute;bottom:-11px;left:0;right:0}.splitter:after{content:"";height:3px;transition:background .12s;position:absolute;top:0;left:0;right:0}.splitter:hover:after,.splitter:focus-visible:after,.resizing .splitter:after{background:var(--ficsit)}.splitter:focus-visible{outline:none}.resizing{cursor:row-resize}.segmented{background:var(--bg);border:1px solid var(--line);gap:3px;padding:3px;display:inline-flex}.segmented button{font:600 16px / 1.3 var(--font-display);letter-spacing:.02em;color:var(--dim);background:0 0;border:0;padding:6px 14px}.segmented button:hover{color:var(--paper);background:var(--raised)}.segmented button[aria-checked=true]{background:var(--ficsit);color:var(--ficsit-ink)}.text-button{color:var(--ficsit);font:600 16px var(--font-display);letter-spacing:.02em;background:0 0;border:0;padding:2px 0}.text-button:hover:not(:disabled){text-underline-offset:4px;text-decoration:underline}.text-button:disabled,.ghost-button:disabled{color:var(--faint)}.text-button.danger{color:var(--alert)}.rate-input{text-align:right;background:var(--bg);border:1px solid var(--line-2);width:88px;font:700 20px / 1.2 var(--font-display);color:var(--ficsit);padding:7px 10px}.rate-input::placeholder{color:var(--faint);font-size:15px;font-weight:500}.rate-input:focus{border-color:var(--ficsit);box-shadow:0 0 0 1px var(--ficsit);outline:none}.rate-field{align-items:stretch;display:inline-flex}.rate-field .rate-input{border-right:0}.rate-step{border:1px solid var(--line-2);flex-direction:column;display:flex}.rate-step button{-webkit-tap-highlight-color:transparent;background:var(--panel);width:30px;color:var(--dim);border:0;flex:1;place-items:center;padding:0;display:grid}.rate-step button+button{border-top:1px solid var(--line-2)}.rate-step button:hover:not(:disabled){background:var(--ficsit);color:var(--ficsit-ink)}.rate-step span:before{font-size:10px;line-height:1;display:block}.step-up span:before{content:"▲"}.step-down span:before{content:"▼"}.rate-field:focus-within .rate-step{border-color:var(--ficsit)}.unit{color:var(--faint);min-width:2em;font-size:14px}.icon-button{width:34px;height:34px;color:var(--faint);background:0 0;border:0;flex:none;font-size:24px;line-height:1}.icon-button:hover{color:var(--alert)}.search,.picker-search{background:var(--bg);border:1px solid var(--line-2);outline:none;width:100%;padding:11px 14px;font-size:16px}.search:focus,.picker-search:focus{border-color:var(--ficsit)}.search-box{display:block;position:relative}.search-box .glyph{color:var(--faint);pointer-events:none;position:absolute;top:50%;left:12px;translate:0 -50%}.search-box .search{background:var(--panel-2);border-color:var(--line-2);padding-left:42px}.search-box:focus-within .glyph{color:var(--ficsit)}.form-mark{flex:none;width:12px;height:12px}.form-mark.solid{background:var(--line-2)}.form-mark.fluid{border-radius:50%}.icon{object-fit:contain;flex:none}.slot{background:linear-gradient(180deg, var(--slot-top), var(--slot-bottom));border:1px solid var(--line-2);flex:none;place-items:center;padding:0;display:grid;position:relative;box-shadow:inset 0 1px #ffffff0f,0 1px 2px #0006}button.slot:hover{border-color:var(--ficsit)}.slot.target{border-color:var(--ficsit);box-shadow:inset 0 0 0 1px color-mix(in srgb, var(--ficsit) 50%, transparent)}.slot.muted{opacity:.75}.slot .icon{filter:drop-shadow(0 2px 2px #00000073)}.slot-count{font:700 max(13px, calc(var(--slot-size) * .27)) / 1 var(--font-display);color:#fff;text-shadow:0 1px 2px #000,0 0 3px #000;pointer-events:none;position:absolute;bottom:1px;right:4px}.side{z-index:2;background:var(--panel-2);border-bottom:1px solid var(--line-2);flex-direction:column;min-height:0;display:flex;position:relative}.tabs{background:var(--panel);border-bottom:1px solid var(--line);display:flex}.tabs button{font:700 19px / 1 var(--font-display);letter-spacing:.05em;text-transform:uppercase;color:var(--faint);background:0 0;border:0;padding:14px 30px 11px;position:relative}.tabs button:hover{color:var(--paper)}.tabs button[aria-selected=true]{color:var(--paper);background:var(--panel-2)}.tabs button[aria-selected=true]:after{content:"";background:var(--mode);height:4px;position:absolute;inset:auto 0 -1px}.tabs .deck-toggle{font:600 16px var(--font-display);letter-spacing:.03em;text-transform:none;color:var(--faint);align-items:center;gap:8px;margin-left:auto;padding:0 20px;display:flex}.tabs .deck-toggle:hover{color:var(--ficsit)}.deck-arrow{border:2px solid;border-width:2px 2px 0 0;width:9px;height:9px;margin-top:3px;transition:transform .2s;transform:rotate(-45deg)}.app[data-deck=closed] .deck-arrow{margin-top:-5px;transform:rotate(135deg)}.app[data-deck=closed]:not([data-empty]){grid-template-rows:var(--top-h) auto minmax(0, 1fr)}.app[data-deck=closed] .side>:not(.tabs),.app[data-deck=closed] .tabs button[aria-selected=true]:after{display:none}.app[data-deck=closed] .tabs{border-bottom:0}.app[data-deck=closed] .tabs button[aria-selected=true]{color:var(--faint);background:0 0}.tab-badge{color:var(--faint);margin-left:8px;font-weight:500}.panel-body{--fade:0px;min-height:0;-webkit-mask-image:linear-gradient(to bottom, #000 calc(100% - var(--fade)), transparent);mask-image:linear-gradient(to bottom, #000 calc(100% - var(--fade)), transparent);flex-direction:column;flex:1;gap:28px;padding:20px;display:flex;overflow-y:auto}@property --fade{syntax:"<length>";inherits:false;initial-value:0}@keyframes more-below{0%{--fade:14px}to{--fade:0px}}@supports (animation-timeline:scroll()){.panel-body{animation:linear both more-below;animation-timeline:scroll(self);animation-range:calc(100% - 30px) 100%}}.stack{flex-direction:column;gap:8px;display:flex}.panel-body.targets{grid-template-columns:repeat(auto-fit,minmax(360px,1fr));align-items:start;gap:24px 36px;display:grid}.panel-body.targets>.stack>.section-title:first-child,.panel-body.targets>.stack>.section-head:first-child{align-items:center;min-height:34px;display:flex}.section-title{font:700 18px / 1.2 var(--font-display);letter-spacing:.05em;text-transform:uppercase;color:var(--dim);margin:0}.section-title.with-icon{align-items:center;gap:10px;display:flex}.hint{color:var(--faint);max-width:46ch;margin:0 0 4px;font-size:15px}.item-card{background:var(--raised);border-left:4px solid var(--ficsit);align-items:center;gap:14px;padding:8px;display:flex}.item-card.flat{background:0 0;border-left:0;padding:0}.item-card-name{min-width:0;font:600 20px / 1.15 var(--font-display);letter-spacing:.01em;flex:1}.item-card-rate{align-items:center;gap:6px;display:flex}.add-button{border:1px dashed var(--line-2);min-height:52px;color:var(--dim);font:600 18px var(--font-display);letter-spacing:.03em;text-align:left;background:0 0;align-items:center;gap:12px;padding:0 16px;display:flex}.add-button:hover{border-color:var(--ficsit);color:var(--ficsit)}.add-plus{font-size:26px;line-height:1}.picker{border:1px solid var(--ficsit);background:var(--panel)}.picker-search{border:0;border-bottom:1px solid var(--line)}.picker-list{max-height:420px;margin:0;padding:4px 0;list-style:none;overflow-y:auto}.picker-list li{cursor:pointer;align-items:center;gap:12px;padding:6px 14px;font-size:17px;display:flex}.picker-list li.active{background:var(--raised);box-shadow:inset 4px 0 var(--ficsit)}.picker-empty{color:var(--faint);cursor:default}.picker-list li.picker-heading{border-top:1px solid var(--line);font:600 13px var(--font-display);letter-spacing:.08em;text-transform:uppercase;color:var(--faint);cursor:default;margin-top:6px;padding:8px 14px 4px}.panel-body.recipes{flex-direction:row;gap:0;padding:0;overflow:hidden}.recipe-tools{border-right:1px solid var(--line);flex-direction:column;flex:none;gap:12px;width:360px;padding:18px 20px;display:flex;overflow-y:auto}.recipe-tools .segmented{align-self:stretch}.recipe-tools .segmented button{flex:1;padding-inline:6px}.tier-picker{flex-direction:column;gap:8px;display:flex}.tier-steps{grid-template-columns:repeat(10,1fr);gap:3px;display:grid}.tier-steps button{background:var(--raised);height:38px;color:var(--faint);font:700 18px var(--font-display);border:0}.tier-steps button.reached{background:color-mix(in srgb, var(--ficsit) 24%, var(--raised));color:var(--paper)}.tier-steps button[aria-checked=true]{background:var(--ficsit);color:var(--ficsit-ink)}.tier-steps button:hover{outline:1px solid var(--ficsit);outline-offset:-1px}.bulk{flex-wrap:wrap;align-items:center;gap:4px 16px;display:flex}.bulk-count{font:600 17px var(--font-display);color:var(--dim);margin-right:auto}.recipe-list{flex:1;min-width:0;min-height:0;padding:16px 20px 12px;overflow-y:auto}.recipe-flow{column-width:340px;column-gap:24px}.recipe-group{break-inside:avoid;padding-bottom:20px}.recipe-lead,.recipe-cont,.recipe-row{break-inside:avoid}.recipe-row{background:var(--raised);cursor:pointer;border-left:4px solid #0000;gap:12px;margin-top:6px;padding:12px 14px;display:flex}.recipe-row:hover{background:color-mix(in srgb, var(--paper) 5%, var(--raised))}.recipe-row.on{border-left-color:var(--ficsit)}.recipe-row.locked{opacity:.45;cursor:not-allowed}.recipe-row.locked input{cursor:not-allowed}.recipe-row input{accent-color:var(--ficsit);flex:none;width:18px;height:18px;margin:4px 0 0}.recipe-main{flex-direction:column;gap:8px;min-width:0;display:flex}.recipe-name{font:600 19px / 1.2 var(--font-display)}.recipe-io{flex-wrap:wrap;align-items:center;gap:6px;display:flex}.io-in,.io-out{flex-wrap:wrap;gap:4px;display:flex}.io-arrow{color:var(--ficsit);font:700 28px / 1 var(--font-display);margin:0 4px}.recipe-machine{color:var(--faint);align-items:center;gap:6px;font-size:14px;display:flex}.recipe-duration:before{content:"";vertical-align:-1px;background:var(--line-2);width:1px;height:12px;margin:0 8px;display:inline-block}.kind{font:600 13px / 1.6 var(--font-display);letter-spacing:.03em;vertical-align:2px;margin-left:10px;padding:0 6px;display:inline-block}.kind.alternate{color:var(--alt);border:1px solid color-mix(in srgb, var(--alt) 50%, transparent)}.kind.converter{color:var(--converter);border:1px solid color-mix(in srgb, var(--converter) 50%, transparent)}.recipe-tier{font:600 14px var(--font-display);color:var(--faint);margin-left:10px}.recipe-row.locked .recipe-tier{color:var(--alert)}.miner-picker{grid-template-columns:repeat(3,1fr);gap:6px;display:grid}.miner-picker button{background:var(--raised);border:1px solid var(--line);font:600 17px var(--font-display);color:var(--dim);flex-direction:column;align-items:center;gap:4px;padding:10px 6px 8px;display:flex}.miner-picker button:hover{border-color:var(--line-2);color:var(--paper)}.miner-picker button[aria-checked=true]{border-color:var(--ficsit);box-shadow:inset 0 0 0 1px var(--ficsit);color:var(--paper)}.field{flex-direction:column;gap:6px;margin-top:6px;display:flex}.panel-body.resources{flex-direction:row;gap:0;padding:0;overflow:hidden}.panel-body.resources>.stack{min-height:0;padding:18px 20px 20px;overflow-y:auto}.panel-body.resources>.extraction{border-right:1px solid var(--line);flex:none;width:400px}.panel-body.resources>.resource-list{flex:1;min-width:0}.resource-cards{grid-template-columns:repeat(auto-fill,minmax(380px,1fr));align-items:start;gap:8px 16px;display:grid}.field .item-card-rate{align-self:flex-start}.resource-card{background:var(--raised);flex-direction:column;gap:8px;padding:10px 12px;display:flex}.resource-card:not(.used){background:0 0;padding:4px 12px}.resource-card:not(.used) .item-card-name{color:var(--dim)}.meter{background:var(--bg);height:4px}.meter span{background:var(--ficsit);height:100%;display:block}.meter span.full{background:var(--alert)}.over-cap{margin:0;font-size:13px}.extract-row{align-items:center;gap:10px;display:flex}.extract-name{min-width:0;color:var(--dim);flex:1;font-size:14px}.extract-count{min-width:52px;color:var(--faint);flex-direction:column;align-items:center;padding:2px 6px;display:flex}.extract-count b{font:700 20px / 1.1 var(--font-display)}.extract-count small{font-size:11px}.extract-count.chosen{background:color-mix(in srgb, var(--ficsit) 18%, transparent);color:var(--paper)}.extract-count.chosen b{color:var(--ficsit)}.set-nodes{align-self:flex-start;font-size:14px}.node-count{width:52px;margin-top:6px;display:block}.node-count .rate-input{text-align:center;width:100%;min-width:0;padding:5px 4px}.nodes-line{color:var(--dim);flex-wrap:wrap;justify-content:space-between;align-items:center;gap:4px 12px;margin:0;font-size:13px;display:flex}.beta-tag{font:600 10px / 14px var(--font-body);letter-spacing:.04em;text-transform:uppercase;opacity:.75;vertical-align:2px;border:1px solid;border-radius:3px;margin-left:6px;padding:0 4px}.nodes-short{color:var(--alert)}.game-mult{align-items:center;gap:8px;display:inline-flex}.game-mult .rate-input{width:84px}.game-mult .unit{font:600 18px var(--font-display);color:var(--dim)}.game-intro{margin:0 0 6px}.floor{background:var(--floor);flex-direction:column;min-width:0;min-height:0;display:flex}.floor-view{flex:1;min-height:0;position:relative;container:floor/inline-size}.floor-message{text-align:center;font:600 24px / 1.4 var(--font-display);place-items:center;padding:40px;display:grid;position:absolute;inset:0}.floor-message.error{color:var(--alert)}.busy{z-index:6;font:700 16px var(--font-display);color:var(--ficsit);position:absolute;top:14px;left:18px}.floor-bar{left:18px;right:calc(300px / var(--ui-scale,1));z-index:5;pointer-events:none;align-items:center;gap:16px;display:flex;position:absolute;bottom:18px}.floor-bar>*{pointer-events:auto}.floor-hint-slot{flex:1;min-width:0;container-type:inline-size;pointer-events:none!important}.floor-hint{font:500 15px var(--font-body);color:var(--faint);white-space:nowrap;background:#151516;padding:4px 10px;display:inline-block;pointer-events:none!important}@container (width<250px){.floor-hint{display:none}}.floor-controls{z-index:5;align-items:center;gap:10px;display:flex;position:absolute;bottom:18px;right:18px}.fit-icon{font-size:20px;line-height:1;display:none}.floor-controls .segmented button{padding:4px 12px;font-size:20px;line-height:1.2}.floor-button{border:1px solid var(--line-2);background:var(--panel);font:600 16px var(--font-display);color:var(--dim);padding:8px 16px}.floor-button:hover{color:var(--ficsit);border-color:var(--ficsit)}.build-by-hand{background:var(--panel);border:1px solid var(--ficsit);border-radius:var(--radius);color:var(--paper);font:700 18px var(--font-display);letter-spacing:.03em;cursor:pointer;align-items:center;gap:8px;padding:9px 18px 9px 14px;display:inline-flex}.build-by-hand .glyph{color:var(--ficsit)}.build-by-hand:hover{background:var(--ficsit);color:var(--ficsit-ink)}.build-by-hand:hover .glyph{color:var(--ficsit-ink)}.quick-pick{scrollbar-gutter:stable;background:linear-gradient(#2c2c2c 1px,#0000 1px) 0 0/40px 40px,linear-gradient(90deg,#2c2c2c 1px,#0000 1px) 0 0/40px 40px;padding:48px 48px 60px;position:absolute;inset:0;overflow-y:auto}.quick-title{font:700 44px / 1 var(--font-display);letter-spacing:.02em;margin:0}.quick-inner{flex-direction:column;gap:14px;max-width:1120px;margin:0 auto;display:flex}.quick-pick .section-title{margin-top:18px}.quick-search{background:var(--bg);border:1px solid var(--line-2);outline:none;width:100%;max-width:620px;margin:6px 0 4px;padding:14px 18px;font-size:19px}.quick-search:focus{border-color:var(--ficsit)}.quick-item{position:relative}.quick-item.locked{opacity:.55}.quick-item.locked:hover{opacity:1}.tier-tag{background:var(--line-2);color:var(--paper);font:700 12px / 1.3 var(--font-display);letter-spacing:.05em;text-transform:uppercase;padding:1px 6px;position:absolute;top:6px;right:6px}.quick-grid{grid-template-columns:repeat(auto-fill,minmax(132px,1fr));gap:10px;display:grid}.quick-item{background:color-mix(in srgb, var(--panel) 88%, transparent);border:1px solid var(--line);font:600 16px / 1.15 var(--font-display);text-align:center;color:var(--dim);flex-direction:column;align-items:center;gap:8px;padding:14px 8px 12px;display:flex}.quick-item:hover{border-color:var(--ficsit);color:var(--paper);background:var(--panel-2)}.summary{background:var(--panel);border-bottom:1px solid var(--line);flex-wrap:wrap;flex:none;max-height:45%;display:flex;position:relative;overflow-y:auto}.readout{background:var(--panel);border:0;border-right:1px solid var(--line);text-align:left;flex-direction:column;justify-content:center;gap:3px;min-width:130px;padding:9px 22px;display:flex}.readout.link:hover{background:var(--panel-2)}.readout.link:hover .readout-label{color:var(--ficsit)}.readout.wide{border-right:0;flex:1;min-width:200px}.readout-label{font:700 15px var(--font-display);letter-spacing:.06em;text-transform:uppercase;color:var(--faint)}.readout-value{font:700 34px / 1 var(--font-display)}.readout-value small{color:var(--dim);font-size:20px}.readout.power .readout-value{color:var(--power)}.readout-sub{color:var(--faint);font-size:13px}.readout-value.shard{color:var(--shard)}.readout-value.sloop{color:var(--sloop)}.app[data-summary=compact] .readout{gap:1px;min-width:0;padding:6px 16px}.app[data-summary=compact] .readout-label{font-size:12px}.app[data-summary=compact] .readout-value{font-size:24px}.app[data-summary=compact] .readout.balance .readout-value{font-size:28px}.app[data-summary=compact] .readout-value small{font-size:15px}.app[data-summary=compact] .readout-sub{font-size:12px}.app[data-summary=compact] .readout.wide{min-width:190px}.readout.wide[data-many]{flex-basis:100%;order:1}.app[data-summary=compact] .raw-inputs{gap:4px 6px}.app[data-summary=compact] .raw-chip{gap:4px;padding:2px 3px 2px 4px}.app[data-summary=compact] .raw-chip .icon{width:24px;height:24px}.app[data-summary=compact] .raw-chip .rate-input{width:72px;padding:2px 6px;font-size:16px}.app[data-summary=compact] .readouts .slot{--slot-size:36px!important;width:36px!important;height:36px!important}.rate-chips{flex-wrap:wrap;align-items:center;gap:4px 14px;display:flex}.rate-chip{font:700 18px / 1.2 var(--font-display);white-space:nowrap;align-items:center;gap:5px;display:inline-flex}.rate-chip small{color:var(--dim);font-size:12px;font-weight:600}.rate-chips.muted .rate-chip{color:var(--dim)}.raw-inputs{flex-wrap:wrap;gap:6px 10px;display:flex}.raw-chip{background:var(--raised);border:1px solid var(--line);align-items:center;gap:6px;padding:3px 4px 3px 6px;display:flex}.raw-chip.pinned{border-color:var(--ficsit)}.raw-chip .rate-input{width:84px;color:var(--paper);padding:4px 8px;font-size:19px}.raw-chip.pinned .rate-input{color:var(--ficsit)}.raw-chip .unpin{width:26px;height:26px;font-size:20px}.slots{flex-wrap:wrap;gap:4px;display:flex}.chip{white-space:nowrap;align-items:center;gap:6px;display:inline-flex}.missing-banner{border-top:1px solid var(--line);background:color-mix(in srgb, var(--alert) 15%, var(--panel));flex-direction:column;flex-basis:100%;gap:8px;padding:12px 22px;font-size:16px;display:flex}.chip.alert{border:1px solid var(--alert);background:0 0;padding:4px 10px;font-weight:600}.chip.alert:hover{background:var(--alert);color:var(--bg)}.missing-title{font-weight:600}.missing-list{flex-direction:column;gap:8px;margin:0;padding:0;list-style:none;display:flex}.missing-list li{flex-wrap:wrap;align-items:center;gap:8px 12px;display:flex}.missing-text{flex:1;min-width:220px}.missing-fixes{flex-wrap:wrap;gap:8px;display:flex}.chip.fix{border:1px solid var(--ficsit);background:var(--ficsit);color:var(--ficsit-ink);padding:4px 10px;font-weight:600}.chip.fix:hover{background:var(--ficsit-deep)}.blocked{background:var(--panel);border:1px solid var(--line);border-top:3px solid var(--alert);text-align:left;max-width:680px;font:400 17px / 1.45 var(--font-body);flex-direction:column;gap:20px;padding:28px 30px;display:flex}.react-flow__handle{background:var(--line-2);border:0;border-radius:0;width:10px;height:18px}.react-flow__handle-top,.react-flow__handle-bottom{width:18px;height:10px}.react-flow__node-machine{cursor:pointer}.machine-node{--kind:var(--kind-standard,var(--ficsit));--kind-ink:var(--standard-ink,var(--ficsit-ink));--t:var(--card-text,1);zoom:var(--card-scale,1);width:calc(310px * (.6 + .4 * var(--t)));height:calc((130px + var(--run-extra,0) * 32px) * (.3 + .7 * var(--t)));background:var(--raised);border:1px solid var(--line-2);clip-path:polygon(0 0,calc(100% - 20px) 0,100% 20px,100% 100%,0 100%);flex-direction:column;transition:opacity .12s;display:flex;position:relative}.machine-node.alternate{--kind:var(--alt);--kind-ink:var(--alt-ink,var(--ficsit-ink))}.machine-node.converter{--kind:var(--converter);--kind-ink:var(--converter-ink,var(--ficsit-ink))}.machine-node.power{--kind:var(--power);--kind-ink:var(--power-ink,var(--ficsit-ink))}.react-flow__node:hover .machine-node,.machine-node.selected{border-color:var(--kind)}.machine-node.selected{box-shadow:inset 0 0 0 2px var(--kind)}.machine-strip{background:var(--kind);color:var(--kind-ink);font:700 calc(18px * var(--t)) / 1.2 var(--font-display);align-items:center;gap:8px;padding:3px 22px 3px 8px;display:flex}.strip-icon{filter:drop-shadow(0 1px 1px #00000073);flex:none}.machine-product{text-overflow:ellipsis;white-space:nowrap;flex:1;min-width:0;overflow:hidden}.machine-power{color:var(--power);font:700 calc(17px * var(--t)) / 1.25 var(--font-body);letter-spacing:0;text-transform:none;background:#121416e6;flex:none;align-items:baseline;gap:3px;padding:1px 7px 2px;display:flex}.machine-power small{font-size:calc(12px * var(--t));color:var(--dim);font-weight:600}.machine-node:after{content:"";background:var(--mod-bar,transparent);height:6px;position:absolute;bottom:0;left:0;right:0}.machine-body{flex:1;align-items:center;gap:10px;min-height:0;padding:0 12px 6px 8px;display:flex}.machine-draw{font:700 calc(16px * var(--t)) / 1.2 var(--font-body);color:var(--power);white-space:nowrap}.machine-draw small{font-size:calc(11px * var(--t));color:var(--dim);margin-left:3px;font-weight:600}.machine-icon{filter:drop-shadow(0 3px 4px #0000008c);flex:none}.machine-info{flex-direction:column;gap:1px;min-width:0;display:flex}.machine-type{font:600 calc(21px * var(--t)) / 1.15 var(--font-display);text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.machine-node.power .machine-type{-webkit-line-clamp:2;line-clamp:2;white-space:normal;font-size:calc(19px * var(--t));-webkit-box-orient:vertical;display:-webkit-box}.machine-run{font:600 calc(20px * var(--t)) / 1.2 var(--font-body);color:var(--paper);flex-direction:column;align-items:flex-start;display:flex}.machine-run>span{align-items:baseline;gap:5px;display:inline-flex}.machine-run b{font-size:calc(26px * var(--t));font-weight:700}.machine-run .times{font-size:calc(16px * var(--t));color:var(--faint)}.machine-run .over,.machine-run .over b{color:var(--shard)}.machine-run .plus{color:var(--faint);margin-right:3px}.machine-mods{align-items:baseline;gap:12px;display:flex}.mod-badge{font:700 15px var(--font-display)}.placements .mod-badge,.plan-table .mod-badge{margin-left:8px}.mod-badge.shard{color:var(--shard)}.mod-badge.sloop{color:var(--sloop)}.endpoint-node{--accent:var(--line-2);--t:var(--card-text,1);zoom:var(--card-scale,1);width:calc(330px * (.6 + .4 * var(--t)));height:calc(100px * (.3 + .7 * var(--t)));background:var(--panel);border:1px solid var(--line-2);border-left:5px solid var(--fluid-color,var(--accent));align-items:center;gap:12px;padding:8px 14px 8px 10px;transition:opacity .12s;display:flex}.endpoint-node.target{--accent:var(--ficsit);border-color:var(--ficsit);background:color-mix(in srgb, var(--ficsit) 12%, var(--panel))}.endpoint-node.missing{--accent:var(--alert);border-color:var(--alert)}.endpoint-node.surplus{border-style:dashed}.endpoint-node.supply{--accent:var(--supply);border-color:color-mix(in srgb, var(--supply) 55%, transparent);background:color-mix(in srgb, var(--supply) 11%, var(--panel))}.endpoint-node.supply .endpoint-kind{color:var(--supply)}.endpoint-text{flex-direction:column;flex:1;min-width:0;display:flex}.endpoint-kind{font:700 calc(13px * var(--t)) / 1.2 var(--font-display);letter-spacing:.07em;text-transform:uppercase;color:var(--faint);white-space:nowrap;text-overflow:ellipsis;overflow:hidden}.endpoint-node.target .endpoint-kind{color:var(--ficsit)}.endpoint-name{font:600 calc(19px * var(--t)) / 1.15 var(--font-display);text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.endpoint-name.long{font-size:calc(16px * var(--t))}.endpoint-line{flex-wrap:wrap;align-items:center;gap:0 8px;min-width:0;display:flex}.endpoint-extract{min-width:0;font-size:calc(13px * var(--t));color:var(--dim);white-space:nowrap;align-items:center;gap:4px;display:flex;overflow:hidden}.endpoint-rate{font:700 calc(20px * var(--t)) / 1.15 var(--font-display);white-space:nowrap;align-self:flex-start}.endpoint-rate small{color:var(--dim);margin-left:2px;font-size:14px}.machine-node.faded,.endpoint-node.faded,.edge-label.faded{opacity:.2}.react-flow__edge-path.belt{stroke:#98a0a8;stroke-width:4px;stroke-dasharray:12 7;animation:.9s linear infinite belt}.react-flow__edge-path.pipe{stroke-width:7px;stroke-linecap:round;opacity:.85}.react-flow__edge-path.faded{opacity:.1}.react-flow__edge-path.belt.lit{stroke:var(--ficsit)}.react-flow__edge-path.pipe.lit{stroke-width:9px;opacity:1}@keyframes belt{to{stroke-dashoffset:-20px}}@media (prefers-reduced-motion:reduce){.app:not([data-motion=full]) .react-flow__edge-path.belt{animation:none}}.edge-anchor{pointer-events:none;position:absolute}.edge-anchor:has(.lit){z-index:10}.edge-anchor:has(.pickable){pointer-events:none}.edge-label.pickable{pointer-events:all;cursor:pointer;color:inherit;text-align:left;font-family:inherit}.edge-label.picked{border-color:var(--ficsit);flex-wrap:wrap;max-width:360px}.edge-route{color:var(--paper);white-space:normal;flex-basis:100%;padding:2px 0 1px 3px;font-size:13px;font-weight:600}.edge-label{zoom:var(--card-text,1);background:var(--bg);border:1px solid var(--line);white-space:nowrap;pointer-events:none;align-items:center;gap:7px;padding:4px 9px 4px 5px;font-size:14px;transition:opacity .12s;display:flex}.edge-label.lit{border-color:var(--ficsit)}.edge-text{flex-direction:column;line-height:1.1;display:flex}.edge-item{color:var(--dim);font-size:13px}.edge-meta{align-items:center;gap:6px;display:flex}.edge-rate{font:700 18px var(--font-display)}.edge-tier{font:700 14px var(--font-display);color:var(--ficsit)}.edge-label.pipe .edge-tier{color:var(--fluid)}.react-flow__pane{cursor:grab}.inspector{z-index:8;background:var(--panel);border:1px solid var(--line-2);border-top:4px solid var(--ficsit);flex-direction:column;gap:18px;width:400px;max-height:calc(100% - 36px);padding:16px 18px 18px;display:flex;position:absolute;top:18px;right:18px;overflow-y:auto;box-shadow:0 14px 40px #00000080}.inspector-head{align-items:center;gap:14px;display:flex}.inspector-title{flex-direction:column;flex:1;min-width:0;display:flex}.inspector-machine{font:700 15px var(--font-display);letter-spacing:.06em;text-transform:uppercase;color:var(--ficsit)}.inspector-recipe{font:700 24px / 1.1 var(--font-display)}.inspector-row{flex-direction:column;gap:10px;display:flex}.inspector-label{font:700 15px var(--font-display);letter-spacing:.06em;text-transform:uppercase;color:var(--faint)}.stepper{flex-wrap:wrap;align-items:center;gap:10px;display:flex}.stepper button{border:1px solid var(--line-2);background:var(--bg);width:38px;height:38px;color:var(--paper);font:700 22px / 1 var(--font-display)}.stepper button:hover:not(:disabled){border-color:var(--ficsit);color:var(--ficsit)}.stepper b{text-align:center;min-width:1.6em;font:700 28px / 1 var(--font-display)}.stepper .slot-label{color:var(--faint);flex-basis:100%;margin:0}.clock-control{align-items:center;gap:10px;display:flex}.clock-control input[type=range]{appearance:none;background:linear-gradient(90deg, var(--ficsit) var(--fill), var(--raised) var(--fill));cursor:pointer;flex:1;height:8px}.clock-control input[type=range]::-webkit-slider-thumb{appearance:none;background:var(--paper);border:2px solid var(--ficsit);width:14px;height:26px}.shard-slots,.sloop-slots{align-items:center;gap:8px;display:flex}.shard-slot{border:1px solid var(--line-2);width:22px;height:22px;transform:rotate(45deg)scale(.8)}.shard-slot.filled{background:var(--shard);border-color:var(--shard)}.sloop-slots button{border:1px solid var(--line-2);background:var(--bg);width:40px;height:40px;color:var(--dim);font:700 18px var(--font-display);border-radius:50%}.sloop-slots button.filled{background:color-mix(in srgb, var(--sloop) 35%, var(--panel));border-color:var(--sloop);color:var(--paper)}.sloop-slots button[aria-checked=true]{outline:2px solid var(--sloop);outline-offset:2px}.slot-label{color:var(--dim);margin-left:6px;font-size:14px}.inspector-stats{background:var(--line);flex-direction:column;gap:1px;margin:0;display:flex}.inspector-stats>div{background:var(--panel-2);justify-content:space-between;align-items:center;padding:9px 12px;display:flex}.inspector-stats dt{color:var(--dim);align-items:center;gap:8px;display:flex}.inspector-stats dd{font:700 20px var(--font-display);margin:0}.inspector-stats dd.power{color:var(--power)}.inspector-stats>.inspector-groups{flex-wrap:wrap;row-gap:4px}.inspector-stats dd.groups-why{font:400 13px / 1.4 var(--font-body);color:var(--dim);flex-basis:100%}.mod-badge.groups,.table-groups{color:var(--fluid);white-space:nowrap}.table-groups{font:600 12px var(--font-body);margin-top:2px;display:block}.mod-badge.split{text-overflow:ellipsis;max-width:100%;color:var(--supply);white-space:nowrap;line-height:calc(32px * (.3 + .7 * var(--t)));align-self:flex-start;overflow:hidden}.inspector-stats>.inspector-split{flex-wrap:wrap;row-gap:6px}.inspector-stats dd.split-line{font:700 17px var(--font-display);flex-wrap:wrap;flex-basis:100%;align-items:baseline;gap:4px 10px;display:flex}.split-line .split-to{min-width:0;color:var(--supply);flex:1}.split-line .split-rate{color:var(--dim)}.split-line .split-groups{font:600 12px var(--font-body);color:var(--fluid);flex-basis:100%}.plan-table tbody tr.split-row td{color:var(--dim);padding-top:4px;padding-bottom:4px;font-size:15px}.plan-table tbody tr.split-row td.recipe-cell{color:var(--supply);padding-left:34px}.inspector .text-button{align-self:flex-start}.recipe-choices ul{background:var(--line);flex-direction:column;gap:1px;margin:8px 0 0;padding:0;list-style:none;display:flex}.recipe-choice{background:var(--panel-2);cursor:pointer;align-items:flex-start;gap:10px;padding:9px 12px;display:flex}.recipe-choice input{width:18px;height:18px;accent-color:var(--ficsit);flex:none;margin:2px 0 0}.recipe-choice-text{flex-direction:column;gap:2px;min-width:0;display:flex}.recipe-choice-name{color:var(--dim);flex-wrap:wrap;align-items:baseline;gap:4px 8px;display:flex}.recipe-choice.on .recipe-choice-name{color:var(--paper)}.recipe-choice small{color:var(--faint);font-size:13px}.recipe-choice-used{font:600 12px var(--font-body);color:var(--supply)}.table-wrap{padding:18px 18px 84px;position:absolute;inset:0;overflow:auto}.plan-table{border-collapse:collapse;width:100%;font-size:16px}.plan-table th{z-index:1;text-align:left;font:700 15px var(--font-display);letter-spacing:.06em;text-transform:uppercase;color:var(--faint);background:var(--panel);border-bottom:3px solid var(--ficsit);padding:12px 14px;position:sticky;top:-18px}.plan-table td{vertical-align:top;border-bottom:1px solid var(--line);padding:11px 14px;line-height:30px}.plan-table tbody tr{cursor:pointer}.plan-table tbody tr:hover td{background:var(--panel)}.plan-table tbody tr.selected td{background:color-mix(in srgb, var(--ficsit) 10%, var(--panel))}.plan-table .n{text-align:right;white-space:nowrap}.plan-table .strong{font:700 26px / 30px var(--font-display);color:var(--ficsit)}.plan-table .dim{color:var(--dim)}.plan-table b{font-weight:600}.flow{align-items:center;gap:8px;min-height:30px;display:flex}.plan-table .flow{border-radius:4px;margin:0 -6px;padding:0 6px;transition:background-color .12s,box-shadow .12s}.plan-table .flow.link{background:color-mix(in srgb, var(--ficsit) 16%, transparent)}.plan-table .flow.feeds{background:color-mix(in srgb, var(--supply) 20%, transparent);box-shadow:inset 3px 0 var(--supply)}.plan-table .flow.takes{background:color-mix(in srgb, var(--fluid) 20%, transparent);box-shadow:inset 3px 0 var(--fluid)}.plan-table tbody tr.feeds td:first-child{box-shadow:inset 3px 0 var(--supply)}.plan-table tbody tr.takes td:first-child{box-shadow:inset 3px 0 var(--fluid)}@media (prefers-reduced-motion:reduce){.plan-table .flow{transition:none}}.transport-wrap{flex-direction:column;gap:22px;padding:18px 18px 84px;display:flex;position:absolute;inset:0;overflow:auto}.haul-group{flex-direction:column;gap:10px;display:flex}.haul-list{grid-template-columns:repeat(auto-fill,minmax(min(100%,460px),1fr));gap:10px;margin:0;padding:0;list-style:none;display:grid}.haul{background:var(--raised);border-radius:var(--radius-lg);flex-direction:column;gap:10px;padding:12px;display:flex}.haul-head{flex-wrap:wrap;align-items:center;gap:12px;display:flex}.haul-name{min-width:0;font:600 20px / 1.15 var(--font-display);flex:1}.haul-name b{color:var(--ficsit);font-weight:700}.haul-note{font:600 14px var(--font-display);color:var(--dim)}.haul-pick{flex-wrap:wrap;gap:4px;display:flex}.haul-pick button{border:1px solid var(--line);border-radius:var(--radius);background:var(--bg);min-height:40px;color:var(--dim);font:600 15px var(--font-display);align-items:center;gap:6px;padding:4px 10px 4px 6px;display:flex}.haul-pick button:hover{color:var(--paper);background:var(--panel)}.haul-pick button[aria-checked=true]{border-color:var(--ficsit);background:color-mix(in srgb, var(--ficsit) 16%, var(--bg));color:var(--paper)}.haul-distance{align-items:center;gap:10px;display:flex}.haul-distance .rate-input{width:110px}.haul-unit{color:var(--dim)}.haul-result{flex-wrap:wrap;align-items:center;gap:6px;display:flex}.haul-stats{flex-wrap:wrap;align-items:center;gap:4px 14px;margin-left:6px;display:flex}.haul-stat{font:600 16px var(--font-display);color:var(--paper)}.haul-total{background:var(--panel);border-radius:var(--radius-lg);padding:12px}.haul-calc-inputs{flex-wrap:wrap;align-items:center;gap:12px 20px;margin-bottom:12px;display:flex}.haul-calc-item{font:600 20px var(--font-display);align-items:center;gap:10px;display:flex}.codex-calc .haul-list{margin-bottom:10px}.codex-calc .haul-name{align-items:center;gap:10px;display:flex}.estimate-tag{font:600 13px / 1.6 var(--font-display);color:var(--dim);border:1px solid var(--line-2);border-radius:var(--radius);padding:0 6px}.belt-edge path,.pipe-edge path{fill:none;transition:opacity .12s}.belt-rails{stroke:var(--belt);stroke-linecap:butt}.belt-bed{stroke:#17191c}.belt-slats{stroke:color-mix(in srgb, var(--belt) 55%, #17191c);stroke-dasharray:3 7;animation:belt var(--belt-speed) linear infinite}.pipe-casing{stroke:#5b646d;stroke-linecap:round}.pipe-fluid{stroke-linecap:round;stroke-dasharray:14 6;opacity:.95;animation:1.6s linear infinite belt}.belt-edge.still .belt-slats,.pipe-edge.still .pipe-fluid,.still .cable-core{animation:none}@media (prefers-reduced-motion:reduce){.app:not([data-motion=full]) :is(.belt-slats,.pipe-fluid){animation:none}}.belt-edge.faded,.pipe-edge.faded{opacity:.12}.belt-edge.lit .belt-rails{filter:brightness(1.25)}.pipe-edge.lit .pipe-casing{stroke:var(--paper)}.edge-tier{font:700 14px var(--font-display);color:#111;padding:1px 6px}.pin{align-items:center;gap:6px;display:flex}.endpoint-rate.editable{border:1px dashed var(--line-2);color:var(--paper);cursor:text;background:0 0;padding:0 6px}.endpoint-rate.editable:hover{border-color:var(--ficsit);color:var(--ficsit)}.pin-badge{background:var(--ficsit);color:var(--ficsit-ink);font:700 12px / 1.5 var(--font-display);letter-spacing:.04em;text-transform:uppercase;border:0;padding:0 6px}.pin-input{width:96px}.scaled{background:color-mix(in srgb, var(--ficsit) 14%, var(--panel));flex-wrap:wrap;flex-basis:100%;align-items:center;gap:8px 16px;padding:10px 22px;font-size:16px;display:flex}.scaled b{font:700 24px var(--font-display);color:var(--ficsit)}.scaled .chip{font:700 18px var(--font-display)}.pin-held{color:var(--dim);flex-wrap:wrap;flex-basis:100%;align-items:center;gap:6px 14px;display:flex}.pin-held .chip{font:600 16px var(--font-body);color:var(--paper)}.readout-value.over{color:var(--alert)!important}.tier-button{border:1px solid var(--line-2);background:var(--bg);font:600 16px var(--font-display);color:var(--dim);padding:6px 12px}.tier-button b{color:var(--ficsit);font-size:18px}.tier-button:hover{border-color:var(--ficsit)}.tier-dialog{background:var(--panel);width:min(1100px,92vw);max-height:88vh;color:var(--paper);border:1px solid var(--line-2);border-top:4px solid var(--ficsit);padding:32px 36px 36px;box-shadow:0 30px 80px #0009}.tier-dialog::backdrop{background:#08090abf}.phase-list{flex-direction:column;gap:18px;margin-top:18px;display:flex}.phase{grid-template-columns:150px minmax(0,1fr);align-items:center;gap:8px 16px;display:grid}.tier-dialog>.hint{max-width:70ch;margin-top:8px}.phase-tiers{grid-template-columns:repeat(3,1fr);gap:8px;display:grid}.tier-card{background:var(--raised);border:1px solid var(--line);text-align:left;align-items:center;gap:14px;min-height:64px;padding:10px 14px;display:flex}.tier-card:hover{border-color:var(--ficsit)}.tier-card.current{border-color:var(--ficsit);box-shadow:inset 4px 0 var(--ficsit)}.tier-card-num{min-width:70px;font:700 22px var(--font-display);flex:none}.tier-card-unlocks{flex-wrap:wrap;gap:4px;display:flex}.inventory-row .item-card-name{flex-direction:column;display:flex}.inventory-use{font:500 14px var(--font-body);color:var(--faint)}.inventory-use.over{color:var(--alert)}.section-head{justify-content:space-between;align-items:center;gap:12px;max-width:560px;display:flex}.inventory-actions{flex:none;align-items:center;gap:8px;display:flex}.section-head .section-title{white-space:nowrap}.primary-button.small,.ghost-button.small{padding:6px 12px;font-size:15px}.placements-head{justify-content:space-between;align-items:center;max-width:560px;display:flex}.inventory .inventory-row,.inventory .placements{max-width:560px}.failure{flex-direction:column;align-items:center;gap:18px;max-width:720px;display:flex}.primary-button{background:var(--ficsit);color:var(--ficsit-ink);font:700 18px var(--font-display);letter-spacing:.03em;border:0;justify-content:center;align-items:center;gap:8px;padding:10px 20px;display:inline-flex}.primary-button:not(:disabled):hover{background:color-mix(in srgb, var(--ficsit) 78%, #fff)}.primary-button:disabled{opacity:1;background:var(--raised);color:var(--faint)}.ghost-button:disabled{opacity:1;border-color:var(--line)}.miner-picker button:disabled{opacity:.35}.bill{flex-direction:column;gap:8px;margin-top:28px;display:flex}.bill-grid{grid-template-columns:1fr 2fr;gap:24px;display:grid}.bill-grid>div{flex-direction:column;gap:8px;display:flex}.placements{flex-direction:column;gap:4px;margin:4px 0 0;padding:0;list-style:none;display:flex}.placements button{background:var(--raised);text-align:left;border:1px solid #0000;align-items:center;gap:10px;width:100%;padding:6px 10px;display:flex}.placements button:hover{border-color:var(--ficsit)}.placement-name{font:600 17px / 1.15 var(--font-display);flex-direction:column;flex:1;display:flex}.placement-name small{font:400 13px var(--font-body);color:var(--faint)}.hint.warn{color:var(--power)}.data-version{margin-top:20px;font-size:13px}.install{position:relative}.install-button{border:1px solid var(--ficsit);font:600 16px var(--font-display);color:var(--ficsit);background:0 0;padding:6px 12px}.install-button:hover{background:color-mix(in srgb, var(--ficsit) 14%, transparent)}.install-hint{z-index:30;background:var(--raised);border:1px solid var(--line-2);width:240px;color:var(--paper);padding:10px 12px;font-size:14px;position:absolute;top:calc(100% + 8px);right:0}.toast{white-space:nowrap;left:18px;bottom:calc(84px + env(safe-area-inset-bottom));z-index:40;background:var(--raised);border:1px solid var(--line-2);border-left:4px solid var(--ficsit);align-items:center;gap:16px;padding:10px 12px 10px 16px;font-size:15px;display:flex;position:fixed;box-shadow:0 12px 30px #00000080}.toast.bad{border-left-color:var(--alert)}.toast .text-button.quiet{color:var(--dim);margin-left:-8px}.toast+.toast{translate:0 calc(-100% - 10px)}.toast+.toast+.toast{translate:0 calc(-200% - 20px)}.topbar,.side,.summary,.floor-bar,.inspector,.modal,.sheet{zoom:var(--ui-scale,1)}.mode-switch{--thumb:var(--ficsit);--thumb-ink:var(--ficsit-ink);background:var(--bg);border:1px solid var(--line-2);flex:none;grid-template-columns:repeat(4,1fr);align-self:center;height:42px;padding:3px;display:grid;position:relative}.mode-switch[data-mode=power]{--thumb:var(--power);--thumb-ink:var(--power-ink,var(--ficsit-ink))}.mode-thumb{z-index:0;background:repeating-linear-gradient(-45deg, #0000004d 0 4px, transparent 4px 8px) left / 6px 100% no-repeat, var(--thumb);width:calc(25% - 1.5px);transition:transform .18s ease-out,background-color .18s;position:absolute;top:3px;bottom:3px;left:3px}.mode-switch[data-mode=power] .mode-thumb{transform:translate(100%)}.mode-switch button{z-index:1;min-width:118px;color:var(--faint);font:700 16px / 1 var(--font-display);letter-spacing:.1em;text-transform:uppercase;background:0 0;border:0;justify-content:center;align-items:center;gap:8px;padding:0 16px;transition:color .12s;display:flex;position:relative}.mode-switch button:hover{color:var(--paper)}.mode-switch button[aria-checked=true]{color:var(--thumb-ink);cursor:default}::view-transition-old(root){animation-duration:.14s;animation-timing-function:ease-out}::view-transition-new(root){animation-duration:.14s;animation-timing-function:ease-out}.chrome-button{border:1px solid var(--line-2);background:var(--bg);height:38px;color:var(--dim);font:600 16px var(--font-display);letter-spacing:.02em;align-items:center;gap:8px;padding:0 12px;display:flex}.chrome-button:hover{border-color:var(--ficsit);color:var(--paper)}.chrome-button:hover .glyph{color:var(--ficsit)}.ghost-button{border:1px solid var(--line-2);color:var(--paper);font:600 16px var(--font-display);letter-spacing:.02em;white-space:nowrap;background:0 0;align-items:center;gap:8px;padding:8px 14px;display:inline-flex}.ghost-button:hover{border-color:var(--ficsit);color:var(--ficsit)}.ghost-button.small{padding:4px 10px;font-size:15px}.ghost-button.danger{border-color:var(--alert);color:var(--alert)}.app input[type=checkbox]{appearance:none;background:var(--bg);border:1px solid var(--line-2);cursor:pointer;flex:none;place-items:center;width:22px;height:22px;margin:0;display:grid}.app input[type=checkbox]:after{content:"";border:solid var(--ficsit-ink);border-width:0 0 3px 3px;width:12px;height:7px;margin-top:-3px;transition:transform .14s;transform:rotate(-45deg)scale(0)}.app input[type=checkbox]:checked{background:var(--ficsit);border-color:var(--ficsit)}.app input[type=checkbox]:checked:after{transform:rotate(-45deg)scale(1)}.check-row{cursor:pointer;align-items:flex-start;gap:12px;display:flex}.check-row>span{flex-direction:column;gap:2px;display:flex}.check-row b{font:600 17px var(--font-display);letter-spacing:.01em}.panel-body.power{flex-direction:column;gap:26px;max-width:620px;display:flex}.draw-list{flex-direction:column;gap:2px;margin:0;padding:0;list-style:none;display:flex}.draw-row{background:var(--raised);border-left:4px solid var(--power);cursor:pointer;align-items:center;gap:12px;padding:9px 12px;display:flex}.draw-list li.off .draw-row{border-left-color:var(--line-2);color:var(--faint);background:0 0}.draw-row .glyph{color:var(--faint);flex:none}.draw-name{text-overflow:ellipsis;white-space:nowrap;min-width:0;font:600 19px var(--font-display);flex:1;overflow:hidden}.draw-mw{font:700 19px var(--font-display);color:var(--power);white-space:nowrap}.draw-list li.off .draw-mw{color:var(--faint);text-decoration:line-through}.power-row{justify-content:space-between;align-items:center;gap:12px;display:flex}.power-row-label{font:600 18px / 1.2 var(--font-display);flex-direction:column;display:flex}.power-row-label small{font:400 14px var(--font-body);color:var(--faint)}.section-title.step{align-items:center;gap:10px;display:flex}.step-num{background:var(--power);width:28px;height:28px;color:var(--power-ink,var(--ficsit-ink));font:700 17px var(--font-display);clip-path:polygon(0 0,calc(100% - 8px) 0,100% 8px,100% 100%,0 100%);flex:none;place-items:center;display:grid}.segmented.size-modes{grid-template-columns:repeat(3,minmax(0,1fr));display:grid}.segmented.size-modes button{white-space:nowrap;padding:8px 6px}.segmented.size-modes button[aria-checked=true]{background:var(--power);color:var(--power-ink,var(--ficsit-ink))}.size-box{background:var(--panel-2);border:1px solid var(--line);border-left:4px solid var(--power);flex-direction:column;gap:8px;padding:14px;display:flex}.size-head{justify-content:space-between;align-items:center;gap:12px;display:flex}.draw-other{font:400 13px var(--font-body);color:var(--faint);display:block}.size-total{border-top:1px solid var(--line);color:var(--dim);flex-wrap:wrap;align-items:baseline;gap:2px 12px;margin-top:4px;padding-top:12px;display:flex}.size-total-label{font:600 16px var(--font-display);letter-spacing:.04em;text-transform:uppercase}.size-total b{font:700 32px / 1 var(--font-display);color:var(--power);margin-left:auto}.size-total b small{color:var(--dim);font-size:16px}.size-total-note{color:var(--faint);flex-basis:100%;font-size:14px}.size-total-note.warn{color:var(--power)}.size-total-note .text-button{padding:0;font-size:14px}.check-row.own-load{margin-top:2px}.gen-row{background:var(--raised);border:1px solid var(--line-2);flex-direction:column;gap:10px;padding:0 0 12px;display:flex}.gen-row.locked{opacity:.6}.gen-row-head{background:var(--power);color:var(--power-ink,var(--ficsit-ink));font:700 17px / 1.2 var(--font-display);clip-path:polygon(0 0,calc(100% - 14px) 0,100% 14px,100% 100%,0 100%);align-items:center;gap:10px;padding:3px 6px;display:flex}.gen-row-name{flex:1;min-width:0;line-height:1.1}.gen-row-mw{color:var(--power);font:700 17px / 1.25 var(--font-body);letter-spacing:0;text-transform:none;white-space:nowrap;background:#121416e6;padding:1px 8px 2px}.gen-row-mw small{color:var(--dim);font-size:12px}.gen-row-remove{width:26px;height:26px;color:inherit;background:#00000026;border:0;flex:none;place-items:center;margin-right:10px;padding:0;display:grid}.gen-row-remove:hover{background:var(--alert);color:#1a0806}.gen-row-head .tier-tag{color:var(--power);background:#000000bf}.gen-row>:not(.gen-row-head){margin:0 12px}.fuel-pills,.have-chips{flex-wrap:wrap;align-items:center;gap:6px;display:flex}.fuel-pill{background:var(--bg);border:1px solid var(--line-2);color:var(--dim);font:600 16px var(--font-display);letter-spacing:.01em;align-items:center;gap:7px;padding:4px 11px 4px 5px;display:inline-flex}.fuel-pill small{font:500 13px var(--font-body);color:var(--faint)}.fuel-pill:hover{border-color:var(--power);color:var(--paper)}.fuel-pill[aria-checked=true]{border-color:var(--power);background:color-mix(in srgb, var(--power) 14%, var(--bg));color:var(--paper);box-shadow:inset 0 0 0 1px var(--power)}.have-chips .control-label{flex-basis:100%}.gen-row-foot{border-top:1px solid var(--line);flex-wrap:wrap;align-items:center;gap:6px 12px;padding-top:10px;display:flex}.gen-count{color:var(--paper);font:600 17px var(--font-body);background:0 0;border:0;padding:0}.gen-count b{font-size:21px}button.gen-count:hover,button.gen-count[aria-pressed=true]{color:var(--power)}.gen-count.idle{color:var(--faint);font-size:15px}.gen-mode{color:var(--faint);flex:1;font-size:14px}.gen-row-foot .text-button{padding:0;font-size:15px}.mini-stepper{border:1px solid var(--line-2);background:var(--bg);align-items:stretch;display:inline-flex}.mini-stepper button{width:34px;color:var(--dim);font:600 20px / 1 var(--font-body);background:0 0;border:0}.mini-stepper button:hover:not(:disabled){background:var(--raised);color:var(--paper)}.mini-stepper b{text-align:center;min-width:40px;color:var(--ficsit);font:700 19px var(--font-body);padding:4px 6px}.segmented.small button{padding:4px 12px;font-size:15px}.check-row.small{color:var(--dim);align-items:center;font-size:15px}.plant-menu{background:var(--panel);border:1px solid var(--power);flex-direction:column;gap:2px;margin-top:6px;padding:6px;display:flex}.plant-menu-group{background:var(--raised);flex-direction:column;gap:8px;padding:8px 8px 10px;display:flex}.plant-menu-group.locked{opacity:.6}.plant-menu-head{align-items:center;gap:10px;display:flex}.plant-menu-name{font:600 18px / 1.15 var(--font-display);flex-direction:column;flex:1;display:flex}.plant-menu-name small{font:600 14px var(--font-body);color:var(--power)}.plant-menu-fuels,.gen-fuels{flex-wrap:wrap;gap:6px;display:flex}.fuel-chip{background:var(--bg);border:1px solid var(--line-2);color:var(--paper);font:600 16px var(--font-display);letter-spacing:.01em;align-items:center;gap:8px;padding:5px 10px 5px 5px;display:flex}.fuel-chip small{font:500 13px var(--font-body);color:var(--faint)}.fuel-chip:hover{border-color:var(--power);background:color-mix(in srgb, var(--power) 10%, var(--bg))}.backup-result{background:var(--raised);border-left:4px solid var(--shard);align-items:center;gap:14px;padding:10px 12px;display:flex}.backup-result>span{flex-direction:column;display:flex}.backup-result b{font:700 20px var(--font-display)}.backup-result small{color:var(--dim);font-size:14px}.backup .section-title+.hint,.backup .section-title{margin-top:0}.backup>.section-title:not(:first-child){margin-top:18px}.readout.balance .readout-value{font-size:40px}.readout.balance.ok{box-shadow:inset 4px 0 var(--supply)}.readout.balance.ok .readout-value{color:var(--supply)}.readout.balance.short{box-shadow:inset 4px 0 var(--alert);background:color-mix(in srgb, var(--alert) 9%, var(--panel))}.readout.balance.short .readout-value{color:var(--alert)}.readout.balance.thin{box-shadow:inset 4px 0 var(--power)}.readout.balance.thin .readout-value,.readout.balance.thin .readout-sub{color:var(--power)}.readout.fluid .readout-value{color:var(--fluid)}.readout.waste .readout-value{color:#8fe36b;align-items:center;gap:6px;display:flex}.readout-sub.shard{color:var(--shard)}.readout.mix{min-width:320px}.mix-bar{background:var(--bg);height:16px;box-shadow:inset 0 0 0 1px var(--line);margin:6px 0 8px;display:flex;position:relative}.mix-part{background:repeating-linear-gradient(-45deg, #ffffff1f 0 4px, transparent 4px 9px), var(--part);border-right:2px solid var(--panel);transform-origin:0;height:100%}.mix-demand{background:var(--paper);width:2px;box-shadow:0 0 0 1px var(--bg);margin-left:-1px;transition:left .5s ease-out;position:absolute;top:-5px;bottom:-5px}.mix-legend{flex-wrap:wrap;gap:4px 14px;display:flex}.mix-key{border-left:4px solid var(--part);font:600 16px var(--font-body);white-space:nowrap;align-items:center;gap:5px;padding-left:7px;display:flex}.machine-power.made{align-items:center}.machine-power.made .glyph{margin-right:1px}.react-flow__node-power{cursor:default}.power-node{--t:var(--card-text,1);zoom:var(--card-scale,1);transition:opacity .12s;position:relative}.power-node.faded{opacity:.2}.power-node.grid{width:calc(300px * (.6 + .4 * var(--t)));height:calc(124px * (.3 + .7 * var(--t)));background:linear-gradient(90deg, transparent 12px, var(--panel) 12px), repeating-linear-gradient(-45deg, var(--power) 0 7px, #111 7px 14px);border:1px solid var(--power);flex-direction:column;justify-content:center;gap:2px;padding:10px 16px 10px 22px;display:flex;box-shadow:0 0 0 1px #00000080}.power-node.grid.short{border-color:var(--alert);background:linear-gradient(90deg, transparent 12px, var(--panel) 12px), repeating-linear-gradient(-45deg, var(--alert) 0 7px, #111 7px 14px);animation:none}.grid-head{font:700 calc(15px * var(--t)) var(--font-display);letter-spacing:.12em;text-transform:uppercase;color:var(--power);align-items:center;gap:6px;display:flex}.grid-mw{font:700 calc(40px * var(--t)) / 1 var(--font-display)}.grid-mw small{font-size:calc(18px * var(--t));color:var(--dim);margin-left:4px}.grid-foot{font:600 calc(15px * var(--t)) var(--font-body);gap:10px;display:flex}.grid-foot .good{color:var(--supply)}.grid-foot .bad{color:var(--alert)}.grid-boost{color:#c9a8ff}.power-node.consumer{width:calc(260px * (.6 + .4 * var(--t)));height:calc(84px * (.3 + .7 * var(--t)));background:var(--panel);border:1px solid var(--line-2);border-left:5px solid var(--power);align-items:center;gap:12px;padding:8px 14px 8px 12px;display:flex}.power-node.consumer>.glyph{color:var(--power);flex:none}.power-node.consumer.chain{border-style:dashed dashed dashed solid}.power-node.consumer.other{border-left-color:var(--dim)}.power-node.consumer.other>.glyph{color:var(--dim)}.power-node.consumer.out{border-left-color:var(--supply)}.power-node.consumer.out>.glyph{color:var(--supply)}.consumer-text{flex-direction:column;flex:1;min-width:0;display:flex}.consumer-kind{font:700 calc(13px * var(--t)) / 1.2 var(--font-display);letter-spacing:.07em;text-transform:uppercase;color:var(--faint)}.consumer-name{font:600 calc(19px * var(--t)) / 1.15 var(--font-display);text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.consumer-mw{font:700 calc(19px * var(--t)) / 1.15 var(--font-display);white-space:nowrap}.consumer-mw small{font-size:calc(13px * var(--t));color:var(--dim);margin-left:2px}.power-edge path{fill:none;transition:opacity .12s}.cable{stroke:#0e1012;stroke-width:10px;stroke-linecap:round}.cable-core{stroke:var(--power);stroke-width:3px;stroke-linecap:round;stroke-dasharray:3 13;animation:.8s linear infinite current}@keyframes current{to{stroke-dashoffset:-32px}}.power-edge.faded{opacity:.12}.power-edge.lit .cable-core{stroke-width:4px;stroke-dasharray:6 8}.edge-label.power{border-color:color-mix(in srgb, var(--power) 45%, var(--line));color:var(--power);gap:5px;padding:4px 10px 4px 6px}.edge-label.power .edge-rate small{color:var(--dim);font-size:13px}.react-flow.moving :is(.belt-slats,.pipe-fluid,.cable-core){animation-play-state:paused}.app[data-belt-motion=off] .belt-slats,.app[data-belt-motion=off] .pipe-fluid,.app[data-belt-motion=off] .cable-core,.settings-preview[data-belt-motion=off] .belt-slats{animation:none}.gen-grid{grid-template-columns:repeat(auto-fill,minmax(320px,1fr));gap:12px;display:grid}.gen-card{background:var(--raised);border:1px solid var(--line);border-top:4px solid var(--gen,var(--power));color:var(--paper);text-align:left;flex-direction:column;gap:12px;padding:14px 16px 16px;display:flex}.gen-card:nth-child(2){animation-delay:40ms}.gen-card:nth-child(3){animation-delay:80ms}.gen-card:nth-child(4){animation-delay:.12s}.gen-card:nth-child(5){animation-delay:.16s}.gen-card:nth-child(6){animation-delay:.2s}.gen-card.button:hover{border-color:var(--gen,var(--power))}.gen-card.locked{opacity:.65}.gen-card-head{align-items:center;gap:14px;display:flex}.gen-card-head .icon{filter:drop-shadow(0 3px 4px #0000008c)}.gen-card-name{font:700 22px / 1.1 var(--font-display);flex-direction:column;flex:1;display:flex}.gen-card-name small{font:700 17px var(--font-body);color:var(--power);margin-top:4px}.gen-add{font:700 16px var(--font-display);color:var(--power);text-transform:uppercase;letter-spacing:.06em;align-items:center;gap:6px;display:flex}.power-start .quick-inner{max-width:1080px}.modal{width:min(1000px, calc(94vw / var(--ui-scale,1)))}.settings-dialog{width:min(1200px, calc(96vw / var(--ui-scale,1)))}.modal{max-width:calc(100vw / var(--ui-scale,1) - 16px);max-height:min(calc(88vh / var(--ui-scale,1)), 900px);background:var(--panel);color:var(--paper);border:1px solid var(--line-2);clip-path:polygon(0 0,calc(100% - 22px) 0,100% 22px,100% 100%,0 100%);flex-direction:column;padding:0;overflow:hidden}.modal[open]{animation:.12s ease-out fade-in;display:flex}.modal[data-closing]{animation:.1s ease-in forwards fade-out}.modal::backdrop{-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px);background:#08090ab8;animation:.22s ease-out fade-in}.modal[data-closing]::backdrop{animation:.17s ease-in forwards fade-out}@keyframes fade-in{0%{opacity:0}}@keyframes fade-out{to{opacity:0}}.modal-head{background:var(--panel-2);border-bottom:1px solid var(--line);flex:none;align-items:center;gap:14px;height:60px;padding-right:30px;display:flex}.modal-head:before{content:"";background:repeating-linear-gradient(-45deg, var(--ficsit) 0 7px, var(--panel-2) 7px 14px);clip-path:polygon(0 0,100% 0,calc(100% - 14px) 100%,0 100%);align-self:stretch;width:46px}.modal-icon{color:var(--ficsit);place-items:center;display:grid}.modal-title{font:700 25px var(--font-display);letter-spacing:.08em;text-transform:uppercase;flex:1;margin:0}.modal-close{width:40px;height:40px;color:var(--faint);background:0 0;border:1px solid #0000;place-items:center;padding:0;display:grid}.modal-close:hover{border-color:var(--line-2);color:var(--paper)}.settings-body{flex:1;grid-template-columns:230px minmax(0,1fr);min-height:0;display:grid}.settings-nav{background:var(--panel-2);border-right:1px solid var(--line);flex-direction:column;gap:2px;padding:14px 10px;display:flex;overflow-y:auto}.settings-nav button{color:var(--faint);font:600 18px var(--font-display);letter-spacing:.03em;text-align:left;background:0 0;border:0;align-items:center;gap:12px;padding:11px 14px;display:flex}.settings-nav button:hover{color:var(--paper);background:var(--raised)}.settings-nav button[aria-current=page]{color:var(--paper);background:var(--raised);box-shadow:inset 4px 0 var(--ficsit)}.settings-nav button[aria-current=page] .glyph{color:var(--ficsit)}.settings-main{align-items:flex-start;min-height:0;display:flex;overflow-y:auto}.settings-controls{flex-direction:column;flex:1;min-width:0;padding:20px 28px 30px;display:flex}.settings-heading{font:700 15px var(--font-display);letter-spacing:.12em;text-transform:uppercase;color:var(--faint);margin:0 0 4px}.settings-dialog{height:min(calc(88vh / var(--ui-scale,1)), 780px)}.setting{border-bottom:1px solid var(--line);grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:12px 32px;min-height:82px;padding:14px 0;display:grid}.setting.column{grid-template-columns:minmax(0,1fr)}.setting-text{flex-direction:column;gap:3px;min-width:0;display:flex}.setting-label{font:600 19px / 1.2 var(--font-display);letter-spacing:.01em}.setting-hint{color:var(--faint);font-size:14px}.setting-control{justify-self:end;align-items:center;gap:10px;display:flex}.setting-range{appearance:none;background:linear-gradient(90deg, var(--ficsit) var(--fill), var(--raised) var(--fill));cursor:pointer;width:200px;height:8px}.setting-range::-webkit-slider-thumb{appearance:none;background:var(--paper);border:2px solid var(--ficsit);width:14px;height:26px}.setting-range::-moz-range-thumb{background:var(--paper);border:2px solid var(--ficsit);border-radius:0;width:12px;height:24px}.setting-value{text-align:right;min-width:64px;font:700 20px var(--font-display);color:var(--ficsit)}.setting-reset{width:30px;height:30px;color:var(--faint);background:0 0;border:0;place-items:center;padding:0;display:grid}.setting-reset[data-idle]{visibility:hidden}.setting-control>.ghost-button{justify-content:center;min-width:170px}.setting-reset:hover{color:var(--ficsit)}.setting-note{border-left:4px solid var(--supply);background:color-mix(in srgb, var(--supply) 10%, transparent);margin:6px 0 0;padding:8px 12px;font-size:15px}.setting-note.bad{border-color:var(--alert);background:color-mix(in srgb, var(--alert) 10%, transparent)}.setting-foot{padding-top:14px}.toggle{background:var(--bg);border:1px solid var(--line-2);width:54px;height:28px;padding:0;transition:background .18s,border-color .18s;position:relative}.toggle-knob{background:var(--faint);width:20px;height:20px;transition:transform .14s ease-out,background .14s;position:absolute;top:3px;left:3px}.toggle[aria-checked=true]{background:color-mix(in srgb, var(--ficsit) 22%, var(--bg));border-color:var(--ficsit)}.toggle[aria-checked=true] .toggle-knob{background:var(--ficsit);transform:translate(26px)}.panel-sides{grid-template-columns:repeat(3,1fr);gap:10px;display:grid}.panel-side{background:var(--raised);border:1px solid var(--line);color:var(--dim);font:600 17px var(--font-display);letter-spacing:.03em;flex-direction:column;align-items:center;gap:10px;padding:14px 10px 12px;display:flex}.panel-side:hover{border-color:var(--line-2);color:var(--paper)}.panel-side[aria-checked=true]{border-color:var(--ficsit);box-shadow:inset 0 0 0 1px var(--ficsit);color:var(--paper)}.panel-diagram{background:var(--bg);border:1px solid var(--line-2);gap:3px;width:128px;height:82px;padding:4px;display:grid}.panel-diagram.top{grid-template:"bar"9px"panel"20px"floor"1fr/1fr}.panel-diagram.left{grid-template:"bar bar"9px"panel floor"1fr/38px 1fr}.panel-diagram.right{grid-template:"bar bar"9px"floor panel"1fr/1fr 38px}.pd-top{background:var(--line-2);grid-area:bar}.pd-panel{background:color-mix(in srgb, var(--ficsit) 55%, var(--raised));grid-area:panel;transition:background .2s}.panel-side[aria-checked=true] .pd-panel{background:var(--ficsit)}.pd-floor{background:var(--floor);grid-area:floor;justify-content:space-evenly;align-items:center;display:flex}.pd-floor span{background:var(--line-2);width:14px;height:9px;box-shadow:inset 0 3px var(--ficsit)}.swatches{flex-wrap:wrap;gap:10px;display:flex}.swatch{background:var(--swatch);border:2px solid #0006;width:42px;height:42px;padding:0;transition:transform .14s;position:relative}.swatch:hover{border-color:var(--paper)}.swatch[aria-checked=true]{box-shadow:0 0 0 2px var(--panel), 0 0 0 4px var(--paper)}.swatch.custom{color:#111;cursor:pointer;background:conic-gradient(from 90deg,#f55,#fb4,#ee5,#5d7,#4be,#86f,#f5c,#f55);place-items:center;display:grid}.swatch.custom input{opacity:0;cursor:pointer;position:absolute;inset:0}.swatch.custom:focus-within{outline:2px solid var(--paper);outline-offset:3px}.swatch.custom[data-checked]{box-shadow:0 0 0 2px var(--panel), 0 0 0 4px var(--paper)}.color-pick{cursor:pointer;align-items:center;gap:10px;display:flex}.color-pick input[type=color]{border:1px solid var(--line-2);background:var(--swatch);cursor:pointer;width:46px;height:32px;padding:0}.color-pick input[type=color]::-webkit-color-swatch-wrapper{padding:0}.color-pick input[type=color]::-webkit-color-swatch{border:0}.color-pick code{min-width:70px;color:var(--dim);font:500 14px ui-monospace,Consolas,monospace}.settings-preview{z-index:2;background:var(--panel);margin:6px 0 0;padding:6px 0 10px;position:sticky;top:0}.settings-preview figcaption{z-index:1;font:700 13px var(--font-display);letter-spacing:.12em;text-transform:uppercase;color:var(--faint);position:absolute;top:14px;left:10px}.preview-floor{background:var(--floor);border:1px solid var(--line);place-items:center;height:170px;display:grid;position:relative;overflow:hidden}.preview-floor.lines{background-image:linear-gradient(#3b3b3b 1px,#0000 1px),linear-gradient(90deg,#3b3b3b 1px,#0000 1px),linear-gradient(#2f2f2f 1px,#0000 1px),linear-gradient(90deg,#2f2f2f 1px,#0000 1px);background-size:96px 96px,96px 96px,24px 24px,24px 24px}.preview-stage{zoom:.6;align-items:center;display:flex;position:relative}.preview-floor:has(.preview-stage.split){height:230px}.preview-stage.split{--card-h:calc((130px + 32px) * (.3 + .7 * var(--card-text,1)));align-items:flex-start}.preview-split{flex-direction:column;gap:12px;display:flex}.preview-stage.split .preview-belt{margin-top:calc(var(--card-h) / 2 - 10px)}.preview-stage.split .preview-label{top:calc(var(--card-h) / 2)}.preview-stage.split .preview-card.b{margin-top:calc(var(--card-h) / 2 - 65px * (.3 + .7 * var(--card-text,1)))}.preview-card .machine-node:has(.mod-badge.split){--run-extra:1}.preview-belt{width:240px;height:20px;overflow:visible}.preview-belt path{fill:none}.preview-label{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}.report-dialog{width:min(780px,94vw)}.report-form{flex-direction:column;gap:16px;padding:22px 26px;display:flex;overflow-y:auto}.report-kinds{grid-template-columns:1fr 1fr;gap:10px;display:grid}.report-kind{background:var(--raised);border:1px solid var(--line);color:var(--dim);text-align:left;align-items:center;gap:14px;padding:12px 16px 12px 12px;transition:border-color .16s,background .16s;display:flex}.report-kind:hover{border-color:var(--line-2)}.report-kind-icon{background:var(--bg);width:50px;height:50px;color:var(--faint);flex:none;place-items:center;transition:background .2s,color .2s;display:grid}.report-kind-text{flex-direction:column;display:flex}.report-kind b{font:700 20px var(--font-display);letter-spacing:.02em;color:var(--paper)}.report-kind.bug[aria-checked=true]{border-color:var(--alert);box-shadow:inset 0 0 0 1px var(--alert);background:color-mix(in srgb, var(--alert) 8%, var(--raised))}.report-kind.bug[aria-checked=true] .report-kind-icon{background:var(--alert);color:#1b0805}.report-kind.idea[aria-checked=true]{border-color:var(--power);box-shadow:inset 0 0 0 1px var(--power);background:color-mix(in srgb, var(--power) 8%, var(--raised))}.report-kind.idea[aria-checked=true] .report-kind-icon{background:var(--power);color:var(--power-ink,#1d1206)}.field-block{flex-direction:column;gap:6px;display:flex}.field-label{font:600 17px var(--font-display);letter-spacing:.02em;color:var(--dim);justify-content:space-between;align-items:baseline;gap:10px;display:flex}.field-label em{color:var(--faint);font-style:normal;font-weight:500}.field-count{font:500 13px var(--font-body);color:var(--faint)}.field-need{font:600 13px var(--font-body);color:var(--alert)}.text-field[aria-invalid=true],.text-field[aria-invalid=true]:focus{border-color:var(--alert)}.text-field{background:var(--bg);border:1px solid var(--line-2);width:100%;color:var(--paper);font:400 16px / 1.45 var(--font-body);resize:vertical;padding:10px 12px}.text-field::placeholder{color:#656c73}.text-field:focus{border-color:var(--ficsit);box-shadow:0 0 0 1px var(--ficsit);outline:none}.chips{flex-wrap:wrap;gap:6px;display:flex}.chip-button{border:1px solid var(--line-2);color:var(--dim);font:600 15px var(--font-display);letter-spacing:.02em;background:0 0;padding:6px 12px}.chip-button:hover{color:var(--paper);border-color:var(--power)}.chip-button[aria-checked=true]{background:var(--power);border-color:var(--power);color:var(--power-ink,#1d1206)}.honeypot{opacity:0;width:1px;height:1px;position:absolute;left:-9999px}.report-peek summary{cursor:pointer;width:-moz-fit-content;width:fit-content;font:600 15px var(--font-display);letter-spacing:.03em;color:var(--faint)}.report-peek summary:hover{color:var(--paper)}.report-peek pre{background:var(--bg);border:1px solid var(--line);max-height:220px;color:var(--dim);white-space:pre-wrap;word-break:break-all;-webkit-user-select:text;user-select:text;margin:8px 0 0;padding:10px 12px;font:12px/1.45 ui-monospace,Consolas,monospace;overflow:auto}.report-error{border-left:4px solid var(--alert);background:color-mix(in srgb, var(--alert) 10%, var(--panel));flex-wrap:wrap;align-items:center;gap:8px 16px;padding:10px 14px;display:flex}.report-foot{z-index:2;background:var(--panel);border-top:1px solid var(--line);justify-content:space-between;align-items:center;gap:16px;margin:0 -26px -22px;padding:14px 26px 18px;display:flex;position:sticky;bottom:-22px;box-shadow:0 -12px 24px #00000059}.report-privacy{max-width:62ch;color:var(--faint);margin:0;font-size:13px}.report-privacy a{color:var(--dim);align-items:center;gap:4px;display:inline-flex}.send-button:not([data-ready]){background:var(--raised)!important;color:var(--faint)!important;filter:none!important}.report-form[data-kind=bug] .send-button{background:var(--alert);color:#1b0805}.report-form[data-kind=idea] .send-button{background:var(--power);color:var(--power-ink,#1d1206)}.send-button{flex:none;padding:12px 22px}.send-button:not(:disabled):hover{filter:brightness(1.12)}.send-button.sending{background-image:repeating-linear-gradient(-45deg,#0000002e 0 10px,#0000 10px 20px);background-size:28px 28px;animation:.6s linear infinite sending}@keyframes sending{to{background-position:28px 0}}.report-sent{text-align:center;flex-direction:column;align-items:center;gap:10px;padding:48px 28px 40px;display:flex}.sent-badge{background:var(--supply);color:#0d1a08;clip-path:polygon(0 0,calc(100% - 16px) 0,100% 16px,100% 100%,0 100%);place-items:center;width:96px;height:96px;animation:.2s ease-out fade-in;display:grid}.sent-badge path{stroke-dasharray:30;stroke-dashoffset:30px;stroke-width:2.6px;animation:.42s ease-out .26s forwards check-draw}@keyframes check-draw{to{stroke-dashoffset:0}}.sent-title{font:700 32px var(--font-display);letter-spacing:.06em;text-transform:uppercase;margin:10px 0 0}.report-actions{gap:10px;margin-top:12px;display:flex}@media (min-width:901px){.app:is([data-panel=left],[data-panel=right]){--side:min(var(--side-w,460px), max(300px, 100vw - 420px))}.app[data-panel=left]{grid-template-columns:var(--side) minmax(0, 1fr);grid-template-rows:var(--top-h) minmax(0, 1fr)}.app[data-panel=right]{grid-template-columns:minmax(0, 1fr) var(--side);grid-template-rows:var(--top-h) minmax(0, 1fr)}.app[data-panel=left] .side{border-bottom:0;border-right:1px solid var(--line-2);grid-area:2/1}.app[data-panel=right] .side{border-bottom:0;border-left:1px solid var(--line-2);grid-area:2/2}.app[data-panel=left] .floor{grid-area:2/2}.app[data-panel=right] .floor{grid-area:2/1}.app:is([data-panel=left],[data-panel=right])[data-empty]{grid-template-columns:minmax(0,1fr)}.app:is([data-panel=left],[data-panel=right])[data-empty] .floor{grid-column:1}.app[data-panel=left][data-deck=closed]:not([data-empty]){grid-template-columns:auto minmax(0,1fr)}.app[data-panel=right][data-deck=closed]:not([data-empty]){grid-template-columns:minmax(0,1fr) auto}.app:is([data-panel=left],[data-panel=right])[data-deck=closed] .tabs{border-bottom:0;flex-direction:column;height:100%}.app:is([data-panel=left],[data-panel=right])[data-deck=closed] .tabs button{writing-mode:vertical-rl;padding:22px 13px}.app[data-panel=left][data-deck=closed] .tabs button{transform:rotate(180deg)}.app:is([data-panel=left],[data-panel=right])[data-deck=closed] .tabs .deck-toggle{order:-1;margin:0 0 8px;padding:18px 13px;transform:none}.app:is([data-panel=left],[data-panel=right]) .deck-toggle-label{display:none}.app:is([data-panel=left],[data-panel=right]) .tabs button{padding-inline:18px}.app:is([data-panel=left],[data-panel=right]) .tabs .deck-toggle{padding:0 16px}.app:is([data-panel=left],[data-panel=right]):not([data-deck=closed]) .tabs{scrollbar-width:none;overflow-x:auto}.app:is([data-panel=left],[data-panel=right]):not([data-deck=closed]) .tabs button{flex:none;padding-inline:14px}.app:is([data-panel=left],[data-panel=right]):not([data-deck=closed]) .tabs .deck-toggle{background:var(--panel);padding:0 14px;position:sticky;right:0;box-shadow:-10px 0 12px -6px #0009}.app[data-panel=left] .deck-arrow{margin:0 0 0 3px;transform:rotate(-135deg)}.app[data-panel=left][data-deck=closed] .deck-arrow,.app[data-panel=right] .deck-arrow{margin:0 3px 0 0;transform:rotate(45deg)}.app[data-panel=right][data-deck=closed] .deck-arrow{margin:0 0 0 3px;transform:rotate(-135deg)}.app:is([data-panel=left],[data-panel=right]) :is(.panel-body.targets,.panel-body.power){align-items:stretch;display:flex}.app:is([data-panel=left],[data-panel=right]) :is(.panel-body.recipes,.panel-body.resources){flex-direction:column;overflow-y:auto}.app:is([data-panel=left],[data-panel=right]) :is(.recipe-tools,.panel-body.resources>.extraction){border-right:0;width:auto;overflow:visible}.app:is([data-panel=left],[data-panel=right]) .recipe-tools{border-bottom:1px solid var(--line)}.app:is([data-panel=left],[data-panel=right]) :is(.recipe-list,.panel-body.resources>.stack){overflow:visible}.app:is([data-panel=left],[data-panel=right]) .recipe-flow{column-width:auto}.app:is([data-panel=left],[data-panel=right]) .recipe-list{padding-bottom:24px}.app:is([data-panel=left],[data-panel=right]) .resource-cards{grid-template-columns:minmax(0,1fr)}.splitter.across{cursor:col-resize;width:10px;height:auto;inset:0 -11px 0 auto}.app[data-panel=right] .splitter.across{left:-11px;right:auto}.splitter.across:after{width:3px;height:auto;inset:0 auto 0 0}.app[data-panel=right] .splitter.across:after{left:auto;right:0}.app[data-deck=closed] .splitter{display:none}}.resizing-x{cursor:col-resize}.inspector{animation:.18s ease-out inspector-in}@keyframes inspector-in{0%{opacity:0;translate:28px}}@media (max-width:900px){.inspector{animation-name:inspector-up}}@keyframes inspector-up{0%{opacity:0;translate:0 40px}}.app[data-motion=reduce] *,.app[data-motion=reduce] :before,.app[data-motion=reduce] :after{transition-duration:1ms!important;animation-duration:1ms!important;animation-iteration-count:1!important}@media (prefers-reduced-motion:reduce){.app:not([data-motion=full]) *,.app:not([data-motion=full]) :before,.app:not([data-motion=full]) :after{transition-duration:1ms!important;animation-duration:1ms!important;animation-iteration-count:1!important}}.app{height:100dvh;padding:0 env(safe-area-inset-right) 0 env(safe-area-inset-left)}.topbar{padding-top:env(safe-area-inset-top)}.readouts{display:contents}.menu-button,.mobile-nav{display:none}.sheet{background:var(--panel);width:100%;max-width:520px;color:var(--paper);border:1px solid var(--line-2);border-top:4px solid var(--ficsit);margin:auto auto 0;padding:0}.sheet::backdrop{background:#08090ab3}.sheet-body{padding:20px 20px calc(20px + env(safe-area-inset-bottom));flex-direction:column;gap:18px;display:flex}.sheet-row{justify-content:space-between;align-items:center;gap:12px;display:flex}.sheet-row.column{flex-direction:column;align-items:stretch}.sheet-group{flex-direction:column;align-items:stretch;gap:8px;display:flex}.sheet-actions{background:var(--panel-2);border:1px solid var(--line);flex-wrap:wrap;gap:4px;display:flex}.sheet-actions .menu-item{flex:1;justify-content:center;min-height:48px}.sheet-actions .menu-item.delete{border-top:0;margin-top:0}.sheet .install{flex-direction:column;gap:10px;display:flex}.sheet .install-hint{width:auto;position:static}.sheet-close{align-self:center}@media (max-width:1100px){.item-card{gap:10px}.item-card-name{overflow-wrap:anywhere;font-size:18px}.recipe-tools,.panel-body.resources>.extraction{width:340px}.topbar{gap:12px;padding-right:12px}.topbar-controls{gap:10px}.topbar-controls .control-label,.floor-hint{display:none}.brand-name{font-size:24px}.panel-body{padding:16px}.tabs button{padding-inline:20px;font-size:17px}.inspector{width:360px}}@media (max-width:900px){.app{grid-template-rows:auto minmax(0,1fr) auto;grid-template-columns:minmax(0,1fr)}.app[data-pane=floor] .side,.app[data-pane=side] .floor{display:none}.app[data-empty][data-pane] .floor{display:flex}.app[data-empty] .mobile-nav,.splitter{display:none}.app[data-empty]{grid-template-rows:auto minmax(0,1fr)}.app[data-deck=closed]:not([data-empty]){grid-template-rows:auto minmax(0,1fr) auto}.app[data-deck=closed] .side>:not(.tabs){display:flex}.panel-body.targets{align-items:stretch;display:flex}.panel-body.recipes,.panel-body.resources{flex-direction:column;overflow-y:auto}.recipe-tools,.panel-body.resources>.extraction{border-right:0;width:auto;overflow:visible}.recipe-tools{border-bottom:1px solid var(--line)}.recipe-tools,.recipe-list,.panel-body.resources>.stack{flex:none;overflow:visible}.recipe-list{padding-bottom:24px}.recipe-flow{column-width:auto}.panel-body.resources>.stack{padding:16px 14px 24px}.resource-cards{grid-template-columns:minmax(0,1fr)}.topbar{gap:4px;min-height:52px;padding-right:4px}.brand{gap:0}.brand-mark{clip-path:polygon(0 0,100% 0,calc(100% - 10px) 100%,0 100%);width:30px}.brand-name,.topbar-controls,.topbar .tab-menu{display:none}.plan-tab{padding:0 4px 0 0;font-size:17px}.plan-tab-name{padding-left:14px}.plan-tab.editing{width:160px}.menu-button{width:48px;color:var(--paper);background:0 0;border:0;flex:none;align-self:stretch;font-size:28px;line-height:1;display:block}.side>.tabs{display:none}.side{border-bottom:0}.mobile-nav{background:var(--panel);border-top:1px solid var(--line);padding-bottom:env(safe-area-inset-bottom);display:flex}.mobile-nav button{min-height:56px;font:700 15px / 1.1 var(--font-display);letter-spacing:.04em;text-transform:uppercase;color:var(--faint);background:0 0;border:0;flex:1;padding:6px 2px;position:relative}.mobile-nav button.factory{color:var(--dim);border-left:1px solid var(--line)}.mobile-nav button[aria-current=page]{color:var(--paper);background:var(--panel-2)}.mobile-nav button[aria-current=page]:before{content:"";background:var(--ficsit);height:3px;position:absolute;inset:-1px 0 auto}.mobile-nav .tab-badge{margin-left:4px}.panel-body{gap:22px;padding:16px 14px 24px}.summary{flex-flow:column}.readouts{scrollbar-width:none;flex:none;gap:1px;display:flex;overflow-x:auto}.summary>.missing-banner,.summary>.scaled{flex:none}.readout,.readout.wide{flex:none;min-width:0;padding:8px 14px}.app[data-summary] .readout.wide{flex-basis:auto;order:0;min-width:0}.readout-label{font-size:13px}.readout-value{font-size:28px}.readout-value small{font-size:16px}.readouts .slots,.readouts .raw-inputs{flex-wrap:nowrap}.readouts .slot{--slot-size:40px!important;width:40px!important;height:40px!important}.readouts .slot .icon{width:30px;height:30px}.missing-banner,.scaled{padding:10px 14px;font-size:15px}.floor-bar{bottom:10px;left:10px}.floor-bar:has(.floor-kind){flex-direction:column-reverse;align-items:flex-start;gap:6px}.floor-hint{display:none}.floor-controls{gap:6px;bottom:10px;right:10px}.fit-label{display:none}.fit-icon{display:inline}.floor-controls .segmented{display:none}.floor-controls .segmented.floor-dir{display:flex}.floor-view:has(.floor-dir) .floor-controls{flex-wrap:wrap-reverse;justify-content:flex-end;max-width:calc(100% - 190px)}.busy{top:10px;left:12px}.floor-message{padding:24px;font-size:20px}.inspector{border-left:0;border-right:0;gap:14px;width:auto;max-height:70%;padding:14px 16px 18px;inset:auto 0 0;box-shadow:0 -16px 40px #0000008c}.quick-pick{padding:22px 14px 40px}.quick-title{font-size:32px}.quick-grid{grid-template-columns:repeat(auto-fill,minmax(100px,1fr));gap:8px}.table-wrap{padding:10px 10px 76px}.plan-table,.plan-table tbody{display:block}.plan-table thead{display:none}.plan-table tbody tr{background:var(--panel);border:1px solid var(--line);grid-template-columns:repeat(3,minmax(0,1fr));gap:10px 12px;margin-bottom:10px;padding:12px;display:grid}.plan-table tbody tr.selected{border-color:var(--ficsit)}.plan-table td{text-align:left;border:0;flex-direction:column;gap:2px;padding:0;display:flex;background:0 0!important}.plan-table td:before{content:attr(data-label);font:700 12px var(--font-display);letter-spacing:.06em;text-transform:uppercase;color:var(--faint)}.plan-table td.recipe-cell,.plan-table td.dim{grid-column:1/-1}.plan-table td.recipe-cell{font:700 19px / 1.2 var(--font-display)}.plan-table td.recipe-cell:before{content:none}.plan-table td.clocks{white-space:normal}.plan-table td:nth-last-child(-n+2){grid-column:1/-1}.plan-table tbody tr.split-row{border-left:3px solid var(--supply);margin:-6px 0 10px 18px;padding:8px 12px}.plan-table tbody tr.split-row td.dim{display:none}.plan-table tbody tr.split-row td.recipe-cell{padding-left:0;font-size:16px}.bill{margin-top:16px}.tier-dialog{width:100vw;max-width:none;height:100dvh;max-height:none;padding:calc(20px + env(safe-area-inset-top)) 16px calc(24px + env(safe-area-inset-bottom));border:0;border-top:4px solid var(--ficsit);margin:0}.phase,.phase-tiers{grid-template-columns:minmax(0,1fr)}.toast{top:calc(76px + env(safe-area-inset-top));white-space:normal;bottom:auto;left:12px;right:12px}.toast+.toast{translate:0 calc(100% + 10px)}.toast+.toast+.toast{translate:0 calc(200% + 20px)}}@media (max-width:900px),(pointer:coarse){.item-card:not(.flat){grid-template-columns:auto minmax(0,1fr) auto;grid-template-areas:"slot name remove""slot rate rate";gap:6px 12px;display:grid}.item-card:not(.flat)>.slot{grid-area:slot}.item-card:not(.flat)>.item-card-name{grid-area:name}.item-card:not(.flat)>.item-card-rate{grid-area:rate}.item-card:not(.flat)>.icon-button{grid-area:remove}}@media (pointer:coarse){.rate-step{display:contents}.rate-field .rate-input{border-right:1px solid var(--line-2);border-left:0;width:76px}.rate-step button{border:1px solid var(--line-2);width:44px}.rate-step button+button{border-top:1px solid var(--line-2)}.step-down{order:-1}.step-up span:before,.step-down span:before{font:700 24px / 1 var(--font-display)}.step-up span:before{content:"+"}.step-down span:before{content:"−"}.segmented button,.tier-button,.install-button,.floor-button,.rate-input{min-height:44px}.icon-button,.sloop-slots button,.stepper button{width:44px;height:44px}.text-button{min-height:44px;padding:0 4px}}@media (max-width:1500px){.mode-switch button{letter-spacing:.06em;gap:6px;min-width:0;padding:0 11px;font-size:14px}.chrome-label{display:none}.chrome-button{padding:0 9px}}@media (max-width:1280px){.mode-switch button{padding:0 9px}}@media (max-width:1100px){.mode-label{display:none}.mode-switch button{min-width:52px;padding:0 10px}.settings-preview{display:none}}@media (max-width:900px){.chrome-button{display:none}.mode-switch{height:38px;margin-left:2px}.mode-switch button{min-width:44px}.sheet-links{gap:10px}.sheet-links>*{flex:1;justify-content:center}.readout.mix{min-width:260px}.modal{width:calc(100vw / var(--ui-scale,1));max-width:calc(100vw / var(--ui-scale,1));height:calc(100dvh / var(--ui-scale,1));max-height:calc(100dvh / var(--ui-scale,1));clip-path:none;border:0;margin:0}.modal-head{height:calc(54px + env(safe-area-inset-top) / var(--ui-scale,1));padding-top:calc(env(safe-area-inset-top) / var(--ui-scale,1));padding-right:10px}.settings-body{grid-template-rows:auto minmax(0,1fr);grid-template-columns:minmax(0,1fr)}.settings-nav{border-right:0;border-bottom:1px solid var(--line);scrollbar-width:none;flex-direction:row;padding:6px;overflow-x:auto}.settings-nav button{flex:none;padding:9px 12px;font-size:16px}.settings-nav button[aria-current=page]{box-shadow:inset 0 -3px var(--ficsit)}.settings-controls{padding:12px 16px calc(24px + env(safe-area-inset-bottom))}.setting-range{width:min(200px,44vw)}.panel-sides{grid-template-columns:repeat(3,minmax(0,1fr))}.panel-diagram{width:100%}.report-form{padding:16px 16px calc(20px + env(safe-area-inset-bottom))}.report-kinds{grid-template-columns:minmax(0,1fr)}.report-foot{bottom:calc(-20px - env(safe-area-inset-bottom));margin:0 -16px calc(-20px - env(safe-area-inset-bottom));padding:14px 16px calc(16px + env(safe-area-inset-bottom));flex-direction:column;align-items:stretch}.gen-grid{grid-template-columns:minmax(0,1fr)}}.kind.power{color:var(--power);border:1px solid color-mix(in srgb, var(--power) 50%, transparent)}.plan-table td.made{color:var(--power);font-weight:700}.crash{background:var(--bg);place-items:safe center center;height:100dvh;padding:24px;display:grid;overflow-y:auto}.crash-box{background:var(--panel);border:1px solid var(--line-2);border-top:4px solid var(--alert);flex-direction:column;gap:14px;max-width:560px;padding:28px 30px;display:flex}.crash-box .brand-mark{--mode:var(--ficsit);width:56px;height:20px}.crash-title{font:700 30px var(--font-display);letter-spacing:.06em;text-transform:uppercase;margin:0}.crash-detail{background:var(--bg);border:1px solid var(--line);color:var(--dim);overflow-wrap:anywhere;padding:8px 10px;font:13px/1.4 ui-monospace,Consolas,monospace}.crash-actions{flex-wrap:wrap;gap:10px;display:flex}@media (max-width:600px){.setting{grid-template-columns:minmax(0,1fr);min-height:0}.setting-control{flex-wrap:wrap;justify-self:start}.setting-reset{order:1}.setting-reset[data-idle]{display:none}}.settings-foot{background:var(--panel-2);border-top:1px solid var(--line);flex:none;justify-content:space-between;align-items:center;gap:16px;padding:12px 28px 12px 24px;transition:background .2s;display:flex}.settings-status{font:600 16px var(--font-display);letter-spacing:.03em;color:var(--faint);align-items:center;gap:10px;display:flex}.status-dot{background:var(--supply);width:10px;height:10px;transition:background .2s;transform:rotate(45deg)}.settings-foot[data-state=dirty] .settings-status{color:var(--paper)}.settings-foot[data-state=dirty] .status-dot{background:var(--ficsit)}.settings-foot[data-state=asking]{background:color-mix(in srgb, var(--ficsit) 14%, var(--panel-2))}.settings-foot[data-state=asking] .settings-status{color:var(--paper)}.settings-foot[data-state=asking] .status-dot{background:var(--ficsit)}.settings-actions{flex-wrap:wrap;justify-content:flex-end;gap:10px;display:flex}.settings-actions .primary-button{align-items:center;gap:8px;display:inline-flex}.settings-actions button:disabled{opacity:.4;cursor:default}@media (max-width:600px){.settings-foot{padding:10px 16px calc(10px + env(safe-area-inset-bottom));flex-direction:column;align-items:stretch}.settings-actions>*{flex:1}}.power-more{border-top:1px solid var(--line);padding-top:12px}.power-more>summary{cursor:pointer;font:700 16px var(--font-display);letter-spacing:.05em;text-transform:uppercase;color:var(--faint)}.power-more>summary:hover{color:var(--paper)}.power-more[open]>summary{margin-bottom:12px}.panel-body .flash{animation:1.4s ease-out panel-flash}.app[data-mode=factory] .panel-body .flash{--flash:var(--ficsit)}@keyframes panel-flash{0%,30%{box-shadow:0 0 0 2px var(--flash,var(--power))}to{box-shadow:0 0 0 3px #0000}}:root{--codex:#5ccfe6;--codex-ink:#05222a}.app[data-mode=codex]{--mode:var(--codex);--focus:var(--codex)}.mode-switch[data-mode=codex]{--thumb:var(--codex);--thumb-ink:var(--codex-ink)}.mode-switch[data-mode=codex] .mode-thumb{transform:translate(200%)}.topbar-fill{flex:1}.app[data-mode=codex] .brand{border-left-color:var(--codex)}.codex-nav{gap:16px;padding:18px 16px}.codex-nav-head{flex-direction:column;gap:12px;display:flex}.codex-home-link{color:var(--codex);font:700 22px / 1 var(--font-display);letter-spacing:.08em;text-transform:uppercase;align-items:center;gap:10px;text-decoration:none;display:flex}.codex-nav .search:focus,.codex-filter:focus{border-color:var(--codex)}.codex-cats{flex-direction:column;gap:2px;display:flex}.codex-cat,.codex-hit{color:var(--dim);font:600 18px / 1.15 var(--font-display);border-left:3px solid #0000;align-items:center;gap:12px;padding:7px 10px;text-decoration:none;display:flex}.codex-cat:hover,.codex-hit:hover{background:var(--raised);color:var(--paper)}.codex-cat.current{background:var(--raised);border-left-color:var(--codex);color:var(--paper)}.codex-cat-name,.codex-hit-name{flex:1;min-width:0}.codex-cat-count{color:var(--faint);font-weight:500}.codex-hits{flex-direction:column;gap:2px;margin:0;padding:0;list-style:none;display:flex}.codex-hit{font-size:17px}.codex-hit-blank{width:32px}.codex-hit-kind{color:var(--faint);font:500 13px var(--font-body);text-transform:uppercase;letter-spacing:.06em}.codex-none{padding:8px 10px}.codex-scroll{scrollbar-gutter:stable;-webkit-user-select:text;user-select:text;background:linear-gradient(90deg, #ffffff05 1px, transparent 1px) 0 0 / 48px 48px, linear-gradient(#ffffff05 1px, transparent 1px) 0 0 / 48px 48px, var(--floor);flex:1;min-height:0;overflow-y:auto}.codex-page{zoom:var(--ui-scale,1);flex-direction:column;gap:28px;max-width:1080px;margin:0 auto;padding:26px 32px 64px;display:flex;container:codex-page/inline-size}.codex-page a{color:inherit}.codex-crumbs{font:600 15px var(--font-display);letter-spacing:.06em;text-transform:uppercase;color:var(--faint);align-items:center;gap:10px;margin-bottom:-12px;display:flex}.codex-crumbs a{text-decoration:none;color:var(--codex)!important}.codex-crumbs a:hover{text-decoration:underline}.codex-title{font:700 38px / 1.05 var(--font-display);letter-spacing:.02em;text-transform:uppercase;margin:0}.codex-tag{background:var(--codex);color:var(--codex-ink);font:700 13px / 1.3 var(--font-display);letter-spacing:.1em;text-transform:uppercase;padding:2px 8px;display:inline-block}.codex-cat-grid{grid-template-columns:repeat(auto-fill,minmax(260px,1fr));gap:12px;display:grid}.codex-cat-card{background:var(--panel);border:1px solid var(--line);grid-template-columns:64px minmax(0,1fr) auto;align-items:center;column-gap:14px;padding:14px 14px 14px 16px;text-decoration:none;transition:border-color .1s;display:grid;position:relative}.codex-cat-card .icon{filter:drop-shadow(0 3px 3px #00000080)}.codex-cat-card:hover{border-color:var(--codex);background:var(--panel-2)}.codex-cat-card-name{font:700 18px / 1.15 var(--font-display);text-transform:uppercase;letter-spacing:.03em}.codex-cat-card-count{font:700 15px / 1.4 var(--font-display);color:var(--codex)}.codex-cat-head{flex-wrap:wrap;align-items:center;gap:18px 22px;display:flex}.codex-cat-head>.icon{filter:drop-shadow(0 4px 4px #00000080)}.codex-cat-head>div,.codex-cat-head>.codex-title{flex:1;min-width:200px}.codex-filter{width:240px}.codex-section{flex-direction:column;gap:12px;display:flex}.codex-h{border-bottom:1px solid var(--line);font:700 18px / 1.2 var(--font-display);letter-spacing:.08em;text-transform:uppercase;color:var(--dim);align-items:baseline;gap:10px;margin:0;padding-bottom:6px;display:flex}.codex-h-count{color:var(--faint);font-weight:500}.codex-tiles{grid-template-columns:repeat(auto-fill,minmax(210px,1fr));gap:8px;display:grid}.codex-tiles.wide{grid-template-columns:repeat(auto-fill,minmax(320px,1fr))}.codex-tile{background:var(--panel);border:1px solid #0000;align-items:center;gap:12px;padding:6px 10px 6px 6px;text-decoration:none;display:flex}.codex-tile:hover{border-color:var(--codex);background:var(--panel-2)}.codex-tile .slot{width:52px;height:52px}.codex-tile-text{flex-direction:column;min-width:0;display:flex}.codex-tile-name{font:600 17px / 1.15 var(--font-display)}.codex-tile-note{color:var(--faint);font-size:13px}.codex-head{background:var(--panel);border:1px solid var(--line);border-top:4px solid var(--codex);grid-template-columns:auto minmax(0,1fr) auto;gap:18px 24px;padding:22px 24px;display:grid}.codex-head-icon{width:128px;height:128px}.codex-head-main{flex-direction:column;align-items:flex-start;gap:10px;min-width:0;display:flex}.codex-stats{flex-wrap:wrap;gap:8px 26px;margin:2px 0 0;display:flex}.codex-stat{flex-direction:column;display:flex}.codex-stat dt{font:600 13px var(--font-display);letter-spacing:.08em;text-transform:uppercase;color:var(--faint)}.codex-stat dd{font:700 22px / 1.15 var(--font-display);color:var(--paper);margin:0}.codex-actions{flex-direction:column;align-self:start;align-items:stretch;gap:10px;display:flex}@container codex-page (width<=760px){.codex-head{grid-template-columns:auto minmax(0,1fr)}.codex-actions{flex-flow:wrap;grid-column:2;align-items:center}}.codex-build{white-space:nowrap;align-items:center;gap:6px;margin-left:auto;font-size:15px;display:inline-flex}.codex-desc{background:var(--bg);border-left:3px solid var(--line-2);color:var(--dim);grid-column:1/-1;margin:0;padding:12px 16px;font-style:italic}.codex-desc p{white-space:pre-line;margin:0}.codex-desc p+p{margin-top:8px}.codex-text{max-width:78ch}.codex-text p{margin:0 0 12px}.codex-unlock-line{color:var(--dim);margin:0}.codex-unlock-line a,.codex-unlock{color:var(--codex)!important}.codex-unlock-where{color:var(--faint);margin-left:8px;font-size:14px}.codex-amounts{flex-wrap:wrap;gap:8px;display:flex}.codex-amount{background:var(--panel-2);border:1px solid var(--line);align-items:center;gap:8px;padding:3px 12px 3px 3px;text-decoration:none;display:inline-flex}a.codex-amount:hover{border-color:var(--codex)}.codex-amount .slot{width:44px;height:44px}.codex-amount-text{flex-direction:column;line-height:1.15;display:flex}.codex-amount-text b{font:700 18px var(--font-display);color:var(--paper)}.codex-amount-text small{color:var(--faint);margin-left:2px;font-size:13px;font-weight:500}.codex-amount-text span{color:var(--dim);font-size:14px}.codex-recipes{grid-template-columns:repeat(auto-fill,minmax(440px,1fr));gap:12px;display:grid}.codex-recipe{background:var(--panel);border:1px solid var(--line);border-left:4px solid var(--ficsit);flex-direction:column;gap:12px;padding:14px 16px;display:flex}.codex-recipe.alternate{border-left-color:var(--alt)}.codex-recipe.converter{border-left-color:var(--converter)}.codex-recipe-head{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.codex-recipe-name{font:700 19px / 1.1 var(--font-display);text-transform:uppercase;letter-spacing:.03em}.codex-pill{border:1px solid var(--line-2);font:700 12px / 1.4 var(--font-display);letter-spacing:.08em;text-transform:uppercase;color:var(--dim);padding:1px 7px}.codex-pill.alt{border-color:var(--alt);color:var(--alt)}.codex-pill.conv{border-color:var(--converter);color:var(--converter)}.codex-recipe-flow{align-items:center;gap:10px;display:flex}.codex-recipe-flow>.codex-amounts{flex:0 10 auto}.codex-recipe-flow>.codex-amounts:last-child{flex-shrink:1}.codex-craft{flex-wrap:wrap;align-items:center;gap:10px;display:flex}.codex-craft .codex-unlock-line{flex-basis:100%}.codex-arrow{color:var(--faint);font-size:24px}.codex-recipe-foot{border-top:1px solid var(--line);color:var(--dim);flex-wrap:wrap;align-items:center;gap:6px 18px;padding-top:10px;font-size:14px;display:flex}.codex-machine{color:var(--paper);align-items:center;gap:8px;font-weight:600;text-decoration:none;display:inline-flex}a.codex-machine:hover{color:var(--codex)!important}.codex-uses{grid-template-columns:repeat(auto-fill,minmax(320px,1fr));gap:4px 12px;display:grid}.codex-use{background:var(--panel);border:1px solid #0000;align-items:center;gap:10px;padding:5px 10px 5px 6px;text-decoration:none;display:flex}.codex-use:hover{border-color:var(--codex)}.codex-use-name{flex:1;min-width:0;font-weight:600}.codex-use-where{color:var(--faint);font-size:13px}.codex-use-rate{font:700 16px var(--font-display);color:var(--dim);white-space:nowrap}.codex-extras{color:var(--dim);margin:4px 0 0;padding-left:20px}.codex-table-wrap{overflow-x:auto}.codex-table{border-collapse:collapse;background:var(--panel);width:100%;font-size:15px}.codex-table th{text-align:left;font:700 14px var(--font-display);letter-spacing:.08em;text-transform:uppercase;color:var(--faint);border-bottom:1px solid var(--line-2);padding:9px 12px}.codex-table td{border-bottom:1px solid var(--line);font-variant-numeric:tabular-nums;padding:7px 12px}.codex-table .codex-machine{vertical-align:middle}.codex-table tbody tr:hover td{background:var(--panel-2)}.codex-belt{color:var(--faint);font-size:12px;display:block}.codex-calc{background:var(--panel);border:1px solid var(--line);flex-direction:column;gap:16px;padding:18px 20px;display:flex}.codex-picker{flex-wrap:wrap;gap:6px;display:flex}.codex-picker .slot{width:56px;height:56px}.codex-picker .slot[aria-checked=true]{border-color:var(--codex);box-shadow:inset 0 0 0 1px var(--codex)}.codex-calc .clock-control{max-width:560px}.codex-calc-row{align-items:center;gap:12px;display:flex}.codex-readouts{flex-wrap:wrap;gap:10px;display:flex}.codex-readout{background:var(--bg);border:1px solid var(--line);flex-direction:column;min-width:150px;padding:10px 16px;display:flex}.codex-readout span{font:600 13px var(--font-display);letter-spacing:.08em;text-transform:uppercase;color:var(--faint)}.codex-readout b{font:700 28px / 1.1 var(--font-display)}.codex-readout.power b{color:var(--power)}.codex-readout.good b{color:var(--codex)}.codex-bars{flex-direction:column;gap:4px;display:flex}.codex-bar{background:var(--panel);grid-template-columns:30px 170px 1fr 130px;align-items:center;gap:12px;padding:4px 10px 4px 6px;text-decoration:none;display:grid}.codex-bar:hover{background:var(--panel-2)}.codex-bar-name{font-weight:600}.codex-bar-track{background:var(--bg);height:10px}.codex-bar-track span{background:linear-gradient(90deg, color-mix(in srgb, var(--codex) 55%, transparent), var(--codex));height:100%;display:block}.codex-bar-track span.endless{background:repeating-linear-gradient(-45deg, var(--codex) 0 6px, transparent 6px 12px)}.codex-bar b{text-align:right;font:700 17px var(--font-display)}.codex-flows{flex-wrap:wrap;gap:4px 12px;display:inline-flex}.codex-flow{font:700 16px var(--font-display);color:var(--paper);white-space:nowrap;align-items:center;gap:5px;text-decoration:none;display:inline-flex}.codex-flow small{color:var(--faint);margin-left:1px;font-size:12px;font-weight:500}a.codex-flow:hover{color:var(--codex)!important}.codex-line-row{flex-wrap:wrap;align-items:baseline;gap:6px 14px;display:flex}.codex-line-label{min-width:90px;font:600 13px var(--font-display);letter-spacing:.08em;text-transform:uppercase;color:var(--faint)}.codex-table th.num,.codex-table td.num{text-align:right;white-space:nowrap}.codex-table td.best{color:var(--codex);font-weight:700}.codex-compare td{vertical-align:middle}.codex-compare td:first-child{min-width:160px}.codex-table .codex-group-row td{background:var(--panel-2);font:700 17px var(--font-display);padding-top:14px}.codex-page .hint{max-width:78ch}.codex-compare-name{flex-wrap:wrap;align-items:center;gap:6px 8px;font-weight:600;display:inline-flex}.codex-compare-note{color:var(--faint);margin-top:2px;font-size:13px;display:block}.codex-delta{color:var(--faint);font-size:13px;font-weight:600;display:block}.codex-delta.good{color:var(--supply)}.codex-delta.bad{color:var(--alert)}.codex-steps .codex-pill{margin-left:8px}.codex-notes .codex-text{background:var(--panel);border-left:3px solid var(--codex);padding:12px 16px}.codex-notes .codex-text p:last-child{margin-bottom:0}.codex-guide-cards{grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:8px;display:grid}.codex-guide-card{background:var(--panel);border:1px solid var(--line);align-items:center;gap:12px;padding:8px 12px 8px 8px;text-decoration:none;display:flex}.codex-guide-card:hover{border-color:var(--codex)}.codex-guide-card .slot{flex:none;width:56px;height:56px}.codex-guide-card-line{color:var(--dim);font-size:14px}.codex-phases{flex-direction:column;gap:8px;display:flex}.codex-phase{background:var(--panel);border-left:3px solid var(--codex);flex-direction:column;gap:8px;padding:10px 14px;display:flex}.codex-phase-head{flex-wrap:wrap;align-items:baseline;gap:4px 14px;display:flex}.codex-phase-head b{font:700 18px var(--font-display);text-transform:uppercase;letter-spacing:.04em}.codex-phase-head span{color:var(--faint);font-size:14px}.codex-tier-rows{flex-direction:column;gap:6px;display:flex}.codex-tier-row{background:var(--panel);align-items:center;gap:12px;padding:6px 10px;display:flex}.codex-tier-label{width:70px;font:700 17px var(--font-display);text-transform:uppercase;color:var(--paper);flex:none;text-decoration:none}.codex-tier-icons{flex-wrap:wrap;gap:4px;min-width:0;display:flex}.codex-tier-icons .slot{width:46px;height:46px}.codex-sort{align-self:flex-start}.help{flex-direction:column;gap:18px;display:flex}.help-group{flex-direction:column;gap:6px;display:flex}.help-title{font:700 17px var(--font-display);letter-spacing:.08em;text-transform:uppercase;color:var(--ficsit);margin:0}.help-list{flex-direction:column;margin:0;display:flex}.help-term{border-bottom:1px solid var(--line);grid-template-columns:200px 1fr;gap:16px;padding:9px 0;display:grid}.help-term dt{font:700 17px / 1.3 var(--font-display)}.help-term dd{color:var(--dim);margin:0;font-size:15px}.updates{flex-direction:column;gap:26px;display:flex}.update.latest{background:color-mix(in srgb, var(--panel-2) 70%, transparent);border:1px solid var(--line);border-left:3px solid var(--ficsit);border-radius:var(--radius);padding:18px 22px 20px}.update-head{align-items:baseline;gap:12px;display:flex}.update-version{font:700 28px / 1 var(--font-display);letter-spacing:.02em}.update-head time{color:var(--faint);font:500 14px var(--font-body)}.update-group{--k:var(--faint);margin-top:16px}.update-group.added{--k:var(--alt)}.update-group.fixed{--k:var(--ficsit)}.update-kind{color:var(--k);font:700 12px var(--font-display);letter-spacing:.12em;text-transform:uppercase;margin:0 0 8px}.update-notes{color:var(--dim);flex-direction:column;gap:7px;margin:0;padding:0;font-size:15px;line-height:1.45;list-style:none;display:flex}.update-notes li{padding-left:18px;position:relative}.update-notes li:before{content:"";background:var(--k);width:6px;height:6px;position:absolute;top:.58em;left:2px}.update-name{font:700 19px var(--font-display);color:var(--paper);margin:8px 0 0}.update-credit{color:var(--faint);white-space:nowrap;margin-left:8px;font-size:13px}.update-earlier-title{color:var(--faint);font:700 13px var(--font-display);letter-spacing:.12em;text-transform:uppercase;margin:0 0 4px}.update-earlier details{border-top:1px solid var(--line)}.update-earlier details:last-child{border-bottom:1px solid var(--line)}.update-earlier summary{cursor:pointer;padding:12px 4px;list-style:none}.update-earlier summary::-webkit-details-marker{display:none}.update-earlier summary .update-version{font-size:19px}.update-count{color:var(--faint);margin-left:auto;font-size:13px}.update-earlier summary:after{content:"";border:solid var(--faint);border-width:0 2px 2px 0;align-self:center;width:8px;height:8px;margin:0 4px 2px 6px;transition:rotate .15s;rotate:45deg}.update-earlier details[open] summary:after{rotate:225deg}.update-earlier summary:hover .update-version,.update-earlier summary:focus-visible .update-version{color:var(--ficsit)}.update-earlier details>.update-group{margin-top:12px;padding:0 4px}.update-earlier summary+.update-group{margin-top:2px}.update-earlier details>.update-group:last-child{margin-bottom:16px}.update-made{border-top:1px solid var(--line);color:var(--faint);margin:0;padding-top:14px;font-size:14px}.new-dot{background:var(--ficsit);border-radius:50%;flex:none;width:8px;height:8px}.settings-nav .new-dot{margin-left:auto}.menu-button{position:relative}.menu-button .new-dot{position:absolute;top:12px;right:8px}@media (max-width:900px){.codex-page{gap:22px;padding:18px 14px 40px}.codex-title{font-size:30px}.codex-head{grid-template-columns:1fr;padding:16px}.codex-actions{flex-flow:wrap;grid-column:auto}.codex-head-icon{width:96px;height:96px}.codex-recipes,.codex-uses{grid-template-columns:minmax(0,1fr)}.codex-tiles{grid-template-columns:repeat(auto-fill,minmax(150px,1fr))}.codex-filter{width:100%}.codex-bar{grid-template-columns:30px 1fr 90px}.codex-bar-track{display:none}.codex-table :is(th,td){padding:7px 8px}.codex-recipe-flow{flex-direction:column;align-items:flex-start;gap:6px}.codex-recipe-flow .codex-arrow{margin-left:14px;line-height:1;transform:rotate(90deg)}.help-term{grid-template-columns:1fr;gap:2px}}.font-choices{grid-template-columns:repeat(auto-fill,minmax(168px,1fr));gap:8px;display:grid}.font-choice{background:var(--raised);border:1px solid var(--line);color:var(--dim);text-align:left;flex-direction:column;align-items:flex-start;gap:4px;padding:10px 12px;display:flex}.font-choice:hover{border-color:var(--line-2)}.font-choice[aria-checked=true]{border-color:var(--ficsit);box-shadow:inset 0 0 0 1px var(--ficsit);color:var(--paper)}.font-sample{white-space:nowrap;font:700 18px / 1.1 var(--font-display);letter-spacing:.04em;text-transform:uppercase}.font-name{font:500 14px var(--font-body)}.supply-from{font:500 14px var(--font-body);color:var(--faint);align-items:center;gap:6px;margin-top:4px;display:flex}.supply-from select{background:var(--bg);border:1px solid var(--line-2);min-width:0;max-width:100%;color:var(--paper);font:600 14px var(--font-body);padding:3px 6px}.supply-from select:focus-visible{outline-offset:0}.exports-list{flex-direction:column;gap:6px;margin:0;padding:0;list-style:none;display:flex}.exports-list li{background:var(--raised);border-left:4px solid var(--supply);align-items:center;gap:10px;padding:6px 10px 6px 6px;display:flex}.exports-text{flex:1;min-width:0}.exports-text b{font:700 18px var(--font-display)}.exports-title{margin-top:14px}.sheet .share-button{justify-content:center;min-height:48px}.sheet .share-button .chrome-label{display:inline}:root{--map:#a8c66c;--map-ink:#16200a;--impure:#e0685c;--normal:#f2c14e;--pure:#7cc46a}.app[data-mode=map]{--mode:var(--map);--focus:var(--map)}.mode-switch[data-mode=map]{--thumb:var(--map);--thumb-ink:var(--map-ink)}.mode-switch[data-mode=map] .mode-thumb{transform:translate(300%)}.app[data-mode=map] .brand{border-left-color:var(--map)}.app[data-mode=map] .floor{isolation:isolate;position:relative;overflow:hidden}.world-map{font-family:var(--font-body);background:#4c6f77;position:absolute;inset:0}.world-map.leaflet-container{background:#4c6f77}.world-map .leaflet-tile{image-rendering:auto}.map-pin{--ring:var(--normal);left:calc(var(--pin,22px) / -2);top:calc(var(--pin,22px) / -2);width:var(--pin,22px);height:var(--pin,22px);box-shadow:0 0 0 2px var(--ring), 0 2px 6px #00000080;cursor:pointer;background:#141516e0;border-radius:50%;place-items:center;display:grid;position:absolute}.map-pin.purity-0{--ring:var(--impure)}.map-pin.purity-2{--ring:var(--pure)}.world-map[data-dots] .map-pin{background:var(--ring);box-shadow:0 0 0 1px #0000008c}.world-map[data-dots] .map-pin i{display:none}.map-pin.well{transform:scale(.78)}.map-pin i{background:var(--icon) center / contain no-repeat;pointer-events:none;width:78%;height:78%}.leaflet-marker-icon:hover .map-pin{box-shadow:0 0 0 3px var(--ring), 0 2px 8px #0009}.map-popup .leaflet-popup-content-wrapper{background:var(--panel-2);color:var(--paper);border:1px solid var(--line-2);border-radius:6px;box-shadow:0 10px 24px #00000073}.map-popup .leaflet-popup-tip{background:var(--panel-2);border:1px solid var(--line-2)}.map-popup .leaflet-popup-content{font:500 14px / 1.45 var(--font-body);margin:10px 14px}.map-pop{flex-direction:column;gap:2px;min-width:150px;display:flex}.map-pop b{font:700 17px var(--font-display)}.map-pop-purity{font-weight:700}.map-pop-purity.purity-0{color:var(--impure)}.map-pop-purity.purity-1{color:var(--normal)}.map-pop-purity.purity-2{color:var(--pure)}.map-pop-kind,.map-pop-yield{color:var(--dim)}.world-map .leaflet-control-zoom{border:1px solid var(--line-2);box-shadow:none;border-radius:6px;margin:0 18px 18px 0;overflow:hidden}.world-map .leaflet-control-zoom a{background:var(--panel);width:40px;height:40px;color:var(--paper);border-bottom-color:var(--line-2);font:600 22px / 38px var(--font-body)}.world-map .leaflet-control-zoom a:hover{background:var(--raised);color:var(--map)}.map-nav{gap:22px;padding:18px 16px}.map-nav-title{font:700 22px var(--font-display);letter-spacing:.04em;text-transform:uppercase;color:var(--map);align-items:center;gap:10px;margin:0;display:flex}.map-purities{grid-template-columns:repeat(3,1fr);gap:6px;display:grid}.map-purity{border:1px solid var(--line-2);background:var(--panel);min-height:38px;color:var(--faint);font:600 15px var(--font-display);border-radius:6px;justify-content:center;align-items:center;gap:8px;display:flex}.map-purity[aria-pressed=true]{background:var(--raised);color:var(--paper);border-color:var(--line-2)}.map-dot{background:var(--normal);opacity:.35;border-radius:50%;width:10px;height:10px}.map-purity.purity-0 .map-dot{background:var(--impure)}.map-purity.purity-2 .map-dot{background:var(--pure)}.map-purity[aria-pressed=true] .map-dot{opacity:1}.map-bulk{gap:14px;display:flex}.map-bulk .text-button{font-size:14px}.map-items{flex-direction:column;gap:2px;margin:0;padding:0;list-style:none;display:flex}.map-item{width:100%;color:var(--paper);text-align:left;background:0 0;border:0;border-radius:6px;align-items:center;gap:10px;padding:6px 10px 6px 6px;display:flex}.map-item:hover{background:var(--raised)}.map-item[aria-pressed=false]{color:var(--faint)}.map-item[aria-pressed=false] .icon{opacity:.35;filter:grayscale()}.map-item-name{min-width:0;font:600 16px var(--font-display);flex:1}.map-counts{font:700 13px / 1 var(--font-body);gap:4px;display:flex}.map-counts span{background:var(--panel);text-align:center;border-radius:4px;min-width:24px;padding:3px 0}.map-counts .purity-0{color:var(--impure)}.map-counts .purity-1{color:var(--normal)}.map-counts .purity-2{color:var(--pure)}.map-item[aria-pressed=false] .map-counts span{color:var(--faint)}.map-layer-count{font:700 13px / 1 var(--font-body);color:var(--dim);align-items:center;gap:6px;display:flex}.map-layer-count:before{content:"";background:var(--ring);border-radius:50%;width:10px;height:10px}.map-item[aria-pressed=false] .map-layer-count:before{background:var(--line-2)}.map-reset{align-self:flex-start}.brand-mark{clip-path:none;background:url(/logo.png) 50%/contain no-repeat;align-self:center;width:44px;height:44px;margin:0 -2px 0 14px}.brand-mark:before{content:none}.brand-name{font:700 23px / 1 var(--font-display);letter-spacing:.02em;color:var(--paper);flex-direction:column;align-items:flex-start;gap:4px;font-family:Heebo,sans-serif;display:flex}.brand-word{letter-spacing:.1em;color:var(--paper);text-shadow:0 2px #00000073;font-size:25px;font-weight:800;line-height:.82}.brand-sub{letter-spacing:.42em;text-transform:uppercase;color:var(--mode-ink,#1d1206);background:var(--mode,var(--ficsit));clip-path:polygon(0 0,100% 0,100% 55%,calc(100% - 6px) 100%,0 100%);padding:2px 9px 1px 6px;font-size:10px;font-weight:800;line-height:1.2}@media (max-width:900px){.brand-name,.tabs-nudge,.plan-tab-close{display:none}.plan-tab{padding-right:4px}.plan-tab-name{padding-left:10px}.plan-tabs-frame{flex:auto}.plan-add{width:30px}.mode-switch button{min-width:38px;padding:0 6px}.menu-button{width:40px}}@media (max-width:380px){.brand{display:none}.mode-switch{margin-left:6px}}.topbar{background:var(--bg);border-bottom-color:#151515}.tabs button,.section-title,.readout-label,.mode-switch button,.modal-title,.settings-heading,.inspector-label,.inspector-machine,.plan-table th,.map-nav-title,.codex-home-link,.help-title,.power-more>summary,.size-total-label,.grid-head,.consumer-kind,.endpoint-kind,.gen-add,.codex-h,.codex-title,.codex-cat-card-name,.codex-recipe-name,.codex-table th,.codex-stat dt,.codex-crumbs,.codex-readout span,.crash-title,.settings-preview figcaption,.mobile-nav button,.plan-table td:before,.codex-hit-kind,.sent-title,.pin-badge{text-transform:none;letter-spacing:0}.tabs button{font-size:18px}.section-title{color:var(--paper);font-size:18px}.readout-label{color:var(--dim);font-size:14px}.mode-switch button{font-size:16px}.modal-title{font-size:24px}.endpoint-kind{color:var(--dim)}.ghost-button,.chrome-button,.tier-button,.add-button,.floor-button,.fuel-chip{border:1px solid var(--button-edge);border-radius:var(--radius);background:linear-gradient(180deg, var(--button-top), var(--button-bottom));color:var(--paper);box-shadow:inset 0 1px #ffffff12}.ghost-button:hover:not(:disabled),.chrome-button:hover,.tier-button:hover,.add-button:hover,.floor-button:hover,.fuel-chip:hover{border-color:var(--button-edge);color:var(--paper);background:linear-gradient(#595959,#444)}.primary-button{border-radius:var(--radius);background-image:linear-gradient(#ffffff24,#fff0);box-shadow:inset 0 1px #ffffff40,0 1px #00000059}.add-button{color:var(--paper)}.add-button .glyph,.add-button>span:first-child{color:var(--ficsit)}.segmented,.mode-switch{border-radius:var(--radius-lg);background:#1a1a1a;border-color:#151515;box-shadow:inset 0 1px 2px #0006}.segmented button,.mode-thumb{border-radius:var(--radius)}.segmented button[aria-checked=true]{box-shadow:inset 0 1px #ffffff40}.mode-thumb{background:var(--thumb);box-shadow:inset 0 1px #ffffff40}.rate-input,.search,.quick-search,.field input,.modal input,.modal textarea,.modal select,.supply-from select{border-radius:var(--radius)}.rate-field .rate-input{border-radius:var(--radius) 0 0 var(--radius)}.rate-step{border-radius:0 var(--radius) var(--radius) 0;overflow:hidden}.item-card,.recipe-row,.resource-card,.gen-row,.tier-card,.quick-item,.codex-cat-card,.codex-tile,.codex-recipe,.exports-list li,.size-box,.draw-row,.setting-note,.inventory-row,.placements button,.readout.wide .raw-chip,.rate-chip{border-radius:var(--radius-lg)}.item-card,.exports-list li,.setting-note{border-left:0}.gen-row{overflow:hidden}.gen-row-head{clip-path:none}.modal,.tier-dialog,.inspector,.sheet{clip-path:none;border-radius:8px}.modal-head:before{content:none}.modal-head{padding-left:22px}.tier-dialog{border-top-width:1px;border-top-color:var(--line-2)}.toast{border:1px solid var(--line-2);border-radius:var(--radius-lg)}.floor-hint{border-radius:var(--radius)}.floor-bar .segmented,.floor-controls .segmented{background:#1a1a1a}:root{--metal:linear-gradient(180deg, #727272, #5f5f5f);--metal-edge:inset 0 1px 0 #ffffff4d, inset 0 -2px 0 #00000047;--glass:linear-gradient(118deg, #1b1b1b 0 36%, #202020 36% 50%, #1b1b1b 50%);--glass-edge:inset 0 2px 6px #000000b3, 0 1px 0 #ffffff40;--painted:#242424}.topbar{background:linear-gradient(118deg,#161616 0 30%,#1c1c1c 30% 44%,#161616 44%);border-bottom:2px solid #4a4a4a}.side{background:var(--metal);box-shadow:var(--metal-edge);border-color:#2c2c2c}.side .tabs{background:0 0;border-bottom-color:#00000040;box-shadow:0 1px #ffffff2e}.side .tabs button,.side .deck-toggle{color:var(--painted);text-shadow:0 1px #ffffff47}.side .tabs button[aria-selected=true]{color:var(--paper);text-shadow:none;background:linear-gradient(118deg,#1b1b1b 0 36%,#202020 36% 50%,#1b1b1b 50%);border-radius:6px 6px 0 0}.side .tabs button[aria-selected=true] .tab-badge{color:var(--faint)}.side .tabs button:not([aria-selected=true]):hover{color:#000}.side .tab-badge{color:#0000008c}.app[data-panel=top] .panel-body.targets{gap:12px;padding:12px 14px 14px}.app[data-panel=top] .panel-body.targets>.stack,.app[data-panel=top] .recipe-tools,.app[data-panel=top] .recipe-list,.app[data-panel=top] .panel-body.resources>.stack{background:var(--glass);box-shadow:var(--glass-edge);border-radius:8px;align-self:stretch;padding:14px 16px 16px}.app[data-panel=top] :is(.panel-body.recipes,.panel-body.resources){gap:12px;padding:12px 14px 14px}.app[data-panel=top] .recipe-tools,.app[data-panel=top] .panel-body.resources>.extraction{border-right:0}.app:is([data-panel=left],[data-panel=right]) .side>.panel-body{background:var(--glass);box-shadow:var(--glass-edge);border-radius:8px;margin:0 10px 10px}.app[data-mode=codex] .side>.panel-body,.app[data-mode=map] .side>.panel-body{margin-top:10px}.summary{background:var(--metal);box-shadow:var(--metal-edge);border-bottom-color:#2c2c2c;gap:8px;padding:8px 10px}.summary .readout{background:var(--glass);box-shadow:var(--glass-edge);border:0;border-radius:6px}.modal,.tier-dialog,.sheet{background:var(--metal);box-shadow:var(--metal-edge), 0 24px 60px #0009;border-color:#2c2c2c}.modal-head{box-shadow:var(--glass-edge);background:linear-gradient(118deg,#161616 0 36%,#1c1c1c 36% 50%,#161616 50%);border:0;border-radius:6px;margin:12px 14px 0;padding-left:16px}.modal>:not(.modal-head){background:var(--glass);box-shadow:var(--glass-edge);border-radius:8px;margin:10px 14px 0}.modal>:last-child{margin-bottom:14px}.settings-foot,.report-foot{border-top:0}.tier-dialog>.quick-title,.tier-dialog>.hint,.tier-dialog .section-title{color:#151515;text-shadow:0 1px #ffffff4d}.tier-card{background:var(--glass);box-shadow:var(--glass-edge);border:0}.tier-card.current{box-shadow:var(--glass-edge), inset 0 0 0 2px var(--ficsit)}.inspector{background:var(--metal);box-shadow:var(--metal-edge), 0 18px 44px #0000008c;border:1px solid #2c2c2c}.inspector>*{background:var(--glass);box-shadow:var(--glass-edge);border-radius:8px;padding:12px 14px}.inspector>.inspector-head{box-shadow:none;background:0 0;padding:0 4px}.inspector-head .inspector-recipe,.inspector-head .modal-close,.inspector-head .icon-button{color:#141414;text-shadow:0 1px #ffffff4d}.sheet .control-label,.sheet-row>.control-label{color:#1c1c1c;text-shadow:0 1px #ffffff4d}.inspector-head .inspector-machine{color:#3a1d05}.mobile-nav{background:linear-gradient(118deg,#161616 0 30%,#1c1c1c 30% 44%,#161616 44%)}@media (min-width:901px){.app:is([data-panel=left],[data-panel=right]) .side .tabs .deck-toggle{height:34px;color:var(--paper);text-shadow:none;background:linear-gradient(180deg, var(--button-top), var(--button-bottom));border:1px solid var(--button-edge);border-radius:var(--radius);align-self:center;margin:0 6px 0 auto;padding:0 12px;box-shadow:inset 0 1px #ffffff1f,-8px 0 10px -4px #00000073}.app:is([data-panel=left],[data-panel=right]) .side .tabs .deck-toggle:hover{color:var(--ficsit)}.app[data-panel=left][data-deck=closed]:not([data-empty]){grid-template-columns:50px minmax(0,1fr);grid-template-rows:var(--top-h) minmax(0, 1fr)}.app[data-panel=right][data-deck=closed]:not([data-empty]){grid-template-columns:minmax(0,1fr) 50px;grid-template-rows:var(--top-h) minmax(0, 1fr)}.app:is([data-panel=left],[data-panel=right])[data-deck=closed] .side>:not(.tabs){display:none}.app:is([data-panel=left],[data-panel=right])[data-deck=closed] .side .tabs{align-items:center;gap:4px;padding:14px 0 10px;overflow:hidden}.app:is([data-panel=left],[data-panel=right])[data-deck=closed] .side .tabs button:not(.deck-toggle){padding:14px 12px}.app:is([data-panel=left],[data-panel=right])[data-deck=closed] .side .tab-badge{margin:0;margin-inline-start:6px}.app:is([data-panel=left],[data-panel=right])[data-deck=closed] .side .tabs .deck-toggle{order:-1;justify-content:center;width:36px;height:36px;margin:0 0 8px;padding:0}}.side{container:side/inline-size}@container side (width<=480px){.item-card:not(.flat){grid-template-columns:auto minmax(0,1fr) auto;grid-template-areas:"slot name remove""slot rate rate";gap:6px 12px;display:grid}.item-card:not(.flat)>.slot{grid-area:slot}.item-card:not(.flat)>.item-card-name{grid-area:name}.item-card:not(.flat)>.item-card-rate{grid-area:rate}.item-card:not(.flat)>.icon-button{grid-area:remove}.item-card-name{font-size:18px}.resource-card .item-card.flat{grid-template-columns:auto minmax(0,1fr);grid-template-areas:"slot name""slot rate";gap:4px 12px;display:grid}.resource-card .item-card.flat>.slot{grid-area:slot}.resource-card .item-card.flat>.item-card-name{grid-area:name}.resource-card .item-card.flat>.item-card-rate{grid-area:rate}.extract-row{flex-wrap:wrap}.extract-name{flex-basis:calc(100% - 40px)}.section-head{flex-wrap:wrap}.inventory-row.item-card.flat{grid-template-columns:auto minmax(0,1fr);grid-template-areas:"slot name""slot rate";gap:4px 12px;display:grid}.inventory-row>.slot{grid-area:slot}.inventory-row>.item-card-name{flex-flow:wrap;grid-area:name;align-items:baseline;gap:0 10px;font-size:17px}.inventory-row>.rate-field{grid-area:rate;justify-self:start}}.panel-body.targets>.stack{container:card-column/inline-size}@container card-column (width<=440px){.item-card:not(.flat){grid-template-columns:auto minmax(0,1fr) auto;grid-template-areas:"slot name remove""slot rate rate";gap:6px 12px;display:grid}.item-card:not(.flat)>.slot{grid-area:slot}.item-card:not(.flat)>.item-card-name{grid-area:name}.item-card:not(.flat)>.item-card-rate{grid-area:rate}.item-card:not(.flat)>.icon-button{grid-area:remove}}@container side (width<=360px){.add-button{font-size:16px}}.machine-node.power .machine-product{-webkit-line-clamp:2;line-clamp:2;white-space:normal;font-size:calc(15px * var(--t));-webkit-box-orient:vertical;line-height:1.05;display:-webkit-box}@media (pointer:coarse){.plan-tab-close,.gen-row-remove{width:32px;height:32px}.codex-crumbs a,.codex-home-link,.codex-table .codex-machine,.codex-recipe-foot .codex-machine,.codex-recipe-foot .codex-unlock,.codex-flow,.codex-tier-label{align-items:center;min-height:32px;display:inline-flex}}.topbar{container:topbar/inline-size}@container topbar (width<=1000px){.topbar .brand-name{display:none}}@container topbar (width<=1250px){.topbar .mode-label,.topbar .chrome-label{display:none}}.side .tabs button:not(.deck-toggle){white-space:nowrap;flex:0 auto;min-width:0;padding-inline:clamp(8px,2.6cqi,30px);font-size:clamp(14px,4cqi,18px)}@media (pointer:coarse){.tier-steps{grid-template-columns:repeat(5,1fr)}}.item-card-rate{flex-wrap:wrap;min-width:0}.sliding{isolation:isolate}.slide-anchor{position:relative}.slide-ghost{z-index:-1;transform-origin:0 0;pointer-events:none;position:absolute}.slide-to{box-shadow:none!important;background:0 0!important}.segmented button,.side>.tabs [role=tab],.settings-nav button{transition:color .15s ease-out}.summary.closed{padding-block:4px}.summary-line{color:var(--faint);font:600 14px var(--font-display);letter-spacing:.04em;text-transform:uppercase;text-align:left;background:0 0;border:0;flex-wrap:wrap;flex:1;align-items:baseline;gap:4px 22px;padding:4px 12px;display:flex}.summary-line b{color:var(--paper);letter-spacing:0;margin-left:4px;font-size:18px}.summary-line b.power{color:var(--power)}.summary-line-more{align-items:center;gap:4px;margin-left:auto;display:inline-flex}.summary-line:hover .summary-line-more{color:var(--ficsit)}.summary-handle{z-index:6;background:var(--metal);width:76px;height:24px;color:var(--painted);border:1px solid #2c2c2c;border-top:0;border-radius:0 0 6px 6px;place-items:center;padding:0;display:grid;position:absolute;top:0;left:50%;translate:-50%;box-shadow:0 3px 6px #00000059}.summary-handle:hover{color:var(--ficsit)}@media (pointer:coarse){.summary-handle{width:84px;height:32px}}.summary.closed{padding:6px 10px}.summary-line{background:var(--glass);box-shadow:var(--glass-edge);border-radius:6px;padding:7px 14px}@media (min-width:901px){.app:is([data-panel=left],[data-panel=right]) .side .tabs .deck-toggle{box-shadow:inset 0 1px #ffffff1f}.app:is([data-panel=left],[data-panel=right])[data-deck=closed] .side .tabs{gap:0;padding:8px 0}.app:is([data-panel=left],[data-panel=right])[data-deck=closed] .side .tabs .deck-toggle{width:34px;height:34px;margin:0 0 6px}.app:is([data-panel=left],[data-panel=right])[data-deck=closed] .side .tabs button:not(.deck-toggle){letter-spacing:.06em;width:100%;padding:14px 0;font-size:15px}.app:is([data-panel=left],[data-panel=right])[data-deck=closed] .side .tabs button[aria-selected=true]{color:var(--painted);text-shadow:0 1px #ffffff47}.app:is([data-panel=left],[data-panel=right])[data-deck=closed] .side .tabs button:not(.deck-toggle):hover{color:#000}}@supports (field-sizing:content){.raw-chip .rate-input{field-sizing:content;width:auto;min-width:84px;max-width:130px}.app[data-summary=compact] .raw-chip .rate-input{width:auto;min-width:72px}}.floor-kind button[aria-checked=true]{background:var(--ficsit);color:var(--ficsit-ink)}.react-flow__handle.port{background:var(--bg);border:2px solid var(--line-2);cursor:crosshair;border-radius:3px;place-items:center;width:26px;height:26px;display:grid}.react-flow__handle.port.in{left:-14px}.react-flow__handle.port.out{right:-14px}.react-flow__handle.port.down.in{top:-14px}.react-flow__handle.port.down.out{top:auto;bottom:-14px;right:auto}.react-flow__handle.port.open{border-style:dashed;border-color:var(--ficsit)}.react-flow__handle.port.pipe{border-radius:50%}.react-flow__handle.port img{pointer-events:none}.react-flow__handle.port.connectingto,.react-flow__handle.port.valid{border-color:var(--supply);box-shadow:0 0 0 3px color-mix(in srgb, var(--supply) 45%, transparent)}.react-flow__handle.port.connectionindicator:hover{border-color:var(--paper)}@media (pointer:coarse){.react-flow__handle.port:after{content:"";position:absolute;inset:-10px}}.machine-node.manual,.endpoint-node.manual{overflow:visible}.machine-node.manual,.endpoint-node.manual,.fitting-node{--t:1;zoom:1;box-sizing:border-box}.machine-node.manual{clip-path:none}.endpoint-node.manual.selected,.fitting-node.selected{border-color:var(--ficsit);box-shadow:inset 0 0 0 2px var(--ficsit)}.machine-node.done:before,.endpoint-node.done:before,.fitting-node.done:before{content:"✓";z-index:2;background:var(--supply);width:24px;height:24px;color:var(--ficsit-ink);font:700 15px var(--font-body);border-radius:50%;place-items:center;display:grid;position:absolute;top:-12px;left:-12px}.endpoint-node.manual{--edge-l:5px;position:relative}.card-x{z-index:3;border:1px solid var(--line-2);background:var(--raised);width:24px;height:24px;color:var(--dim);font:500 18px / 1 var(--font-body);cursor:pointer;opacity:0;border-radius:50%;place-items:center;padding:0 0 2px;transition:opacity .12s;display:grid;position:absolute;top:-12px;right:-12px}.react-flow__node:hover .card-x,.react-flow__node.selected .card-x,.card-x:focus-visible{opacity:1}.card-x:hover{border-color:var(--alert);color:var(--alert)}@media (hover:none){.card-x{opacity:1}}.card-menu{z-index:9;background:var(--panel);border:1px solid var(--line-2);border-radius:var(--radius);flex-direction:column;min-width:200px;padding:4px;display:flex;position:absolute;box-shadow:0 12px 30px #0000008c}.card-menu button{color:var(--paper);font:500 15px var(--font-body);text-align:left;cursor:pointer;background:0 0;border:0;border-radius:3px;justify-content:space-between;align-items:center;gap:18px;padding:7px 10px;display:flex}.card-menu button:hover,.card-menu button:focus-visible{background:var(--raised);box-shadow:inset 3px 0 var(--ficsit);outline:none}.card-menu button.danger{color:var(--alert)}.card-menu kbd{color:var(--faint);font:500 12px var(--font-body)}.card-flag{z-index:2;background:var(--power);color:var(--ficsit-ink);font:700 13px / 1.3 var(--font-display);letter-spacing:.04em;text-transform:uppercase;white-space:nowrap;pointer-events:auto;padding:2px 8px;position:absolute;bottom:calc(100% + 4px);right:0}.slot-empty{border:1px dashed var(--line-2);width:60px;height:60px}.fitting-node{background:var(--raised);border:1px solid var(--line-2);flex-direction:column;justify-content:center;align-items:center;gap:2px;width:96px;height:96px;display:flex;position:relative}.fitting-rate{font:700 15px var(--font-display);white-space:nowrap}.fitting-rate small{color:var(--dim);margin-left:2px;font-size:11px}.fitting-unknown{font:700 32px var(--font-display);color:var(--alert)}.fitting-node.unknown{border-color:var(--alert)}.run-state{font:700 14px var(--font-display);white-space:nowrap}.run-state.good{color:var(--supply)}.run-state.warn{color:var(--power)}.run-state.bad{color:var(--alert)}.run-state.big{margin:0;font-size:17px}.belt-hit{fill:none;stroke:#0000;stroke-width:22px;pointer-events:stroke;cursor:pointer}.belt-edge.stopped,.pipe-edge.stopped{opacity:.55}.edge-label.manual.bad{border-color:var(--alert)}.edge-tier.full{outline:2px solid var(--alert);outline-offset:1px}.edge-warn{font:700 13px var(--font-display);color:var(--alert)}.edge-mixed{color:var(--dim);white-space:normal;max-width:260px;font-size:12px}.model-toolbar{z-index:6;pointer-events:none;zoom:var(--ui-scale,1);flex-wrap:wrap;align-items:center;gap:10px 14px;display:flex;position:absolute;top:34px;left:18px;right:440px}.model-toolbar>*{pointer-events:auto}.model-toolbar .segmented{background:#1a1a1a}.tool-group{border:1px solid var(--button-edge);border-radius:var(--radius);display:flex;overflow:hidden;box-shadow:0 2px 6px #0000004d}.tool-button{background:linear-gradient(180deg, var(--button-top), var(--button-bottom));width:42px;height:40px;color:var(--paper);cursor:pointer;border:0;place-items:center;padding:0;display:grid;box-shadow:inset 0 1px #ffffff12}.tool-button+.tool-button{border-left:1px solid var(--button-edge)}.tool-button:hover:not(:disabled){color:var(--ficsit)}.tool-button:disabled{cursor:default}.tool-button:disabled .glyph{opacity:.3}.tool-button[aria-pressed=false]{color:var(--dim)}.open-outputs{align-items:center;gap:8px;display:flex}.tool-label{font:600 12px var(--font-display);letter-spacing:.08em;text-transform:uppercase;color:var(--faint);white-space:nowrap;text-shadow:0 1px 2px #000c}.model-toolbar .run-state{white-space:normal;background:#151516;padding:4px 10px}.inspector-actions{flex-wrap:wrap;justify-content:space-between;gap:10px;display:flex}.inspector-stats small{color:var(--dim)}.mk-pick button:disabled{opacity:.4}@media (max-width:900px){.model-toolbar{gap:6px;top:42px;left:8px;right:8px}.open-outputs{display:none}}.speed-buttons{flex-wrap:wrap;gap:8px;margin-top:10px;display:flex}.speed-buttons.small{flex-wrap:nowrap;gap:4px;margin:0 0 0 auto}.speed-buttons.small .floor-button{min-height:0;font:600 13px / 1.4 var(--font-body);white-space:nowrap;padding:1px 7px}.run-with-auto{align-items:center;gap:8px;min-width:0;display:flex}.auto-tag{border:1px solid var(--line-2);color:var(--dim);font:600 12px / 1.5 var(--font-body);letter-spacing:.04em;text-transform:uppercase;flex:none;padding:0 6px}.react-flow__handle.port .port-spare{background:var(--raised);border:1px dashed var(--line-2);color:var(--paper);font:700 14px var(--font-display);white-space:nowrap;pointer-events:none;padding:1px 6px;position:absolute;top:50%;left:calc(100% + 6px);translate:0 -50%}.react-flow__handle.port.down .port-spare{top:calc(100% + 6px);left:50%;translate:-50%}.port-spare small{color:var(--dim);margin-left:2px;font-size:11px}.count-row{flex-wrap:wrap;align-items:center;gap:10px 16px;display:flex}.check.auto-count{font:600 16px var(--font-body);cursor:pointer;align-items:center;gap:8px;display:inline-flex}.built-check{background:var(--bg);border:1px solid var(--line-2);font:600 16px var(--font-body);cursor:pointer;align-items:center;gap:10px;padding:8px 14px 8px 10px;display:inline-flex}.built-check:hover{border-color:var(--paper)}.built-check.on{border-color:var(--supply);color:var(--supply)}.app .built-check input[type=checkbox]:checked{background:var(--supply);border-color:var(--supply)}.inspector-actions{align-items:center}.react-flow__handle.port.free{border-color:var(--line)}.react-flow__handle.port.clickconnecting{border-color:var(--ficsit);box-shadow:0 0 0 3px color-mix(in srgb, var(--ficsit) 50%, transparent)}.quick-head{flex-wrap:wrap;justify-content:space-between;align-items:baseline;gap:8px 24px;display:flex}.floor-button.open-ends{color:var(--power);border-color:color-mix(in srgb, var(--power) 60%, transparent)}.floor-button.add-part{color:var(--paper);align-items:center;gap:6px;display:inline-flex}.floor-button.add-part .add-plus{font-size:22px}.floor-empty{z-index:4;pointer-events:none;place-items:center;display:grid;position:absolute;inset:0}.floor-empty>*{pointer-events:auto}.floor-strip{z-index:7;background:var(--panel);border:1px solid var(--line-2);border-left:4px solid var(--ficsit);border-radius:var(--radius);width:max-content;max-width:min(640px,100% - 24px);font:600 15px / 1.25 var(--font-body);align-items:center;gap:12px;padding:6px 6px 6px 10px;display:flex;position:absolute;bottom:78px;left:50%;transform:translate(-50%);box-shadow:0 10px 28px #00000080}.floor-strip .slot{flex:none}.floor-strip-text{min-width:0}.floor-strip-actions{flex:none;gap:4px;display:flex}.floor-strip-actions .text-button{padding:8px 12px}.chooser{z-index:9;background:var(--panel);border:1px solid var(--ficsit);flex-direction:column;width:min(440px,100% - 24px);max-height:min(520px,100% - 24px);display:flex;position:absolute;box-shadow:0 14px 36px #0000008c}.chooser:not(.at){top:50%;left:50%;transform:translate(-50%,-50%)}.chooser-head{border-bottom:1px solid var(--line);flex:none;align-items:center;display:flex}.chooser-head .picker-search{border:0;flex:1;min-width:0}.chooser-head .icon-button{margin-right:6px}.chooser-tabs{border-bottom:1px solid var(--line);scrollbar-width:none;--fade:0px;-webkit-mask-image:linear-gradient(to right, #000 calc(100% - var(--fade) * 2), transparent);mask-image:linear-gradient(to right, #000 calc(100% - var(--fade) * 2), transparent);flex:none;display:flex;overflow-x:auto}@supports (animation-timeline:scroll()){.chooser-tabs{animation:linear both more-below;animation-timeline:scroll(self inline);animation-range:calc(100% - 30px) 100%}}.chooser-tabs button{font:600 15px var(--font-display);color:var(--dim);background:0 0;border:0;flex:none;align-items:center;gap:6px;padding:9px 14px;display:inline-flex}.chooser-tabs button[aria-selected=true]{color:var(--ficsit);box-shadow:inset 0 -3px var(--ficsit)}.chooser-tabs button:disabled{opacity:.4}.chooser-list{overscroll-behavior:contain;flex:1;min-height:0;margin:0;padding:4px 0;list-style:none;overflow-y:auto}.chooser-list li{cursor:pointer;align-items:center;gap:12px;padding:6px 14px;display:flex}.chooser-list li.active{background:var(--raised);box-shadow:inset 4px 0 var(--ficsit)}.chooser-list li.locked{opacity:.55}.chooser-list li.picker-empty{cursor:default}.chooser-blank{flex:none;width:40px;height:40px}.chooser-text{flex-direction:column;gap:2px;min-width:0;display:flex}.chooser-title{font:600 16px var(--font-body);flex-wrap:wrap;align-items:center;gap:4px 8px;display:flex}.chooser-sub{color:var(--dim);flex-wrap:wrap;align-items:center;gap:2px 10px;font-size:13px;display:flex}.chooser-io{align-items:center;gap:2px;display:inline-flex}@media (max-width:600px){.chooser,.chooser.at,.chooser:not(.at){border-width:1px 0 0;width:auto;max-height:72%;inset:auto 0 0;transform:none}.chooser-list li{padding:8px 14px}.chooser-tabs button{padding:9px 8px}.chooser-tabs .tab-badge{margin-left:4px}.floor-strip{font-size:14px;bottom:140px}}.floor-view .react-flow__nodesselection-rect{pointer-events:none;background:0 0;border:0}@media (min-width:901px){.floor-view:has(>.inspector.manual) .floor-controls{right:436px}@container floor (width<=1400px){.floor-view:has(>.inspector.manual) .floor-controls{bottom:76px}}}.floor-io-name{color:inherit;text-align:left;cursor:pointer;background:0 0;border:0;flex-direction:column;align-items:flex-start;gap:2px;padding:0;display:flex}.floor-io-name:hover{color:var(--ficsit)}.floor-io-now{color:var(--power);font:600 14px var(--font-body)}.endpoint-node.manual .endpoint-line{flex-wrap:nowrap;overflow:hidden}.endpoint-node.manual .endpoint-line .run-state{text-overflow:ellipsis;overflow:hidden}.tip{z-index:1000;border:1px solid var(--line-2);border-radius:var(--radius);max-width:min(320px,100vw - 16px);color:var(--paper);font:500 13px / 1.35 var(--font-body);pointer-events:none;background:#151515;align-items:center;gap:8px;padding:6px 10px;animation:.12s ease-out tip-in;display:flex;position:fixed;translate:-50%;box-shadow:0 8px 22px #0000008c}.tip.below{margin-top:8px}.tip.above{margin-top:-8px;translate:-50% -100%}.tip:before{content:"";left:calc(50% + var(--arrow,0px) - 5px);border:1px solid var(--line-2);background:#151515;width:9px;height:9px;position:absolute;rotate:45deg}.tip.below:before{border-width:1px 0 0 1px;top:-6px}.tip.above:before{border-width:0 1px 1px 0;bottom:-6px}.tip kbd{background:var(--raised);border:1px solid var(--line-2);color:var(--dim);font:600 12px var(--font-body);white-space:nowrap;border-radius:3px;padding:1px 6px}@keyframes tip-in{0%{opacity:0}}@media (prefers-reduced-motion:reduce){.tip{animation:none}}.react-flow{--xy-edge-stroke-default:#b1b1b7;--xy-edge-stroke-width-default:1;--xy-edge-stroke-selected-default:#555;--xy-connectionline-stroke-default:#b1b1b7;--xy-connectionline-stroke-width-default:1;--xy-attribution-background-color-default:#ffffff80;--xy-minimap-background-color-default:#fff;--xy-minimap-mask-background-color-default:#f0f0f099;--xy-minimap-mask-stroke-color-default:transparent;--xy-minimap-mask-stroke-width-default:1;--xy-minimap-node-background-color-default:#e2e2e2;--xy-minimap-node-stroke-color-default:transparent;--xy-minimap-node-stroke-width-default:2;--xy-background-color-default:transparent;--xy-background-pattern-dots-color-default:#91919a;--xy-background-pattern-lines-color-default:#eee;--xy-background-pattern-cross-color-default:#e2e2e2;background-color:var(--xy-background-color,var(--xy-background-color-default));--xy-node-border-default:1px solid #bbb;--xy-node-border-selected-default:1px solid #555;--xy-handle-background-color-default:#333;--xy-selection-background-color-default:#9696b41a;--xy-selection-border-default:1px dotted #9b9b9bcc;--xy-resize-background-color-default:#3367d9;direction:ltr}.react-flow.dark{--xy-edge-stroke-default:#3e3e3e;--xy-edge-stroke-width-default:1;--xy-edge-stroke-selected-default:#727272;--xy-connectionline-stroke-default:#b1b1b7;--xy-connectionline-stroke-width-default:1;--xy-attribution-background-color-default:#96969640;--xy-minimap-background-color-default:#141414;--xy-minimap-mask-background-color-default:#3c3c3c99;--xy-minimap-mask-stroke-color-default:transparent;--xy-minimap-mask-stroke-width-default:1;--xy-minimap-node-background-color-default:#2b2b2b;--xy-minimap-node-stroke-color-default:transparent;--xy-minimap-node-stroke-width-default:2;--xy-background-color-default:#141414;--xy-background-pattern-dots-color-default:#555;--xy-background-pattern-lines-color-default:#333;--xy-background-pattern-cross-color-default:#333;--xy-node-color-default:#f8f8f8}.react-flow__background{background-color:var(--xy-background-color-props,var(--xy-background-color,var(--xy-background-color-default)));pointer-events:none;z-index:-1}.react-flow__container{width:100%;height:100%;position:absolute;top:0;left:0}.react-flow__pane{z-index:1;touch-action:none}.react-flow__pane.draggable{cursor:grab}.react-flow__pane.dragging{cursor:grabbing}.react-flow__pane.selection{cursor:pointer}.react-flow__viewport{transform-origin:0 0;z-index:2;pointer-events:none}.react-flow__renderer{z-index:4}.react-flow__selection{z-index:6}.react-flow__nodesselection-rect:focus,.react-flow__nodesselection-rect:focus-visible{outline:none}.react-flow__edge-path{stroke:var(--xy-edge-stroke,var(--xy-edge-stroke-default));stroke-width:var(--xy-edge-stroke-width,var(--xy-edge-stroke-width-default));fill:none}.react-flow__connection-path{stroke:var(--xy-connectionline-stroke,var(--xy-connectionline-stroke-default));stroke-width:var(--xy-connectionline-stroke-width,var(--xy-connectionline-stroke-width-default));fill:none}.react-flow .react-flow__edges{position:absolute}.react-flow .react-flow__edges svg{pointer-events:none;position:absolute;overflow:visible}.react-flow__edge{pointer-events:visibleStroke}.react-flow__edge.selectable{cursor:pointer}.react-flow__edge.animated path{stroke-dasharray:5;animation:.5s linear infinite dashdraw}.react-flow__edge.animated path.react-flow__edge-interaction{stroke-dasharray:none;animation:none}.react-flow__edge.inactive{pointer-events:none}.react-flow__edge.selected,.react-flow__edge:focus,.react-flow__edge:focus-visible{outline:none}.react-flow__edge.selected .react-flow__edge-path,.react-flow__edge.selectable:focus .react-flow__edge-path,.react-flow__edge.selectable:focus-visible .react-flow__edge-path{stroke:var(--xy-edge-stroke-selected,var(--xy-edge-stroke-selected-default))}.react-flow__edge-textwrapper{pointer-events:all}.react-flow__edge .react-flow__edge-text{pointer-events:none;-webkit-user-select:none;user-select:none}.react-flow__arrowhead polyline{stroke:var(--xy-edge-stroke,var(--xy-edge-stroke-default))}.react-flow__arrowhead polyline.arrowclosed{fill:var(--xy-edge-stroke,var(--xy-edge-stroke-default))}.react-flow__connection{pointer-events:none}.react-flow__connection .animated{stroke-dasharray:5;animation:.5s linear infinite dashdraw}svg.react-flow__connectionline{z-index:1001;position:absolute;overflow:visible}.react-flow__nodes{pointer-events:none;transform-origin:0 0}.react-flow__node{-webkit-user-select:none;user-select:none;pointer-events:all;transform-origin:0 0;box-sizing:border-box;cursor:default;position:absolute}.react-flow__node.selectable{cursor:pointer}.react-flow__node.draggable{cursor:grab;pointer-events:all}.react-flow__node.draggable.dragging{cursor:grabbing}.react-flow__nodesselection{z-index:3;transform-origin:0 0;pointer-events:none}.react-flow__nodesselection-rect{pointer-events:all;cursor:grab;position:absolute}.react-flow__handle{pointer-events:none;background-color:var(--xy-handle-background-color,var(--xy-handle-background-color-default));min-width:5px;min-height:5px;position:absolute}.react-flow__handle.connectingfrom{pointer-events:all}.react-flow__handle.connectionindicator{pointer-events:all;cursor:crosshair}.react-flow__handle-bottom{top:auto;bottom:0;left:50%;transform:translate(-50%,50%)}.react-flow__handle-top{top:0;left:50%;transform:translate(-50%,-50%)}.react-flow__handle-left{top:50%;left:0;transform:translate(-50%,-50%)}.react-flow__handle-right{top:50%;right:0;transform:translate(50%,-50%)}.react-flow__edgeupdater{cursor:move;pointer-events:all}.react-flow__pane.selection .react-flow__panel{pointer-events:none}.react-flow__panel{z-index:5;margin:15px;position:absolute}.react-flow__panel.top{top:0}.react-flow__panel.bottom{bottom:0}.react-flow__panel.top.center,.react-flow__panel.bottom.center{left:50%;transform:translate(-15px)translate(-50%)}.react-flow__panel.left{left:0}.react-flow__panel.right{right:0}.react-flow__panel.left.center,.react-flow__panel.right.center{top:50%;transform:translateY(-15px)translateY(-50%)}.react-flow__attribution{background:var(--xy-attribution-background-color,var(--xy-attribution-background-color-default));margin:0;padding:2px 3px;font-size:10px}.react-flow__attribution a{color:#999;text-decoration:none}@keyframes dashdraw{0%{stroke-dashoffset:10px}}.react-flow__edgelabel-renderer{pointer-events:none;-webkit-user-select:none;user-select:none;width:100%;height:100%;position:absolute;top:0;left:0}.react-flow__viewport-portal{-webkit-user-select:none;user-select:none;width:100%;height:100%;position:absolute;top:0;left:0}.react-flow__minimap{background:var(--xy-minimap-background-color-props,var(--xy-minimap-background-color,var(--xy-minimap-background-color-default)))}.react-flow__minimap-svg{display:block}.react-flow__minimap-mask{fill:var(--xy-minimap-mask-background-color-props,var(--xy-minimap-mask-background-color,var(--xy-minimap-mask-background-color-default)));stroke:var(--xy-minimap-mask-stroke-color-props,var(--xy-minimap-mask-stroke-color,var(--xy-minimap-mask-stroke-color-default)));stroke-width:var(--xy-minimap-mask-stroke-width-props,var(--xy-minimap-mask-stroke-width,var(--xy-minimap-mask-stroke-width-default)))}.react-flow__minimap-node{fill:var(--xy-minimap-node-background-color-props,var(--xy-minimap-node-background-color,var(--xy-minimap-node-background-color-default)));stroke:var(--xy-minimap-node-stroke-color-props,var(--xy-minimap-node-stroke-color,var(--xy-minimap-node-stroke-color-default)));stroke-width:var(--xy-minimap-node-stroke-width-props,var(--xy-minimap-node-stroke-width,var(--xy-minimap-node-stroke-width-default)))}.react-flow__background-pattern.dots{fill:var(--xy-background-pattern-color-props,var(--xy-background-pattern-color,var(--xy-background-pattern-dots-color-default)))}.react-flow__background-pattern.lines{stroke:var(--xy-background-pattern-color-props,var(--xy-background-pattern-color,var(--xy-background-pattern-lines-color-default)))}.react-flow__background-pattern.cross{stroke:var(--xy-background-pattern-color-props,var(--xy-background-pattern-color,var(--xy-background-pattern-cross-color-default)))}.react-flow__controls{flex-direction:column;display:flex}.react-flow__controls.horizontal{flex-direction:row}.react-flow__controls-button{justify-content:center;align-items:center;width:26px;height:26px;padding:4px;display:flex}.react-flow__controls-button svg{fill:currentColor;width:100%;max-width:12px;max-height:12px}.react-flow__node-input,.react-flow__node-default,.react-flow__node-output,.react-flow__node-group{border:var(--xy-node-border,var(--xy-node-border-default));color:var(--xy-node-color,var(--xy-node-color-default))}.react-flow__node-input.selected,.react-flow__node-input:focus,.react-flow__node-input:focus-visible,.react-flow__node-default.selected,.react-flow__node-default:focus,.react-flow__node-default:focus-visible,.react-flow__node-output.selected,.react-flow__node-output:focus,.react-flow__node-output:focus-visible,.react-flow__node-group.selected,.react-flow__node-group:focus,.react-flow__node-group:focus-visible{border:var(--xy-node-border-selected,var(--xy-node-border-selected-default));outline:none}.react-flow__nodesselection-rect,.react-flow__selection{background:var(--xy-selection-background-color,var(--xy-selection-background-color-default));border:var(--xy-selection-border,var(--xy-selection-border-default))}.react-flow__resize-control{position:absolute}.react-flow__resize-control.left,.react-flow__resize-control.right{cursor:ew-resize}.react-flow__resize-control.top,.react-flow__resize-control.bottom{cursor:ns-resize}.react-flow__resize-control.top.left,.react-flow__resize-control.bottom.right{cursor:nwse-resize}.react-flow__resize-control.bottom.left,.react-flow__resize-control.top.right{cursor:nesw-resize}.react-flow__resize-control.handle{background-color:var(--xy-resize-background-color,var(--xy-resize-background-color-default));border:1px solid #fff;border-radius:1px;width:5px;height:5px;translate:-50% -50%}.react-flow__resize-control.handle.left{top:50%;left:0}.react-flow__resize-control.handle.right{top:50%;left:100%}.react-flow__resize-control.handle.top{top:0;left:50%}.react-flow__resize-control.handle.bottom{top:100%;left:50%}.react-flow__resize-control.handle.top.left,.react-flow__resize-control.handle.bottom.left{left:0}.react-flow__resize-control.handle.top.right,.react-flow__resize-control.handle.bottom.right{left:100%}.react-flow__resize-control.line{border-color:var(--xy-resize-background-color,var(--xy-resize-background-color-default));border-style:solid;border-width:0}.react-flow__resize-control.line.left,.react-flow__resize-control.line.right{width:1px;height:100%;top:0;transform:translate(-50%)}.react-flow__resize-control.line.left{border-left-width:1px;left:0}.react-flow__resize-control.line.right{border-right-width:1px;left:100%}.react-flow__resize-control.line.top,.react-flow__resize-control.line.bottom{width:100%;height:1px;left:0;transform:translateY(-50%)}.react-flow__resize-control.line.top{border-top-width:1px;top:0}.react-flow__resize-control.line.bottom{border-bottom-width:1px;top:100%}
