.billing-invoice-dialog { width: min(1100px, 94vw); height: 90vh; max-height: 94dvh; padding: 0; border: 0; border-radius: 12px; background: #fff; color: #172b4d; }
.billing-invoice-dialog::backdrop { background: rgb(0 0 0 / 60%); }
.billing-invoice-dialog[open] { display: flex; flex-direction: column; }
.billing-invoice-dialog header { display: flex; align-items: center; gap: 14px; padding: 16px; flex-wrap: wrap; }
.billing-invoice-dialog header strong { margin-right: auto; }
.billing-invoice-dialog iframe { width: 100%; flex: 1; min-height: 0; border: 0; }
#billing-panel td small { display: block; margin-top: 6px; }

/* The dialog is attached to body, outside the subscription panel styles. */
.billing-invoice-dialog header .ghost-button {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-height: 44px;
  padding: 10px 18px;
  box-sizing: border-box;
  border: 1px solid #cbd5e1;
  border-radius: 8px;
  background: #fff;
  color: #172b4d;
  font: inherit;
  font-weight: 600;
  line-height: 1.3;
  text-decoration: none;
  cursor: pointer;
}
.billing-invoice-dialog header a.ghost-button {
  background: #155eef;
  border-color: #155eef;
  color: #fff;
}
.billing-invoice-dialog header a.ghost-button:hover {
  background: #104bc4;
  border-color: #104bc4;
}
.billing-invoice-dialog header button.ghost-button:hover { background: #eef2f6; }
.billing-invoice-dialog header .ghost-button:focus-visible {
  outline: 3px solid #155eef;
  outline-offset: 3px;
}

.billing-method-warning { padding: 16px; margin: 16px 0; border: 1px solid #c17a00; border-radius: 10px; background: #fff8e6; color: #553500; }
.billing-method-warning p { margin-bottom: 0; }
.billing-revoke-dialog { width: min(560px, 90vw); max-height: 90dvh; overflow: auto; padding: 24px; border: 0; border-radius: 12px; background: #fff; color: #172b4d; }
.billing-revoke-dialog::backdrop { background: rgb(0 0 0 / 60%); }
.billing-revoke-actions { display: flex; flex-wrap: wrap; gap: 12px; margin-top: 20px; }
.billing-revoke-actions button { min-height: 44px; padding: 10px 16px; cursor: pointer; border-radius: 8px; border: 1px solid #cbd5e1; background: #fff; color: #172b4d; font: inherit; }
.billing-revoke-actions button.secondary-button { background: #155eef; color: #fff; border-color: #155eef; }
.billing-revoke-actions button:focus-visible { outline: 3px solid #155eef; outline-offset: 3px; }
