@charset "UTF-8";
html,
body {
  height: 100%; }

body {
  min-height: 100vh;
  display: flex;
  flex-direction: column;
  background: #f5f5f5; }

.info-bar {
  font-size: 0.85rem; }

.seitennavigation {
  margin-top: 20px;
  margin-left: 6px;
  margin-right: 6px; }

.event-header {
  margin-bottom: 20px; }

.event-header .box {
  min-height: 250px; }

/* Gemeinsame Box-Optik */
.box {
  background: #fff;
  border: 1px solid #ddd;
  border-radius: 6px;
  padding: 15px;
  height: 100%; }

/* Content unten */
.event-content .content-box {
  background: #fff;
  border: 1px solid #ddd;
  border-radius: 6px;
  padding: 25px; }

/* Bild immer gleich groß. */
.event-image {
  height: 100%; }

.image-box {
  height: 100%;
  display: flex;
  align-items: center;
  justify-content: center;
  overflow: hidden; }

.app-container {
  flex: 1;
  display: flex;
  flex-direction: column; }

.app-row {
  flex: 1; }

.content {
  flex: 1;
  display: flex;
  flex-direction: column;
  padding: 20px; }

.content-inner {
  flex: 1;
  display: flex;
  flex-direction: column;
  background: #fff;
  padding: 20px;
  border-radius: 4px;
  border: 1px solid #ddd;
  box-shadow: 0 1px 3px rgba(0, 0, 0, 0.08); }

.richtext-content img {
  max-width: 100%;
  height: auto; }

.avatar-group {
  display: flex; }

.avatar-wrapper-still {
  margin-left: -10px;
  transition: transform 0.2s ease;
  z-index: 1; }

.avatar-wrapper {
  margin-left: -10px;
  transition: transform 0.2s ease;
  z-index: 1; }

.avatar-wrapper-still:first-child {
  margin-left: 0; }

.avatar-wrapper:hover {
  transform: translateY(-3px);
  z-index: 10; }

.avatar-sm {
  width: 42px;
  height: 42px;
  object-fit: cover; }

.geo-field .olMap {
  width: 100%;
  height: 320px; }

.geo-field textarea {
  max-width: 380px;
  height: 40px;
  font-family: monospace; }

.footer {
  border-top: 1px solid #ddd;
  margin-top: 20px; }

img.captcha {
  margin-bottom: 0.5rem;
  border: 1px solid #ccc; }

input.captchaanswerinput {
  width: 200px; }

#test-output {
  font-family: monospace;
  margin: 20px; }

.title {
  font-size: 1.6em;
  font-weight: bold;
  margin-bottom: 1em; }

.suite {
  margin-top: 1.5em;
  margin-bottom: 0.5em;
  font-size: 1.2em;
  font-weight: bold;
  border-bottom: 1px solid #ccc; }

.success {
  color: green; }

.failed {
  color: red;
  white-space: pre-wrap; }

.emoji {
  width: 1.2em;
  height: 1.2em;
  vertical-align: text-bottom; }

.chat-layout {
  flex: 1;
  display: flex; }

.chat-sidebar {
  width: 280px;
  flex: 0 0 280px; }

.chat-main {
  flex: 1;
  display: flex;
  flex-direction: column; }

.chat-messages {
  flex: 1;
  overflow-y: auto;
  pading: 1rem;
  margin-bottom: 0.5rem;
  background: #f5f5f5;
  padding: 0.5rem; }

.chat-bubble {
  display: inline-block;
  max-width: 75%;
  padding: 0.5rem 0.75rem;
  border-radius: 0.75rem;
  background: #e9ecef;
  word-break: break-word;
  margin-bottom: 0.5rem;
  line-height: 1.4; }

.chat-composer {
  display: flex;
  gap: .5rem;
  padding: .75rem;
  border-top: 1px solid #ddd; }

.chat-message.outgoing {
  text-align: right; }

.chat-message.outgoing .chat-bubble {
  background: #d9fdd3; }

.chat-message.incoming .chat-bubble {
  background: white; }
