html,body,#root{margin:0;min-height:100%}body{background:var(--ds-page)}.map-wrap{display:flex;flex-direction:column;gap:10px}.map-box{position:relative;height:56vh;min-height:420px;max-height:620px;border-radius:14px;overflow:hidden;border:1px solid var(--ds-hairline);touch-action:none;user-select:none;-webkit-user-select:none;cursor:grab;background:#bcd6e4}.map-box:active{cursor:grabbing}@media (min-width: 768px){.map-box{height:64vh}}.map-country{font-family:Georgia,Times New Roman,serif;font-size:400px;letter-spacing:96px;opacity:.9}.map-sea{font-family:Georgia,Times New Roman,serif;font-style:italic;font-size:208px;fill:#4a6b80}.map-range{font-family:Georgia,Times New Roman,serif;font-style:italic;font-size:160px;fill:#5b4a35}.map-city{font-family:Georgia,Times New Roman,serif;font-size:170px;fill:#2e2a24;paint-order:stroke;stroke:#f7efdcbf;stroke-width:30px}.map-compass{font-family:Georgia,Times New Roman,serif;font-size:152px;fill:#2e2a24;font-weight:700}.map-scale text{font-family:Georgia,Times New Roman,serif;font-size:136px;fill:#2e2a24}.map-controls{position:absolute;top:12px;right:12px;display:flex;flex-direction:column;gap:8px}.map-controls button{width:48px;height:48px;border-radius:12px;border:1px solid var(--ds-hairline);background:var(--ds-page);color:var(--ds-ink);font-size:24px;line-height:1;box-shadow:0 1px 4px #0000002e}.map-controls button.fit{font-size:15px;font-weight:600;letter-spacing:.02em}.map-layers-wrap{position:absolute;top:12px;left:12px;display:flex;flex-direction:column;gap:8px;align-items:flex-start}.map-layers-btn{height:48px;padding:0 16px;border-radius:12px;border:1px solid var(--ds-hairline);background:var(--ds-page);color:var(--ds-ink);font-size:15px;font-weight:600;letter-spacing:.02em;box-shadow:0 1px 4px #0000002e}.map-layers-btn.active{background:#8f2f23;border-color:#8f2f23;color:#fdf6e3}.map-layers{display:flex;flex-direction:column;padding:6px;border-radius:12px;border:1px solid var(--ds-hairline);background:var(--ds-page);box-shadow:0 4px 16px #0000002e}.map-layer{display:flex;align-items:center;gap:10px;min-height:44px;padding:0 14px 0 10px;border:0;border-radius:8px;background:transparent;color:var(--ds-ink);font-size:15px;text-align:left}.map-layer i{width:14px;height:14px;border-radius:50%;border:2px solid var(--ds-ink-2);background:transparent;flex:none}.map-layer.on i{background:#2f6b3a;border-color:#2f6b3a}.map-legend{display:flex;flex-wrap:wrap;gap:8px 18px;font-size:14px;color:var(--ds-ink-2)}.map-legend span{display:inline-flex;align-items:center;gap:7px;min-height:28px}.lg{display:inline-block;width:16px;height:16px}.lg-capital{background:#7c2d1f;clip-path:polygon(50% 0,63% 37%,100% 37%,70% 60%,82% 100%,50% 74%,18% 100%,30% 60%,0 37%,37% 37%)}.lg-city{border:2.5px solid #2e2a24;border-radius:50%;background:#fff8ec;width:12px;height:12px}.lg-border{height:0;border-top:3px dashed #8f2f23}.lg-peak{clip-path:polygon(50% 0,100% 100%,0 100%);background:#5b4a35}.lg-forest{clip-path:polygon(50% 0,100% 100%,0 100%);background:#3d7048}.lg-river{height:0;border-top:3px solid #7ba7bd;border-radius:2px}.lg-road{height:0;border-top:3px dotted #7d5f36}.lg-port{background:#1f4e79;clip-path:polygon(50% 0,62% 6%,58% 14%,58% 42%,88% 42%,88% 32%,100% 46%,82% 88%,50% 100%,18% 88%,0 46%,12% 32%,12% 42%,42% 42%,42% 14%,38% 6%)}.lg-base{background:#6e2b20;clip-path:polygon(0 100%,0 25%,18% 25%,18% 5%,34% 5%,34% 25%,44% 25%,44% 5%,60% 5%,60% 25%,70% 25%,70% 5%,86% 5%,86% 25%,100% 25%,100% 100%)}:root{--ds-page: #f7f1e3;--ds-hairline: #ddd2bd;--ds-ink: #2e2a24;--ds-ink-2: #6b6152}body{color:var(--ds-ink);font-family:Georgia,Times New Roman,serif}.site-shell{max-width:720px;margin:0 auto;padding:28px 16px 40px;display:flex;flex-direction:column;gap:18px}.site-header h1{font-size:30px;font-weight:600;margin:0 0 6px;letter-spacing:.01em}.site-fact{margin:0 0 10px;font-size:14px;color:var(--ds-ink-2);font-style:italic}.site-intro{margin:0;font-size:16px;line-height:1.5}.site-footer{font-size:13px;color:var(--ds-ink-2);text-align:center;padding-top:8px;border-top:1px solid var(--ds-hairline)}
