
/* ============================================================
   v38 Salary statement → separate employee slips
   ============================================================ */

.salary-slips-statement{
  gap:18px!important;
}

.salary-slips-head{
  display:flex!important;
  align-items:flex-start!important;
  justify-content:space-between!important;
  gap:16px!important;
  padding-bottom:14px!important;
  border-bottom:2px solid var(--brand-soft)!important;
}

.salary-slips-head__meta{
  flex:none!important;
  min-width:190px!important;
  padding:10px 14px!important;
  border-radius:18px!important;
  background:var(--brand-soft)!important;
  color:var(--brand-strong)!important;
  display:flex!important;
  flex-direction:column!important;
  align-items:flex-end!important;
  gap:4px!important;
}

.salary-slips-head__meta span{
  font-size:11.5px!important;
  font-weight:750!important;
  color:#526079!important;
}

.salary-slips-head__meta strong{
  font-size:18px!important;
  line-height:1!important;
  font-weight:900!important;
}

.salary-slips-list{
  display:flex!important;
  flex-direction:column!important;
  gap:16px!important;
}

.salary-slip{
  position:relative!important;
  border:1px solid #dbe5f2!important;
  border-radius:22px!important;
  background:#fff!important;
  box-shadow:0 16px 40px rgba(15,23,42,.06)!important;
  padding:18px!important;
  overflow:hidden!important;
  break-inside:avoid!important;
  page-break-inside:avoid!important;
}

