/* OpenDeal 2026-09-25 · Manual Stripe capture / dropship approval gate */
.approval-kpis--finance{grid-template-columns:repeat(6,minmax(130px,1fr));gap:8px}
.approval-payment-gate-table{width:100%;min-width:0;table-layout:fixed}
.approval-payment-gate-table th,.approval-payment-gate-table td{vertical-align:top;overflow-wrap:anywhere}
.approval-payment-gate-table th:nth-child(1){width:11%}
.approval-payment-gate-table th:nth-child(2){width:9%}
.approval-payment-gate-table th:nth-child(3){width:18%}
.approval-payment-gate-table th:nth-child(4){width:5%}
.approval-payment-gate-table th:nth-child(5){width:9%}
.approval-payment-gate-table th:nth-child(6){width:9%}
.approval-payment-gate-table th:nth-child(7){width:7%}
.approval-payment-gate-table th:nth-child(8){width:11%}
.approval-payment-gate-table th:nth-child(9){width:9%}
.approval-payment-gate-table th:nth-child(10){width:12%}
.approval-payment-gate-table td>small,.approval-payment-gate-table .status+small{display:block;margin-top:5px;line-height:1.35}
.approval-table-actions{display:grid;grid-template-columns:1fr;gap:6px;min-width:0}
.approval-table-actions .button{width:100%;white-space:normal;line-height:1.2;padding-left:8px;padding-right:8px}
.approval-table-actions .button:disabled{opacity:.48;cursor:not-allowed}
.manual-capture-state{display:inline-flex;margin:0 6px 6px 0}
.manual-capture-button{margin:4px 0 4px 6px}
[data-admin-orders] td:last-child{min-width:170px}
@media (max-width:1100px){.approval-kpis--finance{grid-template-columns:repeat(3,minmax(130px,1fr))}.approval-payment-gate-table{min-width:1100px;table-layout:auto}}
@media (max-width:700px){.approval-kpis--finance{grid-template-columns:1fr 1fr}.manual-capture-button{width:100%;margin:6px 0 0}}

/* V7: shipping communication actions in dropship approval table */
.approval-table-actions [data-processing-test-mail],.approval-table-actions [data-processing-customer-mail],.approval-table-actions [data-shipped-test-mail],.approval-table-actions [data-shipped-customer-mail]{font-size:.92em}


/* V11: email/admin order actions must never force either table outside the viewport. */
[data-admin-orders] td:last-child {
  width: 190px;
  min-width: 180px;
}
[data-admin-orders] td:last-child > .button,
[data-admin-orders] td:last-child > [data-order-toggle],
[data-admin-orders] td:last-child > [data-order-shipped-mail],
[data-admin-orders] td:last-child > [data-order-shipped-test-mail] {
  width: 100%;
  max-width: 210px;
  min-width: 0;
  margin: 0 0 6px;
  padding-inline: 9px;
  justify-content: center;
  text-align: center;
  white-space: normal;
  overflow-wrap: anywhere;
  line-height: 1.2;
}

@media (max-width: 760px) {
  .approval-payment-gate-table {
    min-width: 0 !important;
    width: 100% !important;
    table-layout: auto !important;
  }

  [data-admin-orders] td:last-child {
    width: 100%;
    min-width: 0 !important;
    max-width: 100%;
  }

  [data-admin-orders] td:last-child > .button,
  [data-admin-orders] td:last-child > [data-order-toggle],
  [data-admin-orders] td:last-child > [data-order-shipped-mail],
  [data-admin-orders] td:last-child > [data-order-shipped-test-mail],
  [data-admin-orders] td:last-child > [data-manual-capture-order] {
    display: flex;
    width: 100%;
    max-width: 100%;
    min-width: 0;
    min-height: 42px;
    margin: 0;
    white-space: normal;
    overflow-wrap: anywhere;
  }

  [data-admin-orders] td:last-child > .manual-capture-state {
    display: flex;
    width: 100%;
    max-width: 100%;
    margin: 0;
    justify-content: center;
    text-align: center;
    white-space: normal;
  }
}


/* OpenDeal 2026-09-25 V23: dense approval table; actions before compact inline email protocol. */
.approval-dashboard .approval-table-wrap{
  overflow-x:auto;
  overflow-y:visible;
  scrollbar-width:thin;
  scrollbar-gutter:stable;
}
.approval-payment-gate-table{
  width:100%;
  min-width:1600px;
  table-layout:fixed;
}
.approval-payment-gate-table th:nth-child(1){width:130px}
.approval-payment-gate-table th:nth-child(2){width:125px}
.approval-payment-gate-table th:nth-child(3){width:135px}
.approval-payment-gate-table th:nth-child(4){width:52px}
.approval-payment-gate-table th:nth-child(5){width:108px}
.approval-payment-gate-table th:nth-child(6){width:120px}
.approval-payment-gate-table th:nth-child(7){width:78px}
.approval-payment-gate-table th:nth-child(8){width:112px}
.approval-payment-gate-table th:nth-child(9){width:145px}
.approval-payment-gate-table th:nth-child(10){width:292px}
.approval-payment-gate-table th:nth-child(11){width:298px}


