.region.svelte-1nk571a{pointer-events:auto}.terrain-bg.svelte-1nk571a{fill:var(--t);stroke:var(--t);stroke-linejoin:round}[data-terrain=grassland].svelte-1nk571a .terrain-bg:where(.svelte-1nk571a){--t: #c5d199}[data-terrain=wasteland].svelte-1nk571a .terrain-bg:where(.svelte-1nk571a){--t: #e0c98a}[data-terrain=hills].svelte-1nk571a .terrain-bg:where(.svelte-1nk571a){--t: #c69d6e}[data-terrain=forest].svelte-1nk571a .terrain-bg:where(.svelte-1nk571a){--t: #8aa467}[data-terrain=swamp].svelte-1nk571a .terrain-bg:where(.svelte-1nk571a){--t: #94b4a3}[data-terrain=mountains].svelte-1nk571a .terrain-bg:where(.svelte-1nk571a){--t: #b0a89c}[data-terrain=water].svelte-1nk571a .terrain-bg:where(.svelte-1nk571a){--t: #9ab9cc}.motif.svelte-1nk571a{fill:none;stroke:var(--ink);stroke-width:.6;stroke-linecap:round;stroke-linejoin:round;opacity:.55}[data-terrain=forest].svelte-1nk571a .motif:where(.svelte-1nk571a){fill:var(--ink);fill-opacity:.35;stroke:var(--ink);stroke-width:.4}[data-terrain=wasteland].svelte-1nk571a .motif:where(.svelte-1nk571a){fill:var(--ink);fill-opacity:.6;stroke:none}.water-glyph.svelte-1nk571a path:where(.svelte-1nk571a){fill:none;stroke:#5c809a;stroke-width:1.2;stroke-linecap:round;opacity:.7}.basin.svelte-1nk571a{fill:#9ab9cc;stroke:#4a7090;stroke-width:1.2}.marker.svelte-1wdk7v2{pointer-events:auto}.shelter-dot.svelte-1wdk7v2{fill:var(--parchment);stroke:var(--ink);stroke-width:1;pointer-events:auto}.marker.svelte-1wdk7v2 .marker-bg:where(.svelte-1wdk7v2){fill:#f1e4c8;stroke:var(--ink);stroke-width:1.2}.marker.svelte-1wdk7v2 .marker-glyph:where(.svelte-1wdk7v2){fill:none;stroke:var(--ink);stroke-width:1.3;stroke-linecap:round;stroke-linejoin:round}.marker[data-kind=shelter].svelte-1wdk7v2 .marker-bg:where(.svelte-1wdk7v2){fill:#f1e4c8}.marker[data-kind=feature].svelte-1wdk7v2 .marker-bg:where(.svelte-1wdk7v2){fill:#e9d3a8}.marker[data-kind=dungeon].svelte-1wdk7v2 .marker-bg:where(.svelte-1wdk7v2){fill:#d8b890}.marker[data-kind=npc].svelte-1wdk7v2 .marker-bg:where(.svelte-1wdk7v2){fill:#e0c98a;stroke-dasharray:2 2}.marker[data-kind=trouble].svelte-1wdk7v2 .marker-bg:where(.svelte-1wdk7v2){fill:#d4a76b;stroke-dasharray:2 2}.marker[data-kind=combat].svelte-1wdk7v2 .marker-bg:where(.svelte-1wdk7v2){fill:#b66a4a;stroke:#3a1a10}.marker[data-kind=combat].svelte-1wdk7v2 .marker-glyph:where(.svelte-1wdk7v2){stroke:#3a1a10;stroke-width:1.8}.map-wrap.svelte-1n46o8q{width:100%;height:100%;position:relative;cursor:grab;-webkit-user-select:none;user-select:none;overflow:hidden}.map-wrap.dragging.svelte-1n46o8q{cursor:grabbing}.map.svelte-1n46o8q{display:block;width:100%;height:100%}.road-spline.svelte-1n46o8q{fill:none;stroke:var(--ink);stroke-width:1.6;stroke-linecap:round;stroke-linejoin:round;opacity:.85}.river-ribbon.svelte-1n46o8q{fill:#9ab9cc;stroke:none}.fog.svelte-1n46o8q{fill:#140e07f2;pointer-events:none}.party-token.svelte-1n46o8q{pointer-events:auto;cursor:grab;filter:drop-shadow(0 1px 1.5px rgba(0,0,0,.4))}.party-token.dragging-token.svelte-1n46o8q{cursor:grabbing;opacity:.5}.hud-top.svelte-1n46o8q{position:absolute;top:1.2em;left:1.5em;pointer-events:none;color:var(--ink)}.hud-top.svelte-1n46o8q h1:where(.svelte-1n46o8q){font-family:IM Fell English SC,IM Fell English,serif;font-size:2.2em;margin:0;line-height:1;letter-spacing:.04em;text-shadow:1px 1px 0 rgba(255,255,255,.4)}.hud-top.svelte-1n46o8q .subtitle:where(.svelte-1n46o8q){font-style:italic;font-size:.95em;color:var(--ink-soft);margin-left:.2em}.hud-bottom.svelte-1n46o8q{position:absolute;bottom:1.2em;left:1.5em;right:1.5em;display:flex;gap:1.4em;align-items:center;flex-wrap:wrap;background:#e8dac1d9;border:1px solid var(--ink);padding:.7em 1.1em;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px)}.label.svelte-1n46o8q{text-transform:uppercase;font-size:.7em;letter-spacing:.15em;color:var(--ink-soft);margin-right:.5em}.seed.svelte-1n46o8q,.coord.svelte-1n46o8q{font-family:IM Fell English,monospace;font-size:1.05em;background:#ffffff4d;padding:.15em .5em;border:1px solid var(--ink)}.actions.svelte-1n46o8q{margin-left:auto;display:flex;gap:.5em}.hud-tab.svelte-1n46o8q{display:none}@media (min-width: 641px){.hud-tab.svelte-1n46o8q{display:flex;align-items:center;justify-content:center;position:absolute;top:-1.45em;left:50%;transform:translate(-50%);width:3.4em;height:1.5em;padding:0;font-size:.9em;line-height:1;background:#e8dac1eb;border:1px solid var(--ink);border-bottom:none;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px)}.hud-bottom.collapsed.svelte-1n46o8q{left:50%;right:auto;transform:translate(-50%);width:max-content;padding:0;border:none;background:transparent;-webkit-backdrop-filter:none;backdrop-filter:none}.hud-bottom.collapsed.svelte-1n46o8q>:where(.svelte-1n46o8q):not(.hud-tab){display:none}.hud-bottom.collapsed.svelte-1n46o8q .hud-tab:where(.svelte-1n46o8q){position:static;transform:none;top:auto;border-bottom:1px solid var(--ink)}}.burger.svelte-1n46o8q{display:none;position:absolute;bottom:1.2rem;left:1.5rem;z-index:6;width:2.6rem;height:2.6rem;font-size:1.2em;line-height:1;padding:0;background:#e8dac1eb;border:1px solid var(--ink);-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px)}@media (max-width: 640px){.burger.svelte-1n46o8q{display:flex;align-items:center;justify-content:center}.hud-bottom.svelte-1n46o8q{left:1.5em;right:1.5em;bottom:4.4em;flex-direction:column;align-items:stretch;gap:.7em}.hud-bottom.svelte-1n46o8q:not(.open){display:none}.actions.svelte-1n46o8q{margin-left:0;flex-direction:column;align-items:stretch}.seed-block.svelte-1n46o8q,.coord-block.svelte-1n46o8q{display:flex;align-items:center;justify-content:space-between}.label.svelte-1n46o8q{margin-right:0}.hud-top.svelte-1n46o8q h1:where(.svelte-1n46o8q){font-size:1.7em}.hud-top.svelte-1n46o8q .subtitle:where(.svelte-1n46o8q){font-size:.75em}}.info-panel.svelte-1n46o8q{position:absolute;top:1.5em;right:1.5em;background:#e8dac1eb;border:1px solid var(--ink);padding:.9em 1.2em;min-width:200px;font-size:.95em;color:var(--ink);-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);pointer-events:none}.info-coord.svelte-1n46o8q{font-family:IM Fell English SC,serif;font-size:1.1em;letter-spacing:.08em;color:var(--ink-soft);margin-bottom:.3em}.info-terrain.svelte-1n46o8q{font-size:1.3em;font-style:italic;text-transform:capitalize;margin-bottom:.4em}.info-content.svelte-1n46o8q{border-top:1px solid rgba(58,38,20,.3);padding-top:.4em;margin-top:.4em;display:flex;align-items:center;gap:.5em}.info-icon.svelte-1n46o8q{flex:0 0 auto;width:2.1em;height:2.1em;overflow:visible}.info-icon-bg.svelte-1n46o8q{fill:#f1e4c8;stroke:var(--ink);stroke-width:1.2}.info-icon-glyph.svelte-1n46o8q{fill:none;stroke:var(--ink);stroke-width:1.3;stroke-linecap:round;stroke-linejoin:round}.info-icon[data-kind=feature].svelte-1n46o8q .info-icon-bg:where(.svelte-1n46o8q){fill:#e9d3a8}.info-icon[data-kind=dungeon].svelte-1n46o8q .info-icon-bg:where(.svelte-1n46o8q){fill:#d8b890}.info-icon[data-kind=npc].svelte-1n46o8q .info-icon-bg:where(.svelte-1n46o8q){fill:#e0c98a;stroke-dasharray:2 2}.info-icon[data-kind=trouble].svelte-1n46o8q .info-icon-bg:where(.svelte-1n46o8q){fill:#d4a76b;stroke-dasharray:2 2}.info-icon[data-kind=combat].svelte-1n46o8q .info-icon-bg:where(.svelte-1n46o8q){fill:#b66a4a;stroke:#3a1a10}.info-icon[data-kind=combat].svelte-1n46o8q .info-icon-glyph:where(.svelte-1n46o8q){stroke:#3a1a10;stroke-width:1.8}.info-kind.svelte-1n46o8q{text-transform:uppercase;font-size:.7em;letter-spacing:.15em;color:var(--ink-soft);margin-right:.5em}.info-label.svelte-1n46o8q{font-size:1.05em}.info-meta.svelte-1n46o8q{font-size:.85em;color:var(--ink-soft);margin-top:.3em;font-style:italic}@media (max-width: 640px){.info-panel.svelte-1n46o8q{top:auto;bottom:1.2rem;right:1rem;min-width:0;max-width:62vw;padding:.6em .85em;font-size:.8em}}:root{--parchment: #e8dac1;--parchment-dark: #d4c19e;--ink: #3a2614;--ink-soft: #5a4226;--accent: #8b4a2b}*{box-sizing:border-box}html,body{margin:0;padding:0;height:100%;background:var(--parchment);color:var(--ink);font-family:IM Fell English,Georgia,serif;overflow:hidden;-webkit-font-smoothing:antialiased}#app{height:100%;width:100%;position:relative}button{font-family:inherit;color:var(--ink);background:var(--parchment-dark);border:1px solid var(--ink);padding:.4em .9em;cursor:pointer;transition:background .15s;font-size:.95em}button:hover{background:var(--parchment)}a{color:var(--accent)}
