/* line 5, app/assets/stylesheets/_action-menu.sass */
action-menu toggler {
  cursor: pointer;
}

/* line 7, app/assets/stylesheets/_action-menu.sass */
action-menu toggler i {
  transition: 0.2s var(--transition);
}

/* line 11, app/assets/stylesheets/_action-menu.sass */
toggler[aria-expanded="true"] i.rotatable {
  transform: rotate(180deg);
}

/* line 14, app/assets/stylesheets/_action-menu.sass */
context {
  display: flex;
  flex-direction: column;
  min-width: 200px;
  border-radius: 8px;
  box-shadow: rgba(0, 0, 0, 0.2) 0px 14px 28px -6px, rgba(0, 0, 0, 0.12) 0px 2px 4px -1px, rgba(255, 255, 255, 0.094) 0px 0px 0px 0px;
  z-index: 2;
  overflow-y: auto;
  transform: scale(0.97);
}

/* line 23, app/assets/stylesheets/_action-menu.sass */
context.menu {
  overflow: visible;
}

/* line 25, app/assets/stylesheets/_action-menu.sass */
context ul {
  list-style-type: none;
  display: -webkit-flex;
  display: -ms-flex;
  display: flex;
  padding: 4px;
  gap: 1px;
  border-bottom: 1px solid var(--color-outline);
  flex-direction: column;
}

/* line 34, app/assets/stylesheets/_action-menu.sass */
context ul:last-child {
  border: none;
}

/* line 37, app/assets/stylesheets/_action-menu.sass */
context ul li.spacer {
  font-size: 13px;
  padding: 8px 16px;
  padding-bottom: 4px;
}

/* line 41, app/assets/stylesheets/_action-menu.sass */
context ul a, context ul button, context ul .context-item {
  font-size: 14px;
  display: -webkit-flex;
  display: -ms-flex;
  display: flex;
  width: 100%;
  cursor: pointer;
  align-items: center;
  padding: 0 12px;
  height: 32px;
  font-weight: 400;
  color: var(--color-on-background);
  transition: 0.1s var(--transition);
  column-gap: 12px;
}

/* line 55, app/assets/stylesheets/_action-menu.sass */
context ul a:hover, context ul button:hover, context ul .context-item:hover {
  background: rgba(255, 255, 255, 0.1);
}

/* line 57, app/assets/stylesheets/_action-menu.sass */
context ul a.flex-start, context ul button.flex-start, context ul .context-item.flex-start {
  justify-content: start;
}

/* line 59, app/assets/stylesheets/_action-menu.sass */
context ul a i, context ul button i, context ul .context-item i {
  font-size: 18px !important;
  opacity: .6;
}

/* line 65, app/assets/stylesheets/_action-menu.sass */
[data-popper-placement="bottom-start"] context {
  transform-origin: top left;
}

/* line 69, app/assets/stylesheets/_action-menu.sass */
[data-popper-placement="bottom-end"] context {
  transform-origin: top right;
}

/* line 73, app/assets/stylesheets/_action-menu.sass */
[data-popper-placement="left"] context {
  transform-origin: top right;
}

/* line 77, app/assets/stylesheets/_action-menu.sass */
[data-popper-placement="top"] context {
  transform-origin: center bottom;
}

/* line 81, app/assets/stylesheets/_action-menu.sass */
[data-popper-placement="bottom"] context {
  transform-origin: center top;
}

/* line 85, app/assets/stylesheets/_action-menu.sass */
[data-popper-placement="right"] context {
  transform-origin: center left;
}

/* line 88, app/assets/stylesheets/_action-menu.sass */
context[data-state="hidden"] {
  pointer-events: none;
  opacity: 0;
}

/* line 92, app/assets/stylesheets/_action-menu.sass */
context[data-state="visible"] {
  transform: scale(1);
  opacity: 1;
}

@media (max-width: 640px) {
  /* line 98, app/assets/stylesheets/_action-menu.sass */
  action-menu::before {
    content: '';
    position: fixed;
    top: 0;
    left: 0;
    width: 100vw;
    height: 100vh;
    background: rgba(1, 1, 1, 0.4);
    z-index: 99;
    pointer-events: none;
    opacity: 0;
    transition: 0.2s var(--transition);
  }
  /* line 111, app/assets/stylesheets/_action-menu.sass */
  action-menu.is-open::before {
    opacity: 1;
    pointer-events: auto;
  }
  /* line 114, app/assets/stylesheets/_action-menu.sass */
  action-menu [data-tippy-root] {
    position: fixed !important;
    bottom: 0 !important;
    left: 0 !important;
    transform: initial !important;
    top: initial !important;
    width: 100%;
  }
  /* line 121, app/assets/stylesheets/_action-menu.sass */
  action-menu context {
    width: 100% !important;
    border-bottom-left-radius: 0px;
    border-bottom-right-radius: 0px;
  }
  /* line 125, app/assets/stylesheets/_action-menu.sass */
  action-menu context::before {
    content: '';
    width: 64px;
    height: 6px;
    background: var(--color-secondary-container-high--hover);
    border-radius: 10px;
    margin: 16px auto;
    margin-bottom: 8px;
  }
  /* line 134, app/assets/stylesheets/_action-menu.sass */
  action-menu context ul a, action-menu context ul button, action-menu context ul label.label-btn {
    height: 48px;
    padding: 16px;
    font-size: 16px !important;
  }
}
/* line 1, app/assets/stylesheets/_buttons.sass */
.btn {
  align-items: center;
  display: -webkit-inline-flex;
  display: -ms-inline-flex;
  display: inline-flex;
  user-select: none;
  -webkit-user-select: none;
  -ms-user-select: none;
  font-size: 14px;
  justify-content: center;
  cursor: pointer;
  font-weight: 600;
  transition: 0.1s var(--transition);
}

/* line 20, app/assets/stylesheets/_buttons.sass */
.btn:active {
  transform: scale(0.97);
}

