:root {
  --file-container-bg: #eeeeee;
  --file-bg: #f8f8f8;
  --file-border-color: #606060;
  --file-rounded: 15px;
  --file-color: #2b2b2b;
  --table-border-color: #dbdbdb;
  --delete-button-bg: #f53636;
  --delete-button-color: #ffffff;
  --font-size: 0.875em;
  --font-family: "Segoe UI", Tahoma, Geneva, Verdana, sans-serif;
  --shadow: 0px 8px 15px -8px rgba(0, 0, 0, 0.5);
}

* {
  margin: 0;
  padding: 0;
  box-sizing: border-box;
}

.file-container {
  width: 100%;
  font-family: var(--font-family);

  .file-upload {
    width: 100%;
    display: flex;
    transition: all 0.3s;

    > div {
      width: 100%;
      padding: 10px;
      border: 1px solid #deebf7;
      text-align: center;
      cursor: pointer;

      > p,
      span,
      div {
        font-size: 16px;
        color: #7d7d7d;
      }

      span.file-upload-hyperlink {
        text-decoration: underline;
      }

      p.file-upload-instruction {
        line-height: 30px;
      }

      p.file-upload-rules {
        font-size: 12px;
      }

      > div {
        width: max-content;
        padding: 0 10px;
        margin: 0 auto;
        border: 1px solid var(--file-border-color);
        border-radius: 8px;
      }
    }
  }
}

.file-container .file-item {
  display: flex;
  align-items: center;
  justify-content: space-between;
  padding: 10px;
  border: 1px solid var(--file-border-color);
  border-radius: 5px;
}

.file-list-container {
  display: none;
  display: flex;
  flex-direction: column;
  gap: 10px;
}

.error-messages {
  color: red;
  margin-top: 10px;
  font-size: 14px;
  font-style: italic;
}
