:root{--bg-color:#111;--text-color:#eee;--muted-color:#aaa;--highlight-color:#367beb;--highlight-bg-color:rgba(58, 134, 255, 0.12);--selected-color:#0f8b1d;--drop-shadow:0 8px 24px rgba(0, 0, 0, 0.25);--radius:12px;--radius-sm:8px;--radius-xs:4px;--font-size-base:16px;--font-size-icon:18px;--font-size-big:1.1em;--spacing-xxs:3px;--spacing-xs:4px;--spacing-sm:6px;--spacing-md:8px;--spacing-lg:10px;--spacing-xl:12px;--spacing-xxl:14px;--spacing-xxxl:16px;--padding-togglebar:10px 0;--padding-toolbar:8px 16px;--padding-dialog:14px 32px;--legal-dialog-padding:24px var(--spacing-xs) var(--spacing-md) var(--spacing-md);--border-main:1px solid rgba(255, 255, 255, 0.08);--border-strong:1px solid rgba(255, 255, 255, 0.12);--border-hover:1px solid var(--highlight-color)}body{overflow:hidden}:is(body,#app,html){background:var(--bg-color);color:var(--text-color);font-family:ui-sans-serif,system-ui,-apple-system,Segoe UI,Roboto,Helvetica,Arial,'Apple Color Emoji','Segoe UI Emoji';height:100%;margin:0}a{color:#33f;font-size:var(--font-size-big)}#loader{position:absolute;left:50%;top:15vh;transform:translateX(-50%)}button{display:flex;align-items:center;min-width:48px;min-height:48px;max-width:48px;max-height:48px;justify-content:center;border:none;background:0 0;color:var(--text-color);cursor:pointer;font-size:var(--font-size-icon);padding:0 var(--spacing-lg);border-radius:var(--radius-sm);cursor:pointer}button img{width:24px;height:24px}button:hover img{filter:brightness(50%) sepia(100%) saturate(1000%) hue-rotate(180deg)}button.active img,button.invert img{filter:invert(1);vertical-align:middle}button.invert:hover img{filter:invert(1) brightness(50%) sepia(100%) saturate(1000%) hue-rotate(180deg)}button.toggle{background:var(--bg-color);border-radius:24px}button.toggle:not(.menu-btn){margin:var(--spacing-xxl) 0}button.toggle.active{background-color:var(--highlight-color)}select{padding:var(--spacing-sm) 0}.menu-btn{display:none}.dialog-message{position:fixed;left:50%;top:100px;transform:translateX(-50%);transition:opacity .3s;padding:var(--padding-dialog);border-radius:var(--radius-sm);background:color-mix(in srgb,var(--bg-color),transparent 10%);box-shadow:0 2px 16px #0003;color:#fff;font-size:var(--font-size-big);font-variant:small-caps;z-index:9999}.dialog-message:has(button)~.dialog-mask{position:fixed;left:0;right:0;top:0;bottom:0;backdrop-filter:blur(3px);z-index:9998}.dialog-message:not(:has(button)){pointer-events:none}.dialog-data{width:min(600px,50vw)}.dialog-data textarea{width:100%;height:4rem;margin-top:var(--spacing-sm);resize:none}.dialog-actions{margin-top:var(--spacing-md);display:flex;justify-content:flex-start;flex-direction:row-reverse;gap:var(--spacing-sm);border-top:1px solid #fff3;padding-top:var(--spacing-xs)}.dialog-btn{color:#fff;padding:var(--spacing-xs) var(--spacing-lg);font-size:1em;cursor:pointer;font-weight:600;min-width:none;max-width:none}.dialog-btn:hover{color:var(--highlight-color)}.legal-btn{background:0 0;border:none;color:var(--text-color);cursor:pointer;font-size:var(--font-size-large)}.legal-close-btn{position:absolute;top:calc(10vh - 32px);right:calc(10vw - var(--spacing-md) - 16px);min-width:40px;min-height:40px;max-width:40px;max-height:40px;background:#fff;border:none;padding:var(--spacing-md) var(--spacing-xl);border-radius:var(--radius);cursor:pointer;font-size:var(--font-size-base);z-index:1}.legal-close-btn:hover{background-color:var(--highlight-color)}.legal-dialog{position:fixed;top:0;left:0;right:0;bottom:0;display:flex;align-items:center;justify-content:center;padding:var(--spacing-xxxl);backdrop-filter:blur(6px);z-index:99999}.legal-dialog-frame{width:80%;height:80%;position:relative;border-radius:var(--radius);background:var(--bg-color);overflow:hidden;padding:var(--legal-dialog-padding)}.legal-dialog-content{width:calc(100% - 2 * var(--spacing-xl));height:calc(100% - 2 * var(--spacing-xxxl));padding:var(--spacing-xl);border-radius:var(--radius);background:var(--bg-color);color:var(--text-color);box-shadow:var(--drop-shadow);scrollbar-width:this;scrollbar-color:rgba(255,255,255,0.4) transparent;overflow-y:auto}.legal-dialog-content h2{margin-top:0}.legal-section:last-child p{margin-bottom:0}.legal-contact p{margin:0}#map{inset:0;position:absolute;z-index:1}.search-container{left:var(--spacing-xxxl);position:absolute;top:var(--spacing-xxxl);width:min(720px,92vw);z-index:1000}#search-loading,#search-no-results,#search-results{position:absolute;top:74px}#search-results{max-height:42vh;padding:var(--spacing-lg) var(--spacing-md);background:var(--bg-color);border:var(--border-main);border-radius:var(--radius);box-shadow:var(--drop-shadow);list-style:none;margin:var(--spacing-md) 0 0 0;overflow-y:auto;scrollbar-width:thin;scrollbar-color:#fffc transparent}#search-results .name{flex-grow:1;color:var(--text-color)}#search-results li.already-selected .name{color:var(--selected-color)}#search-results li:not(.already-selected) img{display:none}#search-loading,#search-no-results{background:var(--bg-color);border:var(--border-main);border-radius:var(--radius);box-shadow:var(--drop-shadow);color:var(--muted-color);margin-top:var(--spacing-md);padding:var(--spacing-lg) var(--spacing-xl)}#search-results li{display:flex;align-items:center;gap:var(--spacing-lg);padding:var(--spacing-lg) var(--spacing-xl);border-radius:var(--radius-sm);justify-content:space-between;user-select:none;cursor:pointer}#search-results li:is(.highlighted,:hover){background:var(--highlight-bg-color)}#search-results li .already-selected{flex-grow:0}#search-results li .result-name{flex-grow:1}.selected-container{background:var(--bg-color);border:var(--border-main);border-radius:var(--radius);box-shadow:var(--drop-shadow);backdrop-filter:blur(6px);bottom:min(var(--spacing-xxxl),1vw,1vh);left:min(var(--spacing-xxxl),1vw,1vh);position:absolute;width:min(360px,80vw);z-index:900}.selected-container[dir=rtl]{right:min(var(--spacing-xxxl),1vw,1vh);left:auto}.selected-header{border-bottom:var(--border-main);color:var(--muted-color);font-size:var(--font-size-base);font-weight:600;padding:var(--spacing-lg) var(--spacing-xl)}.selected-header img{width:100%;max-height:6vh;object-fit:fill}.selected-covered{text-align:center;color:var(--highlight-color);font-size:var(--font-size-big)}.selected-covered.clickable{cursor:pointer}.selected-list{display:flex;flex-direction:column;gap:var(--spacing-xs);list-style:none;margin:0;max-height:20vh;overflow:auto;padding:var(--spacing-sm);scrollbar-color:#fff transparent;scrollbar-width:thin}.selected-list li{align-items:center;border-radius:var(--radius-sm);display:flex;gap:var(--spacing-lg);justify-content:space-between;padding:0 var(--spacing-lg);line-height:1.5rem}.selected-list-item.highlight{background:#404547}.selected-remove-btn{appearance:none;background:0 0;border:var(--border-strong);border-radius:var(--radius-sm);min-width:34px;min-height:34px;color:var(--text-color);cursor:pointer;line-height:1;padding:var(--spacing-xs) var(--spacing-lg)}.selected-remove-btn:hover{border:var(--border-hover)}.selected-name{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.toolbar-container{position:fixed;top:min(var(--spacing-xxxl),1vw,1vh);left:min(var(--spacing-xxxl),1vw,1vh);right:54px;display:flex;gap:var(--spacing-sm);z-index:1000}.toolbar-container[dir=rtl]{right:min(var(--spacing-xxxl),1vw,1vh);left:54px}.toolbar{display:flex;flex-wrap:wrap;flex-grow:1;gap:0 var(--spacing-xxxl);align-items:center;background:var(--bg-color);border:var(--border-main);border-radius:var(--radius);box-shadow:var(--drop-shadow);padding:var(--padding-toolbar);backdrop-filter:blur(6px)}.toolbar-options{display:flex;gap:0 var(--spacing-xs);align-items:center;padding:var(--spacing-sm) 0}.toolbar-options:not(.menu) button label{display:none}.toolbar-search{display:flex;flex-grow:1}.toolbar input[type=text]{background:0 0;border:none;color:var(--text-color);flex:1;font-size:var(--font-size-base);outline:0;padding:var(--spacing-xxl) var(--spacing-xl)}.toolbar .backup-btn input[type=file]{display:none}.toolbar-options.menu{display:flex;position:fixed;top:calc(min(var(--spacing-xxxl),1vw,1vh) + 70px);left:calc(min(var(--spacing-xxxl),1vw,1vh) - var(--spacing-lg));flex-wrap:wrap;gap:0 var(--spacing-sm);background:var(--bg-color);border:var(--border-main);border-radius:var(--radius);box-shadow:var(--drop-shadow);backdrop-filter:blur(6px)}.toolbar-options.menu :is(button,.select-lang){min-width:20rem;width:calc(50% - 2 * var(--spacing-lg));max-width:calc(50% - 2 * var(--spacing-lg));gap:0 var(--spacing-lg);margin:0 var(--spacing-md);justify-content:flex-start}.toolbar-options.menu .select-lang{margin:var(--spacing-md)}.toolbar-options.menu .select-lang select{margin:var(--spacing-md)}.toolbar-options.menu button label{display:inline-block;text-align:left;cursor:pointer;line-height:2em}#map .leaflet-top.leaflet-right{top:18px;right:var(--spacing-xl)}#map[dir=rtl] .leaflet-top.leaflet-right{left:var(--spacing-xl);right:auto}#map[dir=rtl] .leaflet-bottom.leaflet-right{left:0;right:auto}#map .leaflet-control-zoom{color:var(--text-color);background:var(--bg-color);margin:0;border:0;border-radius:var(--radius-sm);padding:var(--spacing-xxs)}#map .leaflet-control-zoom a{background:var(--bg-color);border-color:rgba(255,255,255,.08);color:var(--text-color)}#map :is(.leaflet-popup-content-wrapper,.leaflet-popup-tip){background:#1c1c1c;border:var(--border-main);color:var(--text-color)}#map .leaflet-control-zoom :is(.leaflet-control-zoom-in,.leaflet-control-zoom-out){border:0;color:var(--text-color);background:var(--bg-color)}#map .leaflet-control-zoom :is(.leaflet-control-zoom-in,.leaflet-control-zoom-out).leaflet-disabled,#map .leaflet-control-zoom :is(.leaflet-control-zoom-in,.leaflet-control-zoom-out).leaflet-disabled:hover{color:var(--bg-color);background:var(--text-color);filter:none}#map .leaflet-control-zoom .leaflet-control-zoom-in{border-top-left-radius:var(--radius-xs);border-top-right-radius:var(--radius-xs)}#map .leaflet-control-zoom .leaflet-control-zoom-out{border-bottom-left-radius:var(--radius-xs);border-bottom-right-radius:var(--radius-xs)}#map .leaflet-control-zoom :is(.leaflet-control-zoom-in,.leaflet-control-zoom-out):hover{filter:brightness(50%) sepia(100%) saturate(1000%) hue-rotate(180deg)}@media (max-width:1100px){.toolbar-search{width:100%;display:flex;align-items:center}.menu-btn{display:block}.toolbar-options{display:none}}@media (max-width:600px) or (max-height:500px){button.toggle{border-radius:var(--radius-xs)}.legal-dialog-frame{width:95vw;height:90vh}.legal-close-btn{top:calc(5vh - 32px);right:calc(5vw - var(--spacing-md) - 16px)}.search-container,.selected-container,.toolbar-container{left:0!important;right:0!important;width:100vw!important;min-width:0!important;max-width:100vw!important;border-radius:0!important;box-shadow:none!important;padding:0!important}.toolbar-container{top:0}.toolbar{flex-wrap:wrap;gap:var(--spacing-sm) 0;padding:var(--spacing-md);border-radius:0}.toolbar-options.menu{flex-wrap:wrap;width:100%;top:67px;border-top-left-radius:0;border-top-right-radius:0}.search-box input,.toolbar input[type=text]{font-size:var(--font-size-base);padding:var(--spacing-md) var(--spacing-md)}.selected-container{bottom:0!important;left:0!important;width:100vw!important;border-radius:0!important;max-width:100vw!important}.selected-header{padding:var(--spacing-md);font-size:var(--font-size-big)}.selected-list{max-height:30vh;padding:var(--spacing-xs)}#search-results{top:64px;max-height:30vh;max-width:calc(100vw - 54px);padding:var(--spacing-md) var(--spacing-xs);font-size:var(--font-size-big)}#search-loading,#search-no-results,#search-results{position:absolute;top:64px}.toolbar-container{gap:0;background:var(--bg-color)}.toolbar .lang-dropdown{min-width:90px;font-size:var(--font-size-big)}button{min-width:40px;min-height:40px;font-size:var(--font-size-large);touch-action:manipulation;overflow:hidden}.lang-dropdown{min-width:120px;font-size:var(--font-size-base);padding:var(--spacing-xs) var(--spacing-md);border-radius:var(--radius-sm);border:var(--border-main)}#map .leaflet-top.leaflet-right{top:71px;right:4px}}@media (max-width:400px) or (max-height:300px){:root{--font-size-base:14px;--font-size-icon:16px}}@media (max-height:800px){.selected-list{max-height:20vh}}