/*! copyright 2025 SenseVerse UG - <senseverse.net@gmail.com> */
/*!********************************************************************************************************************************************!*\
  !*** css ./node_modules/css-loader/dist/cjs.js!./node_modules/sass-loader/dist/cjs.js!./src/components/AlignmentAchievementComponent.scss ***!
  \********************************************************************************************************************************************/
@charset "UTF-8";
/* --- Local Component Styles --- */
.pdfLinkOverlay {
  display: none;
  /* * By nesting the global body classes with the '&' selector, 
   * this local module class correctly responds to global PDF states.
   */
}
body.pdfMode .pdfLinkOverlay, body.pdf .pdfLinkOverlay {
  display: block;
  position: absolute;
  inset: 0;
  /* Shorthand for top, right, bottom, left: 0 */
  z-index: 10000;
}

/* --- Default Layout --- */
sv-achievement-alignment {
  display: block;
  height: 100%;
  width: 100%;
}

.milestoneBk {
  position: absolute;
  inset: 0;
  display: block;
  overflow: hidden;
}
.milestoneBk img {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  object-fit: cover;
}
.milestoneBk .dystopiaImg {
  z-index: 2;
  /* Sequential fade out: stays for 2.5s, then fades out */
  animation: fadeOut 2s forwards 2.5s;
}
.milestoneBk .utopiaImg {
  z-index: 1;
  opacity: 0;
  /* Sequential fade in: starts as dystopia fades out */
  animation: fadeIn 2s forwards 2.5s;
}

/* --- Global WebComponent Overrides --- */
/* * We target the custom element tag globally because the custom element itself 
 * acts as the host and isn't typically assigned a module class directly. 
 */
body.pdfMode sv-achievement-alignment,
body.pdf sv-achievement-alignment {
  height: 1123px !important;
  width: 794px !important;
  display: block !important;
  position: relative;
  background: #fff;
  overflow: hidden !important;
  /* Verhindert die extra weiße Seite */
  page-break-after: always;
  break-after: page;
}
body.pdfMode sv-achievement-alignment:last-child,
body.pdf sv-achievement-alignment:last-child {
  page-break-after: avoid;
  break-after: avoid;
}
/*!******************************************************************************************************************************!*\
  !*** css ./node_modules/css-loader/dist/cjs.js!./node_modules/sass-loader/dist/cjs.js!./src/components/ActionComponent.scss ***!
  \******************************************************************************************************************************/
.actionButtonWithText {
  display: grid;
  grid-template-columns: 1fr 4fr;
  gap: 16px;
  align-items: center;
}
.actionButtonWithText sv-button {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 8px;
  cursor: pointer;
  padding: 10px;
  width: 140px;
  flex-shrink: 0;
  flex-grow: 1;
}
.actionButtonWithText .action-text {
  margin: 0;
  flex-grow: 2;
  line-height: 1.3;
  word-break: break-word;
}
/*!*****************************************************************************************************************************!*\
  !*** css ./node_modules/css-loader/dist/cjs.js!./node_modules/sass-loader/dist/cjs.js!./src/components/TopicComponent.scss ***!
  \*****************************************************************************************************************************/
.topic,
.dialectic {
  text-align: left;
  width: 100%;
}

.topic .descr {
  position: relative;
}
.topic .descr .title {
  margin: 3vh;
  display: none;
}
.topic .descr .text {
  display: none;
}
.topic .image img {
  width: 100%;
  object-fit: cover;
}
.topic:has(.image img:not([src])) .descr .text {
  display: block;
}
.topic separator {
  margin-top: 3vh;
  margin-bottom: 3vh;
}

.topic-view .image {
  position: relative;
}

.list[mode=topicSelected] .topic .descr .tagAndHeader .text {
  display: block;
}
.list[mode=topicSelected] > sv-view {
  display: none !important;
}
.list[mode=topicSelected] > sv-view:has(.topic),
.list[mode=topicSelected] > sv-view.selected {
  display: block !important;
}
.list[mode=topicSelected] .topic-view .evolutions {
  display: block;
}

.topic-view .evolutions {
  display: none;
}

