/*
 * SPDX-FileCopyrightText: 2025 Land Baden-Württemberg <InnoLab@stm.bwl.de>
 *
 * SPDX-License-Identifier: MPL-2.0
 */

html,
body {
  position: relative;
  width: 100%;
  height: 100%;
  --main-color: #b2b2b2;
  --sec-color: black;
  --bg-color: #f2f2f2;
}

*,
*::before,
*::after {
  box-sizing: border-box;
}

body {
  background-color: white;
  color: black;
  margin: 0;
  padding: 0px;
  box-sizing: border-box;
  font-family: "MainFont_Regular", Arial, Helvetica, sans-serif;
}

main {
  text-align: center;
  justify-content: center;
  margin: 0 auto 50px;
  padding-top: 0px;
  padding-left: 0px !important;
  padding-right: 0px !important;
}

.container {
  display: grid;
  text-align: center;
  justify-content: center;
  width: 100%;
  max-width: none;
}

.container_grey {
  background-color: var(--bg-color);
  height: 140px;
  padding: 20px;
}

.header_grey {
  background-color: var(--bg-color);
  height: 50px;
  display: flex;
  align-items: center;
  padding: 20px;
  justify-content: space-between;
}

.header_grey_text {
  display: flex;
  justify-content: left;
  gap: 10px;
  align-items: baseline;
}

.container_yellow {
  display: grid;
  gap: 10px;
  height: fit-content;
  padding: 0 20px 30px 20px;
  margin-bottom: 200px;
  background-color: var(--bg-color);
}

.collapse_container {
  display: flex;
  flex-direction: column;
  width: 100%;
  gap: 5px;
}

.grid_center {
  display: grid;
  justify-content: center;
  text-align: center;
}

.uc {
  text-transform: uppercase;
}

input,
button,
select,
textarea {
  font-family: inherit;
  font-size: inherit;
  -webkit-padding: 0.4rem 0;
  padding: 0.4rem;
  margin: 0 0 0.5rem 0;
  box-sizing: border-box;
  border-radius: 0px !important;
}

::placeholder {
  color: #666;
  opacity: 1;
}

input:disabled {
  color: #ccc;
}

.policy_and_terms {
  font-size: 1.2rem !important;
  text-decoration: underline;
  cursor: pointer;
}

h1 {
  font-size: 1.2rem;
  line-height: 1.5rem !important;
  font-weight: 700;
  font-family: "MainFont_Bold", Arial, Helvetica, sans-serif;
}

h2 {
  font-weight: 700;
  font-family: "MainFont_Bold", Arial, Helvetica, sans-serif;
  font-size: 0.9rem;
  line-height: 1rem !important;
}

.semibold {
  font-weight: 600;
  font-family: "MainFont_SemiBold", Arial, Helvetica, sans-serif;
}

.alphabet {
  list-style-type: lower-alpha;
  margin-left: 20px;
}

.numbers {
  list-style-type: decimal;
  margin-left: 20px;
}

.discs {
  list-style-type: disc;
  margin-left: 20px;
}

h3 {
  font-size: 2rem;
  font-weight: 700;
  font-family: "MainFont_Bold", Arial, Helvetica, sans-serif;
  text-align: center;
  padding-bottom: 0px;
  padding-top: 0px;
  text-transform: uppercase;
}

h4 {
  font-size: 1.2rem;
  font-weight: 700;
  font-family: "MainFont_Bold", Arial, Helvetica, sans-serif;
  line-height: 1.2rem;
  text-transform: uppercase;
}

h5 {
  font-size: 1.2rem;
}

h6 {
  font-size: 1.2rem;
  font-weight: 600;
}

h6:focus-visible,
h4:focus-visible {
  outline: none;
}

@media screen and (max-width: 1144px) {
  h6 {
    font-size: 0.9rem;
  }
}

.row {
  display: flex;
  justify-content: space-between;
  padding: 0 !important;
}

.right {
  display: flex;
  justify-content: right;
}

.copy_download_btn {
  width: fit-content;
  height: fit-content;
  padding: none;
  margin: none;
}

.copy_download_btn:hover {
  background-color: var(--sec-color);
  color: var(--main-color);
}

.big_arrow {
  color: black;
  width: 3vw;
  height: auto;
  min-width: 40px;
}

.setting_title {
  font-size: 1rem;
  padding-left: 0 !important;
  text-transform: uppercase;
  font-weight: 600;
}

