.amplify-storage-browser {
  display: flex;
  flex-direction: column;
  align-items: stretch;
  height: 100%;
  position: relative;
  padding: var(--amplify-space-small);
  gap: var(--amplify-space-small);
  /* Error boundary */
}
.amplify-storage-browser__error {
  background-color: var(--amplify-colors-background-error);
  color: var(--amplify-colors-font-error);
  padding: var(--amplify-space-medium);
}
.amplify-storage-browser__navigation, .amplify-storage-browser__exit {
  align-self: flex-start;
}
.amplify-storage-browser__title {
  font-weight: var(--amplify-font-weights-bold);
  font-size: var(--amplify-font-sizes-large);
}
.amplify-storage-browser__controls, .amplify-storage-browser__summary, .amplify-storage-browser__footer {
  display: flex;
  flex-direction: row;
  align-items: center;
  justify-content: space-between;
  width: 100%;
  gap: var(--amplify-space-medium);
}
.amplify-storage-browser__footer {
  justify-content: flex-end;
}
.amplify-storage-browser__search {
  display: flex;
  flex-direction: row;
  flex: 1;
  gap: var(--amplify-space-small);
}
.amplify-storage-browser__drop-zone {
  flex: 1;
  overflow: hidden;
  position: relative;
  width: 100%;
  display: block;
}
.amplify-storage-browser__data-table {
  overflow: auto;
  position: relative;
  border-width: var(--amplify-border-widths-small);
  border-style: solid;
  border-color: var(--amplify-colors-border-primary);
  border-radius: var(--amplify-radii-small);
  width: 100%;
  height: 100%;
  display: block;
}
.amplify-storage-browser__table {
  width: 100%;
  position: relative;
}
.amplify-storage-browser__table-head {
  position: sticky;
  top: 0;
  background: var(--amplify-colors-background-primary);
  box-shadow: var(--amplify-shadows-small);
  z-index: 2;
}
.amplify-storage-browser__table-row_active {
  background-color: var(--amplify-colors-background-info);
}
.amplify-storage-browser__table-header {
  border: none;
  padding: var(--amplify-space-xxxs);
}
.amplify-storage-browser__table-data-cell {
  padding: var(--amplify-space-xxxs);
}
.amplify-storage-browser__table-data-cell:first-child, .amplify-storage-browser__table-data-cell:last-child {
  border-inline-start-width: 0;
  border-inline-end-width: 0;
}
.amplify-storage-browser__table-data-cell-icon {
  vertical-align: middle;
  margin-inline-end: var(--amplify-space-xs);
}
.amplify-storage-browser__table-header--select, .amplify-storage-browser__table-data--select, .amplify-storage-browser__table-header--download, .amplify-storage-browser__table-data--download, .amplify-storage-browser__table-data--cancel {
  text-align: center;
}
.amplify-storage-browser__table-data--size, .amplify-storage-browser__table-header--size {
  text-align: end;
}
.amplify-storage-browser__table-button-data-cell, .amplify-storage-browser__table-date-data-cell, .amplify-storage-browser__table-number-data-cell, .amplify-storage-browser__table-text-data-cell, .amplify-storage-browser__table-sort-header {
  display: flex;
  width: 100%;
  gap: var(--amplify-space-xxs);
  padding: var(--amplify-space-xxs);
  text-overflow: ellipsis;
  overflow: hidden;
  white-space: nowrap;
  align-items: center;
  justify-content: flex-start;
}
.amplify-storage-browser__table-button-data-cell-icon--action-progress, .amplify-storage-browser__table-date-data-cell-icon--action-progress, .amplify-storage-browser__table-number-data-cell-icon--action-progress, .amplify-storage-browser__table-text-data-cell-icon--action-progress, .amplify-storage-browser__table-sort-header-icon--action-progress {
  animation-name: amplify-loader-circular;
  animation-timing-function: linear;
  animation-iteration-count: infinite;
  animation-duration: var(--amplify-components-loader-animation-duration);
}
.amplify-storage-browser__status {
  display: flex;
  flex-direction: row;
  gap: var(--amplify-space-xs);
  align-items: center;
}
.amplify-storage-browser__status-display {
  display: flex;
  flex-direction: row;
  justify-content: flex-end;
  align-items: center;
  gap: var(--amplify-space-small);
  flex: 1;
}
.amplify-storage-browser__status-label {
  font-weight: var(--amplify-font-weights-bold);
}
.amplify-storage-browser__status-value {
  color: var(--amplify-colors-font-secondary);
}
.amplify-storage-browser__destination {
  display: flex;
  flex-direction: row;
  gap: var(--amplify-space-xs);
  align-items: center;
}
.amplify-storage-browser__destination-label {
  font-weight: var(--amplify-font-weights-bold);
}
.amplify-storage-browser__message {
  flex: 1;
}
.amplify-storage-browser__buttons {
  justify-content: flex-end;
  display: flex;
  gap: var(--amplify-space-small);
}
.amplify-storage-browser__loader {
  position: absolute;
  stroke-width: var(--amplify-border-widths-large);
  height: var(--amplify-border-widths-large);
  top: 0;
  z-index: 3;
}
.amplify-storage-browser__content-with-preview {
  display: flex;
  height: 100%;
}
.amplify-storage-browser__file-preview {
  overflow: auto;
  flex: 1;
  width: 50%;
  position: sticky;
  top: 10px;
  bottom: 10px;
  height: -moz-fit-content;
  height: fit-content;
  max-height: calc(100svh - 20px);
  padding: var(--amplify-space-medium);
  border: var(--amplify-border-widths-small) solid var(--amplify-colors-border-primary);
  border-radius: var(--amplify-radii-small);
  margin-inline-start: var(--amplify-space-large);
  padding-block-end: var(--amplify-space-large);
}
.amplify-storage-browser__file-preview-header {
  margin-block-end: var(--amplify-space-medium);
  display: flex;
  justify-content: flex-end;
}
.amplify-storage-browser__file-preview-container {
  display: flex;
  flex-direction: column;
  gap: var(--amplify-space-large);
}
.amplify-storage-browser__file-preview-content {
  display: flex;
  flex-direction: column;
  gap: var(--amplify-space-large);
  align-items: center;
}
.amplify-storage-browser__file-preview-section {
  display: flex;
  flex-direction: column;
  min-height: 400px;
  flex: 1;
}
.amplify-storage-browser__file-preview-title {
  margin-block-end: var(--amplify-space-medium);
  color: var(--amplify-colors-font-primary);
  font-size: var(--amplify-font-sizes-large);
  font-weight: var(--amplify-font-weights-semibold);
  flex-shrink: 0;
}
.amplify-storage-browser__file-metadata {
  display: grid;
  gap: var(--amplify-space-small);
  background-color: var(--amplify-colors-background-secondary);
  padding: var(--amplify-space-medium);
  border-radius: var(--amplify-radii-small);
  border: var(--amplify-border-widths-small) solid var(--amplify-colors-border-secondary);
}
.amplify-storage-browser__file-metadata-item {
  display: flex;
  justify-content: space-between;
  align-items: center;
  padding-block: var(--amplify-space-xs);
  border-block-end: var(--amplify-border-widths-small) solid var(--amplify-colors-border-secondary);
}
.amplify-storage-browser__file-metadata-item:last-child {
  border-block-end: none;
}
.amplify-storage-browser__file-metadata-label {
  font-weight: var(--amplify-font-weights-medium);
  color: var(--amplify-colors-font-primary);
  margin: 0;
}
.amplify-storage-browser__file-metadata-value {
  color: var(--amplify-colors-font-secondary);
  margin: 0;
  word-break: break-all;
  text-align: end;
  max-width: 60%;
}
.amplify-storage-browser__preview-fallback {
  width: 100%;
  height: 400px;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  gap: var(--amplify-space-medium);
  background-color: var(--amplify-colors-background-secondary);
  border: var(--amplify-border-widths-small) dashed var(--amplify-colors-border-secondary);
  border-radius: var(--amplify-radii-small);
  padding: var(--amplify-space-large);
  text-align: center;
}
.amplify-storage-browser__preview-fallback--error {
  color: var(--amplify-colors-font-error);
  background-color: var(--amplify-colors-background-error);
  border-color: var(--amplify-colors-border-error);
}
.amplify-storage-browser__preview-fallback--default {
  color: var(--amplify-colors-font-secondary);
  background-color: var(--amplify-colors-background-secondary);
  border-color: var(--amplify-colors-border-secondary);
}
.amplify-storage-browser__preview-fallback-icon {
  font-size: var(--amplify-font-sizes-xxxxl);
  margin-block-end: var(--amplify-space-xs);
}
.amplify-storage-browser__preview-fallback-title {
  font-weight: var(--amplify-font-weights-bold);
  font-size: var(--amplify-font-sizes-large);
  margin-block-end: var(--amplify-space-xs);
}
.amplify-storage-browser__preview-fallback-description {
  font-size: var(--amplify-font-sizes-small);
  margin-block-end: var(--amplify-space-xs);
}
.amplify-storage-browser__preview-fallback-filename {
  font-size: var(--amplify-font-sizes-xs);
  font-family: var(--amplify-fonts-monospace), monospace;
}
.amplify-storage-browser__preview-fallback-actions {
  display: flex;
  gap: var(--amplify-space-small);
  flex-wrap: wrap;
  justify-content: center;
}
.amplify-storage-browser__preview-placeholder {
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  gap: var(--amplify-space-medium);
  height: 400px;
  width: 100%;
}
.amplify-storage-browser__preview-placeholder-content {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: var(--amplify-space-small);
  width: 100%;
}
.amplify-storage-browser__preview-placeholder-info {
  color: var(--amplify-colors-font-secondary);
  font-size: var(--amplify-font-sizes-small);
  text-align: center;
}
.amplify-storage-browser__text-container {
  display: flex;
  flex-flow: column nowrap;
  gap: 8px;
  align-items: center;
}
.amplify-storage-browser__text-preview {
  height: 400px;
  width: 100%;
  display: block;
  background-color: var(--amplify-colors-background-secondary);
  border: var(--amplify-border-widths-small) solid var(--amplify-colors-border-secondary);
  border-radius: var(--amplify-radii-small);
  padding: var(--amplify-space-medium);
  font-family: var(--amplify-fonts-monospace), monospace;
  font-size: var(--amplify-font-sizes-small);
  line-height: 1.5;
  overflow-y: auto;
  word-wrap: break-word;
  white-space: pre-wrap;
  word-break: break-word;
}
.amplify-storage-browser__video-container {
  display: flex;
  flex-flow: column nowrap;
  gap: 8px;
  align-items: center;
}
.amplify-storage-browser__video-preview {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 100%;
  height: 400px;
  border-radius: var(--amplify-radii-small);
  background-color: var(--amplify-colors-background-secondary);
  flex-shrink: 0;
}
.amplify-storage-browser__video-preview video {
  max-width: 100%;
  max-height: 100%;
  width: auto;
  height: auto;
  -o-object-fit: contain;
     object-fit: contain;
}
.amplify-storage-browser__image-container {
  display: flex;
  flex-flow: column nowrap;
  gap: 8px;
  align-items: center;
}
.amplify-storage-browser__image-preview {
  display: flex;
  align-items: center;
  justify-content: center;
  height: 400px;
  width: 100%;
  background-color: var(--amplify-colors-background-secondary);
  border-radius: var(--amplify-radii-small);
  flex-shrink: 0;
  flex-flow: column nowrap;
  gap: 8px;
}
.amplify-storage-browser__image-preview img {
  max-width: 100%;
  max-height: 100%;
  width: auto;
  height: auto;
  -o-object-fit: contain;
     object-fit: contain;
  border-radius: var(--amplify-radii-small);
}
.amplify-storage-browser__download-button {
  display: flex;
  flex-flow: row nowrap;
  gap: 8px;
}
.amplify-storage-browser__download-button_icon {
  animation-delay: 0s;
  animation-direction: normal;
  animation-duration: 1s;
  animation-iteration-count: infinite;
  animation-timing-function: linear;
  animation-name: spin;
}

@keyframes spin {
  0% {
    transform: rotate(0deg);
  }
  50% {
    transform: rotate(180deg);
  }
  100% {
    transform: rotate(360deg);
  }
}