.list:is([mode=feed], [mode=entities], [mode=competences]) .topic-view .image {
  filter: grayscale(1) brightness(0.5);
  opacity: 0.75;
  border-radius: 144%;
  border: 1vw solid #000000;
  background: rgba(0, 0, 0, 0.4235294118);
}
.list:is([mode=feed], [mode=entities], [mode=competences]) .image img {
  border-radius: 99%;
  background: gray;
}
.list:is([mode=feed], [mode=entities], [mode=competences]) .subviews {
  display: none;
}
.list:is([mode=feed], [mode=entities], [mode=competences]) .tagAndHeader {
  text-align: center;
  box-sizing: border-box;
  left: 0px;
  height: 100%;
  top: 0px;
  pointer-events: none;
  position: absolute;
  text-align: center;
  transform: translate(0%, 0%);
  width: 100%;
  border-radius: 100%;
  overflow: hidden;
  padding: 1vh;
  display: block;
  display: block;
  border-radius: 100%;
  overflow: hidden;
  font-weight: bold;
  color: #fff;
  border: 1vw solid transparent;
  /* clip-path: content-box; */
  text-shadow: 0 2px 4px rgba(0, 0, 0, 0.8);
}
.list:is([mode=feed], [mode=entities], [mode=competences]) .tagAndHeader .competences {
  text-align: center;
  text-align: center;
}
.list:is([mode=feed], [mode=entities], [mode=competences]) .tagAndHeader .tag {
  display: block;
  font-size: 1.8em;
}
.list:is([mode=feed], [mode=entities], [mode=competences]) sv-view.subview-carousel {
  display: none;
}
.list:is([mode=feed], [mode=entities], [mode=competences]) sv-view.subview-carousel:not(.topicAnchor) {
  height: 0px;
}
.list:is([mode=feed], [mode=entities], [mode=competences]) sv-view.subview-carousel:not(.topicAnchor) .content-view {
  transform: translateY(-10%) translateX(30%);
  margin-top: -24%;
}
.list:is([mode=feed], [mode=entities], [mode=competences]) sv-view.subview-carousel.topicAnchor .content-view {
  transform: translateY(50%) translateX(30%);
}
.list:is([mode=feed], [mode=entities], [mode=competences]) sv-view.subview-carousel .content-view {
  scale: 0.63;
  pointer-events: none;
  transform-origin: center;
  transform-box: border-box;
  position: relative;
  user-select: none;
  transform-origin: top left;
  aspect-ratio: 1.777777778;
}
.list:is([mode=feed], [mode=entities], [mode=competences]) sv-view.subview-carousel .select-element {
  background: transparent;
  border-color: transparent !important;
}
.list:is([mode=feed], [mode=entities], [mode=competences]) sv-view.subview-carousel .select-element .text {
  display: none;
}
.list:is([mode=feed], [mode=entities], [mode=competences]) sv-view.subview-carousel .dialectic {
  border: none;
  background: transparent;
}
.list:is([mode=feed], [mode=entities], [mode=competences]) sv-view.subview-carousel .engage {
  display: none !important;
}
.list:is([mode=feed], [mode=entities], [mode=competences]) sv-view.subview-carousel .vote_content {
  /* restored percentage visibility */
}

.topicAnchor {
  position: absolute;
  top: anchor(center);
  left: anchor(center);
  height: anchor-size(height);
  width: anchor-size(width);
  pointer-events: none;
  transform: translate(-50%, -50%);
}

.list[mode=topicSelected] .image:has(img:not([src])) {
  display: none;
}

.subviews {
  display: flex;
  flex-direction: column;
  gap: 4px;
  margin-top: 15px;
}
.subviews > sv-view {
  display: block;
  width: 100%;
}

