body { margin:0; font-family: sans-serif; }
.topbar { padding: 12px 16px; background:#1f2a44; color:#fff; }
.layout { display:flex; height: calc(100vh - 56px); }
#map { flex: 2; }
.panel { flex: 1; padding: 12px; overflow:auto; border-left:1px solid #ddd; }
input, select, textarea, button { width:100%; padding:8px; margin:6px 0; box-sizing:border-box; }
button { cursor:pointer; }
.card { padding:10px; border:1px solid #ddd; border-radius:8px; margin:8px 0; }
hr { margin: 14px 0; }