@font-face{font-family:merel;src:url(/ecosystem-simulator/_next/static/media/27e3ffd19aa993e0-s.p.otf) format("opentype");font-display:swap;font-weight:400;font-style:normal}@font-face{font-family:merel;src:url(/ecosystem-simulator/_next/static/media/e755de029e382c22-s.p.otf) format("opentype");font-display:swap;font-weight:900;font-style:normal}@font-face{font-family:merel Fallback;src:local("Arial");ascent-override:82.83%;descent-override:22.15%;line-gap-override:36.01%;size-adjust:95.26%}.__className_292944{font-family:merel,merel Fallback}.__variable_292944{--font-merel:"merel","merel Fallback"}@font-face{font-family:ebGaramond;src:url(/ecosystem-simulator/_next/static/media/6f005f8c55245799-s.p.otf) format("opentype");font-display:swap;font-weight:400;font-style:normal}@font-face{font-family:ebGaramond Fallback;src:local("Arial");ascent-override:117.75%;descent-override:34.85%;line-gap-override:0.00%;size-adjust:85.52%}.__className_27e5ca{font-family:ebGaramond,ebGaramond Fallback;font-weight:400;font-style:normal}.__variable_27e5ca{--font-ebgaramond:"ebGaramond","ebGaramond Fallback"}:root{--bg:#0a0e18;--bg-deep:#070a12;--panel:hsla(0,0%,100%,.045);--panel-strong:hsla(0,0%,100%,.08);--panel-border:hsla(0,0%,100%,.1);--panel-border-soft:hsla(0,0%,100%,.06);--text:#f4f6fb;--text-muted:#8b94a7;--text-dim:#656e83;--red:#f42324;--good:#3fdc95;--warn:#f5a623;--bad:#ff5c5c;--radius:20px;--radius-lg:26px;--radius-pill:999px;--font-sans:var(--font-merel),-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;--font-serif:var(--font-ebgaramond),Georgia,"Times New Roman",serif}*{box-sizing:border-box}body,html{margin:0;padding:0;height:100%;overflow:hidden;font-family:var(--font-sans);color:var(--text);background:var(--bg);-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility}h1,h2,h3,p{margin:0}button{font-family:inherit;cursor:pointer}:focus:not(:focus-visible){outline:none}:focus-visible{outline:2px solid var(--red);outline-offset:3px}.app{position:fixed;inset:0;overflow:hidden}.backdrop{z-index:2;pointer-events:none;background:linear-gradient(90deg,rgba(7,10,18,.86) 0,rgba(7,10,18,.55) 22%,rgba(7,10,18,0) 44%),radial-gradient(120% 105% at 62% 46%,transparent 52%,var(--bg-deep) 100%)}.backdrop,canvas.world{position:absolute;inset:0}canvas.world{z-index:1;display:block;width:100%;height:100%;touch-action:none}.topBar{position:absolute;top:0;left:0;right:0;z-index:10;display:flex;justify-content:space-between;align-items:center;padding:30px 40px;pointer-events:none}.topBar>*{pointer-events:auto}.wordmark{display:block;height:26px;width:auto;color:var(--text);flex:none}.transport{display:flex;align-items:center;gap:10px}.pillBtn{-webkit-appearance:none;-moz-appearance:none;appearance:none;border:1px solid var(--panel-border);background:var(--panel);color:var(--text);font:inherit;font-size:.85rem;font-weight:900;letter-spacing:-.01em;padding:10px 18px;border-radius:var(--radius-pill);display:inline-flex;align-items:center;gap:7px;white-space:nowrap;backdrop-filter:blur(14px);-webkit-backdrop-filter:blur(14px);transition:background .15s ease,color .15s ease,border-color .15s ease,transform .1s ease}.pillBtn:hover{background:var(--panel-strong)}.pillBtn:active{transform:scale(.96)}.pillBtn.accent,.pillBtn.accent:hover,.pillBtn.solid,.pillBtn.solid:hover{background:var(--red);border-color:var(--red);color:#fff}.pillBtn.ghost{color:var(--text-muted)}.pillBtn.ghost:hover{color:var(--text)}.seg{display:flex;gap:4px;padding:5px;border-radius:var(--radius-pill);background:var(--panel);border:1px solid var(--panel-border);backdrop-filter:blur(14px);-webkit-backdrop-filter:blur(14px)}.seg button{-webkit-appearance:none;-moz-appearance:none;appearance:none;border:none;background:transparent;font:inherit;font-size:.8rem;font-weight:900;letter-spacing:-.01em;color:var(--text-muted);padding:7px 13px;border-radius:var(--radius-pill);display:flex;align-items:center;gap:6px;white-space:nowrap;transition:background .15s ease,color .15s ease,transform .1s ease}.seg button:hover{color:var(--text);background:hsla(0,0%,100%,.05)}.seg button:active{transform:scale(.96)}.seg button.on,.seg button.on:hover{background:var(--red);color:#fff}.dayChip{position:absolute;top:34px;left:50%;transform:translateX(-50%);z-index:10;display:flex;flex-direction:column;align-items:center;gap:7px;pointer-events:none}.dayLabel{font-size:.72rem;font-weight:900;letter-spacing:.2em;text-transform:uppercase;color:var(--text-muted)}.dayLabel b{color:var(--text-dim);font-weight:400}.dayTrack{width:148px;height:3px;background:hsla(0,0%,100%,.1);overflow:hidden}.dayTrack,.dayTrack>span{border-radius:var(--radius-pill)}.dayTrack>span{display:block;height:100%;background:var(--red);transition:width .4s ease}.toastChip{position:absolute;top:82px;left:50%;transform:translateX(-50%);z-index:20;padding:9px 18px;border-radius:var(--radius-pill);background:var(--panel-strong);border:1px solid var(--panel-border);backdrop-filter:blur(16px);-webkit-backdrop-filter:blur(16px);font-size:.85rem;font-weight:900;letter-spacing:-.01em;color:var(--text);white-space:nowrap;pointer-events:none;animation:toastIn .25s ease}@keyframes toastIn{0%{opacity:0;transform:translate(-50%,-6px)}to{opacity:1;transform:translate(-50%)}}.hero{position:absolute;left:40px;top:31%;transform:translateY(-50%);z-index:9;max-width:34rem;pointer-events:none}.eyebrow{display:flex;align-items:center;gap:10px;font-size:.72rem;font-weight:900;letter-spacing:.22em;text-transform:uppercase;color:var(--text-muted);margin-bottom:24px}.dot{width:8px;height:8px;border-radius:50%;background:var(--red);flex:none}.titleMain{font-family:var(--font-serif);font-size:clamp(2.6rem,5vw,4.4rem);font-weight:400;line-height:1.04;letter-spacing:-.015em;color:var(--text)}.titleDot{color:var(--red)}.missionLine{margin-top:22px;font-size:1.02rem;font-weight:900;letter-spacing:-.01em;color:var(--text)}.missionGoal{color:var(--red)}.titleSub{margin-top:14px;max-width:26rem;font-size:.95rem;font-weight:400;line-height:1.65;color:var(--text-muted)}.titleSub b{font-weight:900;color:var(--text)}.panel{background:var(--panel);border:1px solid var(--panel-border);border-radius:var(--radius-lg);box-shadow:0 24px 60px rgba(0,0,0,.45);backdrop-filter:blur(16px);-webkit-backdrop-filter:blur(16px);padding:18px 20px;color:var(--text)}.panel h2{gap:8px;font-size:.68rem;font-weight:900;letter-spacing:.16em;text-transform:uppercase;margin-bottom:12px}.panel h2,.panel h2 .sub{display:flex;align-items:center;color:var(--text-dim)}.panel h2 .sub{margin-left:auto;font-size:.66rem;font-weight:400;letter-spacing:.04em;text-transform:none}.notice{font-size:.78rem;font-weight:400;line-height:1.5}.btn,.notice{color:var(--text-muted)}.btn{-webkit-appearance:none;-moz-appearance:none;appearance:none;border:1px solid var(--panel-border);background:hsla(0,0%,100%,.05);font:inherit;font-size:.74rem;font-weight:900;letter-spacing:-.01em;padding:6px 12px;border-radius:var(--radius-pill);display:inline-flex;align-items:center;gap:5px;transition:background .15s ease,color .15s ease,border-color .15s ease,transform .1s ease}.btn:hover{color:var(--text);background:hsla(0,0%,100%,.09);border-color:hsla(0,0%,100%,.18)}.btn:active{transform:scale(.96)}.btn.small{padding:4px 10px;font-size:.7rem}.legendSlot{position:absolute;left:40px;bottom:34px;z-index:10;width:286px}.legendSlot .panel{padding:15px 18px}.legendSlot .panel h2{margin-bottom:9px}.score-ring{display:flex;align-items:center;gap:13px;margin-bottom:8px}.score-num{font-family:var(--font-serif);font-size:2.1rem;font-weight:400;line-height:1;letter-spacing:-.02em}.score-word{font-size:.88rem;font-weight:900;letter-spacing:-.01em;color:var(--text)}.score-label{margin-top:2px;font-size:.74rem;color:var(--text-muted)}.health-row{display:grid;grid-template-columns:10px 76px 1fr auto;align-items:center;grid-gap:10px;gap:10px;padding:3px 0}.health-row .sw{width:9px;height:9px;border-radius:50%;box-shadow:0 0 8px currentColor}.health-row .nm{font-size:.75rem;font-weight:900;letter-spacing:-.01em;color:var(--text);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.health-row .count{font-feature-settings:"tnum";font-variant-numeric:tabular-nums;font-size:.78rem;font-weight:400;color:var(--text-muted);min-width:26px;text-align:right}.bar{position:relative;height:4px;background:hsla(0,0%,100%,.08);overflow:hidden}.bar,.bar>span{border-radius:var(--radius-pill)}.bar>span{position:absolute;inset:0;transition:width .3s ease,background .3s ease}.bar .band{position:absolute;top:0;bottom:0;background:hsla(0,0%,100%,.1)}.legendFoot{display:flex;gap:14px;flex-wrap:wrap;margin-top:9px;font-size:.72rem;color:var(--text-muted)}.legendGone{margin-top:10px;padding-top:10px;border-top:1px dashed var(--panel-border);font-size:.78rem;font-weight:900;color:var(--bad)}.toolDock{position:absolute;bottom:34px;left:50%;transform:translateX(-50%);z-index:10;display:flex;flex-direction:column;align-items:center;gap:10px}.dockHint{font-size:.74rem;font-weight:400;color:var(--text-dim);white-space:nowrap;pointer-events:none}.dockHint b{font-weight:900;color:var(--text-muted)}.spawnStrip{display:flex;gap:4px;padding:5px;border-radius:var(--radius-pill);background:var(--panel);border:1px solid var(--panel-border);backdrop-filter:blur(14px);-webkit-backdrop-filter:blur(14px);animation:toastIn .2s ease}.spawn-chip{-webkit-appearance:none;-moz-appearance:none;appearance:none;border:none;background:transparent;font-size:1.15rem;line-height:1;padding:7px 9px;border-radius:var(--radius-pill);transition:background .15s ease,transform .1s ease}.spawn-chip:hover{background:hsla(0,0%,100%,.07)}.spawn-chip:active{transform:scale(.92)}.spawn-chip.on{background:var(--red)}.tabRow{bottom:34px;z-index:12;gap:8px}.rightSlot,.tabRow{position:absolute;right:40px;display:flex}.rightSlot{bottom:92px;top:96px;z-index:11;width:330px;flex-direction:column;justify-content:flex-end;pointer-events:none}.rightSlot>.panel{pointer-events:auto;overflow-y:auto;max-height:100%;animation:slotIn .25s ease}@keyframes slotIn{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}.rightSlot ::-webkit-scrollbar{width:6px}.rightSlot ::-webkit-scrollbar-thumb{background:hsla(0,0%,100%,.12);border-radius:var(--radius-pill)}.species-block{border:1px solid var(--panel-border-soft);border-radius:14px;margin-bottom:7px;overflow:hidden}.species-head{-webkit-appearance:none;-moz-appearance:none;appearance:none;display:flex;align-items:center;gap:9px;width:100%;padding:9px 12px;border:none;background:hsla(0,0%,100%,.03);text-align:left;font:inherit;font-size:.82rem;font-weight:900;letter-spacing:-.01em;color:var(--text);transition:background .15s ease}.species-head:hover{background:hsla(0,0%,100%,.06)}.species-head .em{font-size:1.05rem}.species-head .chev{margin-left:auto;color:var(--text-dim)}.species-body{padding:6px 12px 11px}.slider{margin:9px 0}.slider label{display:flex;justify-content:space-between;font-size:.74rem;color:var(--text-muted);margin-bottom:3px}.slider label b{font-weight:900;color:var(--text);font-feature-settings:"tnum";font-variant-numeric:tabular-nums}input[type=range]{width:100%;accent-color:var(--red)}.inspector{font-size:.82rem}.inspector .big-emoji{font-size:2.4rem;line-height:1}.inspectorName{font-family:var(--font-serif);font-size:1.45rem;font-weight:400;letter-spacing:-.01em;color:var(--text)}.kv{display:flex;justify-content:space-between;gap:10px;padding:5px 0;border-bottom:1px dashed var(--panel-border-soft);color:var(--text)}.kv span:first-child{color:var(--text-muted)}.minibar{flex:1 1;height:5px;margin-left:8px;align-self:center;background:hsla(0,0%,100%,.08);overflow:hidden}.minibar,.minibar>span{border-radius:var(--radius-pill)}.minibar>span{display:block;height:100%}.scenario{-webkit-appearance:none;-moz-appearance:none;appearance:none;width:100%;text-align:left;border:1px solid var(--panel-border-soft);background:hsla(0,0%,100%,.03);color:var(--text);border-radius:14px;padding:10px 13px;margin-bottom:7px;font:inherit;transition:background .15s ease,border-color .15s ease,transform .1s ease}.scenario:hover{background:hsla(0,0%,100%,.07);border-color:hsla(0,0%,100%,.16)}.scenario:active{transform:scale(.98)}.scenario b{display:flex;gap:8px;align-items:center;font-size:.82rem;font-weight:900;letter-spacing:-.01em}.scenario small{display:block;margin-top:4px;font-size:.72rem;line-height:1.45;color:var(--text-muted)}.toggle-pill{-webkit-appearance:none;-moz-appearance:none;appearance:none;display:inline-flex;align-items:center;gap:6px;border:1px solid var(--panel-border);background:hsla(0,0%,100%,.05);color:var(--text-muted);border-radius:var(--radius-pill);padding:6px 13px;font:inherit;font-size:.76rem;font-weight:900;transition:background .15s ease,color .15s ease,border-color .15s ease}.toggle-pill:hover{color:var(--text)}.toggle-pill.on{border-color:rgba(244,35,36,.55);background:rgba(244,35,36,.14);color:#ff8a8a}.mat-table{width:100%;border-collapse:collapse;font-size:.78rem}.mat-table th{text-align:left;font-size:.62rem;text-transform:uppercase;letter-spacing:.12em;color:var(--text-dim);font-weight:900;padding:0 4px 6px}.mat-table th:last-child{text-align:right}.mat-table td{padding:7px 4px;border-top:1px dashed var(--panel-border-soft);vertical-align:middle}.mat-emoji{font-size:1.1rem;width:26px;text-align:center}.mat-name{font-weight:900;letter-spacing:-.01em;white-space:nowrap;color:var(--text)}.mat-role{color:var(--text-muted);font-size:.72rem;line-height:1.4}.mat-count{text-align:right;font-weight:900;font-feature-settings:"tnum";font-variant-numeric:tabular-nums;width:30px;color:var(--text)}.winVeil{position:absolute;inset:0;z-index:30;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;gap:0;padding:40px;background:rgba(7,10,18,.78);backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);animation:veilIn .4s ease}@keyframes veilIn{0%{opacity:0}to{opacity:1}}.winVeil .eyebrow{justify-content:center;margin-bottom:22px}.winTitle{font-family:var(--font-serif);font-size:clamp(2.6rem,5.5vw,4.4rem);font-weight:400;line-height:1.06;letter-spacing:-.015em;color:var(--text)}.winSub{margin-top:20px;max-width:30rem;font-size:.98rem;line-height:1.7;color:var(--text-muted)}.winVeil .pillBtn{margin-top:30px}.ogMode .dayChip,.ogMode .legendSlot,.ogMode .rightSlot,.ogMode .tabRow,.ogMode .toastChip,.ogMode .toolDock,.ogMode .transport{display:none}.ogMode .hero{top:50%}@media (max-height:800px){.hero{top:29%}.eyebrow{margin-bottom:16px}.titleMain{font-size:clamp(2.1rem,3.6vw,3.2rem)}.missionLine{margin-top:14px;font-size:.92rem}.titleSub{margin-top:10px;max-width:22rem;font-size:.86rem;line-height:1.55}.legendSlot{width:266px}.legendSlot .panel{padding:12px 16px}.legendSlot .panel h2{margin-bottom:6px}.score-ring{margin-bottom:5px;gap:11px}.score-num{font-size:1.8rem}.health-row{padding:2px 0}}@media (max-width:1180px){.hero{max-width:24rem}.titleMain{font-size:clamp(2.2rem,4.6vw,3.4rem)}}@media (max-width:940px){.hero{display:none}.legendSlot{left:20px;bottom:20px;width:262px}.tabRow{right:20px;bottom:20px}.rightSlot{right:20px;bottom:78px;width:300px}.topBar{padding:20px}.toolDock{display:none}.dayChip{top:78px}.toastChip{top:118px}}@media (max-width:600px){.topBar{padding:16px;flex-wrap:wrap;gap:12px}.wordmark{height:20px}.transport{flex-wrap:wrap;gap:8px}.transport,.transport .seg{width:100%;justify-content:center}.transport .seg{padding:4px;gap:2px}.transport .seg button{padding:5px 7px;font-size:.68rem}.transport .pillBtn{padding:7px 12px;font-size:.72rem}.dayChip{top:22px;left:50%;right:auto;transform:translateX(-50%);align-items:center}.dayTrack{width:120px}.toastChip{top:140px}.legendSlot{left:16px;right:16px;width:auto;bottom:calc(72px + env(safe-area-inset-bottom))}.legendRows{display:grid;grid-template-columns:1fr 1fr;grid-column-gap:18px;column-gap:18px}.health-row{grid-template-columns:8px 1fr auto;gap:8px}.health-row .bar{display:none}.score-num{font-size:1.5rem}.legendFoot{margin-top:7px}.tabRow{left:16px;right:16px;bottom:calc(14px + env(safe-area-inset-bottom));justify-content:center;gap:6px}.tabRow .pillBtn{padding:8px 12px;font-size:.74rem}.rightSlot{left:16px;right:16px;width:auto;top:152px;bottom:calc(72px + env(safe-area-inset-bottom))}}html.light{--bg:#f4efe4;--bg-deep:#e7dfcd;--panel:hsla(40,43%,99%,.88);--panel-strong:#fdfcfa;--panel-border:hsla(0,0%,8%,.12);--panel-border-soft:hsla(0,0%,8%,.07);--text:#141414;--text-muted:#6e6759;--text-dim:#9b9382;--good:#0e9594;--warn:#b96f00;--bad:#d2321e}.light .backdrop{background:linear-gradient(90deg,hsla(41,42%,93%,.92),hsla(41,42%,93%,.55) 22%,hsla(41,42%,93%,0) 44%),radial-gradient(120% 105% at 62% 46%,transparent 55%,hsla(42,25%,71%,.5) 100%)}.light .panel{box-shadow:0 2px 0 hsla(0,0%,8%,.06),0 18px 40px rgba(90,80,55,.16)}.light .pillBtn:hover{background:#fff}.light .seg button:hover{color:var(--text);background:hsla(0,0%,8%,.05)}.light .bar,.light .dayTrack,.light .minibar{background:hsla(0,0%,8%,.1)}.light .bar .band{background:hsla(0,0%,8%,.09)}.light .health-row .sw{box-shadow:none}.light .species-head{background:hsla(0,0%,8%,.03)}.light .species-head:hover{background:hsla(0,0%,8%,.06)}.light .scenario{background:hsla(0,0%,8%,.025)}.light .scenario:hover{background:hsla(0,0%,8%,.06);border-color:hsla(0,0%,8%,.18)}.light .toggle-pill{background:hsla(0,0%,8%,.04)}.light .toggle-pill.on{border-color:rgba(244,35,36,.55);background:rgba(244,35,36,.1);color:#c22014}.light .spawn-chip:hover{background:hsla(0,0%,8%,.06)}.light .rightSlot ::-webkit-scrollbar-thumb{background:hsla(0,0%,8%,.18)}.light .winVeil{background:hsla(41,42%,93%,.88)}html.vibrant{--bg:#14102e;--bg-deep:#0b0920;--panel:hsla(0,0%,100%,.05);--panel-strong:hsla(0,0%,100%,.09);--panel-border:hsla(0,0%,100%,.12);--panel-border-soft:hsla(0,0%,100%,.07);--text:#f6f5ff;--text-muted:#9d97c4;--text-dim:#6f6a99;--red:#ff2e63;--good:#2de29b;--warn:#ffb020;--bad:#ff5c5c}.vibrant .backdrop{background:linear-gradient(90deg,rgba(11,9,32,.88) 0,rgba(11,9,32,.55) 22%,rgba(11,9,32,0) 44%),radial-gradient(120% 105% at 62% 46%,transparent 52%,var(--bg-deep) 100%)}.vibrant .pillBtn.accent,.vibrant .pillBtn.accent:hover,.vibrant .pillBtn.solid,.vibrant .pillBtn.solid:hover,.vibrant .seg button.on,.vibrant .seg button.on:hover{background:linear-gradient(135deg,#ff5e3a,#ff2e63);border-color:transparent;color:#fff}.vibrant .dayTrack>span{background:linear-gradient(90deg,#ff5e3a,#ff2e63)}.vibrant .winVeil{background:rgba(11,9,32,.8)}html.moebius{--bg:#d8e4da;--bg-deep:#bccfc2;--panel:hsla(51,54%,97%,.86);--panel-strong:#fbfaf3;--panel-border:rgba(29,58,58,.16);--panel-border-soft:rgba(29,58,58,.09);--text:#1d3a3a;--text-muted:#56716c;--text-dim:#82988f;--red:#e35b2f;--good:#2c8c7a;--warn:#c07f24;--bad:#c74e33}.moebius .backdrop{background:linear-gradient(90deg,rgba(216,228,218,.92),rgba(216,228,218,.55) 22%,rgba(216,228,218,0) 44%),radial-gradient(120% 105% at 62% 46%,transparent 55%,rgba(157,180,164,.55) 100%)}.moebius .winVeil{background:rgba(216,228,218,.88)}html.ghibli{--bg:#9fcfe2;--bg-deep:#7db6cf;--panel:rgba(255,251,238,.9);--panel-strong:#fffbee;--panel-border:rgba(47,42,36,.15);--panel-border-soft:rgba(47,42,36,.08);--text:#2f2a22;--text-muted:#6a655a;--text-dim:#93917e;--red:#d8442e;--good:#3a9e4d;--warn:#c98a1b;--bad:#cf3f2c}.ghibli .backdrop{background:linear-gradient(90deg,rgba(159,207,226,.9),rgba(159,207,226,.5) 22%,rgba(159,207,226,0) 44%),radial-gradient(120% 105% at 62% 46%,transparent 55%,rgba(94,158,183,.55) 100%)}.ghibli .winVeil{background:rgba(255,251,238,.85)}html.lagoon{--bg:#f4efe4;--bg-deep:#e7dfcd;--good:#12a06b;--warn:#e8960c;--bad:#e2452c}.lagoon .backdrop{background:linear-gradient(90deg,hsla(41,42%,93%,.92),hsla(41,42%,93%,.55) 22%,hsla(41,42%,93%,0) 44%),radial-gradient(120% 105% at 62% 46%,transparent 55%,rgba(150,196,184,.5) 100%)}html.riviera{--bg:#f4efe4;--bg-deep:#e7dfcd;--red:#e63e1c;--good:#0e9594;--warn:#d98d0b;--bad:#cc3352}.riviera .backdrop{background:linear-gradient(90deg,hsla(41,42%,93%,.92),hsla(41,42%,93%,.55) 22%,hsla(41,42%,93%,0) 44%),radial-gradient(120% 105% at 62% 46%,transparent 55%,rgba(142,190,176,.5) 100%)}