/* Deduplicated sales/purchase surface: reuses 18-entries-vouchers-modal.css and keeps only view-specific rules. */
.sales-purchase-window-layer{
  --entries-radius-window:10px;
  --entries-radius-window-action:8px;
  position:absolute;
  inset:0;
  z-index:2390;
  pointer-events:none;
  overflow:hidden;
}

.sales-purchase-modal-backdrop{
  position:absolute;
  inset:0;
  z-index:2400;
  display:block;
  padding:0;
  background:transparent;
  backdrop-filter:none;
  -webkit-backdrop-filter:none;
  pointer-events:none;
  overflow:hidden;
}

.sales-purchase-modal-backdrop--attached-blocker{
  pointer-events:none;
}

.sales-purchase-attached-owner-blocker{
  position:absolute;
  left:0;
  top:0;
  width:0;
  height:0;
  z-index:0;
  display:block;
  pointer-events:none;
  background:transparent;
}

.sales-purchase-modal-backdrop--attached-blocker .sales-purchase-attached-owner-blocker{
  pointer-events:auto;
}

.sales-purchase-modal-window.is-attached-locked .sales-purchase-sheet__body{
  pointer-events:none !important;
}

.sales-purchase-modal-window.is-attached-locked .sales-purchase-sheet__head,
.sales-purchase-modal-window.is-attached-locked .sales-purchase-sheet__window-actions,
.sales-purchase-modal-window.is-attached-locked .sales-purchase-sheet__heading,
.sales-purchase-modal-window.is-attached-locked .sales-purchase-sheet__title,
.sales-purchase-modal-window.is-attached-locked .sales-purchase-sheet__close,
.sales-purchase-modal-window.is-attached-locked .sales-purchase-sheet__expand,
.sales-purchase-modal-window.is-attached-locked .sales-purchase-sheet__chrome-btn{
  pointer-events:auto;
}

.sales-purchase-modal-window{
  position:absolute;
  z-index:1;
  left:0;
  top:0;
  margin:0;
  display:flex;
  flex-direction:column;
  width:min(760px, calc(100% - 24px));
  max-width:calc(100% - 24px);
  height:min(659px, calc(100% - 24px));
  max-height:calc(100% - 24px);
  min-height:360px;
  overflow:hidden;
  border-radius:var(--entries-radius-window);
  border:1px solid rgba(47,103,243,.94);
  background:#2f67f3;
  background-clip:padding-box;
  box-shadow:0 34px 88px rgba(15,23,42,.28), 0 0 0 1px rgba(96,165,250,.18);
  isolation:isolate;
  pointer-events:auto;
  will-change:left, top, width, height;
  contain:layout paint style;
  transition:box-shadow .12s ease;
}

.sales-purchase-modal-window:not(.is-positioned){
  visibility:hidden;
}

.sales-purchase-modal-window--settlement-shell{
  width:min(760px, 78vw);
  max-width:min(760px, 78vw);
  height:min(74vh, 659px);
  max-height:min(74vh, 659px);
}

.sales-purchase-modal-window--party-shell{
  width:min(700px, 72vw);
  max-width:min(700px, 72vw);
  height:min(520px, 62vh);
  max-height:min(520px, 62vh);
  min-height:320px;
}

.sales-purchase-modal-window.sales-purchase-modal-window--voucher-match-settlement-height{
  height:min(74vh, 659px);
  max-height:min(74vh, 659px);
}

.sales-purchase-modal-backdrop.is-dragging .sales-purchase-modal-window{
  transition:none !important;
}

body.sales-purchase--dragging-window,
body.sales-purchase--dragging-window *{
  user-select:none !important;
  cursor:auto !important;
}

.sales-purchase-sheet{
  min-width:0;
  min-height:0;
  display:flex;
  flex-direction:column;
  flex:1;
}

.sales-purchase-sheet__head{
  min-height:32px;
  display:flex;
  align-items:center;
  justify-content:center;
  padding:0 10px;
  position:relative;
  z-index:2;
  border-radius:var(--entries-radius-window) var(--entries-radius-window) 0 0;
  border-bottom:1px solid rgba(255,255,255,.14);
  background:var(--window-head-chrome);
  cursor:auto;
  user-select:none;
  touch-action:none;
}

.sales-purchase-sheet__head.is-grabbing,
.sales-purchase-modal-backdrop.is-dragging .sales-purchase-sheet__head{
  cursor:auto;
}

.sales-purchase-sheet__heading{
  position:relative;
  z-index:1;
  width:100%;
  max-width:calc(100% - 90px);
  margin:0 auto;
  display:flex;
  align-items:center;
  justify-content:center;
  min-height:100%;
  text-align:center;
}

.sales-purchase-sheet__title{
  margin:0;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  gap:8px;
  min-height:100%;
  font-size:19px;
  line-height:1;
  font-weight:700;
  color:#fff;
}

