/* Portal Blessed · Compras · selección de productos v1
   Mantiene checkbox, producto y acción en una sola línea, con lectura clara. */

.purchasing-screen .supplier-summary-list{
  display:grid;
  gap:8px;
}

.purchasing-screen label.supplier-summary-row{
  display:grid!important;
  grid-template-columns:minmax(0,1fr) auto!important;
  align-items:center!important;
  gap:16px!important;
  min-height:72px;
  margin:0!important;
  padding:12px 16px!important;
  border:1px solid #dfe7e2!important;
  border-radius:14px!important;
  background:#fff!important;
  cursor:default;
  transition:border-color .15s ease,background .15s ease,box-shadow .15s ease;
}

.purchasing-screen label.supplier-summary-row:hover{
  border-color:#bfd2c8!important;
  box-shadow:0 5px 16px rgba(27,48,38,.045);
}

.purchasing-screen label.supplier-summary-row:has(input[type="checkbox"]:checked){
  border-color:#a9cdbd!important;
  background:#f6fbf8!important;
}

.purchasing-screen label.supplier-summary-row > span:first-child{
  display:grid!important;
  grid-template-columns:28px minmax(0,1fr)!important;
  grid-template-rows:auto auto!important;
  column-gap:12px!important;
  row-gap:2px!important;
  align-items:center!important;
  min-width:0;
}

.purchasing-screen label.supplier-summary-row input[type="checkbox"]{
  grid-column:1!important;
  grid-row:1 / 3!important;
  align-self:center!important;
  width:22px!important;
  height:22px!important;
  min-width:22px!important;
  min-height:22px!important;
  margin:0!important;
  padding:0!important;
  accent-color:#278f16;
  cursor:pointer;
}

.purchasing-screen label.supplier-summary-row strong{
  grid-column:2!important;
  grid-row:1!important;
  display:block!important;
  min-width:0;
  margin:0!important;
  font-size:14px!important;
  line-height:1.3!important;
  color:#15251e!important;
  overflow-wrap:anywhere;
}

.purchasing-screen label.supplier-summary-row small{
  grid-column:2!important;
  grid-row:2!important;
  display:block!important;
  margin:2px 0 0!important;
  font-size:11.5px!important;
  line-height:1.35!important;
  color:#617068!important;
}

.purchasing-screen label.supplier-summary-row > a{
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;
  min-height:34px;
  padding:7px 11px!important;
  border-radius:9px;
  color:#237414!important;
  font-size:11.5px!important;
  font-weight:800!important;
  text-decoration:none!important;
  white-space:nowrap;
}

.purchasing-screen label.supplier-summary-row > a:hover{
  background:#edf7e9;
}

/* Selección masiva */
.purchasing-screen .supplier-select-toolbar{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:16px;
  margin:0 0 12px;
  padding:12px 14px;
  border:1px solid #d5e3dc;
  border-radius:14px;
  background:#f8fbf9;
}

.purchasing-screen .supplier-select-master{
  display:flex!important;
  align-items:center!important;
  gap:10px!important;
  margin:0!important;
  cursor:pointer;
}

.purchasing-screen .supplier-select-master input{
  width:22px!important;
  height:22px!important;
  min-width:22px!important;
  min-height:22px!important;
  margin:0!important;
  accent-color:#278f16;
}

.purchasing-screen .supplier-select-master span{
  display:block!important;
}

.purchasing-screen .supplier-select-master strong{
  display:block;
  font-size:13px;
  color:#173126;
}

.purchasing-screen .supplier-select-master small{
  display:block;
  margin-top:2px;
  font-size:10.5px;
  color:#6a786f;
}

.purchasing-screen .supplier-select-actions{
  display:flex;
  align-items:center;
  justify-content:flex-end;
  gap:8px;
  flex-wrap:wrap;
}

.purchasing-screen .supplier-select-counter{
  display:inline-flex;
  align-items:center;
  min-height:34px;
  padding:6px 10px;
  border-radius:999px;
  background:#eaf4ee;
  color:#246247;
  font-size:11px;
  font-weight:800;
  white-space:nowrap;
}

.purchasing-screen .supplier-select-all,
.purchasing-screen .supplier-select-clear,
.purchasing-screen .supplier-branch-select-toggle{
  min-height:34px;
  padding:7px 11px;
  border:1px solid #c9d9d1;
  border-radius:9px;
  background:#fff;
  color:#285f4e;
  font:inherit;
  font-size:11px;
  font-weight:800;
  cursor:pointer;
}

.purchasing-screen .supplier-select-all:hover,
.purchasing-screen .supplier-select-clear:hover,
.purchasing-screen .supplier-branch-select-toggle:hover{
  border-color:#9fc4b3;
  background:#f0f7f3;
}

.purchasing-screen .supplier-select-all{
  border-color:#9fc8b4;
  background:#edf7f1;
  color:#1f6a4e;
}

