.location-report-dialog { width: min(520px, calc(100vw - 32px)); max-height: calc(100dvh - 32px); box-sizing: border-box; overflow: auto; padding: 22px; background: var(--surface); color: var(--text); border: 1px solid var(--border); border-radius: 6px; }
.location-report-dialog::backdrop { background: #000a; }
.location-report-heading { display: flex; justify-content: space-between; align-items: center; gap: 12px; }
.location-report-heading h2 { margin: 0; }
.location-form { display: grid; gap: 12px; }
.location-form label { display: grid; gap: 6px; }
.location-form textarea, .location-form input, .location-form select { box-sizing: border-box; width: 100%; min-width: 0; background: var(--surface); color: var(--text); border: 1px solid var(--border); padding: 10px; font: inherit; }
.location-form textarea { resize: vertical; }
.location-form [hidden] { display: none; }
.location-report-note { color: var(--text-muted); font-size: .8rem; margin: 0; }
.location-report-dialog p { line-height: 1.5; }
.location-report-dialog a { color: var(--accent); }
.location-report-entry { padding: 20px 0; border-top: 1px solid var(--border); overflow-wrap: anywhere; }
.location-report-entry blockquote { margin: 12px 0; white-space: pre-wrap; }
.location-report-entry .location-form { max-width: 600px; }
.location-observation { border:1px solid var(--border);padding:12px; }
.location-observation summary { cursor:pointer;font-weight:bold; }
.location-observation-grid { display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin:12px 0; }
.location-report-actions { display:flex;gap:8px;flex-wrap:wrap; }
.location-report-actions button { white-space:normal; }
#my-map-reports summary { cursor:pointer; font-weight:bold; }
#my-map-reports select { max-width:100%; padding:8px; background:var(--surface); color:var(--text); }
#my-map-reports pre { white-space:pre-wrap; overflow-wrap:anywhere; }
#my-map-reports .location-form { margin-top:16px; }
.location-report-photo { display:block;width:100%;max-height:340px;object-fit:contain; }
.location-map-pick-dialog { width:min(1100px,calc(100vw - 24px));max-height:calc(100dvh - 24px);box-sizing:border-box;background:var(--surface,#20251a);color:var(--text,#eee);border:1px solid var(--border); }
.location-map-pick-dialog::backdrop { background:#000a; }
.location-pick-viewport { overflow:auto;max-height:65vh;margin-top:12px; }
.location-pick-viewport img { display:block;width:100%;max-width:none;cursor:crosshair; }
.location-report-geometry { width:100%;max-width:480px;height:220px;background:#141a1d;border:1px solid var(--border); }
@media(max-width:480px){.location-observation-grid{grid-template-columns:1fr}.location-report-dialog{padding:14px}}
