/* ===== (overlay) ===== */
.rsum.hidden { display:none !important; }
.rsum{
  position:fixed; inset:0; z-index:9998;
  display:flex; align-items:center; justify-content:center;
}
.rsum__backdrop{
  position:absolute; inset:0; background:rgba(2,8,23,.65);
  backdrop-filter:saturate(110%) blur(2px);
}
.rsum__card{
  position:relative; z-index:1;
  width:min(940px, 92vw);
  background:#0b1222; color:#e5e7eb;
  border:1px solid #1f273a; border-radius:18px;
  box-shadow:0 24px 80px rgba(0,0,0,.35);
  padding:20px 18px 14px;
}
.rsum__card h2{
  margin:0 0 6px; font-size:22px; font-weight:800; color:#cfe8ff;
}
.rsum__lead{ margin:0 0 12px; color:#94a3b8 }

.rsum__tableWrap{ background:#0a1526; border:1px solid #1f273a; border-radius:12px; padding:10px; }
.rsum__table{ width:100%; border-collapse:separate; border-spacing:0; }
.rsum__table th, .rsum__table td{
  padding:12px 10px; border-bottom:1px solid #1f273a; font-size:14px;
}
.rsum__table thead th{
  text-align:left; color:#94a3b8; font-weight:700; font-size:12.5px;
}
.rsum__table .num{ text-align:center; font-variant-numeric:tabular-nums; }
.rsum__table tfoot td{ border-top:1px solid #1f273a; border-bottom:none; font-weight:800; }
.rsum__table .total{ color:#cfe8ff }

.rsum__actions{
  display:flex; justify-content:flex-end; gap:10px; margin-top:14px;
}
.btn-ghost{
  background:#0b1222; color:#e5e7eb; border:1px solid #1f273a;
  padding:10px 14px; border-radius:10px; font-weight:700; cursor:pointer;
}
.btn-primary{
  background:#0ea5b7; color:#fff; border:1px solid #0b8593;
  padding:10px 16px; border-radius:10px; font-weight:800; cursor:pointer;
}

/* Mobile */
@media (max-width:640px){
  .rsum__card{ padding:16px 12px 12px; }
  .rsum__table th, .rsum__table td{ padding:10px 8px; font-size:13.5px; }
}