.setting_title:hover {
  color: #000000 !important;
}

@media screen and (max-width: 1144px) {
  .setting_title {
    font-size: 0.9rem;
  }
}

a {
  color: black;
  font-size: 1rem;
  font-weight: 600;
}

.progress-bar {
  height: 4px;
  margin-bottom: 0px;
  background-color: var(--sec-color);
}

.icon {
  color: black;
  width: 20px;
  height: 20px;
}

.top-info-bar {
  background: var(--bg-color);
  text-align: center;
  display: flex;
  justify-content: center;
  padding: 10px 15px;
  margin-bottom: 20px;
  position: absolute;
  width: 100%;
}

.alert {
  width: 70vw;
  max-width: 1200px;
  padding: 0;
  font-size: 0.9rem;
  font-weight: 500;
  text-align: left;
  display: flex;
  gap: 15px;
  align-items: center;
  margin-top: 0px;
  justify-content: center;
}

.copy_download {
  width: 20px;
  height: 20px;
}

.red {
  color: #920303;
}

.summary-input {
  background-color: none;
  border-radius: 0px;
  box-shadow: 0 0 0px rgba(0, 0, 0, 0.185);
  border: 0px solid black;
  padding: 0;
  width: 70vw;
  max-width: 1200px;
  display: flex;
  justify-content: center;
  gap: 2vw;
  margin-top: 60px;
  margin-bottom: 20px;
}

.settings {
  display: flex;
  flex-direction: column;
  justify-content: space-between;
}

.summary-output {
  background-color: white;
  padding-left: 0px;
  padding-right: 0px;
  padding-top: 0px;
  padding-bottom: 0px;
  border-radius: 0px;
  box-shadow: 0 0 0px rgba(0, 0, 0, 0.185);
  text-align: left;
  width: 70vw;
  max-width: 1200px;
  margin-top: 0px;
  margin-bottom: 150px;
  border: 0px solid black;
}

p {
  text-transform: none;
  padding-top: 10px;
  font-size: 1.1rem;
}

.halluzination-warning p {
  font-size: 0.8rem !important;
  padding: 0px;
}

.halluzination-warning {
  display: flex;
  justify-content: space-around;
  color: #555;
  text-align: left;
}

.input-actions {
  display: flex;
  justify-content: space-between;
  color: #555;
  text-align: left;
  height: 55px;
  align-items: center;
  margin-left: 10px;
  margin-top: 12px;
}

.text_box {
  background-color: none;
  color: black;
  padding: 0px;
  margin-bottom: 50px;
  margin-top: 25px;
  width: 80vw;
  max-width: 1000px;
}

.summary_result {
  text-transform: none;
  padding-top: 2vh;
  padding-bottom: 2vh;
}

.page-container {
  width: 100%;
  padding-top: 60px;
  max-width: 1200px;
  margin: auto;
  display: flex;
  flex-direction: column;
  gap: 5px;
  padding-bottom: 80px;
}
.hinweis {
  display: flex;
  text-align: left;
  margin-bottom: 12px;
}

.zwischenablage-input button {
  padding-left: 40px;
  background-image: url(static/icon-zwischenablage.svg);
  background-repeat: no-repeat;
  background-position: left center;
  background-size: 40px;
}

.zwischenablage-input {
  position: relative;
}

.zwischenablage-input:after {
  content: "[STRG + V]";
  color: #999;
  position: absolute;
  max-width: 50%;
  right: 5px;
  top: 5px;
  font-size: 0.85rem;
  text-align: right;
  font-weight: normal;
  line-height: 1;
}

button {
  width: fit-content;
  margin: 0;
  text-transform: uppercase;
  background-color: var(--sec-color);
  color: white;
  font-weight: 700;
  font-size: 1rem;
  line-height: 1.2rem;
  letter-spacing: normal;
  border-radius: 0px !important;
  z-index: 0;
  display: flex;
  border: none;
  text-align: center;
  justify-content: center;
  padding: 8px;
  align-items: center;
}

button:hover {
  color: var(--main-color);
  background-color: var(--sec-color);
}

ul {
  margin: 0;
  padding: 10px 0 0 12px;
}

li {
  padding: 5px 0 5px 0;
  font-size: 1.1rem;
}
ul li {
  list-style: circle;
  margin-bottom: 8px;
  padding: 0;
}

.radio input:focus + label,
a:focus,
button:focus,
input:focus,
textarea:focus {
  outline: none;
}

