.tb{--accent:#e0906a}.tb .tool-panel{display:flex;flex-direction:column;gap:12px}.tb-stage{display:grid;grid-template-columns:minmax(0,1.1fr) minmax(290px,.9fr);gap:14px;align-items:start}@media (max-width:860px){.tb-stage{grid-template-columns:1fr}}#scene svg{width:100%;height:auto;display:block;background:radial-gradient(ellipse at 50% 40%,rgba(90,60,35,.35),rgba(30,18,12,.5));border-radius:12px}#scene [data-st]{opacity:0;transition:opacity .5s}#scene [data-st].on{opacity:1}.sea{fill:#468cbe59;stroke:#78beeb80;stroke-width:1}.valley{fill:#695a3c4d;stroke:#c8aa6e59;stroke-width:1;stroke-dasharray:5 4}.city{fill:#d9a44133;stroke:#d9a441;stroke-width:1.2}.geo{font:600 9.5px var(--font-sans);fill:#ebdcc88c;text-anchor:middle}.geo.river{font-style:italic;fill:#96cdf0b3}.lab{font:700 9.5px var(--font-sans);text-anchor:middle}.lab.ta{fill:#ffd98a}.lab.dich{fill:#ff9d8a}.fort{fill:#be503c73;stroke:#e06a5a;stroke-width:1.4}.stakes path{fill:none;stroke:#d9b06a;stroke-width:2;stroke-linecap:round}.wreck{fill:#e06a5a99;stroke:#ffb09a;stroke-width:.8}.ar{fill:none;stroke-width:2.4;stroke-linecap:round;stroke-dasharray:6 5;animation:tbFlow 1s linear infinite}.ar.ta{stroke:#ffd34d}.ar.dich{stroke:#e06a5a}@keyframes tbFlow{to{stroke-dashoffset:-11}}.boom{fill:none;stroke:#ffd34d;stroke-width:2;animation:tbBoom 1.4s ease-out infinite}.boom.big{stroke:#ffe9a0}@keyframes tbBoom{0%{opacity:1;transform:scale(.6)}to{opacity:0;transform:scale(1.5)}}#scene .boom{transform-box:fill-box;transform-origin:center}.trench{fill:none;stroke:#ffd34d;stroke-width:1.6;stroke-dasharray:2 3}.tb-side{display:flex;flex-direction:column;gap:12px}#intro{display:flex;flex-direction:column;gap:5px}#intro b{font:800 18px/1.25 var(--font-sans);color:var(--ink)}#intro span{font:600 11.5px/1.4 var(--font-mono);color:var(--accent)}#intro p{margin:0;font:500 12.5px/1.6 var(--font-sans);color:var(--dim)}.tb-shead b{font:800 14px/1.35 var(--font-sans);color:#ffd98a}.tb-sdesc{margin:6px 0 0;font:500 13px/1.6 var(--font-sans);color:var(--ink)}.tb-dots{display:flex;gap:6px;margin-top:10px}.tb-dots i{width:26px;height:6px;border-radius:99px;background:rgba(255,255,255,.12);cursor:pointer;transition:background .2s}.tb-dots i.on{background:var(--accent)}.tb-btns{display:flex;gap:8px;flex-wrap:wrap}
