/* IQC query interface; rules are scoped to the incoming inspection page. */
#qualityIncomingPanel .iqc-page-head {
  display: flex;
  flex-direction: row;
  align-items: center;
  justify-content: space-between;
}

#qualityIncomingPanel .iqc-search-form {
  margin: 6px 0 24px;
}

#qualityIncomingPanel .iqc-lookup-form label {
  display: grid;
  gap: 8px;
  color: #4b5c75;
  font-size: 14px;
  font-weight: 600;
}

#qualityIncomingPanel .iqc-search-prompt {
  display: none;
}

#qualityIncomingPanel .iqc-search-row {
  display: grid;
  grid-template-columns: minmax(0, 1fr) 96px 96px;
  gap: 10px;
  align-items: center;
}

#qualityIncomingPanel input {
  width: 100%;
  min-width: 0;
  min-height: 44px;
  padding: 10px 12px;
  border: 1px solid #c8d8ee;
  border-radius: 6px;
  background: #fff;
  color: #172033;
  font-size: 15px;
  box-sizing: border-box;
}

#qualityIncomingPanel input:focus {
  outline: 2px solid #3276cf;
  outline-offset: 1px;
}

#qualityIncomingPanel #iqcSearchInput::placeholder {
  color: #6b7280;
  opacity: 1;
}

#qualityIncomingPanel .iqc-search-row button,
#qualityIncomingPanel .iqc-dialog-actions button {
  min-width: 0;
  min-height: 44px;
  padding: 10px 12px;
  font-size: 15px;
  white-space: nowrap;
}

#qualityIncomingPanel .iqc-results {
  border-top: 0;
}

#qualityIncomingPanel .iqc-bottom-nav {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  min-height: 54px;
  border-top: 1px solid #d6e2f2;
  background: #f5f8fd;
}

#qualityIncomingPanel .iqc-bottom-nav-item {
  position: relative;
  display: flex;
  min-width: 0;
  align-items: center;
  justify-content: center;
  padding: 14px 10px;
  box-sizing: border-box;
  color: #566983;
  font-size: 15px;
  font-weight: 600;
  line-height: 1.25;
  white-space: nowrap;
}

#qualityIncomingPanel .iqc-bottom-nav-item + .iqc-bottom-nav-item {
  border-left: 1px solid #dce6f3;
}

#qualityIncomingPanel .iqc-bottom-nav-item.is-active {
  color: #2458a6;
  background: #eaf2ff;
}

#qualityIncomingPanel .iqc-bottom-nav-item.is-active::before {
  content: "";
  position: absolute;
  inset: 0 20% auto;
  height: 3px;
  border-radius: 0 0 3px 3px;
  background: #3478d4;
}

#qualityIncomingPanel .iqc-results-head {
  display: flex;
  align-items: center;
  justify-content: flex-end;
  gap: 12px;
  padding: 18px 0;
}

#qualityIncomingPanel .iqc-results-head h3 {
  margin: 0;
  font-size: 18px;
  color: #172033;
}

#qualityIncomingPanel .iqc-preview-badge {
  padding: 4px 9px;
  border: 1px solid #dce5f2;
  border-radius: 4px;
  background: #f6f9fd;
  color: #65768e;
  font-size: 12px;
}

#qualityIncomingPanel .iqc-result-empty {
  min-height: 270px;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  gap: 12px;
  padding: 28px 12px;
  border: 1px solid #e2eaf4;
  border-radius: 8px;
  background: #fbfdff;
  text-align: center;
}

#qualityIncomingPanel .iqc-result-empty svg {
  width: 48px;
  height: 48px;
  margin-bottom: 4px;
  fill: none;
  stroke: #9db7d6;
  stroke-width: 2;
  stroke-linecap: round;
  stroke-linejoin: round;
}

#qualityIncomingPanel .iqc-result-empty strong {
  color: #364b66;
  font-size: 17px;
}

#qualityIncomingPanel .iqc-result-empty p,
#qualityIncomingPanel .iqc-dialog-note {
  margin: 0;
  color: #64748b;
  font-size: 14px;
  line-height: 1.6;
}

#qualityIncomingPanel .iqc-result-empty > span {
  color: #7b899b;
  font-size: 12px;
}

#qualityIncomingPanel .iqc-feedback {
  margin: 10px 0 0;
  padding: 10px 12px;
  border-left: 3px solid #6093d2;
  background: #eef5ff;
  color: #315782;
  font-size: 14px;
  line-height: 1.6;
  overflow-wrap: anywhere;
}

#qualityIncomingPanel [hidden] { display: none !important; }

#qualityIncomingPanel .iqc-lookup-dialog {
  position: fixed;
  inset: 50% auto auto 50%;
  transform: translate(-50%, -50%);
  width: 580px;
  max-width: calc(100vw - 32px);
  max-height: calc(100dvh - 32px);
  margin: 0;
  padding: 24px;
  overflow: auto;
  box-sizing: border-box;
  border: 1px solid #d3e0f1;
  border-radius: 12px;
  background: white;
  color: #172033;
  box-shadow: 0 24px 80px #0c254540;
}

