#placement-cancel {
  position: fixed; top: max(18px, env(safe-area-inset-top)); right: max(20px, env(safe-area-inset-right));
  z-index: 35; width: 132px; min-height: 88px; padding: 12px 8px;
  display: flex; flex-direction: column; align-items: center; justify-content: center; gap: 8px;
  color: #985748; background: #fff6ecf5; border: 2px dashed #bd7963;
  border-radius: 22px; box-shadow: 0 5px 24px #563d2020; touch-action: none;
  font: inherit; font-size: 11px; font-weight: 650; cursor: pointer;
}
#placement-cancel svg { width: 25px; height: 25px; fill: none; stroke: currentColor; stroke-width: 1.8; stroke-linecap: round; }
#placement-cancel.is-over { color: #fff9ed; background: #b75848; border-color: #fff5e4; border-style: solid; transform: scale(1.04); }
#placement-hint { position: fixed; z-index: 34; left: 50%; bottom: 212px; transform: translateX(-50%); padding: 10px 17px; border: 1px solid #fdfaed; border-radius: 24px; background: #4f6658ed; color: #fffaf0; font-size: 12px; white-space: nowrap; pointer-events: none; box-shadow: 0 3px 16px #30453925; }
#placement-hint.is-invalid { background: #a25243ed; }
#placement-guide { position: fixed; z-index: 5; width: 0; border-left: 1px dashed #536a5b99; pointer-events: none; }
#placement-guide::after { content: ''; position: absolute; width: 15px; height: 15px; left: -8px; bottom: -8px; border: 1px solid #536a5b99; border-radius: 50%; background: #fff9e744; }
#placement-guide.is-invalid { border-color: #ba594b; }
body.placing .top-actions, body.placing .toast { visibility: hidden; }
body.drawing-mode .discovery-note { display: none; }
#placement-cancel[hidden], #placement-hint[hidden], #placement-guide[hidden], #drawing-map[hidden] { display: none; }
@media (max-width: 760px) {
  #placement-cancel { top: max(14px, env(safe-area-inset-top)); right: max(14px, env(safe-area-inset-right)); width: 118px; min-height: 84px; border-radius: 19px; }
  #placement-hint { bottom: 235px; font-size: 11px; max-width: calc(100vw - 24px); white-space: normal; text-align: center; width: max-content; }
}
@media (max-height: 540px) and (orientation: landscape) {
  #placement-cancel { width: 114px; min-height: 67px; top: max(10px, env(safe-area-inset-top)); padding: 8px; gap: 4px; }
  #placement-hint { bottom: 136px; padding: 7px 13px; }
}
@media (prefers-reduced-motion: reduce) { #placement-cancel.is-over { transform: none; } }