.purchasing-screen .purchase-branch-master-head{
  align-items:center;
}

.purchasing-screen .supplier-branch-select-toggle{
  margin-left:auto;
  white-space:nowrap;
}

.purchasing-screen .supplier-branch-select-toggle.is-all-selected{
  border-color:#d6dfda;
  background:#f7f8f7;
  color:#65726b;
}

/* Catálogo Producto ↔ Proveedor */
.supplier-coverage-grid{
  display:grid;
  grid-template-columns:repeat(4,minmax(0,1fr));
  gap:11px;
  margin:18px 0 20px;
}
.supplier-coverage-grid article{
  min-height:104px;padding:16px 17px;border:1px solid #dce5e0;border-radius:16px;background:#fff;
  box-shadow:0 6px 20px rgba(24,52,39,.035);
}
.supplier-coverage-grid article span,.supplier-coverage-grid article strong,.supplier-coverage-grid article small{display:block}
.supplier-coverage-grid article span{font-size:10px;font-weight:800;letter-spacing:.07em;color:#708078}
.supplier-coverage-grid article strong{margin-top:5px;font-size:25px;line-height:1.1;color:#17261f}
.supplier-coverage-grid article small{margin-top:7px;font-size:11px;color:#6b7972}
.supplier-coverage-grid article.is-good{border-color:#c8dfd3;background:#f7fbf9}
.supplier-coverage-grid article.is-good strong{color:#246e55}
.supplier-coverage-grid article.is-warning{border-color:#ead5a5;background:#fffaf0}
.supplier-coverage-grid article.is-warning strong{color:#8b6507}

.supplier-unassigned-guide{
  display:grid;grid-template-columns:42px minmax(0,1fr);gap:13px;align-items:center;
  margin:0 0 18px;padding:14px 16px;border:1px solid #cfe1d8;border-radius:14px;background:#f6faf8;
}
.supplier-unassigned-guide-icon{width:38px;height:38px;border-radius:11px;display:grid;place-items:center;background:#dff0e8;color:#237054;font-weight:900}
.supplier-unassigned-guide strong,.supplier-unassigned-guide span{display:block}
.supplier-unassigned-guide strong{font-size:13px;color:#21483b}
.supplier-unassigned-guide span{margin-top:3px;font-size:11.5px;line-height:1.45;color:#66766e}

.supplier-unassigned-toolbar{display:flex;align-items:center;justify-content:space-between;gap:14px;margin:0 0 14px}
.supplier-unassigned-toolbar .search{flex:1;margin:0!important}
.supplier-unassigned-tabs{display:flex;gap:7px;flex-wrap:wrap}
.supplier-unassigned-tabs a{padding:9px 12px;border:1px solid #dce4e0;border-radius:10px;background:#fff;color:#596961;text-decoration:none;font-size:11px;font-weight:700}
.supplier-unassigned-tabs a.active{border-color:#9fc9b8;background:#eef7f3;color:#205f4b}

.supplier-unassigned-form{padding-bottom:92px}
.supplier-unassigned-bulkbar{
  position:sticky;top:76px;z-index:13;display:grid;
  grid-template-columns:minmax(230px,1fr) auto minmax(240px,320px) auto;
  gap:11px;align-items:end;margin:0 0 12px;padding:13px 14px;border:1px solid #d8e3dd;border-radius:15px;
  background:rgba(255,255,255,.97);box-shadow:0 9px 27px rgba(24,52,39,.08);backdrop-filter:blur(12px);
}
.supplier-select-all{display:flex!important;align-items:center;gap:10px;margin:0!important;cursor:pointer}
.supplier-select-all input{width:20px!important;height:20px!important;min-height:0!important;margin:0!important;accent-color:#278f16}
.supplier-select-all strong,.supplier-select-all small{display:block}
.supplier-select-all strong{font-size:12.5px}.supplier-select-all small{margin-top:2px;font-size:10.5px;color:#6e7b75}
.supplier-unassigned-bulk-actions{display:flex;gap:6px}
.supplier-unassigned-bulk-actions button{min-height:42px!important;white-space:nowrap}
.supplier-unassigned-provider{display:grid!important;gap:5px;margin:0!important;font-size:10.5px!important;font-weight:700}
.supplier-unassigned-provider select{width:100%;min-height:42px}
.supplier-unassigned-bulkbar>.button{min-height:42px;white-space:nowrap}
.supplier-unassigned-bulkbar>.button:disabled,.supplier-unassigned-sticky .button:disabled{opacity:.45;cursor:not-allowed}

.supplier-unassigned-list{display:grid;gap:7px}
.supplier-unassigned-row{
  display:grid!important;grid-template-columns:22px 34px minmax(0,1fr) minmax(135px,190px);align-items:center;gap:10px;
  min-height:68px;margin:0!important;padding:11px 14px!important;border:1px solid #dfe7e2;border-radius:13px;background:#fff;cursor:pointer;transition:.15s ease;
}
.supplier-unassigned-row:hover{border-color:#bfd2c8;box-shadow:0 5px 16px rgba(27,48,38,.045)}
.supplier-unassigned-row:has(input:checked){border-color:#a9cdbd;background:#f6fbf8;box-shadow:0 0 0 2px rgba(39,143,22,.05)}
.supplier-unassigned-row>input{width:20px!important;height:20px!important;min-height:0!important;margin:0!important;accent-color:#278f16}
.supplier-unassigned-check{width:32px;height:32px;border-radius:9px;display:grid;place-items:center;background:#edf3ef;color:#abb8b1;font-weight:900}
.supplier-unassigned-row:has(input:checked) .supplier-unassigned-check{background:#278f16;color:#fff}
.supplier-unassigned-product{min-width:0}
.supplier-unassigned-product strong,.supplier-unassigned-product small,.supplier-unassigned-date strong,.supplier-unassigned-date small{display:block}
.supplier-unassigned-product strong{font-size:13.5px;line-height:1.3;color:#17241e;overflow-wrap:anywhere}
.supplier-unassigned-product small{margin-top:3px;font-size:10.5px;line-height:1.35;color:#66746d}
.supplier-unassigned-date{text-align:right}
.supplier-unassigned-date small{font-size:9.5px;color:#829088}
.supplier-unassigned-date strong{margin-top:2px;font-size:10.5px;color:#526159}

.supplier-unassigned-sticky{
  position:sticky;bottom:12px;z-index:14;display:flex;align-items:center;justify-content:space-between;gap:18px;
  margin:18px 0 0;padding:14px 16px;border:1px solid #cadbd2;border-radius:15px;background:rgba(248,252,250,.98);
  box-shadow:0 12px 34px rgba(24,52,39,.13);backdrop-filter:blur(12px);
}
.supplier-unassigned-sticky strong,.supplier-unassigned-sticky small{display:block}
.supplier-unassigned-sticky strong{font-size:13.5px;color:#1f4034}
.supplier-unassigned-sticky small{margin-top:3px;font-size:10.5px;color:#68776f}
.supplier-unassigned-empty{padding:30px!important}.supplier-unassigned-empty strong,.supplier-unassigned-empty span{display:block}.supplier-unassigned-empty span{margin-top:5px}
.provider-scan-help{display:block;margin-top:4px;font-size:10px;color:#6d7c74}
.provider-scan-status{display:block;min-height:16px;margin-top:4px;font-size:10px;font-weight:700;color:#278f16}

@media(max-width:1080px){
  .supplier-coverage-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
  .supplier-unassigned-bulkbar{grid-template-columns:1fr 1fr}
  .supplier-unassigned-bulkbar>.button{width:100%}
}

@media(max-width:640px){
  .purchasing-screen label.supplier-summary-row{
    grid-template-columns:minmax(0,1fr) auto!important;
    gap:8px!important;
    min-height:68px;
    padding:11px 12px!important;
  }

  .purchasing-screen label.supplier-summary-row > span:first-child{
    grid-template-columns:26px minmax(0,1fr)!important;
    column-gap:9px!important;
  }

  .purchasing-screen label.supplier-summary-row input[type="checkbox"]{
    width:20px!important;
    height:20px!important;
    min-width:20px!important;
    min-height:20px!important;
  }

  .purchasing-screen label.supplier-summary-row strong{font-size:13px!important}
  .purchasing-screen label.supplier-summary-row small{font-size:10.5px!important}
  .purchasing-screen label.supplier-summary-row > a{padding:6px 7px!important;font-size:10.5px!important}

  .purchasing-screen .supplier-select-toolbar{
    align-items:stretch;
    flex-direction:column;
    gap:10px;
    padding:11px 12px;
  }

  .purchasing-screen .supplier-select-actions{
    justify-content:flex-start;
  }

  .purchasing-screen .supplier-select-counter{
    width:100%;
    justify-content:center;
  }

  .purchasing-screen .purchase-branch-master-head{
    align-items:flex-start;
    flex-direction:column;
    gap:8px;
  }

  .purchasing-screen .supplier-branch-select-toggle{
    margin-left:0;
  }

  .supplier-unassigned-toolbar{align-items:stretch;flex-direction:column}
  .supplier-unassigned-bulkbar{position:static;grid-template-columns:1fr;padding:11px}
  .supplier-unassigned-bulk-actions{width:100%}.supplier-unassigned-bulk-actions button{flex:1}
  .supplier-unassigned-row{grid-template-columns:20px 30px minmax(0,1fr);padding:10px 11px!important}
  .supplier-unassigned-date{display:none}
  .supplier-unassigned-sticky{bottom:7px;align-items:stretch;flex-direction:column;gap:9px;padding:12px}
  .supplier-unassigned-sticky .button{width:100%}
}

@media(max-width:480px){.supplier-coverage-grid{grid-template-columns:1fr}}
