:root{--bg:#14161f;--panel:#1d2030;--panel2:#252a3d;--line:#343a55;--text:#e8e9f0;--muted:#9aa0b8;--accent:#ffb300;--good:#66bb6a;--bad:#ef5350;--info:#42a5f5;--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark}*{box-sizing:border-box}html,body{background:var(--bg);color:var(--text);margin:0;font:14px/1.4 system-ui,Segoe UI,Roboto,sans-serif}button,select,input,textarea{font:inherit;color:var(--text);background:var(--panel2);border:1px solid var(--line);border-radius:6px;padding:4px 10px}button{cursor:pointer}button:hover:not(:disabled){border-color:var(--accent)}button:disabled{opacity:.45;cursor:default}button.on{background:var(--accent);color:#111}button.primary{background:var(--accent);color:#111;padding:8px 18px;font-weight:700}button.danger{border-color:var(--bad);color:var(--bad)}button.link{text-align:left;background:0 0;border:none;padding:0}button.tiny,.tiny{padding:1px 5px;font-size:11px}input[type=number]{width:80px}textarea{width:100%;font-family:ui-monospace,monospace;font-size:12px}a{color:var(--info)}.muted{color:var(--muted)}.small{font-size:12px}.row{align-items:center;gap:6px;display:flex}.row.between{justify-content:space-between}.row.wrap{flex-wrap:wrap}.center{place-items:center;min-height:60vh;display:grid}.app{max-width:1400px;margin:0 auto;padding:0 16px 16px}.disclaimer{color:var(--muted);text-align:center;padding:16px 0;font-size:11px}.newgame{gap:14px;max-width:900px;margin:0 auto;padding:24px 0;display:grid}.newgame h1{color:var(--accent);margin:0}.field{gap:4px;display:grid}.classgrid{grid-template-columns:repeat(auto-fill,minmax(180px,1fr));gap:8px;display:grid}.classcard{text-align:left;gap:4px;padding:10px;display:grid}.classcard.on{outline:2px solid var(--accent);background:var(--panel2);color:var(--text)}.topbar{flex-wrap:wrap;align-items:center;gap:10px;padding:10px 0;display:flex}.logo{color:var(--accent);margin-right:auto}.alz{color:var(--accent);font-weight:700}.stage{border:1px solid var(--line);border-radius:10px;height:300px;position:relative;overflow:hidden}.scene{position:absolute;inset:0}.hud{background:#00000073;border-radius:8px;gap:3px;width:min(320px,60%);padding:6px;display:grid;position:absolute;top:8px;left:8px}.hud-top{flex-wrap:wrap;justify-content:space-between;gap:6px;font-size:12px;display:flex}.dead{color:var(--bad);font-weight:700}.modes{gap:4px;display:grid;position:absolute;top:8px;right:8px}.modes .combo{min-width:110px;font-weight:700}.modes .combo.on{animation:.6s infinite alternate pulse}@keyframes pulse{to{filter:brightness(1.3)}}.bar{background:#ffffff14;border-radius:4px;height:14px;position:relative;overflow:hidden}.bar-fill{height:100%;transition:width .2s linear}.bar-label{text-shadow:0 0 2px #000;padding-left:6px;font-size:10px;line-height:14px;position:absolute;inset:0}.tabs{flex-wrap:wrap;gap:4px;margin:10px 0;display:flex}.grid2{grid-template-columns:repeat(auto-fit,minmax(340px,1fr));align-items:start;gap:10px;display:grid}.card{background:var(--panel);border:1px solid var(--line);border-radius:10px;gap:6px;min-width:0;padding:10px 12px;display:grid}.card.inner{background:var(--panel2)}.card-head{justify-content:space-between;align-items:center;gap:8px;display:flex}.card h3{margin:0;font-size:15px}.card h4{color:var(--muted);margin:6px 0 2px;font-size:13px}.list{gap:4px;margin:0;padding:0;list-style:none;display:grid}ol.list{list-style:inside decimal}.scroll{max-height:420px;overflow:auto}.here{color:var(--accent)}.done{color:var(--good)}table{border-collapse:collapse;width:100%}.data td,.data th,.stats td{border-bottom:1px solid var(--line);text-align:left;vertical-align:middle;padding:3px 4px}.card:has(table){overflow-x:auto}.statlist{color:var(--muted);flex-wrap:wrap;gap:6px;font-size:11px;display:inline-flex}.tag{border:1px solid var(--line);border-radius:4px;margin-left:4px;padding:0 4px;font-size:10px}.tag.epic{color:#ce93d8}.tag.bad{color:var(--bad)}.item.g5,.item.g6,.item.g7{color:#81d4fa}.item.g8,.item.g9,.item.g10,.item.g11,.item.g12{color:#ce93d8}.item.g13,.item.g14{color:var(--accent)}.src{white-space:nowrap;border-radius:4px;padding:0 4px;font-size:10px}.src a{color:inherit}.src-official{background:#1b5e20}.src-community_compiled,.src-wiki{background:#0d47a1}.src-community_estimate{background:#e65100}.src-gdd{background:#4a148c}.src-placeholder{background:#5d4037}.log.success,.log.option{color:var(--good)}.log.down,.log.reset,.log.break,.log.destroy{color:var(--bad)}.upgrade-line{border-bottom:1px dashed var(--line);padding:4px 0}.stellar-line{grid-template-columns:70px repeat(5,minmax(0,1fr));align-items:stretch;gap:4px;display:grid}.stellar-slot{border:1px solid var(--line);border-radius:6px;gap:2px;padding:3px;font-size:11px;display:grid}.c-fury{border-color:#e53935}.c-oblivion{border-color:#5e35b1}.c-link_c{border-color:#43a047}.c-link_d{border-color:#1e88e5}.c-link_e{border-color:#fdd835}.toasts{z-index:10;gap:6px;max-width:min(360px,100vw - 24px);display:grid;position:fixed;bottom:12px;right:12px}.toast{background:var(--panel2);border-left:4px solid var(--info);border-radius:6px;padding:8px 10px;box-shadow:0 4px 14px #0006}.toast.good{border-color:var(--good)}.toast.bad,.toast.error{border-color:var(--bad)}.modal{z-index:20;background:#0009;place-items:center;padding:16px;display:grid;position:fixed;inset:0}.modal-body{background:var(--panel);border:1px solid var(--line);border-radius:12px;width:100%;max-width:480px;padding:16px 20px}hr{border:none;border-top:1px solid var(--line);width:100%}@media (max-width:640px){.stage{height:340px}.grid2{grid-template-columns:1fr}.hud{width:calc(100% - 16px)}.modes{flex-wrap:wrap;gap:4px;display:flex;inset:auto 8px 8px}.modes button{padding:3px 6px;font-size:11px}.modes .combo{min-width:0}.stellar-line{grid-template-columns:repeat(5,minmax(0,1fr))}.stellar-line>span:first-child{grid-column:1/-1}}.chart{--series-1:#3987e5;margin:0 0 12px}.chart figcaption{margin-bottom:4px;font-size:13px}.chart svg{touch-action:pan-y;width:100%;height:auto;display:block}.chart-line{fill:none;stroke:var(--series-1);stroke-width:2px;stroke-linejoin:round;stroke-linecap:round}.chart-grid{stroke:var(--line);stroke-width:1px;opacity:.6}.chart-axis{fill:var(--muted);font-size:9px}.chart-cross{stroke:var(--muted);stroke-width:1px;stroke-dasharray:2 2}.chart-dot{fill:var(--series-1);stroke:var(--panel);stroke-width:2px}.chart-tip{fill:var(--panel2);stroke:var(--line)}.chart-tip-v{fill:var(--text);font-size:11px;font-weight:600}@media (max-width:640px){.app{padding-bottom:calc(64px + env(safe-area-inset-bottom))}.tabs{z-index:9;scroll-snap-type:x proximity;background:var(--panel);border-top:1px solid var(--line);padding:6px 8px calc(6px + env(safe-area-inset-bottom));flex-wrap:nowrap;margin:0;position:fixed;bottom:0;left:0;right:0;overflow-x:auto}.tabs button{scroll-snap-align:start;flex:none;min-height:40px}.toasts{bottom:calc(72px + env(safe-area-inset-bottom))}.topbar{flex-wrap:wrap}}.craft-row{border-bottom:1px solid var(--line);gap:4px;padding:6px 0;display:grid}.list.scroll.tall{max-height:560px}.good{color:var(--good)}.accent{color:var(--accent)}.costume-row{border-bottom:1px solid var(--line);gap:4px;padding:8px 0;display:grid}.swatches{flex-wrap:wrap;gap:4px;display:flex}.swatch{border:2px solid var(--line);border-radius:50%;width:28px;height:28px;padding:0}.swatch.on{border-color:var(--accent);box-shadow:0 0 0 2px var(--panel)}.swatch.none{color:var(--muted);font-size:12px}.tutorial{border:1px solid var(--accent);background:var(--panel);border-left-width:4px;border-radius:8px;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:8px 16px;margin-top:10px;padding:10px 14px;display:flex}.tutorial p{margin:4px 0 0}
