.sskr-map{--spot-accent:#536e5e;--spot-line:#d2d9ce;--spot-paper:#f2f3ef;font-family:inherit;min-width:0}.sskr-map *{box-sizing:border-box}.sskr-map button,.sskr-map input{font:inherit}.sskr-map button{cursor:pointer}.sskr-map button:disabled{opacity:.4;cursor:default}.sskr-map button:focus-visible,.sskr-map summary:focus-visible{outline:2px solid #9b6d2e;outline-offset:3px}.sskr-map .spot-sr{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%)}.sskr-map .spot-map{position:absolute;inset:0;z-index:0;background:#bcd3d4;font-family:inherit}.sskr-map .spot-map-status:empty{display:none}.sskr-map .spot-map-status{position:absolute;bottom:55px;left:15px;right:60px;margin:0;padding:10px;background:#faf8eb;font-size:13px;color:#5a4a2d}.sskr-map .spot-tooltip{border:1px solid #cfd7c8!important;border-radius:6px!important;background:#f8faf4!important;padding:12px 15px!important;box-shadow:0 6px 24px #1d31221f!important;color:#26362b!important}.sskr-map .spot-tip-copy strong{display:block;font-size:15px}.sskr-map .spot-tip-copy span{display:block;margin-top:4px;font-size:12px;max-width:250px;white-space:normal}.sskr-map .spot-map .leaflet-control-attribution{font-size:10px;background:#f2f3efdc}.sskr-map .spot-map-note{font-size:12px;line-height:1.8;color:var(--sskr-text-2);margin:14px 0 0;max-width:1000px}
@media(max-width:700px){.sskr-map .spot-map-note{font-size:12px}.sskr-map .spot-map .leaflet-control-attribution{font-size:9px}
}.sskr-map .spot-workspace{display:block;height:clamp(280px,calc(100svh - 96px),800px);border:1px solid var(--spot-line);border-radius:9px;overflow:hidden;background:var(--spot-paper)}.sskr-map .spot-map-wrap{position:relative;width:100%;height:100%;isolation:isolate;background:#e4e9e0}.sskr-map .spot-list-head{position:absolute;top:12px;left:12px;z-index:5;display:flex;align-items:center;gap:12px;max-width:calc(100% - 158px);padding:8px 10px;background:#f2f3efe8;border:1px solid var(--spot-line);border-radius:5px;flex-wrap:wrap}.sskr-map .spot-list-head h3{margin:0;font-size:12px;font-weight:600}.sskr-map .spot-list-head h3 span{font-size:11px;color:var(--spot-accent)}.sskr-map .spot-list-head label{display:flex;align-items:center;gap:4px;font-size:10px;color:#657160;white-space:nowrap}.sskr-map .spot-list-head input{margin:0;accent-color:var(--spot-accent)}.sskr-map .spot-map-controls{position:absolute;top:12px;right:12px;z-index:5;display:flex;gap:4px}.sskr-map .spot-map-controls button{display:grid;place-items:center;width:36px;height:36px;padding:0;border:1px solid var(--spot-line);border-radius:5px;background:var(--spot-paper);color:#3d5242;font-size:21px}.sskr-map .spot-map-controls button:hover{background:#e0e7db}.sskr-map .spot-map-controls svg{width:16px;height:16px}.sskr-map .spot-list{position:absolute;inset:64px 10px 52px;z-index:4;display:flex;justify-content:space-between;pointer-events:none}.sskr-map .spot-card-column{display:flex;flex-direction:column;gap:6px;width:clamp(88px,calc(var(--spot-card-height,80px)*1.85),172px);min-width:0}.sskr-map .spot-mini-card{position:relative;width:100%;height:var(--spot-card-height,80px);flex:none;min-width:0;pointer-events:auto}
.sskr-map .spot-photo-card{position:relative;display:block;width:100%;height:100%;min-width:0;padding:0;border:1px solid #b6c4b1;border-radius:5px;overflow:hidden;background:#536e5e;color:#fff;text-align:left;box-shadow:0 1px 5px #1c342233;cursor:pointer}.sskr-map .spot-photo-card[aria-pressed=true]{border-color:#fff;box-shadow:0 0 0 2px #536e5e}
.sskr-map .spot-photo-card img{position:absolute;inset:0;display:block;width:100%;height:100%;object-fit:cover;border-radius:0;margin:0}
.sskr-map .spot-photo-caption{position:absolute;inset:auto 0 0;display:block;min-width:0;margin:0;padding:16px 6px 5px;background:linear-gradient(transparent,rgba(10,23,17,.84));color:#fff;text-shadow:0 1px 2px #000}
.sskr-map .spot-photo-caption strong,.sskr-map .spot-photo-caption small{display:block;width:100%;max-width:none;overflow:hidden;white-space:nowrap;text-overflow:ellipsis;margin:0;letter-spacing:-.035em;color:inherit}
.sskr-map .spot-photo-caption strong{font-size:12px;line-height:1.3;font-weight:650}
.sskr-map .spot-photo-caption small{font-size:10px;line-height:1.3;font-weight:400;opacity:.92}.sskr-map .spot-mini-number{position:absolute;top:4px;left:4px;width:20px;height:20px;display:flex;align-items:center;justify-content:center;padding:1px 0 0;letter-spacing:0;white-space:nowrap;border:1px solid #fff;border-radius:4px;background:#f7f9f2;color:#344e3d;box-shadow:0 1px 4px #23362b50;font:650 10px/1 Arial,sans-serif;font-variant-numeric:tabular-nums}.sskr-map .spot-mini-number.start{background:#fbefdb;color:#855f25;border-color:#b68842}.sskr-map .spot-mini-number.finish{background:#e5edf1;color:#486d82;border-color:#587b90}.sskr-map .spot-card-pages{position:absolute;left:50%;bottom:24px;transform:translateX(-50%);z-index:5;display:flex;align-items:center;gap:8px;padding:3px;border:1px solid var(--spot-line);border-radius:5px;background:#f2f3eff0;color:#536e5e;white-space:nowrap}.sskr-map .spot-card-pages button{width:28px;height:28px;display:grid;place-items:center;border:0;background:transparent;color:inherit;font-size:20px;padding:0}.sskr-map .spot-card-pages span{font-size:11px;min-width:70px;text-align:center}.sskr-map .spot-list-empty{align-self:center;margin:auto;max-width:240px;padding:15px;background:#f2f3eff0;border-radius:5px;pointer-events:auto;font-size:12px;color:#526849}.sskr-map .spot-list-empty button{display:block;margin-top:10px;border:0;background:none;text-decoration:underline;color:inherit;font-size:12px}.sskr-map .spot-pin{display:grid;place-items:center;background:transparent}.sskr-map .spot-pin>span{display:flex;align-items:center;justify-content:center;width:20px;height:20px;padding:1px 0 0;letter-spacing:0;white-space:nowrap;border:1px solid #809682;border-radius:4px;background:#f7f9f2;color:#344e3d;box-shadow:0 1px 4px #23362b50;font:650 10px/1 Arial,sans-serif;font-variant-numeric:tabular-nums}.sskr-map .spot-pin.start>span{background:#fbefdb;color:#855f25;border-color:#b68842}.sskr-map .spot-pin.finish>span{background:#e5edf1;color:#486d82;border-color:#587b90}.sskr-map .spot-pin.cluster>span{width:max-content;min-width:30px;height:20px;padding:1px 3px 0;border:1px solid #9bb38e;border-radius:4px;background:#dce8d5;color:#304d37;font-size:10px;box-shadow:0 1px 4px #23362b35}.sskr-map .spot-pin.is-selected>span{outline:2px solid #b68842;outline-offset:2px}
/* Keep the glyph baseline centered inside compact badges without moving marker anchors. */
@media(max-width:800px){.sskr-map .spot-pin>span,.sskr-map .spot-mini-number{width:18px;height:18px;font-size:9px}.sskr-map .spot-pin.cluster>span{width:max-content;min-width:28px;height:18px;padding:1px 3px 0;border-radius:3px;font-size:9px;box-shadow:0 1px 2px #23362b25}}
.sskr-map .spot-tooltip{width:144px!important;height:100px;max-width:none!important;padding:0!important;white-space:normal;border:0!important;border-radius:5px!important;background:#536e5e!important}.sskr-map .spot-tooltip.leaflet-tooltip-top:before{border-top-color:#253d30}
.sskr-map .spot-tooltip-group{height:auto;padding:9px!important}
@media(max-width:700px){.sskr-map .spot-workspace{height:clamp(280px,calc(100svh - 88px),740px)}.sskr-map .spot-map{bottom:0}.sskr-map .spot-list-head{gap:4px 7px;padding:5px 7px;left:8px;top:10px;max-width:calc(100% - 124px)}.sskr-map .spot-map-controls{right:8px;top:10px;gap:3px}.sskr-map .spot-map-controls button{width:32px;height:34px}.sskr-map .spot-list{inset:auto 8px 29px;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));grid-template-rows:repeat(var(--spot-rows,1),var(--spot-card-height,74px));align-content:end;gap:6px 5px;height:auto}.sskr-map .has-pages .spot-list{bottom:68px}.sskr-map .spot-mini-card{height:var(--spot-card-height,74px)}
.sskr-map .spot-photo-caption{padding:15px 4px 4px}
.sskr-map .spot-mini-select .spot-photo-caption strong{font-size:10px;line-height:1.25}
.sskr-map .spot-mini-select .spot-photo-caption small{font-size:8px;line-height:1.3}.sskr-map .spot-mini-number{top:3px;left:3px}.sskr-map .spot-card-pages{bottom:27px}.sskr-map .spot-list-empty{grid-column:1/-1;grid-row:1/-1}.sskr-map .spot-map-status{bottom:300px;right:15px;z-index:5;font-size:11px}
.sskr-map .spot-tooltip{width:128px!important;height:90px}
}.sskr-map .spot-card-pages[hidden]{display:none}.sskr-map .spot-map .leaflet-gl-layer{pointer-events:none}.sskr-map .spot-map-wrap{scroll-margin-top:78px}.sskr-map .spot-attribution{position:absolute;left:8px;bottom:5px;z-index:6;color:#43594d;font-size:11px;line-height:1.6}.sskr-map .spot-attribution summary{list-style:none;display:inline-block;padding:2px 6px;border:1px solid #d0d8ce;border-radius:4px;background:#f2f3efeb;cursor:pointer;font-size:10px;user-select:none}.sskr-map .spot-attribution summary::-webkit-details-marker{display:none}.sskr-map .spot-attribution[open]>div{position:absolute;bottom:28px;left:0;width:224px;padding:9px 11px;border:1px solid #c8d2c4;border-radius:5px;background:#f2f3eff5;box-shadow:0 2px 8px #203c2720}.sskr-map .spot-attribution a{color:inherit;text-decoration:underline;text-underline-offset:2px}.sskr-map .spot-attribution summary:focus-visible{outline:2px solid #9b6d2e;outline-offset:2px}
@media(min-width:701px){.sskr-map .spot-mini-select .spot-photo-caption strong{font-size:clamp(9px,calc(var(--spot-card-height,80px)*.15),12px)}.sskr-map .spot-mini-select .spot-photo-caption small{font-size:clamp(8px,calc(var(--spot-card-height,80px)*.12),10px)}
}
@media(max-height:600px){.sskr-map .spot-mini-select .spot-photo-caption{padding:9px 4px 3px}.sskr-map .spot-mini-select .spot-mini-number{top:2px;left:2px}
.sskr-map .spot-mini-select .spot-photo-caption strong{font-size:9px}
.sskr-map .spot-mini-select .spot-photo-caption small{font-size:8px}
}

.sskr-map-return{padding:8px 11px;border:1px solid #cbd5c5;border-radius:5px;background:#f2f3ef;color:#395a47;font:inherit;font-size:12px;cursor:pointer}

.sskr-map .leaflet-overlay-pane svg,.sskr-map .leaflet-sskr-routes-pane svg,.sskr-map .leaflet-sskr-land-pane svg,.sskr-map .leaflet-sskr-base-land-pane svg{width:auto;height:auto}.sskr-map .sskr-land-label{pointer-events:none;text-align:center}.sskr-map .sskr-land-label span{display:inline-block;padding:1px 3px;border-radius:3px;background:#f2f5f0cc;color:#4a6251;font:600 10px/16px sans-serif;white-space:nowrap;text-shadow:0 1px 1px #fff}
.sskr-map .sskr-land-label.is-dokdo i{display:block;width:6px;height:6px;margin:0 auto 1px;border:1px solid #fff;border-radius:50%;background:#536e5e;box-shadow:0 0 0 1px #536e5e}

/* The planner owns its candidate list; the same map keeps route stops visible. */
.sskr-map.is-route-editing .spot-list{inset:auto auto 42px 50%;transform:translateX(-50%);width:clamp(160px,28%,240px);height:auto;display:block}.sskr-map.is-route-editing .spot-list:has(.spot-list-empty){display:none}.sskr-map.is-route-editing .spot-card-column{width:100%}.sskr-map.is-route-editing .spot-mini-card{height:90px}.sskr-map.is-route-editing .spot-card-pages{display:none}
.sskr-map.is-route-editing .spot-map-controls{right:calc(12px + var(--map-inset-right,0px));top:calc(12px + var(--map-inset-top,0px))}
.sskr-map.is-route-editing .spot-list-head{left:calc(12px + var(--map-inset-left,0px));top:calc(12px + var(--map-inset-top,0px));max-width:calc(100% - 158px - var(--map-inset-left,0px) - var(--map-inset-right,0px))}
.sskr-map.is-route-editing .spot-attribution{left:calc(8px + var(--map-inset-left,0px));bottom:calc(5px + var(--map-inset-bottom,0px))}
.sskr-map.is-route-editing .spot-map-status{left:calc(15px + var(--map-inset-left,0px));right:calc(15px + var(--map-inset-right,0px));bottom:calc(35px + var(--map-inset-bottom,0px));z-index:5}
.sskr-map .spot-pin.is-route-stop>span,.sskr-map .spot-mini-number.is-route-stop{border:1px solid #fff;border-radius:50%;background:#395b49;color:#fff;box-shadow:0 1px 5px #1b392b60}
.sskr-map .spot-pin.is-route-stop.start>span,.sskr-map .spot-mini-number.is-route-stop.start{background:#b68842}
.sskr-map .spot-pin.is-route-stop.finish>span,.sskr-map .spot-mini-number.is-route-stop.finish{background:#587b90}
.sskr-map .spot-pin.is-route-candidate>span{border-color:#6b8960;background:#edf3e7;color:#344e3d}
.sskr-map .spot-pin.is-route-pinned>span,.sskr-map .spot-mini-number.is-route-pinned{background:#657453;border-color:#ead9b8;color:#fff}
.sskr-map .spot-pin.is-route-active>span{outline:2px solid #b68842;outline-offset:2px}
.sskr-map .spot-pin-lock,.sskr-map .spot-mini-pin{position:absolute;top:-5px;right:-4px;display:grid;place-items:center;width:12px;height:12px;border:1px solid #fff;border-radius:3px;background:#ead9b8;color:#405439;pointer-events:none}.sskr-map .spot-pin-lock svg,.sskr-map .spot-mini-pin svg{width:9px;height:9px}.sskr-map .spot-mini-pin{top:0;left:20px;right:auto}
@media(max-width:700px){.sskr-map.is-route-editing .spot-map-controls{right:calc(8px + var(--map-inset-right,0px));top:calc(10px + var(--map-inset-top,0px))}.sskr-map.is-route-editing .spot-list-head{left:calc(8px + var(--map-inset-left,0px));top:calc(10px + var(--map-inset-top,0px));max-width:calc(100% - 124px - var(--map-inset-left,0px) - var(--map-inset-right,0px))}}

/* Route actions float above the selected map photo without changing browse cards. */
.sskr-map.is-route-editing .spot-tooltip.is-route-tooltip{overflow:visible!important}
.sskr-map .spot-route-tooltip{position:relative;width:100%;height:100%}
.sskr-map .spot-route-tooltip>.spot-photo-card{width:100%;height:100%}
.sskr-map.is-route-editing .spot-route-add{position:absolute;top:-50px;left:0;right:0;z-index:2;min-height:44px;padding:6px 8px;border:1px solid #fff;border-radius:6px;background:#294b39;color:#fff;box-shadow:0 3px 10px #1b35284d;font-size:12px;font-weight:700;text-align:center;white-space:nowrap}
.sskr-map.is-route-editing .spot-route-add:hover{background:#1f3b2c}
.sskr-map.is-route-editing .spot-route-action-wrap{position:absolute;bottom:calc(100% + 6px);left:0;right:0;display:grid;grid-template-columns:minmax(0,1fr);gap:4px;z-index:2}
.sskr-map.is-route-editing .spot-route-action-wrap .spot-route-add{position:relative;top:auto;left:auto;right:auto;width:100%}
.sskr-map.is-route-editing .spot-route-add:disabled{background:#607064;cursor:wait}
.sskr-map .spot-route-context{display:block;padding:5px 7px;border-radius:5px;background:#f7faf4;color:#294b39;white-space:pre-line;font-size:11px;line-height:1.35;box-shadow:0 2px 5px #1b352826}
.sskr-map .spot-route-context>span{display:block;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.sskr-map.is-mobile-editor .spot-route-context{padding:3px 6px;line-height:1.25}
@media(max-width:700px){.sskr-map.is-route-editing .spot-route-add{font-size:11px}}
