/* =========================================================
   INTERNET SALES RECEIPT PREVIEW
========================================================= */

.admin-sale-receipt-modal[hidden] {
  display: none;
}


.admin-sale-receipt-modal {
  position: fixed;
  inset: 0;

  z-index: 9999;

  display: grid;
  place-items: center;

  padding: 20px;
}


.admin-sale-receipt-modal__backdrop {
  position: absolute;
  inset: 0;

  background:
    rgba(2, 6, 23, 0.66);

  backdrop-filter:
    blur(5px);
}


.admin-sale-receipt-dialog {
  position: relative;
  z-index: 1;

  width: min(
    100%,
    520px
  );

  max-height:
    calc(
      100vh - 40px
    );

  display: flex;
  flex-direction: column;

  overflow: hidden;

  border-radius: 24px;

  background: #ffffff;

  box-shadow:
    0 30px 80px
    rgba(2, 6, 23, 0.28);
}


.admin-sale-receipt-dialog__header {
  display: flex;
  align-items: center;
  justify-content: space-between;

  gap: 16px;

  padding:
    20px 22px;

  border-bottom:
    1px solid #e2e8f0;
}


.admin-sale-receipt-dialog__header span {
  display: block;

  margin-bottom: 4px;

  color: #245ee8;

  font-size: 11px;
  font-weight: 900;

  letter-spacing:
    0.08em;

  text-transform:
    uppercase;
}


.admin-sale-receipt-dialog__header h2 {
  margin: 0;

  color: #0f172a;

  font-size: 22px;
  font-weight: 900;
}


.admin-sale-receipt-close-btn {
  width: 42px;
  height: 42px;

  display: grid;
  place-items: center;

  flex: 0 0 auto;

  border:
    1px solid #dce4ef;

  border-radius: 12px;

  background: #ffffff;
  color: #475569;

  font-size: 26px;
  line-height: 1;

  cursor: pointer;
}


.admin-sale-receipt-close-btn:hover {
  background: #f8fafc;
  color: #0f172a;
}


.admin-sale-receipt-dialog__body {
  overflow-y: auto;

  padding: 22px;

  background: #eef2f7;
}


.admin-sale-receipt-preview {
  width: 100%;
  max-width: 360px;

  margin:
    0 auto;
}


.admin-sale-receipt-dialog__footer {
  display: grid;

  grid-template-columns:
    minmax(90px, 0.8fr)
    minmax(130px, 1.15fr)
    minmax(140px, 1.25fr);

  align-items: center;

  gap: 12px;

  padding: 18px 20px 20px;

  border-top:
    1px solid #e2e8f0;

  background: #ffffff;
}



.admin-sale-receipt-dialog__footer
.btn {
  width: 100%;
  min-width: 0;
  min-height: 52px;

  display: inline-flex;
  align-items: center;
  justify-content: center;

  gap: 8px;

  padding:
    10px 14px;

  border-radius: 14px;

  font-size: 13px;
  font-weight: 900;
  line-height: 1.15;

  white-space: nowrap;

  cursor: pointer;
}


/* CLOSE */

#adminSaleReceiptCancelBtn {
  border:
    1px solid #dce4ef;

  background:
    #ffffff;

  color:
    #0f172a;
}


/* DOWNLOAD */

#adminSaleReceiptDownloadBtn {
  border:
    1px solid #2563eb;

  background:
    #ffffff;

  color:
    #1d4ed8;
}


/* PRINT */

#adminSaleReceiptPrintBtn {
  border:
    1px solid #142a5c;

  background:
    linear-gradient(
      135deg,
      #101c38,
      #17346f
    );

  color:
    #ffffff;

  box-shadow:
    0 10px 22px
    rgba(
      20,
      42,
      92,
      0.18
    );
}


#adminSaleReceiptCancelBtn:hover {
  background:
    #f8fafc;
}


#adminSaleReceiptDownloadBtn:hover {
  background:
    #eff6ff;
}


#adminSaleReceiptPrintBtn:hover {
  transform:
    translateY(-1px);

  box-shadow:
    0 13px 26px
    rgba(
      20,
      42,
      92,
      0.24
    );
}



body.admin-sale-receipt-open {
  overflow: hidden;
}


/* =========================================================
   RECEIPT CARD
========================================================= */

.biva-internet-receipt {
  width: 100%;

  padding: 22px 18px;

  border:
    1px solid #d7dde7;

  border-radius: 6px;

  background: #ffffff;
  color: #111827;

  font-family:
    "Courier New",
    Courier,
    monospace;

  box-shadow:
    0 12px 30px
    rgba(15, 23, 42, 0.08);
}


.biva-internet-receipt__header {
  display: flex;
  flex-direction: column;
  align-items: center;

  text-align: center;
}