.radio input:focus-visible + label,
a:focus-visible,
button:focus,
input:focus-visible,
textarea:focus-visible {
  outline: 2px solid #000;
  outline-offset: 1px;
}

button:disabled:hover,
button:disabled {
  background-color: var(--sec-color);
  color: rgb(189, 189, 189);
  cursor: auto;
  opacity: 0.5;
}

.faq-tabs li button,
button.no-btn-style {
  border: none;
  background: none;
  color: #000;
  text-transform: none;
  letter-spacing: normal;
}

.faq-tabs li button:hover,
.no-btn-style:hover {
  background-color: var(--bg-color);
}

.upload_area,
.settings {
  height: 460px;
}

.show_source {
  font-size: 0.7rem;
  padding: 2px 5px 2px 5px;
}

.close_source {
  background-color: rgb(0, 0, 0);
  color: var(--main-color);
  font-size: 0.7rem;
  padding: 2px 5px 2px 5px;
}

.show_source:hover {
  transition-timing-function: cubic-bezier(0.4, 0, 1, 1);
  transition-duration: 200ms;
}

.show_source:focus {
  transition-timing-function: cubic-bezier(0.4, 0, 1, 1);
  transition-duration: 200ms;
}

.small_btn {
  background-color: rgb(0, 0, 0);
  color: rgb(255, 255, 255);
  font-size: 0.7rem;
  padding: 2px 5px 2px 5px;
  height: 27px !important;
  font-weight: 400;
}

.medium_btn {
  background-color: rgb(0, 0, 0);
  color: rgb(255, 255, 255);
  font-size: 0.8rem;
  padding: 2px 5px 2px 5px;
  height: 40px !important;
  font-weight: 400;
  align-items: center;
  vertical-align: middle;
}

.left {
  justify-content: left;
}

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

/* NAV TABS */
.tab {
  display: flex;
  align-items: stretch; /* Stellt sicher, dass das <a>-Tag die volle Höhe ausfüllt */
  text-align: center;
  height: 60px;
  position: relative;
  /* Die Eigenschaft "border-bottom" wurde von hier entfernt. */
}

.navbar_tabs {
  position: absolute;
  left: 50%;
  transform: translateX(-50%);
  bottom: 0px;
}

.faq_tabs .tab button,
.navbar_tabs .tab {
  font-weight: 600;
  font-family: "MainFont_SemiBold", Arial, Helvetica, sans-serif;
}

.tab:hover,
.tab.selected {
  border-bottom: 2px solid var(--sec-color);
}

.tab a {
  display: flex;
  width: 100%;
  height: 100%;
  font-size: 1rem;
  font-weight: 600;
  text-transform: uppercase;
  align-items: center;
  justify-content: center;
  text-align: center;
  padding: 0 20px;
  box-sizing: border-box;
  text-decoration: none;
  color: inherit;
  /* NEU: Fügen Sie einen transparenten unteren Rand hinzu, um Layoutverschiebungen zu vermeiden. */
  border: 2px solid transparent;
}

.tab.selected a,
.tab:hover a {
  border-bottom-color: var(--sec-color);
}

.tab_link_disabled,
.tab_disabled {
  background-color: transparent;
  color: #ccc;
  border: none;
}

.tab_link_disabled:hover,
.tab_disabled:hover {
  background: transparent !important;
  color: #ccc !important;
  border: none;
}

.textlink a:hover {
  text-decoration: underline;
}

.icon-ext-link {
  background-image: url(static/icon-ext-link.svg);
  background-repeat: no-repeat;
  background-position: right center;
  background-size: 12px;
  padding-right: 16px;
}

ol li p a {
  text-decoration: underline;
}

ol li p a:hover {
  text-decoration: none;
}

.chat-eingabe {
  background-color: #fff;
  padding: 10px;
  display: flex;
  align-items: flex-end;
  width: 100%;
  position: relative;
  flex-direction: row;
}

.chat-eingabe textarea {
  width: 100%;
  background: transparent;
  border: none;
  padding-top: 12px;
  padding-bottom: 12px;
  padding-right: 140px;
  margin: 0px;
}

.send-button {
  min-width: 48px;
  width: 48px;
  height: 48px;
  text-indent: 500px;
  background-image: url(static/send-default.svg);
  background-repeat: no-repeat;
  background-size: contain;
}

.send-button:hover {
  background-image: url(static/send-hover.svg);
}

