#recent-places-card { margin: 0; padding-top: 16px; border-top: 1px solid #dde5d5; }
.recent-places-heading { display: flex; align-items: center; justify-content: space-between; gap: 8px; margin-bottom: 8px; }
.recent-places-heading h2 { margin: 0; font-size: 14px; letter-spacing: -.3px; }
#recent-places-open { flex-shrink: 0; min-height: 36px; padding: 5px 0; background: transparent; color: #58714f; font-size: 11px; }
.recent-places-intro { margin: 8px 0; color: #64795e; font-size: 12px; line-height: 1.6; }
#recent-places-list, #recent-places-all { min-width: 0; }
.recent-place { display: grid; grid-template-columns: 88px minmax(0, 1fr); align-items: center; gap: 10px; width: 100%; min-width: 0; padding: 10px 0; border-bottom: 1px solid #e3e9dc; background: transparent; color: #36563e; text-align: left; touch-action: manipulation; }
.recent-place:last-child { border-bottom: 0; }
.recent-place:hover strong { text-decoration: underline; text-underline-offset: 3px; }
.recent-place-preview { width: 88px; height: 65px; border: 1px solid #d8e2cf; border-radius: 7px; background: #e8eee8; object-fit: contain; pointer-events: none; }
.recent-place-copy { display: block; min-width: 0; }
.recent-place-copy > * { display: block; margin: 0; overflow-wrap: anywhere; }
.recent-place-copy strong { font-size: 13px; line-height: 1.5; }
.recent-place-copy span, .recent-place-copy small { margin-top: 3px; color: #63785b; font-size: 11px; line-height: 1.5; }
.recent-place-copy small { font-size: 10px; }
.recent-places-message, #recent-places-status { margin: 12px 0 4px; color: #64795e; font-size: 12px; line-height: 1.65; }
.recent-places-updated { margin: 8px 0 0; color: #64795e; font-size: 11px; line-height: 1.5; }
#recent-places-status:empty { display: none; }
.recent-places-retry, #recent-places-retry { min-height: 40px; margin-top: 8px; padding: 9px 12px; border-radius: 7px; background: #edf2e7; color: #365331; font-size: 12px; }
#recent-places-dialog { width: 470px; max-width: calc(100% - 24px); max-height: calc(100dvh - 32px); overflow-y: auto; padding: 24px; }
#recent-places-dialog h2 { margin: 6px 40px 12px 0; font-size: 25px; }
#recent-places-dialog .help-note { margin: 0 0 12px; color: #64795e; font-size: 12px; line-height: 1.65; }
#recent-places-dialog .recent-place { grid-template-columns: 96px minmax(0, 1fr); gap: 14px; padding: 12px 0; }
#recent-places-dialog .recent-place-preview { width: 96px; height: 70px; }
#recent-places-dialog .recent-place-copy strong { font-size: 15px; }
#recent-places-dialog .recent-place-copy span, #recent-places-dialog .recent-place-copy small { font-size: 12px; }
.recent-place:focus-visible, #recent-places-open:focus-visible, #recent-places-map-open:focus-visible, .recent-places-retry:focus-visible, #recent-places-retry:focus-visible { outline: 3px solid #df8754; outline-offset: 2px; border-radius: 5px; }
#recent-places-card[hidden], #recent-places-open[hidden], #recent-places-map-open[hidden], #recent-places-retry[hidden] { display: none; }
html:not([data-mobile-shell="true"]) body[data-edit-mode="look"] #recent-places-list > .recent-place { grid-template-columns: 64px minmax(0, 1fr); gap: 8px; padding: 8px 0; }
html:not([data-mobile-shell="true"]) body[data-edit-mode="look"] #recent-places-list > .recent-place:nth-child(n+4) { display: none; }
html:not([data-mobile-shell="true"]) body[data-edit-mode="look"] #recent-places-list .recent-place-preview { width: 64px; height: 48px; }
@media (max-width: 400px) {
  #recent-places-dialog { padding: 20px 14px; }
  #recent-places-dialog h2 { font-size: 23px; }
  #recent-places-dialog .recent-place { grid-template-columns: 76px minmax(0, 1fr); gap: 10px; }
  #recent-places-dialog .recent-place-preview { width: 76px; height: 58px; }
  #recent-places-dialog .recent-place-copy strong { font-size: 14px; }
  #recent-places-dialog .recent-place-copy span, #recent-places-dialog .recent-place-copy small { font-size: 11px; }
}
