.crew-import-mapping { display: grid; grid-template-columns: repeat(auto-fit,minmax(min(100%,220px),1fr)); gap: 1rem; margin-block: 1rem; }
.crew-import-mapping select { width: 100%; min-width: 0; }
.crew-import-table { overflow-x: auto; margin-block: 1rem; }
.crew-import-table table { width: 100%; border-collapse: collapse; text-align: left; }
.crew-import-table th, .crew-import-table td { padding: .65rem; border-bottom: 1px solid var(--kh-outline-variant); vertical-align: top; overflow-wrap: anywhere; }
.crew-import-table caption { text-align: left; font-weight: 700; padding-block: .5rem; }
#crew-import-cards { display: grid; grid-template-columns: repeat(auto-fit,minmax(min(100%,230px),1fr)); gap: 1rem; margin-top: 1rem; }
.crew-import-card { border: 1px solid var(--kh-outline-variant); padding: 1rem; text-align: center; break-inside: avoid; overflow-wrap: anywhere; }
.crew-import-card svg { display: block; margin: auto; width: 180px; max-width: 100%; height: auto; shape-rendering: crispEdges; }
.crew-import-code { font-family: monospace; font-size: 1.5rem; font-weight: 700; letter-spacing: .1em; }
@media print {
  body.kh-crews { display: block; background: white; color: black; }
  body.kh-crews > :not(.shell), .kh-crews main > :not(#crew-import), #crew-import > :not(#crew-import-sheet) { display: none !important; }
  .kh-crews .shell, .kh-crews main, #crew-import { display: block; margin: 0; padding: 0; width: 100%; max-width: none; border: 0; box-shadow: none; }
  #crew-import-sheet[hidden] { display: none !important; }
  #crew-import-cards { grid-template-columns: repeat(2,minmax(0,1fr)); }
  .crew-import-card { border-color: black; }
}
