.demo.svelte-srlc2z{width:100%}.canvas-wrap.svelte-srlc2z{position:relative;width:100%;height:560px;border:1px solid var(--border);border-radius:8px;overflow:hidden;background:#0a0b14}canvas.svelte-srlc2z{width:100%;height:100%;display:block;touch-action:none}canvas.crosshair.svelte-srlc2z{cursor:crosshair}.overlay.svelte-srlc2z{position:absolute;inset:0;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:.8rem;background:#0a0b1473;pointer-events:none}.pulse.svelte-srlc2z{font-family:var(--font-mono);font-size:.85rem;color:var(--text-secondary);animation:svelte-srlc2z-pulse 1.5s ease-in-out infinite}@keyframes svelte-srlc2z-pulse{0%,to{opacity:.5}50%{opacity:1}}.err.svelte-srlc2z{font-family:var(--font-mono);font-size:.8rem;color:#e5726f;max-width:80%;text-align:center}.banner.svelte-srlc2z{position:absolute;top:.8rem;left:.8rem;right:auto;max-width:min(420px,calc(100% - 1.6rem));display:flex;align-items:flex-start;gap:.75rem;background:#0a0b14e0;border:1px solid rgba(192,132,252,.35);border-radius:8px;padding:.7rem .9rem;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);pointer-events:none}.banner.off.svelte-srlc2z{border-color:#e5726f8c}.banner-icon.svelte-srlc2z{font-size:1.7rem;line-height:1;color:var(--accent)}.banner.off.svelte-srlc2z .banner-icon:where(.svelte-srlc2z){color:#e5726f}.banner-body.svelte-srlc2z{display:flex;flex-direction:column;gap:.15rem;min-width:0}.banner-dist.svelte-srlc2z{font-family:var(--font-mono);font-size:1.05rem;font-weight:700;color:#f6d024;line-height:1.1}.banner-text.svelte-srlc2z{font-family:var(--font-sans);font-size:.92rem;color:var(--text);line-height:1.25}.banner-sub.svelte-srlc2z{font-family:var(--font-mono);font-size:.65rem;color:var(--text-secondary)}.eta.svelte-srlc2z{position:absolute;top:.8rem;right:.8rem;display:flex;flex-direction:column;align-items:flex-end;background:#0a0b14cc;border-radius:6px;padding:.4rem .7rem;pointer-events:none}.eta-main.svelte-srlc2z{font-family:var(--font-mono);font-size:1rem;color:#8fd0a8;font-weight:700}.eta-sub.svelte-srlc2z{font-family:var(--font-mono);font-size:.62rem;color:var(--text-secondary)}.map-legend.svelte-srlc2z{position:absolute;bottom:.7rem;right:.8rem;display:flex;align-items:center;gap:.7rem;font-family:var(--font-mono);font-size:.62rem;color:var(--text-secondary);background:#0a0b14bf;padding:.3rem .55rem;border-radius:4px;pointer-events:none}.map-legend.svelte-srlc2z span:where(.svelte-srlc2z){display:inline-flex;align-items:center;gap:.3rem}.map-legend.svelte-srlc2z i:where(.svelte-srlc2z){width:8px;height:8px;border-radius:2px;display:inline-block}.hint-badge.svelte-srlc2z{position:absolute;bottom:.7rem;left:.8rem;font-family:var(--font-mono);font-size:.68rem;color:var(--accent);background:#0a0b14cc;padding:.3rem .6rem;border-radius:4px;pointer-events:none}.controls.svelte-srlc2z{display:flex;align-items:center;flex-wrap:wrap;gap:.75rem;margin-top:.9rem}.ctl-group.svelte-srlc2z{display:inline-flex;align-items:center;gap:.4rem}.ctl-label.svelte-srlc2z{font-family:var(--font-mono);font-size:.65rem;color:var(--text-secondary)}.seg.svelte-srlc2z{display:inline-flex;border:1px solid var(--border);border-radius:4px;overflow:hidden}.seg-btn.svelte-srlc2z{font-family:var(--font-mono);font-size:.7rem;padding:.35rem .6rem;border:none;background:transparent;color:var(--text-secondary);cursor:pointer;transition:all .15s ease}.seg-btn.svelte-srlc2z:not(:last-child){border-right:1px solid var(--border)}.seg-btn.active.svelte-srlc2z{background:var(--accent-dim);color:var(--accent)}.seg-btn.svelte-srlc2z:hover:not(.active){color:var(--text)}.ctrl-btn.svelte-srlc2z{font-family:var(--font-mono);font-size:.72rem;padding:.35rem .8rem;border-radius:4px;border:1px solid var(--border);background:transparent;color:var(--text-secondary);cursor:pointer;transition:all .15s ease}.ctrl-btn.svelte-srlc2z:hover:not(:disabled){color:var(--text);border-color:var(--text-secondary)}.ctrl-btn.svelte-srlc2z:disabled{opacity:.4;cursor:default}.ctrl-btn.primary.svelte-srlc2z{border-color:var(--accent);color:var(--accent);background:#c084fc1a}.ctrl-btn.danger.svelte-srlc2z:not(:disabled){border-color:#e5726f80;color:#e5726f}.tog.svelte-srlc2z{display:inline-flex;align-items:center;gap:.35rem;font-family:var(--font-mono);font-size:.68rem;color:var(--text-secondary);cursor:pointer}.tog.svelte-srlc2z input:where(.svelte-srlc2z){accent-color:var(--accent)}.pace-now.svelte-srlc2z{font-family:var(--font-mono);font-size:.65rem;color:var(--text-secondary);min-width:4.2rem;transition:color .3s ease}.pace-now.boosted.svelte-srlc2z{color:#f6d024}.voice-name.svelte-srlc2z{margin-left:.35rem;padding:.05rem .3rem;border-radius:3px;background:var(--accent-dim);color:var(--accent);font-size:.6rem}.hint-inline.svelte-srlc2z{font-family:var(--font-mono);font-size:.62rem;color:var(--text-secondary);opacity:.7}.result-grid.svelte-srlc2z{display:grid;grid-template-columns:minmax(280px,1.15fr) minmax(240px,1fr) minmax(220px,.95fr);gap:1rem;margin-top:1.25rem}.result-grid.wide.svelte-srlc2z{grid-template-columns:minmax(320px,1.15fr) minmax(320px,1fr)}.panel.svelte-srlc2z{font-family:var(--font-mono);font-size:.72rem;border:1px solid var(--border);border-radius:6px;padding:.8rem .95rem;height:fit-content;min-width:0}.panel-head.svelte-srlc2z{display:flex;justify-content:space-between;align-items:baseline;gap:.5rem;font-size:.65rem;text-transform:uppercase;letter-spacing:.05em;color:var(--text);border-bottom:1px solid var(--border);padding-bottom:.5rem;margin-bottom:.55rem}.panel-note.svelte-srlc2z{text-transform:none;letter-spacing:0;color:var(--text-secondary);font-size:.6rem}.panel-body.svelte-srlc2z{font-family:var(--font-sans);font-size:.7rem;line-height:1.5;color:var(--text-secondary);margin-top:.6rem;padding-top:.5rem;border-top:1px solid var(--border)}.steps-panel.svelte-srlc2z .steps:where(.svelte-srlc2z){list-style:none;margin:0;padding:0;max-height:330px;overflow-y:auto}.step.svelte-srlc2z{display:grid;grid-template-columns:1.4rem 1fr auto;align-items:baseline;gap:.5rem;width:100%;text-align:left;background:transparent;border:none;border-left:2px solid transparent;padding:.32rem .4rem;color:var(--text);font-family:inherit;font-size:.72rem;cursor:pointer}.step.svelte-srlc2z:hover{background:#ffffff08}.step.active.svelte-srlc2z{border-left-color:var(--accent);background:var(--accent-dim)}.step.done.svelte-srlc2z{opacity:.45}.step-icon.svelte-srlc2z{color:var(--accent);font-size:.95rem}.step-dist.svelte-srlc2z{color:var(--text-secondary);font-size:.65rem}.kv.svelte-srlc2z{display:flex;justify-content:space-between;align-items:baseline;gap:.6rem;padding:.22rem 0}.kv.svelte-srlc2z span:where(.svelte-srlc2z){color:var(--text-secondary);white-space:nowrap}.kv.svelte-srlc2z code:where(.svelte-srlc2z){color:var(--text);font-size:.68rem;text-align:right;word-break:break-all}.kv.svelte-srlc2z code:where(.svelte-srlc2z) em:where(.svelte-srlc2z){font-style:normal;color:var(--accent)}.kv.svelte-srlc2z code.decoded:where(.svelte-srlc2z){color:#f6d024}.bits.svelte-srlc2z{display:flex;gap:2px;margin-bottom:.6rem}.bit-field.svelte-srlc2z{display:flex;flex-direction:column;gap:.1rem;padding:.3rem .4rem;border-radius:3px;min-width:0;flex:1 1 0}.b-base.svelte-srlc2z{background:#c084fc2e;flex-grow:4}.b-type.svelte-srlc2z{background:#f6d02429;flex-grow:2}.b-dir.svelte-srlc2z{background:#6fb8ba29;flex-grow:2}.b-pos.svelte-srlc2z{background:#8fd0a824}.bit-label.svelte-srlc2z{font-size:.55rem;color:var(--text-secondary);text-transform:uppercase;letter-spacing:.04em}.bit-val.svelte-srlc2z{font-size:.7rem;color:var(--text);overflow:hidden;text-overflow:ellipsis}.bit-w.svelte-srlc2z{font-size:.55rem;color:var(--text-secondary)}.cost-row.svelte-srlc2z{display:grid;grid-template-columns:1.3fr .8fr .8fr .9fr;gap:.4rem;padding:.28rem 0;color:var(--text)}.cost-row.header.svelte-srlc2z{color:var(--text-secondary);font-size:.6rem;text-transform:uppercase;letter-spacing:.04em;border-bottom:1px solid var(--border)}.cost-row.svelte-srlc2z>span:where(.svelte-srlc2z):first-child{color:var(--text-secondary)}.cost-row.best.svelte-srlc2z>span:where(.svelte-srlc2z){color:#8fd0a8}.bar-wrap.svelte-srlc2z{margin-top:.6rem;display:flex;flex-direction:column;gap:.3rem}.bar-row.svelte-srlc2z{display:grid;grid-template-columns:3.6rem 1fr 6rem;align-items:center;gap:.5rem;font-size:.62rem;color:var(--text-secondary)}.bar-track.svelte-srlc2z{height:8px;background:#ffffff0d;border-radius:2px;overflow:hidden}.bar-fill.svelte-srlc2z{height:100%;border-radius:2px;min-width:2px}.bar-val.svelte-srlc2z{text-align:right}.dict-row.svelte-srlc2z{display:grid;grid-template-columns:2.6rem 5rem 1fr 6.5rem;gap:.4rem;padding:.2rem 0;font-size:.65rem;color:var(--text)}.dict-row.header.svelte-srlc2z{color:var(--text-secondary);font-size:.58rem;text-transform:uppercase;letter-spacing:.04em;border-bottom:1px solid var(--border)}.dict.svelte-srlc2z .hex:where(.svelte-srlc2z){color:var(--text-secondary);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.mono-em.svelte-srlc2z{color:var(--accent)}.foot-stats.svelte-srlc2z{font-family:var(--font-mono);font-size:.65rem;color:var(--text-secondary);opacity:.7;margin-top:.9rem}@media(max-width:900px){.result-grid.svelte-srlc2z,.result-grid.wide.svelte-srlc2z{grid-template-columns:1fr}}@media(max-width:768px){.canvas-wrap.svelte-srlc2z{height:440px}.banner.svelte-srlc2z{max-width:calc(100% - 1.6rem)}}.page.svelte-1kwyocc{max-width:960px;margin:0 auto;padding:8rem 2rem 6rem}.header.svelte-1kwyocc{max-width:720px;margin-bottom:4rem}.title.svelte-1kwyocc{font-family:var(--font-heading);font-size:clamp(2rem,5vw,3rem);font-weight:500;color:var(--text);line-height:1.15;margin-bottom:1rem}.subtitle.svelte-1kwyocc{color:var(--text-secondary);font-size:1.05rem;line-height:1.6;margin-bottom:1.5rem}.header-actions.svelte-1kwyocc{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:1rem}.tech.svelte-1kwyocc{display:flex;flex-wrap:wrap;gap:.4rem}.tech.svelte-1kwyocc span:where(.svelte-1kwyocc){font-family:var(--font-mono);font-size:.72rem;color:var(--text-secondary);padding:.2rem .55rem;border:1px solid var(--border);border-radius:3px}.header-links.svelte-1kwyocc{display:flex;align-items:center;gap:1.25rem}.jump-link.svelte-1kwyocc{font-family:var(--font-mono);font-size:.82rem;color:var(--accent);text-decoration:none;transition:opacity .2s ease}.jump-link.svelte-1kwyocc:hover{opacity:.8}@keyframes svelte-1kwyocc-bounce-arrow{0%,to{transform:translateY(0)}50%{transform:translateY(3px)}}.jump-link.svelte-1kwyocc:before{content:"↓";display:inline-block;margin-right:.4em;animation:svelte-1kwyocc-bounce-arrow .4s ease-in-out 4}.content.svelte-1kwyocc{max-width:720px;margin-bottom:3rem}.content.svelte-1kwyocc h2:where(.svelte-1kwyocc){font-family:var(--font-heading);font-size:1.4rem;font-weight:500;font-style:italic;color:var(--text);margin-bottom:1rem;margin-top:2.5rem}.content.svelte-1kwyocc h2:where(.svelte-1kwyocc):first-child{margin-top:0}.content.svelte-1kwyocc p:where(.svelte-1kwyocc){color:var(--text-secondary);font-size:.95rem;line-height:1.7;margin-bottom:1rem}.content.svelte-1kwyocc p:where(.svelte-1kwyocc) strong:where(.svelte-1kwyocc){color:var(--text)}.content.svelte-1kwyocc em:where(.svelte-1kwyocc){font-style:italic}.content.svelte-1kwyocc code:where(.svelte-1kwyocc){font-family:var(--font-mono);font-size:.85em;background:var(--bg-raised);padding:.1em .35em;border-radius:3px}.content.svelte-1kwyocc .link:where(.svelte-1kwyocc){color:var(--accent);text-decoration:none;transition:opacity .2s ease}.content.svelte-1kwyocc .link:where(.svelte-1kwyocc):hover{opacity:.8}.demo.svelte-1kwyocc{border-top:1px solid var(--border);padding-top:2rem;scroll-margin-top:80px}.demo-heading.svelte-1kwyocc{font-family:var(--font-heading);font-size:1.4rem;font-weight:500;font-style:italic;color:var(--text);margin-bottom:.75rem}.demo-intro.svelte-1kwyocc{color:var(--text-secondary);font-size:.95rem;line-height:1.7;margin-bottom:1.5rem;max-width:720px}.demo-note.svelte-1kwyocc{font-family:var(--font-mono);font-size:.65rem;color:var(--text-secondary);opacity:.6;margin-top:.75rem}.demo-note.svelte-1kwyocc a:where(.svelte-1kwyocc){color:var(--text-secondary)}@media(max-width:768px){.page.svelte-1kwyocc{padding:7rem 1.5rem 4rem}.header-actions.svelte-1kwyocc{flex-direction:column;align-items:flex-start}}
