:root{--paper: #eef0e9;--panel: #ffffff;--ink: #1d221b;--ink-2: #57614f;--ink-3: #8f9584;--line: #e4e6dc;--line-strong: #cbcfc0;--contour: #a0522d;--contour-soft: #f2e7dc;--green: #2d5238;--green-hover: #24422d;--green-soft: #e9f0e8;--warn: #8a5a13;--warn-soft: #fdf3e3;--error: #9c3a2a;--ok: #2d5238;--font-ui: "Plus Jakarta Sans", "Helvetica Neue", Arial, sans-serif;--font-mono: "IBM Plex Mono", ui-monospace, "Cascadia Mono", monospace;--radius: 10px;--r-card: 14px;--shadow: 0 1px 2px rgba(29, 34, 27, .06), 0 6px 20px rgba(29, 34, 27, .08);--shadow-lift: 0 2px 6px rgba(29, 34, 27, .1), 0 12px 32px rgba(29, 34, 27, .14)}*{box-sizing:border-box}html,body,#root{margin:0;height:100%;font-family:var(--font-ui);color:var(--ink);background:var(--paper)}html{font-size:100%}body,#root{font-size:.875rem}::selection{background:var(--contour-soft)}button{font-family:var(--font-ui);font-size:13px;font-weight:500;padding:9px 14px;min-height:36px;border-radius:var(--radius);border:1px solid var(--line-strong);background:var(--panel);color:var(--ink);cursor:pointer;transition:background .15s ease,border-color .15s ease,box-shadow .15s ease}:where(button:not(:disabled)):hover{background:var(--paper);border-color:var(--ink-3)}button:focus-visible,select:focus-visible,input:focus-visible,a:focus-visible{outline:2px solid var(--contour);outline-offset:2px}button:disabled{opacity:.4;cursor:default}select{width:100%;font-family:var(--font-ui);font-size:13px;padding:9px 10px;border-radius:var(--radius);border:1px solid var(--line-strong);background:var(--panel);color:var(--ink)}label{display:flex;flex-direction:column;gap:5px;font-size:12.5px;color:var(--ink-2)}input[type=range]{-webkit-appearance:none;-moz-appearance:none;appearance:none;width:100%;height:18px;background:transparent;margin:0}input[type=range]::-webkit-slider-runnable-track{height:2px;background:var(--line-strong)}input[type=range]::-moz-range-track{height:2px;background:var(--line-strong)}input[type=range]::-webkit-slider-thumb{-webkit-appearance:none;width:14px;height:14px;margin-top:-6px;border-radius:50%;background:var(--panel);border:2px solid var(--contour);cursor:pointer}input[type=range]::-moz-range-thumb{width:10px;height:10px;border-radius:50%;background:var(--panel);border:2px solid var(--contour);cursor:pointer}input[type=checkbox]{accent-color:var(--green)}@media(prefers-reduced-motion:reduce){button{transition:none}}footer{padding:4px 8px 8px;font-family:var(--font-mono);font-size:9.5px;line-height:1.7;letter-spacing:.02em;text-transform:uppercase;color:var(--ink-3);text-align:center}.maplibregl-ctrl-attrib{font-family:var(--font-mono)!important;font-size:9.5px!important}@media(prefers-color-scheme:dark){:root{--paper: #262b23;--panel: #1b1f19;--ink: #edefe7;--ink-2: #b0b8a6;--ink-3: #828a77;--line: #333a2f;--line-strong: #49523f;--contour: #d98f63;--contour-soft: #3a2519;--green: #3f7a4f;--green-hover: #4b8d5c;--green-soft: #24382a;--warn: #e3aa50;--warn-soft: #322611;--error: #e07460;--ok: #7fbb8c;--shadow: 0 1px 2px rgba(0, 0, 0, .4), 0 6px 20px rgba(0, 0, 0, .45);--shadow-lift: 0 2px 6px rgba(0, 0, 0, .5), 0 12px 32px rgba(0, 0, 0, .55)}}footer a{color:var(--contour);text-decoration:underline;text-underline-offset:2px}.server-down{min-height:100dvh;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:8px;text-align:center;padding:24px}.server-down h1{font-size:20px}.server-down p{color:var(--muted, #6b6b5f);max-width:44ch}