.salary-slip::before{
  content:''!important;
  position:absolute!important;
  left:0!important;
  top:0!important;
  right:0!important;
  height:4px!important;
  background:linear-gradient(90deg,#2f6bff,#8eb2ff)!important;
}

.salary-slip__top{
  display:flex!important;
  align-items:flex-start!important;
  justify-content:space-between!important;
  gap:14px!important;
  margin-bottom:14px!important;
}

.salary-slip__brand{
  margin:0 0 4px!important;
  color:#2f6bff!important;
  text-transform:uppercase!important;
  letter-spacing:.08em!important;
  font-size:11px!important;
  font-weight:900!important;
}

.salary-slip__top h3{
  margin:0!important;
  color:#182033!important;
  font-size:20px!important;
  line-height:1.05!important;
  font-weight:900!important;
}

.salary-slip__top span{
  display:block!important;
  margin-top:5px!important;
  color:#7b8494!important;
  font-size:12.5px!important;
  font-weight:700!important;
}

.salary-slip__paydate{
  flex:none!important;
  padding:10px 12px!important;
  border-radius:16px!important;
  background:#f4f7ff!important;
  border:1px solid #e1e9ff!important;
  min-width:150px!important;
  text-align:right!important;
}

.salary-slip__paydate span{
  margin:0 0 4px!important;
  color:#7b8494!important;
  font-size:10.5px!important;
  text-transform:uppercase!important;
  letter-spacing:.04em!important;
  font-weight:850!important;
}

.salary-slip__paydate strong{
  color:#1f4fd8!important;
  font-size:16px!important;
  font-weight:900!important;
}

.salary-slip__person{
  display:grid!important;
  grid-template-columns:repeat(4,minmax(0,1fr))!important;
  gap:8px!important;
  margin-bottom:12px!important;
}

.salary-slip__person>div,
.salary-slip__summary>div{
  border:1px solid #e5edf7!important;
  background:#f8fbff!important;
  border-radius:15px!important;
  padding:10px 11px!important;
  display:flex!important;
  flex-direction:column!important;
  gap:4px!important;
  min-width:0!important;
}

.salary-slip__person span,
.salary-slip__summary span,
.salary-slip__notes span{
  color:#7b8494!important;
  font-size:10.5px!important;
  line-height:1!important;
  text-transform:uppercase!important;
  letter-spacing:.045em!important;
  font-weight:850!important;
}

.salary-slip__person strong,
.salary-slip__summary strong{
  color:#182033!important;
  font-size:13px!important;
  line-height:1.2!important;
  font-weight:900!important;
  overflow:hidden!important;
  text-overflow:ellipsis!important;
}

.salary-slip__summary{
  display:grid!important;
  grid-template-columns:1fr 1fr 1.25fr!important;
  gap:8px!important;
  margin-bottom:12px!important;
}

.salary-slip__summary>div:last-child{
  background:#eef4ff!important;
  border-color:#d8e5ff!important;
}

.salary-slip__summary>div:last-child strong{
  color:#1f4fd8!important;
  font-size:18px!important;
}

.salary-slip__table{
  border:1px solid #dbe5f2!important;
  border-radius:16px!important;
  overflow:hidden!important;
  margin-bottom:12px!important;
}

.salary-slip-table{
  min-width:0!important;
  font-size:12px!important;
}

.salary-slip-table thead th{
  padding:8px 10px!important;
  font-size:10.5px!important;
}

.salary-slip-table tbody td{
  padding:8px 10px!important;
}

.salary-slip__notes{
  border:1px dashed #d6e0ee!important;
  border-radius:15px!important;
  padding:10px 12px!important;
  background:#fbfdff!important;
  margin-bottom:12px!important;
}

.salary-slip__notes p{
  margin:5px 0 0!important;
  color:#344054!important;
  font-size:12px!important;
  line-height:1.35!important;
  font-weight:650!important;
}

.salary-slip__signatures{
  display:grid!important;
  grid-template-columns:1fr 1fr!important;
  gap:18px!important;
  padding-top:8px!important;
}

.salary-slip__sign{
  display:flex!important;
  flex-direction:column!important;
  gap:6px!important;
}

.salary-slip__sign span{
  display:block!important;
  height:28px!important;
  border-bottom:1.5px solid #1f2937!important;
}

.salary-slip__sign strong{
  color:#344054!important;
  font-size:12px!important;
  line-height:1.2!important;
  font-weight:850!important;
}

.salary-slip-cutline{
  position:relative!important;
  height:28px!important;
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
  color:#98a2b3!important;
  font-size:11px!important;
  font-weight:850!important;
  text-transform:uppercase!important;
  letter-spacing:.08em!important;
}

.salary-slip-cutline::before{
  content:''!important;
  position:absolute!important;
  left:0!important;
  right:0!important;
  top:50%!important;
  border-top:1.5px dashed #b7c4d6!important;
}

.salary-slip-cutline span{
  position:relative!important;
  z-index:1!important;
  background:#fff!important;
  padding:0 10px!important;
}

/* При одном сотруднике квиток не растягивается на весь A4 */
.salary-slips-list .salary-slip:only-child{
  max-width:860px!important;
}

/* Print: compact slips, two employees on one A4 with cut line */
@media print{
  body.admin-salary-v5-print .salary-v5-statement.salary-slips-statement{
    gap:6mm!important;
    font-size:10px!important;
  }

  body.admin-salary-v5-print .salary-slips-head,
  body.admin-salary-v5-print .salary-slips-meta,
  body.admin-salary-v5-print .salary-slips-totalbox{
    display:none!important;
  }

  body.admin-salary-v5-print .salary-slips-list{
    display:block!important;
  }

  body.admin-salary-v5-print .salary-slip{
    box-shadow:none!important;
    border:1px solid #8c96a8!important;
    border-radius:4mm!important;
    padding:6mm!important;
    margin:0!important;
    min-height:0!important;
    page-break-inside:avoid!important;
    break-inside:avoid!important;
  }

  body.admin-salary-v5-print .salary-slip::before{
    height:1.2mm!important;
    background:#222!important;
  }

  body.admin-salary-v5-print .salary-slip__top{
    margin-bottom:4mm!important;
  }

  body.admin-salary-v5-print .salary-slip__brand{
    color:#111!important;
    font-size:8.5pt!important;
  }

  body.admin-salary-v5-print .salary-slip__top h3{
    font-size:15pt!important;
  }

  body.admin-salary-v5-print .salary-slip__top span{
    font-size:8.8pt!important;
  }

  body.admin-salary-v5-print .salary-slip__paydate{
    background:#fff!important;
    border:1px solid #999!important;
    border-radius:3mm!important;
    padding:3mm!important;
  }

  body.admin-salary-v5-print .salary-slip__person{
    grid-template-columns:repeat(2,1fr)!important;
    gap:2.5mm!important;
    margin-bottom:3mm!important;
  }

  body.admin-salary-v5-print .salary-slip__summary{
    gap:2.5mm!important;
    margin-bottom:3mm!important;
  }

  body.admin-salary-v5-print .salary-slip__person>div,
  body.admin-salary-v5-print .salary-slip__summary>div{
    background:#fff!important;
    border:1px solid #d0d7e2!important;
    border-radius:3mm!important;
    padding:2.5mm!important;
  }

  body.admin-salary-v5-print .salary-slip__summary>div:last-child{
    background:#f2f5fb!important;
  }

  body.admin-salary-v5-print .salary-slip__summary>div:last-child strong{
    color:#111!important;
    font-size:13pt!important;
  }

  body.admin-salary-v5-print .salary-slip-table{
    font-size:8.6pt!important;
  }

  body.admin-salary-v5-print .salary-slip-table thead th{
    padding:2mm!important;
    font-size:7.5pt!important;
    background:#eef1f6!important;
  }

  body.admin-salary-v5-print .salary-slip-table tbody td{
    padding:1.8mm 2mm!important;
  }

  body.admin-salary-v5-print .salary-slip__notes{
    border:1px dashed #999!important;
    background:#fff!important;
    margin-bottom:3mm!important;
    padding:2.5mm!important;
  }

  body.admin-salary-v5-print .salary-slip__signatures{
    gap:10mm!important;
    padding-top:1mm!important;
  }

  body.admin-salary-v5-print .salary-slip__sign span{
    height:8mm!important;
    border-bottom:1px solid #111!important;
  }

  body.admin-salary-v5-print .salary-slip__sign strong{
    font-size:8.5pt!important;
    color:#111!important;
  }

  body.admin-salary-v5-print .salary-slip-cutline{
    height:9mm!important;
    margin:0!important;
    page-break-inside:avoid!important;
    break-inside:avoid!important;
    color:#666!important;
    font-size:7.5pt!important;
  }

  body.admin-salary-v5-print .salary-slip-cutline::before{
    border-top:1px dashed #777!important;
  }

  body.admin-salary-v5-print .salary-slip-cutline span{
    background:#fff!important;
  }

  /* один сотрудник — компактный квиток, не на весь лист */
  body.admin-salary-v5-print .salary-slips-list .salary-slip:only-child{
    max-width:none!important;
    width:100%!important;
  }

  /* два сотрудника — два квитка на одном листе с линией среза */
  body.admin-salary-v5-print .salary-slip{
    max-height:none!important;
  }
}

@media(max-width:760px){
  .salary-slips-head{
    flex-direction:column!important;
  }

  .salary-slips-head__meta{
    width:100%!important;
    align-items:flex-start!important;
  }

  .salary-slip__top{
    flex-direction:column!important;
  }

  .salary-slip__paydate{
    width:100%!important;
    text-align:left!important;
  }

  .salary-slip__person,
  .salary-slip__summary,
  .salary-slip__signatures{
    grid-template-columns:1fr!important;
  }
}
