.ship-directory-controls {
  display: grid;
  grid-template-columns: minmax(220px, 1fr) minmax(220px, 1fr) auto auto;
  gap: 14px;
  align-items: end;
  margin: 0 0 30px;
  padding: 22px;
  background: #e8f3f1;
}
.ship-directory-controls label { display: grid; gap: 7px; font-weight: 800; }
.ship-directory-controls input,
.ship-directory-controls select {
  min-height: 48px;
  width: 100%;
  padding: 10px 12px;
  border: 2px solid #a8bbc2;
  border-radius: 4px;
  background: #fff;
  color: #102f4a;
  font: inherit;
}
.ship-directory-controls button {
  min-height: 48px;
  padding: 10px 18px;
  border: 2px solid #062d52;
  border-radius: 999px;
  background: #062d52;
  color: #fff;
  font-weight: 800;
}
.ship-directory-controls p { margin: 0 0 14px; font-weight: 800; white-space: nowrap; }
.library-directory > a[hidden] { display: none; }
.ship-directory-empty { padding: 24px; background: #fff1d2; border-left: 6px solid #c99a43; font-weight: 800; }
@media (max-width: 850px) {
  .ship-directory-controls { grid-template-columns: 1fr 1fr; }
  .ship-directory-controls p { margin: 0; }
}
@media (max-width: 650px) {
  .ship-directory-controls { grid-template-columns: 1fr; }
  .ship-directory-controls button { width: 100%; }
}
