/* SECTION: GLOBAL / BASE */
.staerkensieb-digital-container {
  font-family: sans-serif;
  font-size: 14px;
  color: var(--ss-text);
  padding: 20px 30px 30px 30px;
  box-sizing: border-box;
  background-color: var(--ss-white);
}

.staerkensieb-eval-admin input[type="text"],
.staerkensieb-eval-admin input[type="number"],
.staerkensieb-eval-admin textarea,
.staerkensieb-eval-admin select {
  width: 100%;
  max-width: 100%;
  box-sizing: border-box;
}

.current-cat-A {
  --accent-color: var(--ss-blue);
  --accent-light: var(--ss-blue-light);
}

.current-cat-B {
  --accent-color: var(--ss-red);
  --accent-light: var(--ss-red-light);
}

.current-cat-C {
  --accent-color: var(--ss-yellow);
  --accent-light: var(--ss-yellow-light);
}

.current-cat-D {
  --accent-color: var(--ss-green);
  --accent-light: var(--ss-green-light);
}

.detail-separator {
  height: 2px;
  width: 100%;
  background-color: var(--accent-color);
}

#staerkensieb-new-strength,
.staerkensieb-new-strength,
.inline-edit-input,
.cat-weight-select,
#staerkensieb-add-form .cat-weight-select,
#staerkensieb-add-form textarea {
  border: 1.5px solid var(--accent-color);
  color: var(--accent-color);
}

#staerkensieb-new-strength::placeholder,
.staerkensieb-new-strength::placeholder,
.inline-edit-input::placeholder,
textarea::placeholder {
  color: var(--accent-color);
  opacity: 0.8;
   font-size: 1.2rem;
}

.detail-strength {
  color: var(--accent-color) !important;
  font-weight: bold !important;
}

.icon-button {
  color: var(--accent-color);
  cursor: pointer;
  font-size: 1.2rem;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  margin-right: 0.5rem;
}

.detail-delete.icon-button {
  margin-right: 1rem;
}

#staerkensieb-detail.staerkensieb-detail-input,
.staerkensieb-detail-input {
  width: 100%;
  max-width: 100%;
  box-sizing: border-box;
  overflow-y: hidden;
  resize: vertical;
  min-height: 80px;
}

.staerkensieb-ai-btn.button,
.ai-options button,
#staerkensieb-details-toggle,
.staerkensieb-toolbar button {
  background-color: var(--accent-light);
  border: 1px solid var(--accent-color);
  color: var(--accent-color);
  border-radius: 3px;
  padding: 0.4rem 0.6rem;
  cursor: pointer;
  font-weight: bold;
  font-size: 0.9rem;
}

.staerkensieb-inline-form {
  display: inline;
}

.staerkensieb-ai-btn.button:hover,
.ai-options button:hover,
#staerkensieb-details-toggle:hover,
.staerkensieb-toolbar button:hover {
  background-color: var(--accent-color) !important;
  color: #fff !important;
  border-color: var(--accent-color) !important;
  color: var(--ss-white) !important;
}

.detail-extra {
  margin-top: 0.2rem;
  font-size: 0.85rem;
  color: inherit;
}

.staerkensieb-question-slider .question-arrow {
  color: var(--accent-color);
  width: 1.2rem;
  height: 1.2rem;
  background-size: contain;
  background-repeat: no-repeat;
  display: inline-block;
  font-size: 2rem;
  line-height: 1;
  position: relative;
  cursor: pointer;
}

.staerkensieb-question-slider .question-arrow.prev {
  background-image: url("data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHZpZXdCb3g9IjAgMCAyNCAyNCIgZmlsbD0iY3VycmVudENvbG9yIj48cGF0aCBkPSJNMTUgNmwtNiA2IDYgNiIgc3Ryb2tlPSJjdXJyZW50Q29sb3IiIHN0cm9rZS13aWR0aD0iMiIgZmlsbD0ibm9uZSIgc3Ryb2tlLWxpbmVjYXA9InJvdW5kIiBzdHJva2UtbGluZWpvaW49InJvdW5kIi8+PC9zdmc+");
}

.staerkensieb-question-slider .question-arrow.next {
  background-image: url("data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHZpZXdCb3g9IjAgMCAyNCAyNCIgZmlsbD0iY3VycmVudENvbG9yIj48cGF0aCBkPSJNOSAxOGw2LTYtNi02IiBzdHJva2U9ImN1cnJlbnRDb2xvciIgc3Ryb2tlLXdpZHRoPSIyIiBmaWxsPSJub25lIiBzdHJva2UtbGluZWNhcD0icm91bmQiIHN0cm9rZS1saW5lam9pbj0icm91bmQiLz48L3N2Zz4=");
}

.staerkensieb-details-wrapper {
  width: 100%;
}

/* SECTION: MENU / LANGUAGE */
.staerkensieb-menu {
  position: absolute !important;
  display: flex !important;
  gap: 0.9rem !important;
  font-size: 1.6rem;
  margin-left: 0 !important;
  align-items: flex-start !important;
  top: 0 !important;
  right: 0 !important;
  left: auto !important;
}

.staerkensieb-menu .menu-icon {
  color: var(--accent-color);
  cursor: pointer;
  font-size: 2.4rem !important;
}

/* Shortcode [staerkensieb_menu]: eigenes Flex-Layout, kein absolutes Topbar-Menü */
.staerkensieb-menu-host {
  position: relative;
  display: block;
  margin: 0 0 1rem;
  padding: 0;
  background: transparent !important;
  overflow: visible;
}

.staerkensieb-menu-host .staerkensieb-menu-toolbar {
  display: flex;
  flex-direction: row;
  flex-wrap: wrap;
  align-items: center;
  justify-content: flex-end;
  gap: 0.75rem;
  width: 100%;
  min-height: 2.75rem;
}

.staerkensieb-menu-host .staerkensieb-menu,
.staerkensieb-menu.staerkensieb-menu--standalone {
  position: relative !important;
  display: inline-flex !important;
  flex-wrap: wrap;
  align-items: center;
  gap: 0.9rem !important;
  margin: 0 !important;
  padding: 0 !important;
  top: auto !important;
  right: auto !important;
  left: auto !important;
  transform: none !important;
  width: auto !important;
  min-height: 2.75rem;
}

.staerkensieb-menu-host .staerkensieb-menu .menu-icon,
.staerkensieb-menu.staerkensieb-menu--standalone .menu-icon {
  color: var(--accent-color, var(--ss-blue-deep, #356D9F)) !important;
  cursor: pointer;
  font-size: 1.75rem !important;
  line-height: 1;
}

.staerkensieb-menu-host .staerkensieb-language-menu {
  display: flex !important;
  gap: 0.5rem;
  align-items: center;
}

.staerkensieb-menu-host .staerkensieb-export-submenu {
  top: 100%;
  right: 0;
}

.staerkensieb-menu-host .staerkensieb-topbar {
  position: static;
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  justify-content: flex-end;
  gap: 0.75rem;
  width: 100%;
  margin: 0;
  padding: 0;
}

.staerkensieb-menu-host .staerkensieb-topbar .staerkensieb-menu {
  position: static !important;
  display: inline-flex !important;
  flex-wrap: wrap;
  align-items: center;
  gap: 0.9rem !important;
  margin: 0 !important;
  top: auto !important;
  right: auto !important;
  left: auto !important;
  transform: none !important;
}

.staerkensieb-menu-host .staerkensieb-topbar .staerkensieb-language-menu {
  display: flex !important;
  gap: 0.5rem;
  align-items: center;
}

/* SECTION: EXPORT / IMPORT */
.staerkensieb-export-submenu {
  position: absolute;
  top: 2.4rem;
  right: 0;
  display: none;
  flex-direction: column;
  background-color: var(--ss-white);
  border: 1px solid var(--accent-color);
  border-radius: 4px;
  box-shadow: 0 2px 6px rgba(0,0,0,0.2);
  z-index: 100;
}

#staerkensieb-digital-app {
  position: relative;
  padding-top: 130px;
}

.staerkensieb-version-label {
  position: static;
  display: block;
  margin-top: 0.5rem;
  font-size: 0.8rem;
  font-weight: bold;
  color: var(--accent-color);
  text-align: right;
}

.staerkensieb-export-submenu .export-option {
  padding: 0.4rem 0.8rem;
  font-weight: bold;
  font-size: 1rem;
  text-transform: uppercase;
  cursor: pointer;
  color: var(--accent-color);
  white-space: nowrap;
}

.staerkensieb-export-submenu .export-option:hover {
  background-color: var(--accent-color);
  color: var(--ss-white);
}

.staerkensieb-eval-items .eval-question-label {
  font-weight: bold;
  margin-bottom: 0.3rem;
  display: block;
}

.staerkensieb-eval-items .eval-user-input {
  width: 100%;
  box-sizing: border-box;
}

.staerkensieb-intro-heading {
  font-size: 1.8rem;
  font-weight: bold;
  margin-bottom: 0.5rem;
}

.staerkensieb-intro-paragraph {
  margin-bottom: 0.6rem;
  line-height: 1.4;
}

#staerkensieb-greeting {
  display: none;
  margin-top: 20px;
  margin-bottom: 20px;
  font-weight: bold;
  font-size: 1rem;
  line-height: 1.3;
}

.menu-item-staerkensieb-account a {
  font-size: 1rem !important;
  display: inline-block;
  width: 2rem;
  height: 2rem;
  line-height: 2rem;
  text-align: center;
  background-color: var(--ss-blue-deep);
  border-radius: 50%;
  color: var(--ss-white) !important;
  position: relative;
}

#staerkensieb-evaluation-list {
  position: relative;
  padding-bottom: 2.5rem;
}

.staerkensieb-main-container {
  text-align: center;
  margin-bottom: 1rem;
  position: relative;
  overflow: visible;
  margin-left: 30px;
  margin-top: 20px !important;
}

.staerkensieb-lists,
.staerkensieb-layout {
  overflow: visible;
}

.staerkensieb-lists {
  padding-top: 1rem;
  padding-left: 0;
  padding-right: 0;
  padding-bottom: 0;
  background-color: var(--ss-white);
  display: flex;
  flex-direction: column;
  gap: 1rem;
  width: 100%;
}

/* Isolierter Hauptkreis: kein Box-Container, kein grauer/weißer Hintergrund.
   Kein overflow/max-width am Host – Breite und Beschnitt steuert der Seiten-Container. */
.staerkensieb-main-circle-host {
  background: none;
  padding: 0;
  margin: 0;
  border: none;
  box-shadow: none;
  box-sizing: border-box;
  overflow: visible;
}

.staerkensieb-main-circle-host > .staerkensieb-layout,
.staerkensieb-main-circle-host > .staerkensieb-mobile-title {
  background: transparent;
  padding-top: 0;
}

.staerkensieb-main-circle-host > .staerkensieb-layout {
  overflow: visible;
  justify-content: center;
  gap: 0;
  width: fit-content;
  max-width: 100%;
  margin-left: auto;
  margin-right: auto;
}

.staerkensieb-main-circle-host .layout-left,
.staerkensieb-main-circle-host .staerkensieb-main-container {
  overflow: visible;
  max-width: none;
}