/* line 22, app/assets/stylesheets/_buttons.sass */
.btn span {
  font-weight: 500 !important;
}

/* line 24, app/assets/stylesheets/_buttons.sass */
.btn i {
  font-size: 18px;
}

/* line 28, app/assets/stylesheets/_buttons.sass */
.btn-small {
  height: 32px;
  border-radius: 8px;
  font-size: 13px;
}

/* line 34, app/assets/stylesheets/_buttons.sass */
.btn-upgrade {
  color: var(--color-secondary);
}

/* line 37, app/assets/stylesheets/_buttons.sass */
.btn-large {
  font-size: 15px;
  padding: 0 20px;
  border-radius: 14px;
  height: 44px;
}

/* line 43, app/assets/stylesheets/_buttons.sass */
.btn-block {
  width: 100%;
}

/* line 45, app/assets/stylesheets/_buttons.sass */
.btn-block i {
  margin-left: 0;
}

/* line 50, app/assets/stylesheets/_buttons.sass */
.btn-loading i {
  width: 8px;
  min-width: 8px;
  opacity: 0;
  height: 8px;
  border-radius: 50%;
  margin: 0 3px;
  display: block;
  animation: loading-dot .5s infinite ease;
}

/* line 59, app/assets/stylesheets/_buttons.sass */
.btn-loading i:nth-child(2) {
  animation-delay: 0.1s;
}

/* line 61, app/assets/stylesheets/_buttons.sass */
.btn-loading i:nth-child(3) {
  animation-delay: 0.2s;
}

/* line 65, app/assets/stylesheets/_buttons.sass */
.loading-after-submit.is-loading {
  gap: 8px !important;
}

/* line 67, app/assets/stylesheets/_buttons.sass */
.loading-after-submit i.dot {
  width: 6px;
  height: 6px;
  min-width: 6px;
  min-height: 6px;
  display: block;
  border-radius: 50%;
  background: red;
  animation: loading-dot 0.6s var(--transition) infinite;
  opacity: 0;
}

/* line 77, app/assets/stylesheets/_buttons.sass */
.loading-after-submit i.dot:nth-child(2) {
  animation-delay: .1s;
}

/* line 79, app/assets/stylesheets/_buttons.sass */
.loading-after-submit i.dot:nth-child(3) {
  animation-delay: .2s;
}

@keyframes loading-dot {
  0% {
    opacity: 0;
  }
  50% {
    opacity: 1;
  }
  100% {
    opacity: 0;
  }
}

/* line 90, app/assets/stylesheets/_buttons.sass */
.btn-disabled {
  background-color: var(--color-disabled) !important;
  color: var(--color-on-disabled) !important;
  transform: scale(1) !important;
  pointer-events: none !important;
}

/* line 96, app/assets/stylesheets/_buttons.sass */
.btn-primary-container {
  background-color: var(--color-primary-container);
  color: var(--color-on-primary-container);
}

/* line 99, app/assets/stylesheets/_buttons.sass */
.btn-primary-container:hover {
  background-color: var(--color-primary-container--hover);
}

/* line 102, app/assets/stylesheets/_buttons.sass */
.btn-primary {
  color: var(--color-on-primary);
  background: var(--color-primary);
}

/* line 105, app/assets/stylesheets/_buttons.sass */
.btn-primary:hover {
  background: var(--color-primary--hover);
}

/* line 108, app/assets/stylesheets/_buttons.sass */
.btn-secondary {
  color: var(--color-background);
  background: var(--color-on-background);
}

/* line 111, app/assets/stylesheets/_buttons.sass */
.btn-secondary:hover {
  color: var(--color-on-primary);
  background: var(--color-primary);
}

/* line 115, app/assets/stylesheets/_buttons.sass */
.btn-alert {
  background: var(--color-danger);
  color: var(--color-on-danger);
}

/* line 119, app/assets/stylesheets/_buttons.sass */
.btn-surface {
  background-color: var(--color-secondary-container);
  color: var(--text-subtle);
}

/* line 122, app/assets/stylesheets/_buttons.sass */
.btn-surface:hover {
  background-color: var(--color-secondary-container--hover);
}

/* line 125, app/assets/stylesheets/_buttons.sass */
.btn-surface-high {
  background-color: var(--color-secondary-container-high);
}

/* line 127, app/assets/stylesheets/_buttons.sass */
.btn-surface-high:hover {
  background-color: var(--color-secondary-container-high--hover);
}

/* line 130, app/assets/stylesheets/_buttons.sass */
.btn-surface-low {
  background-color: var(--color-secondary-container-low);
}

/* line 132, app/assets/stylesheets/_buttons.sass */
.btn-surface-low:hover {
  background-color: var(--color-secondary-container-low--hover);
}

/* line 135, app/assets/stylesheets/_buttons.sass */
.btn-icononly {
  padding: 0 !important;
  aspect-ratio: 1 / 1;
  height: inherit;
  min-width: 36px;
  height: auto;
  width: 36px;
  font-size: 16px;
}

/* line 143, app/assets/stylesheets/_buttons.sass */
.btn-icononly i {
  margin: 0px;
  font-size: 20px;
}

/* line 146, app/assets/stylesheets/_buttons.sass */
.btn-icononly.btn-small {
  width: 28px;
  min-width: 28px;
}

/* line 149, app/assets/stylesheets/_buttons.sass */
.btn-icononly.btn-small i {
  font-size: 18px;
}

/* line 152, app/assets/stylesheets/_buttons.sass */
.btn-fully-rounded {
  border-radius: 50px;
}

/* line 155, app/assets/stylesheets/_buttons.sass */
.btn-circle {
  border-radius: 50%;
}

/* line 160, app/assets/stylesheets/_buttons.sass */
.js-ripple {
  transition: 0.1s var(--transition);
}