#qualityIncomingPanel .iqc-lookup-dialog::backdrop { background: #0e203e66; }

#qualityIncomingPanel .iqc-dialog-head {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
  margin-bottom: 22px;
}

#qualityIncomingPanel .iqc-dialog-head h3 { margin: 0; font-size: 22px; }

#qualityIncomingPanel .iqc-dialog-head > button {
  width: 36px;
  height: 36px;
  padding: 0;
  background: #f0f4fa;
  color: #52657e;
  border: 0;
  border-radius: 6px;
  font-size: 25px;
  box-shadow: none;
}

#qualityIncomingPanel .iqc-lookup-form { display: grid; gap: 16px; }
#qualityIncomingPanel .iqc-supplier-matches { display:grid; gap:8px; max-height:320px; overflow:auto; min-width:0; }
#qualityIncomingPanel .iqc-supplier-option { display:flex; align-items:center; justify-content:space-between; gap:12px; width:100%; min-height:64px; padding:12px; background:#f5f8fc; border:1px solid #dce5ef; border-radius:8px; color:#163355; text-align:left; }
#qualityIncomingPanel .iqc-supplier-option > span:first-child { min-width:0; display:grid; gap:6px; }
#qualityIncomingPanel .iqc-supplier-option strong { font-size:14px; overflow-wrap:anywhere; }
#qualityIncomingPanel .iqc-supplier-option small { color:#60748b; font-size:12px; overflow-wrap:anywhere; }
#qualityIncomingPanel .iqc-supplier-option > span:last-child { flex-shrink:0; color:#1765b9; font-size:12px; }
#qualityIncomingPanel .iqc-supplier-option:hover, #qualityIncomingPanel .iqc-supplier-option:focus-visible { background:#eaf3ff; border-color:#5d9ad8; }
#qualityIncomingPanel .iqc-lookup-form label { min-width: 0; }
#qualityIncomingPanel .iqc-date-fields { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 12px; }
#qualityIncomingPanel .iqc-dialog-actions { display: flex; justify-content: flex-end; gap: 10px; }
#qualityIncomingPanel .iqc-dialog-actions button { width: 100px; }

#qualityIncomingPanel .iqc-dialog-empty {
  display: grid;
  gap: 10px;
  margin-top: 22px;
  padding: 24px 10px;
  border-top: 1px solid #e2eaf4;
  text-align: center;
  color: #64748b;
  font-size: 14px;
}

#qualityIncomingPanel .iqc-dialog-empty span { font-size: 12px; color: #7b899b; }

@media (max-width: 600px) {
  #qualityIncomingPanel .iqc-search-row { grid-template-columns: minmax(0, 1fr) 48px 76px; gap: 6px; }
  #qualityIncomingPanel #iqcSearchInput { padding-inline: 4px; }
  #qualityIncomingPanel #iqcSearchInput::placeholder { font-size: clamp(9px, 2.8vw, 12px); letter-spacing: -.2px; }
  #qualityIncomingPanel .iqc-search-row > .primary { padding: 10px 4px; }
  #qualityIncomingPanel .iqc-page-head h2 { font-size: 25px; }
  #qualityIncomingPanel .iqc-page-head { gap: 10px; }
  #qualityIncomingPanel .iqc-result-empty { min-height: 240px; padding: 24px 12px; }
  #qualityIncomingPanel .iqc-lookup-dialog { padding: 18px; }
  #qualityIncomingPanel .iqc-dialog-actions button { flex: 1; width: auto; }
  #qualityIncomingPanel .iqc-date-fields { grid-template-columns: minmax(0, 1fr); }
  #qualityIncomingPanel .iqc-bottom-nav { min-height: 48px; }
  #qualityIncomingPanel .iqc-bottom-nav-item { padding: 12px 2px; font-size: 12px; }
}

/* IQC main page: use the same blue top bar as production scheduling. */
#qualityIncomingPanel.panel {
  --iqc-panel-padding: clamp(16px, 2.4vw, 24px);
  padding: 0 !important;
  overflow: hidden;
}

#qualityIncomingPanel #iqcListPage > .iqc-page-head {
  width: 100%;
  min-height: 62px;
  margin: 0 0 18px;
  padding: 9px 20px;
  box-sizing: border-box;
  flex-wrap: nowrap;
  gap: 18px;
  color: #fff;
  background: linear-gradient(105deg, #29487d, #4168ad);
  border-radius: 7px 7px 0 0;
}

#qualityIncomingPanel #iqcListPage > .iqc-page-head h2 {
  margin: 0 auto 0 0;
  color: #fff;
  font-size: 23px;
  line-height: 1.25;
  white-space: nowrap;
}