.staerkensieb-main-circle-host .staerkensieb-main-container {
  margin-left: 0;
  margin-right: 0;
}

/* Isolierte Kategorie-Navigation: kein Box-Container */
.staerkensieb-category-nav-host {
  background: none;
  padding: 0;
  margin: 0;
  border: none;
  box-shadow: none;
  width: 100%;
  max-width: 100%;
  box-sizing: border-box;
}

/* Isolierte Freigabe-Leiste: kein Box-Container am Host */
.staerkensieb-pending-confirm-host {
  background: none;
  padding: 0;
  margin: 0;
  border: none;
  box-shadow: none;
  width: 100%;
  max-width: 100%;
  box-sizing: border-box;
}

.staerkensieb-pending-confirm-host:empty {
  display: none;
}

/* Isolierte Detailansicht: kein Box-Container am Host */
.staerkensieb-details-host--isolated {
  background: none;
  padding: 0;
  margin: 0;
  border: none;
  box-shadow: none;
  width: 100%;
  max-width: 100%;
  box-sizing: border-box;
  overflow: visible;
}

.staerkensieb-details-host--isolated > #staerkensieb-details {
  margin-top: 0 !important;
  padding-left: 0;
  padding-right: 0;
}

/* Modulare Seite: Kreis, Details und Auswertungen nicht nebeneinander quetschen */
.staerkensieb-main-circle-host,
.staerkensieb-details-host,
.staerkensieb-details-host--isolated,
#staerkensieb-evaluation-list.staerkensieb-evaluation-list {
  display: block;
  width: 100%;
  max-width: 100%;
  box-sizing: border-box;
  clear: both;
}

.staerkensieb-details-host--isolated > #staerkensieb-details {
  width: 100%;
  max-width: 100%;
}

.staerkensieb-category-title {
  margin-bottom: 0.5rem;
  font-size: 1.2rem;
  font-weight: bold;
  text-align: center;
}

.staerkensieb-mobile-title {
  display: none;
}

.staerkensieb-lists > .staerkensieb-category-title {
  flex: 0 0 100%;
  width: 100%;
}

.staerkensieb-circle-title {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  pointer-events: none;
  overflow: visible;
  z-index: 1;
}

.staerkensieb-layout {
  display: flex;
  flex-wrap: nowrap;
  gap: 40px;
  align-items: flex-start;
  overflow-x: auto;
  width: 100%;
}

.staerkensieb-layout .layout-left {
  flex: 0 0 auto;
  overflow: visible;
  position: relative;
  z-index: 1;
}

.staerkensieb-layout .layout-right {
  flex: 1 1 auto;
  width: 100%;
  max-width: 100%;
  min-width: 320px;
  display: flex;
  flex-direction: column;
  gap: 0.75rem;
  min-height: 420px;
  position: relative;
  z-index: 3;
}

/* Eingabeformular per Shortcode [staerkensieb_add_form] ausgelagert */
.staerkensieb-add-form-host {
  width: 100%;
  max-width: 100%;
  position: relative;
  z-index: 5;
  isolation: isolate;
}

.staerkensieb-add-form-host .staerkensieb-input-wrapper {
  position: relative;
  z-index: 2;
}

.staerkensieb-add-form-host .staerkensieb-new-strength {
  position: relative;
  z-index: 2;
  pointer-events: auto;
  background-color: var(--ss-white, #fff);
}

/* Button → unterer Containerrand: genau 20px (nur padding-bottom am Host, kein Stapeln) */
.staerkensieb-add-form-host.staerkensieb-digital-container {
  padding-bottom: 20px;
}

.staerkensieb-add-form-host .staerkensieb-add-form-panel,
.staerkensieb-add-form-host [id^="staerkensieb-add-form"] {
  margin-bottom: 0 !important;
}

.staerkensieb-add-form-host .staerkensieb-buttons-wrapper {
  margin-bottom: 0 !important;
}

/* Instanz-Klasse pro Shortcode (id="..." → .staerkensieb-add-form-instance--...) */
.staerkensieb-add-form-panel,
#staerkensieb-add-form {
  width: 100%;
  margin-bottom: 0;
  display: flex;
  flex-direction: column;
  gap: 0.5rem;
  align-items: flex-start;
}

/* Beispiel: [staerkensieb_add_form id="sieb-b" class="mein-formular" ...] */
/* Host: .staerkensieb-add-form-instance--sieb-b.mein-formular */
/* Panel: #staerkensieb-add-form.staerkensieb-add-form-instance--sieb-b */

/* Fragen-Slider per Shortcode [staerkensieb_question_slider] – kein Box-Container */
.staerkensieb-question-slider-host {
  background: none;
  padding: 0;
  margin: 0;
  border: none;
  box-shadow: none;
  width: 100%;
  max-width: 100%;
  box-sizing: border-box;
}

/* KI-Coach per Shortcode – kein Box-Container */
.staerkensieb-ai-coach-host,
.staerkensieb-ai-coach-toggle-host,
.staerkensieb-ai-coach-panel-host {
  background: none;
  padding: 0;
  margin: 0;
  border: none;
  box-shadow: none;
  width: 100%;
  max-width: 100%;
  box-sizing: border-box;
}

.staerkensieb-ai-coach-host .staerkensieb-ai-panel,
.staerkensieb-ai-coach-panel-host .staerkensieb-ai-panel,
.staerkensieb-ai-coach-panel-host #staerkensieb-ai-panel,
.staerkensieb-ai-coach-host > .staerkensieb-ai-panel,
.staerkensieb-ai-coach-host > #staerkensieb-ai-panel {
  margin-top: 0;
  background: none;
  border: none;
  box-shadow: none;
  padding: 0;
  border-radius: 0;
}

.staerkensieb-ai-coach-toggle-host .staerkensieb-ai-toggle {
  display: inline-block;
  margin: 0 0 0.5rem;
  color: var(--accent-color) !important;
  background-color: var(--accent-light);
  border: 1px solid var(--accent-color);
  border-radius: 3px;
  padding: 0.4rem 0.6rem;
  font-weight: bold;
  cursor: pointer;
}

.staerkensieb-ai-coach-toggle-host .staerkensieb-ai-toggle:hover {
  background-color: var(--accent-color) !important;
  color: var(--ss-white) !important;
  border-color: var(--accent-color) !important;
}

.staerkensieb-ai-coach-toggle-host .staerkensieb-ai-toggle-intro {
  margin: 0 0 0.75rem;
  font-size: 0.95rem;
  line-height: 1.45;
}

.staerkensieb-ai-coach-toggle-host .staerkensieb-ai-toggle-intro p {
  margin: 0 0 0.5rem;
}

.staerkensieb-ai-coach-toggle-host .staerkensieb-ai-toggle[data-ai-toggle-style="light_hover_dark"] {
  color: var(--accent-color) !important;
  background-color: var(--accent-light);
  border: 1px solid var(--accent-color);
}

.staerkensieb-ai-coach-toggle-host .staerkensieb-ai-toggle[data-ai-toggle-style="dark_hover_light"] {
  color: var(--ss-white) !important;
  background-color: var(--accent-color);
  border: 1px solid var(--accent-color);
}

.staerkensieb-ai-toggle-modal {
  display: none;
  position: fixed;
  inset: 0;
  z-index: 100000;
  align-items: center;
  justify-content: center;
  padding: 1rem;
  box-sizing: border-box;
}

.staerkensieb-ai-toggle-modal.is-open {
  display: flex;
}

.staerkensieb-ai-toggle-modal__backdrop {
  position: absolute;
  inset: 0;
  background: rgba(0, 0, 0, 0.45);
}

