.observation-select{cursor:crosshair}
.observation-select .leaflet-overlay-pane path{pointer-events:none}
.observation-editor{box-sizing:border-box;width:min(600px,calc(100vw - 28px));max-height:calc(100dvh - 28px);overflow:auto;margin:auto;padding:24px;border:1px solid #b9cbd7;border-radius:14px;color:#243f52;background:#fff;box-shadow:0 18px 70px #12354945;font:14px/1.5 system-ui,sans-serif}
.observation-editor::backdrop{background:#132c4470}
.observation-editor-header{display:flex;align-items:center;justify-content:space-between;gap:16px}
.observation-editor-header h2{margin:0;font-size:21px;color:#183d50}
.observation-editor .observation-close{padding:7px 10px;border:0;background:#f1f5f8;color:#445f72;border-radius:5px;white-space:nowrap}
.observation-description{margin:12px 0 18px;font-size:12px;line-height:1.7;color:#637988}
.observation-field-grid{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:13px 16px}
.observation-field{display:flex;flex-direction:column;min-width:0;gap:5px}
.observation-field-wide{grid-column:1/-1}
.observation-field-label{font-size:12px;font-weight:650;color:#365568}
.observation-editor input,.observation-editor select,.observation-editor textarea{box-sizing:border-box;min-width:0;width:100%;padding:9px 10px;border:1px solid #bbcdd9;border-radius:6px;color:#243f52;background:#fff;font:inherit}
.observation-editor input[readonly]{background:#f1f6f9;color:#5d7483;font-variant-numeric:tabular-nums}
.observation-editor textarea{resize:vertical;min-height:78px}
.observation-editor input:focus,.observation-editor select:focus,.observation-editor textarea:focus{outline:2px solid #3187ac;outline-offset:1px}
.observation-help,.observation-address-status{font-size:11px;line-height:1.5;color:#6b7e8a}
.observation-address-preview{padding:10px 12px;border:1px solid #d7e4ed;border-radius:7px;background:#f6fafc}
.observation-live-address{margin:0;font-size:13px;overflow-wrap:anywhere}
.observation-live-address:empty{display:none}
.observation-message{margin:12px 0 0;font-size:12px;line-height:1.7;color:#466473;overflow-wrap:anywhere}
.observation-message:empty{display:none}
.observation-message[data-state=error]{padding:9px 11px;border-radius:6px;background:#fff1e9;color:#923e18}
.observation-editor-footer{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-top:20px;padding-top:16px;border-top:1px solid #e0e8ee}
.observation-save-note{font-size:11px;color:#657c8b}
.observation-actions{display:flex;gap:8px;flex-shrink:0}
.observation-editor .observation-actions button{padding:9px 14px;border-radius:6px;font:600 13px/1.4 system-ui,sans-serif;cursor:pointer}
.observation-editor .observation-cancel{border:1px solid #b9ccd9;background:#f5f9fc;color:#416075}
.observation-editor .observation-save{border:1px solid #163d52;background:#163d52;color:#fff}
.observation-editor button:disabled,.observation-editor input:disabled,.observation-editor select:disabled,.observation-editor textarea:disabled{opacity:.65;cursor:wait}
@media(max-width:480px){.observation-editor{padding:18px;max-height:calc(100dvh - 20px)}.observation-field-grid{gap:12px 10px}.observation-editor-footer{align-items:flex-start;flex-direction:column}.observation-actions{align-self:stretch}.observation-actions button{flex:1}.observation-editor-header h2{font-size:19px}}
