/* STYLES */
* {
  box-sizing: border-box;
}

/* STYLES */
.required {
  display: block;
  margin-top: 5px;
  color: #a30000;
}

h1,
h2,
h3,
h4,
h5,
h6 {
  margin: 0;
}

a {
  text-decoration: none;
  color: #2b6cb0;
  transition: color linear 0.3s;
}

a.text-link {
  font-weight: 500;
}

a.text-link:hover {
  cursor: pointer;
  text-decoration: underline;
  text-shadow: none;
}

/* MODIFIERS */
.alert-error {
  color: #a30000;
}

.pf-c-alert .kc-feedback-text,
.instruction {
  text-align: center;
}

/* CHANGES */
.kc-feedback-text {
  margin: 0 -40px;
}

#kc-form {
  padding-top: 40px;
}

.pf-c-greetings {
  width: 50%;
  padding-bottom: 20px;
  line-height: 24px;
}

.pf-c-greetings-en {
  width: 40%;
  padding-bottom: 20px;
  line-height: 24px;
}

.pf-c-greetings > p,
.pf-c-greetings-en > p {
  font-weight: 500;
  text-align: center;
}

.pf-c-greetings > span,
.pf-c-greetings-en > span {
  display: block;
}

.input-wrapper {
  position: relative;
}

.input-wrapper > .tooltip {
  position: absolute;
  width: 100%;
  left: 105%;
  top: -50%;
  border: 1px solid #000;
  padding: 2px 8px;
  z-index: 10;
  background-color: #2d3748;
  border-radius: 0.125rem;
  color: #fff;
  font-size: 14px;
  opacity: 0;
  user-select: none;
  transition: opacity linear 0.3s;
}

.input-wrapper > input:focus + .tooltip {
  opacity: 1;
  user-select: text;
}

.tooltipDocumentation {
  text-align: center;
  text-wrap: wrap;
  display: block;
  position: absolute;
  width: 310px;
  transform: translate(-200px, 20px);
  border: 1px solid #000;
  padding: 2px 8px;
  z-index: 10;
  background-color: #2d3748;
  border-radius: 0.125rem;
  color: #fff;
  font-size: 14px;
  opacity: 0;
  user-select: none;
  transition: opacity linear 0.3s;
}

#kc-registration > .documentation-link:hover + .tooltipDocumentation {
  opacity: 1;
  user-select: text;
}

/* REGISTRATION VERIFY */
.instruction-box {
  position: absolute;
  top: 0;
  right: 0;
  width: 100%;
  height: 100%;
  text-align: center;
  display: flex;
  flex-direction: column;
  justify-content: center;
}

.instruction-box > h3 {
  padding-bottom: 40px;
}

.instruction-box > .instruction {
  display: block;
}

.instruction > span {
  display: block;
}

.instruction > span + span {
  margin-top: 10px;
}

.verify-action-box {
  margin: 40px;
}

.verify-action-box > div > p,
.verify-action-box > p {
  margin: 0;
}

.verify-action-box > p {
  display: none;
}

.verify-action-box.active > p {
  display: block;
}

.verify-action-box.active > div {
  display: none;
}

.back-to-login-box {
  padding-top: 40px;
}

.back-to-login-box > a {
  font-size: 14px;
}

/* UPDATE PASSWORD */
.update-password-tip {
  text-align: center;
  margin: 0 -40px;
  font-size: 14px;
  line-height: 20px;
}

/* PRESETS */
.mt1 {
  margin-top: 0.5rem;
}
.mt2 {
  margin-top: 1rem;
}
.mt3 {
  margin-top: 1.5rem;
}
.mt4 {
  margin-top: 2rem;
}
.mt5 {
  margin-top: 2.5rem;
}
.mt6 {
  margin-top: 3rem;
}
.mt7 {
  margin-top: 3.5rem;
}
.mt8 {
  margin-top: 4rem;
}
.mt9 {
  margin-top: 4.5rem;
}
.mt10 {
  margin-top: 5rem;
}

