:root{font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;color:#eef5ff;background:#07111d;font-synthesis:none}*{box-sizing:border-box}[hidden]{display:none!important}html,body,#app{width:100%;height:100%;margin:0}body{overflow:hidden;background:#07111d}button{font:inherit}.flow-shell{position:relative;width:100%;height:100dvh;overflow:hidden;background:radial-gradient(circle at 15% 20%,rgba(90,181,218,.08),transparent 28%),radial-gradient(circle at 85% 52%,rgba(255,218,120,.055),transparent 26%),#07111d}#flow-canvas{display:block;width:100%;height:100%;touch-action:none}.glass{border:1px solid rgba(190,218,235,.13);background:#07111dc2;box-shadow:0 14px 44px #00000038;backdrop-filter:blur(10px)}.top-hud{position:absolute;top:max(12px,env(safe-area-inset-top));left:14px;right:14px;z-index:6;display:grid;grid-template-columns:minmax(180px,1fr) minmax(300px,470px) minmax(180px,1fr);align-items:start;gap:10px;pointer-events:none}.brand{width:fit-content;min-width:200px;padding:10px 12px;border-radius:16px}.brand small,.brand strong,.brand span{display:block}.brand small{color:#a5d4e9a8;font-size:8px;letter-spacing:.16em}.brand strong{margin-top:2px;color:#edfaff;font-size:15px;letter-spacing:.14em}.brand span{margin-top:2px;color:#e4edf670;font-size:9px;letter-spacing:.12em}.goal{padding:10px 12px;border-radius:16px}.goal--button{width:100%;min-width:0;pointer-events:auto;color:inherit;text-align:left;cursor:pointer}.goal--button:hover,.goal--button:focus-visible{border-color:#ffe6974d;outline:none}.goal--button.is-clear{border-color:#a1f0c757;box-shadow:0 14px 44px #00000038,0 0 24px #78e0ae14}.goal>small b{color:#ffefb1cc;font-weight:700}.goal__row{display:flex;align-items:center;justify-content:space-between;gap:12px}.goal__row span{color:#e1ebf48f;font-size:9px;letter-spacing:.12em}.goal__row strong{color:#fff0af;font-size:13px;font-variant-numeric:tabular-nums}.goal__track{height:6px;margin-top:7px;overflow:hidden;border-radius:999px;background:#bed7e513}.goal__track span{display:block;width:0;height:100%;border-radius:inherit;background:linear-gradient(90deg,#7edcff,#fff0a4);box-shadow:0 0 18px #ffe48c47;transition:width .18s ease-out}.goal>small{display:block;margin-top:6px;color:#dbe7f175;font-size:8px;text-align:center}.metrics{justify-self:end;display:flex;gap:6px}.metric{min-width:82px;padding:8px 10px;border-radius:14px;text-align:center}.rare-resource-strip{position:absolute;top:max(92px,calc(env(safe-area-inset-top) + 80px));right:14px;z-index:7;display:grid;grid-template-columns:repeat(3,minmax(68px,1fr));gap:5px;padding:6px;border-radius:14px;pointer-events:none}.rare-resource{min-width:0;padding:6px 7px;border-radius:10px;background:#ffffff06;text-align:center}.rare-resource small,.rare-resource strong{display:block}.rare-resource small{overflow:hidden;color:#d3e3ed70;font-size:6px;letter-spacing:.06em;text-overflow:ellipsis;white-space:nowrap}.rare-resource strong{margin-top:2px;font-size:11px;font-variant-numeric:tabular-nums}.rare-resource--sap strong{color:#b8efae}.rare-resource--prism strong{color:#c8d0ff}.rare-resource--pollen strong{color:#ffd6a5}.metric small,.metric strong{display:block}.metric small{color:#dae7f16b;font-size:7px;letter-spacing:.12em}.metric strong{margin-top:3px;color:#eff9ff;font-size:14px;font-variant-numeric:tabular-nums}.metric--flow{min-width:104px}.metric--flow em{display:block;margin-top:2px;color:#d3e1ec6b;font-size:7px;font-style:normal;font-variant-numeric:tabular-nums;white-space:nowrap}.metric--flow em.is-up{color:#a9efc3db}.metric--flow em.is-down{color:#ffbbb2d1}.metric--flow em.is-flat{color:#dbe4ee94}.flow-guide{position:absolute;top:50%;left:14px;z-index:5;width:min(250px,28vw);transform:translateY(-50%);padding:11px 12px;border-radius:16px;pointer-events:none}.flow-guide small,.flow-guide strong{display:block}.flow-guide>small{color:#95d8f1a3;font-size:7px;letter-spacing:.16em}.flow-guide>strong{margin-top:5px;color:#f1f7fb;font-size:11px;line-height:1.5}.condition-status{display:grid;grid-template-columns:auto 1fr;gap:2px 8px;align-items:baseline;margin-top:9px;padding:7px 8px;border:1px solid rgba(164,205,228,.08);border-radius:10px;background:#ffffff06}.condition-status small,.condition-status strong,.condition-status span{display:block}.condition-status small{color:#a9dcf19e;font-size:6px;letter-spacing:.1em}.condition-status strong{justify-self:end;color:#f1f8fcd1;font-size:7px;font-variant-numeric:tabular-nums}.condition-status span{grid-column:1 / -1;color:#d4e2eb75;font-size:7px;line-height:1.4}.condition-status.is-tidal-supply{border-color:#76c9ee21}.condition-status.is-alternating-springs{border-color:#97b5ff21}.condition-status.is-heart-demand,.condition-status.is-grand-cycle{border-color:#ffda8f26;background:#ffd06908}.connection-status{display:flex;gap:6px;margin-top:9px}.connection-status span{padding:4px 6px;border-radius:999px;color:#d5e5ee7a;background:#ffffff09;font-size:7px}.connection-status b{color:#dff6ff}.map-controls{position:absolute;right:14px;bottom:max(154px,calc(env(safe-area-inset-bottom) + 144px));z-index:8;display:grid;grid-template-columns:32px 56px 32px 32px;align-items:center;gap:5px;padding:6px;border-radius:14px;pointer-events:auto}.map-controls button{display:grid;place-items:center;min-width:0;height:30px;padding:0;border:1px solid rgba(173,214,232,.13);border-radius:9px;color:#e7f4fad1;background:#ffffff09;cursor:pointer}.map-controls button:hover,.map-controls button:focus-visible{border-color:#99ddf559;background:#6dc2de17;outline:none}.map-controls strong{color:#fff1b8e6;font-size:9px;text-align:center;font-variant-numeric:tabular-nums}.map-controls small{grid-column:1 / -1;color:#cddfea6b;font-size:6px;letter-spacing:.08em;text-align:center}.flow-legend{position:absolute;top:50%;right:14px;z-index:5;width:248px;transform:translateY(-50%);padding:10px 11px;border-radius:15px;pointer-events:none}.flow-legend span{display:inline-flex;align-items:center;gap:5px;margin-right:8px;color:#e3edf5a8;font-size:8px}.flow-legend small{display:block;margin-top:7px;color:#d3e1eb6b;font-size:8px;line-height:1.5}.dot{display:inline-block;width:7px;height:7px;border-radius:50%}.dot--lumen{background:#c9f3ff;box-shadow:0 0 8px #70d1ffb8}.dot--bloom{background:#fff0a6;box-shadow:0 0 8px #ffdd78b8}.dot--wild{background:#8ce7bd;box-shadow:0 0 8px #69e1ac94}.dot--sap{background:#a6e59c;box-shadow:0 0 8px #77d87185}.dot--prism{background:#b8c2ff;box-shadow:0 0 8px #8597ff85}.dot--pollen{background:#ffd0a0;box-shadow:0 0 8px #ffb36c80}.dot--fertile{background:#9fe1a4;box-shadow:0 0 7px #76d48675}.dot--flow-field{background:#8fd2f5;box-shadow:0 0 7px #66bcec75}.dot--thicket{background:#aa8066;box-shadow:0 0 7px #a776535c}.build-toolbar{position:absolute;left:50%;bottom:max(86px,calc(env(safe-area-inset-bottom) + 78px));z-index:14;width:min(900px,calc(100vw - 24px));max-height:min(68dvh,620px);overflow-y:auto;transform:translate(-50%);padding:12px;border-radius:20px;overscroll-behavior:contain}.build-toolbar__header,.menu-sheet__header{display:flex;align-items:center;justify-content:space-between;gap:12px}.build-toolbar__header small,.build-toolbar__header strong,.menu-sheet__header small,.menu-sheet__header strong{display:block}.build-toolbar__header small,.menu-sheet__header small{color:#9fdaefa8;font-size:7px;letter-spacing:.16em}.build-toolbar__header strong,.menu-sheet__header strong{margin-top:2px;color:#effaff;font-size:14px}.build-toolbar__header button,.menu-sheet__header button{display:grid;place-items:center;flex:0 0 40px;width:40px;height:40px;border:1px solid rgba(190,216,230,.14);border-radius:50%;color:#ebf6fcd1;background:#ffffff0a;cursor:pointer}.build-toolbar__header button:hover,.build-toolbar__header button:focus-visible,.menu-sheet__header button:hover,.menu-sheet__header button:focus-visible{border-color:#99ddf557;background:#6dc2de14;outline:none}.build-toolbar__intro{margin:9px 0 10px;color:#d7e6ef8f;font-size:9px;line-height:1.5}.build-toolbar__grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}.build-category-label{grid-column:1 / -1;display:flex;align-items:baseline;justify-content:space-between;gap:10px;margin-top:4px;padding:8px 2px 3px;border-top:1px solid rgba(190,216,230,.08)}.build-category-label:first-child{margin-top:0;padding-top:2px;border-top:0}.build-category-label strong{color:#f1f9fce0;font-size:10px}.build-category-label span{color:#c3d8e46b;font-size:7px;text-align:right}.build-button{position:relative;display:flex;align-items:center;gap:9px;min-width:0;min-height:66px;padding:9px 10px;border:1px solid rgba(189,215,230,.1);border-radius:13px;color:#e6eff5bd;background:#ffffff06;text-align:left;transition:border-color .12s ease,background .12s ease,transform .12s ease,opacity .12s ease}.build-button:not(:disabled):hover,.build-button:not(:disabled):focus-visible{border-color:#99ddf557;background:#6dc2de12;transform:translateY(-1px);outline:none}.build-button.is-active{border-color:#9be4f77a;color:#effcff;background:#6fc6e01a;box-shadow:inset 0 0 18px #63c0dc0e}.build-button:disabled{opacity:.38;cursor:not-allowed}.build-button.is-locked{opacity:.42}.build-button.is-locked:after{content:attr(data-lock-label);position:absolute;top:5px;right:5px;padding:2px 4px;border:1px solid rgba(255,227,151,.15);border-radius:999px;color:#ffe9a9b3;background:#0c141fdb;font-size:6px;font-weight:800;letter-spacing:.06em}.build-button i{display:grid;place-items:center;flex:0 0 28px;width:28px;height:28px;border-radius:50%;color:#c9f4ff;background:#68c3e014;font-size:15px;font-style:normal}.build-button span,.build-button strong,.build-button small{display:block;min-width:0}.build-button strong{color:inherit;font-size:10px;line-height:1.25}.build-button small{margin-top:4px;color:#d6e3ec85;font-size:8px;line-height:1.4}.build-button small b{color:#fff0af}.build-button--gather{border-color:#ffe29624}.build-button--gather i{color:#fff0ae;background:#d6a74617}.build-button--gather.is-active{border-color:#ffe59b7a;color:#fff6ce;background:#ca9d431a;box-shadow:inset 0 0 18px #ffe28f0d}.build-button--relay i{color:#cfd6ff;background:#6f7edc1f}.build-button--merger i{color:#c8f3ff;background:#5bb5d617}.build-button--resonator i{color:#edc7ff;background:#b168db1f}.build-button--splitter i{color:#ffe6a3;background:#cfa44b17}.build-button--move{border-color:#a0dcf71f}.build-button--move i{color:#d4f5ff;background:#68bee017}.build-button--move.is-active{border-color:#b4ebff80;color:#effbff;background:#65bfde1a;box-shadow:inset 0 0 18px #84d7f30d}.build-button--priority{border-color:#ffe2961c}.build-button--priority i{color:#ffe59b;background:#c59b4114}.build-button--priority.is-active{border-color:#ffe9a485;color:#fff4c2;background:#c697371a;box-shadow:inset 0 0 18px #ffe1890d}.build-button--remove i{color:#ffc3ca;background:#c5536514}.control-menu-bar{position:absolute;left:50%;bottom:max(10px,env(safe-area-inset-bottom));z-index:15;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:6px;width:min(420px,calc(100vw - 24px));transform:translate(-50%);padding:6px;border-radius:20px;pointer-events:auto}.control-menu-button{display:grid;grid-template-columns:36px minmax(0,1fr);grid-template-rows:auto auto;gap:1px 8px;align-items:center;min-height:58px;padding:8px 11px;border:1px solid rgba(190,216,230,.1);border-radius:14px;color:#ebf5fad1;background:#ffffff06;text-align:left;cursor:pointer;touch-action:manipulation}.control-menu-button>span{display:grid;grid-row:1 / 3;place-items:center;width:36px;height:36px;border-radius:50%;color:#c9f4ff;background:#68c3e017;font-size:18px}.control-menu-button strong,.control-menu-button small{display:block;min-width:0}.control-menu-button strong{font-size:11px}.control-menu-button small{overflow:hidden;color:#d5e6ef80;font-size:8px;text-overflow:ellipsis;white-space:nowrap}.control-menu-button:hover,.control-menu-button:focus-visible,.control-menu-button.is-open{border-color:#99ddf55c;background:#6dc2de14;outline:none}.control-menu-button.is-active>span,.control-menu-button.is-open>span{color:#effcff;background:#68c3e029}.menu-sheet{box-shadow:0 20px 56px #00000057,0 0 0 1px #aedaec08}.research-toggle{position:absolute;top:50%;right:14px;z-index:7;display:grid;grid-template-columns:auto 1fr;gap:2px 8px;align-items:center;width:190px;transform:translateY(-145%);padding:9px 11px;border-radius:15px;color:#eaf8ff;text-align:left}.research-toggle>span{grid-row:1 / 3;color:#b9ebff;font-size:20px}.research-toggle strong,.research-toggle small{display:block}.research-toggle strong{font-size:10px}.research-toggle small{color:#d5e6ef73;font-size:7px}.flow-lens-toggle{position:absolute;top:calc(50% + 72px);right:14px;z-index:7;display:grid;grid-template-columns:auto 1fr;gap:2px 8px;align-items:center;width:190px;padding:9px 11px;border-radius:15px;color:#eaf8ff;text-align:left}.flow-lens-toggle>span{grid-row:1 / 3;color:#b9ebff;font-size:20px}.flow-lens-toggle strong,.flow-lens-toggle small{display:block}.flow-lens-toggle strong{font-size:10px}.flow-lens-toggle small{color:#d5e6ef73;font-size:7px;line-height:1.35}.flow-lens-toggle.is-active{border-color:#96ebca6b;background:#4da3871a;box-shadow:0 0 22px #66daaf14}.flow-lens-toggle.is-active>span{color:#a4f0cc}.research-toggle:disabled,.flow-lens-toggle:disabled{opacity:.46;cursor:not-allowed}.journey-panel{position:absolute;top:92px;left:50%;z-index:13;width:min(520px,calc(100vw - 28px));max-height:calc(100dvh - 190px);overflow-y:auto;transform:translate(-50%);padding:14px;border-radius:18px}.journey-panel__header{display:flex;align-items:center;justify-content:space-between;gap:12px}.journey-panel__header small,.journey-panel__header strong{display:block}.journey-panel__header small{color:#ffdd8bad;font-size:7px;letter-spacing:.14em}.journey-panel__header strong{margin-top:3px;color:#f3f9fc;font-size:14px}.journey-panel__header button{width:28px;height:28px;border:1px solid rgba(190,216,230,.12);border-radius:50%;color:#e3eff6b3;background:#ffffff08}.journey-panel>p{margin:10px 0;color:#d8e6ef8a;font-size:9px;line-height:1.55}.journey-condition{display:grid;gap:3px;margin-bottom:9px;padding:8px 9px;border:1px solid rgba(255,223,143,.1);border-radius:11px;background:#ffd87306}.journey-condition small{color:#ffde8b85;font-size:6px;letter-spacing:.12em}.journey-condition strong{color:#f8f2d5db;font-size:9px}.journey-condition span{color:#d7e2e97a;font-size:8px;line-height:1.45}.journey-requirements{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:5px}.journey-requirements span{display:flex;justify-content:space-between;gap:8px;min-width:0;padding:7px 8px;border-radius:10px;color:#e7eff4a8;background:#ffffff07;font-size:8px}.journey-requirements span.is-complete{color:#a6eec4d1;background:#60b98b0e}.journey-requirements span.is-challenge{border:1px solid rgba(224,184,255,.13);color:#ecdcf8c7;background:#ab6fda0b}.journey-requirements span.is-challenge.is-complete{border-color:#93e7bc21;color:#a6eec4db;background:#60b98b0f}.journey-requirements b{flex:0 0 auto;color:#ffeba7c7;font-variant-numeric:tabular-nums}.journey-reward{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-top:8px;padding:8px 9px;border:1px solid rgba(255,226,146,.1);border-radius:11px;background:#ffd97609}.journey-reward small{color:#ffe09080;font-size:6px;letter-spacing:.12em}.journey-reward strong{color:#ffefb9db;font-size:8px;text-align:right}.journey-list{display:grid;gap:4px;margin-top:10px}.journey-chapter{display:grid;grid-template-columns:24px minmax(0,1fr) auto;gap:8px;align-items:center;padding:7px 8px;border:1px solid rgba(190,216,230,.07);border-radius:10px;background:#ffffff05}.journey-chapter>b{display:grid;place-items:center;width:24px;height:24px;border-radius:50%;color:#dce8f08a;background:#ffffff09;font-size:8px}.journey-chapter span,.journey-chapter strong,.journey-chapter small{display:block;min-width:0}.journey-chapter strong{color:#ebf3f8b8;font-size:9px}.journey-chapter small{margin-top:2px;color:#c7dae561;font-size:7px}.journey-chapter em{color:#d2e1ea5c;font-size:7px;font-style:normal;font-variant-numeric:tabular-nums}.journey-chapter.is-current{border-color:#ffe29233;background:#ffdc820b}.journey-chapter.is-current>b,.journey-chapter.is-current em{color:#ffeaa7d6}.journey-chapter.is-complete{opacity:.72}.journey-chapter.is-complete>b,.journey-chapter.is-complete em{color:#9deabec7}.journey-chapter.is-locked{opacity:.44}.journey-panel__note{display:block;margin-top:9px;color:#bed3e057;font-size:7px;text-align:center}.bottleneck-panel{position:absolute;top:calc(50% + 126px);right:14px;z-index:8;width:190px;padding:10px;border-radius:15px}.bottleneck-panel__header small,.bottleneck-panel__header strong{display:block}.bottleneck-panel__header small{color:#ffdd8b8f;font-size:6px;letter-spacing:.15em}.bottleneck-panel__header strong{margin-top:2px;color:#f4f9fcdb;font-size:9px}.bottleneck-list{display:grid;gap:5px;margin-top:7px}.bottleneck-item{display:grid;grid-template-columns:20px minmax(0,1fr) auto;gap:6px;align-items:center;width:100%;min-width:0;padding:6px 7px;border:1px solid rgba(190,216,230,.09);border-radius:10px;color:#edf8fc;background:#ffffff06;text-align:left}.bottleneck-item:hover,.bottleneck-item:focus-visible{border-color:#ffe29447;background:#ffdd8b0e;outline:none}.bottleneck-item>b{display:grid;place-items:center;width:20px;height:20px;border-radius:50%;color:#e6eff5ad;background:#ffffff0b;font-size:8px}.bottleneck-item>span,.bottleneck-item strong,.bottleneck-item small{display:block;min-width:0}.bottleneck-item strong{overflow:hidden;color:#f0f8fce6;font-size:8px;text-overflow:ellipsis;white-space:nowrap}.bottleneck-item small{margin-top:2px;overflow:hidden;color:#cfdee875;font-size:6px;font-variant-numeric:tabular-nums;text-overflow:ellipsis;white-space:nowrap}.bottleneck-item>em{color:#ffeaabad;font-size:13px;font-style:normal}.bottleneck-item.is-blocked{border-color:#ff8b9d2e}.bottleneck-item.is-starved{border-color:#becfde24}.bottleneck-item.is-buffering{border-color:#ffde9126}.bottleneck-panel__note{display:block;margin-top:6px;color:#cbdce757;font-size:6px;text-align:center}.facility-inspector{position:absolute;top:92px;left:14px;z-index:11;width:min(300px,calc(100vw - 28px));padding:12px;border-radius:17px;pointer-events:auto}.facility-inspector__header{display:flex;align-items:center;justify-content:space-between;gap:10px}.facility-inspector__header small,.facility-inspector__header strong{display:block}.facility-inspector__header small{color:#9fdaef94;font-size:7px;letter-spacing:.16em}.facility-inspector__header strong{margin-top:2px;color:#f0faff;font-size:13px}.facility-inspector__header button{width:27px;height:27px;border:1px solid rgba(190,216,230,.12);border-radius:50%;color:#e3eff6b3;background:#ffffff08}.facility-inspector__status{display:flex;align-items:center;gap:8px;margin-top:9px;padding:7px 8px;border-radius:10px;background:#ffffff06}.facility-inspector__status b{flex:0 0 auto;color:#dff7ff;font-size:8px;letter-spacing:.08em}.facility-inspector__status span{min-width:0;color:#dce8f08f;font-size:8px;line-height:1.35}.facility-inspector.is-blocked .facility-inspector__status b{color:#ff9bad}.facility-inspector.is-starved .facility-inspector__status b{color:#c7d6e3}.facility-inspector.is-buffering .facility-inspector__status b{color:#ffe098}.facility-inspector.is-flowing .facility-inspector__status b{color:#9aebc9}.facility-inspector__metrics{display:grid;grid-template-columns:repeat(4,1fr);gap:5px;margin-top:7px}.facility-inspector__metrics>div{min-width:0;padding:7px 5px;border-radius:9px;background:#ffffff06;text-align:center}.facility-inspector__metrics small,.facility-inspector__metrics strong{display:block}.facility-inspector__metrics small{color:#cfe0ea66;font-size:6px;letter-spacing:.06em;white-space:nowrap}.facility-inspector__metrics strong{margin-top:3px;color:#edf8fc;font-size:10px;font-variant-numeric:tabular-nums;white-space:nowrap}.facility-inspector__meta{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:5px;margin-top:6px;color:#cddee86b;font-size:7px}.facility-inspector__meta span{min-width:0;padding:5px 6px;border-radius:8px;background:#ffffff06;text-align:center}.facility-inspector__meta b{display:block;margin-top:2px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.facility-inspector__meta b{color:#ffeba6d1;font-weight:700}#inspector-terrain{color:#a6def8d6}.facility-modules{margin-top:8px;padding-top:8px;border-top:1px solid rgba(190,216,230,.08)}.facility-modules.is-locked{opacity:.48}.facility-modules__header{display:flex;align-items:center;justify-content:space-between;gap:8px}.facility-modules__header small{color:#cbb7ff94;font-size:6px;letter-spacing:.13em}.facility-modules__header strong{color:#edddffdb;font-size:8px}.facility-module-options{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:5px;margin-top:6px}.facility-module-option{min-width:0;padding:7px 8px;border:1px solid rgba(207,184,246,.11);border-radius:10px;color:#edf4f8c2;background:#b174db08;text-align:left}.facility-module-option:not(:disabled):hover,.facility-module-option:not(:disabled):focus-visible{border-color:#dab3ff4d;background:#b36fde12;outline:none}.facility-module-option:disabled{opacity:.44}.facility-module-option.is-active{border-color:#a4e8c938;background:#61bd8f0e;opacity:1}.facility-module-option span,.facility-module-option strong,.facility-module-option small,.facility-module-option em{display:block;min-width:0}.facility-module-option strong{color:#f4eefce0;font-size:8px}.facility-module-option small{margin-top:2px;color:#d3dfe873;font-size:7px;line-height:1.35}.facility-module-option em{margin-top:5px;color:#ffe299ad;font-size:7px;font-style:normal}.facility-module-option.is-active em{color:#9febc2d1}.facility-synergy-status{display:flex;align-items:center;justify-content:space-between;gap:8px;margin-top:6px;padding:6px 7px;border:1px solid rgba(196,183,255,.08);border-radius:9px;background:#9379cc06}.facility-synergy-status b{flex:0 0 auto;color:#d5c5f47a;font-size:6px;letter-spacing:.1em}.facility-synergy-status span{min-width:0;color:#cddce56b;font-size:6px;line-height:1.35;text-align:right}.facility-synergy-status.is-active{border-color:#ffe29133;background:#ffda750a}.facility-synergy-status.is-active b{color:#ffe28fd1}.facility-synergy-status.is-active span{color:#e5efe1b8}#facility-module-note{display:block;margin-top:5px;color:#ccd9e257;font-size:6px}.facility-inspector__advice{margin-top:8px;padding-top:8px;border-top:1px solid rgba(190,216,230,.08)}.facility-inspector__advice small,.facility-inspector__advice strong{display:block}.facility-inspector__advice small{color:#ffde8b94;font-size:6px;letter-spacing:.14em}.facility-inspector__advice strong{margin-top:3px;color:#eef6fac2;font-size:8px;font-weight:600;line-height:1.45}.research-panel{position:absolute;left:50%;bottom:max(86px,calc(env(safe-area-inset-bottom) + 78px));z-index:14;width:min(920px,calc(100vw - 24px));max-height:min(68dvh,620px);overflow-y:auto;transform:translate(-50%);padding:14px;border-radius:20px;overscroll-behavior:contain}.research-panel__header{display:flex;align-items:center;justify-content:space-between;gap:12px}.research-panel__header small,.research-panel__header strong{display:block}.research-panel__header small{color:#9fdaefa8;font-size:7px;letter-spacing:.16em}.research-panel__header strong{margin-top:2px;color:#effaff;font-size:13px}.research-panel__header button{width:28px;height:28px;border:1px solid rgba(190,216,230,.12);border-radius:50%;color:#e3eff6b3;background:#ffffff08}.research-panel>p{margin:10px 0 12px;color:#d7e6ef85;font-size:9px;line-height:1.55}.research-tree{display:grid;justify-items:center;margin-top:4px}.research-tree__root{display:flex;align-items:center;gap:10px;min-width:210px;padding:10px 14px;border:1px solid rgba(255,227,151,.24);border-radius:15px;background:#ffd7700e;box-shadow:0 0 22px #ffdc7e0a}.research-tree__root>span{display:grid;place-items:center;width:34px;height:34px;border-radius:50%;color:#fff0ad;background:#ffdc781a;font-size:17px}.research-tree__root small,.research-tree__root strong,.research-tree__root em{display:block}.research-tree__root small{color:#ffe6a08c;font-size:6px;letter-spacing:.15em}.research-tree__root strong{margin-top:1px;color:#fff6d0;font-size:11px}.research-tree__root em{margin-top:2px;color:#e6e2ce80;font-size:7px;font-style:normal}.research-tree__trunk{width:2px;height:22px;background:linear-gradient(#ffe18f6b,#8ed6ef38)}.research-tree__branches{position:relative;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;width:100%}.research-tree__branches:before{content:"";position:absolute;top:0;left:16.666%;right:16.666%;height:1px;background:#9dd7ec2e}.research-branch{position:relative;display:grid;align-content:start;gap:0;min-width:0;padding-top:18px}.research-branch:before{content:"";position:absolute;top:0;left:50%;width:1px;height:18px;background:#9dd7ec33}.research-branch__header{display:flex;align-items:center;gap:8px;margin-bottom:8px;padding:0 3px}.research-branch__header>span{display:grid;place-items:center;width:28px;height:28px;border-radius:50%;color:#c9f4ff;background:#68c3e014;font-size:13px}.research-branch__header strong,.research-branch__header small{display:block}.research-branch__header strong{color:#f1f9fce6;font-size:10px}.research-branch__header small{margin-top:2px;color:#c5d8e473;font-size:7px}.research-node{width:100%;min-height:112px}.research-node__copy{min-width:0}.research-level-pips{display:flex!important;gap:4px;margin-top:8px}.research-level-pips i{display:block;width:18px;height:4px;border-radius:999px;background:#bed8e61a;transition:background .12s ease,box-shadow .12s ease}.research-level-pips i.is-filled{background:#91e0f8c7;box-shadow:0 0 8px #74d2f02e}.research-node.is-advanced .research-level-pips i.is-filled{background:#dcb2ffc7;box-shadow:0 0 8px #c58bf02e}.research-node.is-capstone .research-level-pips i.is-filled{background:#ffe089db;box-shadow:0 0 10px #ffd56933}.research-node.is-owned{border-color:#96e2f738}.research-node.is-maxed{box-shadow:inset 0 0 22px #76d3ed0b}.research-node.is-prerequisite-locked{opacity:.42}.research-connector{display:grid;justify-items:center;gap:3px;min-height:42px;padding:4px 0}.research-connector>span{width:2px;height:21px;border-radius:999px;background:#a4c5d621;transition:background .12s ease,box-shadow .12s ease}.research-connector small{padding:2px 6px;border:1px solid rgba(190,216,230,.09);border-radius:999px;color:#c6d7e266;background:#08121eb8;font-size:6px;white-space:nowrap}.research-connector.is-active>span{background:#97e2f794;box-shadow:0 0 10px #73d3f029}.research-connector.is-active small{border-color:#99ddf538;color:#bce7f5b8}.research-connector--capstone>span{background:#ffda821f}.research-connector--capstone small{border-color:#ffde911c;color:#e6d6ae7a}.research-connector--capstone.is-active>span{background:#ffdd89a3;box-shadow:0 0 12px #ffd3692e}.research-connector--capstone.is-active small{border-color:#ffe19142;color:#ffeab1c7}.research-list{display:grid;gap:14px}.research-group{display:grid;gap:7px}.research-group__header{display:flex;align-items:baseline;justify-content:space-between;gap:10px;padding:3px 2px 2px}.research-group__header strong{color:#f1f9fce6;font-size:10px}.research-group__header span{color:#c4d7e470;font-size:7px;text-align:right}.research-group+.research-group{padding-top:12px;border-top:1px solid rgba(190,216,230,.09)}.research-item{display:flex;align-items:center;justify-content:space-between;gap:12px;min-height:76px;padding:11px 12px;border:1px solid rgba(190,216,230,.11);border-radius:13px;color:#edf8fc;background:#ffffff07;text-align:left;transition:border-color .12s ease,background .12s ease,transform .12s ease}.research-item:not(:disabled):hover,.research-item:not(:disabled):focus-visible{transform:translateY(-1px);border-color:#98def55c;background:#67bfdd11;outline:none}.research-item:disabled{opacity:.48}.research-item.is-advanced{border-color:#dab5ff1f;background:#ab68dc07}.research-item.is-advanced:not(:disabled):hover,.research-item.is-advanced:not(:disabled):focus-visible{border-color:#deb8ff57;background:#b16ddc11}.research-item.is-capstone{border-color:#ffde912e;background:linear-gradient(135deg,#ffde910b,#b280ff09);box-shadow:inset 0 0 24px #ffde9106}.research-item.is-capstone:not(:disabled):hover,.research-item.is-capstone:not(:disabled):focus-visible{border-color:#ffe2976b;background:linear-gradient(135deg,#ffde9114,#b280ff0f)}.research-item.is-locked{opacity:.34}.research-item .research-tier{margin:0 0 3px;color:#acd7eb7a;font-size:6px;font-weight:800;letter-spacing:.13em}.research-item.is-advanced .research-tier{color:#e0bcff94}.research-item.is-capstone .research-tier{color:#ffe297c7}.research-item span,.research-item strong,.research-item small{display:block;min-width:0}.research-item strong{color:#eefaff;font-size:10px}.research-item small{margin-top:4px;color:#d3e4ee7a;font-size:8px;line-height:1.45}.research-item em{flex:0 0 auto;color:#fff0ae;font-size:8px;font-style:normal;white-space:nowrap}.research-save-note{display:block;margin-top:11px;color:#afd3e36b;font-size:7px;letter-spacing:.08em;text-align:center}.research-panel__header button{width:40px;height:40px}.research-panel>p{max-width:48ch}.build-toolbar,.research-panel,.journey-panel,.facility-inspector,.bottleneck-panel{scrollbar-color:rgba(215,172,86,.56) rgba(8,15,23,.66);scrollbar-width:thin}.build-toolbar::-webkit-scrollbar,.research-panel::-webkit-scrollbar,.journey-panel::-webkit-scrollbar,.facility-inspector::-webkit-scrollbar,.bottleneck-panel::-webkit-scrollbar{width:8px}.build-toolbar::-webkit-scrollbar-track,.research-panel::-webkit-scrollbar-track,.journey-panel::-webkit-scrollbar-track,.facility-inspector::-webkit-scrollbar-track,.bottleneck-panel::-webkit-scrollbar-track{background:#070e16d1}.build-toolbar::-webkit-scrollbar-thumb,.research-panel::-webkit-scrollbar-thumb,.journey-panel::-webkit-scrollbar-thumb,.facility-inspector::-webkit-scrollbar-thumb,.bottleneck-panel::-webkit-scrollbar-thumb{border:2px solid rgba(7,14,22,.82);border-radius:999px;background:linear-gradient(#b78c43,#e0bd70)}@media(max-width:820px){.top-hud{top:max(7px,env(safe-area-inset-top));left:8px;right:8px;grid-template-columns:1fr auto;gap:6px}.brand{min-width:0;padding:8px 9px}.brand span{display:none}.goal{grid-column:1 / -1;grid-row:2;padding:7px 9px}.metrics{grid-column:2;grid-row:1}.metric{min-width:58px;padding:7px 6px}.rare-resource-strip{top:112px;right:8px;grid-template-columns:repeat(3,minmax(58px,1fr));padding:5px}.rare-resource{padding:5px 6px}.flow-guide{top:auto;left:8px;bottom:max(88px,calc(env(safe-area-inset-bottom) + 78px));width:min(290px,calc(100vw - 16px));transform:none;padding:9px 10px}.flow-legend{display:none}.map-controls{inset:112px auto auto 8px;grid-template-columns:28px 46px 28px 28px;gap:4px;padding:5px}.map-controls button{height:27px}.map-controls small{display:none}.map-controls #map-frontier-status{display:block;grid-column:1 / -1;font-size:5px;letter-spacing:.05em}.flow-lens-toggle{top:auto;left:8px;right:auto;bottom:max(132px,calc(env(safe-area-inset-bottom) + 122px));width:128px;padding:8px 9px}.flow-lens-toggle>span{display:none}.research-panel,.build-toolbar{left:50%;right:auto;bottom:max(82px,calc(env(safe-area-inset-bottom) + 74px));width:calc(100vw - 16px);max-height:calc(100dvh - 170px);transform:translate(-50%)}.research-tree{justify-items:stretch}.research-tree__root{justify-self:center;width:min(280px,100%)}.research-tree__trunk{justify-self:center;height:18px}.research-tree__branches{grid-template-columns:1fr;gap:14px}.research-tree__branches:before{display:none}.research-branch{padding-top:0}.research-branch:before{display:none}.research-branch+.research-branch{padding-top:14px;border-top:1px solid rgba(190,216,230,.08)}.research-node{min-height:94px}.build-toolbar__grid{grid-template-columns:repeat(2,minmax(0,1fr))}.build-category-label{padding-left:1px;padding-right:1px}.research-group__header{align-items:flex-start;flex-direction:column;gap:2px}.research-group__header span{text-align:left}.control-menu-bar{bottom:max(8px,env(safe-area-inset-bottom));width:calc(100vw - 16px)}.control-menu-button{min-height:58px}.journey-panel{top:112px;width:calc(100vw - 16px);max-height:calc(100dvh - 210px);padding:11px}.journey-requirements{grid-template-columns:1fr}.bottleneck-panel{top:112px;right:8px;width:min(230px,calc(100vw - 16px));padding:8px}.facility-inspector{top:112px;left:8px;width:min(330px,calc(100vw - 16px));padding:10px}.facility-inspector__metrics{gap:4px}.facility-inspector__metrics>div{padding:6px 4px}.build-toolbar{padding:10px}.build-toolbar__grid{gap:6px}.build-button{min-height:68px;padding:8px;gap:7px}.build-button i{flex-basis:24px;width:24px;height:24px;font-size:12px}.build-button small{font-size:7px}}@media(max-width:580px){.map-controls{top:104px}.metrics{gap:4px}.metric:nth-child(2){display:none}.rare-resource-strip{top:104px;grid-template-columns:repeat(3,52px)}.rare-resource{padding:5px 4px}.rare-resource small{font-size:5px}.rare-resource strong{font-size:9px}.flow-guide{right:8px;width:auto}.connection-status{display:none}.flow-guide{bottom:max(86px,calc(env(safe-area-inset-bottom) + 76px))}.flow-lens-toggle{bottom:max(82px,calc(env(safe-area-inset-bottom) + 72px))}.build-button{justify-content:center;min-height:48px;text-align:center}.build-button i{display:none}.build-button strong{font-size:8px}.build-button small{margin-top:2px;font-size:6px}.flow-lens-toggle small{display:none}.control-menu-button{grid-template-columns:32px minmax(0,1fr);min-height:56px;padding:7px 9px}.control-menu-button>span{width:32px;height:32px;font-size:16px}.build-toolbar__intro{font-size:8px}.research-item{align-items:flex-start;flex-direction:column;gap:8px}.research-item em{align-self:stretch;padding-top:7px;border-top:1px solid rgba(190,216,230,.08);text-align:right}.research-level-pips i{flex:1 1 0;max-width:28px}.build-category-label{align-items:flex-start;flex-direction:column;gap:2px}.build-category-label span{text-align:left}.research-item{min-height:64px}}@media(max-height:680px){.flow-guide{display:none}.build-toolbar,.research-panel{max-height:calc(100dvh - 150px)}.build-button{min-height:58px}.goal>small{display:none}}@media(prefers-reduced-motion:reduce){.goal__track span,.build-button,.research-item,.research-level-pips i,.research-connector>span,.control-menu-button,.flow-lens-toggle{transition:none}}:root{--sg-ink: #050a12;--sg-night: #07111d;--sg-panel: rgba(7, 14, 25, .88);--sg-panel-deep: rgba(4, 9, 17, .94);--sg-lead: #111821;--sg-lead-soft: rgba(20, 28, 37, .88);--sg-gold: #d8ad58;--sg-gold-bright: #f5da8d;--sg-gold-dim: rgba(205, 161, 77, .44);--sg-cyan: #7ddcf5;--sg-blue: #6797ff;--sg-emerald: #78d88d;--sg-rose: #ef91c7;--sg-violet: #b794f6;--sg-amber: #f2b866;--sg-ivory: #f4ecd2;--sg-text: #edf7fb;--sg-muted: rgba(218, 230, 237, .55);--sg-shadow: 0 18px 44px rgba(0, 0, 0, .38), 0 0 0 1px rgba(246, 216, 143, .04);--sg-panel-bg: linear-gradient(145deg, rgba(25, 44, 58, .24), transparent 40%), linear-gradient(315deg, rgba(111, 73, 137, .12), transparent 42%), rgba(6, 13, 23, .9)}body{color:var(--sg-text);background:radial-gradient(circle at 15% 12%,rgba(61,128,169,.16),transparent 30%),radial-gradient(circle at 82% 28%,rgba(128,82,170,.12),transparent 32%),linear-gradient(180deg,#050a12,#07111d 46%,#050a10)}.flow-shell{isolation:isolate;background:radial-gradient(circle at 18% 16%,rgba(74,155,196,.11),transparent 24%),radial-gradient(circle at 78% 34%,rgba(150,96,192,.09),transparent 28%),radial-gradient(circle at 52% 72%,rgba(255,196,106,.055),transparent 26%),linear-gradient(180deg,#07121e,#0a1420 48%,#050b12)}.flow-shell:before,.flow-shell:after{content:"";position:absolute;inset:0;pointer-events:none}.flow-shell:before{z-index:2;opacity:.16;background:linear-gradient(28deg,transparent 0 47%,rgba(11,18,24,.8) 48% 50%,transparent 51% 100%),linear-gradient(152deg,transparent 0 48%,rgba(11,18,24,.68) 49% 50%,transparent 51% 100%);background-size:180px 180px,220px 220px;mix-blend-mode:multiply}.flow-shell:after{z-index:3;opacity:.08;background:radial-gradient(circle at 20% 30%,rgba(105,208,245,.45),transparent 18%),radial-gradient(circle at 70% 22%,rgba(203,131,245,.36),transparent 17%),radial-gradient(circle at 58% 78%,rgba(255,200,109,.34),transparent 15%);mix-blend-mode:screen}#flow-canvas{position:relative;z-index:1;filter:saturate(1.08) contrast(1.035) brightness(.98)}.glass,.menu-sheet{border:1px solid rgba(218,174,92,.42);background:linear-gradient(90deg,rgba(255,224,151,.035),transparent 18% 82%,rgba(255,224,151,.03)),linear-gradient(145deg,rgba(70,145,177,.08),transparent 34%),linear-gradient(315deg,rgba(133,77,161,.07),transparent 34%),var(--sg-panel);box-shadow:inset 0 0 0 1px #10181ff0,inset 0 0 0 3px #daae5c14,var(--sg-shadow);backdrop-filter:blur(12px) saturate(1.08)}.brand,.goal,.metric,.rare-resource,.flow-guide,.flow-legend,.map-controls,.control-menu-bar,.build-toolbar,.research-panel,.journey-panel,.bottleneck-panel,.facility-inspector{border-radius:12px}.brand,.goal,.metric,.rare-resource,.control-menu-button,.build-button,.research-item,.journey-chapter,.facility-module-option,.map-controls button{position:relative;overflow:hidden}.brand:before,.goal:before,.metric:before,.rare-resource:before,.control-menu-button:before,.build-button:before,.research-item:before,.journey-chapter:before,.facility-module-option:before{content:"";position:absolute;inset:0;pointer-events:none;opacity:.42;background:linear-gradient(62deg,transparent 0 48%,rgba(13,20,27,.72) 49% 51%,transparent 52% 100%),linear-gradient(118deg,transparent 0 72%,rgba(13,20,27,.58) 73% 75%,transparent 76% 100%);background-size:74px 74px,92px 92px}.brand{border-color:#e5bc6785;background:radial-gradient(circle at 18% 26%,rgba(88,197,219,.14),transparent 31%),radial-gradient(circle at 86% 72%,rgba(122,211,139,.11),transparent 30%),var(--sg-panel-deep)}.brand strong,.journey-panel__header strong,.research-panel__header strong,.build-toolbar__header strong,.menu-sheet__header strong,.research-tree__root strong,.research-branch__header strong{font-family:Yu Mincho,Hiragino Mincho ProN,Georgia,serif;letter-spacing:.08em;text-shadow:0 0 16px rgba(245,218,141,.09)}.brand small,.brand span,.research-tier,.build-category-label strong,.research-panel__header small,.build-toolbar__header small,.menu-sheet__header small{letter-spacing:.15em}.brand strong{color:#fff1bd;text-shadow:0 0 16px rgba(255,219,115,.18),0 1px 0 #0b1117}.goal{border-color:#d7ad5b75;background:linear-gradient(90deg,rgba(80,169,210,.07),transparent 42%),linear-gradient(270deg,rgba(232,177,91,.06),transparent 34%),var(--sg-panel-deep)}.goal__track{height:7px;border:1px solid rgba(210,172,92,.22);background:#080e16eb;box-shadow:inset 0 0 8px #0000005c}.goal__track span{background:linear-gradient(90deg,#71c9f2,#95e6ee 28%,#f4d681 72%,#f3a6cb);box-shadow:0 0 10px #70d4f847,0 0 18px #f6d9862e}.metrics{gap:7px}.metric{border-color:#d1a75257;background:radial-gradient(circle at 50% 0%,rgba(117,196,225,.11),transparent 55%),#050d16e0}.metric strong{color:#f5f0de;text-shadow:0 0 12px rgba(135,211,240,.12)}.metric small{color:#e6d7b080}.rare-resource-strip{border-color:#cea4525c}.rare-resource{border:1px solid rgba(210,172,91,.16);background:linear-gradient(145deg,rgba(255,255,255,.025),transparent 60%),#08101adb}.rare-resource--sap{box-shadow:inset 0 0 18px #70d67c0d}.rare-resource--prism{box-shadow:inset 0 0 18px #8797ff0f}.rare-resource--pollen{box-shadow:inset 0 0 18px #ffaf6f0e}.flow-guide{border-color:#d2a8545c;background:linear-gradient(145deg,rgba(62,141,177,.07),transparent 44%),#050c15e8}.flow-guide>small{color:#f5d286b8}.flow-guide>strong{color:#f0ead9}.condition-status,.journey-condition,.journey-reward,.facility-synergy-status{border-color:#d9ad582b;background:linear-gradient(135deg,rgba(245,210,131,.025),transparent 62%),#09111bb8}.flow-legend{border-color:#d3a85452;background:linear-gradient(145deg,rgba(83,151,180,.06),transparent 42%),#050c15e6}.dot{border:1px solid rgba(246,232,198,.4)}.map-controls{border-color:#d5ab5857;background:#050c14e8}.map-controls button{border-color:#dbb46340;border-radius:7px;color:#efe6c9;background:linear-gradient(145deg,rgba(83,177,210,.07),transparent 55%),#0a121cf0;box-shadow:inset 0 0 0 1px #0d151ceb}.map-controls button:hover,.map-controls button:focus-visible{border-color:#f8d48494;color:#fff4c9;background:linear-gradient(145deg,rgba(96,199,230,.13),transparent 58%),#0c1622fa;box-shadow:inset 0 0 0 1px #0d151cf0,0 0 16px #6bceee14}.control-menu-bar{border-color:#dcb05980;background:linear-gradient(90deg,rgba(83,154,181,.07),transparent 28% 72%,rgba(133,79,151,.06)),#040a12f2;box-shadow:inset 0 0 0 1px #101820,inset 0 0 0 3px #d7aa5312,0 18px 44px #00000075}.control-menu-button{border-color:#cda34f3d;border-radius:10px;color:#e9f2f5;background:linear-gradient(145deg,rgba(78,167,201,.055),transparent 50%),#081019eb}.control-menu-button>span{position:relative;border:1px solid rgba(229,190,105,.38);border-radius:6px;color:#d6f5ff;background:linear-gradient(135deg,#58ceef2b,#6670dd1a);transform:rotate(45deg);box-shadow:0 0 14px #5cc4e817}.control-menu-button>span:before{content:"";position:absolute;inset:6px;border:1px solid rgba(242,221,165,.18)}.control-menu-button>span{line-height:1}.control-menu-button>span,.control-menu-button>span:before{transform-origin:center}.control-menu-button>span{font-size:0}.control-menu-button>span:after{content:"✦";font-size:14px;transform:rotate(-45deg)}.control-menu-button:nth-child(2)>span:after{content:"⌬"}.control-menu-button:hover,.control-menu-button:focus-visible,.control-menu-button.is-open{border-color:#f5cf7c8a;background:linear-gradient(145deg,rgba(91,190,223,.1),transparent 52%),#0b1520f5;box-shadow:inset 0 0 18px #58badd0d,0 0 16px #f2cf7e0f}.control-menu-button.is-active>span,.control-menu-button.is-open>span{border-color:#ffdc889e;background:linear-gradient(135deg,#59d0ef40,#8c5bd329);box-shadow:0 0 14px #54caec29,0 0 22px #efc46b14}.build-toolbar,.research-panel,.journey-panel,.facility-inspector,.bottleneck-panel{border-color:#deb25a80;background:linear-gradient(145deg,rgba(66,150,181,.075),transparent 30%),linear-gradient(315deg,rgba(125,77,158,.065),transparent 34%),#040a12f5;box-shadow:inset 0 0 0 1px #0d151cfa,inset 0 0 0 3px #ddb05812,0 24px 70px #00000085}.build-toolbar__header,.research-panel__header,.journey-panel__header,.menu-sheet__header{padding-bottom:8px;border-bottom:1px solid rgba(217,174,89,.16)}.build-toolbar__header small,.research-panel__header small,.journey-panel__header small,.menu-sheet__header small{color:#eec87aad}.build-toolbar__header button,.research-panel__header button,.journey-panel__header button,.menu-sheet__header button{border:1px solid rgba(223,182,98,.28);border-radius:7px;color:#efe8d4;background:linear-gradient(145deg,rgba(91,190,218,.055),transparent 58%),#09111beb}.build-category-label{border-top-color:#daae5929}.build-category-label strong{color:#f0db9c;font-family:Yu Mincho,Hiragino Mincho ProN,Georgia,serif;letter-spacing:.09em}.build-category-label span{color:#d7e1e280}.build-button{border-color:#d4ab562e;border-radius:9px;color:#edf4f6d6;background:linear-gradient(145deg,rgba(62,151,186,.045),transparent 46%),linear-gradient(315deg,rgba(119,72,150,.035),transparent 46%),#09111bed;box-shadow:inset 0 0 0 1px #10181fc2}.build-button i{position:relative;border:1px solid rgba(221,183,98,.31);border-radius:5px;color:#d9f4fb;background:linear-gradient(135deg,#53c5e529,#4c6aca14);transform:rotate(45deg)}.build-button i:before{content:"";position:absolute;inset:5px;border:1px solid rgba(250,229,173,.14)}.build-button i{text-shadow:0 0 8px currentColor}.build-button i{line-height:1}.build-button i{font-size:0}.build-button[data-build=gather] i:after{content:"✦"}.build-button[data-build=harvester] i:after{content:"◇"}.build-button[data-build=channel] i:after{content:"╱"}.build-button[data-build=relay] i:after{content:"✧"}.build-button[data-build=merger] i:after{content:"Y"}.build-button[data-build=reservoir] i:after{content:"◉"}.build-button[data-build=splitter] i:after{content:"Ψ"}.build-button[data-build=resonator] i:after{content:"◎"}.build-button[data-build=loom] i:after{content:"◈"}.build-button[data-build=move] i:after{content:"↕"}.build-button[data-build=priority] i:after{content:"↟"}.build-button[data-build=remove] i:after{content:"×"}.build-button i:after{position:relative;display:block;color:inherit;font-size:12px;transform:rotate(-45deg)}.build-button:not(:disabled):hover,.build-button:not(:disabled):focus-visible{border-color:#f5cf7d7a;background:linear-gradient(145deg,rgba(71,175,207,.09),transparent 48%),#0b1621f5;box-shadow:inset 0 0 0 1px #10181fd1,0 0 20px #6cd0ed12}.build-button.is-active{border-color:#fbd58294;color:#fff3c5;background:linear-gradient(145deg,#54c4e11c,#8152a712),#0b1621fa;box-shadow:inset 0 0 24px #5dc7e60e,0 0 20px #f2cb7314}.build-button.is-active i{border-color:#ffdd8bb3;color:#fff1b8;box-shadow:0 0 12px #64d0ed21,0 0 18px #f7cc7114}.research-tree{padding:10px;border:1px solid rgba(214,171,85,.13);border-radius:12px;background:linear-gradient(145deg,rgba(69,143,174,.045),transparent 32%),linear-gradient(315deg,rgba(126,76,154,.045),transparent 32%),#060d16d1}.research-tree__root{position:relative;border:1px solid rgba(245,205,118,.52);border-radius:8px;background:radial-gradient(circle at 28% 20%,rgba(255,221,132,.17),transparent 42%),linear-gradient(145deg,rgba(112,196,218,.08),transparent 50%),#0a121bf5;box-shadow:inset 0 0 0 2px #e6b7590e,0 0 24px #f8d37e14}.research-tree__root>span{border:1px solid rgba(244,205,118,.48);border-radius:7px;color:#ffe9a7;background:linear-gradient(135deg,#ffdb7838,#75cbe117);transform:rotate(45deg)}.research-tree__root>span{font-size:0}.research-tree__root>span:after{content:"✦";display:block;color:#fff0b3;font-size:16px;transform:rotate(-45deg)}.research-tree__trunk,.research-tree__branches:before,.research-branch:before{background:linear-gradient(#d6aa55,#6f8696);box-shadow:0 0 7px #dfb55b1c}.research-branch__header>span{border:1px solid rgba(215,175,90,.3);border-radius:5px;background:linear-gradient(135deg,#64cce821,#664fb21a);transform:rotate(45deg)}.research-branch__header>span{font-size:0}.research-branch.is-supply .research-branch__header>span:after{content:"✦"}.research-branch.is-flow .research-branch__header>span:after{content:"⇢"}.research-branch.is-bloom .research-branch__header>span:after{content:"◇"}.research-branch__header>span:after{display:block;color:#d9f4fb;font-size:12px;transform:rotate(-45deg)}.research-item{border-color:#d4ab562e;border-radius:9px;background:linear-gradient(145deg,rgba(74,161,190,.045),transparent 54%),#081019f0;box-shadow:inset 0 0 0 1px #0f181fc7}.research-item.is-core{border-color:#72cce83d}.research-item.is-advanced{border-color:#b387eb40;background:linear-gradient(145deg,rgba(153,99,209,.07),transparent 52%),#0a101cf2}.research-item.is-capstone{border-color:#eec1666b;background:radial-gradient(circle at 90% 12%,rgba(247,207,116,.1),transparent 35%),linear-gradient(135deg,rgba(118,79,167,.06),transparent 60%),#0a101bf5}.research-item:not(:disabled):hover,.research-item:not(:disabled):focus-visible{border-color:#f9d37f8c;box-shadow:inset 0 0 0 1px #0f181fd1,0 0 18px #5dc6e512}.research-level-pips i{height:5px;border:1px solid rgba(204,165,81,.16);border-radius:2px;background:#0e171feb}.research-level-pips i.is-filled{background:linear-gradient(90deg,#67c8ee,#9be7f2);box-shadow:0 0 10px #64ccee33}.research-node.is-advanced .research-level-pips i.is-filled{background:linear-gradient(90deg,#a68bea,#d7aaf3);box-shadow:0 0 10px #bc82ef33}.research-node.is-capstone .research-level-pips i.is-filled{background:linear-gradient(90deg,#e8b862,#ffe49a);box-shadow:0 0 12px #f5ca6e3d}.research-connector>span{width:3px;border:1px solid rgba(23,32,40,.7);border-radius:0;background:#26333c}.research-connector.is-active>span{background:linear-gradient(#6ed4ee,#d1b36a);box-shadow:0 0 9px #70d1ef2e}.research-connector--capstone.is-active>span{background:linear-gradient(#c89b4c,#ffe49a);box-shadow:0 0 10px #f5cc7333}.research-connector small{border-color:#d0a9562b;color:#e1d8bb7a;background:#060d15f0}.journey-chapter{border-color:#d1a85421;border-radius:8px;background:linear-gradient(145deg,rgba(74,160,190,.035),transparent 55%),#081019e6}.journey-chapter>b{border:1px solid rgba(215,176,91,.24);border-radius:2px;background:linear-gradient(135deg,#5abfda14,#8058ad0d);clip-path:polygon(50% 0,100% 50%,50% 100%,0 50%);line-height:1}.journey-chapter.is-current{border-color:#f2cc7a61;background:radial-gradient(circle at 8% 50%,rgba(246,210,128,.075),transparent 24%),#0a121cf0}.facility-module-option{border-color:#d3aa5626;border-radius:8px;background:linear-gradient(145deg,rgba(148,91,193,.04),transparent 56%),#080f19eb}.facility-module-option.is-active{border-color:#77d3974d;background:linear-gradient(145deg,rgba(92,193,132,.07),transparent 58%),#081018f0}.flow-lens-toggle{border-color:#d4aa5457;background:linear-gradient(145deg,rgba(86,175,203,.06),transparent 50%),#050c15eb}.flow-lens-toggle.is-active{border-color:#7adca780;background:linear-gradient(145deg,rgba(87,194,139,.11),transparent 55%),#071016f0}@media(max-width:820px){.glass,.menu-sheet{backdrop-filter:blur(10px) saturate(1.04)}.top-hud{gap:5px}.brand,.goal,.metric{border-radius:9px}.control-menu-bar{border-radius:12px}.control-menu-button{border-radius:8px}.build-toolbar,.research-panel,.journey-panel,.facility-inspector,.bottleneck-panel{border-radius:11px}.research-tree{padding:8px}.research-branch+.research-branch{border-top-color:#d5ab5726}}@media(max-width:580px){.flow-shell:before{opacity:.1;background-size:140px 140px,170px 170px}.rare-resource-strip{border-color:#d5ab5747}.control-menu-button>span{border-radius:5px}.build-button,.research-item{border-radius:8px}}@media(min-width:1040px){.flow-shell:before{opacity:.045;background-size:260px 260px,320px 320px}.flow-shell:after{opacity:.035}.top-hud{top:8px;left:10px;right:10px;grid-template-columns:245px minmax(420px,1fr) 210px;gap:8px}.brand{min-width:0;min-height:72px;padding:12px 14px 10px 72px;border-radius:6px;border-width:2px}.brand:after{content:"✦";position:absolute;left:13px;top:50%;display:grid;place-items:center;width:44px;height:44px;border:3px solid rgba(9,14,19,.95);outline:1px solid rgba(238,195,101,.78);border-radius:50%;color:#fff0ae;background:radial-gradient(circle at 50% 42%,rgba(255,232,157,.48),transparent 30%),conic-gradient(from 20deg,#22738e,#2c9a71,#d3a44d,#8d5dc7,#22738e);box-shadow:0 0 0 2px #deb15838,inset 0 0 14px #03080cb8;font-size:22px;text-shadow:0 0 10px rgba(255,226,133,.72)}.brand strong{font-size:19px;letter-spacing:.08em}.brand small{color:#eccf8dad;font-size:7px}.goal{min-height:72px;border-radius:6px;border-width:2px;padding:11px 15px}.metrics{align-items:stretch}.metric{min-width:98px;min-height:72px;border-radius:6px;border-width:2px;padding:10px 9px}.metric strong{font-family:Georgia,Yu Mincho,serif;font-size:17px}.flow-guide{top:92px;bottom:auto;left:10px;width:224px;min-height:286px;padding:16px 15px;border-width:2px;border-radius:6px}.flow-guide:after{content:"";position:absolute;inset:6px;border:1px solid rgba(229,188,96,.18);pointer-events:none}.flow-guide>small{font-family:Georgia,Yu Mincho,serif;font-size:9px}.flow-guide>strong{margin-top:10px;font-family:Yu Mincho,Hiragino Mincho ProN,serif;font-size:14px;line-height:1.55}.connection-status{margin-top:14px;padding-top:12px;border-top:1px solid rgba(218,174,88,.18)}.rare-resource-strip{top:92px;right:10px;width:202px;grid-template-columns:1fr;gap:7px;padding:10px;border-width:2px;border-radius:6px}.rare-resource{min-height:50px;display:grid;grid-template-columns:1fr auto;align-items:center;padding:8px 10px;text-align:left}.rare-resource small{font-size:7px;letter-spacing:.1em}.rare-resource strong{margin:0;font-family:Georgia,Yu Mincho,serif;font-size:15px}.flow-legend{left:10px;bottom:94px;width:224px;padding:12px;border-width:2px;border-radius:6px}.map-controls{right:10px;bottom:94px;width:202px;padding:9px;border-width:2px;border-radius:6px}.research-panel{inset:92px 10px 94px auto;width:312px;max-height:none;transform:none;padding:14px;border-width:2px;border-radius:6px}.research-panel .research-tree{border-radius:4px}.research-panel__header,.build-toolbar__header,.journey-panel__header{border-bottom-color:#e7be6447}.build-toolbar{bottom:82px;width:min(920px,calc(100vw - 500px));max-height:min(52dvh,520px);border-width:2px;border-radius:6px}.control-menu-bar{bottom:10px;width:min(620px,calc(100vw - 500px));min-height:66px;padding:7px;border-width:2px;border-radius:6px}.control-menu-button{min-height:54px;border-radius:4px}.control-menu-button strong{font-family:Yu Mincho,Hiragino Mincho ProN,serif;color:#ffe9aeeb}.journey-panel{top:92px;left:246px;right:224px;width:auto;max-height:calc(100dvh - 190px);border-radius:6px}.facility-inspector{top:390px;left:10px;width:224px;max-height:calc(100dvh - 500px);border-radius:6px}.bottleneck-panel{top:92px;right:222px;width:228px;border-radius:6px}}.build-button .build-art{position:relative;display:grid;place-items:center;flex:0 0 58px;width:58px;height:58px;padding:2px;overflow:hidden;border:1px solid rgba(224,181,91,.4);border-radius:9px;clip-path:none;transform:none;background:radial-gradient(circle at 50% 42%,rgba(96,190,221,.16),transparent 55%),linear-gradient(145deg,#2e465547,#070e17eb);box-shadow:inset 0 0 0 1px #060b11d9,0 3px 10px #0000003d}.build-button .build-art:after{content:none!important}.build-button .build-art img{display:block;width:100%;height:100%;object-fit:contain;transform:none;filter:drop-shadow(0 4px 4px rgba(0,0,0,.42)) drop-shadow(0 0 7px rgba(108,206,236,.14));transition:transform .14s ease,filter .14s ease}.build-button:not(:disabled):hover .build-art img,.build-button:not(:disabled):focus-visible .build-art img{transform:translateY(-2px) scale(1.04);filter:drop-shadow(0 5px 5px rgba(0,0,0,.46)) drop-shadow(0 0 11px rgba(112,213,241,.24))}.build-button.is-active .build-art{border-color:#ffdc84c7;background:radial-gradient(circle at 50% 40%,rgba(111,213,239,.24),transparent 58%),linear-gradient(145deg,#5d437a5c,#081019f5);box-shadow:inset 0 0 0 1px #ffe59924,0 0 15px #f7cc712e,0 0 20px #64d0ed1c}.build-button.is-active .build-art img{filter:drop-shadow(0 5px 5px rgba(0,0,0,.44)) drop-shadow(0 0 11px rgba(255,213,126,.25)) brightness(1.06)}.facility-inspector__art{position:relative;display:grid;place-items:center;min-height:124px;margin:9px 0 10px;overflow:hidden;border:1px solid rgba(219,176,87,.28);border-radius:7px;background:radial-gradient(circle at 50% 42%,rgba(82,188,220,.14),transparent 48%),radial-gradient(circle at 50% 78%,rgba(113,76,145,.11),transparent 58%),#050c14cc;box-shadow:inset 0 0 0 2px #050a10b8,inset 0 0 24px #4eadcf0a}.facility-inspector__art:before,.facility-inspector__art:after{content:"";position:absolute;pointer-events:none}.facility-inspector__art:before{inset:6px;border:1px solid rgba(229,188,96,.12)}.facility-inspector__art:after{left:14%;right:14%;bottom:11px;height:16px;border-radius:50%;background:#0000003d;filter:blur(5px)}#inspector-art{position:relative;z-index:1;display:block;width:118px;height:118px;object-fit:contain;filter:drop-shadow(0 8px 6px rgba(0,0,0,.5)) drop-shadow(0 0 12px rgba(110,205,234,.16))}@media(min-width:1050px){.build-toolbar__grid{grid-template-columns:repeat(4,minmax(0,1fr))}.build-button{min-height:82px;padding:9px}.build-button strong{font-family:Yu Mincho,Hiragino Mincho ProN,serif;font-size:11px}}@media(max-width:820px){.build-button .build-art{flex-basis:46px;width:46px;height:46px}.build-button{min-height:66px}.facility-inspector__art{min-height:96px}#inspector-art{width:92px;height:92px}}.brand__sigil{display:grid;place-items:center;width:44px;height:44px;flex:0 0 44px;color:#ffe69e;font-size:25px;border:1px solid rgba(232,190,94,.5);border-radius:50%;background:radial-gradient(circle,rgba(117,205,228,.16),transparent 60%),#060d16e0;box-shadow:inset 0 0 0 3px #060b12cc,0 0 14px #f2c76624}.top-resources{display:grid;grid-template-columns:repeat(5,minmax(82px,1fr));align-self:stretch;min-width:0;padding:0;overflow:hidden;border-width:2px;border-radius:6px;pointer-events:none}.top-resource{position:relative;display:grid;grid-template-columns:30px minmax(0,1fr);gap:7px;align-items:center;min-width:0;padding:8px 10px;border-right:1px solid rgba(221,178,87,.24);background:linear-gradient(145deg,#132332d6,#050d16e6)}.top-resource:last-child{border-right:0}.top-resource:after{content:"";position:absolute;inset:4px;border:1px solid rgba(232,193,103,.08);pointer-events:none}.top-resource>i{display:grid;place-items:center;width:27px;height:34px;font-style:normal;font-size:20px;text-shadow:0 0 10px currentColor}.top-resource span,.top-resource small,.top-resource strong,.top-resource em{display:block;min-width:0}.top-resource small{overflow:hidden;color:#e6dfcab3;font-family:Yu Mincho,Hiragino Mincho ProN,serif;font-size:8px;letter-spacing:.05em;text-overflow:ellipsis;white-space:nowrap}.top-resource strong{margin-top:2px;color:#fff0bd;font-family:Georgia,Yu Mincho,serif;font-size:15px;line-height:1;font-variant-numeric:tabular-nums}.top-resource em{margin-top:2px;overflow:hidden;color:#77e0ceb8;font-size:6px;font-style:normal;text-overflow:ellipsis;white-space:nowrap}.top-resource>i{position:relative;overflow:hidden;border:1px solid rgba(238,210,145,.5);clip-path:polygon(50% 0%,84% 18%,100% 52%,74% 100%,26% 100%,0 52%,16% 18%);box-shadow:inset 0 0 10px #ffffff1f,0 0 10px currentColor}.top-resource--petal>i{color:#ffbcdd;background:radial-gradient(circle at 38% 28%,#fff5fcf2,#ffaedcc2 28%,#8d377280 66%,#151322f0)}.top-resource--sap>i{color:#a7e894;background:radial-gradient(circle at 38% 28%,#f5ffebf0,#8fe67db8 28%,#3d6f4685 66%,#111d1af0)}.top-resource--prism>i{color:#b7c8ff;background:radial-gradient(circle at 38% 28%,#f8fafff5,#a8baffc2 27%,#6d51ab80 64%,#141828f2)}.top-resource--pollen>i{color:#ffc994;background:radial-gradient(circle at 38% 28%,#fffae1f5,#ffc576c2 28%,#a15b3980 66%,#231716f0)}.top-resource--flow>i{color:#89ddff;background:radial-gradient(circle at 38% 28%,#edfdfff5,#6fd4f8c7 28%,#2f629c85 66%,#111b2af2)}@media(min-width:1050px){.flow-shell{background:radial-gradient(circle at 50% 30%,rgba(70,142,182,.08),transparent 40%),#040b13}.glass{border-color:#dab0566b;background:linear-gradient(145deg,#08121ff5,#040c15f0);box-shadow:inset 0 0 0 1px #04080ee6,0 8px 24px #00000057;backdrop-filter:blur(7px)}.top-hud{top:8px;left:8px;right:8px;display:grid;grid-template-columns:300px minmax(520px,1fr) 292px;align-items:stretch;gap:7px}.brand{position:relative;display:flex;align-items:center;gap:10px;width:auto;min-width:0;min-height:72px;padding:10px 14px;border-width:2px;border-radius:6px;overflow:hidden}.brand:after{content:"";position:absolute;inset:5px;border:1px solid rgba(233,191,98,.18);pointer-events:none}.brand strong{margin:0;color:#fff1bd;font-family:Georgia,Times New Roman,serif;font-size:24px;font-weight:600;letter-spacing:.04em}.brand small{margin-top:3px;color:#ebdaafb8;font-family:Yu Mincho,Hiragino Mincho ProN,serif;font-size:9px;letter-spacing:.08em}.goal{min-height:72px;padding:10px 13px;border-width:2px;border-radius:6px;background:linear-gradient(145deg,#0e1b2af5,#050d17f5)}.goal__row span{color:#e4dac1ad;font-size:8px}.goal__row strong{color:#ffe89a;font-family:Georgia,Yu Mincho,serif;font-size:15px}.goal>small{color:#dbe1e485;font-size:8px}.flow-guide{top:92px;bottom:92px;left:8px;width:260px;min-height:0;transform:none;padding:16px 15px;border-width:2px;border-radius:6px;overflow:auto;pointer-events:none}.flow-guide:after,.facility-inspector:after,.build-toolbar:after,.research-panel:after{content:"";position:absolute;inset:6px;border:1px solid rgba(232,190,95,.15);pointer-events:none}.flow-guide>small{color:#ffe1a0;font-family:Yu Mincho,Hiragino Mincho ProN,serif;font-size:10px;letter-spacing:.08em}.flow-guide>strong{margin-top:12px;font-family:Yu Mincho,Hiragino Mincho ProN,serif;font-size:15px;line-height:1.6}.condition-status{margin-top:16px;padding:10px;border-color:#dcb35a29;border-radius:4px;background:#ffffff05}.condition-status small,.condition-status strong,.condition-status span{font-size:8px}.connection-status{margin-top:15px;padding-top:12px;border-top:1px solid rgba(226,183,92,.18)}.connection-status span{min-height:32px;padding:7px 8px;border:1px solid rgba(135,199,221,.08);background:#ffffff05}.facility-inspector{inset:92px 8px 92px auto;width:300px;max-height:none;padding:14px;border-width:2px;border-radius:6px;overflow-y:auto}.facility-inspector__header strong{color:#fff0bd;font-family:Yu Mincho,Hiragino Mincho ProN,serif;font-size:17px}.facility-inspector__art{min-height:184px;margin-top:12px;border-color:#e1b85e3d;border-radius:4px;background:radial-gradient(circle at 50% 42%,rgba(81,190,222,.16),transparent 43%),linear-gradient(150deg,#0c1a28f0,#040b13fa)}#inspector-art{width:166px;height:166px}.facility-inspector__metrics{grid-template-columns:1fr 1fr;gap:5px}.facility-inspector__metrics>div{min-height:54px;padding:8px;border-color:#deb45824;border-radius:3px}.facility-inspector__metrics strong{font-family:Georgia,Yu Mincho,serif;font-size:14px}.build-toolbar{right:316px;bottom:82px;left:274px;width:auto;max-height:330px;transform:none;padding:11px;border-width:2px;border-radius:6px}.build-toolbar__intro{display:none}.build-toolbar__header{min-height:34px;padding:0 5px 8px}.build-toolbar__header strong{color:#ffe4a0;font-family:Yu Mincho,Hiragino Mincho ProN,serif}.build-category-label{display:none}.build-toolbar__grid{display:grid;grid-auto-flow:column;grid-auto-columns:minmax(104px,1fr);grid-template-columns:none;gap:5px;padding:2px;overflow-x:auto;overflow-y:hidden;scrollbar-width:thin}.build-button{display:flex;flex-direction:column;justify-content:flex-start;gap:5px;min-width:104px;min-height:134px;padding:7px 6px 8px;border:1px solid rgba(220,178,87,.28);border-radius:4px;text-align:center;background:linear-gradient(150deg,#0d1b29eb,#050c15f5)}.build-button .build-art,.build-button>i:not(.build-art){flex:0 0 72px;width:72px;height:72px;margin:0 auto}.build-button>i:not(.build-art){display:grid;place-items:center;color:#ffe097d1;font-size:30px;font-style:normal;border:1px solid rgba(221,178,87,.2);border-radius:8px;background:#08111cd6}.build-button span{width:100%}.build-button strong{display:block;color:#ffedbbf0;font-family:Yu Mincho,Hiragino Mincho ProN,serif;font-size:11px}.build-button small{display:-webkit-box;margin-top:4px;overflow:hidden;color:#d1dee580;font-size:7px;line-height:1.35;-webkit-box-orient:vertical;-webkit-line-clamp:2}.build-button.is-active{border-color:#ffd270d9;box-shadow:inset 0 0 0 1px #ffde8a2e,0 0 14px #f9c35626}.control-menu-bar{bottom:8px;left:274px;width:360px;min-height:66px;transform:none;padding:6px;border-width:2px;border-radius:6px}.control-menu-button{min-height:52px;border-radius:3px}.control-menu-button>span{color:#ffe59f}.control-menu-button strong{color:#ffe8ac;font-family:Yu Mincho,Hiragino Mincho ProN,serif}.map-controls{right:316px;bottom:8px;width:238px;min-height:66px;padding:7px;border-width:2px;border-radius:6px}.flow-legend{inset:auto 316px 92px 274px;transform:none;width:auto;min-height:0;padding:6px 10px;border-width:2px;border-radius:6px}.flow-lens-toggle{top:auto;right:8px;bottom:8px;width:300px;min-height:66px}.research-panel{inset:92px 8px 92px 274px;width:auto;max-height:none;transform:none;padding:16px;border-width:2px;border-radius:6px}.journey-panel{inset:92px 316px 92px 274px;width:auto;max-height:none;border-width:2px;border-radius:6px}.bottleneck-panel{top:92px;right:316px;width:250px;border-width:2px;border-radius:6px}}@media(max-width:1049px){.top-resources{display:none}.brand__sigil{width:34px;height:34px;flex-basis:34px;font-size:19px}.brand{display:flex;align-items:center;gap:8px}.brand span:not(.brand__sigil){display:none}}