.staerkensieb-ai-toggle-modal__dialog {
  position: relative;
  z-index: 1;
  max-width: 32rem;
  width: 100%;
  margin: 0;
  padding: 1.25rem 1.35rem;
  background: var(--ss-white, #fff);
  color: var(--ss-text, #222);
  border: 1px solid var(--accent-color, #2a7);
  border-radius: 8px;
  box-shadow: 0 8px 32px rgba(0, 0, 0, 0.18);
  box-sizing: border-box;
}

.staerkensieb-ai-toggle-modal__title {
  margin: 0 0 0.75rem;
  font-size: 1.15rem;
  line-height: 1.3;
}

.staerkensieb-ai-toggle-modal__body {
  margin: 0 0 1rem;
  font-size: 0.95rem;
  line-height: 1.5;
}

.staerkensieb-ai-toggle-modal__privacy a {
  color: var(--accent-color);
  font-weight: 600;
}

.staerkensieb-ai-toggle-modal__actions {
  display: flex;
  flex-wrap: wrap;
  gap: 0.5rem;
  justify-content: flex-end;
}

.staerkensieb-ai-toggle-modal__btn {
  cursor: pointer;
}

.staerkensieb-ai-toggle-modal__btn--confirm {
  color: var(--ss-white, #fff) !important;
  background-color: var(--accent-color) !important;
  border-color: var(--accent-color) !important;
}

.staerkensieb-ai-toggle-age-form__row {
  display: flex;
  align-items: center;
  gap: 0.5rem;
  margin-top: 0.35rem;
}

.staerkensieb-ai-toggle-age-form__input {
  width: 5rem;
  max-width: 100%;
}

.staerkensieb-ai-toggle-age-form__hint {
  margin: 0.35rem 0 0;
  font-size: 0.85rem;
  opacity: 0.85;
}

/* Willkommenstext per Shortcode [staerkensieb_welcome] ausgelagert */
.staerkensieb-welcome-host {
  width: 100%;
  max-width: 100%;
}

/* Bunker per Shortcode [staerkensieb_bunker] */
.staerkensieb-bunker-host {
  width: 100%;
  max-width: 100%;
  box-sizing: border-box;
  padding: 0;
  background: none;
}

.staerkensieb-bunker-host.ssb-bunker-host--hidden {
  display: none !important;
}

.staerkensieb-bunker-host.bunker-cat-neutral {
  --accent-color: var(--ss-gray-300, #ccc);
  --accent-light: var(--ss-gray-110, #f0f0f0);
}

.staerkensieb-bunker-panel {
  width: 100%;
  min-height: 160px;
}

.staerkensieb-bunker-content {
  width: 100%;
}

.staerkensieb-bunker-empty {
  margin: 0;
  padding: 1rem 1.25rem;
  border: 2px dashed var(--accent-color, #ccc);
  border-radius: 12px;
  background: var(--accent-light, rgba(0, 0, 0, 0.03));
  text-align: center;
  font-size: 0.9rem;
  color: var(--ss-text, #333);
  opacity: 0.85;
}

.staerkensieb-bunker-host--main .staerkensieb-bunker-empty,
.staerkensieb-bunker-host--main .staerkensieb-bunker-drop-zone {
  border-style: solid;
}

.staerkensieb-bunker-bubble {
  position: relative;
  min-height: 140px;
  max-width: 100%;
  margin: 0 auto;
  border-radius: 50%;
  display: flex;
  flex-wrap: wrap;
  align-content: center;
  justify-content: center;
  gap: 0.35rem;
  padding: 1rem;
  box-sizing: border-box;
  overflow: visible;
}

/* Bunker-Kreis nutzt .staerkensieb-main-bubble – Tags dürfen nicht wie im Hauptkreis absolut sein. */
.staerkensieb-bunker-bubble.staerkensieb-main-bubble {
  overflow: visible;
}

.staerkensieb-bunker-bubble .staerkensieb-bunker-tag,
.staerkensieb-bunker-bubble.staerkensieb-main-bubble .staerkensieb-tag {
  position: static !important;
  left: auto !important;
  top: auto !important;
  right: auto !important;
  bottom: auto !important;
  transform: none !important;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  max-width: 100%;
  white-space: normal;
}

.staerkensieb-bunker-bubble .staerkensieb-bunker-tag {
  margin: 0.15rem;
  cursor: pointer;
}

.staerkensieb-bunker-tag--pending {
  opacity: 0.65;
  border-style: dashed;
}

.staerkensieb-bunker-tag--readonly {
  cursor: default;
}

.staerkensieb-bunker-tag-wrap {
  display: inline-flex;
  flex-direction: column;
  align-items: center;
  gap: 0.25rem;
  margin: 0.15rem;
}

.staerkensieb-bunker-entry-wrap {
  position: relative;
  display: inline-flex;
  align-items: flex-start;
  margin: 0.15rem;
  max-width: 100%;
}

.staerkensieb-bunker-list-item > .staerkensieb-bunker-entry-wrap {
  display: block;
  margin: 0;
}

.staerkensieb-bunker-entry-delete {
  position: absolute;
  top: -0.35rem;
  right: -0.35rem;
  z-index: 2;
  width: 1.35rem;
  height: 1.35rem;
  padding: 0;
  border: none;
  border-radius: 50%;
  background: rgba(0, 0, 0, 0.55);
  color: #fff;
  font-size: 1rem;
  line-height: 1;
  cursor: pointer;
  opacity: 0.45;
  display: flex;
  align-items: center;
  justify-content: center;
  transition: opacity 0.15s ease, background 0.15s ease;
}

.staerkensieb-bunker-entry-wrap:hover .staerkensieb-bunker-entry-delete,
.staerkensieb-bunker-entry-wrap:focus-within .staerkensieb-bunker-entry-delete,
.staerkensieb-bunker-entry-delete:hover,
.staerkensieb-bunker-entry-delete:focus {
  opacity: 1;
  background: rgba(0, 0, 0, 0.75);
  outline: none;
}

@media (hover: none) and (pointer: coarse) {
  .staerkensieb-bunker-entry-delete {
    opacity: 0.55;
  }
}

.staerkensieb-bunker-delete-prompt {
  margin-top: 0.75rem;
  padding: 0.75rem 1rem;
  border: 1px solid var(--accent-color, #ccc);
  border-radius: 8px;
  background: var(--ss-white, #fff);
  max-width: 28rem;
}

.staerkensieb-bunker-delete-prompt__title {
  margin: 0 0 0.5rem;
  font-weight: 600;
}

.staerkensieb-bunker-delete-prompt__actions {
  display: flex;
  flex-wrap: wrap;
  gap: 0.5rem;
}

.staerkensieb-bunker-delete-prompt__actions .button {
  margin: 0;
}

.staerkensieb-bunker-list-row {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 0.5rem;
  justify-content: space-between;
}

.staerkensieb-bunker-confirm-btn {
  font-size: 0.75rem;
  padding: 0.25rem 0.5rem;
  border-radius: 6px;
  border: 1px solid var(--accent-color, #666);
  background: var(--ss-white, #fff);
  color: var(--accent-color, #333);
  cursor: pointer;
  white-space: nowrap;
}

.staerkensieb-bunker-confirm-btn:hover {
  background: var(--accent-light, #f5f5f5);
}

.staerkensieb-bunker-drop-tags {
  display: flex;
  flex-wrap: wrap;
  gap: 0.35rem;
  justify-content: center;
  margin-top: 0.75rem;
}

.staerkensieb-bunker-drop-zone--draggable {
  border-style: dashed;
}

.staerkensieb-pending-confirm-bar {
  width: 100%;
  margin: 0 0 1rem;
  padding: 0.75rem 1rem;
  border: 2px solid var(--accent-color, #c9a227);
  border-radius: 10px;
  background: var(--accent-light, #fff9e6);
  box-sizing: border-box;
}

.staerkensieb-pending-confirm-bar__title {
  margin: 0 0 0.5rem;
  font-weight: 600;
  font-size: 0.95rem;
}

.staerkensieb-pending-confirm-list {
  list-style: none;
  margin: 0;
  padding: 0;
}

.staerkensieb-pending-confirm-item {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 0.5rem;
  margin: 0.35rem 0;
}

.staerkensieb-pending-confirm-label {
  font-size: 0.95rem;
}

.staerkensieb-bunker-list {
  list-style: none;
  margin: 0;
  padding: 0;
}

.staerkensieb-bunker-list-item {
  margin: 0 0 0.5rem;
  padding: 0.5rem 0.75rem;
  border-radius: 8px;
  background: var(--accent-light, rgba(0, 0, 0, 0.04));
  border-left: 3px solid var(--accent-color, #ccc);
}

.staerkensieb-bunker-list-label {
  display: block;
  cursor: pointer;
  font-size: 0.95rem;
}

.staerkensieb-bunker-drop-zone {
  padding: 1rem 1.25rem;
  border: 2px dashed var(--accent-color, #ccc);
  border-radius: 12px;
  background: var(--accent-light, rgba(0, 0, 0, 0.03));
  text-align: center;
}

.staerkensieb-bunker-drop-zone__title {
  margin: 0 0 0.35rem;
  font-size: 1.05rem;
  font-weight: 600;
  color: var(--accent-color, #333);
}

.staerkensieb-bunker-drop-zone__hint {
  margin: 0;
  font-size: 0.9rem;
  color: var(--ss-text, #333);
  opacity: 0.85;
}

.staerkensieb-bunker-error {
  color: #b32d2e;
  padding: 0.5rem 0;
}

.staerkensieb-welcome-host .staerkensieb-dynamic-intro {
  margin-top: 0;
}

.staerkensieb-layout.staerkensieb-layout--external-form .layout-left {
  flex: 1 1 auto;
  width: 100%;
  max-width: 100%;
}

/* SECTION: DETAILS */
.staerkensieb-details {
  margin-top: 50px !important;
  background-color: var(--ss-white);
  padding: 0.5rem 30px 30px 30px;
}

.edit-assignments {
  display: flex;
  flex-wrap: wrap;
  gap: 0.4rem;
  align-items: center;
}

.edit-assignments .cat-icon {
  width: 24px;
  height: 24px;
  border-radius: 50%;
  border: 2px solid var(--cat-color);
  color: var(--cat-color);
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: 0.7rem;
  cursor: pointer;
  background-color: var(--ss-white);
}

.edit-assignments .cat-icon.active {
  background-color: var(--cat-color);
  color: var(--ss-white);
}

.edit-assignments .cat-weight-select {
  width: 50px;
  padding: 0.2rem;
  border: 1px solid var(--ss-gray-300);
  border-radius: 3px;
  font-size: 1rem;
}

/* SECTION: ADD FORM */
.staerkensieb-add-form {
  display: flex;
  flex-direction: column;
  gap: 0.5rem;
  margin-top: 30px;
  margin-bottom: 1rem;
  align-items: center;
  flex-wrap: wrap;
}

.staerkensieb-add-question {
  font-weight: bold;
  margin-bottom: 0.3rem;
}

.staerkensieb-add-form input[type="text"] {
  padding: 0.4rem;
  border: 1px solid var(--ss-gray-300);
  border-radius: 3px;
  width: 100%;
}

.staerkensieb-assignments {
  display: flex;
  flex-wrap: wrap;
  gap: 0.5rem;
  align-items: center;
}

.assign-item {
  display: flex;
  align-items: center;
  gap: 0.3rem;
}

/* DUPLICATE CANDIDATE: pr?fen, ob zusammenlegbar */
.cat-icon {
  width: 26px;
  height: 26px;
  border-radius: 50%;
  border: 2px solid var(--cat-color);
  color: var(--cat-color);
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: 0.75rem;
  cursor: pointer;
  background-color: var(--ss-white);
}

.cat-icon.active {
  background-color: var(--cat-color);
  color: var(--ss-white);
}

.cat-weight-select {
  width: 70px;
  padding: 0.2rem;
  border: 1px solid var(--ss-gray-300);
  border-radius: 3px;
  font-size: 1.6rem;
  font-weight: bold;
}

#staerkensieb-new-add {
  align-self: center;
  margin-left: auto;
  margin-right: auto;
  display: block;
  padding: 0.4rem 0.8rem;
  border: 1px solid var(--ss-gray-300);
  border-radius: 3px;
  background-color: var(--ss-white);
  cursor: pointer;
  font-weight: bold;
  font-size: 1.4rem;
}

#staerkensieb-new-add:hover {
  background-color: var(--ss-gray-110);
}

.staerkensieb-details table {
  width: 100%;
  background-color: var(--ss-white);
}

/* REVIEW: Kontext pr?fen, nicht blind ?ndern */
.staerkensieb-details th,
.staerkensieb-details th {
  background-color: var(--accent-light) !important;
  color: var(--accent-color);
  font-weight: bold;
}

.staerkensieb-details td {
  background-color: var(--ss-white);
}

.deleted-strength {
  text-decoration: line-through;
  color: var(--ss-gray-800);
  font-size: 1.2rem;
  flex-grow: 1;
  margin-left: 1rem;
  margin-right: 1rem;
}

.staerkensieb-question-slider {
  display: flex;
  align-items: center;
  margin-bottom: 20px;
}

.staerkensieb-question-slider .question-text {
  font-size: 20px;
  margin-left: 20px;
  margin-right: 20px;
  white-space: normal;
  font-weight: bold;
  color: var(--accent-color);
}

.staerkensieb-details td:nth-child(1),
.staerkensieb-details th:nth-child(1) {
  width: 15%;
  font-size: 1.4rem;
}

/* DUPLICATE CANDIDATE: pr?fen, ob zusammenlegbar (.question-section th / .staerkensieb-details thead th) */
.question-section th {
  background-color: var(--accent-light);
  color: var(--accent-color);
  font-weight: bold;
  padding-top: 0.5rem;
  padding-bottom: 0.5rem;
}

.staerkensieb-details thead th {
  background-color: var(--accent-light);
  color: var(--accent-color);
  font-weight: bold;
}

.color-A {
  background-color: var(--ss-blue);
  border-color: var(--ss-blue);
  color: var(--ss-white);
}

.color-B {
  background-color: var(--ss-red);
  border-color: var(--ss-red);
  color: var(--ss-white);
}

.color-C {
  background-color: var(--ss-yellow);
  border-color: var(--ss-yellow);
  color: var(--ss-white);
}

.color-D {
  background-color: var(--ss-green);
  border-color: var(--ss-green);
  color: var(--ss-white);
}

.cat-icon.color-A {
  --cat-color: var(--ss-blue);
  border-color: var(--ss-blue);
  color: var(--ss-blue);
}

.cat-icon.color-B {
  --cat-color: var(--ss-red);
  border-color: var(--ss-red);
  color: var(--ss-red);
}

.cat-icon.color-C {
  --cat-color: var(--ss-yellow);
  border-color: var(--ss-yellow);
  color: var(--ss-yellow);
}

.cat-icon.color-D {
  --cat-color: var(--ss-green);
  border-color: var(--ss-green);
  color: var(--ss-green);
}

#staerkensieb-add-form .edit-assignments .cat-icon {
  width: 24px;
  height: 24px;
  font-size: 0.7rem;
}

#staerkensieb-add-form .edit-assignments .cat-weight-select {
  width: 40px;
  font-size: 0.75rem;
}

#staerkensieb-add-form .cat-icon {
  background-color: var(--ss-white);
  color: var(--cat-color);
  width: 26px;
  height: 26px;
  border-radius: 50%;
  border: 2px solid var(--cat-color);
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: 0.75rem;
  cursor: pointer;
}

#staerkensieb-add-form .cat-icon.active {
  background-color: var(--cat-color);
  color: var(--ss-white);
}

.lang-flags {
  display: flex;
  gap: 0.4rem;
  margin-left: auto;
}

.lang-flag {
  cursor: pointer;
  font-size: 1.3rem;
  line-height: 1;
}

.lang-flag.active {
  transform: scale(1.2);
}

.staerkensieb-toggle-details {
  padding: 0.4rem 0.8rem;
  border: none;
  border-radius: 6px;
  font-size: 1rem;
  cursor: pointer;
  background-color: var(--accent-color);
  color: #fff;
  margin-left: auto;
}

.staerkensieb-toggle-details.active {
  filter: brightness(0.92);
}

.staerkensieb-details th .staerkensieb-toggle-details {
  float: right;
}

.staerkensieb-toolbar {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 0.5rem;
  margin-bottom: 1rem;
  justify-content: flex-end;
}

.staerkensieb-toolbar select,
.staerkensieb-toolbar button,
.staerkensieb-toolbar a {
  padding: 0.4rem 0.6rem;
  border: 1px solid var(--ss-gray-300);
  border-radius: 3px;
  background-color: var(--ss-white);
  cursor: pointer;
  text-decoration: none;
  color: var(--ss-text);
}

.staerkensieb-toolbar a {
  display: inline-block;
}

.staerkensieb-column {
  flex: 1 1 220px;
  min-width: 220px;
  background-color: var(--ss-gray-104);
  border: 1px solid var(--ss-gray-200);
  border-radius: 4px;
  padding: 0.5rem;
}

.staerkensieb-column h3 {
  margin: 0 0 0.5rem;
  font-size: 1rem;
  font-weight: bold;
}

.staerkensieb-list {
  list-style: none;
  margin: 0;
  padding: 0;
  min-height: 30px;
}

.staerkensieb-item {
  background-color: var(--ss-white);
  border: 1px solid var(--ss-gray-300);
  border-radius: 3px;
  padding: 0.5rem;
  margin-bottom: 0.4rem;
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 0.4rem;
}

.staerkensieb-title {
  font-weight: bold;
  flex: 1 1 100%;
  word-break: break-word;
}

.staerkensieb-weight {
  width: 56px;
  padding: 0.2rem;
  border: 1px solid var(--ss-gray-300);
  border-radius: 3px;
}

.staerkensieb-toggles {
  display: flex;
  flex-wrap: wrap;
  gap: 0.3rem;
}

.staerkensieb-cat-label {
  display: flex;
  align-items: center;
  gap: 0.15rem;
  font-size: 0.85rem;
}

.staerkensieb-delete {
  margin-left: auto;
  background: none;
  border: none;
  color: var(--ss-danger);
  font-size: 1.2rem;
  cursor: pointer;
}

.staerkensieb-delete:hover {
  color: var(--ss-danger-deep);
}

.ui-state-highlight {
  height: 2.2em;
  background: var(--ss-gray-140);
  border: 1px dashed var(--ss-gray-850);
  margin-bottom: 0.4rem;
}

#staerkensieb-new-strength,
.staerkensieb-new-strength {
  flex: 1 1 auto;
  padding: 0.4rem;
  border: 1px solid var(--ss-gray-300);
  border-radius: 3px;
  width: 100%;
  height: auto;
  min-height: 0;
  box-sizing: border-box;
  resize: vertical;
  font-size: 1.6rem;
}

.staerkensieb-add-form-host:not([data-input-rows]) #staerkensieb-new-strength,
.staerkensieb-add-form-host:not([data-input-rows]) .staerkensieb-new-strength,
#staerkensieb-digital-app #staerkensieb-lists .layout-right .staerkensieb-new-strength {
  min-height: 3.2em;
}

.staerkensieb-add-form-host[data-input-rows] .staerkensieb-new-strength,
.staerkensieb-new-strength[data-input-rows] {
  min-height: 0 !important;
  height: auto !important;
}

.staerkensieb-detail-input,
.inline-details-input {
  width: 100%;
  padding: 0.4rem;
  border: 1px solid var(--ss-gray-300);
  border-radius: 3px;
  min-height: 3.2em;
  resize: vertical;
  font-size:18px;
}

.staerkensieb-new-cats {
  display: flex;
  flex-wrap: wrap;
  gap: 0.5rem;
}

.staerkensieb-new-cat-label {
  display: flex;
  align-items: center;
  gap: 0.25rem;
  font-size: 0.9rem;
}

.staerkensieb-add-form select {
  padding: 0.3rem;
  border: 1px solid var(--ss-gray-300);
  border-radius: 3px;
}

.staerkensieb-input-wrapper {
  position: relative;
  width: 100%;
}

#staerkensieb-delete-edit {
  position: absolute;
  top: 0.3rem;
  right: 0.3rem;
  border: none;
  background: transparent;
  color: var(--ss-red) !important;
  font-size: 1.8rem;
  cursor: pointer;
  line-height: 1;
}

.staerkensieb-buttons-wrapper {
  display: flex;
  align-items: center;
  gap: 0.6rem;
  flex-wrap: nowrap;
  margin-bottom: 0;
}

#staerkensieb-digital-app #staerkensieb-lists .layout-right .staerkensieb-buttons-wrapper {
  margin-bottom: 40px;
}

.staerkensieb-legacy-ai-coach-toggle-host {
  margin-bottom: 0.75rem;
}

#staerkensieb-cancel-edit {
  border: none;
  background: transparent;
  color: var(--ss-red) !important;
  cursor: pointer;
  font-size: 1.6rem;
  margin-left: 0.4rem;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  line-height: 1;
}

.tag-edit-icon {
  transform: scaleX(-1);
  display: inline-block;
  margin-left: 0.3rem;
}

.details-body .assignment-bars {
  margin-left: 60px;
}

.details-body .entry-body {
  display: flex;
  align-items: center;
  gap: 40px;
}

/* DUPLICATE CANDIDATE: pr?fen, ob zusammenlegbar (.entry-body .detail-edit / .detail-entry .detail-edit) */
.details-body .entry-body .detail-edit {
  margin-left: 0;
  transform: scaleX(-1);
  font-size: 1.2rem;
  display: inline-block;
}

.details-body .entry-body .detail-strength {
  flex-grow: 0;
}

#staerkensieb-add-form {
  display: flex;
  flex-direction: column;
  gap: 0.5rem;
  margin-bottom: 0;
  align-items: flex-start;
  width: 100%;
}

#staerkensieb-add-form .staerkensieb-add-question {
  font-weight: bold;
  margin-bottom: 0.2rem;
}

#staerkensieb-add-form input[type="text"] {
  width: 100%;
  padding: 0.4rem;
  border: 1px solid var(--ss-gray-300);
  border-radius: 3px;
  box-sizing: border-box;
}

#staerkensieb-add-form .staerkensieb-assignments {
  display: flex;
  flex-wrap: wrap;
  gap: 0.5rem;
  align-items: center;
}

#staerkensieb-add-form .cat-weight-select {
  width: 50px;
  padding: 0.2rem;
  border: 1px solid var(--ss-gray-300);
  border-radius: 3px;
  font-size: 0.8rem;
}

#staerkensieb-add-form #staerkensieb-new-add {
  align-self: flex-start;
  padding: 0.4rem 0.8rem;
  border: 1px solid var(--ss-gray-300);
  border-radius: 3px;
  background-color: var(--ss-white);
  cursor: pointer;
  font-weight: bold;
}

#staerkensieb-add-form #staerkensieb-new-add:hover {
  background-color: var(--ss-gray-110);
}

.staerkensieb-table {
  width: 100%;
  border-collapse: collapse;
}

.staerkensieb-table th,
.staerkensieb-table td {
  border: 1px solid var(--ss-gray-300);
  padding: 0.4rem;
  text-align: left;
}

.staerkensieb-table th {
  background-color: var(--ss-gray-110);
  font-weight: bold;
}

.staerkensieb-edit-table button.save-entry,
.staerkensieb-edit-table button.delete-entry {
  border: none;
  background: none;
  font-size: 1rem;
  cursor: pointer;
  margin-right: 0.3rem;
}

.staerkensieb-edit-table button.delete-entry {
  color: var(--ss-danger);
}

.staerkensieb-edit-table button.save-entry {
  color: var(--ss-success-deep);
}

.deleted-entry td {
  text-decoration: line-through;
  color: var(--ss-gray-700);
}

.edit-indicator {
  display: inline-block;
  margin-right: 0.4rem;
  font-size: 0.9rem;
  color: var(--ss-gray-600);
  vertical-align: middle;
}

.staerkensieb-bubble-container {
  display: flex;
  flex-wrap: wrap;
  gap: 0.6rem;
  justify-content: flex-start;
}

.staerkensieb-bubble {
  display: flex;
  align-items: center;
  justify-content: center;
  border-radius: 50%;
  background-color: var(--ss-blue-verylight);
  color: var(--ss-text);
  position: relative;
  text-align: center;
  padding: 0.4rem;
  box-sizing: border-box;
  overflow: hidden;
  word-break: break-word;
}

/* REVIEW: Kontext pr?fen, nicht blind ?ndern */
.weight-1 {
  width: 80px;
  height: 80px;
  font-size: 12px;
}

.weight-2 {
  width: 100px;
  height: 100px;
  font-size: 14px;
}

.weight-3 {
  width: 120px;
  height: 120px;
  font-size: 16px;
}

.weight-4 {
  width: 140px;
  height: 140px;
  font-size: 18px;
}

.weight-5 {
  width: 160px;
  height: 160px;
  font-size: 20px;
}

.staerkensieb-bubble-text {
  display: block;
  pointer-events: none;
  padding: 0 0.3rem;
}

.staerkensieb-bubble-delete {
  position: absolute;
  top: 2px;
  right: 4px;
  background: transparent;
  border: none;
  color: var(--ss-danger);
  font-size: 1rem;
  cursor: pointer;
  display: none;
}

.staerkensieb-bubble:hover .staerkensieb-bubble-delete {
  display: block;
}

.staerkensieb-category-bubble {
  width: 220px;
  height: 220px;
  border-radius: 50%;
  background-color: var(--ss-blue-verylight);
  border: 1px solid var(--ss-slate-200);
  position: relative;
  overflow: visible;
  margin-bottom: 1rem;
  padding: 0.5rem;
  box-sizing: border-box;
}

.details-header {
  font-size: 20px;
  display: flex;
  align-items: center;
  gap: 12px;
}

.details-header-label {
  font-size: 20px;
  font-weight: bold;
  line-height: 1.3;
}

.question-section {
  border-bottom: none;
  padding: 0.3rem 0.5rem;
  margin-top: 0.5rem;
  font-weight: bold;
}

.details-body .detail-entry .detail-edit {
  margin-left: 0;
  transform: scaleX(-1);
  font-size: 1.2rem;
}

.details-body .detail-entry .detail-delete {
  color: var(--ss-danger);
}

.details-body .inline-edit-input {
  width: 100%;
  padding: 0.3rem 0.4rem;
  font-size: 1rem;
  box-sizing: border-box;
}

.details-body .inline-edit-assign .cat-icon {
  width: 24px;
  height: 24px;
  border-radius: 50%;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  font-size: 0.8rem;
  cursor: pointer;
  color: var(--cat-color);
  border: 2px solid var(--cat-color);
  background-color: var(--ss-white);
}

.details-body .inline-edit-assign .cat-icon.active {
  background-color: var(--cat-color);
  color: var(--ss-white);
}

.details-body .inline-edit-assign .cat-weight-select {
  font-size: 0.9rem;
  width: 50px;
}

.details-body .inline-save {
  cursor: pointer;
  color: var(--ss-success);
  font-size: 1.2rem;
}

.details-body .inline-cancel {
  cursor: pointer;
  color: var(--ss-danger);
  font-size: 1.2rem;
}

#staerkensieb-new-strength,
.staerkensieb-new-strength,
.inline-edit-input {
  font-size: 20px;
  color: var(--accent-color);
}

.details-body:empty::before {
  content: "\A \A ";
  white-space: pre;
}

/* SECTION: MENU / LANGUAGE */
.staerkensieb-language-menu {
  position: static;
  display: flex;
  gap: 0.5rem;
  font-size: 1.6rem;
  z-index: 100;
}

.staerkensieb-topbar {
  position: absolute;
  top: 20px;
  left: 20px;
  right: 20px;
  display: flex;
  justify-content: space-between;
  align-items: center;
  z-index: 1000 !important;
  pointer-events: auto !important;
  margin-bottom: 0;
}

.staerkensieb-language-menu .language-flag {
  cursor: pointer;
  transition: transform 0.2s;
}

.staerkensieb-language-menu .language-flag.active {
  transform: scale(1.2);
}

.staerkensieb-dynamic-intro {
  margin-top: 20px;
  font-size: 1rem;
  line-height: 1.5;
}

.staerkensieb-digital-app [title]:not(.menu-icon):not(.language-flag):hover::after {
  content: attr(title);
  position: absolute;
  bottom: calc(100% + 8px);
  left: 50%;
  transform: translateX(-50%);
  background-color: var(--ss-white);
  border: 1px solid var(--accent-color);
  color: var(--accent-color);
  padding: 4px 8px;
  border-radius: 4px;
  font-size: 20px;
  max-width: 90vw;
  white-space: normal;
  word-break: break-word;
  z-index: 1000;
  pointer-events: none;
}

/* SECTION: AI / EVALUATION */
.staerkensieb-eval-items .eval-disabled h4,
.staerkensieb-eval-items .eval-disabled p {
  text-decoration: line-through;
  opacity: 0.6;
}

.staerkensieb-eval-items {
  list-style: none !important;
  list-style-type: none !important;
  margin: 0 !important;
  padding: 0 !important;
}

.staerkensieb-evaluation-list,
.staerkensieb-evaluation-list > li,
.staerkensieb-evaluation-list .staerkensieb-eval-item {
  list-style: none !important;
}

.staerkensieb-eval-items .staerkensieb-eval-item {
  list-style: none;
  margin: 0;
  padding: 1rem;
  border: 1px solid var(--ss-white);
  border-radius: 8px;
  background-color: var(--ss-gray-104);
}

.staerkensieb-eval-items .staerkensieb-eval-item h4 {
  margin: 0 0 0.5rem 0;
  font-size: 1.2rem;
  font-weight: bold;
  color: var(--accent-color, var(--ss-text));
}

.staerkensieb-eval-items .staerkensieb-eval-item p {
  margin: 0 0 1.25rem 0;
  font-size: 1.1rem;
}

.staerkensieb-eval-items .eval-result {
  margin-top: 0.8rem;
  padding: 0.8rem;
  border: 1px solid var(--ss-gray-150);
  border-radius: 4px;
  background-color: var(--ss-white);
  color: var(--ss-white) !important;
}

.staerkensieb-eval-items .eval-download-btn {
  margin-top: 1rem;
}

/* REVIEW: Kontext pr?fen, nicht blind ?ndern */
.staerkensieb-evaluation-list,
.staerkensieb-eval-items .staerkensieb-eval-item {
  background-color: var(--ss-blue-ice) !important;
}

.staerkensieb-evaluation-list h3,
.staerkensieb-eval-info,
.staerkensieb-eval-info h3,
.staerkensieb-eval-info p {

  color: var(--ss-white) !important;
  text-align: left !important;
  margin-left: 0 !important;
}

.staerkensieb-evaluation-list h3,
.staerkensieb-eval-info {
  padding-left: 1rem;
}

.staerkensieb-evaluation-list h3 {
  font-weight: 700 !important;
}

.staerkensieb-eval-info {
  margin-bottom: 20px !important;
}

.staerkensieb-eval-items .eval-run-btn,
.staerkensieb-eval-items .eval-download-btn {
  background-color: var(--ss-white) !important;
  border-color: var(--ss-white) !important;
  color: var(--ss-white) !important;
  font-size: 1.1rem !important;
  margin-bottom: 1.25rem !important;
}

/* DUPLICATE CANDIDATE: pr?fen, ob zusammenlegbar */
.staerkensieb-evaluation-list {
  background-color: transparent !important;
  padding: 0 !important;
  margin: 0 !important;
}

#staerkensieb-new-add.staerkensieb-new-btn {
  border: none;
  padding: 0.4rem 1rem;
  border-radius: 4px;
  cursor: pointer;
  font-weight: bold;
  background-color: var(--accent-light);
  color: var(--ss-text);
}

.details-header-style {
  display: flex;
  align-items: center;
  justify-content: space-between;
  padding: 0.4rem 0.5rem;
  font-weight: bold;
  font-size: 20px;
  background-color: var(--accent-light);
  color: var(--ss-text);
}

.no-strengths-message {
  padding: 0.6rem 0.5rem;
  font-style: italic;
  color: var(--ss-text-muted);
}

.detail-entry {
  padding: 0.4rem 0.2rem;
  border-bottom: 1px solid var(--ss-gray-120);
  display: flex;
  flex-direction: column;
  gap: 0.2rem;
}

.assignment-bars {
  display: flex;
  gap: 2px;
  margin-bottom: 2px;
  margin-left: 60px;
}

.assignment-bar {
  display: inline-block;
  width: 20px;
  height: 3px;
}

.edit-inline-container {
  display: flex;
  flex-direction: column;
  gap: 0.4rem;
}

.edit-first-line {
  display: flex;
  align-items: center;
}

.inline-edit-input {
  flex-grow: 1;
  font-size: 1rem;
}

.detail-actions {
  display: flex;
  gap: 0.5rem;
  margin-left: 1rem;
}

.entry-body {
  display: flex;
  align-items: center;
  gap: 0.5rem;
}

.detail-strength {
  margin-left: 1rem;
  margin-right: 1rem;
}

.detail-restore {
  cursor: pointer;
}

.staerkensieb-evals-export-import {
  margin-top: 20px;
}

.staerkensieb-model-costs {
  border-collapse: collapse;
}

.staerkensieb-model-costs th {
  text-align: left;
  padding-right: 10px;
}

.menu-icon {
  font-size: 24px;
  color: var(--ss-white);
}

.et-pb-icon.divi-icon-size {
  font-size: 20px !important;
  line-height: 1;
}

.eval-image {
  width: 100%;
  height: auto;
  margin-bottom: 20px;
}

.eval-result {
  margin-top: 10px;
}

.eval-history-controls {
  margin-top: 1rem;
  display: flex;
  align-items: center;
  gap: 0.5rem;
}

.eval-history-label {
  cursor: pointer;
  text-decoration: underline;
}

.eval-history-prev,
.eval-history-next {
  cursor: pointer;
  font-size: 1.4rem;
}

.eval-guest-note {
  margin-top: 0.5rem;
}

.eval-download-btn {
  margin-top: 1rem;
}

.staerkensieb-config-intro {
  margin-top: 0.5rem;
  margin-bottom: 1rem;
}

.staerkensieb-language-menu-shortcode {
  font-size: 1.6rem;
}

.staerkensieb-language-menu-shortcode .staerkensieb-lang-flag {
  cursor: pointer;
  transition: transform 0.2s;
  display: inline-block;
  margin-right: 0.5rem;
}

.staerkensieb-language-menu-shortcode .staerkensieb-lang-flag:last-child {
  margin-right: 20px;
}

.staerkensieb-language-menu-shortcode .staerkensieb-lang-flag:hover {
  transform: scale(1.1);
}

.staerkensieb-language-menu-shortcode .staerkensieb-lang-flag:focus {
  outline: none;
}

.staerkensieb-topbar .staerkensieb-language-menu {
  display: none !important;
}

.staerkensieb-topbar--menu-shortcode .staerkensieb-language-menu {
  display: flex !important;
  gap: 0.5rem;
  align-items: center;
}

.account-icon .login-label {
  font-size: 1rem !important;
  font-weight: bold !important;
}

.staerkensieb-account-link .login-label {
  font-size: 1rem !important;
  font-weight: bold !important;
}

.slide-up {
  animation: slideUp 0.5s ease-out forwards;
}

.staerkensieb-ai-panel {
  border: 1px solid var(--accent-color, var(--ss-gray-150));
  background: var(--accent-light, var(--ss-gray-103));
  padding: 1rem;
  border-radius: 4px;
  font-size: 0.9rem;
}

.staerkensieb-ai-panel--layout-preserve {
  display: none !important;
}

/* Coach inaktiv: nur Toggle im Panel, ohne Kasten */
.staerkensieb-ai-panel--inactive-shell {
  border: none !important;
  background: transparent !important;
  padding: 0 !important;
}

.staerkensieb-ai-panel--coach-inactive {
  display: none !important;
}

/* Master-Toggle bleibt beim Spiegeln in Hosts nur als Vorlage auf body – nie sichtbar. */
.staerkensieb-ai-toggle--stash {
  display: none !important;
  visibility: hidden !important;
  position: absolute !important;
  width: 1px !important;
  height: 1px !important;
  overflow: hidden !important;
  clip: rect(0, 0, 0, 0) !important;
  pointer-events: none !important;
}

.staerkensieb-ai-panel .staerkensieb-ai-toggle {
  display: inline-block;
  margin-bottom: 0.5rem;
}

.staerkensieb-ai-buttons .staerkensieb-ai-btn {
  margin-right: 0.5rem;
  margin-bottom: 0.5rem;
}

.staerkensieb-ai-results {
  margin-top: 0.75rem;
}

.ai-chip {
  background: transparent;
  border: 1px solid var(--accent-color);
  border-radius: 3px;
  padding: 0.25rem 0.5rem;
  display: inline-block;
  cursor: pointer;
  margin-right: 0.25rem;
  margin-bottom: 0.25rem;
  font-size: 0.85rem;
  font-weight: bold;
  font-style: normal;
  color: var(--accent-color) !important;
}

.ai-chip:hover {
  background: var(--accent-color) !important;
  color: #fff !important;
  border-color: var(--accent-color) !important;
}

.staerkensieb-bunker-mode-chips .staerkensieb-bunker-chip-list {
  margin-top: 0.5rem;
  overflow: visible;
}

.staerkensieb-bunker-mode-chips .staerkensieb-bunker-entry-wrap {
  overflow: visible;
  padding: 0.4rem 0.4rem 0 0;
  vertical-align: top;
}

.staerkensieb-bunker-mode-chips .staerkensieb-bunker-entry-delete {
  opacity: 0.55;
}

.staerkensieb-bunker-mode-chips .staerkensieb-bunker-entry-wrap:hover .staerkensieb-bunker-entry-delete,
.staerkensieb-bunker-mode-chips .staerkensieb-bunker-entry-wrap:focus-within .staerkensieb-bunker-entry-delete {
  opacity: 1;
}

.staerkensieb-bunker-mode-chips .staerkensieb-bunker-chip {
  background-color: var(--accent-light);
  border: 1px solid var(--accent-color);
  color: var(--accent-color) !important;
  opacity: 1;
  cursor: pointer;
  pointer-events: auto;
}

.staerkensieb-bunker-mode-chips .staerkensieb-bunker-chip:hover {
  background-color: var(--accent-color) !important;
  border-color: var(--accent-color) !important;
  color: var(--ss-white) !important;
}

.staerkensieb-bunker-title {
  margin-bottom: 0.75rem;
}

.ai-options button.selected {
  background: var(--accent-color);
  color: var(--ss-white);
}

.staerkensieb-ai-panel .staerkensieb-ai-btn,
.staerkensieb-ai-panel .staerkensieb-ai-toggle {
  color: var(--accent-color) !important;
}

.staerkensieb-ai-panel .staerkensieb-ai-btn:hover,
.staerkensieb-ai-panel .staerkensieb-ai-toggle:hover {
  background-color: var(--accent-color);
  color: var(--ss-white) !important;
}

.staerkensieb-ai-results,
.staerkensieb-ai-results *:not(button),
.staerkensieb-ai-panel > strong,
.ai-question,
.ai-question *:not(button),
.staerkensieb-ai-debug {
  color: var(--accent-color) !important;
}

#staerkensieb-new-add,
#staerkensieb-add-form #staerkensieb-new-add,
.staerkensieb-new-btn,
.staerkensieb-new-add,
[id^="staerkensieb-new-add"] {
  background-color: var(--accent-light) !important;
  border: 1px solid var(--accent-color) !important;
  color: var(--accent-color) !important;
}

#staerkensieb-new-add:hover,
#staerkensieb-add-form #staerkensieb-new-add:hover,
.staerkensieb-new-btn:hover,
.staerkensieb-new-add:hover,
[id^="staerkensieb-new-add"]:hover {
  background-color: var(--accent-color) !important;
  color: var(--ss-white) !important;
  border-color: var(--accent-color) !important;
}

.button.staerkensieb-tiefer-btn,
.staerkensieb-tiefer-btn {
  padding: 12px 24px !important;
  font-size: var(--ss-font-body) !important;
  font-weight: 600 !important;
  text-transform: uppercase !important;
  border-radius: 5px;
}

body.staerkensieb-add-btn-dark-light #staerkensieb-new-add,
body.staerkensieb-add-btn-dark-light #staerkensieb-add-form #staerkensieb-new-add,
body.staerkensieb-add-btn-dark-light .staerkensieb-new-btn,
body.staerkensieb-add-btn-dark-light .staerkensieb-new-add,
body.staerkensieb-add-btn-dark-light [id^="staerkensieb-new-add"] {
  background-color: var(--accent-color) !important;
  color: var(--ss-white) !important;
  border-color: var(--accent-color) !important;
}

body.staerkensieb-add-btn-dark-light #staerkensieb-new-add:hover,
body.staerkensieb-add-btn-dark-light #staerkensieb-add-form #staerkensieb-new-add:hover,
body.staerkensieb-add-btn-dark-light .staerkensieb-new-btn:hover,
body.staerkensieb-add-btn-dark-light .staerkensieb-new-add:hover,
body.staerkensieb-add-btn-dark-light [id^="staerkensieb-new-add"]:hover {
  background-color: var(--accent-light) !important;
  color: var(--accent-color) !important;
  border-color: var(--accent-color) !important;
}

/* CPT-Eingabefeld: Button-Farben pro Instanz (überschreibt globale body-Klasse) */
.staerkensieb-add-form-host[data-add-button-style="dark_hover_light"] .staerkensieb-new-btn,
.staerkensieb-add-form-host[data-add-button-style="dark_hover_light"] .staerkensieb-new-add,
.staerkensieb-add-form-host[data-add-button-style="dark_hover_light"] [id^="staerkensieb-new-add"] {
  background-color: var(--accent-color) !important;
  color: var(--ss-white) !important;
  border-color: var(--accent-color) !important;
}

.staerkensieb-add-form-host[data-add-button-style="dark_hover_light"] .staerkensieb-new-btn:hover,
.staerkensieb-add-form-host[data-add-button-style="dark_hover_light"] .staerkensieb-new-add:hover,
.staerkensieb-add-form-host[data-add-button-style="dark_hover_light"] [id^="staerkensieb-new-add"]:hover {
  background-color: var(--accent-light) !important;
  color: var(--accent-color) !important;
  border-color: var(--accent-color) !important;
}

.staerkensieb-add-form-host[data-add-button-style="light_hover_dark"] .staerkensieb-new-btn,
.staerkensieb-add-form-host[data-add-button-style="light_hover_dark"] .staerkensieb-new-add,
.staerkensieb-add-form-host[data-add-button-style="light_hover_dark"] [id^="staerkensieb-new-add"],
body.staerkensieb-add-btn-dark-light .staerkensieb-add-form-host[data-add-button-style="light_hover_dark"] .staerkensieb-new-btn,
body.staerkensieb-add-btn-dark-light .staerkensieb-add-form-host[data-add-button-style="light_hover_dark"] .staerkensieb-new-add,
body.staerkensieb-add-btn-dark-light .staerkensieb-add-form-host[data-add-button-style="light_hover_dark"] [id^="staerkensieb-new-add"] {
  background-color: var(--accent-light) !important;
  color: var(--accent-color) !important;
  border-color: var(--accent-color) !important;
}

.staerkensieb-add-form-host[data-add-button-style="light_hover_dark"] .staerkensieb-new-btn:hover,
.staerkensieb-add-form-host[data-add-button-style="light_hover_dark"] .staerkensieb-new-add:hover,
.staerkensieb-add-form-host[data-add-button-style="light_hover_dark"] [id^="staerkensieb-new-add"]:hover,
body.staerkensieb-add-btn-dark-light .staerkensieb-add-form-host[data-add-button-style="light_hover_dark"] .staerkensieb-new-btn:hover,
body.staerkensieb-add-btn-dark-light .staerkensieb-add-form-host[data-add-button-style="light_hover_dark"] .staerkensieb-new-add:hover,
body.staerkensieb-add-btn-dark-light .staerkensieb-add-form-host[data-add-button-style="light_hover_dark"] [id^="staerkensieb-new-add"]:hover {
  background-color: var(--accent-color) !important;
  color: var(--ss-white) !important;
  border-color: var(--accent-color) !important;
}

/* KI-Buttons: globale Darstellung (body-Klasse) */
body.staerkensieb-add-btn-dark-light .staerkensieb-ai-btn.button:not(.staerkensieb-ai-btn--inactive-dim),
body.staerkensieb-add-btn-dark-light .staerkensieb-ai-panel .staerkensieb-ai-btn.button:not(.staerkensieb-ai-btn--inactive-dim) {
  background-color: var(--accent-color) !important;
  color: var(--ss-white) !important;
  border-color: var(--accent-color) !important;
}

body.staerkensieb-add-btn-dark-light .staerkensieb-ai-btn.button:not(.staerkensieb-ai-btn--inactive-dim):hover,
body.staerkensieb-add-btn-dark-light .staerkensieb-ai-panel .staerkensieb-ai-btn.button:not(.staerkensieb-ai-btn--inactive-dim):hover {
  background-color: var(--accent-light) !important;
  color: var(--accent-color) !important;
  border-color: var(--accent-color) !important;
}

/* KI-Button CPT: Button-Farben pro Instanz (überschreibt globale body-Klasse) */
.staerkensieb-ai-button-host[data-ai-button-style="dark_hover_light"] .staerkensieb-ai-btn.button,
.staerkensieb-ai-btn.button[data-ai-button-style="dark_hover_light"] {
  background-color: var(--accent-color) !important;
  color: var(--ss-white) !important;
  border-color: var(--accent-color) !important;
}

.staerkensieb-ai-button-host[data-ai-button-style="dark_hover_light"] .staerkensieb-ai-btn.button:hover,
.staerkensieb-ai-btn.button[data-ai-button-style="dark_hover_light"]:hover {
  background-color: var(--accent-light) !important;
  color: var(--accent-color) !important;
  border-color: var(--accent-color) !important;
}

.staerkensieb-ai-button-host[data-ai-button-style="light_hover_dark"] .staerkensieb-ai-btn.button,
.staerkensieb-ai-btn.button[data-ai-button-style="light_hover_dark"],
body.staerkensieb-add-btn-dark-light .staerkensieb-ai-button-host[data-ai-button-style="light_hover_dark"] .staerkensieb-ai-btn.button,
body.staerkensieb-add-btn-dark-light .staerkensieb-ai-btn.button[data-ai-button-style="light_hover_dark"] {
  background-color: var(--accent-light) !important;
  color: var(--accent-color) !important;
  border-color: var(--accent-color) !important;
}

.staerkensieb-ai-button-host[data-ai-button-style="light_hover_dark"] .staerkensieb-ai-btn.button:hover,
.staerkensieb-ai-btn.button[data-ai-button-style="light_hover_dark"]:hover,
body.staerkensieb-add-btn-dark-light .staerkensieb-ai-button-host[data-ai-button-style="light_hover_dark"] .staerkensieb-ai-btn.button:hover,
body.staerkensieb-add-btn-dark-light .staerkensieb-ai-btn.button[data-ai-button-style="light_hover_dark"]:hover {
  background-color: var(--accent-color) !important;
  color: var(--ss-white) !important;
  border-color: var(--accent-color) !important;
}

.ai-similar-list,
.ai-suggestion-list,
.ai-options {
  margin-left: 0.5rem;
}

.staerkensieb-ai-debug {
  white-space: pre-wrap;
  margin-top: 0.5rem;
  background: var(--ss-gray-105);
  border: 1px dashed var(--ss-gray-300);
  padding: 0.5rem;
  font-size: 0.75rem;
  border-radius: 4px;
}

.ai-target {
  font-weight: bold;
  color: var(--accent-color);
  margin-left: 0.25rem;
}

.ai-question {
  margin-bottom: 0.5rem;
}

.ai-options {
  margin-top: 0.25rem;
}

.ai-options button {
  margin-right: 0.25rem;
  margin-bottom: 0.25rem;
}

.staerkensieb-icon {
  color: var(--accent-color);
  line-height: 1;
  display: inline-flex;
  align-items: center;
  justify-content: center;
}

.staerkensieb-dynamic-intro{
  color: var(--accent-color);
}

.ss-mt-05{ margin-top: 0.5rem; }

/* Frage-Slider Pfeile: Icons via CSS (SVG Data-URI nutzt currentColor) */
.question-arrow{
  width: 1.2rem;
  height: 1.2rem;
  display: inline-block;
  background-size: contain;
  background-repeat: no-repeat;
  color: var(--accent-color);
  cursor: pointer;
}
.question-arrow.prev{
  background-image: url('data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHZpZXdCb3g9IjAgMCAyNCAyNCIgZmlsbD0iY3VycmVudENvbG9yIj48cGF0aCBkPSJNMTUgNmwtNiA2IDYgNiIgc3Ryb2tlPSJjdXJyZW50Q29sb3IiIHN0cm9rZS13aWR0aD0iMiIgZmlsbD0ibm9uZSIgc3Ryb2tlLWxpbmVjYXA9InJvdW5kIiBzdHJva2UtbGluZWpvaW49InJvdW5kIi8+PC9zdmc+');
}
.question-arrow.next{
  background-image: url('data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHZpZXdCb3g9IjAgMCAyNCAyNCIgZmlsbD0iY3VycmVudENvbG9yIj48cGF0aCBkPSJNOSAxOGw2LTYtNi02IiBzdHJva2U9ImN1cnJlbnRDb2xvciIgc3Ryb2tlLXdpZHRoPSIyIiBmaWxsPSJub25lIiBzdHJva2UtbGluZWNhcD0icm91bmQiIHN0cm9rZS1saW5lam9pbj0icm91bmQiLz48L3N2Zz4=');
}

#staerkensieb-details{ background-color: var(--accent-light); color: var(--ss-text); }
#staerkensieb-details .question-section {
  background-color: var(--accent-light);
  color: var(--accent-color);
}

#staerkensieb-details h1,
#staerkensieb-details h2,
#staerkensieb-details h3,
#staerkensieb-details .details-header-label{
  color: var(--accent-color);
}

