/* Etap A2.5: presentation-only mobile ergonomics for warehouse and driver screens. */
#warehouse-dashboard-root,
#warehouse-tasks-root,
#warehouse-sets-root,
#warehouse-locations-root,
#warehouse-transports-root,
#warehouse-inspection-root,
#warehouse-putaway-root,
#warehouse-prepare-delivery-root,
#warehouse-release-transport-root,
#driver-transports-root {
  min-width: 0;
  max-width: 100%;
  overflow-wrap: anywhere;
}

.warehouse-dashboard-kpis > *,
.warehouse-action > div,
.warehouse-set-card-main,
.transport-card > *,
.location-slot > *,
.driver-transport-card > * {
  min-width: 0;
  overflow-wrap: anywhere;
}

.warehouse-set-detail-grid dd,
.transport-detail dd,
.driver-transport-detail dd,
.warehouse-inspection-wheel p,
.warehouse-inspection-wheel small {
  min-width: 0;
  overflow-wrap: anywhere;
}

@media (max-width: 600px) {
  .warehouse-dashboard-heading {
    align-items: flex-start;
    flex-direction: column;
    gap: 4px;
  }

  .warehouse-dashboard-heading h2 {
    margin-bottom: 0;
  }

  .warehouse-set-filters input,
  .warehouse-set-filters select,
  .warehouse-inspection-fields input,
  .warehouse-inspection-fields select,
  .warehouse-inspection-fields textarea,
  #warehouse-putaway-root select,
  .transport-filters input,
  .transport-filters select,
  .transport-create-form input,
  .transport-create-form select,
  .transport-create-form textarea,
  .location-config-grid input,
  .location-config-grid select,
  .location-filters input,
  .location-filters select {
    min-width: 0;
    min-height: 44px;
  }

  .warehouse-actions button,
  .warehouse-task-card button,
  .warehouse-set-card button,
  .warehouse-set-actions button,
  .warehouse-inspection-actions button,
  .warehouse-putaway-actions button,
  .transport-form-actions button,
  .transport-filter-actions button,
  .location-config-grid button,
  .location-filters button,
  .driver-transport-actions button {
    min-height: 44px;
  }
}

@media (max-width: 380px) {
  .warehouse-dashboard-kpis {
    grid-template-columns: minmax(0, 1fr);
  }

  .warehouse-dashboard-kpis .card,
  .warehouse-set-card,
  .warehouse-inspection-wheel,
  .transport-card,
  .location-slot,
  .driver-transport-card,
  .driver-transport-detail {
    padding: 12px;
  }
}

#warehouse-transports-root .transport-card {
  display: grid;
  grid-template-columns: 92px minmax(0, 1fr) auto;
}

#warehouse-transports-root .transport-detail-grid {
  grid-template-columns: repeat(2, minmax(0, 1fr));
}

.transport-order-photo {
  display: grid;
  place-items: center;
  width: 92px;
  height: 74px;
  overflow: hidden;
  border: 1px solid var(--line);
  border-radius: 10px;
  background: #eef2f6;
  color: var(--muted);
  font-size: .75rem;
  text-align: center;
}

