.App {
  text-align: center;
  margin: 20px;
  font-size: 16px;
  box-sizing: border-box;

  .flex {
    display: flex;
  }

  .flex-col {
    flex-direction: column;
  }
  .flex-1 {
    flex: 1;
  }

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

  .align-self-baseline {
    align-self: baseline;
  }

  .justify-content-center {
    justify-content: center;
  }
  .text-align-left {
    text-align: left;
  }

  .cursor-pointer {
    cursor: pointer;
  }

  .flex-container {
    display: flex;
    flex-direction: column;
    flex-wrap: wrap;
  }
  .wide-100 {
    width: 100%;
  }
  .flex-item {
    flex: 1;
    margin: 10px 0;
    word-break: break-word;
    padding: 10px;
  }

  .p-10 {
    padding: 10px;
  }

  button {
    padding: 5px;
    margin: 5px;
    height: 40px;
    cursor: pointer;
    text-align: center;
    min-width: 100px;
    font-size: 20px;
    font-weight: bold;
  }

  textarea {
    resize: none;
  }

  label,
  legend {
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    margin: 5px;
    color: #343a40;
    font-size: 20px;
    font-weight: bold;
  }

  textarea,
  input {
    font-size: 20px;
    color: #868e96;
    font-weight: bold;
    border: none;
    border-radius: 0.25rem;
    box-shadow: 0 0 0 1px #aaa;
  }

  input[type="radio"] {
    margin: 5px;
    box-shadow: none;
  }

  .error {
    color: red;
    font-weight: bold;
    font-size: 26px;
    display: block;
  }

  .readonly {
    background: #343a40;
    color: white;
    font-size: 20px;
    margin: 20px 0;
    width: 100%;
    max-height: 330px;
    min-height: 130px;
    overflow-y: auto;
    text-align: left;
    display: flex;
    align-items: center;
    justify-content: space-between;
    font-weight: bold;
  }

  .hide {
    display: none;
  }

  .copy {
    background: #faa2c1;
  }

  .encrypt,
  .decrypt {
    background: none;
    border: none;
    font-size: 20px;
    padding: 5px;
    margin: 5px;
    font-weight: bold;
    width: 140px;
    &.active {
      border-bottom: 3px solid #1971c2;
    }
  }
  .switch-view {
    align-self: flex-start;
  }

  .encrypt-btn,
  .decrypt-btn {
    background: #1971c2;
    color: white;
    font-size: 20px;
    border: none;
  }
  .encrypted-data {
    word-break: break-word;
  }

  .decrypt-text {
    font-size: 46px;
    font-weight: bold;
    color: #1c7ed6;
  }

  .aes-options {
    border: none;
    /* width: 50%; */
    display: flex;
    justify-content: center;
    text-align: center;
    /* padding: 0px; */
    margin-top: 15px;

    label {
      color: #099268;
    }
  }
}
