#rbac-account-control {
  position: relative;
  display: flex;
  align-items: center;
  align-self: stretch;
  padding: 0 16px;
  border-left: 1px solid rgba(255,255,255,.14);
  color: rgba(255,255,255,.78);
  font: 12px/1.2 Arial, sans-serif;
  white-space: nowrap;
}
.rbac-account-trigger {
  display: flex;
  align-items: center;
  gap: 7px;
  border: 0;
  padding: 10px 0;
  background: transparent;
  color: #fff;
  cursor: pointer;
  font: 600 12px/1.2 Arial, sans-serif;
}
.rbac-account-arrow { font-size: 10px; transition: transform .18s; }
.rbac-account-trigger[aria-expanded="true"] .rbac-account-arrow { transform: rotate(180deg); }
.rbac-account-menu {
  position: absolute;
  top: calc(100% - 2px);
  right: 8px;
  z-index: 11000;
  width: 180px;
  overflow: hidden;
  border: 1px solid #d9e0ea;
  border-radius: 6px;
  background: #fff;
  box-shadow: 0 12px 32px rgba(15,32,64,.2);
  white-space: normal;
}
.rbac-account-menu[hidden] { display: none; }
.rbac-account-menu button {
  display: block;
  width: 100%;
  border: 0;
  padding: 11px 14px;
  background: #fff;
  color: #27354a;
  cursor: pointer;
  text-align: left;
  font: 12px Arial, sans-serif;
}
.rbac-account-menu button:hover { background: #edf2f9; color: #172c52; }
.rbac-account-menu button + button { border-top: 1px solid #edf0f4; }
.rbac-signin-link {
  display: flex;
  align-items: center;
  align-self: stretch;
  padding: 0 16px;
  border-left: 1px solid rgba(255,255,255,.14);
  color: rgba(255,255,255,.72);
  text-decoration: none;
  font: 12px/1.2 Arial,sans-serif;
  white-space: nowrap;
}
.rbac-signin-link:hover { color: #fff; }
[data-rbac-theme="light"] #rbac-account-control { border-left-color: #d9e0ea; color: #44536a; }
[data-rbac-theme="light"] .rbac-account-trigger { color: #172c52; }
[data-rbac-theme="light"] .rbac-signin-link { color: #1a3461; }
.rbac-modal[hidden] { display: none; }
.rbac-modal {
  position: fixed;
  inset: 0;
  z-index: 13000;
  display: grid;
  place-items: center;
  padding: 20px;
  background: rgba(15,32,64,.58);
}
.rbac-dialog {
  width: min(500px,100%);
  overflow: hidden;
  border: 1px solid #c8d3e2;
  border-radius: 9px;
  background: #f5f7fb;
  box-shadow: 0 25px 75px rgba(0,0,0,.32);
  color: #263142;
  font-family: Arial,sans-serif;
}
.rbac-dialog-head {
  display: flex;
  align-items: center;
  justify-content: space-between;
  padding: 18px 22px;
  background: #172c52;
  color: #fff;
}
.rbac-dialog-head h2 { margin: 0; font-size: 19px; }
.rbac-dialog-close { border: 0; background: transparent; color: #fff; cursor: pointer; font-size: 24px; }
.rbac-dialog-body { padding: 22px; }
.rbac-password-field { display: flex; flex-direction: column; gap: 6px; margin-bottom: 15px; }
.rbac-password-field label { color: #536075; font-size: 11px; font-weight: 700; text-transform: uppercase; }
.rbac-password-field input { box-sizing: border-box; width: 100%; border: 1px solid #c9d2df; border-radius: 4px; padding: 10px 11px; background: #fff; font-size: 14px; }
.rbac-password-field input:focus { border-color: #1a3461; outline: 0; box-shadow: 0 0 0 3px rgba(26,52,97,.1); }
.rbac-password-message { min-height: 18px; color: #a32323; font-size: 12px; line-height: 1.5; }
.rbac-dialog-foot { display: flex; justify-content: flex-end; gap: 8px; padding: 15px 22px; border-top: 1px solid #dce3ec; background: #e9eff7; }
.rbac-dialog-foot button { border: 1px solid #bdc8d8; border-radius: 4px; padding: 9px 15px; background: #fff; color: #334157; cursor: pointer; }
.rbac-dialog-foot .rbac-primary { border-color: #1a3461; background: #1a3461; color: #fff; }
.rbac-dialog-foot button:disabled { opacity: .55; cursor: not-allowed; }
.rbac-success-dialog { padding: 30px 28px 24px; text-align: center; }
.rbac-success-icon { width: 54px; height: 54px; display: grid; place-items: center; margin: 0 auto 15px; border-radius: 50%; background: #dbe8f7; color: #1a3461; font-size: 26px; font-weight: 700; }
.rbac-success-dialog h2 { margin: 0 0 10px; color: #172c52; font-size: 21px; }
.rbac-success-dialog p { margin: 0 0 20px; color: #58667b; font-size: 13px; line-height: 1.65; }
.rbac-success-dialog button { border: 0; border-radius: 4px; padding: 10px 18px; background: #1a3461; color: #fff; cursor: pointer; font-weight: 700; }