#qualityIncomingPanel #iqcListPage > .iqc-page-head > :is(.quality-return, .iqc-refresh-icon) {
  flex: 0 0 44px;
  width: 44px;
  height: 44px;
  min-height: 44px;
  padding: 0;
  border: 1px solid rgba(255, 255, 255, .72);
  border-radius: 7px;
  color: #fff;
  background: rgba(255, 255, 255, .12);
}

#qualityIncomingPanel #iqcListPage > .iqc-page-head > :is(.quality-return, .iqc-refresh-icon):hover {
  color: #fff;
  background: rgba(255, 255, 255, .24);
}

#qualityIncomingPanel #iqcListPage > .iqc-page-head > :is(.quality-return, .iqc-refresh-icon):focus-visible {
  outline-color: #fff;
}

#qualityIncomingPanel .iqc-refresh-icon { display:grid; place-items:center; box-shadow:none; }
#qualityIncomingPanel .iqc-refresh-icon svg { width:22px; height:22px; fill:none; stroke:currentColor; stroke-width:1.8; stroke-linecap:round; stroke-linejoin:round; }
#qualityIncomingPanel .iqc-refresh-icon:disabled { cursor:wait; opacity:.6; }
#qualityIncomingPanel .iqc-refresh-icon[aria-busy="true"] svg { animation:iqc-refresh-turn 1s linear infinite; }
@keyframes iqc-refresh-turn { to { transform:rotate(360deg); } }
@media(prefers-reduced-motion:reduce) { #qualityIncomingPanel .iqc-refresh-icon[aria-busy="true"] svg { animation:none; } }

#qualityIncomingPanel #iqcListPage > .iqc-search-form {
  flex: none;
  margin: 6px var(--iqc-panel-padding) 12px;
}

#qualityIncomingPanel #iqcListPage > .iqc-results {
  display: flex;
  flex: 1 1 auto;
  flex-direction: column;
  min-height: 0;
  margin: 0 var(--iqc-panel-padding);
  overflow: hidden;
}

#qualityIncomingPanel #iqcListPage {
  display: flex;
  flex-direction: column;
  width: 100%;
  min-width: 0;
  min-height: 0;
  height: var(--iqc-list-viewport-height, 100dvh);
  overflow: hidden;
}

#qualityIncomingPanel #iqcListPage > .iqc-page-head { flex: none; }
#qualityIncomingPanel #iqcReceiptRows { display:flex; flex:1 1 auto; min-height:0; overflow:hidden; }
#qualityIncomingPanel #iqcReceiptRows > .iqc-table-scroll { width:100%; height:100%; max-height:none; overflow:auto; overscroll-behavior:contain; }
#qualityIncomingPanel #iqcBottomStatus { flex:none; }
#qualityIncomingPanel #iqcBottomNav { flex:none; }

#qualityIncomingPanel > :is(#iqcDetailPage, #iqcReceiptPage) {
  padding: var(--iqc-panel-padding);
}

.mobile-preview #qualityIncomingPanel.panel {
  --iqc-panel-padding: 12px;
}

@media (min-width: 601px) and (max-width: 1366px) {
  .mobile-preview #qualityIncomingPanel #iqcListPage > .iqc-page-head {
    min-height: 58px;
    padding: 7px 12px;
  }

  .mobile-preview #qualityIncomingPanel #iqcListPage > .iqc-page-head h2 {
    font-size: 21px;
  }
}

@media (max-width: 760px) {
  #qualityIncomingPanel.panel {
    --iqc-panel-padding: 14px;
  }
}

@media (max-width: 600px) {
  #qualityIncomingPanel #iqcListPage > .iqc-page-head {
    min-height: 52px;
    padding: 4px 8px;
    gap: 8px;
  }

  #qualityIncomingPanel #iqcListPage > .iqc-page-head h2 {
    font-size: 18px;
  }
}
/* POST-106: page-local fullscreen preserves the current table and session. */
body.iqc-fullscreen { overflow:hidden; }
body.iqc-fullscreen .app-shell { display:block !important; width:100vw !important; max-width:none !important; }
body.iqc-fullscreen .sidebar,
body.iqc-fullscreen .content > :not(#qualityIncomingPanel) { display:none !important; }
body.iqc-fullscreen .content { width:100vw !important; max-width:none !important; padding:0 !important; margin:0 !important; }
body.iqc-fullscreen #qualityIncomingPanel.active-panel { width:100%; height:var(--mobile-viewport-height,100dvh); max-width:none; margin:0 !important; border:0; border-radius:0; }
#iqcFullscreen .iqc-collapse-icon,
#iqcFullscreen[aria-pressed="true"] .iqc-expand-icon { display:none; }
#iqcFullscreen[aria-pressed="true"] .iqc-collapse-icon { display:initial; }
@media(max-width:600px) {
  #qualityIncomingPanel #iqcClearSearch { padding:8px 3px; font-size:13px; }
  #qualityIncomingPanel #iqcListPage > .iqc-page-head { gap:6px; }
  #qualityIncomingPanel #iqcListPage > .iqc-page-head h2 { font-size:20px; }
}