.collapsed-summary {
  display: none;
  align-items: center;
  gap: 8px;
  cursor: pointer;
  padding: 10px 14px;
  border-radius: var(--main-border-radius, 8px);
  background: rgba(255, 255, 255, 0.03);
  border: 1px dotted rgba(255, 255, 255, 0.08);
  transition: all 0.2s ease-in-out;
  margin: 0;
  width: 100%;
  box-sizing: border-box;
}
.collapsed-summary:hover {
  background: rgba(255, 255, 255, 0.06);
  border-color: var(--accent-color, rgba(255, 255, 255, 0.15));
  transform: translateY(-1px);
}
.collapsed-summary .evolution-prefix {
  font-size: 1.1rem;
  display: flex;
  align-items: center;
  justify-content: center;
}
.collapsed-summary .collapsed-summary-text {
  font-size: 0.95rem;
  line-height: 1.4;
  text-decoration: underline dotted rgba(255, 255, 255, 0.3);
  color: var(--text-color-secondary, #b0b0b0);
  transition: color 0.2s;
}
sv-view.selected .collapsed-summary {
  border-color: var(--accent-color, #fff);
  background: rgba(255, 255, 255, 0.09);
  box-shadow: 0 0 10px rgba(255, 255, 255, 0.1);
}

sv-view.evolution-collapsed {
  opacity: 0.6;
  transition: opacity 0.2s;
  /* Hide the normal content of the subviews */
  /* Make sure the collapsed summary itself is shown */
}
sv-view.evolution-collapsed:hover {
  opacity: 0.9;
}
sv-view.evolution-collapsed .dialectic-view,
sv-view.evolution-collapsed .risk-view,
sv-view.evolution-collapsed .share-view,
sv-view.evolution-collapsed .delegate-view {
  /* Hide everything except .collapsed-summary */
}
sv-view.evolution-collapsed .dialectic-view > *:not(.collapsed-summary),
sv-view.evolution-collapsed .risk-view > *:not(.collapsed-summary),
sv-view.evolution-collapsed .share-view > *:not(.collapsed-summary),
sv-view.evolution-collapsed .delegate-view > *:not(.collapsed-summary) {
  display: none !important;
}
sv-view.evolution-collapsed .collapsed-summary {
  display: flex !important;
}

.share-view,
.delegate-view {
  margin-top: 24px;
  background: rgba(255, 255, 255, 0.05);
  border: 1px solid rgba(255, 255, 255, 0.1);
  border-radius: 12px;
  width: 100%;
  box-sizing: border-box;
  text-align: left;
}

sv-view.evolution-collapsed:has(.share-view),
sv-view.evolution-collapsed:has(.delegate-view) {
  opacity: 1 !important;
}
/*!*********************************************************************************************************************************!*\
  !*** css ./node_modules/css-loader/dist/cjs.js!./node_modules/sass-loader/dist/cjs.js!./src/components/DialecticComponent.scss ***!
  \*********************************************************************************************************************************/
@charset "UTF-8";
.dialectic {
  text-align: left;
  border-radius: var(--main-border-radius);
  width: 100%;
  height: 100%;
  border: 1px solid grey;
  border-radius: var(--main-border-radius);
  overflow: clip;
  display: flex;
  flex-direction: column;
}
.dialectic .tag {
  margin-right: 1rem;
  word-wrap: break-word;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
  max-width: 100%;
}
.dialectic .actions {
  display: none;
}
.dialectic .actions .action {
  display: inline-block;
  border: none;
  background: none !important;
  padding: 0px;
  box-shadow: none;
  min-width: none;
}
.dialectic .differentiator,
.dialectic .delegator {
  display: none;
}
.dialectic .text {
  font-size: 0.69em;
}
.dialectic:not(.voted) .select-element[data-ai-voted=true] {
  --accent-color: var(--color-yellow);
  color: var(--text-color-dark);
}
.dialectic.voted .select-element.active[data-ai-voted=true] {
  --accent-color: var(--color-green);
  background-color: var(--color-green);
  color: var(--text-color-dark);
}
.dialectic.voted .select-element.active[data-ai-voted=true] .text,
.dialectic.voted .select-element.active[data-ai-voted=true] * {
  color: var(--text-color-dark) !important;
}
.dialectic.voted .select-element.active[data-ai-voted=false] {
  --accent-color: var(--color-red);
  background-color: var(--color-red);
  color: var(--text-color-dark);
}
.dialectic.voted .select-element.active[data-ai-voted=false] .text,
.dialectic.voted .select-element.active[data-ai-voted=false] * {
  color: var(--text-color-dark) !important;
}
.dialectic.voted .select-element.active .text {
  display: block !important;
}
.dialectic .select-element {
  --accent-color: #00000053;
  color: var(--text-color-dark);
  position: relative;
  border-radius: 0px;
  background-color: var(--accent-color);
  border: none;
  width: 100%;
  padding: 1vw;
  color: var(--text-color1);
}
.dialectic .select-element:not(.active) .text {
  display: none !important;
}
.dialectic .select-element .text {
  display: none !important;
  border: 0px;
  padding: 3px;
  font-size: max(0.45em, 14px);
}
.dialectic .select-element .vote_content {
  display: inline-flex;
  align-content: center;
  align-items: center;
  justify-content: space-between;
  flex-wrap: wrap;
}
.dialectic .select-element .voters {
  justify-content: left;
}
.dialectic .select-element .statement {
  flex-wrap: wrap;
}
.dialectic .select-element .statement .text:before {
  content: open-quote;
  font: 1em/100% Georgia, serif;
}
.dialectic .select-element .statement .text:after {
  content: close-quote;
  font: 1em/100% Georgia, serif;
}
.dialectic .select-element .statement .voters {
  display: none;
  text-align: center;
}
.dialectic .select-element .statement .voters .user {
  margin-right: 1vh;
  font-size: xx-small;
  width: auto;
}
.dialectic .select-element .statement .voters .user .influence {
  display: none;
}
.dialectic .select-element .statement .voters .user:not(.aiuser) .name {
  display: none;
}
.dialectic .select-element .voted .hasVotes .voters {
  display: flex;
  margin: 0px;
  row-gap: 5px;
  column-gap: 17px;
  color: white;
  z-index: 9;
  margin-top: 1vh;
}
.dialectic .select-element .radiobutton {
  display: none;
  width: 3vh;
  height: 3vh;
}
.dialectic .select-element .percentage {
  display: none;
}
.dialectic .select-element > div {
  display: flex;
  align-items: center;
  vertical-align: top;
  overflow-x: hidden;
  overflow-y: clip;
  width: 100%;
  box-sizing: border-box;
  align-items: flex-start;
}
.dialectic .select-element .action {
  display: none;
  position: absolute;
  width: 100%;
  background: none !important;
  padding: 0px;
  box-shadow: none;
  min-width: none;
}
.dialectic .select-element .action svg {
  border-radius: 50%;
  background-color: rgba(24, 39, 71, 0.4196078431);
  padding: 4.5px;
  position: absolute;
  right: 1.8vh;
  top: -2.4vh;
  height: auto;
  width: 1.8vh;
  opacity: 0.75;
}
.dialectic .vote_content {
  flex-grow: 1;
  width: 100%;
  padding: 0.81vw;
  overflow: hidden;
  display: inline-flex;
  flex-wrap: wrap;
  text-align: left;
}
.dialectic .vote_content > * {
  width: 100%;
  text-align: left;
}
.dialectic separator {
  margin: 0vh;
}
.dialectic separator:nth-of-type(1) {
  display: none;
}
.dialectic.voted-ai input[type=radio] {
  accent-color: var(--color-green);
}
.dialectic.voted-human input[type=radio] {
  accent-color: var(--color-red);
}
.dialectic.voted .select-element .percentage {
  visibility: visible;
}
.dialectic .inner_card {
  border: 1px solid grey;
  border-radius: var(--main-border-radius);
  overflow: hidden;
}
.dialectic .inner_card .select-element {
  border-radius: var(--main-border-radius);
}
.dialectic .inner_card .select-element:not([style*="display: none"]) ~ .select-element {
  border-top-left-radius: 0;
  border-top-right-radius: 0;
}
.dialectic .inner_card .select-element:has(~ .select-element:not([style*="display: none"])) {
  border-bottom-left-radius: 0;
  border-bottom-right-radius: 0;
}
.dialectic .voters .avatar {
  border-radius: 100%;
  background-color: #ffffff;
  border: 1px solid black;
  background-size: contain;
  background-repeat: no-repeat;
  background-position: center;
  height: min(60px, min(9vw, 9vh));
  width: min(60px, min(9vw, 9vh));
}
.dialectic .voters .avatar.inside {
  margin-right: 30%;
}
.dialectic .voters .avatar.outside {
  margin-left: 30%;
}

.evolutions .dialectic-view .select-element {
  padding: 1vh;
}

.statement {
  flex-wrap: wrap;
}
.statement .text:before {
  content: open-quote;
  font: 1em/100% Georgia, serif;
}
.statement .text:after {
  content: close-quote;
  font: 1em/100% Georgia, serif;
}

.differentiator:has(input:checked) textarea {
  display: inline;
  width: 100%;
  min-height: 30vh;
  font-size: larger;
  border-radius: var(--main-border-radius);
  padding: var(--main-border-radius);
  border: 1px solid transparent;
  outline: none !important;
}
.differentiator textarea {
  display: none;
}

.norealstatement {
  color: var(--text-color2);
  font-size: 0.69em;
}
.norealstatement .text:before {
  content: open-quote;
  color: var(--accent-color);
  font: 1em/100% Georgia, serif;
  quotes: "»" "«";
}

.delegator .follows-group {
  display: none;
}
.delegator .user {
  display: inline-flex;
  align-items: center;
}

body.preview .dialectic {
  border: none !important;
  border-radius: 0px !important;
  width: 100% !important;
  max-width: 100% !important;
}
body.preview .dialectic .inner_card {
  border: none !important;
  border-radius: 0px !important;
}
body.preview .dialectic .select-element {
  background-color: transparent !important;
  --accent-color: transparent !important;
  border-radius: 0px !important;
}
body.preview .dialectic .select-element.active,
body.preview .dialectic .select-element.voted,
body.preview .dialectic .select-element.active-ai {
  --accent-color: var(--color-green) !important;
  background-color: var(--color-green) !important;
  color: var(--text-color-dark) !important;
}
body.preview .dialectic .select-element.active .text,
body.preview .dialectic .select-element.active *,
body.preview .dialectic .select-element.voted .text,
body.preview .dialectic .select-element.voted *,
body.preview .dialectic .select-element.active-ai .text,
body.preview .dialectic .select-element.active-ai * {
  color: var(--text-color-dark) !important;
}
body.preview .delegator .text {
  font-size: 21px;
}
body.preview .differentiator {
  display: none;
}

.list:is([mode=feed], [mode=entities], [mode=competences]) .select-element .text {
  display: none;
}

.widget_mode .dialectic {
  border: none !important;
  border-radius: 0px !important;
  width: 100% !important;
  max-width: 100% !important;
}
.widget_mode .dialectic .inner_card {
  border: none !important;
  border-radius: 0px !important;
}
.widget_mode .dialectic .engage {
  display: none !important;
}
.widget_mode .dialectic .voters .avatar {
  height: 45vh;
  width: 45vh;
}
.widget_mode .dialectic .select-element .radiobutton {
  width: 6vh;
  height: 6vh;
  display: none;
}
.widget_mode .dialectic .select-element {
  background-color: transparent !important;
  --accent-color: transparent !important;
  border-radius: 0px !important;
}
.widget_mode .dialectic .select-element.active,
.widget_mode .dialectic .select-element.voted,
.widget_mode .dialectic .select-element.active-ai {
  --accent-color: var(--color-green) !important;
  background-color: var(--color-green) !important;
  color: var(--text-color-dark) !important;
}
.widget_mode .dialectic .select-element.active .text,
.widget_mode .dialectic .select-element.active *,
.widget_mode .dialectic .select-element.voted .text,
.widget_mode .dialectic .select-element.voted *,
.widget_mode .dialectic .select-element.active-ai .text,
.widget_mode .dialectic .select-element.active-ai * {
  color: var(--text-color-dark) !important;
}

sv-view.subview-carousel .dialectic {
  background: transparent;
  border: none;
}
sv-view.subview-carousel .select-element {
  background: transparent;
  border-color: transparent !important;
}
sv-view.subview-carousel .select-element .text {
  display: none;
}
sv-view.subview-carousel .engage {
  display: none !important;
}
/*!*********************************************************************************************************************************!*\
  !*** css ./node_modules/css-loader/dist/cjs.js!./node_modules/sass-loader/dist/cjs.js!./src/components/PotentialComponent.scss ***!
  \*********************************************************************************************************************************/
.risk-view {
  color: var(--text-color1);
  box-sizing: border-box;
}
.risk-view .risk {
  text-align: left;
  font-size: 1.02em;
}
.risk-view .risk .riskText {
  background: none;
  position: relative;
  text-align: center;
  color: var(--text-color-dark);
  height: 100%;
  display: flex;
  align-items: center;
  justify-content: center;
}
.risk-view .risk .riskText text {
  font-size: 0.45em;
  display: none;
}
.risk-view .risk .riskText tag {
  font-weight: bolder;
  margin-right: 12px;
  font-size: min(1.44em, 15vh);
  word-wrap: break-word;
  vertical-align: middle;
  display: flex;
  align-content: center;
  align-items: center;
  justify-content: center;
}
.risk-view .risk .riskText .symbol-icon {
  font-family: "Material Symbols Outlined";
  display: none;
}
.risk-view .risk .riskText::hover text {
  display: initial;
}
.risk-view .scenarios {
  text-align: left;
  font-size: 0.81em;
}
.risk-view .scenarios > div,
.risk-view .risk {
  position: relative;
  width: 100%;
  box-sizing: border-box;
  padding: 3vh;
  cursor: grab;
  box-shadow: 0px 0px 2px 1px var(--backbar-color);
  border-radius: 3px;
  overflow: clip;
  border-radius: var(--main-border-radius);
}
.risk-view .bar {
  top: 0px;
  min-width: 3vw;
  opacity: 1;
  z-index: 0;
  left: 0px;
  max-width: 100%;
  background-color: var(--backbar-color);
}
.risk-view .barBack {
  background: var(--backbar-color);
  opacity: 0.81;
  filter: brightness(0.45);
  backdrop-filter: blur(9px) brightness(0.5);
}
.risk-view .barFront {
  border-right: 1px solid rgba(128, 128, 128, 0.0901960784);
}
.risk-view .scoreVote {
  position: absolute;
  right: 0vw;
  bottom: 0vh;
  transform: translateX(50%) translateY(0%);
  z-index: 111111;
}
.risk-view .barVote {
  display: none;
  background-color: transparent;
}
.risk-view .barVote .scoreVote {
  top: 1vh;
}
.risk-view .risk-header {
  display: none;
  text-align: left;
  flex-grow: 1;
  width: 100%;
}
.risk-view .risk-header div {
  text-align: left;
  line-height: normal;
  font-weight: bold;
  width: 93%;
}
.risk-view .risk-header svg {
  width: 9vh;
  display: none;
}
.risk-view .bottomText {
  display: none;
  text-align: center;
  width: 100%;
  font-size: smaller;
  padding-top: 3vh;
  box-sizing: border-box;
  position: relative;
}
.risk-view .bottomText div {
  padding-top: 3vh;
}
.risk-view .bottomText intro {
  display: none;
  font-size: min(1.44vw, 1.44vh);
  position: absolute;
  margin-top: max(-1.2vh, -1.2vw);
}
.risk-view .bottomText .affected,
.risk-view .bottomText .delegated,
.risk-view .bottomText .scenario {
  display: flex;
  flex-direction: row-reverse;
}
.risk-view .bottomText .affected text,
.risk-view .bottomText .delegated text,
.risk-view .bottomText .scenario text {
  padding-left: 3vh;
  padding-bottom: 1vh;
}
.risk-view .bottomText .scenario {
  display: block;
}
.risk-view .risk-footer {
  position: relative;
}
.risk-view .risk-badge {
  display: inline-block;
  padding: min(6vh, 6vw);
  background: var(--backbar-color);
  color: var(--risk-color);
  border-radius: 50%;
  font-weight: bold;
  position: absolute;
  top: 0vh;
  right: 0vh;
  text-align: center;
  display: inline-flex;
  flex-direction: column;
  align-items: center;
  margin: var(--view-padding);
  display: none;
  font-size: max(2.1vh, 2.1vw);
  font-variant-caps: all-small-caps;
  aspect-ratio: 1/1;
}
.risk-view .scenario text {
  font-size: small;
  display: block;
  padding-top: 1vh;
}
.risk-view.detailed .risk text, .risk-view.voted .risk text {
  display: block;
}
.risk-view.detailed .bottomText intro, .risk-view.voted .bottomText intro {
  display: inline-block;
}
.risk-view.detailed .barVote, .risk-view.voted .barVote {
  display: block;
}

.widget_mode .risk-view > div:not(.risk) {
  display: none;
}
.widget_mode .risk-view .risk {
  height: 100vh;
}
.widget_mode .risk-view .risk .scoreVote {
  top: 9vh;
  height: 81vh;
  width: 81vh;
}
.widget_mode .risk-view .risk .riskText {
  display: none;
}

body.preview .risk-view .risk {
  border-radius: 0px;
}
body.preview .risk-view .risk .barVote {
  display: block !important;
}
body.preview .risk-view .risk .barBack {
  opacity: 1;
  background: #ffffff;
  filter: none;
  border: none;
}
body.preview .risk-view .risk .scenario text {
  font-size: max(12px, 2.1vh);
}

.preview .risk-badge {
  display: flex;
  justify-content: center;
}

.metric-view svg.traffic-light-container {
  width: min(54%, 30vh);
  height: unset;
}
.metric-view .arrow-indicator {
  font-size: min(30vh, 3em);
  display: flex;
  align-items: center;
  justify-content: center;
  transition: color 0.5s ease;
}

svg.traffic-light-container {
  width: 36px;
  height: 36px;
  fill: unset;
  stroke: unset;
}

.traffic-light-container svg {
  width: 100%;
  height: 100%;
}

.traffic-light-container .red {
  fill: var(--color-red);
}

.traffic-light-container .yellow {
  fill: var(--color-yellow);
}

.traffic-light-container .green {
  fill: var(--color-green);
}

.traffic-light-container .light-off {
  fill: #444546;
}

.traffic-light-container .traffic-light-frame {
  opacity: 1;
}
/*!***********************************************************************************************************************************!*\
  !*** css ./node_modules/css-loader/dist/cjs.js!./node_modules/sass-loader/dist/cjs.js!./src/components/LeaderBoardComponent.scss ***!
  \***********************************************************************************************************************************/
@charset "UTF-8";
/* --- Global Overrides (PDF Rendering Engine) --- */
body.pdfMode {
  /* Target the local module class inside the global PDF mode */
}
body.pdfMode #content,
body.pdfMode .list,
body.pdfMode .list > sv-view {
  height: auto !important;
  width: 794px !important;
  /* Force document width to match A4 PDF width exactly */
  overflow: visible !important;
  display: block !important;
  font-size: 22px !important;
  /* Reset the huge '9vw' base font used in preview mode */
}
body.pdfMode .milestone-view .progress {
  display: none;
}
body.pdfMode .leaderboardRoot {
  height: auto !important;
  width: 794px !important;
  overflow: visible !important;
  display: block !important;
  font-size: 22px !important;
}
body.pdfMode .leaderboardRoot .categorySlide {
  height: 1123px !important;
  min-height: 1123px !important;
  width: 794px !important;
  min-width: 794px !important;
  /* Fixed A4 pixels */
  margin: 0 !important;
  padding: 60px 40px !important;
  border-radius: 0;
  overflow: hidden !important;
  flex-direction: column;
  justify-content: flex-start;
  align-items: center;
  background: linear-gradient(165deg, #ffffff 0%, #f4f9ff 100%) !important;
  flex-shrink: 0;
  display: flex !important;
  page-break-inside: avoid;
  break-inside: avoid;
  /* Verhindert die extra weiße Seite am Ende des PDFs */
}
body.pdfMode .leaderboardRoot .categorySlide:not(:last-child) {
  page-break-after: always;
  break-after: page;
}

/* --- Local Component Styles --- */
.leaderboardRoot {
  width: 100%;
  color: var(--main-font-color, #222);
}
.leaderboardRoot .categorySlide {
  display: flex;
  flex-direction: column;
  padding: 30px;
  box-sizing: border-box;
  background: var(--card-bk-color, #f9f9f9);
  margin-bottom: 20px;
}
.leaderboardRoot .categorySlide .catHeader {
  display: flex;
  flex-direction: column;
  align-items: center;
  width: 100%;
  margin-bottom: 60px;
}
.leaderboardRoot .categorySlide .catHeader .catIcon {
  width: 120px;
  height: 120px;
  margin-bottom: 30px;
  color: var(--accent-color);
  filter: drop-shadow(0 4px 8px rgba(0, 0, 0, 0.1));
}
.leaderboardRoot .categorySlide .catHeader .catIcon svg {
  width: 100%;
  height: 100%;
  fill: currentColor;
}
.leaderboardRoot .categorySlide .catHeader .catTitle {
  font-size: 2.2em;
  font-weight: 800;
  text-align: center;
  color: var(--accent-color, #007ebb);
  text-transform: uppercase;
  border-bottom: 4px solid var(--accent-color);
  padding-bottom: 15px;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
  width: 100%;
  display: block;
  box-sizing: border-box;
}
.leaderboardRoot .categorySlide .catHeader .categoryDescription {
  font-size: 0.9em;
  color: #777;
  margin-top: 10px;
}
.leaderboardRoot .categorySlide .expertRows {
  width: 100%;
  max-width: 680px;
  display: flex;
  flex-direction: column;
  gap: 20px;
}
.leaderboardRoot .categorySlide .expertRows .expertRow {
  display: flex;
  align-items: center;
  padding: 20px 30px;
  background: #ffffff;
  border-radius: 16px;
  box-shadow: 0 4px 15px rgba(0, 126, 187, 0.08);
  border: 1px solid rgba(0, 126, 187, 0.1);
}
.leaderboardRoot .categorySlide .expertRows .expertRow:first-child {
  background: linear-gradient(90deg, #ffffff 0%, #fffdf0 100%);
  border: 2px solid #ffd700;
  transform: scale(1.02);
}
.leaderboardRoot .categorySlide .expertRows .expertRow .expertStar {
  width: 30px;
  margin-right: 10px;
  display: flex;
  align-items: center;
  justify-content: center;
}
.leaderboardRoot .categorySlide .expertRows .expertRow .expertStar svg {
  width: 24px;
  height: 24px;
  fill: #FFD700;
}
.leaderboardRoot .categorySlide .expertRows .expertRow .expertRank {
  font-size: 2em;
  font-weight: 900;
  width: 50px;
  color: #cbd5e0;
}
.leaderboardRoot .categorySlide .expertRows .expertRow .expertAvatarMini {
  width: 65px;
  height: 65px;
  border-radius: 50%;
  margin-right: 20px;
  background-size: cover;
  background-color: #edf2f7;
  border: 3px solid var(--accent-color);
  box-shadow: 0 2px 5px rgba(0, 0, 0, 0.1);
}
.leaderboardRoot .categorySlide .expertRows .expertRow .expertDisplayName {
  flex: 1;
  font-size: 1.4em;
  font-weight: 600;
}
.leaderboardRoot .categorySlide .expertRows .expertRow .expertVal {
  font-size: 1.2em;
  font-weight: bold;
  color: var(--accent-color);
}

/* --- Unused / Footer Elements (Kept for completeness if injected dynamically) --- */
.pdfFooterLink {
  font-size: 1.5em;
  color: var(--accent-color);
  text-decoration: none;
  border: 2px solid var(--accent-color);
  padding: 15px 30px;
  border-radius: 30px;
  transition: all 0.3s;
}
.pdfFooterLink .closeFollowedBy {
  text-align: center;
  margin: 20px 0;
  font-size: 1.1em;
  color: #555;
  font-weight: 500;
}
.pdfFooterLink .emptyCategoryPlaceholder {
  text-align: center;
  padding: 40px 20px;
  background-color: #f0f8ff;
  border-radius: 16px;
  border: 1px dashed var(--accent-color);
  color: #666;
  font-size: 1.2em;
  cursor: pointer;
  min-height: 180px;
  display: flex;
  align-items: center;
  justify-content: center;
  transition: background-color 0.2s;
}
.pdfFooterLink .emptyCategoryPlaceholder .placeholderText {
  margin: 0;
  line-height: 1.5;
  font-weight: 700;
  color: var(--accent-color);
  text-transform: uppercase;
}
.pdfFooterLink .emptyCategoryPlaceholder:hover {
  background-color: #f0f8ff;
}
/*!*******************************************************************************************************************************!*\
  !*** css ./node_modules/css-loader/dist/cjs.js!./node_modules/sass-loader/dist/cjs.js!./src/components/OmnibarComponent.scss ***!
  \*******************************************************************************************************************************/
.omnibar-wrapper {
  position: relative;
  /* background: rgb(255 246 246 / 0%); */
  border-top-left-radius: 12px;
  border-top-right-radius: 12px;
  /* backdrop-filter: blur(3px); */
}
.omnibar-wrapper .response-view-container {
  -webkit-mask-image: linear-gradient(to top, black 85%, transparent 100%);
  mask-image: linear-gradient(to top, black 85%, transparent 100%);
  -webkit-mask-image: linear-gradient(to top, transparent, black 20px, black calc(100% - 20px), transparent);
  mask-image: linear-gradient(to top, transparent, black 60px, black calc(100% - 60px), transparent);
  overflow-y: scroll;
  padding: 1vh;
  max-height: 54vh;
  display: none;
}
.omnibar-wrapper .reply-chips-container {
  -webkit-mask-image: linear-gradient(to right, transparent, black 20px, black calc(100% - 20px), transparent);
  mask-image: linear-gradient(to right, transparent, black 60px, black calc(100% - 60px), transparent);
}
.omnibar-wrapper .reply-chips-container {
  /* No padding on the container itself */
}
.omnibar-wrapper .response-view-container > *:first-child,
.omnibar-wrapper .reply-chips-container > *:first-child {
  margin-right: 45px;
}
.omnibar-wrapper .response-view-container > *:last-child,
.omnibar-wrapper .reply-chips-container > *:last-child {
  margin-left: 45px;
}

.omnibar {
  position: relative;
  position: relative;
  width: 100%;
  display: flex;
  align-content: center;
  align-items: center;
}
.omnibar sv-container {
  overflow: hidden;
}
.omnibar sv-container .list {
  gap: 3px;
}
.omnibar sv-container .list > * {
  position: relative;
}
.omnibar sv-container .list > *::before {
  content: "";
  margin-top: -4.5%;
  margin-bottom: -4.5%;
  background: rgba(38, 38, 38, 0.77);
  border-radius: 50%;
  box-shadow: inset rgba(0, 0, 0, 0.63) 0px 0px 6px 1px;
  height: stretch;
  box-sizing: border-box;
  display: none;
  position: absolute;
  /* z-index: -1; */
  left: 0px;
  top: 0px;
  width: 100%;
}
.omnibar sv-container .loaderMenu {
  opacity: 0;
  display: none;
  transition: opacity 0.5s;
}
.omnibar sv-container .list > sv-view::before {
  content: "";
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  width: 13vh;
  height: 13vh;
  background-color: var(--accent-color);
  background-image: var(--accent-gradient);
  border-radius: 50%;
  z-index: -1;
  box-shadow: 0px 4px 6px rgba(0, 0, 0, 0.1);
}
.omnibar sv-container .list > * {
  scroll-snap-align: center;
  /* or start, end */
  flex-shrink: 0;
  /* Ensures items don't shrink and take up full space */
  width: 100%;
  /* If you want each item to take up the full width of the scroller */
}
.omnibar .flex-container::before {
  content: "";
  position: absolute;
  inset: 0;
  /* Spans the full size of the container */
  border-radius: inherit;
  /* Matches your container's roundness */
  padding: 3px;
  /* This is your border thickness */
  -webkit-mask-composite: xor;
  mask-composite: exclude;
  pointer-events: none;
  background: linear-gradient(145deg, rgba(197, 197, 197, 0.3647058824), rgba(255, 255, 255, 0.3803921569));
  /* Allows clicks to pass through to buttons */
}
.omnibar .flex-container {
  border-radius: 75%;
  aspect-ratio: 16/9;
  border: 3px solid var(--accent-color);
  display: flex;
  align-items: center;
  gap: 1.2px;
  box-shadow: var(--box-shadow);
  backdrop-filter: blur(3px);
  overflow: hidden;
  width: stretch;
  transition: transform 0.75s ease, opacity 0.75s ease, scale 0.75s ease, filter 0.75s ease;
}
.omnibar .button-group {
  height: stretch;
  display: flex;
  align-items: center;
  /* gap: 9px; */
  justify-content: center;
  padding: 3px 12px;
  width: 21px;
  /* border: 1px solid transparent; */
  box-sizing: content-box;
}
.omnibar .button-group svg {
  stroke: var(--text-color1);
  stroke-width: 2px;
  stroke-linecap: round;
  stroke-linejoin: round;
  fill: none;
  color: #fff;
}
.omnibar .button-group svg > * {
  stroke: inherit;
  stroke-width: inherit;
  stroke-linecap: inherit;
  stroke-linejoin: inherit;
  fill: inherit;
  color: inherit;
}
.omnibar .button-group .avatar {
  background: none;
  height: auto;
  /* height: 21px; */
  width: 21px;
  aspect-ratio: 1;
}
.omnibar .button-group .loaderMenu {
  height: unset;
}
.omnibar .button-group .loaderMenu .loaderWrapper {
  bottom: 0;
  height: 100%;
  display: flex;
  align-items: center;
  position: relative;
}
.omnibar .button-group .list {
  overflow: scroll;
}
.omnibar .button-group .list sv-view {
  display: block;
}
.omnibar .button-group .list .calltoaction {
  height: 100%;
  width: 100%;
  top: 0vh;
}
.omnibar .button-group .list .header {
  display: none;
}
.omnibar .button-group .list .milestone-view {
  padding: 0;
  margin-bottom: 0;
  height: 100%;
}
.omnibar sv-container,
.omnibar .icon-wrapper,
.omnibar sv-view,
.omnibar .list {
  height: 100%;
  width: 100%;
}
.omnibar sv-container .content-view,
.omnibar .icon-wrapper .content-view,
.omnibar sv-view .content-view,
.omnibar .list .content-view {
  height: stretch;
  width: 100%;
  padding-top: 0;
  padding-bottom: 0;
  display: block;
  padding: 0;
}
.omnibar sv-container .content-view .milestone-view,
.omnibar .icon-wrapper .content-view .milestone-view,
.omnibar sv-view .content-view .milestone-view,
.omnibar .list .content-view .milestone-view {
  padding: 0;
  margin-bottom: 0;
}
.omnibar sv-container .content-view .milestone-view .milestone_bk,
.omnibar .icon-wrapper .content-view .milestone-view .milestone_bk,
.omnibar sv-view .content-view .milestone-view .milestone_bk,
.omnibar .list .content-view .milestone-view .milestone_bk {
  background-color: transparent;
}
.omnibar sv-container .content-view .milestone-view .header,
.omnibar .icon-wrapper .content-view .milestone-view .header,
.omnibar sv-view .content-view .milestone-view .header,
.omnibar .list .content-view .milestone-view .header {
  font-size: 3em;
  color: var(--text-color-dark);
}
.omnibar .input-wrapper {
  padding: 9px;
  width: 100%;
  display: flex !important;
  align-items: center;
}
.omnibar .milestone-view .header {
  color: #fff;
}
.omnibar textarea.input-field {
  color: var(--text-color-dark);
  user-select: text !important;
  -webkit-user-select: text !important;
  cursor: text !important;
  border-radius: 12px;
  max-height: 100%;
  padding: 2.1vh;
  text-align: center;
  font-size: 1.44em;
}
.omnibar textarea.input-field::placeholder {
  color: var(--text-color-dark);
}
.omnibar .icon-wrapper {
  display: flex;
  align-items: center;
  padding-left: 8px;
  width: 40px;
}
.omnibar .input-field {
  display: flex;
  flex-grow: 1;
  /* padding: 8px 12px; */
  overflow: hidden;
  color: var(--text-color1);
  outline: none;
  width: 100%;
  font-size: 0.75em;
  resize: none;
  /* Optional: ensures it looks clean within your layout */
  border: none;
  outline: none;
  background: transparent;
}
.omnibar .button {
  display: flex;
  justify-content: center;
  align-items: center;
  gap: 8px;
  height: 32px;
  width: 32px;
  padding: 0;
  border-radius: 9999px;
  font-size: 14px;
  font-weight: 500;
  line-height: 20px;
  opacity: 0.5;
  transition: all 0.15s cubic-bezier(0.4, 0, 0.2, 1);
}

.reply-container-wrapper {
  transition: scale 0.75s ease, opacity 0.75s ease;
  display: none;
}

.scroll-down .header {
  opacity: 0;
}
.scroll-down .reply-container-wrapper,
.scroll-down .flex-container {
  scale: 0.45;
  opacity: 0.45;
  filter: grayscale(1);
}

omnibar-component {
  display: block;
  width: 100%;
  max-width: 270px;
  aspect-ratio: 16/9;
  pointer-events: all;
}
omnibar-component .bottom-of-content {
  display: none;
}
/*!*****************************************************************************************************************************!*\
  !*** css ./node_modules/css-loader/dist/cjs.js!./node_modules/sass-loader/dist/cjs.js!./src/components/ToastComponent.scss ***!
  \*****************************************************************************************************************************/
.toast-overlay {
  position: fixed;
  top: 0;
  left: 0;
  width: 100vw;
  height: 100vh;
  background: rgba(0, 0, 0, 0.6);
  backdrop-filter: blur(4px);
  z-index: 9998;
  display: none;
  align-items: center;
  justify-content: center;
}

.toast-overlay.visible {
  display: flex;
  animation: fadeIn 0.2s ease-out forwards;
}

.toast-wrapper {
  background: var(--bg-card, #2c2c2e);
  border: 1px solid var(--border-color, #444);
  border-radius: 12px;
  padding: 32px;
  box-shadow: 0 8px 32px rgba(0, 0, 0, 0.5);
  max-width: 90vw;
  width: 450px;
  transform: scale(0.95);
  opacity: 0;
  animation: popIn 0.3s cubic-bezier(0.175, 0.885, 0.32, 1.275) forwards;
}

@keyframes fadeIn {
  from {
    opacity: 0;
  }
  to {
    opacity: 1;
  }
}
@keyframes popIn {
  from {
    transform: scale(0.95);
    opacity: 0;
  }
  to {
    transform: scale(1);
    opacity: 1;
  }
}
.toast-content {
  display: flex;
  flex-direction: column;
  gap: 16px;
}
/*!*****************************************************************************************************************************!*\
  !*** css ./node_modules/css-loader/dist/cjs.js!./node_modules/sass-loader/dist/cjs.js!./src/components/ClaimComponent.scss ***!
  \*****************************************************************************************************************************/
.claim-dialog {
  text-align: center;
}

.claim-dialog h3 {
  margin: 0 0 12px 0;
  font-size: 1.3em;
}

.claim-dialog p {
  margin: 0 0 24px 0;
  font-size: 1.05em;
  color: var(--text-muted, #ccc);
}

.claim-actions {
  display: flex;
  gap: 16px;
  justify-content: center;
}

/*# sourceMappingURL=app.css.map*/