/*
 * PFM public UI foundation.
 *
 * Wesper intentionally applies global button/input rules. New PFM product
 * surfaces should add .pfm-ui-scope to the product root and use the
 * .pfm-ui-button / .pfm-ui-icon-button / .pfm-ui-input primitives below.
 * These rules use explicit !important values only where the theme also does,
 * so component CSS can remain predictable without changing Wesper itself.
 */
.pfm-ui-scope{width:100%;max-width:100%;min-width:0}
.pfm-ui-scope a.pfm-ui-button,
.pfm-ui-scope button.pfm-ui-button{
  -webkit-appearance:none!important;
  appearance:none!important;
  display:inline-flex!important;
  width:auto!important;
  max-width:100%!important;
  min-height:44px!important;
  height:auto!important;
  align-items:center!important;
  justify-content:center!important;
  margin:0!important;
  padding:10px 16px!important;
  border:1px solid var(--pfm-ui-button-border,var(--pfm-red,#8b0f1a))!important;
  border-radius:10px!important;
  background:var(--pfm-ui-button-bg,#fff)!important;
  color:var(--pfm-ui-button-color,var(--pfm-red,#8b0f1a))!important;
  -webkit-text-fill-color:var(--pfm-ui-button-color,var(--pfm-red,#8b0f1a))!important;
  font-family:Roboto,"Helvetica Neue",Arial,sans-serif!important;
  font-size:14px!important;
  font-weight:850!important;
  line-height:1.2!important;
  letter-spacing:0!important;
  text-transform:none!important;
  text-align:center!important;
  text-decoration:none!important;
  box-shadow:none!important;
  cursor:pointer!important;
  white-space:normal!important;
  transition:background-color .18s ease,border-color .18s ease,color .18s ease,box-shadow .18s ease!important;
}
.pfm-ui-scope .pfm-ui-button--primary{
  --pfm-ui-button-bg:var(--pfm-red,#8b0f1a);
  --pfm-ui-button-color:#fff;
  --pfm-ui-button-border:var(--pfm-red,#8b0f1a);
}
.pfm-ui-scope .pfm-ui-button--secondary{
  --pfm-ui-button-bg:#fff;
  --pfm-ui-button-color:var(--pfm-red,#8b0f1a);
  --pfm-ui-button-border:var(--pfm-red,#8b0f1a);
}
.pfm-ui-scope a.pfm-ui-button:hover,
.pfm-ui-scope a.pfm-ui-button:focus,
.pfm-ui-scope button.pfm-ui-button:hover,
.pfm-ui-scope button.pfm-ui-button:focus{
  --pfm-ui-button-bg:var(--pfm-red-dark,#6f0c15);
  --pfm-ui-button-color:#fff;
  --pfm-ui-button-border:var(--pfm-red-dark,#6f0c15);
  text-decoration:none!important;
}
.pfm-ui-scope a.pfm-ui-button:focus-visible,
.pfm-ui-scope button.pfm-ui-button:focus-visible,
.pfm-ui-scope button.pfm-ui-icon-button:focus-visible,
.pfm-ui-scope input.pfm-ui-input:focus-visible{
  outline:3px solid rgba(214,163,19,.62)!important;
  outline-offset:3px!important;
}
.pfm-ui-scope button.pfm-ui-icon-button{
  -webkit-appearance:none!important;
  appearance:none!important;
  display:inline-flex!important;
  width:40px!important;
  min-width:40px!important;
  max-width:40px!important;
  height:40px!important;
  min-height:40px!important;
  align-items:center!important;
  justify-content:center!important;
  margin:0!important;
  padding:0!important;
  border:1px solid var(--pfm-ui-icon-border,#dbe3ec)!important;
  border-radius:999px!important;
  background:var(--pfm-ui-icon-bg,#fff)!important;
  color:var(--pfm-ui-icon-color,var(--pfm-red,#8b0f1a))!important;
  -webkit-text-fill-color:var(--pfm-ui-icon-color,var(--pfm-red,#8b0f1a))!important;
  font-family:Roboto,"Helvetica Neue",Arial,sans-serif!important;
  font-size:22px!important;
  font-weight:700!important;
  line-height:1!important;
  letter-spacing:0!important;
  text-transform:none!important;
  box-shadow:none!important;
  cursor:pointer!important;
}
.pfm-ui-scope button.pfm-ui-icon-button:hover,
.pfm-ui-scope button.pfm-ui-icon-button:focus{
  --pfm-ui-icon-border:var(--pfm-red,#8b0f1a);
  --pfm-ui-icon-bg:#fff;
  --pfm-ui-icon-color:var(--pfm-red,#8b0f1a);
}
.pfm-ui-scope input.pfm-ui-input{
  display:block!important;
  width:100%!important;
  max-width:100%!important;
  min-width:0!important;
  min-height:44px!important;
  height:auto!important;
  margin:0!important;
  padding:10px 12px!important;
  border:1px solid #cbd5e1!important;
  border-radius:10px!important;
  background:#fff!important;
  color:#14243a!important;
  -webkit-text-fill-color:#14243a!important;
  font-family:Roboto,"Helvetica Neue",Arial,sans-serif!important;
  font-size:16px!important;
  font-weight:400!important;
  line-height:1.35!important;
  letter-spacing:0!important;
  text-transform:none!important;
  white-space:normal!important;
  box-shadow:none!important;
}
.pfm-ui-scope fieldset.pfm-ui-fieldset{min-width:0!important;margin:0!important;padding:0!important;border:0!important}
.pfm-ui-scope fieldset.pfm-ui-fieldset>legend{width:auto!important;max-width:100%!important;margin:0!important;padding:0!important;color:inherit!important;font-size:16px!important;line-height:1.35!important;font-weight:800!important;letter-spacing:0!important;text-transform:none!important}
