%entry,
entry {
  %entry_basic, & {
    min-height: 34px;
    padding-left: 9px;
    padding-right: 9px;
    border-radius: $button_radius;
    border-spacing: 6px;
    background-color: $button_color;
    background-clip: padding-box;
    caret-color: currentColor;

    @media (prefers-contrast: more) {
      box-shadow: inset 0 0 0 1px $border_color;
    }

    @include focus-ring($focus-state: ':focus-within');

    > text {
      > placeholder {
        @extend .dimmed;
      }

      > block-cursor {
        color: var(--view-bg-color);
        background-color: var(--view-fg-color);
      }
    }

    &.flat {
      &:focus-within, &:disabled, & {
        min-height: 0;
        padding: 2px;
        background-color: transparent;
        box-shadow: none;
        border-radius: 0;
      }
    }

    &:disabled { filter: Opacity(var(--disabled-opacity)); }

    > image { // icons inside the entry
      opacity: 70%;

      @media (prefers-contrast: more) {
        opacity: 85%;
      }

      &:hover { opacity: 100%; }

      &:active {
        opacity: 80%;

        @media (prefers-contrast: more) {
          opacity: 90%;
        }
      }

      &.left { margin-right: 6px; }
      &.right { margin-left: 6px; }
    }

    &.password image.caps-lock-indicator {
      opacity: $dimmer_opacity;

      @media (prefers-contrast: more) {
        opacity: $dimmer_opacity_hc;
      }
    }

    &:drop(active) {
      &:focus-within, & {
        border-color: $drop_target_color;
        box-shadow: inset 0 0 0 1px $drop_target_color;
      }
    }
  }

  > progress {
    margin-bottom: 3px;

    > trough {
      min-height: 2px;

      > progress {
        background-color: transparent;
        background-image: none;
        border-radius: 0;
        border-width: 0 0 2px;
        border-color: var(--accent-bg-color);
        border-style: solid;
        box-shadow: none;
      }
    }
  }
}
