:root{--ogis-content-width:1240px}html{scroll-padding-top:6.5rem}.site{flex-direction:column;min-height:100vh;display:flex}.site-main{flex:1;max-width:none;padding:0}.site-header{isolation:isolate;background:var(--ogis-header-bg);grid-template-rows:120px;grid-template-columns:1fr;margin:0;padding:0;display:grid;position:relative}.site-header .background-map{z-index:0;background:var(--ogis-header-bg);grid-area:1/1;min-height:0}.site-header__inner{z-index:1;width:100%;max-width:var(--ogis-content-width);pointer-events:none;grid-area:1/1;justify-content:flex-start;align-items:center;margin:0 auto;padding:0 1.5rem;display:flex}.brand{white-space:nowrap;pointer-events:auto;align-items:center;gap:.9rem;display:inline-flex}.brand,.brand:hover{color:var(--ogis-brand-mark);text-decoration:none}.brand__mark-wrap{isolation:isolate;place-items:center;display:grid;position:relative}.brand__mark-wrap:before{z-index:-1;filter:blur(3px);content:"";pointer-events:none;background:radial-gradient(circle,#0bb80b73,#0a8a0a24 32%,#0000 60%);border-radius:50%;position:absolute;inset:-18%}.brand__mark{width:72px;height:72px;color:var(--ogis-brand-mark);filter:drop-shadow(0 0 1.5px #fffffff2)drop-shadow(0 0 3px #0bb80b)drop-shadow(0 0 7px #0a8a0acc);display:block}.brand__suffix{color:var(--ogis-brand-accent);letter-spacing:.01em;text-shadow:0 0 7px #0dd70d8c;font-size:.95rem;font-weight:700}.site-header .leaflet-bottom.leaflet-right{right:max(0px,.5 * (100% - (-3rem + var(--ogis-content-width))))}.site-nav{z-index:200;background:var(--ogis-bg);border-bottom:1px solid var(--ogis-border);padding:0;display:block;position:sticky;top:0}.breadcrumb__item:before,.site-nav:after{content:none}.site-nav__inner{max-width:var(--ogis-content-width);scrollbar-width:none;align-items:center;gap:1.75rem;margin:0 auto;padding:.65rem 1.5rem;display:flex;overflow-x:auto}.site-nav__inner::-webkit-scrollbar{display:none}.site-nav .site-nav__link{color:var(--ogis-muted);white-space:nowrap;border-bottom:2px solid #0000;flex:none;padding:.2rem 0;font-size:.875rem;text-decoration:none;transition:color .15s,border-color .15s}.site-nav .site-nav__link:hover{color:var(--ogis-accent);text-decoration:none}.site-nav .site-nav__link--active{border-bottom-color:var(--ogis-brand-accent);color:var(--ogis-accent);font-weight:700}.docs-grid{max-width:var(--ogis-content-width);grid-template-columns:minmax(0,1fr) 220px;align-items:start;gap:calc(clamp(2rem,5vw,4rem));margin:0 auto;padding:2.75rem 1.5rem 4.5rem;display:grid}.docs-article{min-width:0;max-width:860px}.breadcrumb{margin-bottom:1rem;font-size:.8125rem}.breadcrumb__list{color:var(--ogis-muted);flex-wrap:wrap;gap:.35rem;margin:0;padding:0;list-style:none;display:flex}.breadcrumb__item{align-items:baseline;gap:0;display:flex}.breadcrumb__item,.breadcrumb__item a{margin:0;padding:0}.breadcrumb__sep{color:var(--ogis-muted);margin-left:.35rem}.docs-title{color:var(--ogis-heading);letter-spacing:-.02em;margin:0 0 1rem;font-size:calc(clamp(2rem,4vw,2.6rem));line-height:1.15}.docs-lead{max-width:65ch;color:var(--ogis-muted);margin:0 0 2.25rem;font-size:1.125rem}.docs-lead a{color:var(--ogis-accent)}.docs-prose .muted{color:var(--ogis-muted)}@media (prefers-color-scheme:dark){.shiki,.shiki span{color:var(--shiki-dark)!important;background-color:var(--shiki-dark-bg)!important;font-style:var(--shiki-dark-font-style)!important;font-weight:var(--shiki-dark-font-weight)!important;-webkit-text-decoration:var(--shiki-dark-text-decoration)!important;-webkit-text-decoration:var(--shiki-dark-text-decoration)!important;text-decoration:var(--shiki-dark-text-decoration)!important}}.docs-prose pre,.docs-prose pre.shiki{background:var(--ogis-code-block-bg)!important}.docs-prose .video-figure video{aspect-ratio:16/9;width:100%;height:auto}.docs-prose p:has(>a[id]:only-child){margin:0}.settings{margin:1.75rem 0;padding:0;list-style:none}.setting{border-top:1px solid var(--ogis-border);padding:1.25rem 0}.setting:first-child{border-top:0}.setting__title{color:var(--ogis-heading);letter-spacing:0;text-transform:none;margin:0;font-size:1.05rem;font-weight:700}.setting__detail{margin:.35rem 0 0;margin-inline-start:0}.setting__facts{color:var(--ogis-muted);flex-wrap:wrap;gap:.35rem 1.5rem;margin:0 0 .65rem;font-size:.8125rem;display:flex}.setting__fact{flex-wrap:wrap;align-items:baseline;gap:.4rem;min-width:0;display:inline-flex}.setting__label{color:var(--ogis-muted);letter-spacing:.06em;text-transform:uppercase;font-size:.6875rem;font-weight:700}.setting__fact code,.setting__fact>span:last-child{overflow-wrap:anywhere}.setting__tip>:first-child{margin-top:0}.setting__tip>:last-child{margin-bottom:0}.setting__tip a{color:var(--ogis-accent)}.tutorial-grid{grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:1rem;margin:1.75rem 0;display:grid}.tutorial-grid--features{grid-template-columns:minmax(0,22rem)}.tutorial-card{background:var(--ogis-surface);border:1px solid var(--ogis-border);border-radius:var(--ogis-radius);color:inherit;flex-direction:column;padding:0;text-decoration:none;display:flex;overflow:hidden}.tutorial-card:not(:has(.tutorial-card__body)){gap:.4rem;padding:1.1rem 1.25rem}.tutorial-card:hover{background:var(--ogis-bg-alt);border-color:var(--ogis-accent);text-decoration:none}.tutorial-card .tutorial-card__image{aspect-ratio:16/9;-o-object-fit:cover;object-fit:cover;border:0;border-bottom:1px solid var(--ogis-border);background:var(--ogis-bg-alt);border-radius:0;width:100%;margin:0;display:block}.tutorial-card__body{flex-direction:column;gap:.4rem;padding:1.1rem 1.25rem;display:flex}.tutorial-card__title{color:var(--ogis-heading);font-size:1rem;font-weight:700}.tutorial-card__description{color:var(--ogis-muted);font-size:.875rem;line-height:1.55}.video-grid{grid-template-columns:repeat(auto-fill,minmax(min(100%,260px),1fr));gap:1.5rem;margin:1.75rem 0;display:grid}.video-grid .video-figure{margin:0}.callout{background:var(--ogis-surface);border:1px solid var(--ogis-border);border-left:3px solid var(--ogis-accent);border-radius:0 var(--ogis-radius) var(--ogis-radius) 0;margin:1.75rem 0;padding:1rem 1.25rem}.callout--warning{border-left-color:var(--ogis-warning)}.callout__title{color:var(--ogis-heading);letter-spacing:.01em;margin:0 0 .4rem;font-size:.9375rem;font-weight:700}.callout__body>:last-child{margin-bottom:0}.callout__body p{margin:0}.map-demo{background:var(--ogis-surface);border:1px solid var(--ogis-border);border-radius:var(--ogis-radius);margin:2rem 0;overflow:hidden}.map-demo,.map-demo__frame{position:relative}.map-demo__canvas{width:100%;min-height:300px}.leaflet-control-zoom a{color:#000;background-color:#fff;border:0;border-bottom:1px solid #ccc;border-radius:0;padding:0}.leaflet-control-zoom a:last-child{border-bottom:0}.leaflet-popup-content-wrapper :is(p,ul,ol,dl,blockquote,table){color:#333}.docs-prose .waymark-map.waymark-map-id-4028{border:10px solid #00f}.docs-prose .waymark-map.waymark-collection-id-27{border:10px solid green}.docs-prose #waymark-shortcode-pink_me{border:10px solid pink}.docs-prose #waymark-map-beer_markers .waymark-marker-beer{border:10px solid orange;border-radius:50%}.map-demo__status{background:var(--ogis-surface);color:var(--ogis-muted);pointer-events:none;justify-content:center;align-items:center;margin:0;padding:1rem;font-size:.875rem;display:flex;position:absolute;inset:0}.map-demo__status--error{color:var(--ogis-caution)}.map-demo--hide-locate-button .leaflet-control-locate{display:none!important}.map-demo__elevation,.prev-next{border-top:1px solid var(--ogis-border)}.docs-prose .text-markers-screenshot img{-o-object-fit:cover;object-fit:cover;width:350px;height:294px;margin:0}.docs-outline{max-height:calc(100vh - 8rem);font-size:.8125rem;position:sticky;top:6.5rem;overflow-y:auto}.docs-outline__title{color:var(--ogis-heading);letter-spacing:.08em;text-transform:uppercase;margin:0 0 .65rem;font-size:.75rem;font-weight:700}.docs-outline__list{border-left:1px solid var(--ogis-border);margin:0;padding:0;list-style:none}.docs-outline__item{margin:0;line-height:1.45}.docs-outline__link{color:var(--ogis-muted);border-radius:0;margin:0;padding:.25rem 0 .25rem .75rem;text-decoration:none;display:block}.docs-outline__item--level-1 .docs-outline__link{padding-left:1.5rem}.docs-outline__link:hover{color:var(--ogis-heading);text-decoration:none}.docs-outline__link--active{box-shadow:inset 2px 0 0 var(--ogis-accent);color:var(--ogis-accent);margin-left:-1px}.prev-next{grid-template-columns:1fr 1fr;gap:1rem;margin-top:3.5rem;padding-top:1.5rem;display:grid}.prev-next__item{background:var(--ogis-surface);border:1px solid var(--ogis-border);border-radius:var(--ogis-radius);flex-direction:column;gap:.2rem;padding:1rem 1.1rem;text-decoration:none;display:flex}.prev-next__item:hover{background:var(--ogis-bg-alt);border-color:var(--ogis-accent);text-decoration:none}.prev-next__item--next{text-align:right;align-items:flex-end}.prev-next__label{color:var(--ogis-muted);letter-spacing:.08em;text-transform:uppercase;font-size:.6875rem}.prev-next__title{color:var(--ogis-heading);font-size:.9375rem}.prev-next__item:hover .prev-next__title{color:var(--ogis-accent-hover)}.prev-next__spacer,.site-footer{display:block}.site-footer{border-top:1px solid var(--ogis-border);background:var(--ogis-footer-bg);max-width:none;color:var(--ogis-footer-fg);margin:0;padding:0}.site-footer__inner{max-width:var(--ogis-content-width);gap:.75rem 1rem;margin:0 auto;padding:1.75rem 1.5rem}.site-footer__brand,.site-footer__inner{flex-wrap:wrap;align-items:center;display:flex}.site-footer__brand{gap:.75rem}.site-footer__mark{width:40px;height:40px;display:block}@media (prefers-color-scheme:light){.site-footer__mark{filter:brightness(0)}}.site-footer__copy{color:var(--ogis-footer-fg);margin:0;font-size:.8125rem}.site-footer__copy a{color:var(--ogis-footer-link)}.site-footer__copy a:hover{color:var(--ogis-accent-hover)}@media (width<=1000px){.docs-grid{grid-template-columns:minmax(0,860px);justify-content:center}.docs-outline{display:none}}@media (width<=760px){.site-header{grid-template-rows:100px}.site-header__inner{padding:0 1rem}.brand{gap:.6rem}.brand__mark{width:56px;height:56px}.brand__mark-wrap:before{inset:-14%}.brand__suffix,.site-nav .site-nav__link{font-size:.75rem}.site-nav__inner{gap:1.25rem;padding:.55rem 1rem}.docs-grid{padding:2rem 1rem 3.5rem}.site-footer__inner{padding:1.5rem 1rem}}@media (width<=640px){.prev-next{grid-template-columns:1fr}.prev-next__item--next{text-align:left;align-items:flex-start}.prev-next__spacer{display:none}}
