/* A folded field-map palette; all controls keep a 48px touch target. */
.robin-minimap{position:fixed;top:calc(max(14px,env(safe-area-inset-top)) + 58px);right:max(14px,env(safe-area-inset-right));z-index:2;width:84px;height:100px;padding:0;overflow:hidden;border:1px solid #fff0cc99;border-radius:21px 21px 14px 14px;background:#254739;color:#fff1d1;box-shadow:0 3px 14px #122c2c44;cursor:pointer;touch-action:manipulation;isolation:isolate}
.robin-minimap[hidden]{display:none}
.robin-minimap-art{display:block;width:82px;height:82px;border-radius:20px 20px 0 0;pointer-events:none}
.robin-minimap-caption{display:block;height:17px;font:600 10px/16px system-ui,-apple-system,sans-serif;letter-spacing:.08em;pointer-events:none}
.robin-world-map{position:fixed;inset:0;grid-template-rows:auto minmax(80px,1fr) auto auto;gap:0;width:min(940px,calc(100vw - max(24px,env(safe-area-inset-left)) - max(24px,env(safe-area-inset-right))));height:min(780px,calc(100dvh - max(16px,env(safe-area-inset-top)) - max(16px,env(safe-area-inset-bottom))));max-width:none;max-height:none;margin:auto;padding:0;overflow:hidden;border:1px solid #e7d5ab;border-radius:22px;color:#284334;background:#f4ecd4;box-shadow:0 20px 90px #061d2277;color-scheme:light;font:14px/1.4 system-ui,-apple-system,sans-serif;overscroll-behavior:contain}
.robin-world-map[open]{display:grid}
.robin-world-map::backdrop{background:#142a25d9}
.robin-map-heading{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:14px 18px 12px;background:#294b3e;color:#f9edcf}
.robin-map-eyebrow{font:600 9px/1.5 system-ui,-apple-system,sans-serif;letter-spacing:.16em;color:#d7d5ad}
.robin-map-heading h2{margin:2px 0 0;font:italic 500 27px/1.1 Georgia,serif;letter-spacing:-.015em}
.robin-map-control{min-width:48px;min-height:48px;padding:9px 12px;border:1px solid #69795766;border-radius:12px;background:#fff7e0;color:#294b3e;font:600 12px/1.2 system-ui,-apple-system,sans-serif;cursor:pointer;touch-action:manipulation}
.robin-map-control:disabled{opacity:.42;cursor:default}
.robin-map-close{border-color:#f8e5b977;background:transparent;color:#fff3d8}
.robin-world-map button:focus-visible,.robin-world-map summary:focus-visible,.robin-world-map a:focus-visible,.robin-map-art:focus-visible,.robin-minimap:focus-visible{outline:3px solid #c66136;outline-offset:3px}
.robin-map-close:focus-visible,.robin-minimap:focus-visible{outline-color:#ffe4a5}
.robin-map-viewport{position:relative;min-width:0;min-height:0;overflow:hidden;background:#e5dfbe}
.robin-map-art{display:block;width:100%;height:100%;touch-action:none;cursor:grab;outline-offset:-4px!important}
.robin-map-art:active{cursor:grabbing}
.robin-map-loading{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);width:min(290px,90%);margin:0;padding:16px;border:1px solid #9a9976;border-radius:12px;background:#fff7e8;color:#294b3e;text-align:center;pointer-events:none}
.robin-map-loading[hidden]{display:none}
.robin-map-toolbar{display:flex;align-items:center;justify-content:center;gap:8px;min-width:0;padding:9px 12px 5px;border-top:1px solid #a7ac8266}
.robin-map-zoom{font-size:23px;line-height:1;padding:7px 12px}
.robin-map-footer{min-width:0;padding:4px 18px 10px;text-align:center;background:#f4ecd4}
.robin-map-location{margin:0;color:#354f3c;font-size:11px;font-weight:600;white-space:nowrap;text-overflow:ellipsis;overflow:hidden}
.robin-map-instructions{margin:3px 0 2px;font-size:10px;color:#607052}
.robin-map-sources{margin:0;font-size:10px;color:#58664c}
.robin-map-sources summary{display:block;min-height:48px;padding:7px 0 3px;color:#4b634a;cursor:pointer;text-decoration:underline;text-underline-offset:3px}
.robin-map-source-body{max-height:125px;overflow-y:auto;overscroll-behavior:contain;text-align:left;padding:0 4px}
.robin-map-source-body p{margin:5px 0;color:#4d5d43;font-size:11px}
.robin-map-source-body a{color:#325c4a;text-decoration:underline}
.robin-map-credit{margin:0;font-size:9px;line-height:1.35;color:#617051}.robin-map-credit a{color:#496447;text-decoration:underline;text-underline-offset:2px}
@media(max-width:480px){.robin-world-map{width:calc(100vw - 16px);height:calc(100dvh - max(8px,env(safe-area-inset-top)) - max(8px,env(safe-area-inset-bottom)));border-radius:18px}.robin-map-heading{padding:12px 14px 10px}.robin-map-heading h2{font-size:25px}.robin-map-footer{padding-right:12px;padding-left:12px}.robin-map-toolbar{gap:6px;padding-right:8px;padding-left:8px}.robin-map-control{padding-right:10px;padding-left:10px}}
@media(max-height:480px){.robin-minimap{top:calc(max(14px,env(safe-area-inset-top)) + 55px);width:76px;height:91px;border-radius:17px 17px 12px 12px}.robin-minimap-art{width:74px;height:74px}.robin-world-map{height:calc(100dvh - max(8px,env(safe-area-inset-top)) - max(8px,env(safe-area-inset-bottom)));grid-template-columns:minmax(0,1fr) 156px;grid-template-rows:62px minmax(80px,1fr) auto;grid-template-areas:'heading heading' 'map controls' 'map footer'}.robin-map-heading{grid-area:heading;padding:7px 14px}.robin-map-heading h2{font-size:23px}.robin-map-eyebrow{font-size:8px}.robin-map-viewport{grid-area:map}.robin-map-toolbar{grid-area:controls;align-content:start;align-items:start;flex-wrap:wrap;gap:6px;border-top:0;padding:12px 8px 3px}.robin-map-toolbar>.robin-map-control:not(.robin-map-zoom){width:130px}.robin-map-footer{grid-area:footer;padding:5px 9px 8px;max-height:160px;overflow-y:auto;overscroll-behavior:contain}.robin-map-location{white-space:normal;line-height:1.2}.robin-map-instructions{line-height:1.3;margin:6px 0 1px}.robin-map-sources summary{min-height:48px;padding-top:13px}.robin-map-source-body{max-height:90px}}
@media(prefers-reduced-motion:reduce){.robin-world-map,.robin-minimap{scroll-behavior:auto}}