.transport-order-photo img { width: 100%; height: 100%; object-fit: cover; }
.transport-detail .transport-order-photo { float: right; margin: 0 0 10px 12px; }
.transport-detail-history { min-width: 0; }
.transport-detail-history ol { margin: 0; padding-left: 22px; }
.transport-detail-history li { margin-bottom: 8px; overflow-wrap: anywhere; }
.driver-transport-photo { display: grid; place-items: center; width: 128px; height: 104px; overflow: hidden; border: 1px solid var(--line); border-radius: 10px; background: #eef2f6; color: var(--muted); font-size: .75rem; text-align: center; }
.driver-transport-photo img { width: 100%; height: 100%; object-fit: cover; }
.transport-order-photo,.driver-transport-photo,.partner-transport-queue-photo{padding:0;cursor:zoom-in;color:inherit}
.driver-transport-photo.placeholder{cursor:default;padding:10px}
.fjn-transport-lightbox{width:min(94vw,1000px);max-width:94vw;max-height:94dvh;padding:48px 12px 12px;border:0;border-radius:14px;background:#111c2d;overflow:auto}.fjn-transport-lightbox::backdrop{background:#07101dcc}.fjn-transport-lightbox>button{position:absolute;right:10px;top:8px;min-width:38px;min-height:38px;border:1px solid #fff8;border-radius:50%;background:#fff;color:#111c2d;font-size:1.4rem}.fjn-transport-lightbox>img{display:block;max-width:100%;max-height:calc(94dvh - 62px);margin:auto;object-fit:contain}

#driver-transports-root .driver-transport-list{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}
#driver-transports-root .driver-transport-card{display:grid;grid-template-columns:128px minmax(0,1fr);align-items:start;gap:12px;padding:12px;background:#fff;color:inherit;border:1px solid var(--line);border-radius:12px;text-align:left;box-shadow:none}
#driver-transports-root .driver-transport-card:hover{border-color:var(--accent)}
.driver-transport-card-main{display:grid;align-content:start;gap:5px;min-width:0}
.driver-transport-card-main p,.driver-transport-card-main small{margin:0}
.driver-transport-card-heading{display:flex;align-items:center;gap:8px;flex-wrap:wrap}
.driver-transport-status{font-size:.82rem;color:var(--muted)}
.driver-transport-date{font-size:1.05rem}
.driver-transport-wheel{font-weight:700}
.driver-transport-order-number{color:var(--muted)}
.driver-transport-address{color:var(--muted)}
.driver-transport-open{grid-column:2;justify-self:start;min-height:42px}
.driver-transport-open:focus-visible,.driver-transport-photo:focus-visible{outline:3px solid var(--accent);outline-offset:3px}
.driver-transport-detail-layout{display:grid;grid-template-columns:minmax(180px,240px) minmax(0,1fr);align-items:start;gap:16px}
.driver-transport-photo-detail{width:100%;height:auto;aspect-ratio:4/3}
#driver-transports-root .driver-transport-detail dl{margin:0;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}
#driver-transports-root .driver-transport-detail dl div{padding:10px}
.driver-transport-detail a[href^="tel:"]{font-weight:700;overflow-wrap:anywhere}
.driver-transport-instruction{grid-column:1/-1}
.driver-transport-order-detail dd{font-size:.9rem;color:var(--muted)}
.driver-transport-items-section{margin-top:14px}
.driver-transport-items-section h3{margin-bottom:8px}
.driver-transport-empty-items{margin:14px 0 0;padding:10px 12px;border-radius:8px;background:#eef2f6;color:var(--muted)}
.driver-transport-actions{position:sticky;bottom:0;z-index:1;padding-top:12px;background:linear-gradient(transparent,#fff 12px)}
.driver-transport-actions button{max-width:100%}

@media (max-width: 900px) {
  #warehouse-transports-root .transport-detail-grid { grid-template-columns: 1fr; }
  #driver-transports-root .driver-transport-list{grid-template-columns:1fr}
}

@media (max-width: 600px) {
  #warehouse-transports-root .transport-card {
    display: grid;
    grid-template-columns: 72px minmax(0, 1fr);
    flex-direction: initial;
  }
  #warehouse-transports-root .transport-card > .transport-open { grid-column: 1 / -1; }
  .transport-card .transport-order-photo { width: 72px; height: 60px; }
  #driver-transports-root .driver-transport-card{grid-template-columns:112px minmax(0,1fr)}
  .driver-transport-photo { width: 112px; height: 92px; }
  .driver-transport-detail-layout{grid-template-columns:1fr}
  .driver-transport-photo-detail{width:min(100%,360px);height:auto}
  #driver-transports-root .driver-transport-detail dl{grid-template-columns:1fr}
  .driver-transport-instruction{grid-column:auto}
  .driver-transport-actions{justify-content:stretch}
  .driver-transport-actions button{width:100%;min-height:48px}
}

@media (max-width: 390px) {
  #driver-transports-root .driver-transport-card{grid-template-columns:minmax(0,1fr)}
  #driver-transports-root .driver-transport-card .driver-transport-photo{width:100%;height:auto;aspect-ratio:16/9}
  .driver-transport-open{grid-column:1;width:100%;justify-content:center}
}