.assignment-bar--A{ background-color: var(--ss-blue); }
.assignment-bar--B{ background-color: var(--ss-red); }
.assignment-bar--C{ background-color: var(--ss-yellow); }
.assignment-bar--D{ background-color: var(--ss-green); }

/* Inline Edit (kontextual, um globale Kollisionen zu vermeiden) */
#staerkensieb-details .inline-edit-assign{ display:flex; flex-wrap:wrap; gap:0.4rem; margin-left: 1rem; }
#staerkensieb-details .inline-detail-line{ display:flex; flex-direction:column; margin-left: 1rem; margin-top: 0.4rem; }

.staerkensieb-help-tooltip{
  position: absolute;
  left: 10%;
  right: 10%;
  top: 60px;
  z-index: 999;
  padding: 1rem;
  border-radius: 8px;
  width: 80%;
  color: var(--ss-text);
  background: var(--ss-surface);
  border: 1px solid var(--accent-color);
  box-shadow: 0 2px 8px rgba(0,0,0,0.1);
}
.help-close{
  position:absolute;
  top:4px;
  right:6px;
  cursor:pointer;
  font-weight:bold;
  color: var(--accent-color);
}
.ss-help-icon{ color: var(--accent-color); }

.tag-edit-icon{ margin-left: 0.3rem; font-size: 0.8em; cursor: pointer; }

