.h5p-blanks {
  position: relative;
}
.h5p-blanks .h5p-input-wrapper {
  display: inline-flex;
  position: relative;
  align-items: center;
  vertical-align: middle;
}
.h5p-blanks .h5p-text-input {
  font-family: var(--h5p-theme-font-name);
  font-size: var(--h5p-theme-font-size-m);
  border-radius: var(--h5p-theme-border-radius-medium);
  background-color: var(--h5p-theme-ui-base);
  border: 2px solid var(--h5p-theme-alternative-darker);
  padding: calc(var(--h5p-theme-spacing-xs) / 2) 0 calc(var(--h5p-theme-spacing-xs) / 2) var(--h5p-theme-spacing-xxs);
  text-overflow: ellipsis;
  overflow: hidden;
  white-space: nowrap;
  color: var(--h5p-theme-text-primary);
  min-width: 6em;
  /* Incase we have empty input we want the height to be equal
    to the font-size multipled with the line-height. */
  min-height: calc(var(--h5p-theme-font-size-m) * 1.2);
  font-weight: 600;
}
.h5p-blanks .h5p-text-input:focus-visible {
  box-shadow: 0 0 0.5em 0 var(--h5p-theme-contrast-cta-white) !important;
  border-color: var(--h5p-theme-contrast-cta-white) !important;
  outline: 1px ridge var(--h5p-theme-contrast-cta-white) !important;
}
.h5p-blanks .h5p-text-input:disabled {
  opacity: 1;
}
.h5p-blanks .h5p-text-input.h5p-not-filled-out {
  background: #fff0f0;
}
.h5p-blanks .h5p-separate-lines .h5p-input-wrapper {
  display: block;
}
.h5p-blanks .h5p-separate-lines .h5p-text-input {
  width: 100%;
  box-sizing: border-box;
  -moz-box-sizing: border-box;
}

/* Correctly answered input */
.h5p-blanks .h5p-correct .h5p-text-input {
  background: var(--h5p-theme-feedback-correct-secondary);
  border: 2px solid var(--h5p-theme-feedback-correct-third);
  color: var(--h5p-theme-feedback-correct-main);
  font-weight: bold;
  padding-right: var(--h5p-theme-spacing-m);
}
/* Showing solution */
.h5p-blanks .h5p-correct-answer {
  color: var(--h5p-theme-feedback-correct-main);
  font-weight: bold;
  border: 2px var(--h5p-theme-feedback-correct-main) dashed;
  background-color: var(--h5p-theme-feedback-correct-secondary);
  padding: calc(var(--h5p-theme-spacing-xs) / 2);
  border-radius: var(--h5p-theme-border-radius-medium);
  margin-left: .5em;
  display: inline-flex;
  line-height: normal;
}

.h5p-blanks .h5p-correct:after {
  position: absolute;
  right: var(--h5p-theme-spacing-xxs);
  text-decoration: none;
  font-family: 'h5p-theme';
  content: "\e903";
  color: var(--h5p-theme-feedback-correct-main);
}

/* Wrongly answered input */
.h5p-blanks .h5p-wrong .h5p-text-input {
  color: var(--h5p-theme-feedback-incorrect-main);
  background-color: var(--h5p-theme-feedback-incorrect-secondary);
  border: solid 2px var(--h5p-theme-feedback-incorrect-third);
  font-weight: bold;
  padding-right: var(--h5p-theme-spacing-m);
}
.h5p-blanks .h5p-wrong:after {
  position: absolute;
  right: var(--h5p-theme-spacing-xxs);
  font-family: 'h5p-theme';
  content: "\e902";
  text-decoration: none;
  color: var(--h5p-theme-feedback-incorrect-main);
}

/* Actual text paragraphs */

.h5p-blanks .h5p-question-content p {
  color: var(--h5p-theme-text-secondary);
  margin: 0;
  font-size: var(--h5p-theme-font-size-m);
}

.h5p-blanks .h5p-question-content { 
  background-color: var(--h5p-theme-alternative-light);
  color: var(--h5p-theme-text-secondary);
  border: solid 1px var(--h5p-theme-alternative-base);
  border-radius: var(--h5p-theme-border-radius-medium);
  font-weight: 500;
  margin: 0 var(--h5p-theme-spacing-m);
}

.h5p-blanks .h5p-question-content {
  padding: 0 var(--h5p-theme-spacing-s);
  line-height: var(--h5p-theme-spacing-xl);
}

/* Header and footer blocks (title + evaluation, buttons) */
.h5p-blanks .joubel-tip-container {
  position: absolute;
  right: 0.4em;
  font-size: var(--h5p-theme-font-size-m);
}
.h5p-blanks .joubel-tip-container .joubel-icon-tip-normal {
  line-height: 1em;
}
.h5p-blanks .has-tip .h5p-text-input {
  padding-right: 2.25em;
}
.h5p-blanks .has-tip.h5p-correct:after,
.h5p-blanks .has-tip.h5p-wrong:after {
  right: 2.25em;
}
.h5p-blanks .has-tip.h5p-correct .h5p-text-input,
.h5p-blanks .has-tip.h5p-wrong .h5p-text-input {
  padding-right: 3.5em;
}
.h5p-blanks .hidden-but-read {
  position: absolute;
  height: 0;
  width: 0;
  overflow: hidden;
}

.h5p-no-frame > .h5p-theme.h5p-blanks > .h5p-question-main-content > .h5p-question-content {
  padding-left: var(--h5p-theme-spacing-s);
  padding-right: var(--h5p-theme-spacing-s);
}