/* Payment detail ("say it once") — styles for macros/payment.html. Self-contained; palette from tokens/tokens.css. */
.pt-pay-head{ display:flex; flex-wrap:wrap; gap:12px 24px; align-items:flex-end; justify-content:space-between; margin-bottom:16px; }
.pt-pay-head__main{ display:flex; flex-direction:column; gap:6px; }
.pt-pay-head__main a{ text-decoration:none; }
.pt-pay-head__title{ display:flex; flex-wrap:wrap; align-items:center; gap:10px; }
.pt-pay-head h1{ margin:0; font-size:26px; font-weight:600; color:var(--green); }
.pt-pay-head__actions{ display:flex; gap:8px; }
.pt-pay-btn{ display:inline-flex; align-items:center; padding:8px 14px; border-radius:8px; font:600 13.5px 'IBM Plex Sans',system-ui,sans-serif;
  border:1px solid var(--green); background:var(--green); color:#fff; text-decoration:none; }
.pt-pay-btn:hover{ color:#fff; background:var(--green-2); }
.pt-pay-btn--void{ background:#fff; color:var(--debt); border-color:var(--debt-line); }
.pt-pay-btn--void:hover{ color:var(--debt); background:var(--debt-soft); }

.pt-chip{ display:inline-block; padding:2px 9px; border-radius:999px; font-size:var(--text-xs); font-weight:600;
  border:1px solid; white-space:nowrap; }
.pt-chip--slate{ background:var(--slate-soft); color:var(--slate); border-color:var(--slate-line); }
.pt-chip--green{ background:var(--green-soft); color:var(--green); border-color:var(--green-line); }
.pt-chip--debt{ background:var(--debt-soft); color:var(--debt); border-color:var(--debt-line); }

.pt-pay-card{ background:var(--app-card); border:1px solid var(--app-line); border-radius:12px;
  box-shadow:0 1px 2px rgba(20,30,24,.05); overflow:hidden; margin-bottom:16px; font-size:var(--text-base); }
.pt-pay-lbl{ font-size:var(--text-xs); font-weight:600; color:var(--muted); text-transform:uppercase; letter-spacing:.03em; }
.pt-pay-sub{ color:var(--muted); font-size:var(--text-sm); }
.pt-pay-green{ color:var(--green); }
.pt-pay-dim{ color:var(--muted); }

.pt-pay-hero{ display:flex; flex-wrap:wrap; gap:20px 40px; padding:20px 22px; align-items:flex-start; }
.pt-pay-amount{ font-family:'IBM Plex Mono',monospace; font-size:34px; font-weight:600; margin-top:2px; }
.pt-pay-ccy{ font-size:15px; color:var(--muted); }
.pt-pay-facts{ display:grid; grid-template-columns:repeat(2,minmax(150px,1fr)); gap:14px 32px; flex:1 1 420px; }
.pt-pay-facts b{ display:block; margin-top:3px; font-weight:500; font-size:14px; }
.pt-pay-foot{ padding:10px 18px; background:var(--app-hover); border-top:1px solid var(--app-line); color:var(--muted);
  font-size:var(--text-sm); display:flex; flex-wrap:wrap; gap:4px 24px; }

.pt-pay-ch{ padding:14px 18px 10px; border-bottom:1px solid var(--app-line-soft); }
.pt-pay-ch h2{ margin:0; font-size:15px; font-weight:600; }
.pt-pay-ch p{ margin:2px 0 0; color:var(--muted); font-size:var(--text-sm); }
.pt-pay-scroll{ overflow-x:auto; }
.pt-pay-table{ width:100%; border-collapse:collapse; font-variant-numeric:tabular-nums; }
.pt-pay-table th{ background:var(--app-hover); color:var(--muted); font-size:var(--text-xs); font-weight:600; text-align:left;
  padding:8px 16px; border-bottom:1px solid var(--app-line); white-space:nowrap; }
.pt-pay-table td{ padding:11px 16px; border-bottom:1px solid var(--app-line-soft); vertical-align:top; }
.pt-pay-table tbody tr:last-child td{ border-bottom:0; }
.pt-pay-table th.num, .pt-pay-table td.num{ text-align:right; }
.pt-pay-table tfoot td{ background:var(--app-hover); font-weight:600; border-bottom:0; }
.pt-pay-table tfoot td.pt-pay-ok{ font-weight:400; color:var(--green); }
.pt-pay-line{ margin-top:4px; }
.pt-pay-line b{ color:var(--app-ink); }
.pt-pay-tag{ display:inline-block; font-size:var(--text-xs); color:var(--slate); background:var(--slate-soft);
  border:1px solid var(--slate-line); border-radius:6px; padding:1px 7px; margin:2px 4px 0 0; }
