:root{--jp-bg: #f1f5f9;--jp-surface: #ffffff;--jp-border: #e2e8f0;--jp-ink: #0f172a;--jp-muted: #475569;--jp-accent: #2563eb;--jp-notice-bg: #eff6ff}*,*:before,*:after{box-sizing:border-box}html,body{margin:0;padding:0;background:var(--jp-bg);color:var(--jp-ink);font-family:system-ui,-apple-system,Segoe UI,Roboto,sans-serif}.jp-page{container-type:inline-size;max-inline-size:1400px;margin-inline:auto;padding:16px 20px 32px;display:flex;flex-direction:column;gap:16px}.jp-header{background:var(--jp-surface);border:1px solid var(--jp-border);border-radius:8px;padding:16px 20px}.jp-logo{margin-block-end:12px}.jp-title{margin:0;font-size:20px;font-weight:600}.jp-subtitle{margin:2px 0 0;color:var(--jp-muted);font-size:14px}.jp-subtitle:empty{display:none}.jp-notice{margin:12px 0 0;padding:10px 12px;border-inline-start:4px solid var(--jp-accent);background:var(--jp-notice-bg);font-size:13px;line-height:1.45}.jp-state{margin:0;padding:40px 20px;text-align:center;font-size:14px;color:var(--jp-muted)}.jp-state.is-error{color:#b91c1c}.jp-main{display:grid;grid-template-columns:minmax(340px,460px) minmax(0,1fr);grid-template-areas:"view map";gap:16px;align-items:start}.jp-main[hidden]{display:none}.jp-view{grid-area:view;min-inline-size:0;background:var(--jp-surface);border:1px solid var(--jp-border);border-radius:8px;padding:12px 14px}.jp-mapbox{grid-area:map;position:sticky;inset-block-start:16px;block-size:calc(100dvh - 32px);min-block-size:420px;border:1px solid var(--jp-border);border-radius:8px;overflow:clip;background:#e5e7eb}.jp-map{position:absolute;inset:0}.jp-mapbox.is-failed{position:static;block-size:auto;min-block-size:0;padding:16px;text-align:center;font-size:14px;color:var(--jp-muted)}.jp-footer{display:flex;flex-wrap:wrap;justify-content:space-between;gap:4px 16px;font-size:12px;color:var(--jp-muted)}.jp-footer a{color:var(--jp-accent)}@container (max-width: 860px){.jp-main{grid-template-columns:minmax(0,1fr);grid-template-areas:"map" "view"}.jp-mapbox{position:relative;inset-block-start:auto;block-size:45dvh;min-block-size:260px}}:root[data-device=phone] .jp-page{padding:8px 8px 24px;gap:10px}:root[data-device=phone] .jp-header{padding:12px 14px}:root[data-device=phone] .jp-main{grid-template-columns:minmax(0,1fr);grid-template-areas:"map" "view";gap:10px}:root[data-device=phone] .jp-mapbox{position:relative;inset-block-start:auto;block-size:45dvh;min-block-size:260px}:root[data-device=phone] .jp-view{padding:10px}