/* line 162, app/assets/stylesheets/_buttons.sass */
.js-ripple:hover {
  background: var(--color-secondary-container--hover);
}
/* line 1, app/assets/stylesheets/_inputs.sass */
::placeholder {
  color: var(--color-on-background--subtle) !important;
  opacity: .6 !important;
}

/* line 5, app/assets/stylesheets/_inputs.sass */
.s-input-field {
  width: 100%;
  border: none !important;
  position: relative;
}

/* line 10, app/assets/stylesheets/_inputs.sass */
.s-input-field.border input, .s-input-field.border textarea {
  background: transparent;
  border: 1px solid var(--color-outline);
}

/* line 13, app/assets/stylesheets/_inputs.sass */
.s-input-field.border input:hover, .s-input-field.border textarea:hover {
  background: var(--color-secondary-container);
}

/* line 15, app/assets/stylesheets/_inputs.sass */
.s-input-field label {
  margin-bottom: 6px;
  cursor: pointer;
  display: inline-block;
  font-size: 16px;
  color: var(--color-on-background);
  font-weight: 500;
}

/* line 22, app/assets/stylesheets/_inputs.sass */
.s-input-field label.hidden {
  display: none;
}

/* line 24, app/assets/stylesheets/_inputs.sass */
.s-input-field label.error {
  font-size: 14px;
  margin-top: 8px;
  margin-bottom: 0;
  display: inline-block;
}

/* line 29, app/assets/stylesheets/_inputs.sass */
.s-input-field input {
  background-color: transparent;
  border: none;
  outline: none !important;
  display: block;
  width: 100%;
  font-weight: 500;
  background-color: var(--color-secondary-container);
  color: var(--color-on-background);
  border: 1px solid transparent;
  transition: 0.2s var(--transition);
  font-size: 16px;
}

/* line 41, app/assets/stylesheets/_inputs.sass */
.s-input-field input:hover {
  background: var(--color-secondary-container--hover);
}

/* line 43, app/assets/stylesheets/_inputs.sass */
.s-input-field input:focus {
  background: transparent;
  border-color: var(--color-primary);
  box-shadow: 0px 0px 0px 4px var(--color-primary-soft);
}

/* line 47, app/assets/stylesheets/_inputs.sass */
.s-input-field textarea {
  width: 100%;
  border: none;
  transition: 0.2s var(--transition);
  outline: none;
  background: var(--color-secondary-container);
  border-radius: 14px;
  padding: 10px 16px;
  font-size: 16px;
  border: 1px solid transparent;
  resize: vertical;
  max-height: 200px;
  min-height: 100px;
  color: var(--color-on-background);
}

/* line 61, app/assets/stylesheets/_inputs.sass */
.s-input-field textarea:focus {
  background: transparent;
  border-color: var(--color-primary) !important;
  box-shadow: 0px 0px 0px 4px var(--color-primary-soft);
}

/* line 65, app/assets/stylesheets/_inputs.sass */
.s-input-field input::placeholder, .s-input-field textarea::placeholder {
  color: var(--color-on-background--subtle);
}

/* line 68, app/assets/stylesheets/_inputs.sass */
.s-input-field.has-icon input {
  padding-right: 0;
  padding-left: calc(16px + 18px + 12px);
}

/* line 71, app/assets/stylesheets/_inputs.sass */
.s-input-field.has-icon i {
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
  right: initial;
  left: 16px;
  font-size: 20px;
  color: var(--color-on-background--subtle);
}

/* line 79, app/assets/stylesheets/_inputs.sass */
.s-input-field.small {
  height: 40px;
}

/* line 81, app/assets/stylesheets/_inputs.sass */
.s-input-field.small input {
  border-radius: 8px;
  font-size: 14px;
  height: 40px;
}

/* line 86, app/assets/stylesheets/_inputs.sass */
.s-radio-box {
  display: flex;
  position: relative;
  align-items: center;
  cursor: pointer;
}

/* line 92, app/assets/stylesheets/_inputs.sass */
.s-radio-box--block.active {
  background: var(--color-secondary-container);
}

/* line 94, app/assets/stylesheets/_inputs.sass */
.s-radio-box input {
  position: absolute;
  bottom: 0;
  left: 0;
  opacity: 0;
}

/* line 99, app/assets/stylesheets/_inputs.sass */
.s-radio-box input:checked ~ .checkbox {
  background: var(--color-on-background);
}

/* line 101, app/assets/stylesheets/_inputs.sass */
.s-radio-box input:checked ~ .checkbox::after {
  display: block;
}

/* line 103, app/assets/stylesheets/_inputs.sass */
.s-radio-box .checkbox {
  border-radius: 50%;
  border: 1px solid var(--color-outline);
  display: flex;
  align-items: center;
  justify-content: center;
  position: relative;
}

/* line 110, app/assets/stylesheets/_inputs.sass */
.s-radio-box .checkbox::after {
  content: '';
  width: 10px;
  height: 10px;
  border-radius: 50%;
  background: var(--color-background);
  display: none;
}

/* line 118, app/assets/stylesheets/_inputs.sass */
.s-input-checkbox {
  display: -webkit-flex;
  display: -ms-flex;
  display: flex;
  column-gap: 8px;
  cursor: pointer;
}

/* line 124, app/assets/stylesheets/_inputs.sass */
.s-input-checkbox input {
  cursor: pointer;
  min-width: 16px;
  box-shadow: none !important;
  min-height: 16px;
  width: 16px;
  height: 16px;
  background: var(--color-secondary-container);
  background-repeat: no-repeat;
  background-size: contain;
  background-position: center;
  appearance: none;
  -webkit-appearance: none;
  -moz-appearance: none;
  border-radius: 0.25em;
  border: 1px solid var(--color-outline) !important;
  color: var(--color-on-background);
}

/* line 141, app/assets/stylesheets/_inputs.sass */
.s-input-checkbox input:active {
  background: var(--color-secondary-container) !important;
}