.sales-purchase-sheet__title-text{
  display:inline-flex;
  align-items:center;
  justify-content:center;
}

.sales-purchase-sheet__title-icon{
  width:18px;
  height:18px;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  align-self:center;
  flex:0 0 auto;
  color:inherit;
}

.sales-purchase-sheet__title-icon svg{
  width:100%;
  height:100%;
  display:block;
}

.sales-purchase-sheet__window-actions{
  position:absolute;
  top:50%;
  left:10px;
  z-index:2;
  display:flex;
  align-items:center;
  gap:4px;
  transform:translateY(-50%);
}

.sales-purchase-sheet__chrome-btn,
.sales-purchase-sheet__close{
  position:relative;
  font-size:0;
  line-height:0;
  width:25px;
  height:25px;
  display:grid;
  place-items:center;
  border-radius:var(--entries-radius-window-action);
  cursor:auto;
  padding:0;
  transition:transform .18s ease, background .18s ease, box-shadow .18s ease, border-color .18s ease;
}

.sales-purchase-sheet__close{
  border:1px solid rgba(220,38,38,.34);
  background:linear-gradient(135deg, #dc2626 0%, #b91c1c 100%);
  color:#fff;
  box-shadow:0 10px 20px rgba(185,28,28,.20);
}

.sales-purchase-sheet__chrome-btn:focus,
.sales-purchase-sheet__chrome-btn:focus-visible,
.sales-purchase-sheet__close:focus,
.sales-purchase-sheet__close:focus-visible{
  outline:none;
  box-shadow:none;
}

.sales-purchase-sheet__chrome-btn svg,
.sales-purchase-sheet__close svg{
  display:block;
  width:13px;
  height:13px;
  overflow:visible;
  pointer-events:none;
}

.sales-purchase-sheet__body{
  position:relative;
  z-index:1;
  display:flex;
  flex-direction:column;
  min-height:0;
  flex:1;
  overflow:hidden;
  padding:0;
  background:linear-gradient(180deg, rgba(244,248,255,.99), rgba(248,251,255,.98));
}

.sales-purchase-sheet__body--voucher{
  --entries-voucher-col-sequence:minmax(20px, .09fr);
  --entries-voucher-col-amount:minmax(102px, .64fr);
  --entries-voucher-col-secondary:minmax(100px, .68fr);
  --entries-voucher-col-account:minmax(184px, 1.10fr);
  --entries-voucher-col-statement:minmax(216px, 1.24fr);
  --entries-voucher-col-beneficiary:minmax(156px, .98fr);
  --entries-voucher-col-action:minmax(20px, .075fr);
  --entries-voucher-movement-columns:var(--entries-voucher-col-sequence) var(--entries-voucher-col-amount) var(--entries-voucher-col-secondary) var(--entries-voucher-col-account) var(--entries-voucher-col-beneficiary) var(--entries-voucher-col-statement) var(--entries-voucher-col-action);
  --entries-voucher-movement-columns-no-action:var(--entries-voucher-col-sequence) var(--entries-voucher-col-amount) var(--entries-voucher-col-secondary) var(--entries-voucher-col-account) var(--entries-voucher-col-beneficiary) var(--entries-voucher-col-statement);
  --entries-voucher-sequence-font-size:15px;
  --entries-voucher-action-icon-size:24px;
  --entries-voucher-choice-layout-gap:12px;
  --entries-voucher-choice-meta-gap:8px;
  --entries-voucher-choice-meta-letter-spacing:normal;
  --entries-voucher-choice-option-gap:6px;
  --entries-voucher-choice-option-padding:6px 8px;
  --entries-voucher-choice-flag-shift-y:0px;
  background:linear-gradient(180deg, rgba(244,248,255,.995), rgba(248,251,255,.985));
}

.sales-purchase-sheet__shell-space{
  flex:1 1 auto;
  min-height:0;
}

.sales-purchase-sheet__shell-space--settlement{
  flex:1 1 auto;
  min-height:0;
  padding:0;
  box-sizing:border-box;
}

.entries-sheet--settlement .sales-purchase-sheet__shell-space--settlement{
  display:flex;
  padding:0;
}

.entries-sheet--opening .sales-purchase-sheet__body--voucher{
  --entries-voucher-col-sequence:minmax(20px, .08fr);
  --entries-voucher-col-amount:minmax(118px, .76fr);
  --entries-voucher-col-secondary:minmax(118px, .76fr);
  --entries-voucher-col-account:minmax(228px, 1.26fr);
  --entries-voucher-col-statement:minmax(256px, 1.46fr);
  --entries-voucher-col-action:minmax(20px, .075fr);
  --entries-voucher-movement-columns:var(--entries-voucher-col-sequence) var(--entries-voucher-col-amount) var(--entries-voucher-col-secondary) var(--entries-voucher-col-account) var(--entries-voucher-col-statement) var(--entries-voucher-col-action);
  --entries-voucher-movement-columns-no-action:var(--entries-voucher-col-sequence) var(--entries-voucher-col-amount) var(--entries-voucher-col-secondary) var(--entries-voucher-col-account) var(--entries-voucher-col-statement);
}

.sales-purchase-modal-backdrop[data-sales-purchase-window-id] :is(
  .entries-voucher-navbox__input,
  .entries-voucher-rail__control,
  .entries-voucher-field__control,
  .entries-voucher-choice-picker__trigger,
  .entries-voucher-date__trigger
):is(:focus, :focus-visible),
.sales-purchase-modal-backdrop[data-sales-purchase-window-id] .entries-voucher-field:focus-within :is(
  .entries-voucher-rail__control,
  .entries-voucher-field__control,
  .entries-voucher-choice-picker__trigger,
  .entries-voucher-date__trigger
),
.sales-purchase-modal-backdrop[data-sales-purchase-window-id] .entries-voucher-choice-picker.is-open .entries-voucher-choice-picker__trigger,
.sales-purchase-modal-backdrop[data-sales-purchase-window-id] .entries-voucher-date.is-open .entries-voucher-date__trigger,
.sales-purchase-modal-backdrop[data-sales-purchase-window-id] .entries-account-search.is-open .entries-voucher-field__control--account-search{
  outline:none !important;
  border-color:rgba(15,23,42,.78) !important;
  box-shadow:
    0 0 0 1px rgba(15,23,42,.20),
    0 12px 26px rgba(15,23,42,.09),
    inset 0 1px 0 rgba(255,255,255,.92) !important;
  background:linear-gradient(180deg, rgba(255,255,255,.995), rgba(249,250,251,.985)) !important;
}

.sales-purchase-modal-backdrop[data-sales-purchase-window-id] :is(
  .entries-voucher-navbox__button,
  .entries-action-btn,
  .entries-voucher-card-action__btn,
  .sales-purchase-sheet__chrome-btn,
  .sales-purchase-sheet__close
):is(:focus, :focus-visible, :active){
  outline:none !important;
  box-shadow:0 14px 28px rgba(15,23,42,.12) !important;
}

.entries-sheet--receipt .entries-sheet__body--voucher,
.entries-sheet--payment .sales-purchase-sheet__body--voucher{
  --entries-voucher-col-sequence:minmax(20px, .08fr);
  --entries-voucher-col-amount:minmax(98px, .60fr);
  --entries-voucher-col-secondary:minmax(96px, .62fr);
  --entries-voucher-col-account:minmax(176px, 1.04fr);
  --entries-voucher-col-beneficiary:minmax(148px, .92fr);
  --entries-voucher-col-statement:minmax(204px, 1.18fr);
  --entries-voucher-col-action:minmax(20px, .075fr);
  --entries-voucher-movement-columns:var(--entries-voucher-col-sequence) var(--entries-voucher-col-amount) var(--entries-voucher-col-secondary) var(--entries-voucher-col-account) var(--entries-voucher-col-beneficiary) var(--entries-voucher-col-statement) var(--entries-voucher-col-action);
  --entries-voucher-movement-columns-no-action:var(--entries-voucher-col-sequence) var(--entries-voucher-col-amount) var(--entries-voucher-col-secondary) var(--entries-voucher-col-account) var(--entries-voucher-col-beneficiary) var(--entries-voucher-col-statement);
}

.entries-sheet--journal .sales-purchase-sheet__body--voucher{
  --entries-voucher-col-sequence:minmax(20px, .08fr);
  --entries-voucher-col-amount:minmax(106px, .68fr);
  --entries-voucher-col-secondary:minmax(106px, .68fr);
  --entries-voucher-col-account:minmax(188px, 1.08fr);
  --entries-voucher-col-beneficiary:minmax(152px, .90fr);
  --entries-voucher-col-statement:minmax(224px, 1.28fr);
  --entries-voucher-movement-columns-no-action:var(--entries-voucher-col-sequence) var(--entries-voucher-col-amount) var(--entries-voucher-col-secondary) var(--entries-voucher-col-account) var(--entries-voucher-col-beneficiary) var(--entries-voucher-col-statement);
}

.sales-purchase-modal-window--party-shell .entries-actions{
  min-height:35px;
  gap:8px;
  padding:4px 8px 5px 10px;
}

.sales-purchase-modal-window--party-shell .entries-actions__group,
.sales-purchase-modal-window--party-shell .entries-actions__group--primary-actions{
  gap:6px;
}

.sales-purchase-modal-window--party-shell .entries-actions__group--primary-actions .entries-action-btn{
  min-width:96px;
  min-height:31px;
  height:31px;
  padding-inline:10px;
  border-radius:12px;
}