.biva-internet-receipt__logo {
  width: 64px;
  height: 64px;

  object-fit: contain;

  margin-bottom: 10px;
}


.biva-internet-receipt__header
strong {
  font-size: 25px;
  font-weight: 900;
}


.biva-internet-receipt__header
span {
  margin-top: 4px;

  font-size: 11px;
  font-weight: 700;
}


.biva-internet-receipt__header
small {
  margin-top: 4px;

  font-size: 11px;
}


.biva-internet-receipt__divider {
  margin: 16px 0;

  border-top:
    1px dashed #111827;
}


.biva-internet-receipt__title {
  display: flex;
  flex-direction: column;
  align-items: center;

  text-align: center;
}


.biva-internet-receipt__title
strong {
  font-size: 14px;
}


.biva-internet-receipt__title
span {
  margin-top: 3px;

  font-size: 10px;
}


.biva-internet-receipt
dl {
  margin:
    16px 0;
}


.biva-internet-receipt
dl > div {
  display: flex;
  justify-content: space-between;

  gap: 14px;

  padding:
    5px 0;
}


.biva-internet-receipt
dt {
  color: #4b5563;

  font-size: 11px;
}


.biva-internet-receipt
dd {
  margin: 0;

  color: #111827;

  font-size: 11px;
  font-weight: 700;

  text-align: right;

  overflow-wrap:
    anywhere;
}


.biva-internet-receipt__voucher {
  margin:
    18px 0;

  padding:
    16px 10px;

  border-top:
    1px dashed #111827;

  border-bottom:
    1px dashed #111827;

  text-align: center;
}


.biva-internet-receipt__voucher
span {
  display: block;

  margin-bottom: 8px;

  font-size: 11px;
  font-weight: 700;

  text-transform:
    uppercase;
}


.biva-internet-receipt__voucher
strong {
  display: block;

  font-size: 28px;
  font-weight: 900;

  letter-spacing:
    0.08em;
}


.biva-internet-receipt__payment {
  margin-top: 16px;

  padding:
    12px 0;

  border-top:
    1px dashed #111827;

  border-bottom:
    1px dashed #111827;
}


.biva-internet-receipt__payment
> div {
  display: flex;
  justify-content: space-between;

  gap: 14px;

  padding:
    4px 0;
}


.biva-internet-receipt__payment
span {
  font-size: 11px;
}


.biva-internet-receipt__payment
strong {
  font-size: 12px;
}


.biva-internet-receipt__footer {
  display: flex;
  flex-direction: column;
  align-items: center;

  gap: 4px;

  margin-top: 18px;

  text-align: center;
}


.biva-internet-receipt__footer
strong {
  font-size: 11px;
}


.biva-internet-receipt__footer
span {
  font-size: 10px;
}




#refreshAdminSaleBtn{
    margin-top:12px;

    width:100%;

    border:1px solid #cbd5e1;

    background:#fff;

    color:#0f172a;
}

#refreshAdminSaleBtn:hover{

    background:#f8fafc;
}





/* =========================================================
   RECEIPT ACTION BUTTONS — ISOLATED
========================================================= */

.admin-sale-receipt-dialog__footer {
  width: 100%;
  box-sizing: border-box;
}


.receipt-action {
  appearance: none;

  width: 100%;
  min-width: 0;

  min-height: 50px;

  margin: 0;

  display: flex;
  align-items: center;
  justify-content: center;

  padding: 10px 14px;

  border-radius: 13px;

  font-family: inherit;
  font-size: 13px;
  font-weight: 900;
  line-height: 1.15;

  text-align: center;

  cursor: pointer;

  box-sizing: border-box;
}


.receipt-action--close {
  border: 1px solid #d8e0eb;

  background: #ffffff;
  color: #0f172a;
}


.receipt-action--download {
  border: 1px solid #2563eb;

  background: #ffffff;
  color: #1d4ed8;
}


.receipt-action--print {
  border: 1px solid #142a5c;

  background:
    linear-gradient(
      135deg,
      #101c38,
      #17346f
    );

  color: #ffffff;

  box-shadow:
    0 10px 22px
    rgba(20, 42, 92, 0.18);
}


@media (
  min-width: 601px
) {

  .admin-sale-receipt-dialog__footer {
    display: grid;

    grid-template-columns:
      0.8fr
      1.15fr
      1.25fr;

    gap: 12px;

    padding:
      18px 20px 20px;
  }

}


/* =========================================================
   MOBILE RECEIPT ACTIONS
========================================================= */

@media (max-width:600px){

.admin-sale-receipt-dialog__footer{

    display:flex;

    flex-wrap:wrap;

    gap:10px;

    padding:12px;
}

.receipt-action{

    flex:1 1 calc(50% - 5px);

    min-width:0;

    min-height:46px;

    font-size:12px;

    padding:10px;
}

.receipt-action--print{

    flex:1 1 100%;
}

}