@font-face{font-family:Inter Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/assets/inter-cyrillic-ext-wght-normal-BOeWTOD4.woff2)format("woff2-variations");unicode-range:U+460-52F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:Inter Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/assets/inter-cyrillic-wght-normal-DqGufNeO.woff2)format("woff2-variations");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:Inter Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/assets/inter-greek-ext-wght-normal-DlzME5K_.woff2)format("woff2-variations");unicode-range:U+1F??}@font-face{font-family:Inter Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/assets/inter-greek-wght-normal-CkhJZR-_.woff2)format("woff2-variations");unicode-range:U+370-377,U+37A-37F,U+384-38A,U+38C,U+38E-3A1,U+3A3-3FF}@font-face{font-family:Inter Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/assets/inter-vietnamese-wght-normal-CBcvBZtf.woff2)format("woff2-variations");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Inter Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/assets/inter-latin-ext-wght-normal-DO1Apj_S.woff2)format("woff2-variations");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Inter Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/assets/inter-latin-wght-normal-Dx4kXJAl.woff2)format("woff2-variations");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Fraunces Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/assets/fraunces-vietnamese-wght-normal-CnvboYUG.woff2)format("woff2-variations");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Fraunces Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/assets/fraunces-latin-ext-wght-normal-Ca2vKHc0.woff2)format("woff2-variations");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Fraunces Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/assets/fraunces-latin-wght-normal-ukD16Tqj.woff2)format("woff2-variations");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}:root{--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;--font-display:"Fraunces Variable", Georgia, serif;--font-ui:"Inter Variable", system-ui, -apple-system, "Segoe UI", sans-serif;--bg:#07060f;--surface:#110f21bd;--surface-strong:#131125f0;--surface-raised:#ffffff0e;--line:#ffffff1c;--line-strong:#ffffff38;--text:#f3efe4;--text-muted:#aca7bd;--text-faint:#7f7a92;--accent:#e8c67c;--accent-ink:#1a1405;--accent-soft:#e8c67c24;--accent-2:#a597ff;--good:#86dcae;--warn:#efbb62;--bad:#ef8474;--radius-s:8px;--radius-m:14px;--radius-l:22px;--blur:blur(18px) saturate(1.25);--shadow:0 18px 50px #00000073;--space-1:4px;--space-2:8px;--space-3:12px;--space-4:16px;--space-5:24px;--space-6:36px;--text-xs:.75rem;--text-s:.8125rem;--text-m:.9375rem;--text-l:1.125rem;--text-xl:1.5rem;--text-hero:clamp(2.6rem, 11vw, 5rem);--tap:44px;--tabbar-h:62px;--dock-w:420px;--ease:cubic-bezier(.22, .8, .26, 1);--dur:.24s;--safe-top:env(safe-area-inset-top,0px);--safe-bottom:env(safe-area-inset-bottom,0px);--safe-left:env(safe-area-inset-left,0px);--safe-right:env(safe-area-inset-right,0px)}:root[data-act="2"]{--bg:#03141a;--surface-opaque:#041a20;--surface:#061c23bd;--surface-strong:#061e25f2;--text:#eef5ef;--text-muted:#9fbcbc;--text-faint:#6f9093;--accent:#5fdccd;--accent-ink:#03201d;--accent-soft:#5fdccd24;--accent-2:#f3a163}@media (prefers-reduced-motion:reduce){:root{--dur:1ms}}:root{--text-2xs:.6875rem;--text-3xs:.625rem;--tracking-wide:.15em;--tracking-wordmark:.32em;--line-tight:1.18;--line-body:1.55;--stroke:1px;--stroke-thick:2px;--hud-h:52px;--queue-h:60px;--chip-min-w:112px;--goal-max:470px;--crisis-max:470px;--toast-max:480px;--sheet-max:70vh;--sheet-w:640px;--modal-w:620px;--settings-w:560px;--title-content-w:760px;--card-thumb:68px;--lens:clamp(190px, 58vw, 300px);--sheet-handle-w:44px;--sheet-handle-h:4px;--progress-h:4px;--dock-pad:var(--space-4);--z-world:0;--z-stage:1;--z-ui:10;--z-goal:18;--z-queue:20;--z-tabbar:21;--z-sheet:40;--z-toast:60;--z-choice:80;--z-acttitle:90;--scrim:#04030ab8;--scrim-strong:#04030af0;--surface-deep:#090814e6;--surface-opaque:#100e20;--line-soft:#ffffff0f;--shadow-s:0 6px 18px #00000052;--dur-fast:.14s;--dur-slow:.52s;--icon-xs:14px;--icon-s:18px;--icon-m:24px;--icon-l:36px;--radius-pill:999px;--bad-ink:#2a0b05;--dock-progress-w:140px;--modal-wide:780px;--queue-slot-w:172px;--seed-w:320px;--crisis-max-h:46vh;--modal-max-h:86vh;--action-min:118px;--choice-max:960px;--choice-two-col:720px;--duration-pulse:2.4s;--blur-soft:blur(6px)}*,:before,:after{box-sizing:border-box}html,body,#app{height:100%;margin:0}html{background:var(--bg);-webkit-text-size-adjust:100%}body{background:var(--bg);color:var(--text);font-family:var(--font-ui);font-size:var(--text-m);line-height:var(--line-body);-webkit-font-smoothing:antialiased;overscroll-behavior:none;overflow:hidden}button,input,textarea,select{font:inherit;color:inherit}button{cursor:pointer;background:0 0;border:0;margin:0;padding:0}button:disabled{cursor:not-allowed}h1,h2,h3,h4,p,ul,ol{margin:0}ul,ol{padding:0;list-style:none}img{max-width:100%;display:block}:focus-visible{outline:var(--stroke-thick) solid var(--accent);outline-offset:var(--space-1)}::selection{background:var(--accent-soft);color:var(--text)}.muted{color:var(--text-muted)}.small{font-size:var(--text-s);line-height:var(--line-body)}.eyebrow{color:var(--text-faint);font-size:var(--text-2xs);letter-spacing:var(--tracking-wide);text-transform:uppercase;font-weight:600;display:inline-block}.icon{width:var(--icon-m);height:var(--icon-m);flex:none;display:block}.sr-only{width:var(--stroke);height:var(--stroke);margin:calc(var(--space-1) * -1);clip:rect(0, 0, 0, 0);white-space:nowrap;border:0;padding:0;position:absolute;overflow:hidden}.btn{justify-content:center;align-items:center;gap:var(--space-2);min-height:var(--tap);padding:0 var(--space-4);border:var(--stroke) solid var(--line);border-radius:var(--radius-m);background:var(--surface-raised);color:var(--text);font-size:var(--text-m);font-weight:500;line-height:var(--line-tight);text-align:center;transition:background var(--dur) var(--ease), border-color var(--dur) var(--ease), color var(--dur) var(--ease), opacity var(--dur) var(--ease);display:inline-flex}.btn .icon{width:var(--icon-s);height:var(--icon-s)}.btn:hover:not(:disabled){border-color:var(--line-strong);background:color-mix(in srgb, var(--text) 9%, transparent)}.btn--primary{background:var(--accent);color:var(--accent-ink);border-color:#0000;font-weight:600}.btn--primary:hover:not(:disabled){background:color-mix(in srgb, var(--accent) 88%, var(--text))}.btn--primary:disabled{border-color:var(--line);background:var(--surface-raised);color:var(--text-faint)}.btn--ghost{background:0 0}.btn--quiet{color:var(--text-muted);background:0 0;border-color:#0000}.btn--danger{background:var(--bad);color:var(--bad-ink);border-color:#0000;font-weight:600}.btn--small{min-height:var(--tap);padding:0 var(--space-3);font-size:var(--text-s)}.btn--grow{flex:1 1 var(--action-min)}.btn--wide{width:100%}.icon-btn{width:var(--tap);height:var(--tap);border:var(--stroke) solid transparent;border-radius:var(--radius-s);color:var(--text-muted);transition:background var(--dur) var(--ease), color var(--dur) var(--ease);place-items:center;display:grid}.icon-btn:hover{background:var(--surface-raised);color:var(--text)}.icon-btn .icon{width:var(--icon-m);height:var(--icon-m)}.icon-btn:disabled{opacity:.45}.pill{align-items:center;gap:var(--space-1);padding:var(--space-1) var(--space-2);border:var(--stroke) solid var(--line);border-radius:var(--radius-pill);color:var(--text-muted);font-size:var(--text-2xs);line-height:var(--line-tight);white-space:nowrap;display:inline-flex}.pill--accent{border-color:color-mix(in srgb, var(--accent) 38%, transparent);background:var(--accent-soft);color:var(--accent)}.pill--good{border-color:color-mix(in srgb, var(--good) 38%, transparent);color:var(--good)}.pill--warn{border-color:color-mix(in srgb, var(--warn) 38%, transparent);color:var(--warn)}.pill--bad{border-color:color-mix(in srgb, var(--bad) 38%, transparent);color:var(--bad)}.pill--muted{color:var(--text-faint)}.progress{width:100%;height:var(--progress-h);border-radius:var(--radius-pill);background:var(--line-soft);position:relative;overflow:hidden}.progress__fill{border-radius:inherit;background:var(--accent);height:100%;transition:width var(--dur) linear;display:block}.segmented{padding:var(--space-1);border:var(--stroke) solid var(--line);border-radius:var(--radius-m);background:var(--surface);display:inline-flex}.segmented__option{min-width:var(--tap);min-height:var(--tap);padding:0 var(--space-3);border-radius:var(--radius-s);color:var(--text-muted);font-size:var(--text-s);transition:background var(--dur) var(--ease), color var(--dur) var(--ease)}.segmented__option.is-active{background:var(--accent-soft);color:var(--accent)}.switch{align-items:center;gap:var(--space-2);min-height:var(--tap);color:var(--text-muted);display:inline-flex}.switch__track{width:calc(var(--tap) - var(--space-2));height:calc(var(--space-5) + var(--space-1));border:var(--stroke) solid var(--line-strong);border-radius:var(--radius-pill);background:var(--line-soft);transition:background var(--dur) var(--ease), border-color var(--dur) var(--ease);display:block;position:relative}.switch__thumb{top:var(--space-1);left:var(--space-1);width:calc(var(--space-4) + var(--space-1));height:calc(var(--space-4) + var(--space-1));background:var(--text-muted);transition:transform var(--dur) var(--ease), background var(--dur) var(--ease);border-radius:50%;position:absolute}.switch.is-on .switch__track{border-color:color-mix(in srgb, var(--good) 42%, transparent);background:color-mix(in srgb, var(--good) 20%, transparent)}.switch.is-on .switch__thumb{transform:translateX(calc(var(--space-5) - var(--space-2)));background:var(--good)}.switch.is-off{color:var(--text-faint)}.switch__label{font-size:var(--text-s)}.text-link{min-height:var(--tap);color:var(--accent-2);font-size:inherit;text-align:left;text-decoration:underline;-webkit-text-decoration-color:color-mix(in srgb, var(--accent-2) 45%, transparent);text-decoration-color:color-mix(in srgb, var(--accent-2) 45%, transparent);text-underline-offset:var(--space-1);align-items:center;padding:0;display:inline-flex}.app{background:var(--bg);position:fixed;inset:0;overflow:hidden}.loading,.title{background-color:var(--bg);background-position:50%;background-size:cover;position:absolute;inset:0}.loading{justify-content:center;align-items:center;gap:var(--space-3);flex-direction:column;display:flex}.loading__veil,.title__veil{background:radial-gradient(circle at 50% 46%, transparent 0%, var(--scrim) 72%, var(--scrim-strong) 100%), linear-gradient(to top, var(--bg) 0%, transparent 45%);position:absolute;inset:0}.loading__word{color:var(--text);font-family:var(--font-display);font-size:var(--text-xl);letter-spacing:var(--tracking-wordmark);position:relative}.loading__line{color:var(--text-muted);font-size:var(--text-s);position:relative}.loading__pulse{width:var(--hud-h);height:var(--stroke-thick);border-radius:var(--radius-pill);background:var(--line-soft);position:relative;overflow:hidden}.loading__pulse:after{content:"";border-radius:inherit;background:var(--accent);width:50%;animation:loadingSlide var(--duration-pulse) var(--ease) infinite;position:absolute;inset:0}@keyframes loadingSlide{0%{transform:translate(-110%)}to{transform:translate(210%)}}.title{isolation:isolate;flex-direction:column;display:flex}.title__content{z-index:1;isolation:isolate;justify-content:center;align-items:center;gap:var(--space-3);padding:calc(var(--safe-top) + var(--space-6)) calc(var(--safe-right) + var(--space-5)) calc(var(--space-6) + var(--safe-bottom)) calc(var(--safe-left) + var(--space-5));text-align:center;flex-direction:column;flex:1;display:flex;position:relative}.title__content:before{content:"";z-index:-1;background:radial-gradient(ellipse at 50% 48%, var(--scrim-strong) 0%, var(--scrim) 38%, transparent 68%);pointer-events:none;position:absolute;inset:0}.title__eyebrow{color:var(--accent);text-shadow:0 0 var(--space-4) var(--scrim-strong)}.title__wordmark{font-family:var(--font-display);font-size:var(--text-hero);font-weight:400;line-height:var(--line-tight);letter-spacing:var(--tracking-wordmark);text-indent:var(--tracking-wordmark);text-shadow:0 0 var(--space-6) var(--scrim)}.title__tagline{max-width:var(--title-content-w);font-family:var(--font-display);font-size:var(--text-l);font-style:italic;line-height:var(--line-body);color:var(--text);text-shadow:0 0 var(--space-5) var(--scrim-strong)}.title__sub{max-width:var(--goal-max);color:var(--text-muted);font-size:var(--text-s);text-shadow:0 0 var(--space-4) var(--scrim-strong)}.title__actions{justify-content:center;align-items:center;gap:var(--space-3);margin-top:var(--space-4);flex-wrap:wrap;display:flex}.title__start{min-width:calc(var(--tap) * 4)}.title__lang{background:var(--scrim)}.title__footer{z-index:1;justify-content:space-between;gap:var(--space-2);padding:var(--space-3) calc(var(--safe-right) + var(--space-4)) calc(var(--safe-bottom) + var(--space-4)) calc(var(--safe-left) + var(--space-4));color:var(--text-faint);font-size:var(--text-2xs);flex-wrap:wrap;display:flex;position:relative}.world-stage{background:var(--bg);position:absolute;inset:0;overflow:hidden}.world-fallback{background-color:var(--bg);filter:saturate(.9)contrast(1.02);background-position:50%;background-size:cover;position:absolute;inset:0}.world-fallback[data-act="2"]{background-color:var(--bg);background-image:radial-gradient(ellipse at 50% 26%, color-mix(in srgb, var(--accent) 16%, transparent), transparent 58%), radial-gradient(ellipse at 50% 82%, color-mix(in srgb, var(--accent-2) 10%, transparent), transparent 62%)}.world-fallback:after{content:"";background:radial-gradient(circle at 52% 42%, transparent 0%, var(--bg) 88%), linear-gradient(to top, var(--bg) 0%, transparent 40%);position:absolute;inset:0}.world-host{mix-blend-mode:screen;opacity:0;transition:opacity var(--dur-slow) var(--ease);position:absolute;inset:0}.world-host.is-ready{opacity:1}.world-host canvas{display:block}.world-vignette{pointer-events:none;background:linear-gradient(to bottom, var(--scrim) 0%, transparent 22%, transparent 64%, var(--scrim-strong) 100%);position:absolute;inset:0}.hud{z-index:var(--z-ui);top:calc(var(--safe-top) + var(--space-1));left:calc(var(--safe-left) + var(--space-1));right:calc(var(--safe-right) + var(--space-1));pointer-events:none;transition:opacity var(--dur-slow) var(--ease);position:fixed}.hud__scroll{gap:var(--space-2);padding:var(--space-1) var(--space-1) var(--space-2);overscroll-behavior-x:contain;scrollbar-width:none;pointer-events:auto;display:flex;overflow-x:auto}.hud__scroll::-webkit-scrollbar{display:none}.chip{align-items:center;gap:var(--space-2);min-width:var(--chip-min-w);min-height:var(--tap);padding:var(--space-1) var(--space-3);border:var(--stroke) solid var(--line);border-radius:var(--radius-m);background:var(--surface);box-shadow:var(--shadow-s);-webkit-backdrop-filter:var(--blur);backdrop-filter:var(--blur);transition:border-color var(--dur) var(--ease), background var(--dur) var(--ease);flex:none;display:flex}.chip:hover{border-color:var(--line-strong);background:var(--surface-strong)}.chip__icon{width:var(--icon-s);height:var(--icon-s);color:var(--accent)}.chip__body{min-width:0;line-height:var(--line-tight);flex-direction:column;align-items:flex-start;display:flex}.chip__value{font-size:var(--text-s);white-space:nowrap;font-weight:600}.chip__rate{color:var(--text-muted);font-size:var(--text-2xs);white-space:nowrap}.chip__rate.is-negative{color:var(--bad)}.queue-wrap{z-index:var(--z-queue);right:0;bottom:calc(var(--tabbar-h) + var(--safe-bottom));padding:var(--space-1) calc(var(--safe-right) + var(--space-1)) var(--space-1) calc(var(--safe-left) + var(--space-1));border-top:var(--stroke) solid var(--line);background:color-mix(in srgb, var(--surface-strong) 96%, transparent);-webkit-backdrop-filter:var(--blur);backdrop-filter:var(--blur);transition:opacity var(--dur-slow) var(--ease);position:fixed;left:0}.queue{width:100%}.queue--dock{padding:var(--space-2) var(--space-3) var(--space-3);border-bottom:var(--stroke) solid var(--line);background:color-mix(in srgb, var(--surface-strong) 85%, transparent);flex:none}.queue__scroll{gap:var(--space-2);overscroll-behavior-x:contain;scrollbar-width:none;display:flex;overflow-x:auto}.queue__scroll::-webkit-scrollbar{display:none}.queue--dock .queue__scroll{gap:var(--space-2);grid-template-columns:repeat(2,minmax(0,1fr));display:grid;overflow:visible}.queue-slot{justify-content:center;gap:var(--space-1);width:var(--queue-slot-w);max-width:var(--queue-slot-w);min-width:0;min-height:var(--tap);padding:var(--space-1) var(--space-2);border:var(--stroke) solid var(--line);border-radius:var(--radius-s);background:var(--surface-raised);text-align:left;transition:border-color var(--dur) var(--ease), background var(--dur) var(--ease);flex-direction:column;flex:1 1 0;display:flex;position:relative}.queue--dock .queue-slot{flex:none;width:auto;max-width:none}.queue-slot:hover{border-color:var(--line-strong);background:color-mix(in srgb, var(--text) 7%, transparent)}.queue-slot__top{align-items:center;gap:var(--space-1);min-width:0;color:var(--text);font-size:var(--text-2xs);line-height:var(--line-tight);display:flex}.queue-slot__icon{width:var(--icon-xs);height:var(--icon-xs);color:var(--accent)}.queue-slot__title{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.queue-slot__meta{justify-content:space-between;align-items:center;gap:var(--space-2);color:var(--text-faint);font-size:var(--text-2xs);display:flex}.queue-slot__pct{color:var(--text-muted)}.queue-slot--empty{border-style:dashed;border-color:color-mix(in srgb, var(--accent) 32%, var(--line));background:color-mix(in srgb, var(--accent) 5%, transparent);color:var(--accent);text-align:center;align-items:center}.queue-slot--empty:hover{border-color:var(--accent);background:var(--accent-soft)}.queue-slot__plus{width:var(--icon-s);height:var(--icon-s)}.queue-slot__empty-label{max-width:100%;font-size:var(--text-2xs);font-weight:600;line-height:var(--line-tight);text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.queue-slot__hint{max-width:100%;color:var(--text-faint);font-size:var(--text-2xs);line-height:var(--line-tight);text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.queue--compact .queue-slot__title,.queue--compact .queue-slot__hint,.queue--compact .queue-slot__empty-label{display:none}.queue--compact .queue-slot__top{justify-content:center}.queue--compact .queue-slot__icon{width:var(--icon-m);height:var(--icon-m)}.queue-slot.is-upgrade .queue-slot__icon,.queue-slot.is-research .queue-slot__icon{color:var(--accent-2)}.tabbar{z-index:var(--z-tabbar);height:calc(var(--tabbar-h) + var(--safe-bottom));padding-bottom:var(--safe-bottom);border-top:var(--stroke) solid var(--line);background:color-mix(in srgb, var(--surface-strong) 97%, transparent);-webkit-backdrop-filter:var(--blur);backdrop-filter:var(--blur);transition:opacity var(--dur-slow) var(--ease);position:fixed;bottom:0;left:0;right:0}.tabbar__inner{height:var(--tabbar-h);grid-template-columns:repeat(6,minmax(0,1fr));display:grid}.tab{min-width:0;min-height:var(--tap);justify-content:center;align-items:center;gap:var(--space-1);color:var(--text-muted);transition:color var(--dur) var(--ease), background var(--dur) var(--ease);flex-direction:column;display:flex}.tab:hover{color:var(--text)}.tab.is-active{background:var(--accent-soft);color:var(--accent)}.tab.is-active .tab__label{color:var(--accent)}.tab--settings.is-active{background:color-mix(in srgb, var(--accent-2) 12%, transparent);color:var(--accent-2)}.tab .icon{width:var(--icon-m);height:var(--icon-m)}.tab__label{max-width:100%;padding:0 var(--space-1);font-size:var(--text-3xs);text-overflow:ellipsis;white-space:nowrap;line-height:1;overflow:hidden}.tab--settings .tab__label{display:none}.tab.is-tutorial-pulse .icon{color:var(--accent);animation:gentlePulse var(--duration-pulse) var(--ease) infinite}@keyframes gentlePulse{0%,to{filter:drop-shadow(0 0 #0000);transform:translateY(0)}50%{filter:drop-shadow(0 0 var(--space-2) var(--accent));transform:translateY(calc(var(--stroke) * -2))}}.dock{z-index:var(--z-ui);width:var(--dock-w);border-left:var(--stroke) solid var(--line);background:color-mix(in srgb, var(--surface-strong) 97%, transparent);box-shadow:var(--shadow);-webkit-backdrop-filter:var(--blur);backdrop-filter:var(--blur);transition:opacity var(--dur-slow) var(--ease);flex-direction:column;display:flex;position:fixed;top:0;bottom:0;right:0}.dock-head{justify-content:space-between;align-items:flex-start;gap:var(--space-2);padding:var(--space-3) var(--space-4) var(--space-2);border-bottom:var(--stroke) solid var(--line-soft);display:flex}.dock-head__text{min-width:0}.dock-head h1{font-family:var(--font-display);font-size:var(--text-xl);font-weight:500;line-height:var(--line-tight);letter-spacing:var(--tracking-wide)}.dock-head__progress{width:var(--dock-progress-w);margin-top:var(--space-2)}.dock-tabs{border-bottom:var(--stroke) solid var(--line);grid-template-columns:repeat(5,minmax(0,1fr));display:grid}.dock-tab{min-width:0;min-height:var(--tap);justify-content:center;align-items:center;gap:var(--space-1);padding:var(--space-1) 0;color:var(--text-muted);font-size:var(--text-2xs);transition:color var(--dur) var(--ease), background var(--dur) var(--ease);flex-direction:column;display:flex}.dock-tab .icon{width:var(--icon-s);height:var(--icon-s)}.dock-tab:hover{color:var(--text)}.dock-tab.is-active{background:var(--accent-soft);color:var(--accent)}.dock__content{overscroll-behavior:contain;padding-bottom:var(--space-6);flex:1;overflow-y:auto}.goal{z-index:var(--z-goal);right:calc(var(--safe-right) + var(--space-2));bottom:calc(var(--tabbar-h) + var(--queue-h) + var(--safe-bottom) + var(--space-2));left:calc(var(--safe-left) + var(--space-2));max-width:var(--goal-max);gap:var(--space-1);transition:opacity var(--dur-slow) var(--ease);flex-direction:column;display:flex;position:fixed}.goal__main{min-height:var(--tap);align-items:center;gap:var(--space-1) var(--space-2);padding:var(--space-2) var(--space-3);border:var(--stroke) solid var(--line);border-radius:var(--radius-m);background:var(--surface);box-shadow:var(--shadow-s);-webkit-backdrop-filter:var(--blur);backdrop-filter:var(--blur);flex-wrap:wrap;display:flex}.goal__label{color:var(--text-faint);font-size:var(--text-2xs);letter-spacing:var(--tracking-wide);text-transform:uppercase;flex:none;font-weight:600}.goal__title{font-family:var(--font-display);font-size:var(--text-m);font-weight:600;line-height:var(--line-tight);flex:none}.goal__hint{min-width:0;color:var(--text-muted);font-size:var(--text-s);line-height:var(--line-tight);text-overflow:ellipsis;white-space:nowrap;flex:100%;overflow:hidden}.goal__action{min-height:var(--tap);padding:0 var(--space-3);border:var(--stroke) solid transparent;border-radius:var(--radius-s);color:var(--accent);font-size:var(--text-s);text-underline-offset:var(--space-1);text-decoration:underline}.goal__action--primary{border-radius:var(--radius-m);background:var(--accent);color:var(--accent-ink);border-color:#0000;font-weight:600;text-decoration:none}.goal__starved{min-height:var(--tap);align-items:flex-start;gap:var(--space-2);padding:var(--space-2) var(--space-3);border:var(--stroke) solid color-mix(in srgb, var(--warn) 32%, transparent);border-radius:var(--radius-m);background:color-mix(in srgb, var(--warn) 10%, var(--surface));color:var(--text);font-size:var(--text-s);line-height:var(--line-tight);text-align:left;display:flex}.goal__starved .icon{width:var(--icon-s);height:var(--icon-s);margin-top:var(--space-1);color:var(--warn)}.goal--tutorial .goal__main{border-color:color-mix(in srgb, var(--accent) 42%, var(--line));box-shadow:var(--shadow-s), 0 0 var(--space-4) color-mix(in srgb, var(--accent) 20%, transparent)}.seed-pill{z-index:var(--z-ui);top:calc(var(--safe-top) + var(--hud-h) + var(--space-2));right:calc(var(--safe-right) + var(--space-2));max-width:min(92vw, var(--seed-w));min-height:var(--tap);align-items:center;gap:var(--space-2);padding:0 var(--space-3);border:var(--stroke) solid color-mix(in srgb, var(--accent-2) 32%, var(--line));border-radius:var(--radius-pill);background:var(--surface);color:var(--text);font-size:var(--text-s);box-shadow:var(--shadow-s);-webkit-backdrop-filter:var(--blur);backdrop-filter:var(--blur);transition:opacity var(--dur-slow) var(--ease);display:flex;position:fixed}.seed-pill .icon{width:var(--icon-s);height:var(--icon-s);color:var(--accent-2)}.seed-pill span{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.seed-pill__chevron{color:var(--text-faint)}.crisis{z-index:var(--z-ui);top:calc(var(--safe-top) + var(--hud-h) + var(--space-2));left:calc(var(--safe-left) + var(--space-2));right:calc(var(--safe-right) + var(--space-2));max-width:var(--crisis-max);max-height:var(--crisis-max-h);gap:var(--space-2);padding:var(--space-3);border:var(--stroke) solid color-mix(in srgb, var(--warn) 38%, transparent);border-radius:var(--radius-l);background:var(--surface-strong);box-shadow:var(--shadow);-webkit-backdrop-filter:var(--blur);backdrop-filter:var(--blur);transition:opacity var(--dur-slow) var(--ease);flex-direction:column;display:flex;position:fixed;overflow-y:auto}.crisis__head{align-items:center;gap:var(--space-1);color:var(--warn);font-size:var(--text-2xs);letter-spacing:var(--tracking-wide);text-transform:uppercase;font-weight:600;display:flex}.crisis__head .icon{width:var(--icon-s);height:var(--icon-s)}.crisis h2{font-family:var(--font-display);font-size:var(--text-l);font-weight:500;line-height:var(--line-tight)}.crisis__desc{color:var(--text-muted);font-size:var(--text-s)}.crisis__block h3{margin-bottom:var(--space-1);color:var(--text-faint);font-size:var(--text-2xs);letter-spacing:var(--tracking-wide);text-transform:uppercase}.crisis__block p{color:var(--text);font-size:var(--text-s);line-height:var(--line-body)}.crisis__links{gap:var(--space-1);margin-top:var(--space-2);flex-wrap:wrap;display:flex}.sheet-layer{z-index:var(--z-sheet);pointer-events:none;position:fixed;inset:0}.sheet-backdrop{inset:0 0 calc(var(--tabbar-h) + var(--queue-h) + var(--safe-bottom)) 0;background:var(--scrim);animation:fadeIn var(--dur) var(--ease);pointer-events:auto;position:absolute}.sheet{right:0;bottom:calc(var(--tabbar-h) + var(--queue-h) + var(--safe-bottom));max-height:var(--sheet-max);border-top:var(--stroke) solid var(--line-strong);border-radius:var(--radius-l) var(--radius-l) 0 0;background:var(--surface-opaque);box-shadow:var(--shadow);animation:sheetUp var(--dur) var(--ease);touch-action:pan-y;pointer-events:auto;flex-direction:column;display:flex;position:absolute;left:0}@keyframes sheetUp{0%{transform:translateY(100%)}to{transform:translateY(0)}}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}.sheet__handle{height:var(--space-5);touch-action:none;flex:none;justify-content:center;align-items:center;display:flex}.sheet__grip{width:var(--sheet-handle-w);height:var(--sheet-handle-h);border-radius:var(--radius-pill);background:var(--line-strong);display:block}.sheet__head{justify-content:space-between;align-items:flex-start;gap:var(--space-2);padding:0 var(--space-4) var(--space-2);border-bottom:var(--stroke) solid var(--line-soft);flex:none;display:flex}.sheet__heading{min-width:0}.sheet__heading h2{font-family:var(--font-display);font-size:var(--text-xl);font-weight:500;line-height:var(--line-tight)}.sheet__heading p{color:var(--text-faint);font-size:var(--text-2xs);letter-spacing:var(--tracking-wide);text-transform:uppercase}.sheet__body{overscroll-behavior:contain;padding:var(--space-3) calc(var(--safe-right) + var(--space-4)) calc(var(--space-4) + var(--safe-bottom)) calc(var(--safe-left) + var(--space-4));flex:1;overflow-y:auto}.sheet__body .panel{padding:0}.sheet__body .panel__head{display:none}.panel{padding:var(--space-3) var(--space-4) var(--space-5)}.panel__head{justify-content:space-between;align-items:baseline;gap:var(--space-2);padding:var(--space-2) 0 var(--space-3);display:flex}.panel__head h2{font-family:var(--font-display);font-size:var(--text-xl);font-weight:500;line-height:var(--line-tight)}.panel__aside{color:var(--text-faint);font-size:var(--text-2xs);white-space:nowrap}.panel__body{gap:var(--space-5);flex-direction:column;display:flex}.eco-section{gap:var(--space-2);flex-direction:column;display:flex}.eco-section__title{color:var(--text-faint);font-size:var(--text-2xs);letter-spacing:var(--tracking-wide);text-transform:uppercase;font-weight:600}.effect-list{gap:var(--space-1);color:var(--text-muted);font-size:var(--text-s);flex-direction:column;display:flex}.effect-list li:before{content:"·";margin-right:var(--space-2);color:var(--accent)}.build-group{gap:var(--space-2);flex-direction:column;display:flex}.build-group__title{color:var(--text-faint);font-size:var(--text-2xs);letter-spacing:var(--tracking-wide);text-transform:uppercase;font-weight:600}.card-list{gap:var(--space-3);flex-direction:column;display:flex}.build-card{gap:var(--space-3);padding:var(--space-3);border:var(--stroke) solid var(--line);border-radius:var(--radius-m);background:var(--surface);box-shadow:var(--shadow-s);transition:border-color var(--dur) var(--ease), background var(--dur) var(--ease);flex-direction:column;display:flex;position:relative}.build-card.is-paused{border-color:color-mix(in srgb, var(--accent-2) 32%, var(--line));background:color-mix(in srgb, var(--accent-2) 6%, var(--surface))}.build-card.is-first-card{border-color:color-mix(in srgb, var(--accent) 38%, var(--line))}.build-card.is-first-card:after{content:"";inset:calc(var(--stroke) * -1);border:var(--stroke) solid color-mix(in srgb, var(--accent) 32%, transparent);border-radius:inherit;pointer-events:none;animation:calmOutline var(--duration-pulse) var(--ease) infinite;position:absolute}@keyframes calmOutline{0%,to{opacity:0}50%{opacity:1}}.build-card__head{align-items:flex-start;gap:var(--space-3);display:flex}.thumb{width:var(--card-thumb);height:var(--card-thumb);border:var(--stroke) solid var(--line);border-radius:var(--radius-s);background:radial-gradient(circle at 50% 38%, color-mix(in srgb, var(--accent-2) 22%, transparent), transparent 68%), var(--surface-raised);color:var(--accent);flex:none;place-items:center;display:grid;overflow:hidden}.thumb img{object-fit:cover;width:100%;height:100%}.thumb__fallback .icon{width:var(--icon-m);height:var(--icon-m);opacity:.75}.thumb--small{width:var(--tap);height:var(--tap)}.build-card__identity{gap:var(--space-1);flex-direction:column;flex:1;min-width:0;display:flex}.build-card__name{min-height:var(--tap);color:var(--text);font-family:var(--font-display);font-size:var(--text-l);font-weight:500;line-height:var(--line-tight);text-align:left;align-self:flex-start;align-items:center;display:flex}.build-card__name:hover{color:var(--accent)}.build-card__desc{color:var(--text-muted);font-size:var(--text-s);line-height:var(--line-body)}.build-card__badges{align-items:center;gap:var(--space-1);flex-wrap:wrap;display:flex}.badge{align-items:center;gap:var(--space-1);color:var(--text-faint);font-size:var(--text-2xs);line-height:var(--line-tight);display:inline-flex}.badge--level{gap:var(--space-2);padding-left:var(--space-2);border-left:var(--stroke) solid var(--line)}.pips{gap:var(--space-1);display:inline-flex}.pip{width:var(--space-2);height:var(--space-2);border:var(--stroke) solid var(--line-strong);background:0 0;border-radius:50%}.pip.is-filled{border-color:var(--accent);background:var(--accent)}.pause-toggle{width:var(--tap);height:var(--tap);border:var(--stroke) solid var(--line);border-radius:var(--radius-s);color:var(--text-muted);flex:none;place-items:center;display:grid}.pause-toggle.is-paused{border-color:color-mix(in srgb, var(--accent-2) 38%, transparent);background:color-mix(in srgb, var(--accent-2) 10%, transparent);color:var(--accent-2)}.flow{gap:var(--space-3);flex-wrap:wrap;display:flex}.flow__group{gap:var(--space-1);flex-direction:column;min-width:0;display:flex}.flow__label{color:var(--text-faint);font-size:var(--text-2xs);letter-spacing:var(--tracking-wide);text-transform:uppercase;font-weight:600}.flow__per{margin-left:var(--space-1);color:var(--text-faint);letter-spacing:0;text-transform:none;font-weight:400}.flow__line{align-items:center;gap:var(--space-1);font-size:var(--text-s);white-space:nowrap;display:flex}.flow__line .icon{width:var(--icon-xs);height:var(--icon-xs);color:var(--accent-2)}.flow__name{color:var(--text-muted)}.flow__empty{color:var(--text-faint);font-size:var(--text-s)}.build-card__data{justify-content:space-between;align-items:center;gap:var(--space-2);flex-wrap:wrap;display:flex}.cost{gap:var(--space-1) var(--space-3);flex-wrap:wrap;display:flex}.cost__item{align-items:center;gap:var(--space-1);color:var(--text-muted);font-size:var(--text-s);white-space:nowrap;display:inline-flex}.cost__item .icon{width:var(--icon-xs);height:var(--icon-xs);color:var(--accent-2)}.cost__item.is-missing,.cost__item.is-missing .icon{color:var(--bad)}.cost__name{color:var(--text-faint)}.cost__free{color:var(--good);font-size:var(--text-s)}.build-card__time{align-items:center;gap:var(--space-1);color:var(--text-muted);font-size:var(--text-s);white-space:nowrap;display:inline-flex}.build-card__time .icon{width:var(--icon-xs);height:var(--icon-xs)}.build-card__actions{grid-template-columns:repeat(auto-fit, minmax(var(--action-min), 1fr));gap:var(--space-2);align-items:center;display:grid}.build-card__blocked{align-items:flex-start;gap:var(--space-1);color:var(--text-muted);font-size:var(--text-s);line-height:var(--line-tight);display:flex}.build-card__blocked .icon{width:var(--icon-s);height:var(--icon-s);margin-top:var(--space-1);color:var(--warn);flex:none}.build-card__paused-note{color:var(--text-faint);font-size:var(--text-2xs);line-height:var(--line-tight)}.next-unlock{gap:var(--space-1);padding:var(--space-3);border:var(--stroke) dashed var(--line-strong);border-radius:var(--radius-m);background:color-mix(in srgb, var(--text) 3%, transparent);flex-direction:column;display:flex}.next-unlock strong{font-family:var(--font-display);font-size:var(--text-m);font-weight:500}.next-unlock p{color:var(--text-muted);font-size:var(--text-s)}.structure{align-items:stretch;gap:var(--space-4);flex-direction:column;display:flex}.lens{width:var(--lens);height:var(--lens);align-self:center;position:relative}.lens__glass{inset:calc(var(--stroke-thick) * 3);background:radial-gradient(circle at 50% 38%, color-mix(in srgb, var(--accent-2) 16%, transparent), var(--bg) 74%);border-radius:50%;position:absolute;overflow:hidden}.lens__glass img{object-fit:cover;opacity:.94;width:100%;height:100%}.lens--cosmic .lens__glass img{mix-blend-mode:screen}.lens__fallback{color:var(--accent);opacity:.7;place-items:center;display:grid;position:absolute;inset:0}.lens__fallback .icon{width:var(--icon-l);height:var(--icon-l)}.lens__motes{position:absolute;inset:0}.mote{background:var(--accent);opacity:.35;border-radius:50%;animation-name:moteDrift;animation-timing-function:linear;animation-iteration-count:infinite;position:absolute}.lens--cosmic .mote{background:var(--accent-2)}@keyframes moteDrift{0%{opacity:0;transform:translate(0,0)}20%{opacity:.5}80%{opacity:.35}to{opacity:0;transform:translate3d(var(--space-4), calc(var(--space-6) * -1), 0)}}.lens__vignette{background:radial-gradient(circle, transparent 40%, var(--scrim) 82%, var(--scrim-strong) 100%);border-radius:50%;position:absolute;inset:0}.lens__rim{border:var(--stroke-thick) solid color-mix(in srgb, var(--accent) 34%, var(--line-strong));box-shadow:inset 0 0 var(--space-6) var(--scrim), 0 0 var(--space-6) color-mix(in srgb, var(--accent-2) 18%, transparent);border-radius:50%;position:absolute;inset:0}.structure__note{color:var(--text-muted);font-size:var(--text-s);text-align:center}.stat-grid{gap:var(--space-2);grid-template-columns:repeat(2,minmax(0,1fr));display:grid}.stat-grid--three{grid-template-columns:repeat(3,minmax(0,1fr))}.stat{gap:var(--space-1);min-width:0;padding:var(--space-2) var(--space-3);border:var(--stroke) solid var(--line);border-radius:var(--radius-s);background:var(--surface-raised);flex-direction:column;display:flex}.stat__label{color:var(--text-faint);font-size:var(--text-2xs);letter-spacing:var(--tracking-wide);text-transform:uppercase}.stat__value{font-size:var(--text-m);font-weight:600;line-height:var(--line-tight);text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.stat__value.is-muted,.stat__value.is-negative{color:var(--text-muted)}.stat__value.is-negative{color:var(--bad)}.structure__status{align-items:center;gap:var(--space-2);color:var(--text-muted);font-size:var(--text-s);display:flex}.structure__dot{width:var(--space-2);height:var(--space-2);background:var(--good);border-radius:50%}.structure__dot.is-paused{background:var(--accent-2)}.structure__switch{align-items:center;gap:var(--space-2);flex-wrap:wrap;display:flex}.structure__flows{gap:var(--space-5);padding:var(--space-3);border:var(--stroke) solid var(--line);border-radius:var(--radius-s);flex-wrap:wrap;display:flex}.structure__effects,.bottleneck-list,.starved-card{gap:var(--space-2);flex-direction:column;display:flex}.bottleneck{align-items:flex-start;gap:var(--space-2);padding:var(--space-2) var(--space-3);border:var(--stroke) solid color-mix(in srgb, var(--warn) 30%, transparent);border-radius:var(--radius-s);background:color-mix(in srgb, var(--warn) 8%, transparent);color:var(--text);text-align:left;display:flex}.bottleneck .icon{width:var(--icon-s);height:var(--icon-s);margin-top:var(--space-1);color:var(--warn)}.bottleneck__text{font-size:var(--text-s);line-height:var(--line-tight)}.starved-card{padding:var(--space-2) var(--space-3);border:var(--stroke) solid color-mix(in srgb, var(--warn) 26%, transparent);border-radius:var(--radius-s);background:color-mix(in srgb, var(--warn) 6%, transparent)}.starved-card p{color:var(--text-muted);font-size:var(--text-s)}.eco-list{gap:var(--space-1);flex-direction:column;display:flex}.eco-row{align-items:flex-start;gap:var(--space-3);width:100%;padding:var(--space-2) var(--space-2);border:var(--stroke) solid transparent;border-radius:var(--radius-s);color:var(--text);text-align:left;transition:border-color var(--dur) var(--ease), background var(--dur) var(--ease);display:flex}.eco-row:hover{border-color:var(--line);background:var(--surface-raised)}.eco-row__icon{width:var(--icon-s);height:var(--icon-s);margin-top:var(--space-1);color:var(--accent)}.eco-row__main{gap:var(--space-1);flex-direction:column;flex:1;min-width:0;display:flex}.eco-row__top{justify-content:space-between;align-items:baseline;gap:var(--space-2);display:flex}.eco-row__name{font-size:var(--text-m);text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.eco-row__stock{font-size:var(--text-m);font-weight:600}.eco-row__rates{gap:var(--space-1) var(--space-4);flex-wrap:wrap;display:flex}.eco-rate{align-items:baseline;gap:var(--space-1);font-size:var(--text-2xs);color:var(--text-muted);display:inline-flex}.eco-rate__label{color:var(--text-faint)}.eco-rate.is-negative{color:var(--bad)}.eco-rate--net{color:var(--text)}.sink-list{gap:var(--space-3);flex-direction:column;display:flex}.sink{gap:var(--space-2);padding:var(--space-3);border:var(--stroke) solid var(--line);border-radius:var(--radius-m);background:var(--surface-raised);flex-direction:column;display:flex}.sink--iron{border-color:color-mix(in srgb, var(--accent-2) 38%, var(--line));background:linear-gradient(120deg, color-mix(in srgb, var(--accent-2) 13%, transparent), transparent 65%), var(--surface-raised);box-shadow:0 0 var(--space-5) color-mix(in srgb, var(--accent-2) 12%, transparent);position:relative;overflow:hidden}.sink__head{justify-content:space-between;align-items:center;gap:var(--space-2);display:flex}.sink__title{align-items:center;gap:var(--space-2);font-family:var(--font-display);font-size:var(--text-l);display:inline-flex}.sink__title .icon{width:var(--icon-s);height:var(--icon-s);color:var(--accent-2)}.sink__status{color:var(--text-faint);font-size:var(--text-2xs);letter-spacing:var(--tracking-wide);text-transform:uppercase;font-weight:600}.sink__status.is-almost{color:var(--warn)}.sink__status.is-full{color:var(--bad)}.sink__bar{height:calc(var(--progress-h) * 3);border-radius:var(--radius-pill);background:var(--line-soft);position:relative;overflow:hidden}.sink__fill{border-radius:inherit;background:linear-gradient(90deg, var(--accent-2), color-mix(in srgb, var(--accent) 75%, var(--accent-2)));height:100%;transition:width var(--dur) linear;display:block}.sink__meta{justify-content:space-between;gap:var(--space-2);color:var(--text-muted);font-size:var(--text-2xs);flex-wrap:wrap;display:flex}.research-running{gap:var(--space-2);padding:var(--space-3);border:var(--stroke) solid color-mix(in srgb, var(--accent-2) 28%, var(--line));border-radius:var(--radius-m);background:color-mix(in srgb, var(--accent-2) 6%, transparent);flex-direction:column;display:flex}.research-running__head{justify-content:space-between;align-items:baseline;gap:var(--space-2);display:flex}.research-card{gap:var(--space-2);padding:var(--space-3);border:var(--stroke) solid var(--line);border-radius:var(--radius-m);background:var(--surface);flex-direction:column;display:flex}.research-card__head{justify-content:space-between;align-items:flex-start;gap:var(--space-2);display:flex}.research-card__head h4{font-family:var(--font-display);font-size:var(--text-l);font-weight:500;line-height:var(--line-tight)}.research-card__actions{gap:var(--space-2);display:flex}.effect-block{gap:var(--space-1);flex-direction:column;display:flex}.done-research{border-top:var(--stroke) solid var(--line);padding-top:var(--space-3)}.done-research summary{align-items:center;gap:var(--space-1);min-height:var(--tap);color:var(--text-muted);font-size:var(--text-s);cursor:pointer;display:flex}.done-list{gap:var(--space-1);margin-top:var(--space-2);color:var(--text-muted);font-size:var(--text-s);flex-direction:column;display:flex}.done-list li{align-items:center;gap:var(--space-2);display:flex}.done-list .icon{width:var(--icon-s);height:var(--icon-s);color:var(--good)}.timeline{gap:var(--space-3);padding-left:var(--space-4);flex-direction:column;display:flex;position:relative}.timeline:before{content:"";top:var(--space-1);bottom:var(--space-1);left:calc(var(--space-1) + var(--stroke));width:var(--stroke);background:var(--line);position:absolute}.timeline__item{align-items:flex-start;gap:var(--space-3);opacity:.62;display:flex;position:relative}.timeline__item.is-reached{opacity:1}.timeline__dot{top:calc(var(--space-1) + var(--stroke));left:calc(var(--space-4) * -1 + var(--space-1));width:var(--space-2);height:var(--space-2);border:var(--stroke) solid var(--line-strong);background:var(--bg);border-radius:50%;position:absolute}.timeline__item.is-reached .timeline__dot{border-color:var(--accent);background:var(--accent)}.timeline__body{gap:var(--space-1);flex-direction:column;flex:1;min-width:0;display:flex}.timeline__body h4{font-family:var(--font-display);font-size:var(--text-m);font-weight:500;line-height:var(--line-tight)}.timeline__item>.pill{margin-top:var(--space-1)}.trait-list{gap:var(--space-2);flex-direction:column;display:flex}.trait{padding:var(--space-2) var(--space-3);border:var(--stroke) solid var(--line);border-radius:var(--radius-s);background:var(--surface-raised)}.trait h4{font-family:var(--font-display);font-size:var(--text-m);font-weight:500}.planet-card{gap:var(--space-2);padding:var(--space-3);border:var(--stroke) solid var(--line);border-radius:var(--radius-m);background:var(--surface-raised);flex-direction:column;display:flex}.planet-card h4{font-family:var(--font-display);font-size:var(--text-l);font-weight:500}.seed-bars{gap:var(--space-2);flex-direction:column;display:flex}.seed-bar{gap:var(--space-1);flex-direction:column;display:flex}.seed-bar__head{justify-content:space-between;align-items:baseline;gap:var(--space-2);color:var(--text-muted);font-size:var(--text-s);display:flex}.seed-bar__track{height:var(--progress-h);border-radius:var(--radius-pill);background:var(--line-soft);overflow:hidden}.seed-bar__fill{border-radius:inherit;background:linear-gradient(90deg, var(--accent-2), var(--accent));height:100%;transition:width var(--dur) linear;display:block}.seed-bars__archetype{align-items:baseline;gap:var(--space-2);font-size:var(--text-s);display:flex}.seed-sheet{gap:var(--space-4);flex-direction:column;display:flex}.seed-sheet__note{color:var(--text-muted);font-size:var(--text-s)}.codex-grid{gap:var(--space-2);grid-template-columns:repeat(2,minmax(0,1fr));display:grid}.codex-card{gap:var(--space-1);min-width:0;padding:0 0 var(--space-2);border:var(--stroke) solid var(--line);border-radius:var(--radius-s);background:var(--surface-raised);color:var(--text);text-align:left;transition:border-color var(--dur) var(--ease), transform var(--dur) var(--ease);flex-direction:column;display:flex;overflow:hidden}.codex-card:hover{border-color:var(--accent)}.codex-card__plate{aspect-ratio:16/9;position:relative;overflow:hidden}.codex-card__category,.codex-card__title,.codex-card__locked-label{padding:0 var(--space-2)}.codex-card__category{color:var(--text-faint);font-size:var(--text-2xs);letter-spacing:var(--tracking-wide);text-transform:uppercase}.codex-card__title{font-family:var(--font-display);font-size:var(--text-m);line-height:var(--line-tight);text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.codex-card.is-locked{opacity:.62}.codex-card__lock{background:var(--scrim);color:var(--text-muted);place-items:center;display:grid;position:absolute;inset:0}.codex-card__lock .icon{width:var(--icon-m);height:var(--icon-m)}.codex-card__locked-label{color:var(--text-faint);font-size:var(--text-2xs)}.plate{background-color:var(--surface-raised);background-position:50%;background-size:cover;position:absolute;inset:0}.plate__veil{background:linear-gradient(to top, var(--scrim), transparent 60%);position:absolute;inset:0}.codex-entry{gap:var(--space-3);flex-direction:column;display:flex}.codex-plate{aspect-ratio:16/9;border:var(--stroke) solid var(--line);border-radius:var(--radius-m);background:radial-gradient(circle at 50% 40%, color-mix(in srgb, var(--accent-2) 22%, transparent), transparent 70%), var(--surface-raised);background-position:50%;background-size:cover;width:100%;position:relative;overflow:hidden}.codex-plate__veil{background:linear-gradient(to top, var(--scrim), transparent 62%);position:absolute;inset:0}.codex-entry__title{font-family:var(--font-display);font-size:var(--text-xl);font-weight:500;line-height:var(--line-tight)}.codex-entry__body{color:var(--text-muted);font-size:var(--text-m);line-height:var(--line-body)}.codex-note{padding:var(--space-3);border:var(--stroke) solid var(--line);border-radius:var(--radius-s);background:var(--surface-raised)}.codex-note h4{margin-bottom:var(--space-1);color:var(--text-faint);font-size:var(--text-2xs);letter-spacing:var(--tracking-wide);text-transform:uppercase}.codex-note p{color:var(--text-muted);font-size:var(--text-s)}.codex-locked{gap:var(--space-2);flex-direction:column;display:flex}.codex-plate--locked{filter:blur(var(--space-2));opacity:.5}.resource-detail{gap:var(--space-4);flex-direction:column;display:flex}.resource-hero{align-items:center;gap:var(--space-3);display:flex}.resource-hero__icon{width:calc(var(--tap) * 1.25);height:calc(var(--tap) * 1.25);border:var(--stroke) solid color-mix(in srgb, var(--accent) 30%, var(--line));border-radius:var(--radius-m);background:var(--accent-soft);color:var(--accent);place-items:center;display:grid}.resource-hero__icon .icon{width:var(--icon-m);height:var(--icon-m)}.resource-hero__value{font-family:var(--font-display);font-size:var(--text-xl);line-height:var(--line-tight);display:block}.resource-hero__net{color:var(--text-muted);font-size:var(--text-s);display:block}.resource-hero__net.is-negative{color:var(--bad)}.flow-columns{gap:var(--space-3);grid-template-columns:repeat(2,minmax(0,1fr));display:grid}.flow-column h3,.limiting h3{margin-bottom:var(--space-1);color:var(--text-faint);font-size:var(--text-2xs);letter-spacing:var(--tracking-wide);text-transform:uppercase}.flow-list{gap:var(--space-1);flex-direction:column;display:flex}.flow-list li{justify-content:space-between;align-items:baseline;gap:var(--space-2);padding:var(--space-1) 0;border-bottom:var(--stroke) solid var(--line-soft);color:var(--text-muted);font-size:var(--text-s);display:flex}.flow-list li span:first-child{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.limiting{padding:var(--space-3);border:var(--stroke) solid var(--line);border-radius:var(--radius-s);background:var(--surface-raised)}.settings{gap:var(--space-5);flex-direction:column;display:flex}.settings__section{gap:var(--space-2);flex-direction:column;display:flex}.settings__section h3{font-family:var(--font-display);font-size:var(--text-l);font-weight:500}.settings__row{gap:var(--space-2);flex-wrap:wrap;display:flex}.code-area{width:100%;padding:var(--space-2);border:var(--stroke) solid var(--line);border-radius:var(--radius-s);background:var(--bg);color:var(--text-muted);font-family:var(--font-ui);font-size:var(--text-xs);line-height:var(--line-body);resize:vertical}.form-error{color:var(--bad);font-size:var(--text-s)}.danger-confirm{gap:var(--space-2);padding:var(--space-3);border:var(--stroke) solid color-mix(in srgb, var(--bad) 38%, transparent);border-radius:var(--radius-s);background:color-mix(in srgb, var(--bad) 8%, transparent);flex-direction:column;display:flex}.settings__version{color:var(--text-faint);font-size:var(--text-2xs);text-align:center}.world-card{gap:var(--space-2);padding:var(--space-3);border:var(--stroke) solid var(--line);border-radius:var(--radius-m);background:var(--surface-raised);flex-direction:column;display:flex}.world-card h3{font-family:var(--font-display);font-size:var(--text-l);font-weight:500}.world-card p{color:var(--text-muted);font-size:var(--text-s)}.world-thumbs{gap:var(--space-2);display:flex}.quick-row{min-height:var(--tap);align-items:center;gap:var(--space-2);padding:var(--space-2);border:var(--stroke) solid color-mix(in srgb, var(--warn) 30%, transparent);border-radius:var(--radius-s);color:var(--text);text-align:left;display:flex}.quick-row .icon{width:var(--icon-s);height:var(--icon-s);color:var(--warn)}.quick-row .num{color:var(--text-muted);font-size:var(--text-2xs);margin-left:auto}.toaster{z-index:var(--z-toast);top:calc(var(--safe-top) + var(--hud-h) + var(--space-2));width:min(calc(100% - var(--space-4)), var(--toast-max));pointer-events:none;position:fixed;left:50%;transform:translate(-50%)}.toast{align-items:flex-start;gap:var(--space-2);padding:var(--space-3);border:var(--stroke) solid color-mix(in srgb, var(--accent) 30%, var(--line));border-radius:var(--radius-m);background:var(--surface-strong);box-shadow:var(--shadow);-webkit-backdrop-filter:var(--blur);backdrop-filter:var(--blur);animation:toastIn var(--dur) var(--ease);pointer-events:auto;display:flex}.toast--error{border-color:color-mix(in srgb, var(--bad) 38%, transparent)}.toast--crisis{border-color:color-mix(in srgb, var(--warn) 38%, transparent)}.toast--quick{border-color:color-mix(in srgb, var(--accent-2) 38%, transparent)}@keyframes toastIn{0%{opacity:0;transform:translateY(calc(var(--space-2) * -1))}to{opacity:1;transform:translateY(0)}}.toast__main{gap:var(--space-1);flex-direction:column;flex:1;min-width:0;display:flex}.toast__kicker{color:var(--accent);font-size:var(--text-2xs);letter-spacing:var(--tracking-wide);text-transform:uppercase;white-space:nowrap;font-weight:600}.toast__link{min-height:var(--tap);align-items:center;gap:var(--space-1);color:var(--accent-2);font-size:var(--text-s);white-space:nowrap;display:inline-flex}.toast__link .icon{width:var(--icon-xs);height:var(--icon-xs)}.toast__close{margin:calc(var(--space-1) * -1);flex:none}.overlay{z-index:var(--z-choice);padding:calc(var(--safe-top) + var(--space-4)) calc(var(--safe-right) + var(--space-4)) calc(var(--safe-bottom) + var(--space-4)) calc(var(--safe-left) + var(--space-4));background:var(--scrim-strong);-webkit-backdrop-filter:var(--blur-soft);backdrop-filter:var(--blur-soft);animation:fadeIn var(--dur) var(--ease);place-items:center;display:grid;position:fixed;inset:0;overflow-y:auto}.overlay__panel{width:min(100%, var(--modal-w));max-height:var(--modal-max-h);padding:var(--space-5);border:var(--stroke) solid var(--line-strong);border-radius:var(--radius-l);background:var(--surface-strong);box-shadow:var(--shadow);overflow-y:auto}.return,.end{gap:var(--space-3);flex-direction:column;display:flex}.return h2,.end h2{font-family:var(--font-display);font-size:var(--text-xl);font-weight:500;line-height:var(--line-tight)}.return__meta{gap:var(--space-1);color:var(--text-faint);font-size:var(--text-s);flex-direction:column;display:flex}.return__section{gap:var(--space-1);padding-top:var(--space-2);border-top:var(--stroke) solid var(--line-soft);flex-direction:column;display:flex}.return__section h3{color:var(--text-faint);font-size:var(--text-2xs);letter-spacing:var(--tracking-wide);text-transform:uppercase}.return__section--pending{color:var(--accent)}.gain-list,.return__list{gap:var(--space-1);color:var(--text-muted);font-size:var(--text-s);flex-direction:column;display:flex}.gain-list li,.return__list li{justify-content:space-between;align-items:baseline;gap:var(--space-2);display:flex}.is-positive{color:var(--good)}.overlay--choice{z-index:var(--z-choice);background:radial-gradient(circle at 50% 16%, color-mix(in srgb, var(--accent-2) 20%, transparent), transparent 58%), var(--scrim-strong);padding:0;display:block}.choice{width:100%;min-height:100%;padding:calc(var(--safe-top) + var(--space-5)) calc(var(--safe-right) + var(--space-4)) calc(var(--safe-bottom) + var(--space-5)) calc(var(--safe-left) + var(--space-4));overflow-y:auto}.choice__inner{width:min(100%, var(--choice-max));gap:var(--space-2);flex-direction:column;margin:0 auto;display:flex}.choice__title{font-family:var(--font-display);font-size:var(--text-hero);font-weight:400;line-height:var(--line-tight);letter-spacing:var(--tracking-wide)}.choice__desc{max-width:var(--goal-max);color:var(--text);font-size:var(--text-l)}.choice__read{max-width:var(--goal-max);color:var(--text-muted);font-size:var(--text-s)}.choice__options{gap:var(--space-3);margin:var(--space-4) 0;grid-template-columns:minmax(0,1fr);display:grid}.choice-card{gap:var(--space-3);padding:var(--space-4);border:var(--stroke) solid var(--line);border-radius:var(--radius-l);background:var(--surface);color:var(--text);text-align:left;transition:border-color var(--dur) var(--ease), background var(--dur) var(--ease), transform var(--dur) var(--ease);flex-direction:column;display:flex}.choice-card:hover{border-color:var(--line-strong);transform:translateY(calc(var(--stroke) * -2))}.choice-card.is-selected{border-color:var(--accent);background:color-mix(in srgb, var(--accent) 7%, var(--surface));box-shadow:0 0 var(--space-5) color-mix(in srgb, var(--accent) 16%, transparent)}.choice-card__label{font-family:var(--font-display);font-size:var(--text-xl);font-weight:500;line-height:var(--line-tight)}.choice-card__desc{color:var(--text-muted);font-size:var(--text-s)}.choice-card__section{gap:var(--space-1);flex-direction:column;display:flex}.choice-card__heading{color:var(--text-faint);font-size:var(--text-2xs);letter-spacing:var(--tracking-wide);text-transform:uppercase;font-weight:600}.choice-card__list{gap:var(--space-1);color:var(--text-muted);font-size:var(--text-s);flex-direction:column;display:flex}.choice-card__list span:before{content:"·";margin-right:var(--space-2);color:var(--accent)}.choice-confirm{gap:var(--space-2);padding:var(--space-4);border:var(--stroke) solid color-mix(in srgb, var(--bad) 38%, transparent);border-radius:var(--radius-m);background:color-mix(in srgb, var(--bad) 8%, transparent);flex-direction:column;display:flex}.choice-confirm h3{font-family:var(--font-display);font-size:var(--text-l);font-weight:500}.choice-confirm p{color:var(--text-muted);font-size:var(--text-s)}.choice-confirm__actions{gap:var(--space-2);flex-wrap:wrap;display:flex}.choice__locked{color:var(--text-faint);font-size:var(--text-s)}.end__stats{gap:var(--space-2);grid-template-columns:minmax(0,1fr);display:grid}.end__stats .stat__value{white-space:normal;overflow:visible}.end__section{gap:var(--space-2);padding-top:var(--space-2);border-top:var(--stroke) solid var(--line-soft);flex-direction:column;display:flex}.end__section h3{color:var(--text-faint);font-size:var(--text-2xs);letter-spacing:var(--tracking-wide);text-transform:uppercase}.end__note{color:var(--text-faint);font-size:var(--text-s);text-align:center}.act-title{z-index:var(--z-acttitle);justify-content:center;align-items:center;gap:var(--space-3);padding:calc(var(--safe-top) + var(--space-5)) calc(var(--safe-right) + var(--space-5)) calc(var(--safe-bottom) + var(--space-5)) calc(var(--safe-left) + var(--space-5));background:var(--scrim-strong);text-align:center;pointer-events:none;animation:actTitleFade 3.2s var(--ease) forwards;flex-direction:column;display:flex;position:fixed;inset:0}@keyframes actTitleFade{0%{opacity:0}14%{opacity:1}82%{opacity:1}to{opacity:0}}.act-title__eyebrow{color:var(--accent);font-size:var(--text-2xs);letter-spacing:var(--tracking-wide);text-transform:uppercase;font-weight:600}.act-title__word{font-family:var(--font-display);font-size:var(--text-hero);letter-spacing:var(--tracking-wide);font-weight:400;line-height:var(--line-tight)}.act-title__line{color:var(--text-muted);font-size:var(--text-m)}.hud,.queue-wrap,.tabbar,.dock,.goal,.seed-pill,.crisis{transition:opacity var(--dur-slow) var(--ease)}.game[data-transitioning=true] .hud,.game[data-transitioning=true] .queue-wrap,.game[data-transitioning=true] .tabbar,.game[data-transitioning=true] .dock,.game[data-transitioning=true] .goal,.game[data-transitioning=true] .seed-pill,.game[data-transitioning=true] .crisis{pointer-events:none;opacity:0}@media (min-width:1024px){.hud{right:calc(var(--dock-w) + var(--space-2));left:calc(var(--safe-left) + var(--space-2))}.hud__scroll{padding:var(--space-1) var(--space-2) var(--space-2);flex-wrap:nowrap}.goal{right:auto;bottom:calc(var(--space-5) + var(--safe-bottom));left:calc(var(--safe-left) + var(--space-5));max-width:var(--goal-max)}.goal__hint{flex:auto}.seed-pill{right:calc(var(--dock-w) + var(--space-3))}.crisis{right:auto;left:calc(var(--safe-left) + var(--space-3))}.sheet-backdrop{inset:0 var(--dock-w) 0 0}.sheet{top:50%;bottom:auto;right:auto;left:calc((100vw - var(--dock-w)) / 2);width:min(calc(100vw - var(--dock-w) - var(--space-6)), var(--modal-w));max-height:var(--modal-max-h);border:var(--stroke) solid var(--line-strong);border-radius:var(--radius-l);animation:modalIn var(--dur) var(--ease);transform:translate(-50%,-50%)}.sheet--wide{width:min(calc(100vw - var(--dock-w) - var(--space-6)), var(--modal-wide))}.sheet__handle{display:none}.sheet__head{padding-top:var(--space-3)}.sheet__body{padding-bottom:var(--space-5)}.toaster{left:calc((100vw - var(--dock-w)) / 2)}.overlay__panel{width:min(100%, var(--modal-wide))}.end__stats{grid-template-columns:repeat(3,minmax(0,1fr))}.choice__options{gap:var(--space-4);grid-template-columns:repeat(2,minmax(0,1fr))}.choice__title{max-width:var(--title-content-w)}}@keyframes modalIn{0%{opacity:0;transform:translate(-50%, calc(-50% + var(--space-3)))}to{opacity:1;transform:translate(-50%,-50%)}}@media (prefers-reduced-motion:reduce){.loading__pulse:after,.tab.is-tutorial-pulse .icon,.build-card.is-first-card:after,.mote,.act-title,.toast,.sheet,.sheet-backdrop,.overlay{animation:none}.btn,.chip,.tab,.dock-tab,.queue-slot,.codex-card,.choice-card,.progress__fill,.sink__fill,.seed-bar__fill,.switch__thumb,.switch__track{transition:none}}@media (max-width:360px){.tab__label{font-size:var(--text-3xs);letter-spacing:0}.tabbar__inner{grid-template-columns:repeat(6,minmax(0,1fr))}}:root{--nav-h:56px;--rail-w:92px;--panel-w:460px;--ribbon-h:38px;--sheet-glass:color-mix(in srgb, var(--surface-strong) 86%, transparent);--top-scrim:linear-gradient(to bottom, color-mix(in srgb, var(--bg) 92%, transparent) 0%, color-mix(in srgb, var(--bg) 62%, transparent) 62%, transparent 100%);--seed-water:#6fb7e8;--seed-carbon:#8d8a93;--seed-metals:#e0935a;--seed-stability:#9fd8a8}html,body{height:var(--app-h,100dvh)}#app{height:var(--app-h,100dvh);contain:layout;position:fixed;top:0;left:0;right:0;overflow:hidden}.game{position:absolute;inset:0}.label{color:var(--text-faint);font-size:var(--text-2xs);letter-spacing:var(--tracking-wide);text-transform:uppercase;font-weight:600}.note{color:var(--text-muted);font-size:var(--text-s);margin:0;line-height:1.45}.note--warn{color:var(--warn)}.num{font-variant-numeric:tabular-nums;font-feature-settings:"tnum"}.tag{border:var(--stroke) solid var(--line);border-radius:var(--radius-s);color:var(--text-muted);font-size:var(--text-2xs);white-space:nowrap;padding:1px 6px}.tag--warn{border-color:color-mix(in srgb, var(--warn) 50%, transparent);color:var(--warn)}.bar{background:var(--line);border-radius:2px;height:2px;display:block;overflow:hidden}.bar>span{background:var(--accent);height:100%;display:block}.section-title{padding:var(--space-4) 0 var(--space-1);color:var(--text-faint);font-family:var(--font-ui);font-size:var(--text-2xs);letter-spacing:var(--tracking-wide);text-transform:uppercase;margin:0;font-weight:600}.btn-cta{min-width:76px;min-height:var(--tap);padding:0 var(--space-3);background:var(--accent);color:var(--accent-ink);cursor:pointer;font:inherit;font-size:var(--text-s);transition:transform var(--dur-fast) var(--ease), filter var(--dur-fast) var(--ease);border:0;border-radius:999px;justify-content:center;align-items:center;gap:3px;font-weight:650;display:inline-flex}.btn-cta svg{width:14px;height:14px}.btn-cta:hover:not(:disabled){filter:brightness(1.08)}.btn-cta:active:not(:disabled){transform:scale(.96)}.btn-cta.is-waiting{box-shadow:inset 0 0 0 var(--stroke) var(--line);color:var(--text-muted);cursor:default;background:0 0;font-weight:500}.btn-line{min-height:38px;padding:0 var(--space-3);border:var(--stroke) solid var(--line-strong);color:var(--text);cursor:pointer;font:inherit;font-size:var(--text-s);background:0 0;border-radius:999px;align-items:center;gap:6px;display:inline-flex}.btn-line svg{width:14px;height:14px}.btn-line:hover:not(:disabled){border-color:var(--accent);color:var(--accent)}.btn-line:disabled{border-color:var(--line);color:var(--text-faint);cursor:default}.token{color:var(--accent);vertical-align:middle;flex:none;justify-content:center;align-items:center;display:inline-flex;position:relative}.token img{object-fit:contain;width:100%;height:100%;display:block}.token svg{width:80%;height:80%}.token--s{width:18px;height:18px}.token--m{width:24px;height:24px}.token--l{width:30px;height:30px}.token__symbol{color:#fff;font-family:var(--font-ui);letter-spacing:-.02em;text-shadow:0 0 3px #000000f2,0 1px 2px #000000e6;justify-content:center;align-items:center;font-weight:750;line-height:1;display:flex;position:absolute;inset:0}.token--s .token__symbol{font-size:9px}.token--m .token__symbol{font-size:11px}.token--l .token__symbol{font-size:13px}.amount{color:var(--text);font-size:var(--text-s);white-space:nowrap;align-items:center;gap:3px;font-weight:550;display:inline-flex}.amount.is-missing .num{color:var(--bad)}.amount--rate{color:var(--good);font-weight:500}.amount--rate.is-negative{color:var(--text-muted)}.cost-line,.rate-line{flex-wrap:wrap;align-items:center;gap:2px 10px;display:flex}.cost-free{color:var(--good);font-size:var(--text-s)}.top{z-index:var(--z-ui);padding:calc(var(--safe-top) + 2px) calc(var(--safe-right) + var(--space-3)) var(--space-3) calc(var(--safe-left) + var(--space-3));background:var(--top-scrim);pointer-events:none;position:absolute;top:0;left:0;right:0}.top>*{pointer-events:auto}.actbar{justify-content:space-between;align-items:center;gap:var(--space-3);min-height:34px;padding-bottom:4px;display:flex;position:relative}.actbar__act{align-items:baseline;gap:var(--space-2);min-width:0;display:flex}.actbar__title{font-family:var(--font-display);font-size:var(--text-m);letter-spacing:.02em;text-overflow:ellipsis;white-space:nowrap;font-weight:500;overflow:hidden}.actbar__tools{align-items:center;gap:var(--space-1);flex:none;display:flex}.actbar__score{min-height:34px;padding:0 var(--space-2);color:var(--accent);cursor:pointer;font:inherit;font-size:var(--text-s);background:0 0;border:0;align-items:center;gap:5px;font-weight:600;display:inline-flex}.actbar__icon{width:36px;height:36px;color:var(--text-muted);cursor:pointer;background:0 0;border:0;justify-content:center;align-items:center;padding:0;display:inline-flex}.actbar__icon:hover{color:var(--text)}.actbar__icon svg{width:19px;height:19px}.actbar__progress{background:var(--line);height:1px;position:absolute;bottom:0;left:0;right:0}.actbar__progress>span{background:var(--accent);height:100%;transition:width var(--dur-slow) var(--ease);display:block}.seed-dial{width:22px;height:22px;margin:0 var(--space-1);cursor:pointer;border:0;border-radius:50%;padding:0;position:relative}.seed-dial:after{background:var(--bg);content:"";border-radius:50%;position:absolute;inset:5px}.seed-dial:before{content:"";position:absolute;inset:-11px}.ledger{margin:var(--space-1) calc(var(--space-3) * -1) 0;padding:0 var(--space-3);scrollbar-width:none;gap:0;display:flex;overflow-x:auto}.ledger::-webkit-scrollbar{display:none}.ledger__item{min-height:var(--tap);padding:2px var(--space-2) 2px 0;color:var(--text);cursor:pointer;font:inherit;text-align:left;background:0 0;border:0;flex:1 0 auto;align-items:center;gap:6px;display:flex}.ledger__item+.ledger__item{padding-left:var(--space-2);border-left:var(--stroke) solid var(--line-soft)}.ledger__text{flex-direction:column;min-width:42px;line-height:1.15;display:flex}.ledger__value{text-shadow:0 1px 6px #000000b3;font-size:.9375rem;font-weight:650}.ledger__rate{color:var(--good);font-size:var(--text-2xs);text-shadow:0 1px 4px #000c;font-weight:500}.ledger__rate.is-negative{color:var(--bad)}.ledger__rate.is-idle{color:var(--text-faint)}.foot{z-index:var(--z-tabbar);pointer-events:none;position:absolute;bottom:0;left:0;right:0}.foot>*{pointer-events:auto}.ribbons{padding:0 var(--space-3) var(--space-2);pointer-events:none;flex-direction:column;align-items:center;gap:6px;display:flex}.ribbon{width:-moz-fit-content;width:fit-content;max-width:100%;min-height:var(--ribbon-h);align-items:center;gap:var(--space-2);padding:7px var(--space-3);border:var(--stroke) solid var(--line);background:color-mix(in srgb, var(--surface-strong) 72%, transparent);color:var(--text);cursor:pointer;font:inherit;font-size:var(--text-s);text-align:left;-webkit-backdrop-filter:var(--blur);backdrop-filter:var(--blur);pointer-events:auto;border-radius:19px;line-height:1.3;display:flex}.ribbon>svg{width:15px;height:15px;color:var(--accent);flex:none}.ribbon__text{align-items:baseline;gap:var(--space-2);min-width:0;display:flex}.ribbon__text strong{font-family:var(--font-display);font-size:var(--text-s);flex:none;font-weight:550}.ribbon__hint{color:var(--text-muted);text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.ribbon.is-open{border-radius:var(--radius-m)}.ribbon.is-open .ribbon__text{flex-direction:column;gap:2px}.ribbon.is-open .ribbon__hint{white-space:normal}.ribbon--tutorial{border-color:var(--accent);animation:ribbon-pulse 2.4s var(--ease) infinite}.ribbon--primary{background:var(--accent);color:var(--accent-ink);border:0}.ribbon--primary>svg{color:var(--accent-ink)}.ribbon--crisis{border-color:color-mix(in srgb, var(--warn) 55%, transparent)}.ribbon--crisis>svg{color:var(--warn)}.crisis-ribbon{margin-top:var(--space-2)}.crisis-ribbon .ribbon{width:100%}@keyframes ribbon-pulse{50%{box-shadow:0 0 0 5px var(--accent-soft)}}.nav{padding:0 var(--safe-right) var(--safe-bottom) var(--safe-left);border-top:var(--stroke) solid var(--line);background:color-mix(in srgb, var(--surface-strong) 90%, transparent);-webkit-backdrop-filter:var(--blur);backdrop-filter:var(--blur);grid-template-columns:repeat(5,minmax(0,1fr));display:grid}.nav__item{min-width:0;height:var(--nav-h);color:var(--text-muted);cursor:pointer;font:inherit;transition:color var(--dur) var(--ease);background:0 0;border:0;flex-direction:column;justify-content:center;align-items:center;gap:1px;padding:0;display:flex;position:relative}.nav__item:hover{color:var(--text)}.nav__item.is-active{color:var(--accent)}.nav__item.is-active:before{background:var(--accent);content:"";border-radius:0 0 2px 2px;width:44%;height:2px;position:absolute;top:-1px;left:28%}.nav__glyph{justify-content:center;align-items:center;width:30px;height:30px;display:flex;position:relative}.nav__glyph>svg:not(.nav__ring){width:21px;height:21px}.nav__item.is-running .nav__glyph>svg:not(.nav__ring){width:15px;height:15px}.nav__ring{width:100%;height:100%;position:absolute;inset:0;transform:rotate(-90deg)}.nav__ring circle{fill:none;stroke:var(--line-strong);stroke-width:3px}.nav__ring .nav__ring-fill{stroke:var(--accent);stroke-linecap:round;transition:stroke-dashoffset .26s linear}.nav__jobs{background:var(--accent);min-width:14px;height:14px;color:var(--accent-ink);text-align:center;border-radius:7px;font-size:9.5px;font-weight:700;line-height:14px;position:absolute;top:-3px;right:-7px}.nav__dot{background:var(--accent);width:7px;height:7px;box-shadow:0 0 0 2px var(--surface-strong);border-radius:50%;position:absolute;top:1px;right:0}.nav__item.is-running .nav__dot{top:auto;bottom:1px;right:-3px}.nav__label{max-width:100%;font-size:var(--text-2xs);text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.nav__time,.nav__item.is-running .nav__label{display:none}.nav__item.is-running .nav__time{max-width:100%;color:var(--accent);font-size:var(--text-2xs);white-space:nowrap;font-weight:600;display:block;overflow:hidden}.nav__key{display:none}.nav__item.is-pulse .nav__glyph{animation:nav-pulse 1.8s var(--ease) infinite}@keyframes nav-pulse{50%{color:var(--accent);transform:scale(1.14)}}.sheet-layer{z-index:var(--z-sheet);inset:0 0 calc(var(--nav-h) + var(--safe-bottom)) 0;pointer-events:none;position:absolute}.sheet-backdrop{pointer-events:auto;background:0 0;position:absolute;inset:0}.sheet{border:0;border-top:var(--stroke) solid var(--line-strong);border-radius:var(--radius-l) var(--radius-l) 0 0;background:var(--sheet-glass);max-height:66%;box-shadow:var(--shadow);-webkit-backdrop-filter:blur(26px)saturate(1.3);backdrop-filter:blur(26px)saturate(1.3);pointer-events:auto;flex-direction:column;display:flex;position:absolute;bottom:0;left:0;right:0}.sheet--wide{max-height:80%}.sheet__handle{touch-action:none;flex:none;padding:7px 0 3px}.sheet__head{justify-content:space-between;align-items:center;gap:var(--space-3);padding:0 var(--space-3) var(--space-1) var(--space-4);border:0;flex:none;display:flex}.sheet__heading h2,.side-panel__head h2{font-family:var(--font-display);font-size:var(--text-l);margin:0;font-weight:500}.sheet__heading p{color:var(--text-faint);font-size:var(--text-xs);margin:0}.sheet__body{padding:0 var(--space-4) var(--space-4);overscroll-behavior:contain;flex:1;overflow-y:auto}.sheet__body>.panel>.panel__head{display:none}.queue-strip{gap:var(--space-2);padding:var(--space-1) 0 var(--space-2);display:flex}.queue-tile{min-width:0;min-height:44px;padding:5px var(--space-2) 7px 5px;border-radius:var(--radius-s);background:var(--surface-raised);flex-wrap:wrap;flex:1 1 0;align-items:center;gap:6px;display:flex;position:relative;overflow:hidden}.queue-tile__thumb{background:0 0;border:0;flex:none;width:30px;height:30px}.queue-tile__text{flex-direction:column;flex:1;min-width:0;line-height:1.2;display:flex}.queue-tile__name{font-size:var(--text-xs);text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.queue-tile__time{color:var(--accent);font-size:var(--text-xs);font-weight:600}.queue-tile .bar{position:absolute;bottom:0;left:0;right:0}.queue-tile--free{box-shadow:inset 0 0 0 var(--stroke) var(--line);background:0 0;justify-content:center;padding:5px}.row{border-top:var(--stroke) solid var(--line-soft);position:relative}.build-row{align-items:center;gap:0 var(--space-2);padding:var(--space-2) 0;grid-template-columns:minmax(0,1fr) auto;display:grid}.row__open{align-items:center;gap:var(--space-3);min-width:0;color:inherit;cursor:pointer;font:inherit;text-align:left;background:0 0;border:0;padding:0;display:flex}.row__thumb{background:0 0;border:0;border-radius:0;flex:none;width:54px;height:54px}.row__thumb img{object-fit:contain;width:100%;height:100%}.build-row:not(.is-ready) .row__thumb{opacity:.72}.row__main{flex-direction:column;gap:2px;min-width:0;display:flex}.row__title{align-items:center;gap:0 var(--space-2);flex-wrap:wrap;display:flex}.row__name{font-family:var(--font-display);font-size:.975rem;font-weight:500;line-height:1.25}.row__count{color:var(--accent);font-size:var(--text-s);font-weight:600}.row__action{justify-content:flex-end;display:flex}.row__more{gap:var(--space-3);padding:var(--space-3) 0 var(--space-2) calc(54px + var(--space-3));flex-direction:column;grid-column:1/-1;display:flex}.more-line{justify-content:space-between;align-items:center;gap:var(--space-3);display:flex}.more-line__text{flex-direction:column;gap:3px;min-width:0;display:flex}.more-line__cost{align-items:center;gap:2px var(--space-3);flex-wrap:wrap;display:flex}.more-actions{gap:var(--space-2);flex-wrap:wrap;display:flex}.build-row.is-paused .row__thumb{filter:grayscale(.9)}.build-row.is-first{margin:0 calc(var(--space-2) * -1);padding-right:var(--space-2);padding-left:var(--space-2);border-radius:var(--radius-m);animation:ribbon-pulse 2.4s var(--ease) infinite;box-shadow:inset 0 0 0 var(--stroke) var(--accent)}.row--locked{align-items:center;gap:var(--space-3);padding:var(--space-3) 0;display:flex}.row__lock{width:54px;color:var(--text-faint);flex:none;justify-content:center;display:flex}.row__lock svg{width:18px;height:18px}.crisis-details{gap:var(--space-3);flex-direction:column;display:flex}.crisis__desc{margin:0}.row__thumb,.queue-tile__thumb{box-shadow:none;overflow:visible}.row__thumb img,.queue-tile__thumb img{object-fit:contain;width:100%;height:100%}.toaster{z-index:var(--z-toast);top:calc(var(--safe-top) + 92px);right:var(--space-3);left:var(--space-3);pointer-events:none;justify-content:center;display:flex;position:absolute}.toast{align-items:center;gap:var(--space-2);width:auto;max-width:100%;padding:7px var(--space-3);border:var(--stroke) solid var(--line);background:color-mix(in srgb, var(--surface-strong) 88%, transparent);box-shadow:var(--shadow-s);-webkit-backdrop-filter:var(--blur);backdrop-filter:var(--blur);pointer-events:auto;border-radius:19px;display:inline-flex}.toast__main{align-items:baseline;gap:var(--space-2);min-width:0;display:flex}.toast__title{font-family:var(--font-ui);font-size:var(--text-s);font-weight:500;line-height:1.3}.toast__kicker{color:var(--accent);font-size:var(--text-2xs);letter-spacing:var(--tracking-wide);text-transform:uppercase;flex:none;font-weight:600}.toast--milestone{padding:9px var(--space-4);border-color:var(--accent);border-radius:var(--radius-m)}.toast--milestone .toast__main{flex-direction:column;gap:1px}.toast--milestone .toast__title{font-family:var(--font-display);font-size:var(--text-l)}@media (min-width:1024px){:root{--text-s:.875rem;--text-xs:.8125rem;--text-2xs:.75rem}.top{right:calc(var(--panel-w) + var(--space-5));left:var(--rail-w);padding:var(--space-3) var(--space-5) var(--space-5)}.actbar__title{font-size:var(--text-l)}.ledger{margin:var(--space-2) 0 0;padding:0}.ledger__item{padding-right:var(--space-5);flex:none;gap:9px}.ledger__item+.ledger__item{padding-left:var(--space-5)}.ledger__item:hover .ledger__value{color:var(--accent)}.token--l{width:36px;height:36px}.token--l .token__symbol{font-size:15px}.token--s{width:20px;height:20px}.ledger__value{font-size:var(--text-l)}.rail{z-index:var(--z-tabbar);width:var(--rail-w);border-right:var(--stroke) solid var(--line-soft);background:linear-gradient(to right, color-mix(in srgb, var(--bg) 84%, transparent), color-mix(in srgb, var(--bg) 42%, transparent));-webkit-backdrop-filter:var(--blur);backdrop-filter:var(--blur);position:absolute;top:0;bottom:0;left:0}.nav{justify-content:center;gap:var(--space-2);-webkit-backdrop-filter:none;backdrop-filter:none;background:0 0;border:0;flex-direction:column;height:100%;padding:0;display:flex}.nav__item{height:84px;transition:color var(--dur) var(--ease), background var(--dur) var(--ease);gap:4px}.nav__item:hover{background:var(--surface-raised)}.nav__item.is-active:before{border-radius:0 2px 2px 0;width:2px;height:auto;top:22%;bottom:22%;left:0}.nav__glyph{width:36px;height:36px}.nav__glyph>svg:not(.nav__ring){width:24px;height:24px}.nav__item.is-running .nav__glyph>svg:not(.nav__ring){width:17px;height:17px}.nav__item.is-running .nav__label{display:block}.nav__label{font-size:var(--text-xs)}.nav__item.is-running .nav__time{display:block}.nav__key{color:var(--text-faint);font-family:var(--font-ui);opacity:0;transition:opacity var(--dur) var(--ease);font-size:10px;display:block;position:absolute;top:8px;right:9px}.nav__item:hover .nav__key{opacity:1}.foot{right:calc(var(--panel-w) + var(--space-5));bottom:var(--space-4);left:var(--rail-w)}.ribbons{padding:0 var(--space-5)}.side-panel,.sheet{z-index:var(--z-queue);top:var(--space-3);right:var(--space-3);bottom:var(--space-3);width:var(--panel-w);border:var(--stroke) solid var(--line);border-radius:var(--radius-l);background:var(--sheet-glass);max-height:none;box-shadow:var(--shadow);-webkit-backdrop-filter:blur(26px)saturate(1.3);backdrop-filter:blur(26px)saturate(1.3);flex-direction:column;display:flex;position:absolute;left:auto}.side-panel__head{padding:var(--space-3) var(--space-3) var(--space-1) var(--space-5);flex:none;justify-content:space-between;align-items:center;display:flex}.side-panel__head h2,.sheet__heading h2{font-size:var(--text-xl)}.side-panel__body{padding:0 var(--space-5) var(--space-5);flex:1;overflow-y:auto}.side-panel__body>.panel>.panel__head{display:none}.sheet-layer{inset:0}.sheet{z-index:var(--z-sheet)}.sheet__handle{display:none}.sheet__head{padding:var(--space-3) var(--space-3) var(--space-1) var(--space-5)}.sheet__body{padding:0 var(--space-5) var(--space-5)}.row__thumb{width:64px;height:64px}.row__more{padding-left:calc(64px + var(--space-3))}.row__name{font-size:var(--text-m)}.build-row:hover .row__name{color:var(--accent)}.toaster{top:var(--space-5)}}