/* SECTION: MOBILE */
/* MOBILE BLOCK: Layout */
/* REVIEW: App-Shell: #staerkensieb-digital-app padding-top (150px), spaeter im Mobile-Kontext durch 30px ueberschrieben; Intro aus / Greeting ein. Topbar: MOBILE TOPBAR (FINAL STRUCTURE). */
@media (max-width: 767px) {
  #staerkensieb-digital-app {
    padding-top: 150px;
  }

  .staerkensieb-intro-section {
    display: none;
  }

  #staerkensieb-greeting {
    display: block;
  }

}

@media (min-width: 769px) {
  #staerkensieb-greeting {
    display: none;
  }

}

/* MOBILE BLOCK: Unknown / Mixed */
/* REVIEW: mixed mobile block - sp?ter ggf. trennen */
@media (max-width: 767px) {
  #staerkensieb-new-add {
    align-self: center;
    margin-left: auto;
    margin-right: auto;
    font-size: 1.4rem;
    padding: 0.5rem 1rem;
    display: block;
  }

  .staerkensieb-buttons-wrapper {
    justify-content: center;
    width: 100%;
  }

  .staerkensieb-evaluation-list {
    background-color: var(--ss-blue-ice);
    padding: 1rem;
  }

  .staerkensieb-evaluation-list h3,
