/* پیش‌فاکتور — طراحی استاندارد (فرم، سند، حساب کاربری) */
.pinv{--ink:#0f172a;--mut:#64748b;--line:#e2e8f0;--bg:#f8fafc;--brand:#1d5cdb;--brand2:#3b82f6;max-width:920px;margin:0 auto;padding:14px;color:var(--ink);display:grid;gap:14px}
.pinv *{box-sizing:border-box}
.pinv-card,.pinv-doc{background:#fff;border:1px solid var(--line);border-radius:20px;box-shadow:0 1px 2px rgba(15,23,42,.04),0 12px 28px rgba(15,23,42,.06);padding:24px}
.pinv-page-head{display:grid;gap:6px;margin-bottom:16px}
.pinv-badge{width:max-content;font-size:12px;font-weight:800;color:var(--brand);background:#eaf1ff;border-radius:999px;padding:4px 12px}
.pinv-card h2{font-size:21px;font-weight:800;margin:0}
.pinv-sub{font-size:13px;color:var(--mut);margin:0;line-height:1.9}
.pinv-form{display:grid;gap:14px}
.pinv-fs{border:1px solid var(--line);border-radius:16px;padding:16px 16px 6px;margin:0;min-width:0}
.pinv-fs legend{font-size:13px;font-weight:800;color:#334155;padding:0 6px}
.pinv-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px 14px}
.pinv label{display:grid;gap:6px;font-size:13px;font-weight:700;color:#334155;min-width:0}
.pinv label small{font-weight:500;color:#94a3b8}
.pinv label em{font-style:normal;color:#dc2626}
.pinv-wide{grid-column:1/-1}
.pinv input:not([type=checkbox]),.pinv textarea,.pinv select{width:100%;min-height:44px;border:1.5px solid #d6dee9;border-radius:12px;padding:10px 12px;font:inherit;font-size:14px;background:#f8fafd;color:var(--ink)}
.pinv textarea{resize:vertical}
.pinv input:focus,.pinv textarea:focus,.pinv select:focus{outline:none;border-color:var(--brand2);background:#fff;box-shadow:0 0 0 4px rgba(29,92,219,.12)}
.pinv-hp{position:absolute;left:-9999px;width:1px;height:1px;overflow:hidden}
.pinv-foot-row{display:flex;justify-content:space-between;align-items:center;gap:12px;flex-wrap:wrap;margin-top:4px}
.pinv-cap{display:flex;align-items:center;gap:10px;font-size:13px}
.pinv-cap input{width:120px;min-height:42px}
.pinv-btn{display:inline-flex;justify-content:center;align-items:center;gap:6px;min-height:46px;padding:0 22px;border:0;border-radius:12px;background:linear-gradient(135deg,var(--brand),var(--brand2));color:#fff;font:inherit;font-size:14px;font-weight:800;cursor:pointer;text-decoration:none;box-shadow:0 8px 18px rgba(29,92,219,.22);transition:transform .15s}
.pinv-btn:hover{transform:translateY(-1px);color:#fff}
.pinv-btn.sm{min-height:38px;padding:0 14px;font-size:13px}
.pinv-btn.ghost{background:#fff;color:var(--ink);border:1.5px solid #d6dee9;box-shadow:none}
.pinv-btn.danger{background:#fff;color:#b91c1c;border:1.5px solid #fecaca;box-shadow:none}
.pinv-err{background:#fef2f2;border:1px solid #fecaca;color:#991b1b;border-radius:14px;padding:12px 14px;font-weight:700;font-size:13px}
.pinv-ok,.pinv-ok-line{background:#f0fdf4;border:1px solid #bbf7d0;color:#166534;border-radius:14px;padding:12px 14px;font-weight:700;font-size:13px;line-height:1.9}
.pinv-ok{text-align:center;display:grid;justify-items:center;gap:8px}
.pinv-tick{display:grid;place-items:center;width:52px;height:52px;border-radius:50%;background:#16a34a;color:#fff;font-size:26px;font-weight:800;animation:pinv-pop .5s ease}
@keyframes pinv-pop{0%{transform:scale(.6);opacity:0}70%{transform:scale(1.08)}100%{transform:scale(1);opacity:1}}

/* سند پیش‌فاکتور */
.pinv-doc{padding:0;overflow:hidden}
.pinv-doc-top{background:linear-gradient(135deg,#0f172a,#1e3a8a);color:#fff;padding:22px 24px;display:flex;justify-content:space-between;gap:14px;flex-wrap:wrap;align-items:flex-start}
.pinv-co{font-size:18px;font-weight:800;display:block}
.pinv-co-info{font-size:12px;opacity:.85;line-height:1.9;margin-top:4px;display:block}
.pinv-title{text-align:start;display:grid;gap:4px}
.pinv-title b{font-size:20px;letter-spacing:.3px}
.pinv-title span{font-size:12px;opacity:.9}
.pinv-doc-body{padding:22px 24px}
.pinv-meta-row{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;margin-bottom:16px}
.pinv-meta-row>div{background:var(--bg);border-radius:12px;padding:10px 12px;display:grid;gap:3px;min-width:0}
.pinv-meta-row small{color:var(--mut);font-size:11px}
.pinv-meta-row span,.pinv-meta-row b{font-size:13px;font-weight:700;word-break:break-word}
.pinv-st{width:max-content;font-size:12px;font-weight:800;border-radius:999px;padding:4px 12px;background:#eaf1ff;color:var(--brand)}
.pinv-s-approved{background:#dcfce7;color:#15803d}
.pinv-s-revision{background:#fef3c7;color:#b45309}
.pinv-s-rejected{background:#fee2e2;color:#b91c1c}
.pinv-s-pending{background:#f1f5f9;color:#475569}
.pinv-tbl-wrap{overflow-x:auto;border:1px solid var(--line);border-radius:14px}
.pinv-tbl{width:100%;border-collapse:collapse;font-size:13px;min-width:520px}
.pinv-tbl th{background:var(--bg);text-align:right;padding:10px 12px;font-weight:800;color:#475569;font-size:12px}
.pinv-tbl td{padding:10px 12px;border-top:1px solid var(--line)}
.pinv-tbl td:nth-child(n+3){text-align:left;white-space:nowrap;font-variant-numeric:tabular-nums}
.pinv-sum{margin:16px 0 0 auto;max-width:360px;display:grid;gap:8px}
.pinv-sum>div{display:flex;justify-content:space-between;font-size:13px;color:#334155;gap:12px}
.pinv-sum dt{font-weight:600}
.pinv-sum dd{margin:0;font-variant-numeric:tabular-nums;white-space:nowrap}
.pinv-sum .pinv-grand{background:var(--ink);color:#fff;border-radius:12px;padding:12px 14px;margin-top:4px}
.pinv-sum .pinv-grand dt,.pinv-sum .pinv-grand dd{font-size:16px;font-weight:800;color:#fff}
.pinv-note-c{background:#fffbeb;border-radius:12px;padding:12px 14px;font-size:13px;line-height:1.9;margin:16px 0 0}
.pinv-act{display:grid;gap:10px;margin-top:18px;border-top:1px dashed #cbd5e1;padding-top:18px}
.pinv-act-row{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}
.pinv-act textarea{width:100%;border:1.5px solid #d6dee9;border-radius:12px;padding:10px 12px;font:inherit;font-size:13px}
.pinv-doc-foot{display:flex;justify-content:space-between;align-items:center;gap:10px;padding:14px 24px;background:var(--bg);border-top:1px solid var(--line);flex-wrap:wrap}
.pinv-doc-foot small{color:var(--mut);font-size:12px}
.pinv-print{background:#fff;border:1.5px solid #d6dee9;border-radius:10px;color:var(--ink);font:inherit;font-size:13px;font-weight:700;padding:8px 14px;cursor:pointer}

/* حساب کاربری */
.pinv-acc{display:grid;gap:14px;color:var(--ink)}
.pinv-acc-head{display:flex;justify-content:space-between;align-items:center;gap:10px;flex-wrap:wrap}
.pinv-acc-head .st{margin:0}
.pinv-acc-list{display:grid;gap:10px}
.pinv-acc-item{display:grid;grid-template-columns:1.4fr auto auto auto;gap:12px;align-items:center;background:#fff;border:1px solid var(--line);border-radius:16px;padding:14px 16px;box-shadow:0 1px 2px rgba(15,23,42,.04)}
.pinv-acc-item div{display:grid;gap:2px}
.pinv-acc-item small{color:var(--mut);font-size:12px}
.pinv-acc-item strong{font-size:14px;font-variant-numeric:tabular-nums}
.pinv-muted{font-size:12px;color:var(--mut)}
.pinv-empty{text-align:center;color:var(--mut)}

@media (max-width:640px){
  .pinv-grid,.pinv-meta-row,.pinv-act-row{grid-template-columns:1fr}
  .pinv-card,.pinv-doc-body{padding:16px}
  .pinv-doc-top{padding:18px}
  .pinv-acc-item{grid-template-columns:1fr 1fr}
  .pinv-btn{width:100%}
  .pinv-cap{width:100%}
  .pinv-cap input{width:100%}
}
@media print{
  body *{visibility:hidden}
  .pinv-doc,.pinv-doc *{visibility:visible}
  .pinv-doc{position:absolute;inset:0;border:0;box-shadow:none;border-radius:0}
  .pinv-act,.pinv-doc-foot,.pinv-err,.pinv-ok-line{display:none!important}
  .pinv-doc-top{-webkit-print-color-adjust:exact;print-color-adjust:exact}
}

/* ردیف‌های اقلام: نام کالا و تعداد کنار هم */
.pinv-items{display:grid;gap:8px}
.pinv-items-head,.pinv-item-row{display:grid;grid-template-columns:minmax(0,1fr) 92px 40px;gap:8px;align-items:center}
.pinv-items-head{font-size:12px;font-weight:800;color:#475569;padding:0 2px}
.pinv-items-head em{font-style:normal;color:#dc2626}
.pinv-item-row input{width:100%;min-height:44px;border:1.5px solid #d6dee9;border-radius:12px;padding:10px 12px;font:inherit;font-size:14px;background:#f8fafd;color:#0f172a}
.pinv-item-row input:focus{outline:none;border-color:#3b82f6;background:#fff;box-shadow:0 0 0 4px rgba(29,92,219,.12)}
.pinv-item-row input[name="inv_item_qty[]"]{text-align:center}
.pinv-rm{width:40px;height:40px;border:1.5px solid #fecaca;border-radius:12px;background:#fff;color:#b91c1c;font-size:18px;font-weight:800;cursor:pointer}
.pinv-add-row{justify-self:start;margin-top:4px;border:1.5px dashed #93c5fd;background:#f5f9ff;color:#1d5cdb;border-radius:12px;padding:9px 14px;font:inherit;font-size:13px;font-weight:800;cursor:pointer}
.pinv-lookup{display:grid;gap:12px;max-width:560px;margin:0 auto}
@media (max-width:520px){.pinv-items-head{display:none}.pinv-item-row{grid-template-columns:minmax(0,1fr) 72px 40px}}

/* جدول اقلام سند: قوانین سراسری قالب (.content table / .entry table) را خنثی می‌کند */
.pinv-doc .pinv-tbl-wrap{display:block;overflow-x:auto;border:1px solid var(--line);border-radius:14px;-webkit-overflow-scrolling:touch}
.pinv-doc table.pinv-tbl{display:table!important;width:100%!important;min-width:0!important;max-width:none!important;overflow:visible!important;border-collapse:collapse;margin:0;table-layout:auto}
.pinv-doc table.pinv-tbl thead{display:table-header-group}
.pinv-doc table.pinv-tbl tbody{display:table-row-group}
.pinv-doc table.pinv-tbl tr{display:table-row}
.pinv-doc table.pinv-tbl th,.pinv-doc table.pinv-tbl td{display:table-cell;padding:11px 12px;text-align:right;vertical-align:middle}
.pinv-doc table.pinv-tbl td:nth-child(n+3){text-align:left;white-space:nowrap;font-variant-numeric:tabular-nums;direction:ltr}
.pinv-doc table.pinv-tbl td:nth-child(2){min-width:180px;white-space:normal}
.pinv-doc table.pinv-tbl td:first-child{width:44px;color:#64748b}
.pinv-doc table.pinv-tbl tbody tr:nth-child(even){background:#fbfdff}
/* موبایل: هر ردیف به‌صورت کارت با برچسب ستون‌ها */
@media (max-width:640px){
  .pinv-doc .pinv-tbl-wrap{border:0;overflow:visible}
  .pinv-doc table.pinv-tbl{min-width:0!important}
  .pinv-doc table.pinv-tbl thead{display:none!important}
  .pinv-doc table.pinv-tbl tbody{display:grid;gap:10px}
  .pinv-doc table.pinv-tbl tr{display:grid!important;grid-template-columns:1fr 1fr;gap:6px 10px;border:1px solid var(--line);border-radius:14px;padding:12px;background:#fff}
  .pinv-doc table.pinv-tbl td{display:grid!important;gap:2px;border:0!important;padding:0!important;text-align:right!important;direction:rtl}
  .pinv-doc table.pinv-tbl td::before{content:attr(data-label);font-size:11px;color:#64748b;font-weight:700}
  .pinv-doc table.pinv-tbl td:first-child{display:none!important}
  .pinv-doc table.pinv-tbl td:nth-child(2){grid-column:1/-1;font-weight:800;font-size:14px;min-width:0}
  .pinv-doc table.pinv-tbl td:nth-child(n+3){direction:ltr;text-align:right!important}
  .pinv-doc table.pinv-tbl tbody tr:nth-child(even){background:#fff}
  .pinv-sum{max-width:none}
}