/* line 143, app/assets/stylesheets/_inputs.sass */
.s-input-checkbox input:checked, .s-input-checkbox input:visited, .s-input-checkbox input:focus {
  background-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 20 20'%3e%3cpath fill='none' stroke='%23fff' stroke-linecap='round' stroke-linejoin='round' stroke-width='3' d='M6 10l3 3l6-6'/%3e%3c/svg%3e");
  border-color: var(--color-primary);
  background-color: var(--color-primary);
}

/* line 147, app/assets/stylesheets/_inputs.sass */
.s-input-checkbox label {
  font-size: 13px;
  display: inline-block;
  cursor: pointer;
  font-weight: 500;
}

/* line 154, app/assets/stylesheets/_inputs.sass */
.s-input-checkbox-2 input {
  opacity: 0;
  pointer-events: none;
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
}

/* line 161, app/assets/stylesheets/_inputs.sass */
.s-input-checkbox-2 .checkbox {
  position: relative;
}

/* line 163, app/assets/stylesheets/_inputs.sass */
.s-input-checkbox-2 input:checked ~ .checkbox-wrapper {
  background: var(--color-primary);
}

/* line 166, app/assets/stylesheets/_inputs.sass */
.s-input-checkbox-2 input:checked ~ .checkbox-wrapper span {
  margin-left: calc(100% - 16px);
  background: var(--color-background);
  opacity: 1;
}

/* line 170, app/assets/stylesheets/_inputs.sass */
.s-input-checkbox-2 .checkbox-wrapper {
  cursor: pointer;
  width: 48px;
  display: flex;
  align-items: center;
  height: 24px;
  background: var(--color-secondary-container);
  border-radius: 50px;
  position: relative;
  padding: 4px;
  transition: 0.2s var(--transition);
}

/* line 181, app/assets/stylesheets/_inputs.sass */
.s-input-checkbox-2 .checkbox-wrapper span {
  display: block;
  width: 16px;
  aspect-ratio: 1 / 1;
  background: var(--color-on-background);
  opacity: .5;
  border-radius: 50%;
  transition: 0.2s var(--transition);
}

/* line 190, app/assets/stylesheets/_inputs.sass */
.s-input-checkbox-2--small .checkbox-wrapper {
  width: 40px;
  height: 22px;
}

/* line 195, app/assets/stylesheets/_inputs.sass */
.correct-answer-radio label {
  position: relative;
}

/* line 198, app/assets/stylesheets/_inputs.sass */
.correct-answer-radio label input {
  opacity: 0;
  width: 0;
  height: 0;
  position: absolute;
}

/* line 203, app/assets/stylesheets/_inputs.sass */
.correct-answer-radio label input:checked ~ .btn {
  background: var(--color-on-background);
  color: var(--color-background);
}

/* line 207, app/assets/stylesheets/_inputs.sass */
.grow-wrap {
  display: grid;
  width: 100%;
  overflow-wrap: anywhere;
}

/* line 211, app/assets/stylesheets/_inputs.sass */
.grow-wrap.bg textarea {
  background: var(--color-secondary-container);
}

/* line 213, app/assets/stylesheets/_inputs.sass */
.grow-wrap::after {
  content: attr(data-replicated-value) " ";
  white-space: pre-wrap;
  visibility: hidden;
}

/* line 217, app/assets/stylesheets/_inputs.sass */
.grow-wrap textarea {
  overflow: hidden;
  resize: none;
  background: transparent;
  outline: none;
  color: var(--color-on-background);
  border: 1px solid transparent;
  border-radius: 12px;
  transition: 0.2s var(--transition);
}

/* line 226, app/assets/stylesheets/_inputs.sass */
.grow-wrap textarea:hover {
  background: var(--color-secondary-container--hover);
}

/* line 228, app/assets/stylesheets/_inputs.sass */
.grow-wrap textarea:focus {
  background: transparent;
  border-color: var(--color-primary);
  box-shadow: 0px 0px 0px 4px var(--color-primary-soft);
}

/* line 232, app/assets/stylesheets/_inputs.sass */
.grow-wrap textarea, .grow-wrap::after {
  font: inherit;
  line-height: 1.5;
  font-size: 16px;
  padding: 16px;
  grid-area: 1 / 1 / 2 / 2;
}

/* line 239, app/assets/stylesheets/_inputs.sass */
.pell-wrapper {
  position: relative;
}

/* line 241, app/assets/stylesheets/_inputs.sass */
.pell-wrapper input {
  opacity: 0;
  width: 100%;
  pointer-events: none;
  height: 0;
  position: absolute;
  overflow: hidden;
  padding: 0;
}

/* line 250, app/assets/stylesheets/_inputs.sass */
.pell {
  border-radius: 12px;
  border: 1px solid var(--color-outline);
  overflow: hidden;
  display: flex;
  position: relative;
  flex-direction: column;
}

/* line 257, app/assets/stylesheets/_inputs.sass */
.pell-button {
  width: 32px;
  aspect-ratio: 1 / 1;
  border-radius: 6px;
  display: flex;
  align-items: center;
  justify-content: center;
}

/* line 264, app/assets/stylesheets/_inputs.sass */
.pell-button i {
  width: 100%;
  height: 100%;
  display: flex;
  align-items: center;
  justify-content: center;
}

/* line 270, app/assets/stylesheets/_inputs.sass */
.pell-button:hover {
  background: var(--color-secondary-container--hover);
}

/* line 272, app/assets/stylesheets/_inputs.sass */
.pell-button-selected {
  background: var(--color-on-background) !important;
}

/* line 274, app/assets/stylesheets/_inputs.sass */
.pell-button-selected i {
  color: var(--color-background) !important;
}

