/* Fiches ouvertes, graphiques et analyse de facture : format dense sur petits écrans. */
@media (max-width: 900px) {
  .modal:not(.invoice-review-modal) {
    width: min(620px, calc(100vw - 20px));
    max-height: calc(100dvh - 20px);
    padding: 20px 16px;
  }

  .modal:not(.invoice-review-modal) h2 { font-size: 18px; }
  .modal:not(.invoice-review-modal) > div > p { margin-bottom: 14px; }
  .modal-form label { margin: 10px 0; }
  .modal-form input,
  .modal-form select { min-height: 40px; padding: 8px 10px; }

  #productForm .barcode-lookup { padding: 10px; }
  #productForm .barcode-lookup em { font-size: 9px; }
  #productForm .barcode-lookup-status { margin-top: 7px; padding: 8px 10px; font-size: 10px; }
  #productForm .product-reference-field { margin: 10px 0; }
  #productForm .modal-footer { margin-top: 15px; }

  .price-history-modal .product-history-kpis > div { min-height: 0; }
  .price-history-modal .product-price-chart { min-height: 160px; }

  #page-imports .analysis { margin-top: 14px; padding: 15px; }
  #page-imports .analysis-head { gap: 10px; }
  #page-imports .analysis-head h3 { font-size: 10px; }
  #page-imports .analysis-head p { font-size: 8px; }
  #page-imports .progress { margin: 12px 0; }
  #page-imports .results { margin-top: 16px; }
  #page-imports .results-head { margin-bottom: 10px; }
  #page-imports .results-head h2 { font-size: 16px; }
  #page-imports .results-head p { font-size: 8px; }
  #page-imports .match-table { min-width: 680px; }
}

@media (max-width: 560px) {
  .modal:not(.invoice-review-modal) { padding: 16px 14px; border-radius: 14px; }
  .modal:not(.invoice-review-modal) h2 { font-size: 17px; }

  #productForm .barcode-lookup label > div { grid-template-columns: 1fr 1fr; gap: 6px; }
  #productForm .barcode-lookup input { grid-column: 1 / -1; }
  #productForm .barcode-lookup button { font-size: 11px; }

  #productForm { padding-bottom: 2px; }
  #productForm > label { margin: 8px 0; }
  #productForm .form-row { gap: 8px; margin-bottom: 8px; }
  #productForm .brand-icon-row {
    grid-template-columns: minmax(0, 1fr) 72px;
    align-items: end;
  }
  #productForm .brand-icon-row > label,
  #productForm .brand-icon-row > .product-icon-picker { margin: 0; }
  #productForm .product-reference-row { margin-bottom: 8px; }
  #productForm .product-reference-field { margin: 8px 0; }
  #productForm .product-field-head { min-height: 16px; }
  #productForm .quick-create-trigger { font-size: 8px; }
  #productForm .barcode-lookup { margin-bottom: 8px; }
  #productForm .barcode-lookup label { margin: 0; }
  #productForm .barcode-lookup em { margin-top: 5px; line-height: 1.25; }
  #productForm .modal-footer { gap: 6px; margin-top: 12px; }
  #productForm .modal-footer > * { min-height: 38px; }

  .price-history-modal .product-history-header { margin-bottom: 10px; }
  .price-history-modal .product-history-header h2 { font-size: 18px; }
  .price-history-modal .product-history-kpis { grid-template-columns: repeat(2, minmax(0, 1fr)) !important; }
  .price-history-modal .product-history-kpis > div { padding: 9px; }
  .price-history-modal .product-history-kpis strong { font-size: 15px; }
  .price-history-modal .product-price-chart { min-height: 145px; }

  #page-imports .analysis { padding: 13px; }
  #page-imports .analysis-steps { display: grid; grid-template-columns: 1fr; gap: 5px; }
  #page-imports .results-head > div:last-child { display: flex; gap: 8px; align-items: center; }
  #page-imports .results-head .primary { min-height: 38px; padding-inline: 11px; }
}

/* Fiche comparative : garder les repères, réduire la hauteur sur mobile et tablette. */
@media(max-width:900px){.comparison-detail-modal .comparison-detail-head{align-items:flex-start;gap:12px}.comparison-detail-modal .comparison-detail-head>div{min-width:0;gap:9px}.comparison-detail-modal .comparison-detail-head h2{font-size:16px;line-height:1.2}.comparison-detail-modal .comparison-detail-position{flex:0 0 auto}.comparison-detail-modal .comparison-detail-position strong{font-size:16px}.comparison-detail-modal .comparison-key-metrics{grid-template-columns:repeat(3,minmax(0,1fr));gap:7px;margin-top:11px}.comparison-detail-modal .comparison-key-metrics article{min-width:0;padding:9px}.comparison-detail-modal .comparison-key-metrics span{font-size:7px;line-height:1.2}.comparison-detail-modal .comparison-key-metrics b{margin-top:4px;font-size:12px;line-height:1.15}.comparison-detail-modal .comparison-market{margin-top:11px;padding-top:10px}.comparison-detail-modal .comparison-market h3{margin-bottom:8px}.comparison-detail-modal .comparison-market>div{gap:9px;row-gap:10px}.comparison-detail-modal .comparison-market b{margin-top:3px}.comparison-detail-modal .comparison-detail-footnote{margin-top:10px!important;padding-top:9px}}
@media(max-width:390px){.comparison-detail-modal .comparison-detail-head{flex-direction:column}.comparison-detail-modal .comparison-detail-position{align-items:flex-start;text-align:left}.comparison-detail-modal .comparison-key-metrics{gap:5px}.comparison-detail-modal .comparison-key-metrics article{padding:8px 6px}.comparison-detail-modal .comparison-key-metrics span{font-size:6.5px}.comparison-detail-modal .comparison-key-metrics b{font-size:11px}}
