.commercial-area-map{position:relative;background:var(--sg-section)}.cam-canvas,.commercial-area-map{width:100%;height:100%}.cam-marker{position:relative;display:flex;align-items:center;gap:8px;min-height:38px;padding:8px 11px;border:1px solid var(--sg-line-strong);border-radius:5px;background:var(--sg-canvas);box-shadow:var(--sg-shadow-card);color:var(--sg-ink);font-family:var(--sg-font-sans);white-space:nowrap;cursor:pointer}.cam-marker:before{content:"";width:6px;height:6px;flex-shrink:0;border-radius:50%;background:var(--sg-brand)}.cam-marker:after{content:"";position:absolute;left:16px;bottom:-5px;width:8px;height:8px;transform:rotate(45deg);border-right:1px solid var(--sg-line-strong);border-bottom:1px solid var(--sg-line-strong);background:var(--sg-canvas)}.cam-marker strong{font-size:12px;font-weight:700}.cam-marker span{padding-left:8px;border-left:1px solid var(--sg-line);font-size:11px;color:var(--sg-muted)}.cam-marker:not(.cam-marker-mini):before{display:none}.cam-marker:not(.cam-marker-mini) span{border-left-color:var(--sg-brand)}.cam-marker:hover{border-color:var(--sg-brand);z-index:2}.cam-marker:focus-visible{outline:2px solid var(--sg-ink);outline-offset:3px}.cam-marker-mini{min-height:30px;padding:5px 8px;gap:5px}.cam-marker-mini strong{font-size:10px}.cam-marker-mini span{display:none}@media(max-width:640px){.cam-marker:not(.cam-marker-mini){min-height:32px;padding:5px 7px;gap:5px;border-radius:4px;line-height:16px;transform:translateY(7px)}.cam-marker:not(.cam-marker-mini) strong{font-size:11px}.cam-marker:not(.cam-marker-mini) span{padding-left:5px;font-size:10px}.cam-marker:not(.cam-marker-mini):after{left:17px;bottom:-4px;width:6px;height:6px}}.cam-state{position:absolute;inset:0;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:14px;padding:28px;background:var(--sg-section);text-align:center}.cam-state,.cam-state>svg{color:var(--sg-muted)}.cam-state strong{font-size:15px;font-weight:650;color:var(--sg-ink-soft)}.cam-state p{margin:0;font-size:12px;line-height:1.8}.cam-state button{min-height:40px;padding:8px 14px;border:1px solid var(--sg-line-strong);border-radius:4px;background:var(--sg-canvas);color:var(--sg-ink);font:inherit;font-size:12px;cursor:pointer}.cam-state button:focus-visible{outline:2px solid var(--sg-ink);outline-offset:3px}