#print-map{display:none}@media print{@page{margin:10mm}html,body{height:auto!important;margin:0!important;background:#fff}body>:not(#print-map){display:none!important}#print-map{display:block;width:100%;height:95vh;break-inside:avoid}#print-map>canvas,#print-map>img{display:block;width:100%;height:100%;object-fit:contain;print-color-adjust:exact;-webkit-print-color-adjust:exact}}.settlement-host{position:relative;overflow:hidden;min-height:1px}.settlement-view{position:absolute;inset:0;overflow:hidden;background:#fdf6e3}.settlement-artwork{position:absolute;left:0;top:0;width:1px;height:1px;transform-origin:0 0;will-change:transform}.map-interactive{touch-action:none;cursor:grab}.map-dragging{cursor:grabbing}.map-status{position:absolute;top:1rem;left:50%;transform:translate(-50%);z-index:30;max-width:min(90%,42rem);padding:.6rem .9rem;border:1px solid #c9b48a;border-radius:.5rem;background:#fdf6e3;color:#4a3324;font:14px/1.4 system-ui,sans-serif;box-shadow:0 2px 12px #0002}.map-status button{margin-left:.6rem;cursor:pointer}.map-status[hidden]{display:none}.settlement-view .map-controls{position:absolute;right:1rem;bottom:5rem;display:flex;flex-direction:column;background:#c9b48a;border:1px solid #c9b48a;border-radius:6px;overflow:hidden;gap:1px}.settlement-view .map-controls button{width:2.25rem;height:2.25rem;color:#4a3324;background:#fdf6e3;border:0;font-size:1.1rem;cursor:pointer}.settlement-view .map-controls button:focus-visible{outline:2px solid #6b4a2a;outline-offset:-2px}@media print{.map-status,.map-controls{display:none}}
