:root{--bg:#191b1d;--ink:#e6e7e4;--line:#343739;--muted:#a0a5a4;--accent:#a0b9ac;color-scheme:dark}*{box-sizing:border-box}body{margin:0;background:var(--bg);color:var(--ink);font:14px "Segoe UI",Arial,sans-serif}button,input,select{font:inherit}button{cursor:pointer;color:inherit;background:#222527;border:1px solid var(--line);border-radius:3px;padding:9px 13px}button:hover{background:#303536}a{color:var(--accent)}button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible{outline:2px solid var(--accent);outline-offset:3px}[hidden]{display:none!important}header{height:54px;display:flex;align-items:center;justify-content:space-between;padding:0 22px;border-bottom:1px solid var(--line);background:#222527}.brand{font-size:21px;font-weight:600;color:var(--ink);text-decoration:none;display:flex;align-items:baseline;gap:18px}.brand span{font-size:13px;font-weight:400;color:var(--muted)}header button{border:0;background:none;font-size:13px}main{display:grid;grid-template-columns:310px 1fr;height:calc(100dvh - 54px)}aside{padding:24px 20px;overflow:auto;border-right:1px solid var(--line)}h1{font-family:Georgia,"Times New Roman",serif;font-weight:400;font-size:38px;margin:0 0 18px;line-height:1.1}.stats{display:grid;grid-template-columns:1fr 1fr;gap:16px;margin-bottom:21px}.stats strong{display:block;font-size:22px;font-weight:500;font-variant-numeric:tabular-nums;white-space:nowrap}.stats strong span{font-size:11px;color:var(--muted);margin-left:5px}.stats small{display:block;font-size:11px;color:var(--muted);margin-top:4px}nav{display:flex;gap:20px;border-bottom:1px solid var(--line);margin-bottom:18px}nav button{border:0;border-radius:0;background:none;font-size:13px;padding:10px 0;color:var(--muted)}nav button.active{color:var(--ink);box-shadow:0 2px var(--accent)}.search{display:flex;align-items:center;gap:9px;padding:8px 10px;border:1px solid var(--line);border-radius:3px;color:var(--muted);background:#222527}.search input{min-width:0;width:100%;border:0;background:none;color:var(--ink);font-size:13px;outline-offset:1px}.list{margin-top:8px}.location{width:100%;display:flex;text-align:left;gap:11px;background:none;border:0;border-bottom:1px solid #303436;border-radius:0;padding:13px 5px}.location:hover{background:#252a2c}.location.active{background:#303b36}.location .num{font:11px Consolas,monospace;color:#858d8a;padding-top:3px}.location strong{display:block;font-size:13px;font-weight:500}.location small{display:block;font-size:11px;color:var(--muted);margin-top:5px;line-height:1.4}h2{font-size:14px;font-weight:600;margin:0 0 14px}select{width:100%;padding:9px;background:#222527;color:var(--ink);border:1px solid var(--line);border-radius:3px}.toggle{display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid var(--line);padding:14px 0;font-size:13px}input{accent-color:var(--accent)}.range{display:block;font-size:13px;padding:18px 0}.range output{float:right;color:var(--muted)}input[type=range]{display:block;width:100%;margin-top:14px}.muted{font-size:11px;line-height:1.6;color:var(--muted)}dl{margin:0 0 20px;font-size:13px}dt{font-size:11px;color:var(--muted);margin-top:15px}dd{margin:4px 0 0;line-height:1.5}#passport>a{font-size:12px}#export{margin-top:18px;display:block;width:100%;font-size:12px}.map-wrap{position:relative;overflow:hidden;background:#233a3d}#map{position:absolute;inset:0}.map-top{position:absolute;left:16px;top:16px;pointer-events:none}.map-top button{pointer-events:auto}.map-wrap button:not(.marker){font-size:12px;background:#202325f5;color:var(--ink);border-color:#ffffff26;box-shadow:0 1px 3px #0001}.map-wrap button:not(.marker):hover{background:#303536}.mode{position:absolute;right:12px;top:16px;display:flex;gap:0;box-shadow:0 1px 4px #0002}.mode button{border-radius:0}.mode button:first-child{border-radius:3px 0 0 3px}.mode button:last-child{border-radius:0 3px 3px 0}.mode button+button{border-left:0}.mode button.active{background:#35473d;color:#d8e6dc}.maplibregl-ctrl-top-right{top:62px}.map-caption{position:absolute;bottom:100px;left:16px;background:#202325f5;padding:11px 14px;border-radius:3px;max-width:calc(100% - 32px);pointer-events:none;box-shadow:0 1px 5px #0002}.map-caption h2{font-size:15px;margin:0;font-weight:500}.map-caption p{font-size:12px;color:#a0a5a4;margin:4px 0 0}.tools{position:absolute;left:16px;bottom:50px;display:flex;align-items:center;gap:6px;flex-wrap:wrap;max-width:calc(100% - 32px)}.tools button.active{background:#35473d}#distance{font-size:12px;background:#222527;padding:8px 10px;border-radius:3px;font-variant-numeric:tabular-nums}#distance:empty{display:none}.coordinates{position:absolute;left:16px;bottom:16px;font:10px Consolas,monospace;color:#d1d6d2;background:#202325ed;padding:5px 7px;border-radius:2px}.coordinates:empty{display:none}#status{position:absolute;top:66px;left:16px;background:#202325f5;color:#c2c7c3;font-size:12px;padding:9px 12px;max-width:65%;border-radius:3px}#status:empty{display:none}.marker{width:10px;height:10px;padding:0;border-radius:50%;border:2px solid #fff;background:#375d51;box-shadow:0 0 0 1px #253e32}.marker.selected{background:#d3a23a;box-shadow:0 0 0 3px #fff8}.maplibregl-ctrl-attrib{font-size:9px!important}dialog{max-width:510px;background:var(--bg);color:var(--ink);border:1px solid var(--line);border-radius:4px;padding:28px;line-height:1.7;font-size:13px}dialog::backdrop{background:#080a0bb3}.close{float:right;border:0;background:none;padding:0 7px;font-size:21px}@media(max-width:800px){header{padding:0 16px}main{height:auto;display:flex;flex-direction:column-reverse}.map-wrap{height:65dvh;min-height:400px}aside{padding:20px 16px;border-right:0}.stats{max-width:320px}h1{font-size:32px}.map-caption{bottom:105px}.tools{bottom:48px}.maplibregl-ctrl-top-right{top:64px}}@media(prefers-reduced-motion:reduce){*{scroll-behavior:auto}}

.maplibregl-ctrl-group{background:#222527}.maplibregl-ctrl-group button+button{border-top-color:#ffffff26}.maplibregl-ctrl-icon{filter:invert(1)}.maplibregl-ctrl-attrib{background:#202325ed!important;color:#b7bfba}.maplibregl-ctrl-attrib a{color:#d3d9d5}.maplibregl-ctrl-attrib-button{filter:invert(1)}.maplibregl-ctrl-scale{background:#202325ed;color:#d3d9d5;border-color:#9ba69f}::selection{background:#465e50;color:#fff}