.staerkensieb-eval-info {
    color: var(--ss-blue-deep);
    text-align: left;
    margin-left: 0;
  }

  .staerkensieb-eval-info {
    margin-bottom: 20px;
  }

  .staerkensieb-eval-items .staerkensieb-eval-item {
    background-color: var(--ss-blue-ice);
  }

  .staerkensieb-eval-items .staerkensieb-eval-item > p {
    margin-bottom: 0.5rem !important;
  }

  .staerkensieb-eval-items .eval-run-btn {
    margin-bottom: 0.5rem !important;
  }

/* REVIEW: Kontext pr?fen, nicht blind ?ndern */
.staerkensieb-eval-items .eval-run-btn,
.staerkensieb-eval-items .eval-download-btn {
    background-color: var(--ss-blue-deep);
    border-color: var(--ss-blue-deep);
    color: var(--ss-white);
  }

  .staerkensieb-eval-items .eval-result {
    color: var(--ss-blue-deep);
  }

}

@media (max-width: 980px) {
  .staerkensieb-language-menu {
    margin-bottom: 20px;
  }

  .staerkensieb-menu {
    margin-top: 20px;
    margin-bottom: 20px;
  }

}

/* MOBILE BLOCK: Unknown / Mixed */
/* REVIEW: mixed mobile block - sp?ter ggf. trennen */
@media (max-width: 767px) {
  .staerkensieb-layout {
    flex-direction: column;
    align-items: center;
    gap: 1rem;
  }

  .staerkensieb-layout .layout-left,
  .staerkensieb-layout .layout-right {
    width: 100%;
    max-width: 100%;
    min-width: 0;
    min-height: unset;
  }

  .staerkensieb-main-container {
    margin-left: 0;
    margin-right: 0;
    margin-top: 0;
  }

  .staerkensieb-circle-title {
    display: none;
  }

  .staerkensieb-mobile-title {
    display: block;
    font-weight: bold;
    font-size: 1.6rem;
    margin-top: 0;
    margin-bottom: 0.3rem;
    text-align: center;
  }

  .staerkensieb-details {
    display: none;
    padding-left: 0;
    padding-right: 0;
    width: 100%;
  }

  #staerkensieb-new-strength {
    font-size: 18px;
  }
  
  #staerkensieb-new-strength::placeholder {
  font-size: 18px;
  opacity: 0.6;
}

  .staerkensieb-add-form {
    width: 100%;
    align-items: center;
  }

  #staerkensieb-new-add {
    margin-top: 0.6rem;
  }

  .staerkensieb-digital-container {
    padding: 20px;
  }

}