.pt1 {
  padding-top: 0.5rem;
}
.pt2 {
  padding-top: 1rem;
}
.pt3 {
  padding-top: 1.5rem;
}
.pt4 {
  padding-top: 2rem;
}
.pt5 {
  padding-top: 2.5rem;
}
.pt6 {
  padding-top: 3rem;
}
.pt7 {
  padding-top: 3.5rem;
}
.pt8 {
  padding-top: 4rem;
}
.pt9 {
  padding-top: 4.5rem;
}
.pt10 {
  padding-top: 5rem;
}

.text-align-center {
  text-align: center;
}

/* CHAKRA BUTTONS */
.btn-chakra-en,
.btn-chakra {
  color: #fff;
  border-radius: 20px;
  padding: 10px;
  transition: all linear 0.2s;
  width: 100%;
  font-size: 14px;
  line-height: 1.2;
  text-transform: uppercase;
}

.btn-chakra-en {
  background-color: #815FD1;
  border: 1px solid #815FD1;
}

.btn-chakra {
  background-color: #3182ce;
  border: 1px solid #3182ce;
}

.btn-chakra-en:hover {
  cursor: pointer;
  background-color: #734ad4;
  border-color: #734ad4;
}

.btn-chakra:hover {
  cursor: pointer;
  background-color: #2b6cb0;
  border-color: #2b6cb0;
}

.btn-chakra:focus {
  box-shadow: 0 0 0 3px rgba(66, 153, 225, 0.6);
}

.btn-chakra-en:focus {
  box-shadow: 0 0 0 3px rgba(115, 74, 212, 0.6);
}

.btn-chakra:disabled,
.btn-chakra-en:disabled {
  opacity: 0.4;
  cursor: auto;
}
.btn-chakra:disabled:hover {
  background-color: #3182ce;
  border-color: #3182ce;
}

.btn-chakra-line {
  display: block;
  border: 1px solid #e2e8f0;
  border-radius: 20px;
  padding: 10px;
  color: #718096;
  transition: all linear 0.3s;
}

.btn-chakra-line:hover,
a.btn-chakra-line:hover {
  cursor: pointer;
  background-color: #718096;
  border-color: #718096;
  color: #fff;
}

.btn-chakra-line:focus {
  box-shadow: 0 0 0 3px rgb(100 100 100 / 20%);
}

/* CHAKRA INPUTS */
.input-chakra,
.input-chakra-en {
  width: 100%;
  transition: all linear 0.2s;
  /* padding: 0 1rem; */
  height: 2.5rem;
  border: 1px solid #cbd5e0;
  padding-inline-start: 1rem;
  padding-inline-end: 1rem;
}

.input-chakra::placeholder,
.input-chakra-en::placeholder {
  font-size: 14px;
}

.input-chakra:hover {
  border-color: #3182ce;
}

.input-chakra-en:hover {
  border-color: #815FD1;
}

.input-chakra:focus,
.input-chakra:focus-visible {
  z-index: 1;
  border-color: #3182ce;
  box-shadow: 0 0 0 1px #3182ce;
  outline: none;
}

.input-chakra-en:focus,
.input-chakra-en:focus-visible {
  z-index: 1;
  border-color: #815FD1;
  box-shadow: 0 0 0 1px #815FD1;
  outline: none;
}

.checkbox-chakra
.checkbox-chakra-en {
  display: flex;
  position: relative;
  align-items: center;
  width: 100%;
}

.checkbox-chakra label,
.checkbox-chakra-en label {
  position: absolute;
  font-size: 14px;
  padding-left: 10px;
  flex: 1;
  width: 300px;
}

.checkbox-chakra a,
.checkbox-chakra-en a {
  text-decoration: underline;
}

.checkbox-chakra label:hover,
.checkbox-chakra input:hover,
.checkbox-chakra-en label:hover,
.checkbox-chakra-en input:hover  {
  cursor: pointer;
}

.checkbox-chakra input,
.checkbox-chakra-en input {
  width: 16px;
  height: 16px;
  margin: 0;
}

.checkbox-chakra input:checked {
  accent-color: #3182ce;
}

.checkbox-chakra-en input:checked {
  accent-color: #815FD1;
}