/* pricelist.css v6 */

/* ── Layout ──────────────────────────────────────────────────────── */
.plStage{
  position:fixed;
  top:var(--topH,52px);bottom:0;left:0;right:0;
  display:flex;flex-direction:column;
  overflow:hidden;
}

/* ── Toolbar ─────────────────────────────────────────────────────── */
.plToolbar{
  flex-shrink:0;
  display:flex;align-items:center;gap:10px;
  padding:8px 12px;
  background:var(--surf);
  border-bottom:1px solid var(--border);
  flex-wrap:wrap;
}
.plToolLeft{ flex:1; }
.plToolRight{ display:flex;align-items:center;gap:8px;flex-wrap:wrap; }
.plStats{ font-size:13px;font-weight:600;color:var(--text2); }

.plBtn{
  display:inline-flex;align-items:center;gap:5px;
  padding:7px 13px;border-radius:10px;
  border:1.5px solid var(--border);background:var(--surf2);
  color:var(--text2);font-size:12px;font-weight:700;
  cursor:pointer;transition:all .15s;white-space:nowrap;
}
.plBtn:hover{background:var(--border2,var(--border));color:var(--text);}
.plBtn:disabled{opacity:.35;cursor:default;pointer-events:none;}
.plBtnAccent{
  background:rgba(255,107,43,.15);border-color:var(--accent);color:var(--accent);
}
.plBtnAccent:not(:disabled):hover{background:var(--accent);color:#fff;}

.plPager{display:flex;align-items:center;gap:6px;}
.plNavBtn{
  width:32px;height:32px;border-radius:8px;
  display:flex;align-items:center;justify-content:center;
  border:1.5px solid var(--border);background:var(--surf2);
  color:var(--text2);font-size:18px;cursor:pointer;transition:all .15s;
}
.plNavBtn:hover{background:var(--surf);color:var(--text);}
.plNavBtn:disabled{opacity:.3;cursor:default;}
#plPageInfo{font-size:12px;font-weight:600;color:var(--text2);white-space:nowrap;}
.plPageSel{
  padding:6px 8px;border-radius:8px;
  border:1.5px solid var(--border);background:var(--surf2);
  color:var(--text);font-size:12px;font-weight:600;outline:none;cursor:pointer;
}
.plPageSel option{background:var(--surf2);}

/* ── Table ───────────────────────────────────────────────────────── */
.plTableWrap{
  flex:1;overflow-y:auto;overflow-x:auto;
  scrollbar-width:thin;scrollbar-color:var(--border2,var(--border)) transparent;
}
.plTable{
  width:100%;border-collapse:collapse;font-size:12px;
  border-spacing:0;
}
.plTable thead{position:sticky;top:0;z-index:10;}
.plTable th{
  padding:7px 8px;text-align:left;
  background:var(--surf);
  border-bottom:2px solid var(--border);
  color:var(--text2);font-weight:700;
  font-size:11px;letter-spacing:.3px;text-transform:uppercase;
  white-space:nowrap;
}
.plTable td{
  padding:5px 8px;
  border-bottom:1px solid var(--border);
  vertical-align:middle;
}
.plRow{ cursor:pointer;transition:background .1s; }
.plRow:hover{ background:var(--surf2); }
.plRow.sel{ background:rgba(255,107,43,.07); }
[data-theme="light"] .plRow.sel{ background:rgba(255,107,43,.06); }

/* Col widths */
.colChk   { width:32px;text-align:center;padding:5px 4px; }
.colCod   { width:95px; }
.colImg   { width:52px;text-align:center; }
.colName  { min-width:160px; }
.colStoc  { width:54px;text-align:center; }
.colAngro,.colAchZi,.colVanzare{ width:88px;text-align:right;font-weight:700; }
.colAngro,.colAchZi{ color:#c70000; }
.colVanzare{ color:#018300; }

.plCode{
  background:#1a1a1a;color:#fff;
  border-radius:5px;padding:2px 6px;
  font-size:10px;font-weight:700;cursor:pointer;
  display:inline-block;white-space:nowrap;
  transition:background .15s;
}
.plCode:hover{ background:#333; }

.plImg{
  width:42px;height:42px;object-fit:contain;
  border-radius:6px;background:#fff;
  border:1px solid var(--border);display:block;margin:0 auto;
}

/* Category separator row */
.plCatRow td{
  background:rgba(255,107,43,.06);
  color:var(--accent);font-size:10px;font-weight:800;
  letter-spacing:.5px;text-transform:uppercase;
  padding:4px 8px;
  border-left:3px solid var(--accent);
}

/* Stock pills */
.stPill{font-size:10px;font-weight:800;padding:2px 6px;border-radius:10px;white-space:nowrap;}
.stPill.high{background:rgba(1,131,0,.12);color:#016800;border:1px solid rgba(1,131,0,.2);}
.stPill.mid {background:rgba(180,120,0,.12);color:#7a5200;border:1px solid rgba(180,120,0,.2);}
.stPill.low {background:rgba(199,0,0,.1);color:#c70000;border:1px solid rgba(199,0,0,.2);}
.stPill.zero{background:rgba(0,0,0,.07);color:var(--text3);border:1px solid var(--border);}

.plLoading,.plEmpty{
  padding:24px;text-align:center;
  color:var(--text2);opacity:.7;font-size:14px;
}

/* ── Category search in drawer ───────────────────────────────────── */
.plCatSearchWrap{
  position:relative;display:flex;align-items:center;
  padding:8px;border-bottom:1px solid var(--border);flex-shrink:0;
}
.plCatSearchWrap .searchIcon{
  position:absolute;left:17px;color:var(--text3);
  display:flex;align-items:center;pointer-events:none;
}
.plCatSearchWrap .search{ padding-left:32px;padding-right:28px;width:100%;font-size:13px; }
.plCatSearchWrap .clearX{
  position:absolute;right:12px;width:22px;height:22px;
  display:flex;align-items:center;justify-content:center;
  background:var(--surf2);border:1px solid var(--border);
  border-radius:5px;color:var(--text2);cursor:pointer;
}

/* ── PDF MODAL ───────────────────────────────────────────────────── */
.plModal{
  display:none;position:fixed;inset:0;z-index:400;
  background:rgba(0,0,0,.6);
  align-items:center;justify-content:center;padding:16px;
}
.plModal.open{ display:flex;animation:fadeIn .2s ease; }
.plModalCard{
  background:var(--surf);border:1px solid var(--border);
  border-radius:20px;width:min(460px,90vw);max-height:90vh;
  overflow-y:auto;display:flex;flex-direction:column;
  box-shadow:var(--shadow,0 20px 60px rgba(0,0,0,.4));
}
.plModalHead{
  display:flex;align-items:flex-start;gap:12px;
  padding:16px 18px;border-bottom:1px solid var(--border);
  flex-shrink:0;
  background:linear-gradient(135deg,rgba(255,107,43,.1),rgba(255,107,43,.03));
}
.plModalTitle{font-weight:800;font-size:15px;color:var(--text);flex:1;}
.plModalSub{padding:8px 18px;font-size:12px;color:var(--text2);min-height:30px;}
.plModalBody{padding:12px 16px 16px;display:flex;flex-direction:column;gap:14px;}
.plModalErr{padding:12px 18px;color:#c70000;font-size:13px;word-break:break-word;}

.plShareSect{ display:flex;flex-direction:column;gap:8px; }
.plShareLbl{
  font-size:10px;font-weight:800;letter-spacing:.6px;
  text-transform:uppercase;color:var(--text3);
}
.plShareRow{ display:flex;gap:8px;flex-wrap:wrap; }
.plShareBtn{
  flex:1;min-width:90px;
  display:flex;align-items:center;justify-content:center;gap:6px;
  padding:10px 12px;border-radius:12px;
  border:1.5px solid var(--border);background:var(--surf2);
  color:var(--text);font-size:13px;font-weight:700;
  cursor:pointer;text-decoration:none;transition:all .15s;
}
.plShareBtn:hover{ border-color:var(--accent);color:var(--accent); }
.plSViber:hover{border-color:#7360f2;color:#7360f2;}
.plSWA:hover{border-color:#25D366;color:#25D366;}
.plSTG:hover{border-color:#2AABEE;color:#2AABEE;}

.plMsgIco{
  width:22px;height:22px;background-size:contain;background-repeat:no-repeat;
  background-position:center;display:inline-block;flex-shrink:0;
}
.plMsgIco.viber{background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='%237360f2'%3E%3Cpath d='M11.4 0C5.7 0 2 3.5 2 9.1v2.3c0 2.1.7 4.1 2 5.7L4 20.2c.1.5.7.8 1.2.6l4.1-1.7c.7.1 1.4.2 2.1.2h.4c5.7 0 9.4-3.5 9.4-9.1V9.1C21.2 3.5 17.1 0 11.4 0zm3.3 15.3c-.4.4-1 .7-1.7.7-.3 0-.7-.1-1-.2-1.9-.8-3.5-2-4.8-3.5-1.2-1.3-2.1-2.8-2.7-4.5-.2-.6-.1-1.2.3-1.6l.8-.8c.4-.4 1-.4 1.4 0l1.4 1.4c.4.4.4 1 0 1.4l-.5.5c-.1.1-.1.3 0 .4.5.9 1.1 1.7 1.9 2.4.7.7 1.5 1.3 2.4 1.7.2.1.4 0 .5-.1l.5-.5c.4-.4 1-.4 1.4 0l1.4 1.4c.4.4.4 1 0 1.4l-.3.4z'/%3E%3C/svg%3E");}
.plMsgIco.whatsapp{background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='%2325D366'%3E%3Cpath d='M17.5 14.4c-.3-.1-1.7-.8-1.9-.9-.2-.1-.4-.1-.6.1-.2.2-.7.9-.8 1.1-.2.2-.3.2-.6.1-1.7-.6-2.8-1.5-3.8-3.1-.3-.5.3-.5.9-1.6.1-.2 0-.4-.1-.5-.1-.1-.6-1.4-.8-2-.2-.5-.4-.4-.6-.4-.5 0-.9 0-1.3.4-1.5 1.6-.9 3.3.2 4.8 1.9 2.6 3.9 3.6 7.5 4.2.5.1 1 0 1.4-.2.5-.3.8-.8.9-1.3.1-.5.1-.9 0-1-.1-.1-.3-.2-.6-.3zM12 2C6.5 2 2 6.5 2 12c0 1.9.5 3.7 1.4 5.3L2 22l4.8-1.4C8.3 21.5 10.1 22 12 22c5.5 0 10-4.5 10-10S17.5 2 12 2z'/%3E%3C/svg%3E");}
.plMsgIco.telegram{background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='%232AABEE'%3E%3Cpath d='M12 2C6.48 2 2 6.48 2 12s4.48 10 10 10 10-4.48 10-10S17.52 2 12 2zm4.64 6.8-1.7 8c-.12.54-.46.67-.93.42l-2.57-1.9-1.24 1.2c-.14.14-.26.26-.53.26l.19-2.65 4.85-4.38c.21-.19-.05-.29-.32-.1L7.1 14.3l-2.52-.79c-.55-.17-.56-.55.11-.82l9.86-3.8c.46-.17.86.11.69.81z'/%3E%3C/svg%3E");}

.plEmailRow{ display:flex;gap:8px; }
.plEmailInput{
  flex:1;padding:9px 12px;border-radius:10px;
  border:1.5px solid var(--border);background:var(--surf2);
  color:var(--text);font-size:13px;outline:none;transition:border-color .2s;
}
.plEmailInput:focus{ border-color:var(--accent); }

/* ── Topbar active state for btnMenu ─────────────────────────────── */
.topbar .iconBtn.btnCat{ color:var(--accent);border-color:rgba(255,107,43,.3); }
.topbar .iconBtn.btnCat:hover{ background:rgba(255,107,43,.1); }

/* ── Clickable table cells ───────────────────────────────────────── */
.plImgCell:hover .plImg{
  transform:scale(1.05);
  border-color:var(--accent);
}
.plImg{ transition:transform .15s, border-color .15s; }

.plNameCell:hover{
  color:var(--accent);
  background:rgba(255,107,43,.05);
}
.colName{ position:relative; }
.plNameCell::after{
  content:'';
  position:absolute;left:0;top:0;bottom:0;width:3px;
  background:transparent;transition:background .15s;
}
.plRow.sel .plNameCell::after{ background:var(--accent); }

/* fadeIn for product modal */
@keyframes fadeIn{from{opacity:0}to{opacity:1}}

/* ── SET rows in pricelist table ────────────────────────────────── */
.plRowSet{
  background:var(--set-row-bg, rgba(124,58,237,.05)) !important;
}
.plRowSet:hover{
  background:var(--set-row-bg2, rgba(124,58,237,.1)) !important;
}
.plRowSet.sel{
  background:rgba(124,58,237,.15) !important;
}
/* Price columns: use theme-aware set colour */
.plRowSet .colAngro,
.plRowSet .colAchZi{
  color:var(--set-text, #7c3aed) !important;
}
/* Companion subtitle */
.plSetSub{
  color:var(--set-text, #7c3aed);
}
