:root{--bg:#f4f5f7;--surface:#fff;--text:#16181d;--muted:#5d6470;--line:#d9dce2;--accent:#d6336c;--map-bg:#e9ebef;--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light dark}@media (prefers-color-scheme:dark){:root{--lightningcss-light: ;--lightningcss-dark:initial;--bg:#14161a;--surface:#1c1f25;--text:#eceef2;--muted:#9aa1ad;--line:#333844;--map-bg:#22252c}}*{box-sizing:border-box}html,body{background:var(--bg);height:100%;color:var(--text);overscroll-behavior:none;-webkit-tap-highlight-color:transparent;margin:0;font-family:system-ui,-apple-system,Segoe UI,sans-serif}button{cursor:pointer}.map.svelte-xjjohy{touch-action:none;background:var(--map-bg);position:absolute;inset:0;overflow:hidden}.stage.svelte-xjjohy{transform-origin:0 0;position:relative}img.svelte-xjjohy,svg.svelte-xjjohy{-webkit-user-select:none;user-select:none;width:100%;height:100%;position:absolute;inset:0}.edge.svelte-xjjohy{stroke:#0a7;stroke-width:5px;opacity:.7}.node.svelte-xjjohy{fill:#fff;stroke:#0a7;stroke-width:4px;cursor:pointer}.node.stairs.svelte-xjjohy{fill:#f90}.node.elevator.svelte-xjjohy{fill:#39f}.node.entrance.svelte-xjjohy{fill:#d33}.node.sel.svelte-xjjohy{stroke:#d0f;stroke-width:8px}.tag.svelte-xjjohy{fill:#036;paint-order:stroke;stroke:#fff;stroke-width:5px;font:700 22px system-ui}.room.svelte-xjjohy{fill:#111;paint-order:stroke;stroke:#fff;stroke-width:6px;pointer-events:none;font:700 24px system-ui}.route.svelte-xjjohy{fill:none;stroke:var(--accent);stroke-width:12px;stroke-linecap:round;stroke-linejoin:round;pointer-events:none}.pin.svelte-xjjohy{stroke:#fff;stroke-width:5px;pointer-events:none}.pin.start.svelte-xjjohy{fill:#1a7f37}.pin.end.svelte-xjjohy{fill:var(--accent)}.editor.svelte-1h8xysy{grid-template-rows:auto minmax(0,1fr) auto;grid-template-columns:minmax(0,1fr);height:100dvh;display:grid;overflow:hidden}header.svelte-1h8xysy{background:var(--surface);border-bottom:1px solid var(--line);flex-wrap:wrap;align-items:center;gap:8px;padding:8px 16px;display:flex}.grow.svelte-1h8xysy{flex:1}.stats.svelte-1h8xysy{color:var(--muted);font-size:.8rem}.seg.svelte-1h8xysy{display:flex}button.svelte-1h8xysy,.btn.svelte-1h8xysy,select.svelte-1h8xysy,input.svelte-1h8xysy:not([type=checkbox]){font:inherit;border:1px solid var(--line);background:var(--bg);color:var(--text);border-radius:6px;padding:6px 10px}.seg.svelte-1h8xysy button:where(.svelte-1h8xysy){border-radius:0}button.active.svelte-1h8xysy{background:var(--accent);color:#fff;border-color:var(--accent)}nav.svelte-1h8xysy{background:var(--surface);border-top:1px solid var(--line);display:flex}nav.svelte-1h8xysy button:where(.svelte-1h8xysy){border-radius:0;flex:1;padding:14px}main.svelte-1h8xysy{min-width:0;min-height:0;position:relative;overflow:hidden}.viewer.svelte-113tqd5{height:100dvh;padding-top:env(safe-area-inset-top);grid-template-rows:auto minmax(0,1fr) auto;grid-template-columns:minmax(0,1fr);display:grid;overflow:hidden}header.svelte-113tqd5{background:var(--surface);border-bottom:1px solid var(--line);gap:8px;max-height:60dvh;padding:10px 16px;display:grid;overflow-y:auto}.fields.svelte-113tqd5{gap:8px;display:grid}.row.svelte-113tqd5{grid-template-columns:1fr auto;align-items:end;gap:8px;display:grid}label.svelte-113tqd5{color:var(--muted);gap:2px;font-size:.75rem;display:grid}select.svelte-113tqd5{font:inherit;border:1px solid var(--line);background:var(--bg);min-height:48px;color:var(--text);border-radius:10px;min-width:0;padding:12px 10px;font-size:1rem}.check.svelte-113tqd5{color:var(--text);align-items:center;gap:10px;min-height:44px;font-size:.95rem;display:flex}.check.svelte-113tqd5 input:where(.svelte-113tqd5){width:22px;height:22px;accent-color:var(--accent)}.swap.svelte-113tqd5{border:1px solid var(--line);background:var(--bg);width:48px;height:48px;color:var(--text);border-radius:10px;font-size:1.2rem}.summary.svelte-113tqd5{border:1px solid var(--line);background:var(--bg);min-height:48px;color:var(--text);font:inherit;text-align:left;border-radius:10px;justify-content:space-between;align-items:center;gap:12px;padding:8px 12px;display:flex}.path.svelte-113tqd5{text-overflow:ellipsis;white-space:nowrap;min-width:0;overflow:hidden}.edit.svelte-113tqd5{color:var(--accent);font-weight:600}.done.svelte-113tqd5{background:var(--accent);color:#fff;min-height:48px;font:inherit;border:0;border-radius:10px;font-weight:600}.warn.svelte-113tqd5{color:#c33;margin:0}.hint.svelte-113tqd5{color:var(--muted);margin:0;font-size:.9rem}.steps.svelte-113tqd5{scrollbar-width:none;gap:6px;margin:0;padding:0 0 2px;list-style:none;display:flex;overflow-x:auto}.steps.svelte-113tqd5 li:where(.svelte-113tqd5){flex:none}.steps.svelte-113tqd5 button:where(.svelte-113tqd5){border:1px solid var(--line);background:var(--bg);min-height:40px;color:var(--text);font:inherit;border-radius:999px;padding:6px 14px;font-size:.9rem}.steps.svelte-113tqd5 button.active:where(.svelte-113tqd5){background:var(--accent);border-color:var(--accent);color:#fff}main.svelte-113tqd5{min-width:0;min-height:0;position:relative;overflow:hidden}nav.svelte-113tqd5{background:var(--surface);border-top:1px solid var(--line);padding-bottom:env(safe-area-inset-bottom);grid-template-columns:repeat(4,1fr);display:grid}nav.svelte-113tqd5 button:where(.svelte-113tqd5){min-height:56px;color:var(--muted);font:inherit;background:0 0;border:0;border-top:3px solid #0000;font-weight:600}nav.svelte-113tqd5 button.onroute:where(.svelte-113tqd5){color:var(--accent)}nav.svelte-113tqd5 button.active:where(.svelte-113tqd5){color:var(--text);border-top-color:var(--accent)}@media (width<=899px){header.collapsed.svelte-113tqd5 .fields:where(.svelte-113tqd5),header.svelte-113tqd5:not(.collapsed) .summary:where(.svelte-113tqd5){display:none}}@media (width>=900px){.viewer.svelte-113tqd5{grid-template:"head map"minmax(0,1fr)"head nav"/380px minmax(0,1fr)}header.svelte-113tqd5{border-bottom:0;border-right:1px solid var(--line);grid-area:head;align-content:start;max-height:none;padding:20px}main.svelte-113tqd5{grid-area:map}nav.svelte-113tqd5{grid-area:nav}.summary.svelte-113tqd5,.done.svelte-113tqd5{display:none}.steps.svelte-113tqd5{flex-direction:column;overflow:visible}.steps.svelte-113tqd5 button:where(.svelte-113tqd5){text-align:left;width:100%}}