/* line 276, app/assets/stylesheets/_inputs.sass */
.pell-actionbar {
  background: var(--color-secondary-container-low);
  display: flex;
  border-bottom: 1px solid var(--color-outline);
  align-items: center;
  padding: 8px;
  height: 48px;
  gap: 2px;
}

/* line 284, app/assets/stylesheets/_inputs.sass */
.pell-content, .pell-preview {
  padding: 16px;
  outline: none;
  font-size: 18px;
}

/* line 288, app/assets/stylesheets/_inputs.sass */
.pell-content a, .pell-preview a {
  text-decoration: underline;
}

/* line 290, app/assets/stylesheets/_inputs.sass */
.pell-content ul, .pell-content ol, .pell-preview ul, .pell-preview ol {
  padding: 0 16px;
}

/* line 292, app/assets/stylesheets/_inputs.sass */
.pell-content ul, .pell-preview ul {
  list-style: disc;
}

/* line 294, app/assets/stylesheets/_inputs.sass */
.pell-content ol, .pell-preview ol {
  list-style: numeric;
}

/* line 296, app/assets/stylesheets/_inputs.sass */
.pell-content ul, .pell-content ol, .pell-preview ul, .pell-preview ol {
  margin-top: 1em;
}

/* line 299, app/assets/stylesheets/_inputs.sass */
.pell-content p ul, .pell-content p ol, .pell-preview p ul, .pell-preview p ol {
  margin-top: 0;
}

/* line 301, app/assets/stylesheets/_inputs.sass */
.pell-preview {
  order: 3;
  display: none;
}

/* line 304, app/assets/stylesheets/_inputs.sass */
.pell-preview ul, .pell-preview ol {
  margin-top: 1em;
}

/* line 307, app/assets/stylesheets/_inputs.sass */
.pell .pell-content p, .pell .pell-preview p {
  margin-top: 1em;
}

/* line 309, app/assets/stylesheets/_inputs.sass */
.pell img {
  width: 100%;
  border: 1px solid var(--color-outline);
  aspect-ratio: 1 / 1;
  border-radius: 12px;
  margin: 32px auto;
  max-width: 40%;
}

/* line 317, app/assets/stylesheets/_inputs.sass */
.pell .pell-content > :first-child, .pell .pell-preview > :first-child {
  margin-top: 0;
}

/* line 320, app/assets/stylesheets/_inputs.sass */
.pell .pell-content > :last-child, .pell .pell-preview > :last-child {
  margin-bottom: 0;
}

/* line 324, app/assets/stylesheets/_inputs.sass */
.pell p > ul, .pell p > ol {
  margin-top: 0;
}

/* line 327, app/assets/stylesheets/_inputs.sass */
.pell-button:last-child {
  margin-left: auto;
}

/* line 330, app/assets/stylesheets/_inputs.sass */
input[type="checkbox"] {
  background: var(--color-background);
  border-color: var(--color-outline);
  color: var(--color-main);
}

/* line 339, app/assets/stylesheets/_inputs.sass */
html[dir="rtl"] .s-input-checkbox-2 input:checked ~ .checkbox-wrapper span {
  margin-right: calc(100% - 16px);
  margin-left: 0;
}

/* line 344, app/assets/stylesheets/_inputs.sass */
html[dir="rtl"] .has-icon input {
  padding-left: 0;
  padding-right: calc(16px + 18px + 12px);
}

/* line 347, app/assets/stylesheets/_inputs.sass */
html[dir="rtl"] .has-icon i {
  left: initial;
  right: 16px;
}

/* line 351, app/assets/stylesheets/_inputs.sass */
html[dir="rtl"] .pell-button:last-child {
  margin-right: auto;
  margin-left: initial;
}
/* line 2, app/assets/stylesheets/_static.sass */
.s-article h1 {
  font-size: 2rem;
}

/* line 5, app/assets/stylesheets/_static.sass */
.s-article--body p {
  margin-top: 1rem;
  line-height: 1.6;
}

/* line 8, app/assets/stylesheets/_static.sass */
.s-article--body h2 {
  font-size: 1.5em;
  margin-top: 2rem;
}

/* line 11, app/assets/stylesheets/_static.sass */
.s-article--body h3 {
  font-size: 1.2em;
  margin-top: 1.5rem;
}

/* line 14, app/assets/stylesheets/_static.sass */
.s-article--body ul {
  list-style-type: disc;
}

/* line 16, app/assets/stylesheets/_static.sass */
.s-article--body ol {
  list-style-type: numerical;
}

/* line 18, app/assets/stylesheets/_static.sass */
.s-article--body strong {
  font-weight: 600;
}

/* line 20, app/assets/stylesheets/_static.sass */
.s-article--body ul, .s-article--body ol {
  display: flex;
  flex-direction: column;
  padding: 0 20px;
  margin-top: 1em;
}

/* line 25, app/assets/stylesheets/_static.sass */
.s-article--body ul li, .s-article--body ol li {
  margin-top: 1em;
  line-height: 1.6;
}

/* line 28, app/assets/stylesheets/_static.sass */
.s-article--body ul li:first-child, .s-article--body ol li:first-child {
  margin-top: 0;
}

/* line 30, app/assets/stylesheets/_static.sass */
.s-article--body a {
  text-decoration: underline;
}
/* line 1, app/assets/stylesheets/_toaster.sass */
.toastify {
  padding: 10px 16px;
  display: flex;
  align-items: center;
  column-gap: 8px;
  border-radius: 12px;
  font-size: 14px;
  z-index: 2;
  background: var(--color-on-background);
  position: fixed;
  color: var(--color-background);
  box-shadow: 0px 8px 16px rgba(0, 0, 0, 0.08);
  animation: fadeOut 0.2s var(--transition) forwards;
  margin: 0 auto;
  left: 0;
  right: 0;
  max-width: fit-content;
  max-width: -moz-fit-content;
}

/* line 19, app/assets/stylesheets/_toaster.sass */
.toastify.in-booking {
  bottom: 70px !important;
}