.text_box h6 {
  margin-top: 30px;
  color: black;
  font-size: 1.2rem;
  border-bottom: 0px solid black;
}

.text_box p {
  margin-bottom: 12px;
  font-size: 1rem;
}

.text_box ol li {
  font-size: 1rem;
}
.text_box ul li {
  font-size: 1rem;
}

/* Hauptliste (erste Ebene) */
.text_box ol {
  counter-reset: section; /* Zähler zurücksetzen */
  list-style: none; /* Standard-Nummerierung entfernen */
}

/* Erste Ebene */
.text_box ol > li {
  counter-increment: section; /* Zähler erhöhen */
}

/* Format für Hauptnummerierung */
.text_box ol > li::before {
  content: counter(section) ". "; /* Setzt die Nummerierung */
}

/* Zweite Ebene (verschachtelte Liste) */
.text_box ol ol {
  counter-reset: subsection; /* Unterzähler zurücksetzen */
  list-style: none;
  padding-left: 20px;
}

/* Zweite Ebene: 1.1, 1.2 usw. */
.text_box ol > li > ol > li {
  counter-increment: subsection;
}

/* Format für Unternummerierung */
.text_box ol ol > li::before {
  content: counter(section) "." counter(subsection) " "; /* Erstzähler + Unterzähler */
}

@media screen and (min-width: 1209px) {
  .tab a:focus-visible {
    border: 2px solid var(--sec-color); /* Voller Rahmen bei Fokus */
    outline: none; /* Entfernt die Standard-Gliederung des Browsers */
  }
}

@media screen and (max-width: 1208px) {
  .tab {
    display: flex;
    align-items: center;
    text-align: center;
    height: 60px;
    padding: 0;
  }

  .tab:has(> a) {
    border-bottom: none;
  }

  .tab:has(> div):hover {
    border-bottom: none;
  }

  .tab:has(> a):hover,
  .tab:has(> a).selected {
    border-bottom: none;
    padding-bottom: 0;
  }

  .tab > a {
    padding: 0 20px;
    justify-content: start;
    width: 100%;
    height: 100%;
  }
}

@media screen and (max-width: 1144px) {
  .tab a,
  .setting_title,
  .faq_li_se,
  .tab_link_disabled,
  .tab_disabled,
  .tab {
    font-size: 0.9rem;
  }
}

@media screen and (max-width: 827px) {
  .tab a,
  .setting_title,
  .tab_link_disabled,
  .tab_disabled {
    width: 190px;
  }

  .tab.menu a,
  .tab.menu {
    width: 100%;
    /* display: flex;
    flex-direction: column;
    align-items: end;
    text-align: right;
    padding-right: 10px; */
  }

  @media screen and (max-width: 1144px) {
    .tab a,
    .setting_title,
    .faq_li_sel a,
    .tab_link_disabled,
    .tab_disabled,
    .tab {
      font-size: 0.8rem;
    }
  }
}

/* / NAV TABS */

/* Tooltip container */
.tooltip {
  position: relative;
  display: inline-block;
  background-color: transparent;
  padding: 0px !important;
  margin-top: 0px;
  margin-bottom: 0px;
  margin-left: 3px;
  border: none;
  margin-right: 0px;
  width: 18px;
  height: 18px;
  display: inline;
  /*z-index: 50 !important;*/
}

.tooltip:hover {
  color: var(--main-color);
  background-color: transparent;
}

.clicked_tooltip_text {
  background-color: var(--sec-color);
  color: #fff;
  text-align: center;
  padding: 15px;
  border-radius: 0px;
  margin-top: 15px;
  font-size: 0.8rem !important;
  text-transform: none;
  line-height: 0.9rem;
  position: absolute;
  z-index: 100 !important;
}

/* Tooltip text */

.tooltip + .tooltiptext,
.tooltip .tooltiptext {
  visibility: hidden;
  background-color: var(--sec-color);
  color: #fff;
  text-align: center;
  padding: 15px;
  border-radius: 0px;
  margin-top: 15px;
  font-size: 0.8rem !important;
  text-transform: none;
  line-height: 0.9rem;
  position: absolute;
  right: 0;
  display: inline-block;
  width: 450px;
}

.tooltiptext {
  z-index: 100 !important;
}

/* Show the tooltip text when you mouse over the tooltip container */
.tooltiptext.showHint,
.tooltip:hover .tooltiptext,
.tooltip:hover + .tooltiptext {
  visibility: visible;
}