/* MOBILE BLOCK: Unknown / Mixed */
/* REVIEW: mixed mobile block - sp?ter ggf. trennen */
@media (max-width: 767px) {
  .staerkensieb-digital-container {
    padding: 15px;
  }

  .staerkensieb-add-form-host.staerkensieb-digital-container {
    padding: 15px 15px 20px 15px;
  }

  .staerkensieb-mobile-title {
    font-size: 1.6rem;
    margin-bottom: 0.3rem;
  }

  .staerkensieb-assignments .cat-icon {
    width: 32px;
    height: 32px;
  }

  .staerkensieb-assignments .cat-weight-select {
    width: 60px;
    font-size: 1rem;
  }

  #staerkensieb-new-add {
    width: 100%;
    margin: 1rem auto 0 auto;
    text-align: center;
    font-size: 1.2rem;
    padding: 0.6rem 1rem;
    white-space: normal;
    display: block;
  }

  #staerkensieb-cancel-edit {
    margin-left: 0.5rem;
  }

  .staerkensieb-details {
    padding: 20px;
  }

  .staerkensieb-question-slider {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 0.5rem;
  }

  .staerkensieb-question-slider .question-text {
    text-align: center;
  }

  /* MOBILE BLOCK: Digital app */
  /* REVIEW: Nur App-padding / Shell (#staerkensieb-digital-app); ueberschreibt 150px. Topbar: MOBILE TOPBAR (FINAL STRUCTURE). */
  #staerkensieb-digital-app {
    padding-top: 30px;
  }

}

/* MOBILE BLOCK: Details / Entry Body */
@media (max-width: 767px) {
  .details-body .entry-body {
    flex-wrap: wrap;
    gap: 12px;
    align-items: flex-start;
  }

  .details-body .entry-body .detail-extra {
    flex: 0 0 100%;
    width: 100%;
    margin-left: 0;
  }

}

/* MOBILE BLOCK: Unknown / Mixed */
/* REVIEW: mixed mobile block - sp?ter ggf. trennen */
@media (max-width: 767px) {
  .staerkensieb-lists {
    margin-top: 50px;
  }

  .staerkensieb-question-slider {
    display: flex;
    align-items: center;
    width: 100%;
  }

  .staerkensieb-question-slider .question-text {
    flex: 1;
    text-align: center;
    font-size: 20px;
    line-height: 1.35;
  }

  .staerkensieb-question-slider .question-arrow {
    font-size: 2.4rem;
  }

  .staerkensieb-question-slider .next {
    margin-left: auto;
  }

  #staerkensieb-add-form .staerkensieb-assignments {
    justify-content: center;
    margin-top: 0.5rem;
    margin-bottom: 1rem;
  }

  #staerkensieb-new-add,
  .staerkensieb-new-add {
    margin-top: 30px;
    margin-bottom: 0;
    margin-left: auto;
    margin-right: auto;
    display: block;
    font-size: 1.6rem;
  }

  .staerkensieb-add-form-host.staerkensieb-digital-container {
    padding-bottom: 20px;
  }

  .staerkensieb-buttons-wrapper {
    justify-content: center;
    margin-bottom: 0;
  }

  .staerkensieb-details {
    margin-bottom: 50px;
  }

}

@media (min-width: 769px) {
  .staerkensieb-layout .layout-right {
    min-height: 420px !important;
  }

}