/* line 21, app/assets/stylesheets/_toaster.sass */
.toastify.in-dashboard {
  left: 248px !important;
}

/* line 23, app/assets/stylesheets/_toaster.sass */
.toastify i {
  font-size: 20px;
}

/* line 25, app/assets/stylesheets/_toaster.sass */
.toastify.on {
  animation: fadeIn 0.2s var(--transition) forwards;
}

@keyframes fadeIn {
  0% {
    transform: translateY(16px) scale(0.97);
    opacity: 0;
  }
  100% {
    transform: translateY(0px) scale(1);
    opacity: 1;
  }
}

@keyframes fadeOut {
  0% {
    transform: translateY(0px);
    opacity: 1;
  }
  100% {
    transform: translateY(-16px);
    opacity: 0;
  }
}
/* line 1, app/assets/stylesheets/_tooltip.sass */
.s-tooltip {
  background-color: var(--color-on-background);
  color: var(--color-background);
  font-size: 12px;
  padding: 6px 10px;
  border-radius: 8px;
  line-height: 20px;
  font-weight: 500;
  pointer-events: none;
  white-space: nowrap;
  transition: 0.2s var(--transition);
  display: flex;
  align-items: center;
  gap: 4px;
}

/* line 15, app/assets/stylesheets/_tooltip.sass */
.s-tooltip--icon {
  background: var(--color-on-background--subtle);
  width: 20px;
  height: 20px;
  font-weight: 600;
  display: flex;
  align-items: center;
  justify-content: center;
  border-radius: 4px;
}

/* line 24, app/assets/stylesheets/_tooltip.sass */
.s-tooltip--icon i {
  font-size: 16px;
}

/* line 27, app/assets/stylesheets/_tooltip.sass */
.s-tooltip[data-state="hidden"] {
  transform: scale(0.95);
  opacity: 0;
}

/* line 31, app/assets/stylesheets/_tooltip.sass */
.s-tooltip[data-state="visible"] {
  transform: scale(1);
  opacity: 1;
}
@tailwind base;
@tailwind components;
@tailwind utilities;

@layer base {
	html.light {
		--color-primary: 246deg 100% 66%;
		/* --color-primary: 0deg 0% 0%; */
		--color-on-primary: #ffffff;
		
		--color-fg-secondary: 0deg 0% 45%;
		--color-link: #157cca;

		--color-secondary-container: #f1f1f1;
		--color-secondary-container--hover: #dddddd;
		--color-secondary-container-high: #d8d8d8;
		--color-secondary-container-high--hover: #c9c9c9;
		--color-secondary-container-low: #f0f0f0;
		--color-secondary-container-low--hover: #ebebeb;
		
		--color-outline: rgba(208, 215, 222, 0.5)
	}
	html.dark {
		--color-primary: 249deg 100% 90%;
		--color-on-primary: #312a54;
		
		--color-fg-secondary: 0deg 0% 65%;
		--color-link: #60bbff;

		--color-secondary-container: #3d3c43;
		--color-secondary-container--hover: #504f56;
		/* --color-secondary-container-high: #4b494e; */
		--color-secondary-container-high: #37373a;
		--color-secondary-container-high--hover: #6e6c71;
		--color-secondary-container-low: #222222;
		--color-secondary-container-low--hover: #1b1b1b;

		--color-outline: rgba(103, 103, 103, 0.48)
	}

}

