.oda-connection {
  display: flex;
  align-items: center;
  justify-content: space-between;
  flex-wrap: wrap;
  gap: 16px;
  margin-bottom: 20px;
  padding: 20px;
  border: 1px solid rgba(106,139,107,.32);
  border-radius: 16px;
  background: var(--surface-strong);
  color: var(--text);
}
.oda-connection h3 { margin: 0 0 6px; font-size: 1rem; }
.oda-connection p { margin: 0; max-width: 46ch; font-size: .9rem; line-height: 1.5; }
.oda-connection button { min-height: 44px; }
.oda-connection [hidden] { display: none !important; }
.oda-picker { width: 100%; min-width: 0; display: grid; gap: 14px; }
.oda-picker p { max-width: none; }
.oda-matches { display: grid; gap: 12px; }
.oda-match { background: var(--surface); border: 1px solid #243b3522; border-radius: 12px; padding: 14px; display: grid; gap: 10px; min-width: 0; }
.oda-match h4 { margin: 0; }
.oda-match select, .oda-match input { width: 100%; min-width: 0; box-sizing: border-box; min-height: 44px; }
.oda-search-row { display: flex; gap: 8px; }
.oda-search-row input { flex: 1; }
.oda-search-row button { flex-shrink: 0; }
.oda-picker a { color: var(--primary-strong); font-weight: 600; padding: 8px 0; }
.oda-return-notice {
  position: fixed; left: 16px; right: 16px; bottom: 38px; z-index: 1000;
  display: flex; gap: 16px; align-items: center; justify-content: space-between;
  padding: 16px 20px; background: #243e35; color: white;
  border-radius: 12px; box-shadow: 0 8px 30px #0003;
}
.oda-return-notice button { min-height: 44px; padding: 8px 16px; }
