.redz-main { min-height: calc(100vh - 110px); }

.rz-layout { display: flex; align-items: flex-start; }
.rz-content { flex: 1 1 auto; min-width: 0; }
.rz-nav .nav-link { display: flex; align-items: center; gap: .6rem; border-radius: 0;
  color: var(--bs-body-color); padding: .5rem .9rem; white-space: nowrap; }
.rz-nav .nav-link > .bi { font-size: 1.05rem; flex: 0 0 1.2rem; text-align: center; }
.rz-nav .nav-link:hover { background: var(--bs-tertiary-bg); }
.rz-nav .nav-link.active { background: var(--bs-primary); color: #fff; }
.rz-nav .rz-section { padding: .7rem .9rem .15rem; font-size: .68rem; font-weight: 600;
  text-transform: uppercase; letter-spacing: .05em; color: var(--bs-secondary-color); }
.rz-topwrap { z-index: 1020; }
.rz-sidebar {overflow-y: auto;}
@media (min-width: 992px) {
  .rz-sidebar { flex: 0 0 220px; width: 220px; align-self: stretch;
    position: sticky; top: var(--rz-top, 49px); height: calc(100vh - var(--rz-top, 49px));
    border-right: 1px solid var(--bs-border-color); background: var(--bs-body-bg); }
  .rz-layout.rz-collapsed .rz-sidebar { flex-basis: 56px; width: 56px; }
  .rz-layout.rz-collapsed .rz-nav .rz-label { display: none; }
  .rz-layout.rz-collapsed .rz-nav .rz-section { text-align: center; height: .9rem; overflow: hidden; }
  .rz-layout.rz-collapsed .rz-nav .rz-section span { display: none; }
  .rz-layout.rz-collapsed .rz-nav .nav-link { justify-content: center; padding: .5rem; }
}
.table-sm td, .table-sm th { vertical-align: middle; }
.navbar-brand { letter-spacing: .3px; }
body { overflow-x: clip; }
.rz-brand { min-width: 0; }
.rz-imp-banner > span { min-width: 0; }
.cursor-pointer { cursor: pointer; }
.rz-drag { cursor: grab; touch-action: none; color: var(--bs-secondary-color); }
.rz-drag:active { cursor: grabbing; }
.rz-sorting { cursor: grabbing; user-select: none; }
.rz-sorting .rz-drag { cursor: grabbing; }
.rz-dragging { position: relative; z-index: 30; opacity: .96;
  box-shadow: 0 .9rem 2rem rgba(0, 0, 0, .3); border-radius: .5rem; }
.rz-dragging > .card { box-shadow: 0 .9rem 2rem rgba(0, 0, 0, .3); }
.rz-droptarget { outline: 2px dashed var(--bs-border-color); outline-offset: -3px;
  border-radius: .5rem; opacity: .8; transition: opacity .12s ease, outline-color .12s ease, background-color .12s ease; }
.rz-drop-active { opacity: 1; outline-color: var(--bs-primary); background-color: var(--bs-primary-bg-subtle); }
.rz-drop-active.rz-drop-before { box-shadow: inset .3rem 0 0 -.05rem var(--bs-primary); }
.rz-drop-active.rz-drop-after { box-shadow: inset -.3rem 0 0 -.05rem var(--bs-primary); }

.rz-pin-dots { display: flex; gap: .55rem; justify-content: center; }
.rz-pin-dot { width: 14px; height: 14px; border-radius: 50%; border: 2px solid var(--bs-border-color); display: inline-block; transition: background-color .1s ease, border-color .1s ease; }
.rz-pin-dot-on { background: var(--bs-primary); border-color: var(--bs-primary); }
.rz-keypad-grid { display: grid; grid-template-columns: repeat(3, 1fr); gap: .5rem; max-width: 264px; margin: 0 auto; }
.rz-key { font-size: 1.4rem; font-weight: 500; padding: .55rem 0; border: 1px solid var(--bs-border-color); }
.rz-key:active { transform: scale(.97); }

.rz-imp-menu { min-width: 23rem; max-width: calc(100vw - 1rem); }

@media (max-width: 575.98px) {
  .rz-imp-menu.show {
    position: fixed !important;
    inset: var(--rz-top, 49px) .5rem auto .5rem !important;
    transform: none !important;
    min-width: 0 !important;
    max-width: none !important;
    width: auto !important;
    max-height: calc(100vh - var(--rz-top, 49px) - 1rem);
    overflow-y: auto;
  }
  .rz-imp-menu .imp-pick span[style] { max-width: 100% !important; }
}

.rz-appqr { width: 190px; }
.rz-appqr svg { width: 100%; height: auto; display: block; }
.rz-2fa-qr svg { width: 176px; height: 176px; display: block; }