/* V23 column roles: actions first, e-mail protocol last. */
.approval-payment-gate-table th:nth-child(10),
.approval-payment-gate-table td:nth-child(10){vertical-align:top}
.approval-payment-gate-table th:nth-child(11),
.approval-payment-gate-table td:nth-child(11){vertical-align:top}

.approval-dashboard .approval-payment-gate-table th{
  padding:6px 7px;
  font-size:.57rem;
  line-height:1.1;
  letter-spacing:.025em;
}
.approval-dashboard .approval-payment-gate-table>tbody>.approval-order-row>td{
  padding:7px;
  font-size:.68rem;
  line-height:1.22;
}
.approval-dashboard .approval-payment-gate-table .approval-order-row td>strong{
  font-size:.76rem;
  line-height:1.18;
}
.approval-dashboard .approval-payment-gate-table .approval-order-row td>small{
  margin-top:3px;
  font-size:.56rem;
  line-height:1.22;
}
.approval-dashboard .approval-payment-gate-table .approval-order-row .status{
  padding:4px 6px;
  font-size:.59rem;
  line-height:1.14;
  border-radius:8px;
}
.approval-order-cell strong{overflow-wrap:anywhere}

/* Financial KPIs: intentionally smaller than the surrounding mapping cards. */
.approval-dashboard .approval-kpis{
  gap:6px;
  margin:8px 0 10px;
}
.approval-dashboard .approval-kpis>div{
  min-height:0;
  padding:7px 9px;
  border-radius:8px;
}
.approval-dashboard .approval-kpis span{
  font-size:.54rem;
  line-height:1.15;
}
.approval-dashboard .approval-kpis strong{
  margin-top:3px;
  font-size:.80rem;
  line-height:1.15;
}

/* Keep the audit inside the actual order row. UI shows only the facts needed operationally.
   Full audit details remain stored server-side. */