@layer components {
	select {
		background-size: 1.4em 1.4em !important;
	}	
	[dir="rtl"] {
		select {
			background-position: left .5rem center;
		}	
	}
	.border-outline {
		border-color: var(--color-outline);
	}
	::placeholder {
		color: var(--color-on-background) !important;
		opacity: .5 !important;
	}
	.btn {
		@apply font-medium px-4 cursor-pointer transition px-4 flex items-center justify-center rounded-lg text-sm active:scale-[0.98] gap-1 whitespace-nowrap;
		&:active {
			box-shadow: none !important;
		}
	}
	.btn-loading {
		@apply !bg-black/5;
		i {
			@apply bg-black/30 dark:bg-white/30
		}
	}
	.bg-background {
		background: var(--color-background);
	}
	.text-on-primary {
		color: var(--color-on-primary);
	}
	.btn i {
		font-size: 18px;
	}
	.btn-clear {
		@apply hover:bg-black/5 active:bg-black/10 text-gray-500 dark:text-gray-300 dark:hover:text-gray-100 hover:text-gray-800 dark:hover:bg-white/10 dark:active:bg-white/15
	}
	.toastify.error {
		@apply bg-red-600 text-white
	}
	context {
		@apply dark:bg-[#303030] bg-white transition border border-black/10 dark:border-white/10;
		ul {
			a, button, .context-item {
				@apply rounded-md active:scale-[0.99] hover:bg-black/5 hover:dark:bg-white/10
			}
		}
	}
	.btn-border {
		@apply border border-black/10 dark:border-white/10 hover:border-black/60 hover:shadow-lg text-gray-500 dark:text-gray-300 dark:hover:text-gray-100 hover:text-gray-800 dark:hover:border-white/60
	}
	.btn-surface {
		@apply bg-black/5 text-gray-700 hover:text-gray-800 hover:bg-black/10 dark:text-gray-300 dark:bg-white/10 dark:hover:text-gray-100 dark:hover:bg-white/15
	}
	.btn-primary {
		@apply bg-primary hover:bg-primary/90;
		color: var(--color-on-primary);
	}
	.btn-secondary {
		@apply bg-black text-white hover:bg-black/80 dark:bg-white dark:text-black dark:hover:bg-white/80
	}
	.btn-disabled {
		@apply dark:bg-white/15 bg-black/5 text-black/70 border-none;
		pointer-events: none !important;
	}
	.btn-icon {
		@apply p-0 aspect-square
	}
	.e-input, .choices__inner {
		@apply flex items-center text-[15px] !font-normal rounded-[10px] border-2 w-full border-transparent bg-black/5 hover:bg-black/10 transition focus:!border-primary focus:bg-transparent font-normal px-4 dark:bg-white/10 dark:hover:bg-white/15 dark:focus:bg-transparent;
		box-shadow: none !important;
		&:focus {
			border-color: hsl(var(--color-primary));
		}
	}
	.e-input--border {
		@apply !bg-transparent border-black/10 hover:bg-transparent hover:border-black/20 dark:border-white/10 dark:hover:border-white/40;
		box-shadow: none !important;
	}
	.bg-surface {
		@apply bg-[#aaa2b11a] dark:bg-white/10
	}

	.search-input--wrapper.active input {
		@apply dark:bg-white/20;
		background: white !important;
	}
	.search-input--wrapper input {
		@apply hover:bg-black/10;
		box-shadow: none !important;
		outline: none !important;
	}

	.s-modal-overlay .s-modal {
		@apply bg-white
	}
}
/* line 1, app/assets/stylesheets/colors/_theme.sass */
html {
  --color-main: #6252FF;
}

/* line 4, app/assets/stylesheets/colors/_theme.sass */
html.light {
  --color-background: #ffffff;
  --color-on-background: #111111;
  --color-backdrop: rgba(1,1,1,0.6);
  --color-outline: rgba(208, 215, 222, 0.5);
}

/* line 10, app/assets/stylesheets/colors/_theme.sass */
html.dark {
  --color-background: #1b1b1c;
  --color-on-background: #f6f6f6;
  --color-backdrop: rgba(1,1,1,0.8);
  --color-outline: rgba(103, 103, 103, 0.48);
}
/* line 3, app/assets/stylesheets/colors/_vars.sass */
.color-link {
  color: var(--color-link);
}

/* line 5, app/assets/stylesheets/colors/_vars.sass */
.color-error {
  color: var(--color-error);
}

/* line 7, app/assets/stylesheets/colors/_vars.sass */
.color-background {
  color: var(--color-background);
}

/* line 9, app/assets/stylesheets/colors/_vars.sass */
.color-on-background {
  color: var(--color-on-background);
}

/* line 11, app/assets/stylesheets/colors/_vars.sass */
.color-on-background--light {
  color: var(--color-on-background--light);
}

/* line 13, app/assets/stylesheets/colors/_vars.sass */
.color-on-background--subtle {
  color: var(--color-on-background--subtle);
}

/* line 15, app/assets/stylesheets/colors/_vars.sass */
.color-on-primary-container {
  color: var(--color-on-primary-container);
}

/* line 17, app/assets/stylesheets/colors/_vars.sass */
.color-primary {
  color: var(--color-primary);
}

/* line 19, app/assets/stylesheets/colors/_vars.sass */
.color-on-primary {
  color: var(--color-on-primary);
}

/* line 21, app/assets/stylesheets/colors/_vars.sass */
.color-secondary {
  color: var(--color-secondary);
}

/* line 23, app/assets/stylesheets/colors/_vars.sass */
.color-on-disabled {
  color: var(--color-on-disabled);
}

/* line 26, app/assets/stylesheets/colors/_vars.sass */
.color-difficulty--straightforward {
  color: var(--color-on-difficulty-straightforward) !important;
}

/* line 28, app/assets/stylesheets/colors/_vars.sass */
.color-difficulty--intermediate {
  color: var(--color-on-difficulty-intermediate) !important;
}

/* line 30, app/assets/stylesheets/colors/_vars.sass */
.color-difficulty--advanced {
  color: var(--color-on-difficulty-advanced) !important;
}

/* line 32, app/assets/stylesheets/colors/_vars.sass */
.color-success {
  color: var(--color-success);
}

/* line 37, app/assets/stylesheets/colors/_vars.sass */
.bg-background {
  background: var(--color-background);
}

/* line 39, app/assets/stylesheets/colors/_vars.sass */
.bg-success {
  background: var(--color-success);
}

/* line 41, app/assets/stylesheets/colors/_vars.sass */
.bg-on-background {
  background: var(--color-on-background);
}

/* line 43, app/assets/stylesheets/colors/_vars.sass */
.bg-error {
  background-color: var(--color-error-bg);
}

/* line 45, app/assets/stylesheets/colors/_vars.sass */
.bg-primary {
  background-color: var(--color-primary);
}

/* line 47, app/assets/stylesheets/colors/_vars.sass */
.bg-primary--soft {
  background-color: var(--color-primary--soft);
}

/* line 49, app/assets/stylesheets/colors/_vars.sass */
.bg-disabled {
  background-color: var(--color-disabled);
}

/* line 51, app/assets/stylesheets/colors/_vars.sass */
.bg-secondary-container {
  background-color: var(--color-secondary-container);
}

/* line 53, app/assets/stylesheets/colors/_vars.sass */
.bg-secondary-container-low {
  background-color: var(--color-secondary-container-low);
}

/* line 55, app/assets/stylesheets/colors/_vars.sass */
.bg-secondary-container-high {
  background-color: var(--color-secondary-container-high);
}

/* line 57, app/assets/stylesheets/colors/_vars.sass */
.bg-surface--main {
  background-color: var(--color-surface--main);
}

/* line 60, app/assets/stylesheets/colors/_vars.sass */
.bg-difficulty--straightforward {
  background: var(--color-difficulty-straightforward);
}

/* line 62, app/assets/stylesheets/colors/_vars.sass */
.bg-difficulty--intermediate {
  background: var(--color-difficulty-intermediate);
}

/* line 64, app/assets/stylesheets/colors/_vars.sass */
.bg-difficulty--advanced {
  background: var(--color-difficulty-advanced);
}
/*
 * This is a manifest file that'll be compiled into application.css, which will include all the files
 * listed below.
 *
 * Any CSS and SCSS file within this directory, lib/assets/stylesheets, or any plugin's
 * vendor/assets/stylesheets directory can be referenced here using a relative path.
 *
 * You're free to add application-wide styles to this file and they'll appear at the bottom of the
 * compiled file so the styles you add here take precedence over styles defined in any other CSS/SCSS
 * files in this directory. Styles in this file should be added after the last require_* statement.
 * It is generally better to create a new file per style scope.
 *


 */
@font-face {
  font-family: 'Satoshi';
  src: url(/assets/Satoshi-Bold-ff7fd901b0ae366df2ca425ea072070e125a6fdcfda455f05a49e0ee63ab8999.eot) format("eot"), url(/assets/Satoshi-Bold-943bb721fae14c7b658328344088714fd32ba172ef85db0ae8f7b81641c69a77.woff) format("woff"), url(/assets/Satoshi-Bold-8e291ef2197007f7713ddefafadd937837921da07d76304b324a3a82cc95fdc1.woff2) format("woff2"), url(/assets/Satoshi-Bold-c397e18e14b3cbbca18a8edabe483e36790d6a4c8026d15a7cc2d66c3a23c5bd.ttf) format("ttf");
  font-weight: bold;
  font-style: normal;
}

/* line 23, app/assets/stylesheets/application.sass */
html {
  font-family: 'Inter', 'Heebo' !important;
}

/* line 26, app/assets/stylesheets/application.sass */
html *, * {
  letter-spacing: -0.01em;
}

/* line 29, app/assets/stylesheets/application.sass */
body {
  background: var(--color-background);
  color: var(--color-on-background);
  --transition: cubic-bezier(0.4, 0.0, 0.2, 1);
}

/* line 40, app/assets/stylesheets/application.sass */
html[dir="rtl"] h1, html[dir="rtl"] h2, html[dir="rtl"] h3, html[dir="rtl"] h4, html[dir="rtl"] h5 {
  font-family: inherit;
}

/* line 43, app/assets/stylesheets/application.sass */
.gs-text {
  display: inline-block;
}

/* line 46, app/assets/stylesheets/application.sass */
.gs--up, .gs--course-card {
  opacity: 0;
  transform: translate3d(0, 24px, 0);
}

/* line 50, app/assets/stylesheets/application.sass */
.nav-top.scrolled {
  box-shadow: 0px 0px 48px rgba(1, 1, 1, 0.06);
  border-bottom: 1px solid var(--color-outline);
}

/* line 55, app/assets/stylesheets/application.sass */
.logo svg {
  width: auto;
  height: 21px;
}

/* line 58, app/assets/stylesheets/application.sass */
.logo svg path {
  fill: var(--color-on-background);
}

/* line 61, app/assets/stylesheets/application.sass */
.ms-filled {
  font-variation-settings: 'FILL' 1;
}

/* line 65, app/assets/stylesheets/application.sass */
html[dir="rtl"] .ms-rtl {
  -moz-transform: scaleX(-1);
  -o-transform: scaleX(-1);
  -webkit-transform: scaleX(-1);
  transform: scaleX(-1);
  filter: FlipH;
  -ms-filter: "FlipH";
}

/* line 73, app/assets/stylesheets/application.sass */
.katex-display, .katex {
  direction: ltr;
}

/* line 76, app/assets/stylesheets/application.sass */
.katex {
  display: inline-block;
}

/* line 79, app/assets/stylesheets/application.sass */
.s-cookies-banner {
  background: var(--color-on-background);
  position: fixed;
  bottom: 24px;
  left: 24px;
  z-index: 1;
  max-width: 360px;
  width: calc(100% - 48px);
  padding: 20px;
  gap: 20px;
  display: flex;
  align-items: center;
  border-radius: 16px;
  opacity: 0;
  transform: translate3d(0px, 24px, 0);
}

/* line 94, app/assets/stylesheets/application.sass */
.s-cookies-banner p {
  font-size: 14px;
  color: var(--color-background);
  opacity: .9;
}

/* line 98, app/assets/stylesheets/application.sass */
.s-cookies-banner .btn {
  font-size: 14px;
}

/* line 103, app/assets/stylesheets/application.sass */
.s-accordion .arrow {
  transition: 0.1s var(--transition);
}

/* line 106, app/assets/stylesheets/application.sass */
.s-accordion.active .arrow {
  transform: rotate(180deg);
}

/* line 108, app/assets/stylesheets/application.sass */
.s-accordion.active .s-accordion--body {
  grid-template-rows: 1fr;
}

/* line 110, app/assets/stylesheets/application.sass */
.s-accordion--body {
  grid-template-rows: 0fr;
  overflow: hidden;
  display: grid;
  transition: 0.2s var(--transition);
}

/* line 115, app/assets/stylesheets/application.sass */
.s-accordion--body .inner {
  min-height: 0;
}

/* line 118, app/assets/stylesheets/application.sass */
.circular-progress {
  --size: 128px;
  --half-size: calc(var(--size) / 2);
  --stroke-width: 8px;
  --radius: calc((var(--size) - var(--stroke-width)) / 2);
  --circumference: calc(var(--radius) * pi * 2);
  --dash: calc((var(--progress) * var(--circumference)) / 100);
}

/* line 125, app/assets/stylesheets/application.sass */
.circular-progress circle {
  cx: var(--half-size);
  cy: var(--half-size);
  r: var(--radius);
  stroke-width: var(--stroke-width);
  fill: none;
  stroke-linecap: round;
}

/* line 132, app/assets/stylesheets/application.sass */
.circular-progress circle.fg {
  transform: rotate(-90deg);
  transform-origin: var(--half-size) var(--half-size);
  stroke-dasharray: var(--dash) calc(var(--circumference) - var(--dash));
}

@media (max-width: 768px) {
  /* line 138, app/assets/stylesheets/application.sass */
  .gs--up {
    opacity: 1;
    transform: none;
  }
}