.top {
  width: 220px;
  top: 15px;
  left: 0;
  text-align: left !important;
  word-wrap: break-word;
}

.bottom {
  width: 220px;
  bottom: 90%;
  right: 50%;
  margin-right: -100px;
  margin-bottom: 20px;
  text-align: left !important;
  word-wrap: break-word;
}

.info_box_icon {
  color: white;
  min-width: 28px;
}

.border {
  display: flex;
  justify-content: left;
  border: 0px solid black;
  padding-top: 0px;
}

.btn_group {
  display: flex;
  flex-direction: column;
  gap: 5px;
}

.arrow_collapse {
  color: #000000;
  height: 35px;
  width: 35px;
  cursor: pointer;
  transition-timing-function: cubic-bezier(0.4, 0, 1, 1);
  transition-duration: 200ms;
}

.arrow_collapse:hover {
  color: #9b9b9b;
  transition-timing-function: cubic-bezier(0.4, 0, 1, 1);
  transition-duration: 200ms;
}

.yellow {
  background-color: var(--main-color);
  display: flex;
  align-items: center;
  height: fit-content;
  padding: 2vh;
  margin-bottom: 4vh;
}

.info_text {
  margin-bottom: 0px;
  margin-top: 0px;
  width: 70vw;
  max-width: 1200px;
  border: 0px solid black;
  background-color: var(--sec-color);
  color: white;
  font-size: 0.9rem;
  font-weight: 400;
  text-align: left;
  padding: 10px 15px 10px 15px;
  display: flex;
  justify-content: left;
  align-items: center;
  gap: 15px;
}

.upload_info {
  display: flex;
  align-items: left;
  gap: 20px;
  position: relative;
}

.relative-element {
  position: relative;
}

.upload_area {
  background-color: transparent;
  display: flex;
  flex-direction: column;
  justify-content: space-around;
  gap: 20px;

  padding: 30px 40px 40px 40px;
  background-color: var(--bg-color);
  border: 0px solid black;
}

.below {
  display: inline;
  cursor: pointer;
  font-size: 0.9rem;
  font-weight: 600;
  text-decoration: underline;
}

@media screen and (max-width: 1144px) {
  .info_text,
  .below,
  .alert {
    font-size: 0.88rem;
  }
}

.summary_title {
  text-align: center !important;
  margin-top: 0px;
  background-color: none;
  color: black;
  font-weight: 700;
  font-size: 3rem;
  line-height: 3rem;
  padding: 0px !important;
  border-bottom: 0px solid black;
  width: 100%;
}

.summary-output .alert {
  width: 100%;
}

.summary-description {
  display: flex;
  justify-content: center;
  align-items: top;
}

.info_box_icon {
  height: 32px;
  width: 32px;
  color: #000000;
}

.tag {
  background-color: white;
  color: black;
  font-weight: 700;
  font-size: 0.9rem;
  line-height: 1rem;
  letter-spacing: 1px;
  padding: 5px;
  border-radius: 0px !important;
  display: inline-flex;
  z-index: 0;
  border: 2px solid transparent;
  width: fit-content;
  text-align: center;
  justify-content: center;
  margin: 0;
  margin-right: 0.4vw;
  margin-left: 0.4vw;
  margin-top: 4px;
  margin-bottom: 4px;
}

.tag:hover {
  background-color: white;
  color: #000000;
  border: 2px solid var(--main-color);
}

.clicked_tag {
  background-color: var(--main-color);
  border: 2px solid var(--main-color);
}

.clicked_tag:hover {
  background-color: var(--main-color);
  border: 2px solid var(--main-color);
}

.pop_up_bg {
  background-color: #30303075;
  z-index: 99;
  width: 100vw;
  height: 100%;
  top: 0;
  left: 0;
  min-width: 100%;
  min-height: 100%;
  max-width: 4000px;
  position: fixed;
  justify-content: center;
  display: flex;
  padding-top: 150px;
}

.pop_up_bg_no {
  background-color: transparent;
  z-index: 99;
  width: 100vw;
  height: 100%;
  top: 0;
  left: 0;
  min-width: 100%;
  min-height: 100%;
  max-width: 4000px;
  position: fixed;
  justify-content: center;
  display: flex;
  padding-top: 150px;
  display: none;
}

