:root { --app-scale: 0.8; }


body { font-size: calc(1rem * var(--app-scale)); }

table.dataTable { font-size: calc(1rem * var(--app-scale)); }
.js-plotly-plot { font-size: calc(1rem * var(--app-scale)); }
.card { font-size: calc(1rem * var(--app-scale)); }

/* Fullscreen overlay */
#fsOverlay{
  position: fixed; inset:0; display:none;
  align-items:center; justify-content:center;
  background: rgba(0,0,0,0.35);
  z-index: 999999; cursor:pointer;
}
#fsOverlay .fsBox{
  background: rgba(255,255,255,0.92);
  padding: 14px 18px; border-radius: 12px;
  font-size: 14px; line-height: 1.2;
  box-shadow: 0 6px 20px rgba(0,0,0,0.18);
  max-width: 520px; text-align:center;
}
#fsOverlay .fsBox small{ display:block; margin-top:6px; opacity:0.8; }

/* Ultra minimal scientific table */
table.dataTable {
  background:#fff !important;
  border-collapse:collapse !important;
  font-size:0.8rem;
}
table.dataTable thead th{
  background:#fff !important;
  border-bottom:1.5px solid #444 !important;
  color:#222; font-weight:600;
}
table.dataTable tbody td{
  background:#fff !important;
  border-bottom:1px solid #eee !important;
}
table.dataTable tbody tr:hover{ background:#fafafa !important; }
table.dataTable tbody td, table.dataTable thead th{
  padding-top:3px; padding-bottom:3px;
}
table.dataTable td.dt-right{ font-variant-numeric: tabular-nums; }

.bslib-card .card-body {
  overflow: hidden;
}

.bslib-card .card-body p{
  text-align: justify !important;
  text-justify: inter-word;
  hyphens: auto;
}

.audience-btn{
  border:none;
  background:none;
  padding:0;
}

.audience-icon{
  height:120px;
  width:auto;
  cursor:pointer;
}

.ai-text {
  text-align: justigy;
}

.figure-block {
  display: flex;
  flex-direction: column;
  gap: 20px; /* wichtig: kein zusätzlicher Abstand */
}

.figure-plot .shiny-plot-output {
  margin-bottom: 0;
}

.figure-caption {
  margin-top: 0;
}

.figure-caption p {
  margin: 0;
}


