* {
  margin: 0;
  padding: 0;
  box-sizing: border-box;
}

body {
  font-family: "Open Sans", system-ui, -apple-system, BlinkMacSystemFont,
    "Segoe UI", Roboto, Oxygen, Ubuntu, Cantarell, "Open Sans", "Helvetica Neue",
    sans-serif;
  background-color: #fff;
  color: black;
  line-height: 1.5;
}

.container {
  max-width: 1200px;
  margin: 0 auto;
  background-color: white;
  min-height: 100vh;
}

/* Header */
.header {
  border-bottom: 1px solid rgb(163, 163, 163);
  padding: 16px 24px;
}

.header-content {
  display: flex;
  align-items: center;
  justify-content: space-between;
}

.logo {
  font-size: 22px;
  font-weight: 400;
  display: flex;
  align-items: center;
}

.google-g {
  color: blue;
}
.google-o1 {
  color: red;
}
.google-o2 {
  color: yellow;
}
.google-l {
  color: darkgreen;
}
.google-e {
  color: red;
}
.traductor {
  color: rgb(59, 59, 59);
  margin-left: 5px;
}

/* Selectores */

.icon-button {
  display: flex;
  align-items: center;
  border: 0;
  background: none;
  cursor: pointer;
  border-radius: 50%;
  transition: background-color 0.2s, transform 0.2s;
  padding: 6px;

  &:hover {
    background: rgb(226, 225, 225);
  }
  &:active {
    scale: 0.9s;
  }
}

.language-selection {
  display: flex;
  align-items: center;
  justify-content: center;
  padding: 20px;
  gap: 16px;
}

.source-language,
.target-language {
  flex: 1;
  max-width: 200px;
}

select {
  width: 100%;
  padding: 12px 16px;
  border-radius: 8px;
  border: 1px solid gray;
  font-size: 14px;
  color: black;
  cursor: pointer;
  transition: border-color 0.2s;

  &:hover {
    border-color: black;
  }
  &:focus {
    outline: none;
    border-color: rgb(0, 140, 255);
    box-shadow: 0 0 0 2px rgb(0, 140, 255);
  }
}

/* Translation Area */

.translation-area {
  display: flex;
  height: 400px;
  border: 1px solid gray;
  border-radius: 3px;
}
.input-section,
.output-section {
  flex: 1;
  display: flex;
  flex-direction: column;
}
.input-section {
  border-right: 1px solid gray;
}
.textarea-container {
  flex: 1;
  display: flex;
  flex-direction: column;
  position: relative;
}
#inputText {
  flex: 1;
  border: 0;
  padding: 24px;
  font: inherit;
  font-size: 16px;
  resize: none;
  outline: none;
}
#outputText {
  flex: 1;
  padding: 24px;
  font-size: 16px;
  background-color: lightgray;
  overflow-y: auto;
  &:empty::before {
    content: "Traducción";
    color: rgb(58, 58, 58);
  }
}
.input-controls,
.output-controls {
  display: flex;
  justify-content: space-between;
  padding: 12px;
  align-items: center;
  border-top: 1px solid gray;
}
.output-controls {
  background-color: lightgray;
}
