*[class*=rs-],*[class*=rs-]::before, *[class*=rs-]::after{
  box-sizing:border-box;
}

html{
  -webkit-tap-highlight-color:transparent;
  font-size:16px;
}

body{
  font-family:var(--rs-font-family-base);
  font-size:var(--rs-font-size-sm);
  line-height:var(--rs-line-height-md);
  color:var(--rs-text-primary);
  background-color:var(--rs-body);
}
:root{
  --rs-gray-0:#fff;
  --rs-gray-50:#f7f7fa;
  --rs-gray-200:#e5e5ea;
  --rs-gray-800:#343434;
  --rs-gray-900:#121212;
  --rs-color-red:#f44336;
  --rs-color-orange:#fa8900;
  --rs-color-green:#4caf50;
  --rs-body:var(--rs-gray-0);
  --rs-text-primary:var(--rs-gray-800);
}

[data-theme=dark],
.rs-theme-dark{
  --rs-gray-0:#fff;
  --rs-gray-50:#e9ebf0;
  --rs-gray-200:#a4a9b3;
  --rs-gray-800:#1a1d24;
  --rs-gray-900:#0f131a;
  --rs-color-red:#f04f43;
  --rs-color-orange:#ff9800;
  --rs-color-green:#58b15b;
  --rs-body:var(--rs-gray-900);
  --rs-text-primary:var(--rs-gray-50);
}

[data-theme=high-contrast],
.rs-theme-high-contrast{
  --rs-gray-0:#fff;
  --rs-gray-50:#e9ebf0;
  --rs-gray-200:#a4a9b3;
  --rs-gray-800:#1a1d24;
  --rs-gray-900:#0f131a;
  --rs-color-red:#bd1732;
  --rs-color-orange:#ff9800;
  --rs-color-green:#0d822c;
  --rs-body:var(--rs-gray-900);
  --rs-text-primary:var(--rs-gray-50);
}

:root{
  --rs-font-family-base:-apple-system, BlinkMacSystemFont, Arial, Helvetica, "PingFang SC", "Hiragino Sans GB", "Microsoft YaHei", STXihei, sans-serif;
  --rs-font-size-sm:0.875rem;
  --rs-line-height-md:calc(20 / 14);
  --rs-spacing:0.25rem;
}

@media (max-width: calc(576px - 1px)){
  [data-visible-from=xs]{
    display:none !important;
  }
}
@media (min-width: 576px){
  [data-hidden-from=xs]{
    display:none !important;
  }
}
@media (max-width: calc(768px - 1px)){
  [data-visible-from=sm]{
    display:none !important;
  }
}
@media (min-width: 768px){
  [data-hidden-from=sm]{
    display:none !important;
  }
}
@media (max-width: calc(992px - 1px)){
  [data-visible-from=md]{
    display:none !important;
  }
}
@media (min-width: 992px){
  [data-hidden-from=md]{
    display:none !important;
  }
}
@media (max-width: calc(1200px - 1px)){
  [data-visible-from=lg]{
    display:none !important;
  }
}
@media (min-width: 1200px){
  [data-hidden-from=lg]{
    display:none !important;
  }
}
@media (max-width: calc(1400px - 1px)){
  [data-visible-from=xl]{
    display:none !important;
  }
}
@media (min-width: 1400px){
  [data-hidden-from=xl]{
    display:none !important;
  }
}
.rs-password-strength-meter{
  --rs-password-strength-meter-color-low:var(--rs-color-red);
  --rs-password-strength-meter-color-medium:var(--rs-color-orange);
  --rs-password-strength-meter-color-high:var(--rs-color-green);
  --rs-password-strength-meter-bg:var(--rs-gray-200);
  margin-top:calc(var(--rs-spacing) * 2);
  width:100%;
  display:flex;
  flex-direction:column;
  align-items:flex-end;
}
.rs-password-strength-meter-bar{
  display:flex;
  gap:var(--rs-spacing);
  margin-bottom:var(--rs-spacing);
  width:100%;
}
.rs-password-strength-meter-segment{
  flex:1;
  height:6px;
  border-radius:2px;
  background:var(--rs-password-strength-meter-bg);
  transition:background 0.3s;
}
.rs-password-strength-meter-segment:where([data-active=true]){
  background:var(--rs-password-strength-meter-color-medium);
}
.rs-password-strength-meter-segment:where([data-active=true]):first-child{
  background:var(--rs-password-strength-meter-color-low);
}
.rs-password-strength-meter-segment:where([data-active=true]):last-child{
  background:var(--rs-password-strength-meter-color-high);
}