.pop_up_window {
  width: 50vw;
  background-color: white;
  height: fit-content;
  max-width: 1200px;
  position: fixed;
  bottom: 0;
  display: grid;
  justify-content: center;
  text-align: center;
  padding: 30px;
  padding-bottom: 70px;
}

@media screen and (max-width: 500px) {
  .pop_up_window {
    padding-bottom: 20px;
  }
}

.pop_up_content {
  display: grid;
  justify-content: center;
  text-align: center;
  width: 100%;
  gap: 2vh;
}

.p_popup {
  font-size: 1rem !important;
}

.terms_container {
  display: grid;
  justify-content: center;
}

.feedback_box {
  width: 70vw;
  max-width: 1200px;
  background-color: var(--bg-color);
  padding: 30px;
  margin-bottom: 4vh;
}

.feedback_head {
  display: flex;
  justify-content: space-between;
  align-items: center;
  margin-top: 4vh;
  padding: 15px;
  background-color: var(--sec-color);
  color: white;
  width: 70vw;
  max-width: 1200px;
}

.feedback_head .icon {
  color: white;
}

.feedback_head .icon:hover {
  color: var(--main-color);
}

.radio label {
  cursor: pointer;
  width: 100%;
  height: 100%;
  padding: 12px 10px;
  text-align: center;
}

.radio input[type="radio"] {
  opacity: 0;
  z-index: -1;
  position: absolute;
  top: -1px;
  left: 0;
  width: 0.1px;
  height: 0.1px;
  user-select: none;
  -webkit-user-select: none;
}

.radio {
  background-color: white;
  display: flex;
  justify-content: center;
  gap: 10px;
  cursor: pointer;
}

.radio:hover {
  color: #9b9b9b;
  transition-timing-function: cubic-bezier(0.4, 0, 1, 1);
  transition-duration: 200ms;
}

.radio-selected {
  background-color: var(--sec-color);
  color: white;
}

/*Längen Slider Zusammenfassung*/
.slider-labels span {
  position: relative;
  text-align: center;
  font-size: 12px;
  width: auto;
  display: flex;
  flex-direction: column;
  align-items: center;
  margin-top: -5px;
}

.slider-labels span::before {
  content: "";
  position: relative;
  transform: translateY(-8px);
  height: 9px;
  width: 9px;
  background-color: var(--sec-color);
  border-radius: 7px;
}

@media screen and (max-width: 1144px) {
  .radio {
    font-size: 0.8rem;
  }
}

@media screen and (max-width: 930px) {
  .radio {
    font-size: 0.8rem;
  }
}

.radio-buttons .label_settings,
.radio-buttons label {
  cursor: pointer;
  background-color: white;
  font-weight: 400;
  color: black;
  text-align: center;
  width: 100% !important;
  display: inline-block;
  margin: 0;
  border: 2px solid transparent;
  font-size: 0.9rem;
  height: 45px;
  min-width: 70px;
  text-transform: none;
  outline: 2px solid var(--bg-color);
  height: 50px;
  display: grid;
  align-items: center;
}

.radio-buttons .label_settings:hover,
.radio-buttons label:hover {
  background-color: white;
  color: #9b9b9b;
  transition-timing-function: cubic-bezier(0.4, 0, 1, 1);
  transition-duration: 200ms;
  border: 2px solid transparent;
}

.radio-buttons input:checked + label {
  background-color: var(--sec-color);
  color: white;
  transition-timing-function: cubic-bezier(0.4, 0, 1, 1);
  transition-duration: 100ms;
  border: 2px solid black;
  height: 50px;
}

.radio-buttons input:checked + label:hover {
  background-color: var(--sec-color);
  color: white;
  transition-timing-function: cubic-bezier(0.4, 0, 1, 1);
  transition-duration: 200ms;
  border: 2px solid black;
}

.radio-buttons .label_settings,
.label_selected {
  height: 50px;

  display: grid;
  align-items: center;
}

.btn.secondary,
button.secondary {
  background-color: #fff;
  border: 2px solid #000;
  color: #000;
  cursor: pointer;
  text-transform: none;
  font-weight: bold;
}

.btn.secondary:hover,
button.secondary:hover {
  background-color: var(--bg-color);
}

button.secondary.delete {
  background-image: url(static/bw-trash-can-line.svg);
  background-repeat: no-repeat;
  background-position: 8px center;
  padding-left: 36px;
  margin-top: 13px;
}