/* MOBILE FINAL LAYER (<=767px)
   Dieser Block ueberschreibt gezielt fruehere Mobile-Regeln.
   Enthaelt finale Regeln fuer:
   - .staerkensieb-menu
   - #staerkensieb-new-add
   - .staerkensieb-lists
   Hinweis: MOBILE MINI CIRCLES / TOPBAR / MAIN BUBBLE (FINAL STRUCTURE)
   liegen in css/mobile.css und werden nach diesem Stylesheet geladen.
*/
@media (max-width: 767px) {
  .staerkensieb-menu-host .staerkensieb-menu,
  .staerkensieb-menu.staerkensieb-menu--standalone {
    position: relative !important;
    left: auto !important;
    right: auto !important;
    transform: none !important;
    margin-bottom: 0 !important;
    display: inline-flex !important;
    white-space: normal !important;
  }

  .staerkensieb-menu {
    left: 50% !important;
    right: auto !important;
    transform: translateX(-50%) !important;
    margin-bottom: 20px !important;
    position: absolute !important;
    padding-left: 0 !important;
    display: inline-flex !important;
    white-space: nowrap !important;
  }

  #staerkensieb-new-add {
    margin-bottom: 0 !important;
  }

  .staerkensieb-lists {
    margin-top: 0 !important;
  }

}

@keyframes slideUp {
  from {
    opacity: 0;
    transform: translateY(20px);
  }
  to {
    opacity: 1;
    transform: translateY(0);
  }
}


.question-section {
  color: var(--accent-color);
  font-weight: 600;
}

.question-arrow,
.question-arrow::before {
  color: var(--accent-color);
}

.question-arrow:hover {
  opacity: 0.7;
}


#staerkensieb-digital-app .question-arrow,
#staerkensieb-digital-app .question-arrow::before {
  color: var(--accent-color);
  transition: opacity 0.2s ease;
}

#staerkensieb-digital-app .question-arrow:hover {
  opacity: 0.7;
}


/* =====================================================
   Fragenslider ? Pfeile aus CSS (nur einmal) + Kreisfarbe (v2.0.40)
   Quelle: JS erzeugt leere <span class="question-arrow ..."></span>
   Pfeile werden ??ber background-image (SVG Data URI) gerendert.
   Pseudo-Icons (::before/::after) werden deaktiviert, um Dopplungen zu vermeiden.
===================================================== */

#staerkensieb-digital-app .staerkensieb-question-slider .question-arrow,
#staerkensieb-digital-app .staerkensieb-question-slider .question-arrow::before,
#staerkensieb-digital-app .staerkensieb-question-slider .question-arrow::after,
.staerkensieb-question-slider-host .staerkensieb-question-slider .question-arrow,
.staerkensieb-question-slider-host .staerkensieb-question-slider .question-arrow::before,
.staerkensieb-question-slider-host .staerkensieb-question-slider .question-arrow::after {
  color: var(--accent-color);
}

#staerkensieb-digital-app .staerkensieb-question-slider .question-arrow,
.staerkensieb-question-slider-host .staerkensieb-question-slider .question-arrow {
  width: 1.2rem;
  height: 1.2rem;
  display: inline-block;
  background-size: contain;
  background-repeat: no-repeat;
  background-position: center;
  cursor: pointer;
}

#staerkensieb-digital-app .staerkensieb-question-slider .question-arrow::before,
#staerkensieb-digital-app .staerkensieb-question-slider .question-arrow::after,
.staerkensieb-question-slider-host .staerkensieb-question-slider .question-arrow::before,
.staerkensieb-question-slider-host .staerkensieb-question-slider .question-arrow::after {
  content: none;
}

#staerkensieb-digital-app .staerkensieb-question-slider .question-arrow.prev,
.staerkensieb-question-slider-host .staerkensieb-question-slider .question-arrow.prev {
  background-image: url("data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHZpZXdCb3g9IjAgMCAyNCAyNCIgZmlsbD0iY3VycmVudENvbG9yIj48cGF0aCBkPSJNMTUgNmwtNiA2IDYgNiIgc3Ryb2tlPSJjdXJyZW50Q29sb3IiIHN0cm9rZS13aWR0aD0iMiIgZmlsbD0ibm9uZSIgc3Ryb2tlLWxpbmVjYXA9InJvdW5kIiBzdHJva2UtbGluZWpvaW49InJvdW5kIi8+PC9zdmc+");
}

#staerkensieb-digital-app .staerkensieb-question-slider .question-arrow.next,
.staerkensieb-question-slider-host .staerkensieb-question-slider .question-arrow.next {
  background-image: url("data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHZpZXdCb3g9IjAgMCAyNCAyNCIgZmlsbD0iY3VycmVudENvbG9yIj48cGF0aCBkPSJNOSAxOGw2LTYtNi02IiBzdHJva2U9ImN1cnJlbnRDb2xvciIgc3Ryb2tlLXdpZHRoPSIyIiBmaWxsPSJub25lIiBzdHJva2UtbGluZWNhcD0icm91bmQiIHN0cm9rZS1saW5lam9pbj0icm91bmQiLz48L3N2Zz4=");
}


/* =====================================================
   Fix: durchgestrichene color-Regel (v2.0.41)
   Ursache: eine sp??tere/spezifischere Regel ??berschreibt die Farbe.
   L??sung: h??here Spezifit??t + am Dateiende.
===================================================== */

#staerkensieb-digital-app .staerkensieb-question-slider .question-arrow.prev,
#staerkensieb-digital-app .staerkensieb-question-slider .question-arrow.next,
#staerkensieb-digital-app .staerkensieb-question-slider .question-arrow.prev::before,
#staerkensieb-digital-app .staerkensieb-question-slider .question-arrow.next::before,
.staerkensieb-question-slider-host .staerkensieb-question-slider .question-arrow.prev,
.staerkensieb-question-slider-host .staerkensieb-question-slider .question-arrow.next,
.staerkensieb-question-slider-host .staerkensieb-question-slider .question-arrow.prev::before,
.staerkensieb-question-slider-host .staerkensieb-question-slider .question-arrow.next::before {
  color: var(--accent-color);
}


/* 1) Evaluation title (white) */
.staerkensieb-eval-item > h4 {
  color: var(--ss-white) !important;
}

/* 2) Evaluation intro text: the FIRST paragraph directly after the h4 (white) */
.staerkensieb-eval-item > h4 + p {
  color: var(--ss-white) !important;
}

/* 3) Button to start evaluation (deep-blue bg, white text) */
.eval-run-btn {
  background-color: var(--ss-blue-deep) !important;
  color: var(--ss-white) !important;
  border: none !important;
}

/* 4) Question label (white) */
.eval-question-label {
  color: var(--ss-white) !important;
}

/* 5) User input (deep-blue bg for input, white text) */
.eval-user-input {
  background-color: var(--ss-white) !important;
  color: var(--blue-deep) !important;
  border: 1px solid rgba(255,255,255,.35) !important;
  border-radius: 5px;
  padding: 12px 14px;
  font-size:16px;
}
.eval-user-input::placeholder {
  color: rgba(255,255,255,.75);
}

/* 6) Evaluation output (white bg, deep-blue text) */
.eval-result {
  background: var(--ss-white) !important;
  color: var(--ss-blue-deep) !important;
  border-radius: 6px;
  padding: 18px 18px;
}
.eval-display,
.eval-display p,
.eval-result p {
  color: var(--ss-blue-deep) !important;
}

/* 7) Slider toggle label (deep-blue) */
.eval-history-label {
  color: var(--ss-blue-deep) !important;
}

/* 8) Word download button (deep-blue bg, white text) */
.eval-download-btn {
  background-color: var(--ss-blue-deep) !important;
  color: var(--ss-white) !important;
  border: none !important;
}
.eval-run-btn:hover,
.eval-download-btn:hover {
  opacity: .9;
}

/* 9) Slider arrows: emojis, deep-blue */
.eval-history-prev,
.eval-history-next {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 34px;
  height: 34px;
  line-height: 1;
  font-size: 20px;
  border-radius: 6px;
  background: transparent;
  border: 0;
  color: var(--ss-blue-deep) !important;
  cursor: pointer;
}
.eval-history-prev:hover,
.eval-history-next:hover {
  opacity: .85;
}


.staerkensieb-evaluation-list .button.eval-run-btn,
.staerkensieb-evaluation-list .button.eval-download-btn,
.staerkensieb-eval-item .button.eval-run-btn,
.staerkensieb-eval-item .button.eval-download-btn {
  background-color: var(--ss-blue-deep) !important;
  color: var(--ss-white) !important;
  border: none !important;
  text-decoration: none !important;
  padding: 10px 14px !important;
  border-radius: 6px !important;
  display: inline-flex !important;
  align-items: center;
  gap: 8px;
}

.staerkensieb-evaluation-list .button.eval-run-btn:hover,
.staerkensieb-evaluation-list .button.eval-download-btn:hover {
  opacity: .9;
}



.ai-button-group{
  margin-top: 14px;
}
.ai-group-title {
  font-weight: 700;
  margin: 0 0 8px 0;
}

.ai-group-title.current-cat-A {
  color: var(--ss-blue) !important;
}

.ai-group-title.current-cat-B {
  color: var(--ss-red) !important;
}

.ai-group-title.current-cat-C {
  color: var(--ss-yellow) !important;
}

.ai-group-title.current-cat-D {
  color: var(--ss-green) !important;
}

.ai-result-title{
  margin-bottom: 20px;
}

.staerkensieb-bunker-intro {
  margin-bottom: 1rem;
}

.staerkensieb-bunker-intro-paragraph {
  margin: 0 0 0.65rem;
  line-height: 1.5;
}

.staerkensieb-bunker-intro-paragraph:last-child {
  margin-bottom: 0;
}

.staerkensieb-bunker-title {
  margin-bottom: 1rem;
}
.ai-chip-detail{
  margin-top: 10px;
  padding: 10px 12px;
  border: 1px solid rgba(0,0,0,0.08);
  border-radius: 8px;
  background: rgba(255,255,255,0.6);
}

.staerkensieb-ai-selected-strength{
  margin-top: 12px;
  margin-bottom: 10px;
  padding: 10px 12px;
  border: 1px solid rgba(0,0,0,0.14);
  border-radius: 10px;
  background: rgba(255,255,255,0.25);
}

/* KI-Button: inaktiver Coach, Modus „abgedunkelt“ */
.staerkensieb-ai-btn.staerkensieb-ai-btn--inactive-dim,
button.staerkensieb-ai-btn.staerkensieb-ai-btn--inactive-dim {
  opacity: 0.45;
  filter: grayscale(0.35);
  cursor: not-allowed;
  pointer-events: none;
}

/* KI-Button: Hinweis wenn Mindestanzahl Stärken nicht erreicht */
.staerkensieb-ai-min-strengths-hint {
  margin: 0.35em 0 0.5em;
  font-size: 0.95em;
  line-height: 1.4;
  color: rgba(0, 0, 0, 0.65);
}
.staerkensieb-ai-button-instance .staerkensieb-ai-min-strengths-hint {
  margin-top: 0;
}

/* KI-Button: Prompt-Debug unter dem Button (pro Button in den Einstellungen) */
.staerkensieb-ai-button-prompt-debug,
pre.staerkensieb-ai-button-prompt-debug {
  display: block;
  margin: 0.5em 0 0.75em;
  padding: 10px 12px;
  max-width: 100%;
  overflow-x: auto;
  font-size: 0.8em;
  line-height: 1.35;
  white-space: pre-wrap;
  word-break: break-word;
  border: 1px solid rgba(0, 0, 0, 0.12);
  border-radius: 8px;
  background: rgba(0, 0, 0, 0.04);
  color: inherit;
}
.ai-button-group .staerkensieb-ai-button-prompt-debug {
  width: 100%;
}