.approval-mail-protocol-cell{min-width:0}
.approval-mail-protocol-compact{
  display:grid;
  gap:2px;
  min-width:0;
}
.approval-mail-protocol-line{
  display:grid;
  grid-template-columns:78px 72px 72px 62px;
  align-items:center;
  gap:4px;
  min-width:0;
  padding:3px 0;
  border-bottom:1px solid #edf1ee;
  color:#42564d;
  font-size:.56rem;
  line-height:1.15;
}
.approval-mail-protocol-line:last-of-type{border-bottom:0}
.approval-mail-protocol-line time{
  color:#274c3d;
  font-weight:800;
  white-space:nowrap;
}
.approval-mail-protocol-type,
.approval-mail-protocol-target{
  min-width:0;
  white-space:nowrap;
  overflow:hidden;
  text-overflow:ellipsis;
}
.approval-mail-protocol-type{font-weight:750}
.approval-mail-protocol-target{color:#66786f}
.approval-mail-protocol-result{
  color:#0c6847;
  font-weight:850;
  white-space:nowrap;
}
.approval-mail-protocol-compact>small{
  margin-top:2px!important;
  color:#74827a!important;
  font-size:.52rem!important;
  line-height:1.15!important;
}
.approval-mail-protocol-empty{
  color:#8a968f;
  font-size:.62rem;
}

/* Actions: still explicit, but visually much denser. */
.approval-dashboard .approval-table-actions{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:4px;
  min-width:0;
}
.approval-dashboard .approval-table-actions .button{
  width:100%;
  min-width:0;
  min-height:28px;
  margin:0;
  padding:4px 6px;
  font-size:.59rem;
  line-height:1.12;
  white-space:normal;
  overflow-wrap:anywhere;
  border-radius:7px;
}
.approval-dashboard .approval-table-actions .button:nth-child(1),
.approval-dashboard .approval-table-actions .button:nth-child(4),
.approval-dashboard .approval-table-actions .button:nth-child(7){
  grid-column:1/-1;
}

/* Slightly tighter panel chrome so this operational table does not look oversized. */
.approval-dashboard.approval-panel{padding:12px}
.approval-dashboard .panel-heading{margin-bottom:8px}
.approval-dashboard .panel-heading h2{font-size:1.02rem;line-height:1.18}
.approval-dashboard .panel-heading .help{font-size:.72rem;line-height:1.35}

@media (max-width:1180px){
  .approval-payment-gate-table{min-width:1540px}
}

@media (max-width:760px){
  .approval-payment-gate-table{
    min-width:0!important;
    width:100%!important;
    table-layout:auto!important;
  }

  /* One card per order; protocol remains a normal labelled table field. */
  .approval-dashboard .approval-table tbody{gap:9px!important}
  .approval-dashboard .approval-table tbody>.approval-order-row{
    margin:0!important;
    border-radius:9px!important;
  }
  .approval-dashboard .approval-payment-gate-table .approval-order-row td{
    padding:6px 8px;
    font-size:.67rem;
  }
  .approval-dashboard .approval-payment-gate-table .approval-order-row td::before{
    font-size:.54rem;
  }
  .approval-dashboard .approval-payment-gate-table .approval-order-row td>strong{
    font-size:.73rem;
  }

  .approval-dashboard .approval-table-actions{
    grid-template-columns:1fr 1fr;
    gap:4px;
  }
  .approval-dashboard .approval-table-actions .button{
    min-height:34px;
    padding:6px 7px;
    font-size:.63rem;
  }
  .approval-dashboard .approval-table-actions .button:nth-child(1),
  .approval-dashboard .approval-table-actions .button:nth-child(4),
  .approval-dashboard .approval-table-actions .button:nth-child(7){
    grid-column:1/-1;
  }

  .approval-mail-protocol-compact{gap:1px}
  .approval-mail-protocol-line{
    grid-template-columns:76px minmax(64px,.8fr) minmax(64px,.8fr) 58px;
    gap:3px;
    padding:3px 0;
    font-size:.56rem;
  }
}

@media (max-width:520px){
  .approval-dashboard.approval-panel{padding:9px}
  .approval-dashboard .approval-kpis,
  .approval-dashboard .approval-kpis--finance{
    grid-template-columns:1fr 1fr!important;
  }
  .approval-dashboard .approval-kpis>div{padding:6px 8px}

  .approval-dashboard .approval-table td,
  .approval-dashboard .approval-table td:first-child,
  .approval-dashboard .approval-table td:last-child{
    padding:6px 8px;
  }

  .approval-mail-protocol-line{
    grid-template-columns:70px minmax(0,1fr) 58px;
  }
  .approval-mail-protocol-target{
    grid-column:2;
    font-size:.52rem;
  }
  .approval-mail-protocol-result{
    grid-column:3;
    grid-row:1/span 2;
    align-self:center;
  }
}

@media (max-width:430px){
  .approval-dashboard .approval-kpis,
  .approval-dashboard .approval-kpis--finance{
    grid-template-columns:1fr 1fr!important;
  }
  .approval-dashboard .approval-table-actions{
    grid-template-columns:1fr;
  }
  .approval-dashboard .approval-table-actions .button,
  .approval-dashboard .approval-table-actions .button:nth-child(1),
  .approval-dashboard .approval-table-actions .button:nth-child(4),
  .approval-dashboard .approval-table-actions .button:nth-child(7){
    grid-column:auto;
  }
}


/* OpenDeal 2026-09-25 V24: make e-mail protocol values distinctly smaller and denser. */
.approval-dashboard .approval-payment-gate-table td.approval-mail-protocol-cell{
  font-size:10px!important;
  line-height:1.18!important;
}
.approval-dashboard .approval-mail-protocol-compact{
  gap:1px!important;
  font-size:10px!important;
  line-height:1.18!important;
}
.approval-dashboard .approval-mail-protocol-line{
  grid-template-columns:72px 64px 66px 58px;
  gap:3px!important;
  padding:2px 0!important;
  font-size:10px!important;
  line-height:1.18!important;
}
.approval-dashboard .approval-mail-protocol-line time,
.approval-dashboard .approval-mail-protocol-type,
.approval-dashboard .approval-mail-protocol-target,
.approval-dashboard .approval-mail-protocol-result{
  font-size:10px!important;
  line-height:1.18!important;
}
.approval-dashboard .approval-mail-protocol-compact>small,
.approval-dashboard .approval-mail-protocol-empty{
  font-size:9px!important;
  line-height:1.15!important;
}
@media (max-width:760px){
  .approval-dashboard .approval-mail-protocol-line,
  .approval-dashboard .approval-mail-protocol-line time,
  .approval-dashboard .approval-mail-protocol-type,
  .approval-dashboard .approval-mail-protocol-target,
  .approval-dashboard .approval-mail-protocol-result{
    font-size:9.5px!important;
  }
  .approval-dashboard .approval-mail-protocol-compact>small,
  .approval-dashboard .approval-mail-protocol-empty{
    font-size:9px!important;
  }
}


/* OpenDeal 2026-09-25 V25: E-Mail-Protokoll as compact mini-table with its own sub-columns. */
.approval-dashboard .approval-mail-protocol-cell{
  min-width:176px!important;
}
.approval-dashboard .approval-mail-protocol-compact{
  display:grid!important;
  gap:2px!important;
}
.approval-dashboard .approval-mail-protocol-head,
.approval-dashboard .approval-mail-protocol-line{
  display:grid!important;
  grid-template-columns:62px minmax(58px,1fr) minmax(52px,.9fr) 38px;
  align-items:center;
  gap:6px!important;
  min-width:0;
}
.approval-dashboard .approval-mail-protocol-head{
  padding:0 0 2px 0;
  border-bottom:1px solid #e6ece8;
  color:#76857e;
  font-size:9px!important;
  line-height:1.1!important;
  font-weight:800;
  letter-spacing:.01em;
  text-transform:uppercase;
}
.approval-dashboard .approval-mail-protocol-line{
  padding:2px 0!important;
  border-bottom:1px solid #edf1ee;
  color:#42564d;
  font-size:9.5px!important;
  line-height:1.14!important;
}
.approval-dashboard .approval-mail-protocol-line:last-of-type{border-bottom:0}
.approval-dashboard .approval-mail-protocol-head span,
.approval-dashboard .approval-mail-protocol-line time,
.approval-dashboard .approval-mail-protocol-type,
.approval-dashboard .approval-mail-protocol-target,
.approval-dashboard .approval-mail-protocol-result{
  min-width:0;
  overflow:hidden;
  text-overflow:ellipsis;
  white-space:nowrap;
}
.approval-dashboard .approval-mail-protocol-line time{
  color:#274c3d;
  font-weight:800;
  font-variant-numeric:tabular-nums;
}
.approval-dashboard .approval-mail-protocol-type{font-weight:750}
.approval-dashboard .approval-mail-protocol-target{color:#66786f}
.approval-dashboard .approval-mail-protocol-result{
  justify-self:center;
  width:18px;
  height:18px;
  display:inline-grid;
  place-items:center;
  border-radius:999px;
  background:#eaf6ef;
  color:#0c6847;
  font-weight:900;
}
.approval-dashboard .approval-mail-protocol-compact>small{
  margin-top:2px!important;
  font-size:8.5px!important;
}
@media (max-width:760px){
  .approval-dashboard .approval-mail-protocol-cell{min-width:0!important}
  .approval-dashboard .approval-mail-protocol-head,
  .approval-dashboard .approval-mail-protocol-line{
    grid-template-columns:64px minmax(60px,1fr) minmax(56px,.9fr) 34px;
    gap:5px!important;
  }
  .approval-dashboard .approval-mail-protocol-head{font-size:8.5px!important}
  .approval-dashboard .approval-mail-protocol-line{font-size:9px!important}
}


/* OpenDeal 2026-09-25 V26: REAL e-mail protocol table columns after Actions. */
.approval-dashboard .approval-payment-gate-table{
  min-width:1460px!important;
  table-layout:fixed!important;
}
/* Main order columns */
.approval-dashboard .approval-payment-gate-table th:nth-child(1){width:128px!important}
.approval-dashboard .approval-payment-gate-table th:nth-child(2){width:118px!important}
.approval-dashboard .approval-payment-gate-table th:nth-child(3){width:132px!important}
.approval-dashboard .approval-payment-gate-table th:nth-child(4){width:50px!important}
.approval-dashboard .approval-payment-gate-table th:nth-child(5){width:105px!important}
.approval-dashboard .approval-payment-gate-table th:nth-child(6){width:116px!important}
.approval-dashboard .approval-payment-gate-table th:nth-child(7){width:74px!important}
.approval-dashboard .approval-payment-gate-table th:nth-child(8){width:104px!important}
.approval-dashboard .approval-payment-gate-table th:nth-child(9){width:140px!important}
.approval-dashboard .approval-payment-gate-table th:nth-child(10){width:260px!important}
.approval-dashboard .approval-email-group-head{
  width:333px!important;
  text-align:center!important;
  border-left:1px solid #e3e9e5!important;
  color:#40594d!important;
  letter-spacing:.025em!important;
}
.approval-dashboard .approval-email-subhead th{
  padding:4px 5px!important;
  border-top:1px solid #e7ece9!important;
  border-bottom:1px solid #dfe6e2!important;
  color:#6d7d75!important;
  font-size:8.5px!important;
  line-height:1.05!important;
  text-align:left!important;
  white-space:nowrap!important;
}
.approval-dashboard .approval-email-subhead th:nth-child(1){width:82px!important}
.approval-dashboard .approval-email-subhead th:nth-child(2){width:94px!important}
.approval-dashboard .approval-email-subhead th:nth-child(3){width:86px!important}
.approval-dashboard .approval-email-subhead th:nth-child(4){width:71px!important;text-align:center!important}
.approval-dashboard .approval-mail-protocol-col{
  padding:6px 5px!important;
  border-left:1px solid #edf1ee!important;
  font-size:9px!important;
  line-height:1.15!important;
  overflow:hidden!important;
  overflow-wrap:normal!important;
  word-break:normal!important;
}
.approval-dashboard .approval-mail-protocol-col:nth-last-child(4){width:82px!important}
.approval-dashboard .approval-mail-protocol-col:nth-last-child(3){width:94px!important}
.approval-dashboard .approval-mail-protocol-col:nth-last-child(2){width:86px!important}
.approval-dashboard .approval-mail-protocol-col:nth-last-child(1){width:71px!important}
.approval-dashboard .approval-mail-stack{
  display:grid!important;
  gap:0!important;
  min-width:0!important;
}
.approval-dashboard .approval-mail-stack>span{
  display:block!important;
  min-height:19px!important;
  padding:3px 2px!important;
  border-bottom:1px solid #eef2ef!important;
  overflow:hidden!important;
  text-overflow:ellipsis!important;
  white-space:nowrap!important;
  font-size:9px!important;
  line-height:1.12!important;
}
.approval-dashboard .approval-mail-stack>span:last-child{border-bottom:0!important}
.approval-dashboard .approval-mail-stack-time>span{
  font-weight:750!important;
  color:#315445!important;
  font-variant-numeric:tabular-nums!important;
}
.approval-dashboard .approval-mail-stack-type>span{font-weight:700!important;color:#344d42!important}
.approval-dashboard .approval-mail-stack-target>span{color:#65766e!important}
.approval-dashboard .approval-mail-stack-status>span{
  color:#0c6847!important;
  font-weight:800!important;
  text-align:center!important;
}
.approval-dashboard .approval-mail-older{
  display:block!important;
  margin-top:3px!important;
  color:#7b8982!important;
  font-size:8px!important;
  line-height:1.1!important;
  text-align:center!important;
  white-space:nowrap!important;
}
/* Retire V24/V25 nested-mini-table styling if cached rules are still present. */
.approval-dashboard .approval-mail-protocol-cell,
.approval-dashboard .approval-mail-protocol-compact,
.approval-dashboard .approval-mail-protocol-head,
.approval-dashboard .approval-mail-protocol-line{display:initial}

@media (max-width:760px){
  .approval-dashboard .approval-payment-gate-table{
    min-width:0!important;
    table-layout:auto!important;
  }
  .approval-dashboard .approval-payment-gate-table thead{display:none!important}
  .approval-dashboard .approval-mail-protocol-col{
    width:auto!important;
    padding:6px 8px!important;
    border-left:0!important;
  }
  .approval-dashboard .approval-mail-stack>span{
    min-height:18px!important;
    font-size:9px!important;
  }
  .approval-dashboard .approval-mail-stack-status>span{text-align:left!important}
  .approval-dashboard .approval-mail-older{text-align:left!important}
}

/* OpenDeal 2026-09-25 V27: slightly larger non-button text for readability.
   IMPORTANT: button typography is intentionally untouched. */
.approval-dashboard .approval-payment-gate-table th{
  font-size:.60rem!important;
  line-height:1.12!important;
}
.approval-dashboard .approval-payment-gate-table>tbody>.approval-order-row>td{
  font-size:.72rem!important;
  line-height:1.24!important;
}
.approval-dashboard .approval-payment-gate-table .approval-order-row td>strong{
  font-size:.80rem!important;
  line-height:1.20!important;
}
.approval-dashboard .approval-payment-gate-table .approval-order-row td>small{
  font-size:.59rem!important;
  line-height:1.24!important;
}
.approval-dashboard .approval-payment-gate-table .approval-order-row .status{
  font-size:.62rem!important;
  line-height:1.15!important;
}
.approval-dashboard .approval-kpis span{
  font-size:.57rem!important;
}
.approval-dashboard .approval-kpis strong{
  font-size:.84rem!important;
}
.approval-dashboard .approval-email-subhead th{
  font-size:9.5px!important;
}
.approval-dashboard .approval-mail-protocol-col{
  font-size:10px!important;
  line-height:1.18!important;
}
.approval-dashboard .approval-mail-stack>span{
  font-size:10px!important;
  line-height:1.16!important;
}
.approval-dashboard .approval-mail-older{
  font-size:9px!important;
  line-height:1.12!important;
}
@media (max-width:760px){
  .approval-dashboard .approval-payment-gate-table .approval-order-row td{
    font-size:.70rem!important;
  }
  .approval-dashboard .approval-payment-gate-table .approval-order-row td>strong{
    font-size:.77rem!important;
  }
  .approval-dashboard .approval-payment-gate-table .approval-order-row td>small{
    font-size:.58rem!important;
  }
  .approval-dashboard .approval-mail-stack>span{
    font-size:9.5px!important;
  }
}

/* OpenDeal 2026-09-25 V28: approval table keeps a real fixed desktop width.
   Never squeeze columns to the viewport; use horizontal scrolling instead.
   Button typography/text is intentionally untouched. */
.approval-dashboard .approval-table-wrap{
  display:block!important;
  width:100%!important;
  max-width:100%!important;
  overflow-x:scroll!important;
  overflow-y:hidden!important;
  overscroll-behavior-inline:contain;
  -webkit-overflow-scrolling:touch;
  scrollbar-width:auto;
  scrollbar-gutter:stable both-edges;
  padding-bottom:2px;
}
.approval-dashboard .approval-table-wrap::-webkit-scrollbar{height:12px}
.approval-dashboard .approval-table-wrap::-webkit-scrollbar-track{
  background:#eef2ef;
  border-radius:999px;
}
.approval-dashboard .approval-table-wrap::-webkit-scrollbar-thumb{
  background:#8d9d95;
  border:2px solid #eef2ef;
  border-radius:999px;
}
.approval-dashboard .approval-table-wrap::-webkit-scrollbar-thumb:hover{background:#687b71}

.approval-dashboard .approval-payment-gate-table{
  display:table!important;
  width:1860px!important;
  min-width:1860px!important;
  max-width:none!important;
  table-layout:fixed!important;
}
.approval-dashboard .approval-payment-gate-table thead{display:table-header-group!important}
.approval-dashboard .approval-payment-gate-table tbody{display:table-row-group!important}
.approval-dashboard .approval-payment-gate-table tr{display:table-row!important}
.approval-dashboard .approval-payment-gate-table th,
.approval-dashboard .approval-payment-gate-table td{
  display:table-cell!important;
  box-sizing:border-box!important;
}

/* Stable operational widths: order data stays readable and actions/mail audit never compress it. */
.approval-dashboard .approval-payment-gate-table th:nth-child(1){width:155px!important}
.approval-dashboard .approval-payment-gate-table th:nth-child(2){width:145px!important}
.approval-dashboard .approval-payment-gate-table th:nth-child(3){width:155px!important}
.approval-dashboard .approval-payment-gate-table th:nth-child(4){width:60px!important}
.approval-dashboard .approval-payment-gate-table th:nth-child(5){width:125px!important}
.approval-dashboard .approval-payment-gate-table th:nth-child(6){width:135px!important}
.approval-dashboard .approval-payment-gate-table th:nth-child(7){width:85px!important}
.approval-dashboard .approval-payment-gate-table th:nth-child(8){width:110px!important}
.approval-dashboard .approval-payment-gate-table th:nth-child(9){width:165px!important}
.approval-dashboard .approval-payment-gate-table th:nth-child(10){width:300px!important}
.approval-dashboard .approval-email-group-head{width:425px!important}
.approval-dashboard .approval-email-subhead th:nth-child(1){width:105px!important}
.approval-dashboard .approval-email-subhead th:nth-child(2){width:110px!important}
.approval-dashboard .approval-email-subhead th:nth-child(3){width:105px!important}
.approval-dashboard .approval-email-subhead th:nth-child(4){width:105px!important}

/* Disable old responsive card conversion for this specific operational table.
   Small screens scroll the real table horizontally, matching desktop semantics. */
@media (max-width:760px){
  .approval-dashboard .approval-table-wrap{
    overflow-x:scroll!important;
    overflow-y:hidden!important;
  }
  .approval-dashboard .approval-payment-gate-table{
    display:table!important;
    width:1860px!important;
    min-width:1860px!important;
    max-width:none!important;
    table-layout:fixed!important;
  }
  .approval-dashboard .approval-payment-gate-table thead{display:table-header-group!important}
  .approval-dashboard .approval-payment-gate-table tbody{display:table-row-group!important}
  .approval-dashboard .approval-payment-gate-table tbody>.approval-order-row{
    display:table-row!important;
    margin:0!important;
    border-radius:0!important;
  }
  .approval-dashboard .approval-payment-gate-table th,
  .approval-dashboard .approval-payment-gate-table .approval-order-row td{
    display:table-cell!important;
    width:auto;
  }
  .approval-dashboard .approval-payment-gate-table .approval-order-row td::before{display:none!important}
  .approval-dashboard .approval-mail-protocol-col{display:table-cell!important}
}


/* OpenDeal 2026-09-25 V29: slightly larger NON-BUTTON text only.
   V28 fixed-width horizontal table/scrollbar remains unchanged.
   Button text, button font-size and button dimensions are intentionally untouched. */
.approval-dashboard .approval-payment-gate-table th{
  font-size:.63rem!important;
  line-height:1.14!important;
}
.approval-dashboard .approval-payment-gate-table>tbody>.approval-order-row>td{
  font-size:.76rem!important;
  line-height:1.26!important;
}
.approval-dashboard .approval-payment-gate-table .approval-order-row td>strong{
  font-size:.84rem!important;
  line-height:1.22!important;
}
.approval-dashboard .approval-payment-gate-table .approval-order-row td>small{
  font-size:.62rem!important;
  line-height:1.26!important;
}
.approval-dashboard .approval-payment-gate-table .approval-order-row .status{
  font-size:.65rem!important;
  line-height:1.16!important;
}
.approval-dashboard .approval-kpis span{
  font-size:.60rem!important;
}
.approval-dashboard .approval-kpis strong{
  font-size:.88rem!important;
}
.approval-dashboard .approval-email-group-head{
  font-size:.63rem!important;
}
.approval-dashboard .approval-email-subhead th{
  font-size:10px!important;
}
.approval-dashboard .approval-mail-protocol-col{
  font-size:10.5px!important;
  line-height:1.20!important;
}
.approval-dashboard .approval-mail-stack>span{
  font-size:10.5px!important;
  line-height:1.18!important;
}
.approval-dashboard .approval-mail-older{
  font-size:9.5px!important;
  line-height:1.15!important;
}

@media (max-width:760px){
  .approval-dashboard .approval-payment-gate-table .approval-order-row td{
    font-size:.74rem!important;
  }
  .approval-dashboard .approval-payment-gate-table .approval-order-row td>strong{
    font-size:.81rem!important;
  }
  .approval-dashboard .approval-payment-gate-table .approval-order-row td>small{
    font-size:.61rem!important;
  }
  .approval-dashboard .approval-mail-protocol-col,
  .approval-dashboard .approval-mail-stack>span{
    font-size:10px!important;
  }
}

/* OpenDeal 2026-09-25 V30: final visual normalization for controlled order approval.
   One coherent geometry; item details live in a full-width row below the order.
   Existing button labels and button typography are intentionally left unchanged. */
.approval-dashboard.approval-panel{
  padding:16px!important;
}
.approval-dashboard .panel-heading{
  margin-bottom:10px!important;
}
.approval-dashboard .panel-heading h2{
  font-size:1.08rem!important;
  line-height:1.22!important;
}
.approval-dashboard .panel-heading .help{
  margin-top:4px!important;
  font-size:.76rem!important;
  line-height:1.38!important;
}
.approval-dashboard .approval-kpis,
.approval-dashboard .approval-kpis--finance{
  grid-template-columns:repeat(6,minmax(0,1fr))!important;
  gap:8px!important;
  margin:9px 0 12px!important;
}
.approval-dashboard .approval-kpis>div{
  min-height:52px!important;
  padding:9px 11px!important;
  border-radius:9px!important;
}
.approval-dashboard .approval-kpis span{
  font-size:10px!important;
  line-height:1.15!important;
}
.approval-dashboard .approval-kpis strong{
  margin-top:4px!important;
  font-size:14px!important;
  line-height:1.18!important;
}

.approval-dashboard .approval-table-wrap{
  width:100%!important;
  max-width:100%!important;
  overflow-x:scroll!important;
  overflow-y:hidden!important;
  border-radius:12px!important;
  scrollbar-gutter:stable both-edges!important;
}
.approval-dashboard .approval-payment-gate-table{
  width:1960px!important;
  min-width:1960px!important;
  max-width:none!important;
  table-layout:fixed!important;
  border-collapse:collapse!important;
}
.approval-dashboard .approval-payment-gate-table th,
.approval-dashboard .approval-payment-gate-table td{
  box-sizing:border-box!important;
  vertical-align:top!important;
  overflow-wrap:normal!important;
  word-break:normal!important;
}
.approval-dashboard .approval-payment-gate-table thead th{
  padding:8px 9px!important;
  font-size:10.5px!important;
  line-height:1.15!important;
  letter-spacing:.03em!important;
}
.approval-dashboard .approval-email-subhead th{
  padding:6px 7px!important;
  font-size:10px!important;
  line-height:1.1!important;
}
.approval-dashboard .approval-payment-gate-table>tbody>.approval-order-row>td{
  padding:10px 9px!important;
  font-size:13px!important;
  line-height:1.30!important;
  border-top:1px solid #edf0ed!important;
}
.approval-dashboard .approval-payment-gate-table .approval-order-row td>strong{
  display:block!important;
  font-size:14px!important;
  line-height:1.22!important;
  font-weight:800!important;
}
.approval-dashboard .approval-payment-gate-table .approval-order-row td>small{
  display:block!important;
  margin-top:4px!important;
  font-size:10.5px!important;
  line-height:1.28!important;
}
.approval-dashboard .approval-payment-gate-table .approval-order-row .status{
  display:inline-flex!important;
  align-items:center!important;
  min-height:28px!important;
  padding:5px 8px!important;
  border-radius:9px!important;
  font-size:11px!important;
  line-height:1.16!important;
}
.approval-dashboard .approval-payment-gate-table .is-number{
  font-variant-numeric:tabular-nums!important;
}

/* Stable column geometry. */
.approval-dashboard .approval-payment-gate-table th:nth-child(1){width:165px!important}
.approval-dashboard .approval-payment-gate-table th:nth-child(2){width:160px!important}
.approval-dashboard .approval-payment-gate-table th:nth-child(3){width:170px!important}
.approval-dashboard .approval-payment-gate-table th:nth-child(4){width:65px!important}
.approval-dashboard .approval-payment-gate-table th:nth-child(5){width:135px!important}
.approval-dashboard .approval-payment-gate-table th:nth-child(6){width:145px!important}
.approval-dashboard .approval-payment-gate-table th:nth-child(7){width:90px!important}
.approval-dashboard .approval-payment-gate-table th:nth-child(8){width:120px!important}
.approval-dashboard .approval-payment-gate-table th:nth-child(9){width:180px!important}
.approval-dashboard .approval-payment-gate-table th:nth-child(10){width:310px!important}
.approval-dashboard .approval-email-group-head{width:420px!important}
.approval-dashboard .approval-email-subhead th:nth-child(1){width:105px!important}
.approval-dashboard .approval-email-subhead th:nth-child(2){width:110px!important}
.approval-dashboard .approval-email-subhead th:nth-child(3){width:100px!important}
.approval-dashboard .approval-email-subhead th:nth-child(4){width:105px!important}

/* Item column: only a compact toggle in the main row. */
.approval-dashboard .approval-items-cell{
  overflow:visible!important;
}
.approval-dashboard .approval-items-toggle{
  appearance:none;
  display:inline-flex;
  align-items:center;
  gap:5px;
  max-width:100%;
  padding:0;
  border:0;
  background:transparent;
  color:#075d40;
  font:inherit;
  font-size:13px;
  line-height:1.25;
  font-weight:850;
  cursor:pointer;
  white-space:nowrap;
}
.approval-dashboard .approval-items-toggle>span{
  width:12px;
  flex:0 0 12px;
  text-align:center;
  font-size:11px;
}
.approval-dashboard .approval-items-toggle:hover{text-decoration:underline}

/* Expanded product details are a dedicated full-width TABLE ROW, never floating over cells. */
.approval-dashboard .approval-item-detail-row[hidden]{display:none!important}
.approval-dashboard .approval-item-detail-row{
  display:table-row!important;
}
.approval-dashboard .approval-item-detail-row>td{
  padding:0 9px 10px!important;
  border-top:0!important;
  background:#fff!important;
}
.approval-dashboard .approval-item-detail-panel{
  display:grid;
  gap:8px;
  padding:10px;
  border:1px solid #dbe5df;
  border-radius:10px;
  background:#fbfdfb;
}
.approval-dashboard .approval-item-detail-card{
  display:grid;
  gap:9px;
  min-width:0;
}
.approval-dashboard .approval-item-detail-card+ .approval-item-detail-card{
  padding-top:10px;
  border-top:1px solid #e6ece8;
}
.approval-dashboard .approval-item-detail-card header{
  display:block;
  min-width:0;
}
.approval-dashboard .approval-item-detail-card header strong{
  display:block;
  font-size:13px!important;
  line-height:1.24!important;
}
.approval-dashboard .approval-item-detail-card header small{
  display:block;
  margin-top:2px;
  color:#66786f;
  font-size:10px!important;
  line-height:1.2!important;
  white-space:normal;
  overflow-wrap:anywhere;
}
.approval-dashboard .approval-item-detail-card dl{
  display:grid;
  grid-template-columns:repeat(7,minmax(0,1fr));
  gap:7px;
  margin:0;
}
.approval-dashboard .approval-item-detail-card dl>div{
  min-width:0;
  padding:8px 9px;
  border-radius:8px;
  background:#f1f5f2;
}
.approval-dashboard .approval-item-detail-card dt{
  color:#66786f;
  font-size:9.5px!important;
  line-height:1.15!important;
  font-weight:850;
  text-transform:uppercase;
}
.approval-dashboard .approval-item-detail-card dd{
  margin:4px 0 0;
  font-size:12px!important;
  line-height:1.2!important;
  font-weight:800;
  overflow-wrap:anywhere;
}

/* E-mail protocol: align all four stacks on the same baseline. */
.approval-dashboard .approval-mail-protocol-col{
  padding:9px 7px!important;
  font-size:11px!important;
  line-height:1.2!important;
  border-left:1px solid #edf1ee!important;
}
.approval-dashboard .approval-mail-stack{
  display:grid!important;
  grid-auto-rows:22px!important;
  gap:0!important;
}
.approval-dashboard .approval-mail-stack>span{
  display:flex!important;
  align-items:center!important;
  min-height:22px!important;
  padding:0 2px!important;
  border-bottom:1px solid #eef2ef!important;
  font-size:11px!important;
  line-height:1!important;
  white-space:nowrap!important;
  overflow:hidden!important;
  text-overflow:ellipsis!important;
}
.approval-dashboard .approval-mail-stack-status>span{
  justify-content:center!important;
  text-align:center!important;
}
.approval-dashboard .approval-mail-older{
  display:block!important;
  margin-top:4px!important;
  font-size:9.5px!important;
  line-height:1.1!important;
  text-align:center!important;
}

/* Actions stay visually aligned without changing their labels/typography. */
.approval-dashboard .approval-table-actions{
  align-content:start!important;
  gap:5px!important;
}

@media (max-width:1180px){
  .approval-dashboard .approval-kpis,
  .approval-dashboard .approval-kpis--finance{
    grid-template-columns:repeat(3,minmax(0,1fr))!important;
  }
}
@media (max-width:760px){
  .approval-dashboard .approval-kpis,
  .approval-dashboard .approval-kpis--finance{
    grid-template-columns:repeat(2,minmax(0,1fr))!important;
  }
  .approval-dashboard .approval-payment-gate-table{
    width:1960px!important;
    min-width:1960px!important;
    table-layout:fixed!important;
  }
  .approval-dashboard .approval-payment-gate-table thead{display:table-header-group!important}
  .approval-dashboard .approval-payment-gate-table tbody{display:table-row-group!important}
  .approval-dashboard .approval-payment-gate-table tr{display:table-row!important}
  .approval-dashboard .approval-payment-gate-table th,
  .approval-dashboard .approval-payment-gate-table td{display:table-cell!important}
  .approval-dashboard .approval-payment-gate-table td::before{display:none!important}
  .approval-dashboard .approval-item-detail-card dl{grid-template-columns:repeat(7,minmax(0,1fr))!important}
}