.source-item {
  margin: 0 8px 12px 0;
  display: flex;
  align-items: center;
  padding: 2px 5px;
  border: 1px solid #000;
  position: relative;
  max-width: 100%;
}

.source-item .label {
  white-space: nowrap;
  text-overflow: ellipsis;
  overflow: hidden;
}

.source-button {
  width: 14px;
  height: 14px;
  background-repeat: no-repeat;
  background-size: contain;
}

.delete-question,
.delete-source {
  background-image: url('data:image/svg+xml;utf8,<svg width="14" height="14" viewBox="0 0 14 14" xmlns="http://www.w3.org/2000/svg"><line x1="4" y1="4" x2="12" y2="12" stroke="black" stroke-width="2" stroke-linecap="round"/><line x1="4" y1="12" x2="12" y2="4" stroke="black" stroke-width="2" stroke-linecap="round"/></svg>');
  margin-left: 8px;
}

.open-source {
  background-image: url('data:image/svg+xml;utf8,<svg width="17" height="17" viewBox="0 0 17 10" fill="none" xmlns="http://www.w3.org/2000/svg"><path d="M15.5 1L8.5 8L1.5 1" stroke="black" stroke-width="2" stroke-linecap="round"/></svg>');
  margin-left: 12px;
  margin-right: 4px;
}

.close-source {
  background-image: url('data:image/svg+xml;utf8,<svg width="17" height="17" viewBox="0 0 17 10" fill="none" xmlns="http://www.w3.org/2000/svg"><path d="M1.5 9L8.5 2L15.5 9" stroke="black" stroke-width="2" stroke-linecap="round"/></svg>');
  margin-left: 12px;
  margin-right: 4px;
}

.frage {
  display: flex;
  background-color: var(--bg-color);
  padding: 6px 12px;
  font-weight: bold;
  width: 100%;
  justify-content: space-between;
  flex-direction: row;
  align-items: center;
  margin: 10px 0;
  font-size: large;
}

.answers {
  display: flex;
  flex-direction: column;
  border-left: var(--bg-color) solid 3px;
  padding-left: 8px;
  width: 100%;
  text-align: left;
}

.answer-source-type {
  font-weight: normal;
  font-size: 1rem;
  color: #666;
  display: inline-block;
  max-width: 80%;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
}
.answer-actions {
  display: flex;
  margin-top: 1.3rem;
}

@media screen and (max-width: 1144px) {
  .radio-buttons .label_settings,
  .label_selected {
    font-size: 0.8rem;
  }
}

@media screen and (max-width: 930px) {
  .radio-buttons .label_settings,
  .label_selected {
    font-size: 0.8rem;
  }
}

@media screen and (max-width: 1200px) {
  .summary-input,
  .alert,
  .summary-output,
  .feedback_box,
  .feedback_head,
  .info_text {
    width: 90vw;
  }
}

@media screen and (max-width: 742px) {
  .summary-input {
    display: grid;
    width: 90vw;
    justify-content: center;
    gap: 0;
  }

  .alert {
    width: 90vw;
  }

  .info_text {
    width: 90vw;
  }

  .summary-output {
    width: 90vw;
  }

  .yellow {
    width: 100vw;
  }

  .yellow h4 {
    font-size: 1.5rem;
  }

  .yellow .basis {
    font-size: 0.9rem;
  }

  .big_arrow {
    height: 30px;
    margin: -20px;
  }

  .feedback_head,
  .feedback_box {
    width: 90vw;
  }

  .feedback_head {
    display: grid;
  }

  .pop_up_window {
    width: 90vw;
  }

  .pop_up_bg {
    align-items: center;
  }

  .upload_area {
    gap: 20px;
  }
}

@media screen and (max-width: 634px) {
  .tab_icon,
  .settings .tooltip,
  .feedback_head .tooltip,
  .message .tooltip {
    display: none;
  }

  .mobile_margin {
    margin-bottom: 50px;
  }

  nav .tab a,
  nav .setting_title,
  nav .tab_link_disabled,
  nav .tab_disabled,
  nav .tab,
  .faq_tab,
  nav .tab .selected,
  nav .faq_li_sel a,
  .faq_li_se {
    font-size: 0.5rem;
    width: 20%;
    height: 20px !important;
  }
}

/*transcript accordion*/
li .transcript {
  display: none;
}
li.show-transcript .transcript {
  display: block;
}
li.show-transcript .caret svg {
  transform: rotate(180deg);
}
