:root {
  color-scheme: light;
  --mr-navy: #07275f;
  --mr-blue: #0874ea;
  --mr-blue-strong: #0559c7;
  --mr-sky: #e9f7ff;
  --mr-sand: #fff6df;
  --mr-ink: #112b52;
  --mr-muted: #667b94;
  --mr-line: #dbe8f2;
  --mr-card: rgba(255, 255, 255, .97);
  --mr-shadow: 0 10px 28px rgba(20, 67, 112, .09);
}

html,
body {
  min-height: 100%;
  background: #eff8ff;
}

html:not([data-app-ready="1"]) .app-header,
html:not([data-app-ready="1"]) .app-nav {
  visibility: hidden;
}

body {
  background:
    radial-gradient(circle at 92% 4%, rgba(255, 218, 102, .24), transparent 21rem),
    radial-gradient(circle at 3% 30%, rgba(84, 200, 237, .14), transparent 24rem),
    linear-gradient(180deg, #f4fbff 0, #eef8ff 55%, #f8fbfd 100%);
  color: var(--mr-ink);
}

button,
[role="button"],
input,
select,
textarea {
  touch-action: manipulation;
}

button {
  transition: transform .14s ease, background-color .14s ease, box-shadow .14s ease, opacity .14s ease;
}

button:active:not(:disabled) {
  transform: scale(.975);
}

button:disabled {
  cursor: wait;
  opacity: .58;
}

:focus-visible {
  outline: 3px solid rgba(8, 116, 234, .34);
  outline-offset: 2px;
}

.app-header {
  background:
    radial-gradient(circle at 78% 25%, rgba(72, 205, 241, .27), transparent 12rem),
    linear-gradient(118deg, #06275f 0%, #0758ba 54%, #078dd1 100%) !important;
  border-bottom: 1px solid rgba(255, 255, 255, .17);
  box-shadow: 0 8px 24px rgba(4, 37, 82, .18);
}

.app-header::after {
  right: 90px;
  top: -24px;
  opacity: .09;
}

.brand {
  letter-spacing: -.025em;
}

.brand-logo {
  border-radius: 16px;
  background: linear-gradient(145deg, #64dbef, #0874e8);
  box-shadow: inset 0 0 0 3px rgba(255, 255, 255, .1), 0 8px 18px rgba(0, 31, 77, .22);
}

.round-button {
  background: rgba(255, 255, 255, .13);
  box-shadow: inset 0 1px rgba(255, 255, 255, .12);
}

.app-main {
  padding-top: 13px;
}

.connection-banner {
  position: relative;
  z-index: 75;
  width: min(740px, calc(100% - 20px));
  min-height: 56px;
  margin: 8px auto 0;
  padding: 9px 10px;
  display: grid;
  grid-template-columns: 12px minmax(0, 1fr) auto;
  gap: 10px;
  align-items: center;
  border: 1px solid #b8d9f4;
  border-radius: 16px;
  background: rgba(237, 248, 255, .98);
  color: #153c68;
  box-shadow: 0 8px 22px rgba(17, 68, 113, .11);
}

.connection-banner[hidden] {
  display: none !important;
}

.connection-banner[data-state="offline"] {
  border-color: #f0d28c;
  background: rgba(255, 249, 232, .98);
  color: #654814;
}

.connection-dot {
  width: 10px;
  height: 10px;
  border-radius: 50%;
  background: #1686e8;
  box-shadow: 0 0 0 5px rgba(22, 134, 232, .12);
  animation: connection-pulse 1.5s ease-in-out infinite;
}

.connection-banner[data-state="offline"] .connection-dot {
  background: #e99b12;
  box-shadow: 0 0 0 5px rgba(233, 155, 18, .13);
}

.connection-banner strong,
.connection-banner small {
  display: block;
}

.connection-banner strong {
  font-size: 12px;
}

.connection-banner small {
  margin-top: 2px;
  color: inherit;
  font-size: 9px;
  line-height: 1.35;
  opacity: .78;
}

.connection-banner button {
  min-height: 36px;
  padding: 0 11px;
  border: 0;
  border-radius: 11px;
  background: #fff;
  color: inherit;
  font-size: 10px;
  font-weight: 900;
  box-shadow: inset 0 0 0 1px rgba(70, 115, 159, .16);
}

.app-version {
  margin-left: auto;
  padding: 4px 8px;
  border-radius: 999px;
  background: #eaf5ff;
  color: #0a69ce;
  font-size: 9px;
  font-style: normal;
  font-weight: 900;
}

.card {
  border-color: rgba(197, 219, 235, .82);
  border-radius: 20px;
  background: var(--mr-card);
  box-shadow: var(--mr-shadow);
}

.app-nav {
  height: 68px !important;
  border-color: rgba(184, 208, 226, .72) !important;
  border-radius: 18px 18px 0 0 !important;
  background: rgba(255, 255, 255, .97) !important;
  box-shadow: 0 -8px 28px rgba(15, 55, 98, .12) !important;
}

.nav-item {
  min-height: 52px;
  color: #60758d;
}

.nav-item.active {
  color: var(--mr-blue);
  background: linear-gradient(180deg, #eef7ff, #e5f2ff) !important;
  box-shadow: inset 0 0 0 1px rgba(71, 153, 235, .08);
}

.camera-circle {
  background: linear-gradient(145deg, #0877ed, #08a7d6);
  box-shadow: 0 8px 20px rgba(8, 112, 218, .32);
}

.section-head h2,
.feed-intro h1,
.profile-edit-head h1,
.user-map-intro h1 {
  letter-spacing: -.02em;
}

.beach-card {
  border-color: #cce5f0;
  background:
    radial-gradient(circle at 78% 13%, rgba(255, 213, 78, .34), transparent 22%),
    linear-gradient(145deg, #ffffff 0%, #eaf9ff 60%, #fff4dc 100%);
}

.beach-facts {
  grid-template-columns: repeat(4, minmax(0, 1fr)) !important;
}

.beach-facts .beach-fact:nth-child(4) {
  display: block !important;
}

/* 1.4.7 – gemeinsame Foto-Pinnwand */
.home-photo-wall {
  overflow: hidden;
}

/* 1.8.0o – italienische Playlist als kompakter Player-Link. */
.holiday-music-card{position:relative;box-sizing:border-box;overflow:hidden;padding:14px!important;border-color:#bfd7d0;background:linear-gradient(125deg,#fff 0%,#f1faf7 58%,#fff4e7 100%);box-shadow:0 12px 30px rgba(16,55,88,.1)}
.holiday-music-card::before{content:"";position:absolute;inset:0 0 auto auto;width:42%;height:100%;background:linear-gradient(125deg,transparent,rgba(0,146,70,.08) 33%,rgba(255,255,255,.18) 34% 65%,rgba(206,43,55,.07) 66%);pointer-events:none}
.holiday-music-head{position:relative;z-index:1;display:flex!important;align-items:flex-start;justify-content:space-between;margin:0 0 10px!important}
.holiday-music-kicker{display:block;margin-bottom:2px;color:#07834a;font-size:9px;font-weight:950;letter-spacing:.13em}
.holiday-music-head h2{margin:0;color:#102f5e;font-size:18px;line-height:1.12}
.holiday-music-head p{margin:3px 0 0;color:#627a91;font-size:12px;line-height:1.2}
.holiday-music-note{width:34px;height:34px;display:grid;place-items:center;border-radius:50%;background:#fff;color:#ce2b37;font-size:21px;font-weight:950;box-shadow:0 5px 14px rgba(22,54,84,.12)}
.holiday-music-link{position:relative;z-index:1;width:100%;min-height:92px;display:grid;grid-template-columns:78px minmax(0,1fr) auto;gap:12px;align-items:center;padding:7px;border:1px solid rgba(255,255,255,.24);border-radius:19px;background:linear-gradient(135deg,#102941,#081825);color:#fff;box-shadow:0 10px 24px rgba(4,22,35,.22);text-align:left;transition:transform .16s ease,box-shadow .16s ease}
.holiday-music-link:active{transform:scale(.992);box-shadow:0 6px 16px rgba(4,22,35,.2)}
.holiday-music-cover{position:relative;width:78px;height:78px;overflow:hidden;display:flex;flex-direction:column;align-items:center;justify-content:center;border-radius:14px;background:linear-gradient(90deg,#009246 0 33.33%,#f4f5f0 33.33% 66.66%,#ce2b37 66.66%);box-shadow:0 7px 16px rgba(0,0,0,.3)}
.holiday-music-cover::after{content:"";position:absolute;inset:0;background:linear-gradient(145deg,rgba(255,255,255,.3),transparent 40%,rgba(0,0,0,.22))}
.holiday-music-cover i,.holiday-music-cover b,.holiday-music-cover small{position:relative;z-index:1;font-style:normal;text-align:center;text-shadow:0 2px 5px rgba(0,0,0,.58)}
.holiday-music-cover i{position:absolute;right:5px;top:4px;font-size:13px;text-shadow:none}
.holiday-music-cover b{color:#fff;font:950 25px/1 Georgia,"Times New Roman",serif}
.holiday-music-cover small{margin-top:6px;color:#fff;font-size:7px;font-weight:950;letter-spacing:.08em}
.holiday-music-copy{min-width:0;display:flex;flex-direction:column;gap:2px}
.holiday-music-copy>small{color:#45d77c;font-size:9px;font-weight:950;letter-spacing:.09em}
.holiday-music-copy>strong,.holiday-music-copy>span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.holiday-music-copy>strong{color:#fff;font-size:15px;line-height:1.18}
.holiday-music-copy>span:not(.holiday-music-volume){color:#b8c8d5;font-size:10px}
.holiday-music-volume{display:grid!important;grid-template-columns:auto minmax(42px,150px);gap:8px;align-items:center;margin-top:7px;color:#fff!important;font-size:9px!important}
.holiday-music-volume b{font-size:9px;letter-spacing:.04em}
.holiday-music-volume i{height:4px;overflow:hidden;border-radius:999px;background:rgba(255,255,255,.24)}
.holiday-music-volume u{display:block;width:68%;height:100%;border-radius:inherit;background:linear-gradient(90deg,#009246,#fff 55%,#ce2b37);text-decoration:none}
.holiday-music-open{min-width:126px;height:42px;display:inline-flex;align-items:center;justify-content:center;gap:6px;padding:0 12px;border-radius:999px;background:#1db954;color:#fff;box-shadow:0 6px 17px rgba(29,185,84,.3)}
.holiday-music-open svg{width:19px;height:19px;flex:0 0 19px}.holiday-music-open circle{fill:currentColor;stroke:#fff;stroke-width:1.25}.holiday-music-open path{fill:none;stroke:#fff;stroke-width:1.35;stroke-linecap:round}.holiday-music-open b{color:#fff;font-size:10px;white-space:nowrap}.holiday-music-open>span{color:#fff;font-size:13px;font-weight:950}
@media(max-width:520px){.holiday-music-link{grid-template-columns:70px minmax(0,1fr) 48px;gap:9px;min-height:84px}.holiday-music-cover{width:70px;height:70px}.holiday-music-open{min-width:44px;width:44px;height:44px;padding:0}.holiday-music-open b,.holiday-music-open>span{display:none}.holiday-music-head h2{font-size:17px}.holiday-music-head p{font-size:11px}}
@media(max-width:355px){.holiday-music-card{padding:11px!important}.holiday-music-link{grid-template-columns:64px minmax(0,1fr) 42px}.holiday-music-cover{width:64px;height:68px}.holiday-music-volume{grid-template-columns:auto minmax(30px,1fr)}}

.home-photo-grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 5px;
  overflow: hidden;
  border-radius: 18px;
  background: #e7eff7;
  padding: 5px;
}

.photo-wall-tile {
  position: relative;
  display: block;
  min-width: 0;
  aspect-ratio: 1 / 1;
  overflow: hidden;
  padding: 0;
  border: 0;
  border-radius: 14px;
  background: #dce7f2;
  box-shadow: none;
  text-align: left;
}

.photo-wall-tile > img {
  width: 100%;
  height: 100%;
  display: block;
  object-fit: cover;
  transition: transform .2s ease;
}

.photo-wall-tile:active > img {
  transform: scale(.97);
}

.photo-wall-shade {
  position: absolute;
  inset: auto 0 0;
  display: flex;
  align-items: flex-end;
  justify-content: space-between;
  gap: 4px;
  padding: 22px 7px 6px;
  color: #fff;
  background: linear-gradient(transparent, rgba(4, 24, 47, .78));
}

.photo-wall-shade strong,
.photo-wall-shade small {
  min-width: 0;
  overflow: hidden;
  white-space: nowrap;
  text-overflow: ellipsis;
  font-size: 8px;
  line-height: 1.15;
}

.photo-wall-shade strong {
  max-width: 58%;
  font-size: 9px;
}

.photo-wall-empty,
.photo-board-empty {
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  gap: 5px;
  min-height: 120px;
  padding: 18px;
  border-radius: 18px;
  color: #60778e;
  background: linear-gradient(145deg, #f4f9fd, #eef4fa);
  text-align: center;
}

.photo-wall-empty > span,
.photo-board-empty > span { font-size: 26px; }
.photo-wall-empty small { font-size: 9px; }
.photo-wall-empty button,
.photo-board-empty button {
  margin-top: 4px;
  padding: 8px 13px;
  border: 0;
  border-radius: 999px;
  color: #fff;
  background: linear-gradient(135deg, #1675e8, #22b6d7);
  font-weight: 800;
}

.photo-wall-empty.compact { min-height: 104px; }

.photo-board-screen {
  display: grid;
  gap: 12px;
  padding-bottom: 14px;
}

.photo-board-hero {
  position: relative;
  display: grid;
  grid-template-columns: 32px minmax(0, 1fr) auto;
  align-items: center;
  gap: 10px;
  padding: 17px 16px !important;
  overflow: hidden;
  background:
    radial-gradient(circle at 96% 0, rgba(255, 213, 83, .28), transparent 36%),
    linear-gradient(145deg, #fff, #f0faff) !important;
}

.photo-board-hero h1 {
  margin: 3px 0 4px;
  color: #102f55;
  font-size: 22px;
  line-height: 1.05;
}

.photo-board-hero p {
  margin: 0;
  color: #6c8196;
  font-size: 10px;
  line-height: 1.4;
}

.photo-board-camera {
  display: grid;
  justify-items: center;
  gap: 3px;
  width: 62px;
  padding: 10px 5px;
  border: 0;
  border-radius: 18px;
  color: #fff;
  background: linear-gradient(145deg, #1474ec, #18b6dd);
  box-shadow: 0 10px 22px rgba(17, 119, 210, .24);
  font-size: 8px;
  font-weight: 800;
}

.photo-board-camera .icon { width: 22px; height: 22px; }

.photo-board-tools {
  position: sticky;
  top: 4px;
  z-index: 5;
  display: grid;
  gap: 8px;
  padding: 10px;
  border: 1px solid rgba(170, 195, 216, .7);
  border-radius: 18px;
  background: rgba(250, 253, 255, .94);
  box-shadow: 0 8px 22px rgba(32, 71, 106, .09);
  backdrop-filter: blur(14px);
}

.photo-filter-chips {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 6px;
}

.photo-filter-chips button {
  min-height: 35px;
  border: 1px solid #d8e5f0;
  border-radius: 12px;
  color: #38556f;
  background: #fff;
  font-size: 10px;
  font-weight: 800;
}

.photo-filter-chips button.active {
  border-color: transparent;
  color: #fff;
  background: linear-gradient(135deg, #237ee9, #25b7d9);
}

.photo-user-filter {
  display: grid;
  grid-template-columns: auto 1fr;
  align-items: center;
  gap: 8px;
  color: #71869a;
  font-size: 9px;
  font-weight: 800;
}

.photo-user-filter select {
  width: 100%;
  min-height: 34px;
  padding: 0 10px;
  border: 1px solid #d9e5ef;
  border-radius: 11px;
  color: #183b5e;
  background: #f4f8fc;
  font-weight: 700;
}

.photo-board-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 8px;
}

.photo-board-grid .photo-wall-tile {
  aspect-ratio: 4 / 5;
  border-radius: 18px;
  box-shadow: 0 7px 18px rgba(24, 57, 87, .13);
}

.photo-board-grid .photo-board-empty {
  grid-column: 1 / -1;
  min-height: 240px;
}

.photo-board-grid .photo-wall-shade {
  padding: 38px 10px 9px;
}

.photo-board-grid .photo-wall-shade strong { font-size: 11px; }
.photo-board-grid .photo-wall-shade small { font-size: 9px; }

.photo-load-more {
  min-height: 44px;
  border: 1px solid #bed7e9;
  border-radius: 15px;
  color: #1769ba;
  background: #fff;
  font-weight: 900;
}

.photo-board-note {
  margin: 0 10px;
  color: #788b9d;
  font-size: 9px;
  line-height: 1.45;
  text-align: center;
}

.photo-detail-sheet {
  height: min(92dvh, 760px);
  max-height: calc(100dvh - 18px);
  overflow: hidden;
  background: #f4f8fc;
}

.photo-detail-content {
  height: calc(100% - 58px);
  overflow-y: auto;
  overscroll-behavior: contain;
  padding: 0 12px calc(16px + env(safe-area-inset-bottom));
}

.photo-detail-card,
.photo-detail-comments {
  overflow: hidden;
  border: 1px solid #dce7f0;
  border-radius: 20px;
  background: #fff;
  box-shadow: 0 8px 24px rgba(23, 57, 89, .08);
}

.photo-detail-image {
  display: block;
  width: 100%;
  max-height: 56dvh;
  padding: 0;
  border: 0;
  background: #102a42;
}

.photo-detail-image img {
  display: block;
  width: 100%;
  max-height: 56dvh;
  object-fit: contain;
}

.photo-detail-author {
  display: flex;
  align-items: center;
  gap: 9px;
  padding: 12px 14px 4px;
}

.photo-detail-author strong,
.photo-detail-author small { display: block; }
.photo-detail-author strong { color: #16385d; font-size: 12px; }
.photo-detail-author small { margin-top: 2px; color: #8494a3; font-size: 9px; }

.photo-detail-copy { padding: 8px 14px 12px; }
.photo-detail-copy h2 { margin: 0; color: #102f55; font-size: 19px; }
.photo-detail-copy p { margin: 6px 0 0; color: #5f7489; font-size: 11px; line-height: 1.45; white-space: pre-wrap; }

.photo-detail-actions {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 1px;
  border-top: 1px solid #edf2f6;
  background: #edf2f6;
}

.photo-detail-actions > button,
.photo-detail-actions > span {
  display: grid;
  grid-template-columns: auto auto;
  justify-content: center;
  align-items: center;
  gap: 4px;
  min-height: 48px;
  padding: 6px;
  border: 0;
  color: #557087;
  background: #fff;
}

.photo-detail-actions small { grid-column: 1 / -1; font-size: 8px; }
.photo-detail-actions button.active { color: #e34168; }
.photo-detail-actions button > span { font-size: 16px; }

.photo-detail-comments {
  margin-top: 10px;
  padding: 14px;
}

.photo-detail-comments h3 { margin: 0 0 10px; color: #17395b; font-size: 15px; }
.photo-comment-row { display: grid; grid-template-columns: auto 1fr; gap: 8px; padding: 8px 0; border-bottom: 1px solid #edf2f6; }
.photo-comment-row strong { color: #183b5e; font-size: 10px; }
.photo-comment-row p { margin: 3px 0; color: #3c5267; font-size: 11px; line-height: 1.4; }
.photo-comment-row small { color: #8a9aa8; font-size: 8px; }
.photo-comments-empty { padding: 18px 8px; color: #8293a2; font-size: 10px; text-align: center; }

#photo-comment-form {
  display: grid;
  grid-template-columns: 1fr 42px;
  gap: 7px;
  margin-top: 11px;
}

#photo-comment-form input {
  min-width: 0;
  min-height: 42px;
  padding: 0 13px;
  border: 1px solid #d5e1eb;
  border-radius: 999px;
  background: #f4f7fa;
}

#photo-comment-form button {
  display: grid;
  place-items: center;
  border: 0;
  border-radius: 50%;
  color: #fff;
  background: linear-gradient(145deg, #1475ec, #17afd9);
}

#photo-comment-form .icon { width: 20px; height: 20px; }

.profile-photo-posts { overflow: hidden; }
.profile-photo-grid .photo-wall-shade { display: none; }

.composer-photo-preview {
  grid-template-columns: repeat(3, minmax(0, 76px)) !important;
  justify-content: start;
  gap: 7px !important;
}

.composer-photo-preview .photo-preview {
  aspect-ratio: 1 / 1;
  max-height: 76px;
  border-radius: 13px !important;
}

.composer-photo-preview .photo-preview img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}

.photo-rights-confirmation {
  display: grid;
  grid-template-columns: 22px 1fr;
  gap: 9px;
  margin: 8px 14px 4px;
  padding: 11px;
  border: 1px solid #b9d6ea;
  border-radius: 14px;
  color: #36536d;
  background: #f1f9ff;
}

.photo-rights-confirmation[hidden] { display: none !important; }
.photo-rights-confirmation input { width: 19px; height: 19px; margin: 1px 0 0; accent-color: #1677df; }
.photo-rights-confirmation strong,
.photo-rights-confirmation small { display: block; }
.photo-rights-confirmation strong { color: #143a60; font-size: 11px; }
.photo-rights-confirmation small { margin-top: 3px; font-size: 8px; line-height: 1.45; }

@media (max-width: 350px) {
  .home-photo-grid { gap: 4px; padding: 4px; }
  .photo-wall-tile { border-radius: 11px; }
  .photo-board-hero { grid-template-columns: 28px 1fr; }
  .photo-board-camera { grid-column: 2; width: 100%; grid-auto-flow: column; }
}

.beach-fact {
  min-height: 48px;
  border-color: rgba(197, 220, 232, .88);
  background: rgba(255, 255, 255, .84);
}

.beach-fact small {
  font-size: 8px;
  line-height: 1.25;
  white-space: normal;
}

.weather-grid {
  gap: 2px;
  padding: 3px 7px 12px;
}

.weather-day {
  border: 0;
  border-radius: 12px;
  background: linear-gradient(180deg, #f8fcff, #eef7fc);
}

.weather-day:first-child {
  background: linear-gradient(180deg, #eaf6ff, #deefff);
  color: #075fc8;
}

.weather-day .temps {
  font-weight: 700;
}

.feed-intro-actions {
  flex-shrink: 0;
}

.feed-search-panel {
  padding: 12px;
  overflow: visible;
}

.feed-search-panel > label {
  display: block;
  margin: 0 2px 7px;
  color: #385674;
  font-size: 11px;
  font-weight: 800;
}

.feed-search-panel > div {
  display: grid;
  grid-template-columns: 22px minmax(0, 1fr) 34px;
  gap: 7px;
  align-items: center;
  min-height: 46px;
  padding: 0 8px 0 12px;
  border: 1px solid #ccdeeb;
  border-radius: 15px;
  background: #f8fbfd;
}

.feed-search-panel .icon {
  width: 20px;
  height: 20px;
  color: var(--mr-blue);
}

.feed-search-panel input {
  min-width: 0;
  height: 42px;
  border: 0;
  outline: 0;
  background: transparent;
  color: var(--mr-ink);
  font-size: 13px;
}

.feed-search-panel button {
  width: 32px;
  height: 32px;
  border: 0;
  border-radius: 50%;
  background: #e9f0f5;
  color: #587088;
  font-size: 20px;
}

.feed-search-panel small {
  display: block;
  min-height: 13px;
  margin: 6px 3px 0;
  color: var(--mr-muted);
  font-size: 10px;
}

.post-action {
  min-height: 46px;
}

.comments-sheet,
.notification-sheet,
.action-sheet {
  border: 1px solid rgba(203, 220, 232, .84);
  border-bottom: 0;
}

.comment-reply-context {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 10px;
  padding: 8px 14px;
  border-top: 1px solid #e5edf3;
  background: #edf7ff;
  color: #315b83;
  font-size: 11px;
  font-weight: 800;
}

.comment-reply-context[hidden] {
  display: none !important;
}

.comment-reply-context button {
  width: 28px;
  height: 28px;
  border: 0;
  border-radius: 50%;
  background: #dbeaf5;
  color: #48677f;
  font-size: 18px;
}

.switch-row.is-disabled {
  background: #f2f4f6;
  opacity: .72;
}

.primary-wide,
.publish-button {
  background: linear-gradient(135deg, var(--mr-blue-strong), #078dd8);
  box-shadow: 0 7px 18px rgba(7, 102, 213, .18);
}

.push-activation-panel {
  display: grid;
  gap: 9px;
  margin: 0 10px 4px;
  padding: 11px;
  border: 1px solid #f1c26a;
  border-radius: 16px;
  background: linear-gradient(135deg, #fff8e8, #fff1d1);
  color: #5d3b00;
}

.push-activation-panel[hidden] {
  display: none !important;
}

.push-activation-copy strong {
  display: block;
  font-size: 14px;
  line-height: 1.25;
}

.push-activation-copy p {
  margin: 4px 0 0;
  color: #76591d;
  font-size: 11px;
  line-height: 1.38;
}

.push-activation-panel .primary-wide {
  min-height: 46px;
  font-size: 13px;
}

.offline-cache-notice {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  gap: 10px;
  align-items: center;
  margin-bottom: 10px;
  padding: 11px 12px;
  border: 1px solid #efd493;
  border-radius: 17px;
  background: linear-gradient(135deg, #fffaf0, #fff3d6);
  color: #614713;
}

.offline-cache-notice strong,
.offline-cache-notice small {
  display: block;
}

.offline-cache-notice strong {
  font-size: 12px;
}

.offline-cache-notice small {
  margin-top: 2px;
  font-size: 9px;
  line-height: 1.35;
  opacity: .78;
}

.offline-cache-notice button {
  min-height: 38px;
  padding: 0 11px;
  border: 0;
  border-radius: 12px;
  background: #fff;
  color: #765615;
  font-size: 10px;
  font-weight: 900;
  box-shadow: inset 0 0 0 1px rgba(141, 101, 17, .14);
}

.connection-wait {
  max-width: 560px;
  min-height: 126px;
  margin: 24px auto;
  padding: 22px;
  display: flex;
  align-items: center;
  gap: 16px;
  background: linear-gradient(145deg, #fff, #edf8ff);
}

.connection-wait h2,
.chat-load-error h2 {
  margin: 0;
  font-size: 17px;
}

.connection-wait p,
.chat-load-error p {
  margin: 5px 0 0;
  color: var(--mr-muted);
  font-size: 11px;
  line-height: 1.45;
}

.connection-spinner {
  width: 34px;
  height: 34px;
  flex: 0 0 34px;
  border: 4px solid #dbeefe;
  border-top-color: var(--mr-blue);
  border-radius: 50%;
  animation: connection-spin .8s linear infinite;
}

.inline-load-error {
  max-width: 540px;
  margin: 12px auto;
  padding: 20px 18px;
  text-align: center;
  background: linear-gradient(145deg, #fff, #f0f8ff);
}

.load-error-icon {
  width: 44px;
  height: 44px;
  margin: 0 auto 8px;
  display: grid;
  place-items: center;
  border-radius: 15px;
  background: #e7f3ff;
  color: var(--mr-blue);
  font-size: 25px;
  font-weight: 900;
}

.inline-load-error .primary-wide {
  margin-top: 14px;
}

.chat-load-error {
  width: min(520px, calc(100% - 28px));
  margin: auto;
  padding: 24px 18px;
  border: 1px solid var(--mr-line);
  border-radius: 22px;
  background: #fff;
  text-align: center;
  box-shadow: var(--mr-shadow);
}

.chat-load-error .primary-wide {
  margin-top: 16px;
}

.boot-error {
  max-width: 540px;
  margin: 24px auto;
  text-align: center;
  background: linear-gradient(145deg, #fff, #eef8ff 66%, #fff8e8);
}

.boot-error::before {
  content: '🌊';
  display: block;
  margin-bottom: 8px;
  font-size: 38px;
}

.toast {
  border: 1px solid rgba(255, 255, 255, .12);
  border-radius: 14px;
  background: rgba(7, 39, 86, .96);
  box-shadow: 0 12px 30px rgba(0, 24, 60, .24);
}

@media (max-width: 390px) {
  .connection-banner {
    width: calc(100% - 14px);
    grid-template-columns: 10px minmax(0, 1fr);
  }

  .connection-banner button {
    grid-column: 2;
    width: max-content;
  }

  .offline-cache-notice {
    grid-template-columns: 1fr;
  }

  .offline-cache-notice button {
    width: max-content;
  }

  .beach-facts {
    gap: 4px;
  }

  .beach-fact {
    padding-inline: 2px;
  }

  .feed-intro-actions {
    gap: 4px;
  }

  .small-icon-btn {
    width: 38px;
    height: 38px;
    padding: 9px;
  }

  .weather-grid {
    padding-inline: 4px;
  }

  .weather-day {
    padding-inline: 0;
  }
}

@keyframes connection-pulse {
  0%, 100% { transform: scale(.88); opacity: .7; }
  50% { transform: scale(1); opacity: 1; }
}

@keyframes connection-spin {
  to { transform: rotate(360deg); }
}

@media (prefers-reduced-motion: reduce) {
  *,
  *::before,
  *::after {
    scroll-behavior: auto !important;
    animation-duration: .01ms !important;
    animation-iteration-count: 1 !important;
    transition-duration: .01ms !important;
  }
}


/* 1.4.3 – kompaktes App-Menü und robuste Facebook-artige Kommentarantworten */
.app-menu-sheet {
  width: min(560px, calc(100% - 18px)) !important;
  max-height: calc(100dvh - 12px) !important;
  padding: 5px 8px max(7px, env(safe-area-inset-bottom, 0px)) !important;
  display: flex !important;
  flex-direction: column;
  overflow: hidden !important;
  border-radius: 26px 26px 0 0 !important;
  background:
    radial-gradient(circle at 90% 2%, rgba(255, 213, 77, .18), transparent 9rem),
    radial-gradient(circle at 4% 18%, rgba(60, 193, 234, .13), transparent 12rem),
    linear-gradient(180deg, #fbfdff 0%, #f3f9fd 100%) !important;
  box-shadow: 0 -18px 46px rgba(7, 37, 78, .24) !important;
}

.app-menu-sheet > .grabber {
  flex: 0 0 auto;
  margin-bottom: 3px;
  background: #a9b8c7;
}

.app-menu-head {
  position: relative;
  flex: 0 0 auto;
  min-height: 43px;
  padding: 0 2px 5px !important;
  display: flex;
  align-items: center;
  gap: 8px;
  border-bottom: 1px solid rgba(199, 218, 233, .75);
}

.app-menu-head > div {
  min-width: 0;
  flex: 1;
}

.app-menu-head strong {
  display: block;
  color: #102d58;
  font-size: 15px !important;
  line-height: 1.1;
  letter-spacing: -.02em;
}

.app-menu-head small {
  display: block;
  margin-top: 2px;
  color: #74879d !important;
  font-size: 7px !important;
  font-weight: 700;
}

.app-menu-head .app-version {
  flex: 0 0 auto;
  margin-left: 0;
  padding: 4px 7px;
  background: linear-gradient(135deg, #e5f3ff, #f3f9ff);
  box-shadow: inset 0 0 0 1px rgba(63, 142, 218, .08);
}

.app-menu-head > button {
  width: 32px !important;
  height: 32px !important;
  flex: 0 0 32px;
  border: 0 !important;
  border-radius: 11px !important;
  background: #eaf1f7 !important;
  color: #45617c !important;
  font-size: 20px !important;
  line-height: 1;
}

.app-menu-scroll {
  min-height: 0;
  flex: 0 1 auto;
  padding: 5px 0 1px !important;
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  align-content: start;
  gap: 4px;
  overflow-y: auto;
  overscroll-behavior: contain;
  scrollbar-width: none;
}

.app-menu-scroll::-webkit-scrollbar {
  display: none;
}

.app-menu-scroll > button {
  appearance: none;
  -webkit-appearance: none;
  width: 100%;
  min-width: 0;
  min-height: 52px !important;
  margin: 0;
  padding: 4px 2px;
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: center;
  gap: 2px;
  border: 1px solid rgba(202, 220, 234, .88);
  border-radius: 13px;
  background: linear-gradient(145deg, rgba(255, 255, 255, .99), rgba(245, 250, 254, .98));
  color: #17365e;
  text-align: center;
  box-shadow: 0 4px 12px rgba(24, 69, 111, .06);
}

.app-menu-scroll > button:active {
  border-color: rgba(75, 153, 225, .5);
  background: linear-gradient(145deg, #edf7ff, #f8fcff);
  box-shadow: 0 2px 7px rgba(24, 69, 111, .08);
}

.app-menu-scroll .action-icon {
  width: 26px !important;
  height: 26px !important;
  flex: 0 0 26px;
  border-radius: 9px !important;
  background: linear-gradient(145deg, #e9f5ff, #f5faff) !important;
  color: #0a71db !important;
  font-size: 14px !important;
  box-shadow: inset 0 0 0 1px rgba(40, 132, 217, .05);
}

.app-menu-scroll > button:nth-child(4n+2) .action-icon {
  background: linear-gradient(145deg, #eef8f3, #f8fcfa) !important;
  color: #21805d !important;
}

.app-menu-scroll > button:nth-child(4n+3) .action-icon {
  background: linear-gradient(145deg, #fff6df, #fffaf0) !important;
  color: #bd7710 !important;
}

.app-menu-scroll > button:nth-child(4n+4) .action-icon {
  background: linear-gradient(145deg, #f2efff, #faf9ff) !important;
  color: #6652b5 !important;
}

.app-menu-scroll strong {
  display: block;
  color: #17345d;
  font-size: 8.2px !important;
  line-height: 1.08;
  text-align: center;
  overflow-wrap: anywhere;
}

.app-menu-scroll small {
  display: none !important;
}

.app-menu-footer-actions {
  flex: 0 0 auto;
  display: grid;
  grid-template-columns: minmax(0, 1.25fr) minmax(0, .85fr);
  gap: 5px;
  padding-top: 5px;
}

.app-menu-footer-actions > button {
  appearance: none;
  -webkit-appearance: none;
  min-width: 0;
  min-height: 42px;
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 6px;
  padding: 5px 8px;
  border-radius: 13px;
  font: inherit;
  font-weight: 900;
}

.app-menu-footer-actions > button[hidden] {
  display: none !important;
}

.app-menu-footer-actions .action-icon {
  width: 27px;
  height: 27px;
  flex: 0 0 27px;
  display: grid;
  place-items: center;
  border-radius: 9px;
  font-size: 14px;
}

.app-menu-footer-actions strong {
  display: block;
  font-size: 9px;
  line-height: 1.1;
}

.app-menu-footer-actions small {
  display: none;
}

.app-menu-footer-actions > .app-menu-support {
  border-color: #cc2331;
  background: linear-gradient(135deg, #d92f3d, #b9182a);
  color: #fff;
  box-shadow: 0 7px 18px rgba(181, 24, 42, .22);
}

.app-menu-footer-actions > .app-menu-support .action-icon {
  background: rgba(255, 255, 255, .16) !important;
  color: #fff !important;
}

.app-menu-footer-actions > .app-menu-support strong {
  color: #fff;
}

.app-menu-footer-actions > .app-menu-logout {
  border: 1px solid #e4a7ad;
  background: linear-gradient(145deg, #fff, #fff1f2);
  color: #ad2532;
  box-shadow: 0 4px 12px rgba(117, 25, 39, .08);
}

.app-menu-footer-actions > .app-menu-logout .action-icon {
  background: #ffe5e8;
  color: #b52131;
}

.app-menu-sheet > .cancel-action {
  display: none !important;
}

.comment-row {
  grid-template-columns: 36px minmax(0, 1fr) auto;
  gap: 8px;
  margin: 10px 0;
}

.comment-row.reply {
  margin: 8px 0 8px 28px;
}

.comment-row.reply .comment-row.reply {
  margin-left: 12px;
}

.comment-content {
  min-width: 0;
}

.comment-bubble {
  border-radius: 16px;
  background: linear-gradient(145deg, #f0f4f8, #f5f7fa);
}

.comment-meta {
  min-height: 28px;
  padding: 1px 4px 0;
  display: flex;
  align-items: center;
  gap: 9px;
}

.comment-time {
  display: inline;
  margin: 0;
  color: #8493a5;
  font-size: 9px;
}

.comment-reply-button {
  min-height: 28px;
  padding: 4px 5px;
  border: 0;
  border-radius: 8px;
  background: transparent;
  color: #536a82;
  font-size: 10px;
  font-weight: 900;
}

.comment-reply-button:active {
  background: #e9f1f7;
  color: #096ed8;
}

.comment-more {
  width: 34px;
  height: 34px;
  margin-top: 2px;
  color: #718196;
  font-size: 18px;
}

.comment-children {
  margin-top: 2px;
}

@media (max-width: 370px) {
  .app-menu-sheet {
    padding-inline: 8px !important;
  }

  .app-menu-scroll {
    gap: 3px;
  }

  .app-menu-scroll > button {
    min-height: 49px !important;
    padding: 3px 2px;
    gap: 2px;
    border-radius: 12px;
  }

  .app-menu-scroll .action-icon {
    width: 24px !important;
    height: 24px !important;
    flex-basis: 24px;
    border-radius: 8px !important;
    font-size: 13px !important;
  }

  .app-menu-scroll strong {
    font-size: 7.5px !important;
  }

  .app-menu-footer-actions {
    gap: 4px;
  }

  .app-menu-footer-actions > button {
    min-height: 39px;
    padding-inline: 5px;
  }

  .comment-row.reply {
    margin-left: 18px;
  }
}


/* 1.4.5 – kompakter Header mit neuem Rosapineta-Symbol */
.app-header {
  min-height: 64px !important;
  height: 64px !important;
  padding: 7px 12px !important;
}

.app-header::after {
  right: 76px;
  top: -38px;
  font-size: 84px;
  opacity: .065;
}

.brand {
  min-width: 0;
  gap: 9px;
  font-size: 20px !important;
  line-height: 1;
  white-space: nowrap;
}

.brand > span:last-child {
  overflow: hidden;
  text-overflow: ellipsis;
}

.brand-logo {
  width: 44px !important;
  height: 44px !important;
  flex: 0 0 44px;
  overflow: hidden;
  border: 1px solid rgba(255, 255, 255, .52);
  border-radius: 14px !important;
  background: #f1dfba !important;
  box-shadow: 0 5px 13px rgba(0, 28, 66, .22) !important;
}

.brand-logo img {
  width: 100%;
  height: 100%;
  display: block;
  object-fit: cover;
}

.header-actions {
  flex: 0 0 auto;
  gap: 6px;
}

.header-actions .round-button {
  width: 40px;
  height: 40px;
  padding: 10px;
}

@media (max-width: 370px) {
  .app-header {
    padding-inline: 9px !important;
  }

  .brand {
    gap: 7px;
    font-size: 17px !important;
  }

  .brand-logo {
    width: 40px !important;
    height: 40px !important;
    flex-basis: 40px;
    border-radius: 13px !important;
  }

  .header-actions {
    gap: 4px;
  }

  .header-actions .round-button {
    width: 37px;
    height: 37px;
    padding: 9px;
  }
}

/* 1.4.5 – Beitragstypen und echte Umfragen */
.feed-filter-row {
  display: flex;
  gap: 7px;
  overflow-x: auto;
  padding: 0 2px 2px;
  scrollbar-width: none;
}
.feed-filter-row::-webkit-scrollbar { display: none; }
.feed-filter-chip {
  flex: 0 0 auto;
  min-height: 36px;
  padding: 7px 12px;
  border: 1px solid #d6e2ed;
  border-radius: 999px;
  background: #fff;
  color: #4d627b;
  font-size: 10px;
  font-weight: 850;
  box-shadow: 0 3px 10px rgba(16, 56, 101, .05);
}
.feed-filter-chip.active {
  border-color: #0c78ec;
  background: linear-gradient(135deg, #0b71e8, #16a7e4);
  color: #fff;
}

.feed-type-badge {
  display: inline-flex;
  align-items: center;
  gap: 5px;
  margin: 0 0 7px;
  padding: 5px 9px;
  border: 1px solid #d7e5f1;
  border-radius: 999px;
  background: #f3f8fd;
  color: #315a83;
  font-size: 9px;
  font-weight: 900;
  letter-spacing: .02em;
}
.feed-type-question .feed-type-badge { background: #edf6ff; color: #0c6cca; }
.feed-type-tip .feed-type-badge { background: #fff8df; color: #916100; }
.feed-type-meetup .feed-type-badge { background: #f1efff; color: #6847b6; }
.feed-type-alert .feed-type-badge { background: #fff0e9; color: #b44f23; }
.feed-type-poll .feed-type-badge { background: #eef8f5; color: #15725f; }

.feed-type-question {
  border-color: #bcdcf6 !important;
  box-shadow: 0 8px 24px rgba(16, 113, 204, .10) !important;
}
.feed-type-question .post-body h2::after {
  content: ' ?';
  color: #0b75e7;
}

.feed-poll {
  margin: 0 12px 11px;
  padding: 12px;
  border: 1px solid #d7e6e1;
  border-radius: 17px;
  background: linear-gradient(145deg, #f6fcfa, #eef8ff);
}
.feed-poll h3 {
  margin: 0 0 10px;
  color: #14355b;
  font-size: 14px;
  line-height: 1.3;
}
.feed-poll-options {
  display: grid;
  gap: 7px;
}
.feed-poll-option {
  position: relative;
  min-height: 45px;
  display: grid;
  grid-template-columns: minmax(0,1fr) auto;
  align-items: center;
  gap: 8px;
  padding: 8px 11px;
  overflow: hidden;
  border: 1px solid #cfdfe9;
  border-radius: 13px;
  background: #fff;
  color: #25435f;
  font-size: 11px;
  font-weight: 800;
  text-align: left;
}
.feed-poll-option::before {
  content: '';
  position: absolute;
  z-index: 0;
  inset: 0 auto 0 0;
  width: var(--poll-percent, 0%);
  background: rgba(14, 135, 214, .13);
}
.feed-poll-option > span,
.feed-poll-option > strong { position: relative; z-index: 1; }
.feed-poll-option.voted {
  border-color: #0c7be9;
  color: #0968c3;
}
button.feed-poll-option:disabled { opacity: 1; }
.feed-poll-meta {
  display: flex;
  justify-content: space-between;
  gap: 8px;
  margin-top: 8px;
  color: #74869a;
  font-size: 9px;
}

.composer-type-context {
  margin: 0 14px 2px;
  padding: 10px 12px;
  border: 1px solid #dbe7f1;
  border-radius: 14px;
  background: #f6faff;
  color: #49617c;
  font-size: 11px;
  line-height: 1.4;
}
.composer-type-context strong {
  display: block;
  margin-bottom: 2px;
  color: #16375e;
  font-size: 12px;
}
.full-sheet.is-type-question .composer-type-context {
  border-color: #b9d9f3;
  background: #edf7ff;
}
.full-sheet.is-type-poll .composer-type-context {
  border-color: #c8e3da;
  background: #f0faf7;
}

.composer-poll {
  margin: 3px 14px 12px;
  padding: 13px;
  border: 1px solid #cfe3dc;
  border-radius: 18px;
  background: linear-gradient(145deg, #f4fbf8, #eef8ff);
}
.composer-poll[hidden] { display: none !important; }
.composer-poll-head {
  display: flex;
  align-items: center;
  gap: 9px;
  margin-bottom: 11px;
}
.composer-poll-head > span {
  display: grid;
  width: 38px;
  height: 38px;
  place-items: center;
  border-radius: 12px;
  background: #e1f2ed;
  font-size: 20px;
}
.composer-poll-head strong,
.composer-poll-head small { display: block; }
.composer-poll-head strong { color: #16375a; font-size: 13px; }
.composer-poll-head small { margin-top: 2px; color: #718499; font-size: 9px; }
.composer-poll label { display: block; }
.composer-poll label > span {
  display: block;
  margin: 0 2px 5px;
  color: #49627e;
  font-size: 9px;
  font-weight: 850;
}
.composer-poll input {
  width: 100%;
  height: 44px;
  border: 1px solid #d1e0e9;
  border-radius: 12px;
  outline: none;
  background: #fff;
  color: #1d3858;
  padding: 0 12px;
}
.composer-poll input:focus {
  border-color: #0b7ce9;
  box-shadow: 0 0 0 3px rgba(11, 124, 233, .12);
}
.composer-poll-options {
  display: grid;
  gap: 7px;
  margin-top: 9px;
}
.composer-poll-options label {
  display: grid;
  grid-template-columns: 34px minmax(0, 1fr);
  align-items: center;
  border: 1px solid #d1e0e9;
  border-radius: 12px;
  overflow: hidden;
  background: #fff;
}
.composer-poll-options label > span {
  display: grid;
  height: 42px;
  margin: 0;
  place-items: center;
  background: #e9f4fb;
  color: #276495;
  font-size: 11px;
}
.composer-poll-options input {
  height: 42px;
  border: 0;
  border-radius: 0;
  box-shadow: none !important;
}
.composer-add-poll-option {
  min-height: 40px;
  margin-top: 8px;
  border: 1px dashed #9fc5db;
  border-radius: 12px;
  background: rgba(255,255,255,.72);
  color: #246a9c;
  font-size: 10px;
  font-weight: 850;
}
.composer-poll-end { margin-top: 10px; }

@media (max-width: 380px) {
  .composer-type-context,
  .composer-poll { margin-left: 10px; margin-right: 10px; }
}

/* 1.6.0 – neue öffentliche Willkommen-/Loginseite */
.nav-item[data-route="messages"] > .icon {
  width: 23px !important;
  height: 23px !important;
  margin: 0 !important;
  transform: none !important;
}
.nav-item[data-route="messages"] > .icon svg {
  width: 100% !important;
  height: 100% !important;
  stroke-width: 2 !important;
}

body.app-guest {
  overflow-x: hidden;
  background: #d9eef7;
}
body.app-guest .app-header,
body.app-guest .app-nav {
  display: none !important;
}
body.app-guest #app-shell,
body.app-guest .app-main {
  width: 100%;
  min-height: 100dvh;
}
body.app-guest .app-main {
  max-width: none;
  margin: 0;
  padding: 0 !important;
  overflow: visible;
  background: #d9eef7;
}
body.app-guest .connection-banner {
  position: fixed;
  z-index: 140;
  top: max(8px, env(safe-area-inset-top, 0px));
  left: 50%;
  transform: translateX(-50%);
}

.guest-welcome {
  position: relative;
  isolation: isolate;
  width: 100%;
  min-height: 100dvh;
  overflow: clip;
  color: #102a52;
  background: #d7edf7;
}
.guest-background,
.guest-background-shade {
  position: fixed;
  inset: 0;
  width: 100%;
  height: 100%;
  pointer-events: none;
}
.guest-background {
  z-index: 0;
  overflow: hidden;
  background: linear-gradient(180deg, #62c5f2, #dff3f8 52%, #8c9b85);
}
.guest-background img {
  width: 100%;
  height: 100%;
  display: block;
  object-fit: cover;
  object-position: 50% 52%;
  transform: none;
  transform-origin: 50% 50%;
  filter: saturate(.96) contrast(.98);
}
.guest-background-shade {
  z-index: 1;
  background:
    linear-gradient(180deg, rgba(4, 30, 65, .19) 0, rgba(7, 45, 77, .03) 25%, transparent 48%, rgba(7, 35, 55, .16) 68%, rgba(6, 25, 43, .3) 100%),
    radial-gradient(circle at 50% 8%, rgba(255, 255, 255, .25), transparent 32%);
}
.guest-layout {
  position: relative;
  z-index: 2;
  width: 100%;
  min-height: 100dvh;
}
.guest-hero {
  width: min(760px, 100%);
  min-height: clamp(330px, 52dvh, 540px);
  margin: 0 auto;
  padding: max(12px, env(safe-area-inset-top, 0px)) 12px 18px;
}
.guest-topbar {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 8px;
}
.guest-brand {
  min-width: 0;
  display: flex;
  align-items: center;
  gap: 9px;
  padding: 6px 10px 6px 6px;
  border: 1px solid rgba(255, 255, 255, .66);
  border-radius: 19px;
  background: rgba(255, 255, 255, .82);
  box-shadow: 0 8px 22px rgba(5, 43, 78, .16);
  -webkit-backdrop-filter: blur(15px) saturate(1.14);
  backdrop-filter: blur(15px) saturate(1.14);
}
.guest-brand img {
  width: 46px;
  height: 46px;
  flex: 0 0 46px;
  display: block;
  object-fit: cover;
  border-radius: 14px;
  box-shadow: 0 4px 11px rgba(4, 50, 72, .17);
}
.guest-brand > span {
  min-width: 0;
  display: grid;
  gap: 2px;
}
.guest-brand strong {
  overflow: hidden;
  color: #07365d;
  font-size: clamp(15px, 4.5vw, 20px);
  line-height: 1.05;
  letter-spacing: -.035em;
  text-overflow: ellipsis;
  white-space: nowrap;
}
.guest-brand small {
  color: #1b6176;
  font-size: 6.5px;
  font-weight: 900;
  letter-spacing: .13em;
  line-height: 1.15;
  white-space: nowrap;
}
.guest-language {
  position: relative;
  z-index: 8;
  flex: 0 0 auto;
}
.guest-language-toggle {
  min-width: 67px;
  height: 48px;
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 5px;
  padding: 0 9px;
  border: 1px solid rgba(255, 255, 255, .72);
  border-radius: 17px;
  color: #0b365f;
  background: rgba(255, 255, 255, .82);
  box-shadow: 0 8px 22px rgba(5, 43, 78, .15);
  -webkit-backdrop-filter: blur(15px) saturate(1.14);
  backdrop-filter: blur(15px) saturate(1.14);
}
.guest-language-flag {
  font-size: 20px;
  line-height: 1;
}
.guest-language-toggle strong {
  font-size: 10px;
  letter-spacing: .03em;
}
.guest-language-chevron {
  margin-top: -3px;
  color: #52718b;
  font-size: 14px;
  line-height: 1;
}
.guest-language-menu {
  position: absolute;
  top: calc(100% + 7px);
  right: 0;
  width: 176px;
  display: grid;
  gap: 3px;
  padding: 7px;
  border: 1px solid rgba(255, 255, 255, .75);
  border-radius: 17px;
  background: rgba(247, 252, 255, .95);
  box-shadow: 0 18px 38px rgba(4, 33, 65, .25);
  -webkit-backdrop-filter: blur(20px) saturate(1.18);
  backdrop-filter: blur(20px) saturate(1.18);
}
.guest-language-menu[hidden] {
  display: none !important;
}
.guest-language-menu button {
  min-height: 42px;
  display: grid;
  grid-template-columns: 26px minmax(0, 1fr) auto;
  gap: 7px;
  align-items: center;
  padding: 0 9px;
  border: 0;
  border-radius: 12px;
  color: #173a60;
  background: transparent;
  text-align: left;
}
.guest-language-menu button > span {
  font-size: 19px;
}
.guest-language-menu button strong {
  font-size: 11px;
}
.guest-language-menu button small {
  color: #7590a6;
  font-size: 8px;
  font-weight: 900;
}
.guest-language-menu button.is-selected {
  color: #0868cf;
  background: #e9f5ff;
  box-shadow: inset 0 0 0 1px #cde5f8;
}
.guest-claim {
  width: min(540px, calc(100% - 24px));
  display: grid;
  gap: 4px;
  margin: 14px auto 0;
  padding: 10px 15px;
  border: 1px solid rgba(255, 255, 255, .68);
  border-radius: 18px;
  color: #12375f;
  background: rgba(255, 255, 255, .78);
  box-shadow: 0 9px 24px rgba(7, 44, 76, .14);
  text-align: center;
  -webkit-backdrop-filter: blur(15px) saturate(1.1);
  backdrop-filter: blur(15px) saturate(1.1);
}
.guest-claim strong,
.guest-claim h1 {
  margin: 0;
  font-size: clamp(14px, 4.1vw, 18px);
  line-height: 1.15;
  letter-spacing: -.025em;
}
.guest-claim span {
  color: #446782;
  font-size: clamp(9px, 2.7vw, 11px);
  line-height: 1.35;
}
.guest-panel {
  width: min(640px, calc(100% - 14px));
  margin: 0 auto max(7px, env(safe-area-inset-bottom, 0px));
  padding: 17px;
  border: 1px solid rgba(255, 255, 255, .82);
  border-radius: 27px;
  background: linear-gradient(160deg, rgba(255, 255, 255, .95), rgba(247, 252, 255, .9));
  box-shadow: 0 20px 55px rgba(5, 35, 67, .24), inset 0 1px rgba(255, 255, 255, .8);
  -webkit-backdrop-filter: blur(20px) saturate(1.1);
  backdrop-filter: blur(20px) saturate(1.1);
}
.guest-actions {
  display: grid;
  gap: 8px;
  margin: 0 0 12px;
}

.guest-entry {
  display: grid;
  gap: 10px;
  margin: 0 0 12px;
  padding: 13px;
  border: 1px solid rgba(122, 181, 224, .62);
  border-radius: 20px;
  background:
    radial-gradient(circle at 95% 0, rgba(255, 213, 80, .2), transparent 8rem),
    linear-gradient(145deg, rgba(239, 249, 255, .98), rgba(255, 255, 255, .94));
  box-shadow: 0 8px 22px rgba(12, 68, 119, .08);
}

.guest-entry-copy {
  display: grid;
  gap: 4px;
  text-align: center;
}

.guest-entry-copy > small {
  color: #0871df;
  font-size: 7px;
  font-weight: 950;
  letter-spacing: .15em;
}

.guest-entry-copy h2 {
  margin: 0;
  color: #11365f;
  font-size: 15px;
  line-height: 1.15;
  letter-spacing: -.025em;
}

.guest-entry-copy p {
  max-width: 500px;
  margin: 0 auto;
  color: #627b93;
  font-size: 8.5px;
  line-height: 1.4;
}

.guest-browser-actions,
.guest-app-actions {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 7px;
}

.guest-browser-actions button,
.guest-app-open,
.guest-play-badge {
  min-width: 0;
  min-height: 48px;
  border-radius: 14px;
}

.guest-browser-actions button {
  padding: 8px 7px;
  font-size: 10.5px;
  font-weight: 900;
}

.guest-browser-login {
  border: 0;
  color: #fff;
  background: linear-gradient(112deg, #0872ed, #10afd0);
  box-shadow: 0 8px 19px rgba(7, 108, 221, .22);
}

.guest-browser-actions .guest-register {
  border: 1px solid #9bcaf0;
  color: #123b68;
  background: rgba(255, 255, 255, .92);
  box-shadow: none;
}

.guest-app-actions {
  align-items: stretch;
  padding-top: 8px;
  border-top: 1px solid rgba(165, 196, 218, .52);
}

.guest-app-open {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 7px;
  padding: 7px 10px;
  border: 1px solid #bfd5e5;
  color: #123b68;
  background: #fff;
  font-size: 10.5px;
  text-decoration: none;
}

.guest-app-open > span {
  font-size: 18px;
}

.guest-play-badge {
  display: grid;
  place-items: center;
  overflow: hidden;
  border: 1px solid #d7e2e9;
  background: #fff;
}

.guest-play-badge img {
  width: auto;
  max-width: 142px;
  height: 47px;
  display: block;
  object-fit: contain;
}
.guest-actions button {
  width: 100%;
  min-height: 49px;
  border-radius: 15px;
  font-size: 13px;
  font-weight: 900;
  letter-spacing: -.01em;
}
.guest-register {
  border: 0;
  color: #fff;
  background: linear-gradient(112deg, #0872ed 0%, #087ff0 50%, #10afd0 100%);
  box-shadow: 0 9px 22px rgba(7, 108, 221, .27), inset 0 1px rgba(255, 255, 255, .22);
}
.guest-login {
  border: 1px solid #9bcaf0;
  color: #123b68;
  background: rgba(255, 255, 255, .8);
  box-shadow: inset 0 1px rgba(255, 255, 255, .9);
}
.guest-public-access {
  display: grid;
  gap: 9px;
  margin: 0 0 12px;
  padding: 11px;
  border: 1px solid rgba(129, 187, 226, .62);
  border-radius: 17px;
  background: linear-gradient(145deg, rgba(232, 247, 255, .92), rgba(250, 253, 255, .84));
}
.guest-public-access > div:first-child {
  display: grid;
  gap: 2px;
  text-align: center;
}
.guest-public-access strong,
.guest-public-access h2 {
  margin: 0;
  color: #123d69;
  font-size: 11px;
  line-height: 1.2;
}
.guest-public-access small {
  color: #66809a;
  font-size: 8.5px;
  line-height: 1.35;
}
.guest-public-links {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 6px;
}
.guest-public-links button,
.guest-public-links a {
  min-width: 0;
  min-height: 52px;
  display: grid;
  place-items: center;
  align-content: center;
  gap: 3px;
  padding: 6px 3px;
  border: 1px solid #c8dfef;
  border-radius: 12px;
  color: #245276;
  background: rgba(255, 255, 255, .9);
  font-size: 8.5px;
  font-weight: 900;
  text-align: center;
  text-decoration: none;
  box-shadow: 0 4px 11px rgba(28, 80, 120, .06);
}
.guest-public-links button > span:first-child,
.guest-public-links a > span:first-child {
  font-size: 18px;
  line-height: 1;
}
.guest-benefits {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 8px;
}
.guest-benefits article {
  min-width: 0;
  min-height: 101px;
  display: grid;
  grid-template-columns: 39px minmax(0, 1fr);
  gap: 8px;
  align-items: start;
  padding: 10px 9px;
  border: 1px solid rgba(198, 217, 232, .73);
  border-radius: 17px;
  background: rgba(255, 255, 255, .69);
  box-shadow: 0 5px 15px rgba(27, 70, 108, .06);
}
.guest-benefit-icon {
  width: 39px;
  height: 39px;
  display: grid;
  place-items: center;
  border-radius: 13px;
  color: #0871dd;
  background: #e9f5ff;
}
.guest-benefit-icon .icon {
  width: 23px;
  height: 23px;
}
.guest-benefit-icon.coral {
  color: #e95142;
  background: #fff0e9;
}
.guest-benefit-icon.teal {
  color: #047f8f;
  background: #e7f7f7;
}
.guest-benefit-icon.green {
  color: #167e65;
  background: #e8f7f1;
}
.guest-benefits strong {
  display: block;
  color: #153459;
  font-size: 10.5px;
  line-height: 1.2;
}
.guest-benefits p {
  margin: 4px 0 0;
  color: #60758c;
  font-size: 8.8px;
  line-height: 1.35;
}
.guest-protected {
  max-width: 570px;
  display: grid;
  grid-template-columns: 19px minmax(0, 1fr);
  gap: 7px;
  align-items: start;
  margin: 11px auto 0;
  color: #55718e;
  font-size: 8.6px;
  line-height: 1.4;
}
.guest-protected .icon {
  width: 17px;
  height: 17px;
  color: #0874e8;
}
.guest-disclaimer {
  max-width: 575px;
  margin: 8px auto 0;
  padding-top: 8px;
  border-top: 1px solid rgba(176, 200, 218, .52);
  color: #6d8092;
  font-size: 7.8px;
  line-height: 1.4;
  text-align: center;
}

.guest-legal-links {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  gap: 7px 13px;
  margin-top: 8px;
}

.guest-legal-links a {
  color: #54718d;
  font-size: 8px;
  font-weight: 800;
  text-decoration: underline;
  text-decoration-color: rgba(84, 113, 141, .35);
  text-underline-offset: 2px;
}

@media (max-width: 365px) {
  .guest-hero { padding-left: 8px; padding-right: 8px; }
  .guest-brand { gap: 7px; padding-right: 8px; }
  .guest-brand img { width: 42px; height: 42px; flex-basis: 42px; border-radius: 13px; }
  .guest-brand strong { font-size: 15px; }
  .guest-brand small { font-size: 5.8px; letter-spacing: .11em; }
  .guest-language-toggle { min-width: 62px; height: 45px; padding: 0 7px; }
  .guest-language-flag { font-size: 18px; }
  .guest-panel { width: calc(100% - 10px); padding: 13px; border-radius: 24px; }
  .guest-entry { padding: 10px; }
  .guest-browser-actions { grid-template-columns: 1fr; }
  .guest-app-open { padding-inline: 6px; font-size: 9.5px; }
  .guest-play-badge img { max-width: 124px; height: 43px; }
  .guest-public-links { grid-template-columns: repeat(3, minmax(0, 1fr)); }
  .guest-benefits { gap: 6px; }
  .guest-benefits article { min-height: 99px; grid-template-columns: 34px minmax(0, 1fr); gap: 6px; padding: 9px 7px; }
  .guest-benefit-icon { width: 34px; height: 34px; border-radius: 11px; }
  .guest-benefit-icon .icon { width: 20px; height: 20px; }
  .guest-benefits strong { font-size: 9.5px; }
  .guest-benefits p { font-size: 7.6px; }
}

@media (max-height: 760px) {
  .guest-hero { min-height: clamp(300px, 45dvh, 355px); }
  .guest-claim { margin-top: 10px; padding-top: 8px; padding-bottom: 8px; }
  .guest-panel { padding-top: 14px; padding-bottom: 13px; }
  .guest-actions { gap: 6px; margin-bottom: 9px; }
  .guest-actions button { min-height: 44px; }
  .guest-benefits article { min-height: 93px; }
  .guest-protected { margin-top: 8px; }
  .guest-disclaimer { margin-top: 6px; padding-top: 6px; }
}

@media (min-width: 700px) and (max-height: 700px) {
  .guest-hero { min-height: 240px; }
  .guest-benefits { grid-template-columns: repeat(4, minmax(0, 1fr)); }
  .guest-benefits article { min-height: 106px; }
}

@media (min-width: 900px) {
  body.app-guest .app-main {
    display: grid;
    place-items: center;
    background: #e8f4f8;
  }

  .guest-welcome {
    min-height: 100vh;
    display: grid;
    place-items: center;
    padding: clamp(22px, 3vw, 42px);
  }

  .guest-background img {
    object-position: 50% 61%;
    transform: scale(1.06);
    filter: blur(14px) saturate(.82) contrast(.94);
    opacity: .5;
  }

  .guest-background-shade {
    background:
      linear-gradient(105deg, rgba(4, 31, 62, .3), rgba(225, 244, 250, .55) 48%, rgba(255, 248, 230, .78)),
      radial-gradient(circle at 13% 10%, rgba(66, 190, 233, .2), transparent 31rem),
      radial-gradient(circle at 91% 8%, rgba(255, 213, 83, .18), transparent 24rem);
  }

  .guest-layout {
    width: min(1420px, 100%);
    min-height: min(880px, calc(100vh - clamp(44px, 6vw, 84px)));
    display: grid;
    grid-template-columns: minmax(470px, 1.18fr) minmax(450px, .82fr);
    gap: clamp(20px, 2.4vw, 36px);
    align-items: stretch;
    margin: 0 auto;
  }

  .guest-hero {
    width: 100%;
    min-height: 0;
    display: flex;
    flex-direction: column;
    margin: 0;
    padding: clamp(22px, 2.5vw, 34px);
    overflow: hidden;
    border: 1px solid rgba(255, 255, 255, .72);
    border-radius: 38px;
    background-image:
      linear-gradient(180deg, rgba(5, 37, 70, .08), rgba(5, 33, 61, .04) 48%, rgba(5, 28, 52, .58)),
      url('./welcome-rosolina-sunrise-180l.webp?v=180m');
    background-image:
      linear-gradient(180deg, rgba(5, 37, 70, .08), rgba(5, 33, 61, .04) 48%, rgba(5, 28, 52, .58)),
      image-set(
        url('./welcome-rosolina-sunrise-180l.avif?v=180m') type('image/avif'),
        url('./welcome-rosolina-sunrise-180l.webp?v=180m') type('image/webp')
      );
    background-position: center 60%;
    background-size: cover;
    box-shadow: 0 28px 75px rgba(4, 34, 65, .24);
  }

  .guest-topbar {
    width: 100%;
  }

  .guest-brand {
    padding: 7px 13px 7px 7px;
    border-radius: 21px;
  }

  .guest-brand img {
    width: 52px;
    height: 52px;
    flex-basis: 52px;
    border-radius: 15px;
  }

  .guest-brand strong {
    font-size: 21px;
  }

  .guest-language-toggle {
    min-width: 76px;
    height: 52px;
  }

  .guest-claim {
    width: min(570px, calc(100% - 24px));
    margin: auto auto 0;
    padding: 15px 20px;
    border-radius: 21px;
    background: rgba(255, 255, 255, .86);
    box-shadow: 0 13px 35px rgba(4, 31, 61, .22);
  }

  .guest-claim strong,
  .guest-claim h1 {
    font-size: 20px;
  }

  .guest-claim span {
    font-size: 12px;
  }

  .guest-panel {
    width: 100%;
    max-width: 570px;
    align-self: center;
    margin: 0;
    padding: clamp(20px, 2.2vw, 29px);
    border-radius: 34px;
    box-shadow: 0 28px 75px rgba(4, 34, 65, .21), inset 0 1px rgba(255, 255, 255, .9);
  }

  .guest-actions {
    gap: 10px;
    margin-bottom: 17px;
  }

  .guest-actions button {
    min-height: 55px;
    border-radius: 17px;
    font-size: 14px;
  }

  .guest-entry {
    gap: 11px;
    margin-bottom: 16px;
    padding: 15px;
    border-radius: 22px;
  }

  .guest-entry-copy > small {
    font-size: 7.5px;
  }

  .guest-entry-copy h2 {
    font-size: 17px;
  }

  .guest-entry-copy p {
    font-size: 9px;
  }

  .guest-browser-actions button,
  .guest-app-open,
  .guest-play-badge {
    min-height: 51px;
  }

  .guest-browser-actions button,
  .guest-app-open {
    font-size: 11px;
  }

  .guest-public-access {
    padding: 13px;
    margin-bottom: 16px;
  }

  .guest-public-links button,
  .guest-public-links a {
    min-height: 58px;
    font-size: 9px;
  }

  .guest-benefits {
    gap: 10px;
  }

  .guest-benefits article {
    min-height: 112px;
    grid-template-columns: 44px minmax(0, 1fr);
    gap: 10px;
    padding: 13px 12px;
    border-radius: 19px;
  }

  .guest-benefit-icon {
    width: 44px;
    height: 44px;
    border-radius: 14px;
  }

  .guest-benefits strong {
    font-size: 12px;
  }

  .guest-benefits p {
    font-size: 9.5px;
    line-height: 1.42;
  }

  .guest-protected {
    margin-top: 15px;
    font-size: 9.5px;
  }

  .guest-disclaimer {
    margin-top: 11px;
    padding-top: 10px;
    font-size: 8.5px;
  }
}

@media (min-width: 900px) and (max-height: 760px) {
  .guest-welcome { padding: 18px; }
  .guest-layout { min-height: calc(100vh - 36px); }
  .guest-hero { padding: 20px; }
  .guest-panel { padding: 18px; }
  .guest-actions { gap: 7px; margin-bottom: 11px; }
  .guest-actions button { min-height: 47px; }
  .guest-benefits { gap: 7px; }
  .guest-benefits article { min-height: 94px; padding: 9px; }
  .guest-protected { margin-top: 9px; }
  .guest-disclaimer { margin-top: 7px; padding-top: 7px; }
}

@media (prefers-reduced-motion: reduce) {
  .guest-background img { transform: none; }
}

@media (prefers-reduced-motion: reduce) and (min-width: 900px) {
  .guest-background img { transform: scale(1.06); }
}

/* 1.4.8 – eigenständiger Upload nur für die Foto-Pinnwand */
.photo-upload-sheet {
  overflow-y: auto;
  overscroll-behavior: contain;
  padding-bottom: calc(22px + env(safe-area-inset-bottom));
  background:
    radial-gradient(circle at 92% 6%, rgba(255, 220, 104, .22), transparent 13rem),
    linear-gradient(180deg, #f8fcff, #eef8ff);
}

.photo-upload-intro {
  padding: 14px 18px 10px;
}

.photo-upload-author {
  display: flex;
  align-items: center;
  gap: 9px;
  margin-bottom: 12px;
}

.photo-upload-author strong,
.photo-upload-author small {
  display: block;
}

.photo-upload-author strong {
  color: #15375e;
  font-size: 12px;
}

.photo-upload-author small {
  margin-top: 2px;
  color: #71859a;
  font-size: 9px;
}

.photo-upload-badge {
  display: inline-flex;
  padding: 5px 9px;
  border-radius: 999px;
  color: #0868c9;
  background: #e6f5ff;
  font-size: 8px;
  font-weight: 900;
  letter-spacing: .04em;
  text-transform: uppercase;
}

.photo-upload-intro h2 {
  margin: 8px 0 5px;
  color: #102f55;
  font-size: 22px;
  letter-spacing: -.025em;
}

.photo-upload-intro p {
  margin: 0;
  color: #667d94;
  font-size: 10px;
  line-height: 1.45;
}

.photo-upload-preview {
  min-height: 162px;
  margin: 0 18px;
  padding: 6px;
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 6px;
  border: 1px solid #cfdfeb;
  border-radius: 20px;
  background: rgba(255, 255, 255, .9);
  box-shadow: 0 10px 24px rgba(25, 69, 108, .08);
}

.photo-upload-preview .photo-preview {
  min-width: 0;
  aspect-ratio: 1 / 1;
  border-radius: 13px;
}

.photo-upload-preview .photo-preview img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}

.photo-upload-empty {
  grid-column: 1 / -1;
  min-height: 148px;
  display: grid;
  place-items: center;
  align-content: center;
  gap: 4px;
  border: 1px dashed #a9cce4;
  border-radius: 15px;
  color: #276a9f;
  background: linear-gradient(145deg, #f5fbff, #edf7ff);
}

.photo-upload-empty span { font-size: 28px; }
.photo-upload-empty strong { font-size: 12px; }
.photo-upload-empty small { color: #71869a; font-size: 9px; }

.photo-upload-toolbar {
  margin: 9px 18px 0;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 10px;
}

.photo-upload-toolbar button {
  min-height: 38px;
  display: inline-flex;
  align-items: center;
  gap: 6px;
  padding: 0 12px;
  border: 1px solid #c7dceb;
  border-radius: 12px;
  color: #1769b7;
  background: #fff;
  font-size: 10px;
  font-weight: 850;
}

.photo-upload-toolbar .icon { width: 18px; height: 18px; }
.photo-upload-toolbar small { color: #71869a; font-size: 9px; font-weight: 800; }

.photo-upload-fields {
  margin: 14px 18px 0;
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 10px;
}

.photo-upload-fields label {
  display: grid;
  gap: 5px;
  color: #294c6d;
  font-size: 9px;
  font-weight: 850;
}

.photo-upload-fields label:first-child,
.photo-upload-fields label:last-child {
  grid-column: 1 / -1;
}

.photo-upload-fields label span small {
  color: #8192a3;
  font-weight: 650;
}

.photo-upload-fields input,
.photo-upload-fields select,
.photo-upload-fields textarea {
  width: 100%;
  min-height: 42px;
  padding: 10px 11px;
  border: 1px solid #cfdeea;
  border-radius: 13px;
  color: #15375e;
  background: rgba(255, 255, 255, .96);
  font: inherit;
  font-size: 11px;
  font-weight: 650;
  resize: vertical;
}

.photo-upload-rights {
  margin: 14px 18px 0;
}

.photo-upload-note {
  margin: 10px 22px 0;
  color: #768a9c;
  font-size: 8px;
  line-height: 1.4;
  text-align: center;
}

@media (max-width: 360px), (max-height: 720px) {
  .photo-upload-intro { padding-top: 10px; }
  .photo-upload-intro h2 { font-size: 19px; }
  .photo-upload-preview { min-height: 132px; }
  .photo-upload-empty { min-height: 118px; }
  .photo-upload-fields { margin-top: 10px; }
  .photo-upload-rights { margin-top: 10px; }
}

/* 1.4.9 – klare Freunde-, Such- und Anfragenansicht */
.messages-screen #message-content.friends-card {
  overflow: visible;
}

.friends-overview-head {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
  padding: 16px;
  background:
    radial-gradient(circle at 92% 10%, rgba(255, 222, 105, .22), transparent 28%),
    linear-gradient(145deg, #ffffff, #f3faff);
  border-bottom: 1px solid #e6eef5;
}

.friends-overview-head h2 {
  margin: 2px 0 3px;
  color: #14335d;
  font-size: 19px;
}

.friends-overview-head p {
  margin: 0;
  color: #72869b;
  font-size: 9px;
  line-height: 1.35;
}

.friends-kicker {
  color: #0a75d9;
  font-size: 8px;
  font-weight: 900;
  letter-spacing: .13em;
}

.find-friends-button,
.friends-empty button {
  min-height: 42px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 5px;
  padding: 0 12px;
  border: 0;
  border-radius: 13px;
  color: #fff;
  background: linear-gradient(135deg, #0874e8, #12a8e7);
  box-shadow: 0 7px 16px rgba(7, 112, 219, .18);
  font-size: 10px;
  font-weight: 850;
  white-space: nowrap;
}

.find-friends-button > span:first-child {
  font-size: 17px;
  line-height: 1;
}

.friends-list {
  display: grid;
}

.friend-card-row {
  min-height: 74px;
  padding: 11px 14px;
}

.friend-copy small {
  display: block;
  margin-top: 3px;
  color: #2f8c6d;
  font-size: 8px;
  font-weight: 800;
}

.friend-message-button {
  min-width: 82px;
  height: 42px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 5px;
  padding: 0 10px;
  border: 1px solid #cfe0ed;
  border-radius: 13px;
  color: #176bb8;
  background: #fff;
  font-size: 9px;
  font-weight: 850;
}

.friend-message-button .icon {
  width: 18px;
  height: 18px;
}

.friend-message-button.is-disabled {
  color: #8595a5;
  background: #eef3f7;
  opacity: .78;
}

#people-search-slot {
  padding: 10px;
  background: #f5faff;
  border-bottom: 1px solid #deebf4;
}

.people-search {
  padding: 12px;
  border: 1px solid #cfe0ec;
  border-radius: 17px;
  background: #fff;
  box-shadow: 0 9px 20px rgba(24, 70, 110, .08);
}

.people-search header {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: 10px;
  margin-bottom: 10px;
}

.people-search header strong {
  display: block;
  color: #15365f;
  font-size: 13px;
}

.people-search header small {
  display: block;
  margin-top: 2px;
  color: #7b8ea1;
  font-size: 9px;
}

.people-search header button {
  width: 31px;
  height: 31px;
  border: 0;
  border-radius: 50%;
  color: #60768c;
  background: #edf3f8;
  font-size: 20px;
}

.people-search-field {
  height: 45px;
  display: grid;
  grid-template-columns: 30px minmax(0, 1fr);
  align-items: center;
  padding: 0 8px;
  border: 1px solid #c9dce9;
  border-radius: 14px;
  color: #1974c5;
  background: #fafdff;
}

.people-search-field > span {
  text-align: center;
  font-size: 20px;
  transform: rotate(-20deg);
}

.people-search-field input {
  min-width: 0;
  height: 42px;
  padding: 0 5px;
  border: 0;
  outline: 0;
  color: #203e61;
  background: transparent;
  font-size: 12px;
}

.people-search-hint {
  margin: 7px 3px 0;
  color: #7b8ea2;
  font-size: 8px;
}

.people-results {
  display: grid;
  gap: 4px;
  margin-top: 8px;
  padding-top: 5px;
  border-top: 1px solid #edf2f6;
}

.people-result {
  display: grid;
  grid-template-columns: 42px minmax(0, 1fr) auto;
  gap: 9px;
  align-items: center;
  padding: 7px 2px;
}

.people-result strong {
  display: block;
  color: #17325a;
  font-size: 12px;
}

.people-result strong.admin { color: #d62f39; }

.people-result small {
  display: block;
  margin-top: 2px;
  color: #7a8da4;
  font-size: 9px;
}

.people-result button {
  min-height: 38px;
  padding: 7px 10px;
  border: 0;
  border-radius: 11px;
  color: #fff;
  background: #0870e5;
  font-size: 9px;
  font-weight: 850;
}

.people-result button[disabled] {
  color: #6f8194;
  background: #e8eef4;
}

.people-search-loading {
  padding: 13px 8px;
  color: #70859a;
  text-align: center;
  font-size: 9px;
}

.people-search-feedback {
  display: grid;
  grid-template-columns: 34px 1fr;
  gap: 8px;
  align-items: center;
  padding: 10px;
  border-radius: 13px;
  color: #385674;
  background: #f1f7fb;
}

.people-search-feedback > span {
  width: 32px;
  height: 32px;
  display: grid;
  place-items: center;
  border-radius: 50%;
  color: #16805e;
  background: #dff5eb;
}

.people-search-feedback strong,
.people-search-feedback small {
  display: block;
}

.people-search-feedback strong { font-size: 10px; }
.people-search-feedback small { margin-top: 2px; color: #7a8da0; font-size: 8px; }

.friends-empty {
  min-height: 170px;
  display: grid;
  place-items: center;
  align-content: center;
  gap: 6px;
  padding: 22px 18px;
  color: #6f8398;
  text-align: center;
}

.friends-empty > span {
  width: 48px;
  height: 48px;
  display: grid;
  place-items: center;
  border-radius: 17px;
  color: #1475c8;
  background: #e7f4ff;
  font-size: 23px;
}

.friends-empty strong { color: #17365c; font-size: 14px; }
.friends-empty p { max-width: 280px; margin: 0 0 5px; font-size: 10px; line-height: 1.4; }
.friends-empty.requests > span { color: #278969; background: #e2f5ed; }

.request-section + .request-section {
  border-top: 8px solid #eff6fb;
}

.request-section-head {
  min-height: 43px;
  display: flex;
  align-items: center;
  justify-content: space-between;
  padding: 9px 13px;
  border-bottom: 1px solid #e9eff4;
}

.request-section-head h2 {
  margin: 0;
  color: #19385f;
  font-size: 13px;
}

.request-section-head span {
  min-width: 23px;
  height: 23px;
  padding: 0 6px;
  border-radius: 99px;
  color: #0b6dcc;
  background: #e7f3ff;
  font-size: 9px;
  font-weight: 900;
  line-height: 23px;
  text-align: center;
}

.request-section.sent .request-section-head span {
  color: #765a1d;
  background: #fff4d9;
}

.request-row {
  min-height: 67px;
}

.request-waiting {
  padding: 8px 9px;
  border-radius: 10px;
  color: #7b6225;
  background: #fff5dd;
  font-size: 8px;
  font-weight: 850;
  white-space: nowrap;
}

.request-group-empty {
  padding: 15px 13px;
  color: #8091a3;
  font-size: 9px;
}

@media (max-width: 380px) {
  .friends-overview-head { align-items: flex-start; padding: 14px 12px; }
  .find-friends-button { min-width: 43px; padding: 0 10px; }
  .find-friends-button > span:last-child { display: none; }
  .friend-card-row { grid-template-columns: 46px minmax(0, 1fr) 44px; padding: 10px; }
  .friend-message-button { min-width: 42px; width: 42px; padding: 0; }
  .friend-message-button > span:last-child { display: none; }
  .friend-actions { flex-direction: column; }
  .friend-actions button { padding: 6px 7px; font-size: 8px; }
}

/* 1.4.9 – antippbare Community-Profile */
.friend-card-row {
  grid-template-columns: minmax(0, 1fr) auto;
}

.friend-profile-button,
.request-profile-button,
.people-result-profile {
  min-width: 0;
  border: 0;
  color: inherit;
  background: transparent;
  text-align: left;
}

.friend-profile-button {
  display: grid;
  grid-template-columns: 48px minmax(0, 1fr) 18px;
  gap: 10px;
  align-items: center;
  padding: 0;
  border-radius: 13px;
}

.friend-profile-button:active,
.request-profile-button:active,
.people-result-profile:active {
  background: #edf6fd;
}

.friend-copy {
  min-width: 0;
}

.friend-copy strong,
.friend-location {
  display: block;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.friend-location {
  margin-top: 2px;
  color: #74889e;
  font-size: 9px;
}

.friend-profile-arrow {
  color: #6c8297;
  font-size: 23px;
  font-weight: 500;
}

.request-row {
  grid-template-columns: minmax(0, 1fr) auto;
}

.request-profile-button {
  display: grid;
  grid-template-columns: 44px minmax(0, 1fr);
  gap: 9px;
  align-items: center;
  padding: 2px;
  border-radius: 12px;
}

.request-profile-button strong,
.request-profile-button small {
  display: block;
}

.request-profile-button small {
  margin-top: 3px;
  overflow: hidden;
  color: #7a8ca2;
  font-size: 9px;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.people-result {
  grid-template-columns: minmax(0, 1fr) auto;
}

.people-result .people-result-profile {
  min-height: 46px;
  display: grid;
  grid-template-columns: 42px minmax(0, 1fr);
  gap: 9px;
  align-items: center;
  padding: 2px;
  border-radius: 12px;
  color: inherit;
  background: transparent;
}

.people-result .people-result-profile span {
  min-width: 0;
}

.people-result .people-result-profile strong,
.people-result .people-result-profile small {
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.community-profile-screen {
  position: fixed;
  z-index: 180;
  inset: 0;
  display: flex;
  flex-direction: column;
  color: #16345d;
  background:
    radial-gradient(circle at 93% 11%, rgba(255, 221, 102, .22), transparent 24%),
    linear-gradient(180deg, #edf9ff 0%, #f8fcff 48%, #eef7fd 100%);
}

.community-profile-head {
  flex: 0 0 auto;
  min-height: 64px;
  display: grid;
  grid-template-columns: 44px minmax(0, 1fr) 44px;
  gap: 7px;
  align-items: center;
  padding: max(8px, env(safe-area-inset-top, 0px)) 12px 8px;
  border-bottom: 1px solid rgba(205, 223, 236, .9);
  background: rgba(255, 255, 255, .94);
  box-shadow: 0 5px 18px rgba(24, 65, 104, .07);
  backdrop-filter: blur(14px);
  -webkit-backdrop-filter: blur(14px);
}

.community-profile-head > button {
  width: 42px;
  height: 42px;
  display: grid;
  place-items: center;
  padding: 0;
  border: 0;
  border-radius: 14px;
  color: #176cba;
  background: #edf6fd;
  font-size: 30px;
}

.community-profile-head > div {
  min-width: 0;
  text-align: center;
}

.community-profile-head small,
.community-profile-head strong {
  display: block;
}

.community-profile-head small {
  color: #2581c9;
  font-size: 7px;
  font-weight: 900;
  letter-spacing: .12em;
}

.community-profile-head strong {
  margin-top: 1px;
  font-size: 15px;
}

.community-profile-head .community-profile-head-message {
  color: #fff;
  background: linear-gradient(145deg, #0872e8, #10a8e5);
  font-size: inherit;
}

.community-profile-head-message .icon {
  width: 21px;
  height: 21px;
}

.community-profile-scroll {
  flex: 1 1 auto;
  width: min(760px, 100%);
  margin: 0 auto;
  padding: 12px 10px max(32px, env(safe-area-inset-bottom, 0px));
  overflow-y: auto;
  overscroll-behavior: contain;
}

.community-profile-hero {
  position: relative;
  overflow: hidden;
  padding: 18px 16px 14px;
  border: 1px solid #d2e2ee;
  border-radius: 24px;
  background:
    radial-gradient(circle at 88% 14%, rgba(255, 219, 91, .36), transparent 23%),
    radial-gradient(circle at 4% 92%, rgba(42, 183, 222, .17), transparent 26%),
    #fff;
  box-shadow: 0 10px 26px rgba(22, 68, 112, .1);
}

.community-profile-hero:after {
  content: '🌴 〰〰';
  position: absolute;
  right: -5px;
  bottom: 43px;
  opacity: .08;
  font-size: 48px;
  pointer-events: none;
}

.community-profile-identity {
  position: relative;
  z-index: 1;
  display: grid;
  grid-template-columns: 92px minmax(0, 1fr);
  gap: 14px;
  align-items: center;
}

.community-profile-identity .avatar {
  border-width: 4px;
  font-size: 22px;
}

.community-friend-label {
  display: inline-flex;
  padding: 5px 8px;
  border-radius: 99px;
  color: #19775c;
  background: #e4f6ef;
  font-size: 8px;
  font-weight: 900;
}

.community-profile-identity h1 {
  margin: 5px 0 3px;
  overflow: hidden;
  color: #12315c;
  font-size: clamp(23px, 7vw, 32px);
  line-height: 1.05;
  text-overflow: ellipsis;
}

.community-profile-identity p {
  margin: 0;
  color: #667d96;
  font-size: 10px;
  line-height: 1.4;
}

.community-profile-points {
  display: block;
  margin-top: 6px;
  color: #294665;
  font-size: 11px;
}

.community-profile-message {
  position: relative;
  z-index: 1;
  width: 100%;
  min-height: 47px;
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 8px;
  margin-top: 15px;
  border: 0;
  border-radius: 15px;
  color: #fff;
  background: linear-gradient(135deg, #0870e7, #11aae6);
  box-shadow: 0 8px 17px rgba(4, 111, 218, .2);
  font-size: 11px;
  font-weight: 900;
}

.community-profile-message .icon {
  width: 22px;
  height: 22px;
}

.community-profile-privacy {
  position: relative;
  z-index: 1;
  display: block;
  margin-top: 10px;
  color: #71869a;
  text-align: center;
  font-size: 8px;
  line-height: 1.35;
}

.community-profile-facts {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 8px;
  margin: 10px 0;
}

.community-profile-facts article {
  min-width: 0;
  display: grid;
  grid-template-columns: 32px minmax(0, 1fr);
  gap: 8px;
  padding: 11px;
  border: 1px solid #d6e5ef;
  border-radius: 17px;
  background: rgba(255, 255, 255, .94);
}

.community-profile-facts article > span {
  width: 32px;
  height: 32px;
  display: grid;
  place-items: center;
  border-radius: 11px;
  background: #eef7ff;
}

.community-profile-facts strong,
.community-profile-facts p {
  display: block;
}

.community-profile-facts strong {
  font-size: 10px;
}

.community-profile-facts p {
  margin: 3px 0 0;
  overflow: hidden;
  color: #71849a;
  font-size: 9px;
  line-height: 1.35;
  text-overflow: ellipsis;
}

.community-profile-interests,
.community-profile-stays,
.community-profile-posts,
.community-profile-photos,
.community-profile-private-content {
  margin-top: 10px;
}

.community-profile-interests {
  padding: 14px;
}

.community-profile-stays {
  overflow: hidden;
}

.community-profile-stay-list {
  display: grid;
  padding: 0 12px;
}

.community-profile-stay {
  display: grid;
  grid-template-columns: 44px minmax(0, 1fr) 20px;
  gap: 10px;
  align-items: center;
  padding: 11px 0;
  border-top: 1px solid #eaf0f4;
}

.community-profile-stay:first-child {
  border-top: 0;
}

.community-profile-stay-icon {
  width: 44px;
  height: 44px;
  display: grid;
  place-items: center;
  border-radius: 14px;
  background: linear-gradient(145deg, #e9f7ff, #fff5d9);
  font-size: 22px;
}

.community-profile-stay small,
.community-profile-stay strong,
.community-profile-stay p {
  display: block;
  margin: 0;
}

.community-profile-stay small {
  color: #1481c7;
  font-size: 7px;
  font-weight: 900;
  letter-spacing: .08em;
}

.community-profile-stay strong {
  margin-top: 2px;
  font-size: 11px;
}

.community-profile-stay p {
  margin-top: 3px;
  overflow: hidden;
  color: #71849a;
  font-size: 9px;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.community-profile-stay-lock {
  font-size: 12px;
  opacity: .72;
}

.community-profile-stay-note {
  margin: 0;
  padding: 7px 12px 13px;
  color: #7a8c9f;
  font-size: 8px;
  line-height: 1.4;
}

.community-profile-interests header h2 {
  margin: 2px 0 10px;
  font-size: 18px;
}

.community-interest-chips {
  display: flex;
  flex-wrap: wrap;
  gap: 7px;
}

.community-interest-chips span {
  padding: 8px 10px;
  border: 1px solid #d6e6f1;
  border-radius: 99px;
  color: #235b88;
  background: #f1f8fd;
  font-size: 9px;
  font-weight: 800;
}

.public-profile-post-list {
  padding: 0 12px 12px;
}

.public-profile-post {
  min-height: 82px;
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  gap: 10px;
  align-items: center;
  padding: 10px 1px;
  border-top: 1px solid #eaf0f4;
}

.public-profile-post:first-child {
  border-top: 0;
}

.public-profile-post-copy {
  min-width: 0;
}

.public-post-type {
  color: #1380c6;
  font-size: 8px;
  font-weight: 900;
  text-transform: uppercase;
}

.public-profile-post h3 {
  margin: 4px 0 2px;
  overflow: hidden;
  font-size: 12px;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.public-profile-post p {
  display: -webkit-box;
  margin: 2px 0 5px;
  overflow: hidden;
  color: #5b7088;
  font-size: 10px;
  line-height: 1.35;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 2;
}

.public-profile-post-copy small {
  color: #8393a4;
  font-size: 8px;
}

.public-post-image {
  width: 70px;
  height: 70px;
  overflow: hidden;
  padding: 0;
  border: 0;
  border-radius: 13px;
  background: #e8f0f6;
}

.public-post-image img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}

.public-post-open {
  color: #59748d;
  font-size: 24px;
}

.public-profile-photo-grid {
  padding: 0 10px 12px;
}

.community-profile-empty-copy {
  margin: 0;
  padding: 5px 14px 16px;
  color: #74899e;
  font-size: 10px;
}

.community-profile-private-content {
  display: grid;
  grid-template-columns: 42px minmax(0, 1fr);
  gap: 10px;
  align-items: center;
  padding: 15px;
}

.community-profile-private-content > span {
  width: 42px;
  height: 42px;
  display: grid;
  place-items: center;
  border-radius: 14px;
  background: #eff4f8;
}

.community-profile-private-content strong {
  font-size: 12px;
}

.community-profile-private-content p {
  margin: 3px 0 0;
  color: #73869a;
  font-size: 9px;
  line-height: 1.4;
}

.community-profile-loading,
.community-profile-error {
  flex: 1;
  display: grid;
  place-items: center;
  align-content: center;
  gap: 10px;
  padding: 30px;
  color: #71869a;
  text-align: center;
}

.community-profile-error > span {
  width: 64px;
  height: 64px;
  display: grid;
  place-items: center;
  border-radius: 22px;
  background: #eef4f8;
  font-size: 28px;
}

.community-profile-error h2,
.community-profile-error p {
  margin: 0;
}

.community-profile-error h2 {
  color: #17365d;
  font-size: 20px;
}

.community-profile-error p {
  max-width: 330px;
  font-size: 11px;
  line-height: 1.45;
}

.community-profile-error button {
  min-height: 44px;
  padding: 0 18px;
  border: 0;
  border-radius: 13px;
  color: #fff;
  background: #0872e6;
  font-size: 10px;
  font-weight: 900;
}

@media (max-width: 380px) {
  .friend-card-row { grid-template-columns: minmax(0, 1fr) 44px; }
  .friend-profile-button { grid-template-columns: 46px minmax(0, 1fr) 14px; gap: 8px; }
  .community-profile-scroll { padding-inline: 7px; }
  .community-profile-hero { padding-inline: 13px; }
  .community-profile-identity { grid-template-columns: 78px minmax(0, 1fr); gap: 11px; }
  .community-profile-identity .avatar { --avatar: 78px !important; }
  .community-profile-facts { grid-template-columns: 1fr; }
  .community-profile-facts article { min-height: 58px; }
}

/* 1.5.0 – Urlaub, Vor-Ort-Community und Countdown */
.onsite-home-card{padding-bottom:14px;background:radial-gradient(circle at 92% 8%,rgba(255,218,91,.24),transparent 25%),linear-gradient(145deg,#fff,#f2fbff)}
.onsite-strip{display:flex;align-items:flex-start;gap:0;padding:2px 13px 0;overflow-x:auto;scrollbar-width:none}.onsite-strip::-webkit-scrollbar{display:none}
.onsite-avatar{min-width:56px;margin-right:-6px;padding:0;border:0;background:transparent;color:#17365e;text-align:center}.onsite-avatar .avatar{border:3px solid #fff;box-shadow:0 5px 13px rgba(19,78,128,.18)}.onsite-avatar>span:last-child{display:block;max-width:52px;margin:4px auto 0;overflow:hidden;font-size:8px;font-weight:850;text-overflow:ellipsis;white-space:nowrap}
.onsite-more{min-width:44px;height:44px;display:grid;place-items:center;margin:2px 0 0 -1px;border:3px solid #fff;border-radius:50%;color:#fff;background:linear-gradient(135deg,#0875e8,#17aedf);font-size:10px;font-weight:900;box-shadow:0 5px 13px rgba(19,78,128,.18)}
.onsite-summary{margin:5px 15px 10px;color:#71859b;font-size:9px}.onsite-empty{display:flex;align-items:center;gap:10px;margin:0 13px 10px;padding:12px;border-radius:15px;background:#f1f8fc}.onsite-empty>span{font-size:24px}.onsite-empty strong,.onsite-empty small{display:block}.onsite-empty strong{font-size:11px}.onsite-empty small{margin-top:2px;color:#788a9d;font-size:8px}
.next-trip-banner{width:calc(100% - 26px);min-height:58px;display:grid;grid-template-columns:42px minmax(0,1fr) 16px;gap:9px;align-items:center;margin:0 13px;padding:8px 10px;border:1px solid #c8dfef;border-radius:16px;color:#17365e;background:rgba(255,255,255,.92);text-align:left}.next-trip-banner>span{width:40px;height:40px;display:grid;place-items:center;border-radius:13px;background:#e9f5ff;font-size:20px}.next-trip-banner strong,.next-trip-banner small{display:block}.next-trip-banner strong{font-size:12px}.next-trip-banner small{margin-top:2px;color:#71859c;font-size:8px;line-height:1.35}.next-trip-banner>b{color:#0a72dd;font-size:20px}.next-trip-banner.empty>span{color:#0a72dd;background:#e9f5ff;font-weight:900}
.travel-screen{display:grid;gap:10px}.travel-hero{min-height:145px;display:grid;grid-template-columns:38px minmax(0,1fr) 48px;gap:10px;align-items:start;padding:17px;border:1px solid #cfe1ef;border-radius:23px;background:radial-gradient(circle at 88% 14%,rgba(255,218,91,.35),transparent 27%),linear-gradient(145deg,#fff,#eaf8ff);box-shadow:0 12px 28px rgba(20,68,111,.09)}.travel-hero h1{margin:3px 0 5px;font-size:25px}.travel-hero p{margin:0;color:#657c96;font-size:10px;line-height:1.45}.travel-kicker{color:#0875d9;font-size:8px;font-weight:900;letter-spacing:.13em}.travel-hero-add{width:48px;height:54px;display:grid;place-items:center;padding:5px;border:0;border-radius:16px;color:#fff;background:linear-gradient(145deg,#0875e8,#17b2e3);box-shadow:0 9px 18px rgba(8,117,232,.22)}.travel-hero-add span{font-size:22px;line-height:18px}.travel-hero-add small{font-size:8px;font-weight:850}
.travel-tabs{display:grid;grid-template-columns:repeat(3,1fr);padding:5px;border:1px solid #d6e3ed;border-radius:18px;background:#fff;box-shadow:0 7px 18px rgba(20,68,111,.06)}.travel-tabs button{min-height:44px;border:0;border-radius:14px;color:#60758d;background:transparent;font-size:10px;font-weight:850}.travel-tabs button.active{color:#fff;background:linear-gradient(135deg,#0874e8,#16afe2);box-shadow:0 6px 14px rgba(7,112,219,.18)}.travel-tabs span{display:inline-grid;min-width:19px;height:19px;place-items:center;margin-left:3px;border-radius:99px;color:inherit;background:rgba(120,150,180,.14);font-size:8px}.travel-tabs .active span{background:rgba(255,255,255,.22)}
.travel-panel{overflow:hidden;border:1px solid #d5e3ed;border-radius:21px;background:#fff;box-shadow:0 10px 24px rgba(20,68,111,.07)}.my-travel-list,.community-stay-list{display:grid}.travel-card{position:relative;display:grid;grid-template-columns:48px minmax(0,1fr) auto;gap:10px;align-items:center;padding:14px;border-bottom:1px solid #e9eff4}.travel-card:last-child{border-bottom:0}.travel-card.is-past{opacity:.68}.travel-card-icon{width:47px;height:47px;display:grid;place-items:center;border-radius:15px;background:linear-gradient(145deg,#edf8ff,#fff7de);font-size:23px}.travel-card-copy{min-width:0}.travel-card-copy strong,.travel-card-copy span,.travel-card-copy small{display:block}.travel-card-copy strong{font-size:13px}.travel-card-copy span{margin-top:3px;color:#486783;font-size:10px;font-weight:750}.travel-card-copy small{margin-top:3px;overflow:hidden;color:#7b8da0;font-size:8px;text-overflow:ellipsis;white-space:nowrap}.travel-card-countdown{min-width:60px;padding:8px;border:0;border-radius:13px;color:#0870d5;background:#e8f4ff;font-size:13px;font-weight:900}.travel-card-countdown small{display:block;margin-top:2px;font-size:7px}.travel-card-past{font-size:8px;font-weight:850;color:#74879b}.travel-card-actions{grid-column:2/4;display:flex;gap:12px}.travel-card-actions button{padding:0;border:0;color:#3975a8;background:transparent;font-size:8px;font-weight:850}.travel-card-actions button:last-child{color:#b65463}.travel-add-wide{width:calc(100% - 24px);min-height:45px;margin:12px;border:1px dashed #91bee0;border-radius:14px;color:#0870d5;background:#f4faff;font-size:10px;font-weight:900}
.travel-empty{min-height:220px;display:grid;place-items:center;align-content:center;gap:6px;padding:24px;text-align:center}.travel-empty>span{font-size:38px}.travel-empty strong{font-size:15px}.travel-empty p{max-width:290px;margin:0;color:#74879c;font-size:10px;line-height:1.4}.travel-empty button{min-height:42px;margin-top:5px;padding:0 15px;border:0;border-radius:13px;color:#fff;background:#0874e8;font-size:10px;font-weight:850}.travel-empty.small{min-height:90px;grid-column:1/-1}.travel-panel-intro{display:flex;align-items:center;gap:10px;padding:13px 14px;border-bottom:1px solid #e8eff4;background:linear-gradient(145deg,#f2faff,#fffdf1)}.travel-panel-intro>span{font-size:24px}.travel-panel-intro strong,.travel-panel-intro small{display:block}.travel-panel-intro strong{font-size:13px}.travel-panel-intro small{margin-top:2px;color:#74879c;font-size:8px;line-height:1.35}
.community-stay{display:grid;grid-template-columns:minmax(0,1fr) 42px;gap:8px;align-items:center;padding:11px 13px;border-bottom:1px solid #e9eff4}.community-stay:last-child{border-bottom:0}.community-stay-profile{min-width:0;display:grid;grid-template-columns:48px minmax(0,1fr);gap:10px;align-items:center;padding:0;border:0;color:#17365e;background:transparent;text-align:left}.community-stay-profile strong,.community-stay-profile small{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.community-stay-profile strong{font-size:12px}.community-stay-profile small{margin-top:3px;color:#74879b;font-size:8px}.community-stay-message{width:40px;height:40px;padding:10px;border:1px solid #d2e1ec;border-radius:13px;color:#176cb7;background:#fff}.community-stay-message .icon{width:19px;height:19px}.community-stay.compact{padding-block:9px}.community-stay.compact .community-stay-profile{grid-template-columns:40px minmax(0,1fr)}
.travel-calendar-months{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;padding:12px;background:#f5faff}.travel-calendar-months>button{min-height:84px;display:grid;grid-template-columns:1fr auto;align-items:start;padding:11px;border:1px solid #d7e5ef;border-radius:15px;color:#244462;background:#fff;text-align:left}.travel-calendar-months>button.active{border-color:#6bb5ed;background:linear-gradient(145deg,#eaf6ff,#fff);box-shadow:0 6px 15px rgba(20,104,180,.12)}.travel-calendar-months strong{font-size:10px;text-transform:capitalize}.travel-calendar-months small{color:#6d849a;font-size:8px}.month-avatar-row{grid-column:1/-1;display:flex;margin-top:8px}.month-avatar-row .avatar{margin-right:-7px;border:2px solid #fff}.calendar-list{max-height:330px;overflow:auto}.travel-privacy-note{margin:0;padding:11px 14px;color:#70859a;background:#f9fbfd;font-size:8px;line-height:1.45}
.stay-editor{position:fixed;z-index:210;inset:0;display:flex;align-items:flex-end;padding-top:55px;background:rgba(10,30,58,.48);backdrop-filter:blur(5px)}.stay-editor-sheet{width:100%;max-height:calc(100dvh - 55px);display:grid;gap:12px;overflow:auto;padding:0 17px calc(22px + env(safe-area-inset-bottom));border-radius:25px 25px 0 0;color:#17365d;background:#fff}.stay-editor-sheet>header{position:sticky;z-index:2;top:0;display:grid;grid-template-columns:40px minmax(0,1fr) auto;gap:9px;align-items:center;margin:0 -17px;padding:13px 17px;border-bottom:1px solid #e8eef3;background:rgba(255,255,255,.96);backdrop-filter:blur(12px)}.stay-editor-sheet>header button:first-child{width:38px;height:38px;border:0;border-radius:50%;color:#5e7389;background:#eff3f7;font-size:21px}.stay-editor-sheet>header button[type=submit]{min-height:39px;padding:0 13px;border:0;border-radius:12px;color:#fff;background:#0873e6;font-size:10px;font-weight:900}.stay-editor-sheet>header small,.stay-editor-sheet>header h2{display:block;margin:0}.stay-editor-sheet>header small{color:#0a75d9;font-size:7px;font-weight:900;letter-spacing:.12em}.stay-editor-sheet>header h2{margin-top:2px;font-size:18px}.stay-editor-sheet>label,.stay-form-dates>label,.stay-visibility label{display:grid;gap:5px;color:#294766;font-size:9px;font-weight:850}.stay-editor-sheet input,.stay-editor-sheet select{width:100%;min-height:45px;padding:9px 11px;border:1px solid #cfdeea;border-radius:13px;color:#17365d;background:#fff;font-size:12px}.stay-form-dates{display:grid;grid-template-columns:1fr 1fr;gap:9px}.stay-visibility{display:grid;gap:10px;padding:12px;border:1px solid #d6e6f1;border-radius:16px;background:linear-gradient(145deg,#eff9ff,#fffaf0)}.stay-visibility>div{display:flex;gap:9px}.stay-visibility>div>span{font-size:22px}.stay-visibility p{margin:0}.stay-visibility strong,.stay-visibility small{display:block}.stay-visibility strong{font-size:11px}.stay-visibility small{margin-top:2px;color:#70859a;font-size:8px;line-height:1.4}.stay-editor-note{margin:0;color:#7b8da0;font-size:8px;line-height:1.4;text-align:center}
.countdown-screen{display:grid;gap:11px}.countdown-top{display:grid;grid-template-columns:38px minmax(0,1fr) 38px;gap:9px;align-items:center}.countdown-top span{color:#0874d8;font-size:7px;font-weight:900;letter-spacing:.13em}.countdown-top h1{margin:2px 0;font-size:21px}.countdown-edit{width:38px;height:38px;border:1px solid #d5e4ef;border-radius:13px;color:#176cb7;background:#fff}.countdown-select{display:grid;gap:4px;padding:10px 12px;border:1px solid #d6e4ef;border-radius:15px;background:#fff;color:#60768e;font-size:8px;font-weight:850}.countdown-select select{height:39px;border:0;color:#17365d;background:transparent;font-size:11px;font-weight:800}.countdown-card{position:relative;min-height:490px;display:flex;flex-direction:column;align-items:center;justify-content:center;overflow:hidden;padding:28px 18px;border:1px solid rgba(255,255,255,.7);border-radius:27px;color:#fff;background:linear-gradient(180deg,#0778df 0%,#24b7e7 52%,#9be6ee 72%,#ffe6a5 100%);box-shadow:0 18px 38px rgba(17,73,127,.2);text-align:center}.countdown-card:after{content:'';position:absolute;inset:auto -20% -7% -20%;height:28%;border-radius:50% 50% 0 0;background:rgba(255,255,255,.88)}.countdown-sun{position:absolute;right:9%;top:8%;width:65px;height:65px;border-radius:50%;background:#ffe16d;box-shadow:0 0 0 17px rgba(255,226,109,.14)}.countdown-palm{position:absolute;left:5%;bottom:11%;font-size:100px;filter:drop-shadow(0 8px 8px rgba(0,60,75,.18));transform:rotate(-8deg)}.countdown-wave{position:absolute;right:6%;bottom:16%;font-size:32px;opacity:.62}.countdown-brand,.countdown-copy,.countdown-numbers,.countdown-onsite,.countdown-card>p{position:relative;z-index:1}.countdown-brand{display:flex;align-items:center;gap:8px;margin-bottom:30px}.countdown-brand>span{width:47px;height:47px;display:grid;place-items:center;border-radius:16px;background:rgba(255,255,255,.92);font-size:25px}.countdown-brand small,.countdown-brand strong{display:block;text-align:left}.countdown-brand small{font-size:7px;letter-spacing:.12em}.countdown-brand strong{margin-top:2px;font-size:12px}.countdown-copy small{font-size:10px}.countdown-copy h2{margin:7px 0 18px;font-size:28px;text-shadow:0 3px 10px rgba(0,50,100,.2)}.countdown-numbers{display:grid;grid-template-columns:repeat(4,1fr);gap:7px;width:100%;max-width:420px}.countdown-numbers>span{display:grid;place-items:center;padding:11px 4px;border:1px solid rgba(255,255,255,.55);border-radius:16px;background:rgba(255,255,255,.2);backdrop-filter:blur(9px)}.countdown-numbers b{font-size:26px}.countdown-numbers small{font-size:7px;font-weight:800}.countdown-onsite{padding:17px 23px;border:1px solid rgba(255,255,255,.55);border-radius:18px;background:rgba(255,255,255,.22);font-size:18px;font-weight:900}.countdown-card>p{margin:24px 0 0;font-size:10px;font-weight:750}.countdown-actions{display:grid;grid-template-columns:1fr 1fr;gap:9px}.countdown-actions button{min-height:75px;display:grid;grid-template-columns:40px minmax(0,1fr);grid-template-rows:auto auto;column-gap:8px;align-items:center;padding:11px;border:1px solid #d2e2ed;border-radius:17px;color:#17365d;background:#fff;text-align:left}.countdown-actions button>span{grid-row:1/3;width:38px;height:38px;display:grid;place-items:center;border-radius:13px;color:#0873e5;background:#eaf5ff;font-size:20px}.countdown-actions strong{align-self:end;font-size:11px}.countdown-actions small{align-self:start;color:#75899c;font-size:8px}.countdown-note{margin:0 10px;color:#74889b;font-size:8px;line-height:1.4;text-align:center}.countdown-empty{max-width:520px;margin:30px auto;padding:28px 20px;text-align:center}.countdown-empty>span{font-size:55px}.countdown-empty h1{margin:10px 0 6px}.countdown-empty p{color:#6e8399}
.profile-friends-card{padding-bottom:13px}.profile-friend-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:7px;padding:0 12px}.profile-friend-grid>button{min-width:0;display:flex;flex-direction:column;align-items:center;padding:9px 5px;border:1px solid #e0e9f0;border-radius:15px;color:#17365d;background:linear-gradient(145deg,#fff,#f5faff)}.profile-friend-grid .avatar{box-shadow:0 5px 12px rgba(24,72,115,.14)}.profile-friend-grid strong,.profile-friend-grid small{width:100%;overflow:hidden;text-align:center;text-overflow:ellipsis;white-space:nowrap}.profile-friend-grid strong{margin-top:6px;font-size:9px}.profile-friend-grid small{margin-top:2px;color:#788a9d;font-size:7px}.profile-friends-empty{display:grid;place-items:center;gap:5px;padding:20px;text-align:center}.profile-friends-empty>span{font-size:34px}.profile-friends-empty strong{font-size:12px}.profile-friends-empty button{min-height:38px;padding:0 13px;border:0;border-radius:12px;color:#fff;background:#0874e8;font-size:9px;font-weight:850}
@media(max-width:360px){.travel-hero{grid-template-columns:36px minmax(0,1fr) 44px;padding:14px}.travel-hero h1{font-size:22px}.travel-tabs button{font-size:9px}.travel-card{grid-template-columns:43px minmax(0,1fr) auto;padding:11px}.travel-card-icon{width:42px;height:42px}.countdown-card{min-height:445px}.countdown-copy h2{font-size:24px}.countdown-numbers b{font-size:22px}.profile-friend-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}


/* 1.5.1 – kompakter Chat, korrekt ausgerichtete Profilbilder und Teilen-Auswahl */
.messages-screen {
  min-height: 0 !important;
  align-content: start !important;
  grid-auto-rows: max-content !important;
}
.messages-screen #message-content {
  min-height: 0 !important;
  height: auto !important;
  align-self: start !important;
}
.messages-screen #message-content .empty {
  min-height: 0 !important;
  padding: 22px 14px !important;
}
.nav-item[data-route="messages"] > .icon {
  width: 21px !important;
  height: 21px !important;
}
.avatar img,
.profile-main .avatar img,
.community-profile-identity .avatar img {
  image-orientation: from-image;
  transform: none !important;
  rotate: none !important;
  object-position: center center !important;
}
.brand-logo {
  overflow: hidden !important;
  background: #fff !important;
}
.brand-logo img {
  width: 100% !important;
  height: 100% !important;
  object-fit: contain !important;
  padding: 3px;
}
.share-choice-sheet {
  max-height: min(430px, calc(100dvh - 24px)) !important;
}
.share-choice-intro {
  margin: -4px 7px 10px;
  color: #71849a;
  font-size: 10px;
  line-height: 1.4;
}
.share-choice-sheet > button:not(.cancel-action) {
  min-height: 72px !important;
}
.share-choice-sheet .action-icon {
  font-size: 22px;
}


/* 1.5.2 – Profil im Header, Freunde-Navigation und Blog-Platzhalter */
.header-actions {
  align-items: center !important;
  gap: 6px !important;
}
.header-profile-button {
  position: relative;
  width: 42px;
  height: 42px;
  flex: 0 0 42px;
  padding: 0;
  overflow: hidden;
  border: 2px solid rgba(255,255,255,.88);
  border-radius: 50%;
  background: linear-gradient(145deg,#0f3265,#164d91);
  color: #fff;
  box-shadow: 0 5px 14px rgba(0,28,70,.25);
}
.header-profile-button .avatar {
  --avatar: 38px !important;
  width: 38px !important;
  height: 38px !important;
  min-width: 38px !important;
  border: 0 !important;
  box-shadow: none !important;
}
.header-profile-button .avatar img {
  image-orientation: from-image !important;
  transform: none !important;
  rotate: none !important;
  object-position: center center !important;
}
.header-profile-placeholder {
  display: grid;
  width: 100%;
  height: 100%;
  place-items: center;
  font-size: 11px;
  font-weight: 900;
}
.blog-nav[disabled] {
  opacity: .5;
  cursor: default;
  filter: grayscale(.35);
}
.blog-nav-icon {
  display: grid;
  width: 23px;
  height: 23px;
  place-items: center;
  font-size: 19px;
}

/* 1.5.6 – alle Beschriftungen der unteren Navigation exakt gleich groß */
.app-nav .nav-item > span:last-of-type,
.app-nav .nav-item.active > span:last-of-type,
.app-nav .nav-item[data-route="messages"] > span:last-of-type {
  font-size: 9px !important;
  font-weight: 800 !important;
  line-height: 1.05 !important;
  letter-spacing: 0 !important;
  transform: none !important;
}
@media (max-width: 390px) {
  .header-profile-button { width: 38px; height: 38px; flex-basis: 38px; }
  .header-profile-button .avatar { --avatar: 34px !important; width:34px!important; height:34px!important; min-width:34px!important; }
}

/* 1.5.6 – verbindlicher Sonnenschirm-/Wellen-Header und feste Navigationsschrift */
.app-header {
  min-height: 68px !important;
  height: 68px !important;
  padding: 7px 10px !important;
  gap: 7px !important;
}
.app-header .brand {
  min-width: 0 !important;
  flex: 1 1 auto !important;
  height: 50px !important;
  display: flex !important;
  align-items: center !important;
  gap: 7px !important;
  overflow: visible !important;
  text-align: left !important;
}
.header-brand-logo {
  width: 44px;
  height: 44px;
  flex: 0 0 44px;
  display: grid;
  place-items: center;
  overflow: hidden;
  border: 1px solid rgba(255,255,255,.66);
  border-radius: 13px;
  background: #ead7b4;
  box-shadow: 0 5px 14px rgba(0,30,70,.2);
}
.header-brand-logo img {
  width: 100%;
  height: 100%;
  display: block;
  object-fit: cover;
}
.header-brand-copy {
  min-width: 0;
  display: grid;
  gap: 3px;
  color: #fff;
  line-height: 1;
}
.header-brand-copy strong {
  overflow: hidden;
  font-size: 14px;
  font-weight: 900;
  letter-spacing: -.025em;
  text-overflow: ellipsis;
  white-space: nowrap;
}
.header-brand-copy small {
  overflow: hidden;
  color: rgba(255,255,255,.88);
  font-size: 5.8px;
  font-weight: 900;
  letter-spacing: .105em;
  text-overflow: ellipsis;
  white-space: nowrap;
}
.app-header .header-actions {
  flex: 0 0 auto !important;
  gap: 4px !important;
}
.app-header .round-button,
.app-header .header-profile-button {
  width: 38px !important;
  height: 38px !important;
  flex: 0 0 38px !important;
}
.app-header .round-button {
  padding: 9px !important;
}
.app-header .header-profile-button .avatar {
  --avatar: 34px !important;
  width: 34px !important;
  height: 34px !important;
  min-width: 34px !important;
}
.header-points-button {
  min-width: 44px;
  height: 38px;
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 3px;
  padding: 0 7px;
  border: 1px solid rgba(255,255,255,.3);
  border-radius: 999px;
  color: #fff;
  background: rgba(255,255,255,.13);
  box-shadow: inset 0 1px rgba(255,255,255,.13);
}
.header-points-button > span {
  color: #ffe16a;
  font-size: 12px;
}
.header-points-button > strong {
  max-width: 28px;
  overflow: hidden;
  font-size: 9px;
  line-height: 1;
  text-overflow: ellipsis;
}
.app-nav > .nav-item > span:nth-child(2),
.app-nav > .nav-item.active > span:nth-child(2),
.app-nav > .nav-item[data-route="messages"] > span:nth-child(2) {
  font-size: 9px !important;
  font-weight: 800 !important;
  line-height: 1.05 !important;
  letter-spacing: 0 !important;
  transform: none !important;
}
.chat-screen {
  top: 68px !important;
  height: calc(100% - 68px) !important;
}
@media (max-width: 370px) {
  .app-header { padding-inline: 7px !important; gap: 4px !important; }
  .app-header .brand { gap: 5px !important; }
  .header-brand-logo { width: 38px; height: 38px; flex-basis: 38px; border-radius: 11px; }
  .header-brand-copy strong { font-size: 12px; }
  .header-brand-copy small { font-size: 5px; letter-spacing: .07em; }
  .app-header .header-actions { gap: 3px !important; }
  .app-header .round-button,
  .app-header .header-profile-button {
    width: 35px !important;
    height: 35px !important;
    flex-basis: 35px !important;
  }
  .app-header .header-profile-button .avatar {
    --avatar: 31px !important;
    width: 31px !important;
    height: 31px !important;
    min-width: 31px !important;
  }
  .header-points-button { min-width: 39px; height: 35px; padding-inline: 5px; }
  .app-nav > .nav-item > span:nth-child(2) { font-size: 8px !important; }
}
.profile-avatar-tools {
  display: flex;
  flex-wrap: wrap;
  gap: 7px;
  margin-top: 7px;
}
.profile-avatar-tools .secondary-button {
  min-height: 38px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  margin: 0;
  padding: 0 11px;
  border: 1px solid #cfdeea;
  border-radius: 12px;
  color: #176bc0;
  background: #f4f9fd;
  font-size: 9px;
  font-weight: 850;
}

/* 1.6.0 – kompakte Startbereiche, Eventkalender und Community-Verzeichnis */
.home-account-shortcuts{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.home-account-shortcuts>button{min-width:0;min-height:58px;display:grid;grid-template-columns:38px minmax(0,1fr) 12px;gap:7px;align-items:center;padding:8px 9px;border:1px solid #cfe1ed;border-radius:17px;color:#17365d;background:linear-gradient(145deg,#fff,#f0f9ff);box-shadow:0 7px 17px rgba(20,68,111,.07);text-align:left}.home-account-shortcuts>button:nth-child(2){background:linear-gradient(145deg,#fff,#fff8e5)}.home-shortcut-icon{width:37px;height:37px;display:grid;place-items:center;border-radius:13px;font-size:19px}.home-shortcut-icon.points{color:#8d6900;background:#fff1b9}.home-shortcut-icon.holiday{background:#e5f5ff}.home-account-shortcuts strong,.home-account-shortcuts small{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.home-account-shortcuts strong{font-size:10px}.home-account-shortcuts small{margin-top:3px;color:#71859a;font-size:8px}.home-account-shortcuts b{color:#0b73d5;font-size:18px}
.home-account-shortcuts.is-single{grid-template-columns:minmax(0,1fr)}
.home-vacation-card{position:relative;isolation:isolate;overflow:hidden;padding:20px;border:1px solid rgba(38,139,174,.48);border-radius:24px;color:#fff;background:linear-gradient(120deg,#092f59 0%,#075e7e 54%,#12939d 100%);box-shadow:0 14px 30px rgba(7,67,103,.2)}
.home-vacation-card:before{content:'';position:absolute;z-index:-1;right:-70px;bottom:-78px;width:260px;height:155px;border-radius:50%;background:rgba(255,214,90,.18);transform:rotate(-8deg)}
.home-vacation-card:after{content:'';position:absolute;z-index:-1;inset:auto 0 0;height:7px;background:linear-gradient(90deg,#ff806c,#ffd65a 52%,#65d7d7)}
.home-vacation-copy{position:relative;z-index:1;max-width:76%;padding-right:12px}.home-vacation-eyebrow{display:block;color:#ffe16a;font-size:10px;font-weight:950;letter-spacing:.14em}.home-vacation-copy h2{margin:5px 0 0;color:#fff;font-size:24px;line-height:1.1;letter-spacing:-.02em}.home-vacation-copy p{max-width:480px;margin:8px 0 0;color:rgba(255,255,255,.94);font-size:12px;font-weight:720;line-height:1.45}.home-vacation-meta{display:inline-flex;margin-top:9px;padding:6px 9px;border:1px solid rgba(255,255,255,.28);border-radius:999px;color:#fff;background:rgba(5,43,72,.28);font-size:10px;font-weight:850}
.home-vacation-decoration{position:absolute;z-index:0;inset:0;pointer-events:none}.home-vacation-decoration>span{position:absolute;right:55px;top:11px;color:#ffe35f;font-size:34px;filter:drop-shadow(0 0 12px rgba(255,226,80,.32))}.home-vacation-decoration>i{position:absolute;right:15px;top:48px;color:rgba(188,241,239,.34);font-size:17px;font-style:normal;font-weight:900;letter-spacing:2px}.home-vacation-decoration>b{position:absolute;right:17px;bottom:5px;font-size:33px;transform:rotate(-9deg)}
.home-vacation-actions{position:relative;z-index:1;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin-top:17px}.home-vacation-actions button{min-width:0;min-height:64px;display:flex;flex-direction:column;justify-content:center;padding:10px 15px;border-radius:17px;text-align:left}.home-vacation-actions button.primary{border:1px solid #ffe486;color:#173858;background:linear-gradient(135deg,#ffe16a,#ffc94e);box-shadow:0 8px 18px rgba(255,193,55,.22)}.home-vacation-actions button.secondary{border:1px solid rgba(255,255,255,.72);color:#fff;background:rgba(4,42,69,.36);backdrop-filter:blur(8px)}.home-vacation-actions strong,.home-vacation-actions small{display:block}.home-vacation-actions strong{font-size:12px;line-height:1.25}.home-vacation-actions small{margin-top:4px;font-size:9.5px;line-height:1.35}.home-vacation-actions button.primary small{color:#65501a}.home-vacation-actions button.secondary small{color:rgba(255,255,255,.86)}
@media(max-width:420px){.home-vacation-card{padding:17px}.home-vacation-copy{max-width:88%}.home-vacation-copy h2{font-size:22px}.home-vacation-decoration>span{right:15px;top:8px;font-size:27px}.home-vacation-decoration>i{display:none}.home-vacation-decoration>b{right:9px;font-size:27px}.home-vacation-actions{gap:8px}.home-vacation-actions button{min-height:66px;padding:9px 11px}.home-vacation-actions strong{font-size:11px}.home-vacation-actions small{font-size:9px}}

/* 1.8.0j – einheitliches Profil- und Bereichsmenü statt alter Kachelkarte */
.app-menu-sheet{width:min(540px,calc(100% - 12px))!important;max-height:94dvh!important;padding:6px 10px max(10px,env(safe-area-inset-bottom,0px))!important;border-radius:24px 24px 0 0!important;background:linear-gradient(180deg,#fbfdff,#f3f7fb)!important}
.app-menu-head{min-height:49px!important;padding:2px 2px 8px!important}.app-menu-head strong{font-size:16px!important}.app-menu-head small{font-size:8px!important}.app-menu-scroll.app-menu-accordion{display:block!important;padding:8px 1px 4px!important;overflow-y:auto!important;scrollbar-width:thin}
.app-menu-accordion details{margin:0 0 7px;border:1px solid #d8e2eb;border-radius:16px;background:#fff;box-shadow:0 5px 14px rgba(21,57,94,.05)}
.app-menu-accordion summary{list-style:none;min-height:56px;display:grid;grid-template-columns:40px minmax(0,1fr) 22px;gap:10px;align-items:center;padding:8px 11px;color:#26364e;cursor:pointer}.app-menu-accordion summary::-webkit-details-marker{display:none}.app-menu-accordion summary>span:nth-child(2){min-width:0}.app-menu-accordion summary strong,.app-menu-accordion summary small{display:block;text-align:left}.app-menu-accordion summary strong{color:#17345d;font-size:11px;line-height:1.2}.app-menu-accordion summary small{margin-top:3px;color:#7b899a;font-size:8px;line-height:1.3}.app-menu-accordion summary>b{color:#6b7d91;font-size:15px;transition:transform .18s ease}.app-menu-accordion details[open]>summary>b{transform:rotate(180deg)}
.app-menu-group-icon,.app-menu-profile-avatar{width:39px;height:39px;display:grid;place-items:center;border-radius:12px;background:#edf4fa;font-size:18px}.app-menu-group-icon.holiday{background:#fff3d5}.app-menu-group-icon.community{background:#e8f7f0}.app-menu-group-icon.booking{background:#eaf5ff}.app-menu-group-icon.blog{background:#f1edff}.app-menu-group-icon.weather{background:#fff4ce}.app-menu-group-icon.swap{background:#e9f8ef}.app-menu-group-icon.help{background:#fff0e8}.app-menu-group-icon.admin{background:#ffe9eb}
.app-menu-profile{border-color:#cddce8!important;background:linear-gradient(135deg,#fff,#f4f9fc)!important}.app-menu-profile summary{min-height:64px}.app-menu-profile-avatar{overflow:hidden;color:#fff;background:linear-gradient(145deg,#173f91,#31a7d9);font-size:12px;font-weight:950}.app-menu-profile-avatar .avatar,.app-menu-profile-avatar img{width:100%!important;height:100%!important;border:0!important;border-radius:inherit!important;object-fit:cover}
.app-menu-accordion nav{display:grid;padding:0 9px 9px}.app-menu-accordion nav button{width:100%;min-height:42px;display:grid;grid-template-columns:28px minmax(0,1fr) auto auto;gap:8px;align-items:center;padding:6px 8px;border:0;border-top:1px solid #edf1f5;color:#34445d;background:transparent;text-align:left}.app-menu-accordion nav button:first-child{border-top:0}.app-menu-accordion nav button:hover,.app-menu-accordion nav button:focus-visible{border-radius:10px;background:#edf6ff;outline:0}.app-menu-accordion nav button>span{width:27px;height:27px;display:grid;place-items:center;border-radius:9px;background:#eff4f8;font-size:13px}.app-menu-accordion nav button>strong{overflow:hidden;color:#34445d;font-size:10px!important;line-height:1.25;text-align:left!important;text-overflow:ellipsis;white-space:nowrap}.app-menu-accordion nav button>b{color:#91a0b1;font-size:16px}.app-menu-accordion nav button.is-logout strong{color:#b12b3a}.app-menu-accordion nav button.is-logout>span{color:#b12b3a;background:#ffeaed}
.app-menu-points{width:100%!important;min-height:62px!important;display:grid!important;grid-template-columns:40px minmax(0,1fr) 18px!important;gap:10px!important;align-items:center!important;margin:0 0 10px!important;padding:8px 11px!important;border:1px solid #e5d891!important;border-radius:16px!important;color:#26364e!important;background:linear-gradient(135deg,#fffef6,#fff8d7)!important;box-shadow:0 5px 14px rgba(91,72,17,.06)!important;text-align:left!important}.app-menu-points-icon{width:39px!important;height:39px!important;display:grid!important;place-items:center!important;border-radius:12px!important;background:#fff0a8!important;font-size:19px!important}.app-menu-points>span:nth-child(2){min-width:0}.app-menu-points strong,.app-menu-points small{display:block!important;text-align:left!important}.app-menu-points strong{color:#273750!important;font-size:10px!important}.app-menu-points strong em{font-style:normal;font-size:13px}.app-menu-points small{margin-top:2px;color:#776a3a!important;font-size:7.5px!important}.app-menu-points i{height:3px;display:block;margin-top:5px;overflow:hidden;border-radius:999px;background:#e7dfbd}.app-menu-points i u{width:0;height:100%;display:block;border-radius:inherit;background:linear-gradient(90deg,#e1b900,#9cc600);text-decoration:none}.app-menu-points>b{color:#a68a20;font-size:17px}
.app-menu-label{margin:2px 3px 7px;color:#68798d;font-size:8px;font-weight:950;letter-spacing:.14em}.app-menu-admin{border-color:#efc7cc!important}.app-menu-admin nav button>span{background:#fff0f1}.app-menu-footer-actions{display:none!important}
@media(max-width:370px){.app-menu-sheet{width:calc(100% - 8px)!important;padding-inline:7px!important}.app-menu-accordion summary{grid-template-columns:36px minmax(0,1fr) 18px;gap:8px;padding-inline:9px}.app-menu-group-icon,.app-menu-profile-avatar,.app-menu-points-icon{width:35px!important;height:35px!important}.app-menu-accordion nav{padding-inline:7px}.app-menu-accordion nav button{min-height:40px;padding-inline:6px}.app-menu-accordion nav button>strong{font-size:9.5px!important}}
.home-discovery-shortcuts{display:grid;gap:6px}.home-discovery-heading{margin:1px 8px -1px;color:#21567f;font-size:7px;font-weight:900;letter-spacing:.18em;line-height:1.2}.home-discovery-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.home-discovery-card{--home-discovery-image:none;position:relative;isolation:isolate;min-width:0;min-height:104px;display:flex;align-items:flex-end;overflow:hidden;padding:10px;border:1px solid rgba(255,255,255,.62);border-radius:17px;color:#fff;background:#1d5777;box-shadow:0 8px 19px rgba(17,57,91,.17);text-align:left}.home-discovery-card.wide{grid-column:1/-1;min-height:96px}.home-discovery-card::before{content:"";position:absolute;z-index:-2;inset:-6px;background-image:var(--home-discovery-image);background-position:center;background-size:cover;transform:scale(1.045);animation:home-discovery-pan 14s ease-in-out infinite alternate;will-change:transform}.home-discovery-card::after{content:"";position:absolute;z-index:-1;inset:0;background:linear-gradient(180deg,rgba(4,25,47,.02) 24%,rgba(4,25,47,.32) 56%,rgba(4,22,43,.88) 100%)}.home-discovery-card.food{--home-discovery-image:url('/app-native/home-discovery-restaurants.png?v=170')}.home-discovery-card.food::before{background-position:center 56%}.home-discovery-card.fun{--home-discovery-image:url('/app-native/home-discovery-animation.png?v=170')}.home-discovery-card.fun::before{animation-duration:16s}.home-discovery-card.town{--home-discovery-image:url('/app-native/home-discovery-rosolina.png?v=170')}.home-discovery-card.town::before{background-position:center 53%;animation-duration:18s}.home-discovery-icon{position:absolute;z-index:2;left:9px;top:9px;width:35px;height:35px;display:grid;place-items:center;border:1px solid rgba(255,255,255,.72);border-radius:50%;color:#17365d;background:rgba(255,255,255,.92);box-shadow:0 5px 13px rgba(2,24,47,.19);font-size:18px}.home-discovery-copy{position:relative;z-index:2;min-width:0;display:block;width:100%;text-shadow:0 1px 5px rgba(2,16,31,.78)}.home-discovery-copy strong,.home-discovery-copy small{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.home-discovery-copy strong{font-size:10.5px;line-height:1.15}.home-discovery-copy small{margin-top:3px;color:rgba(255,255,255,.94);font-size:7.3px;line-height:1.2}.home-discovery-card:active{transform:scale(.985)}@keyframes home-discovery-pan{from{transform:scale(1.045) translate3d(-.6%,0,0)}to{transform:scale(1.09) translate3d(1.4%,-.7%,0)}}@media(prefers-reduced-motion:reduce){.home-discovery-card::before{animation:none}}
.travel-quick-settings{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:7px}.travel-quick-settings>button{min-width:0;min-height:60px;display:grid;grid-template-columns:34px minmax(0,1fr) 10px;gap:7px;align-items:center;padding:8px;border:1px solid #d4e3ee;border-radius:16px;color:#17365d;background:#fff;text-align:left}.travel-quick-settings>button>span{width:33px;height:33px;display:grid;place-items:center;border-radius:11px;background:#eaf5ff;font-size:17px}.travel-quick-settings strong,.travel-quick-settings small{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.travel-quick-settings strong{font-size:9px}.travel-quick-settings small{margin-top:3px;color:#74889d;font-size:7px}.travel-quick-settings b{color:#0a73da}

.events-screen{display:grid;gap:9px}.event-top-tabs{display:grid;grid-template-columns:repeat(2,1fr);gap:5px;padding:5px;border:1px solid #d6e3ed;border-radius:17px;background:#fff;box-shadow:0 7px 18px rgba(20,68,111,.06)}.event-top-tabs button{min-height:42px;display:flex;align-items:center;justify-content:center;gap:6px;border:0;border-radius:13px;color:#486883;background:transparent;font-size:10px;font-weight:900}.event-top-tabs button:first-child{color:#fff;background:linear-gradient(135deg,#0874e8,#16afe2)}.event-top-tabs button.active{color:#0870d5;background:#eaf5ff}.event-top-tabs .icon{width:17px;height:17px}.event-search-panel{display:grid;gap:6px;padding:9px;border:1px solid #d6e4ef;border-radius:16px;background:#fff}.event-search-panel[hidden]{display:none}.event-search-panel label{display:grid;grid-template-columns:20px minmax(0,1fr) auto;gap:6px;align-items:center}.event-search-panel .icon{width:18px;height:18px;color:#3175b5}.event-search-panel input{min-width:0;height:40px;border:0;outline:0;color:#17365d;background:transparent;font-size:10px}.event-search-panel button{min-height:36px;padding:0 11px;border:0;border-radius:11px;color:#fff;background:#0874e8;font-size:9px;font-weight:900}.event-search-panel>button{justify-self:start;color:#9c3140;background:#fff0f2}.event-period-head{min-height:92px;display:flex;align-items:center;justify-content:space-between;gap:10px;padding:14px 15px;border:1px solid #cfe1ef;border-radius:20px;background:radial-gradient(circle at 84% 10%,rgba(255,220,91,.28),transparent 30%),linear-gradient(145deg,#fff,#edf9ff);box-shadow:0 9px 22px rgba(20,68,111,.07)}.event-period-head span{color:#0874d5;font-size:7px;font-weight:900;letter-spacing:.13em}.event-period-head h1{margin:3px 0;font-size:22px}.event-period-head p{margin:0;color:#72869a;font-size:8px}.event-period-head label{display:grid;gap:3px;color:#6a8197;font-size:7px;font-weight:850}.event-period-head select{height:39px;padding:0 10px;border:1px solid #cfe0ec;border-radius:12px;color:#17365d;background:#fff;font-size:10px;font-weight:850}.event-month-strip{display:grid;grid-auto-flow:column;grid-auto-columns:minmax(49px,1fr);gap:5px;overflow-x:auto;padding:5px;border:1px solid #d8e5ee;border-radius:16px;background:#fff;scrollbar-width:none}.event-month-strip::-webkit-scrollbar{display:none}.event-month-strip button{min-height:48px;display:grid;place-items:center;align-content:center;gap:2px;border:0;border-radius:12px;color:#60778e;background:#f5f9fc}.event-month-strip button.active{color:#fff;background:linear-gradient(145deg,#0874e8,#18afd9);box-shadow:0 5px 12px rgba(8,105,205,.2)}.event-month-strip strong{font-size:9px}.event-month-strip small{font-size:7px}.event-page-list{display:grid;gap:7px}.event-page-card{display:grid;grid-template-columns:53px minmax(0,1fr);gap:10px;padding:12px;border:1px solid #d7e4ed;border-radius:18px;background:#fff;box-shadow:0 7px 18px rgba(20,68,111,.06)}.event-page-date{width:52px;height:56px;display:grid;place-items:center;align-content:center;border:1px solid #d5e5f0;border-radius:15px;color:#0872d5;background:#eef7ff}.event-page-date strong{font-size:18px}.event-page-date small{margin-top:3px;font-size:7px}.event-page-category{color:#0873d5;font-size:7px;font-weight:900;text-transform:uppercase}.event-page-card h2{margin:3px 0;font-size:13px}.event-page-meta{margin:0;color:#6e8399;font-size:8px}.event-page-description{display:-webkit-box;margin:7px 0 0;overflow:hidden;color:#425d75;font-size:9px;line-height:1.4;-webkit-box-orient:vertical;-webkit-line-clamp:3}.event-page-empty,.discovery-empty{min-height:210px;display:grid;place-items:center;align-content:center;gap:6px;padding:23px;border:1px dashed #bfd5e5;border-radius:19px;background:#f8fcff;text-align:center}.event-page-empty>span,.discovery-empty>span{font-size:38px}.event-page-empty h2,.discovery-empty h2{margin:0;font-size:15px}.event-page-empty p,.discovery-empty p{max-width:300px;margin:0;color:#71869a;font-size:9px;line-height:1.4}.event-page-empty button{min-height:39px;margin-top:4px;padding:0 13px;border:0;border-radius:12px;color:#fff;background:#0874e8;font-size:9px;font-weight:900}
.event-editor{position:fixed;z-index:230;inset:0;display:flex;align-items:flex-end;padding-top:48px;background:rgba(9,29,55,.52);backdrop-filter:blur(5px)}.event-editor-sheet{width:100%;max-height:calc(100dvh - 48px);display:grid;gap:11px;overflow:auto;padding:0 16px calc(22px + env(safe-area-inset-bottom));border-radius:25px 25px 0 0;color:#17365d;background:#fff}.event-editor-sheet>header{position:sticky;z-index:2;top:0;display:grid;grid-template-columns:39px minmax(0,1fr) auto;gap:8px;align-items:center;margin:0 -16px;padding:12px 16px;border-bottom:1px solid #e7eef4;background:rgba(255,255,255,.97)}.event-editor-sheet>header button:first-child{width:38px;height:38px;border:0;border-radius:50%;color:#60758a;background:#eff3f7;font-size:21px}.event-editor-sheet>header button[type=submit]{min-height:39px;padding:0 13px;border:0;border-radius:12px;color:#fff;background:#0874e8;font-size:9px;font-weight:900}.event-editor-sheet header small{color:#0874d5;font-size:7px;font-weight:900;letter-spacing:.12em}.event-editor-sheet header h2{margin:2px 0 0;font-size:18px}.event-editor-info{display:grid;grid-template-columns:35px 1fr;gap:7px;margin:0;padding:10px;border-radius:15px;background:#eef9f4}.event-editor-info>span{grid-row:1/3;width:34px;height:34px;display:grid;place-items:center;border-radius:11px;color:#fff;background:#36a377}.event-editor-info strong,.event-editor-info small{display:block}.event-editor-info strong{font-size:10px}.event-editor-info small{color:#647d72;font-size:8px;line-height:1.35}.event-editor-sheet>label,.event-editor-dates label{display:grid;gap:5px;color:#294867;font-size:9px;font-weight:850}.event-editor-sheet input,.event-editor-sheet select,.event-editor-sheet textarea{width:100%;min-height:44px;padding:9px 11px;border:1px solid #cfdeea;border-radius:13px;color:#17365d;background:#fff;font-size:11px;resize:vertical}.event-editor-dates{display:grid;grid-template-columns:1fr 1fr;gap:8px}.event-editor-note{margin:0;color:#7a8da0;font-size:8px;line-height:1.4;text-align:center}

.discovery-screen{display:grid;gap:9px}.discovery-hero{min-height:132px;display:grid;grid-template-columns:37px minmax(0,1fr) 50px;gap:9px;align-items:start;padding:15px;border:1px solid #cfe2ef;border-radius:22px;background:radial-gradient(circle at 87% 14%,rgba(255,222,96,.32),transparent 30%),linear-gradient(145deg,#fff,#eaf9ff);box-shadow:0 10px 25px rgba(20,68,111,.08)}.discovery-hero>div>span{color:#0874d7;font-size:7px;font-weight:900;letter-spacing:.13em}.discovery-hero h1{margin:4px 0 5px;font-size:23px;line-height:1.05}.discovery-hero p{margin:0;color:#667d93;font-size:9px;line-height:1.4}.discovery-hero>em{width:49px;height:49px;display:grid;place-items:center;border-radius:16px;background:rgba(255,255,255,.82);font-size:25px;font-style:normal;box-shadow:0 7px 16px rgba(22,73,113,.09)}.discovery-tabs{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:5px;padding:5px;border:1px solid #d7e4ed;border-radius:17px;background:#fff}.discovery-tabs button{min-width:0;min-height:52px;display:grid;place-items:center;align-content:center;gap:2px;border:0;border-radius:12px;color:#5f758b;background:transparent;font-size:17px}.discovery-tabs button span{max-width:100%;overflow:hidden;font-size:7px;font-weight:850;text-overflow:ellipsis;white-space:nowrap}.discovery-tabs button.active{color:#0874d8;background:#eaf5ff}.discovery-intro{padding:14px}.discovery-copy p{margin:0 0 9px;color:#405b73;font-size:10px;line-height:1.55}.discovery-copy p:last-child{margin-bottom:0}.discovery-admin-edit{min-height:38px;margin-top:10px;padding:0 11px;border:1px solid #cfe0ec;border-radius:12px;color:#176db8;background:#f4faff;font-size:8px;font-weight:900}.discovery-list-head{display:flex;align-items:center;justify-content:space-between;padding:5px 4px}.discovery-list-head span{color:#0874d5;font-size:7px;font-weight:900;letter-spacing:.12em}.discovery-list-head h2{margin:2px 0 0;font-size:15px}.discovery-list-head button{min-height:35px;padding:0 11px;border:0;border-radius:11px;color:#fff;background:#0874e8;font-size:8px;font-weight:900}.discovery-place-list{display:grid;gap:8px}.discovery-place-card{display:grid;grid-template-columns:90px minmax(0,1fr);min-height:125px;overflow:hidden;border:1px solid #d6e4ee;border-radius:19px;background:#fff;box-shadow:0 8px 20px rgba(20,68,111,.07);cursor:pointer;transition:border-color .18s ease,box-shadow .18s ease,transform .18s ease}.discovery-place-card:hover,.discovery-place-card:focus-visible{border-color:#8ec6eb;box-shadow:0 11px 25px rgba(20,88,150,.14);outline:0;transform:translateY(-1px)}.discovery-place-card:active{transform:scale(.994)}.discovery-place-card>img,.discovery-place-placeholder{width:90px;height:100%;min-height:125px;object-fit:cover}.discovery-place-placeholder{display:grid;place-items:center;background:linear-gradient(145deg,#e7f6ff,#fff5dc);font-size:32px}.discovery-place-body{min-width:0;padding:11px}.discovery-place-title{display:flex;align-items:start;justify-content:space-between;gap:6px}.discovery-place-title span{color:#0874d7;font-size:6px;font-weight:900;text-transform:uppercase}.discovery-place-title h2{margin:2px 0 0;font-size:13px}.discovery-place-title button{width:29px;height:29px;border:0;border-radius:9px;color:#176db9;background:#ecf6ff}.discovery-place-address{margin:4px 0 0;color:#6d8399;font-size:7.5px}.discovery-place-description{display:-webkit-box;margin:6px 0 0;overflow:hidden;color:#425c74;font-size:8px;line-height:1.4;-webkit-box-orient:vertical;-webkit-line-clamp:3}.discovery-place-chips{display:flex;flex-wrap:wrap;gap:4px;margin-top:6px}.discovery-place-chips span{padding:4px 6px;border-radius:8px;color:#397257;background:#edf8f2;font-size:6.5px;font-weight:800}.discovery-place-actions{display:flex;flex-wrap:wrap;gap:5px;margin-top:8px}.discovery-place-actions button{min-height:29px;padding:0 8px;border:1px solid #d0e0eb;border-radius:9px;color:#176db7;background:#f8fbfd;font-size:7px;font-weight:850}.discovery-place-profile-link{display:flex;align-items:center;justify-content:flex-end;gap:5px;margin-top:8px;color:#0872d9;font-size:7.5px;font-weight:900}.discovery-place-profile-link b{font-size:13px;line-height:1}

.points-screen{display:grid;gap:9px}.points-hero{min-height:134px;display:grid;grid-template-columns:37px minmax(0,1fr) 57px;gap:9px;align-items:start;padding:15px;border:1px solid #eadca7;border-radius:22px;background:radial-gradient(circle at 82% 13%,rgba(255,210,55,.45),transparent 29%),linear-gradient(145deg,#fff,#fff7d9);box-shadow:0 10px 25px rgba(92,73,18,.09)}.points-hero>div>span{color:#9a7000;font-size:7px;font-weight:900;letter-spacing:.13em}.points-hero h1{margin:4px 0;font-size:26px}.points-hero p{margin:0;color:#6c6243;font-size:10px;font-weight:800}.points-hero>em{width:56px;height:56px;display:grid;place-items:center;border-radius:18px;color:#8d6500;background:#ffe479;font-size:28px;font-style:normal}.points-progress{padding:13px}.points-progress>div:first-child{display:flex;align-items:center;justify-content:space-between;gap:8px}.points-progress strong{font-size:11px}.points-progress span{color:#74889b;font-size:8px}.points-progress-track{height:9px;margin-top:9px;overflow:hidden;border-radius:99px;background:#e8eef3}.points-progress-track i{display:block;height:100%;border-radius:99px;background:linear-gradient(90deg,#f2bd22,#ffdb58)}.points-progress>small{display:block;margin-top:4px;color:#88711f;font-size:7px;text-align:right}.points-rules>div,.points-history>div{display:grid}.points-rules article{display:grid;grid-template-columns:38px minmax(0,1fr) auto;gap:8px;align-items:center;padding:10px 13px;border-top:1px solid #eaf0f4}.points-rules article>span{width:37px;height:37px;display:grid;place-items:center;border-radius:12px;background:#eef7ff;font-size:18px}.points-rules article strong{font-size:10px}.points-rules article p{margin:2px 0 0;color:#6f8499;font-size:8px;line-height:1.35}.points-rules article small{color:#9a770e;font-size:6.5px}.points-rules article>b{color:#29835f;font-size:12px}.points-history article{display:grid;grid-template-columns:43px minmax(0,1fr);gap:8px;align-items:center;padding:9px 13px;border-top:1px solid #eaf0f4}.points-history article>span{min-width:41px;padding:7px 5px;border-radius:11px;color:#237b59;background:#eaf7f1;font-size:10px;font-weight:900;text-align:center}.points-history article>span.reversed{color:#9b4050;background:#fff0f2}.points-history strong,.points-history small{display:block}.points-history strong{font-size:9px}.points-history small{margin-top:2px;color:#7d8fa2;font-size:7px}

.messages-screen>.tabs{grid-template-columns:repeat(4,minmax(0,1fr))!important;gap:3px!important;padding:5px!important}.messages-screen>.tabs .tab{min-width:0;padding:9px 2px!important;font-size:8px!important;white-space:nowrap}.member-directory-card{overflow:hidden!important}.member-directory-head{padding:15px;background:radial-gradient(circle at 91% 8%,rgba(255,222,102,.23),transparent 28%),linear-gradient(145deg,#fff,#f2faff);border-bottom:1px solid #e4edf4}.member-directory-head>span{color:#0874d7;font-size:7px;font-weight:900;letter-spacing:.13em}.member-directory-head h2{margin:3px 0;font-size:18px}.member-directory-head p{margin:0;color:#71869a;font-size:8px}.member-directory-head form{display:grid;gap:6px;margin-top:11px}.member-directory-head label{display:grid;grid-template-columns:19px minmax(0,1fr) auto;gap:6px;align-items:center;padding:3px 4px 3px 10px;border:1px solid #d0e0eb;border-radius:13px;background:#fff}.member-directory-head label .icon{width:17px;height:17px;color:#3477b6}.member-directory-head input{min-width:0;height:36px;border:0;outline:0;color:#17365d;font-size:9px}.member-directory-head label button{min-height:34px;padding:0 10px;border:0;border-radius:10px;color:#fff;background:#0874e8;font-size:8px;font-weight:900}.member-directory-head form>button{justify-self:start;padding:0;border:0;color:#a13a48;background:transparent;font-size:7px;font-weight:850}.member-directory-list{display:grid}.member-directory-row{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:7px;align-items:center;padding:9px 11px;border-top:1px solid #e9eff4}.member-directory-row:first-child{border-top:0}.member-directory-profile{min-width:0;display:grid;grid-template-columns:46px minmax(0,1fr) 10px;gap:8px;align-items:center;padding:0;border:0;color:#17365d;background:transparent;text-align:left}.member-directory-profile strong,.member-directory-profile small{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.member-directory-profile strong{font-size:10px}.member-directory-profile strong.admin{color:#c52e3b}.member-directory-profile strong em{margin-left:4px;padding:2px 4px;border-radius:99px;color:#fff;background:#d43a46;font-size:5px;font-style:normal}.member-directory-profile small{margin-top:3px;color:#74889c;font-size:7px}.member-directory-profile>b{color:#0874d7}.member-connect{min-height:35px;padding:0 9px;border:0;border-radius:11px;color:#fff;background:#0874e8;font-size:7.5px;font-weight:900;white-space:nowrap}.member-connect.message{display:flex;align-items:center;gap:4px;color:#176db7;background:#eef7ff}.member-connect.message .icon{width:15px;height:15px}.member-connect.accept{background:#2e9c70}.member-status{padding:7px 8px;border-radius:10px;font-size:7px;font-weight:900;white-space:nowrap}.member-status.accepted{color:#247c5b;background:#eaf7f1}.member-status.waiting{color:#87681a;background:#fff5dc}.member-load-more{width:calc(100% - 22px);min-height:41px;margin:10px 11px;border:1px solid #cfe0eb;border-radius:12px;color:#176db8;background:#f7fbfe;font-size:8px;font-weight:900}

@media(max-width:370px){.home-discovery-card{min-height:96px;padding:8px}.home-discovery-card.wide{min-height:88px}.home-discovery-copy strong{font-size:9.5px}.home-discovery-copy small{font-size:6.8px}.home-discovery-icon{left:8px;top:8px;width:32px;height:32px;font-size:16px}.travel-quick-settings{grid-template-columns:1fr}.discovery-place-card{grid-template-columns:76px minmax(0,1fr)}.discovery-place-card>img,.discovery-place-placeholder{width:76px}.messages-screen>.tabs .tab{font-size:7px!important}.member-connect.message{width:36px;padding:0;font-size:0;justify-content:center}.member-directory-row{padding-inline:8px}}

/* 1.6.1 – echte 9:16-Countdown-Bilder mit wählbaren Fotohintergründen */
.countdown-background-picker{
  display:grid;
  gap:10px;
  padding:13px;
  border:1px solid #d4e3ee;
  border-radius:19px;
  background:rgba(255,255,255,.96);
  box-shadow:0 9px 22px rgba(20,68,111,.07)
}
.countdown-background-picker>header{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:12px
}
.countdown-background-picker>header strong,
.countdown-background-picker>header small{display:block}
.countdown-background-picker>header strong{color:#17365d;font-size:12px}
.countdown-background-picker>header small{margin-top:3px;color:#72869a;font-size:8px;line-height:1.35}
.countdown-background-picker>header>span{
  flex:none;
  padding:5px 8px;
  border-radius:99px;
  color:#0873d8;
  background:#e9f5ff;
  font-size:8px;
  font-weight:900
}
.countdown-background-options{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:9px
}
.countdown-background-options button{
  position:relative;
  min-width:0;
  min-height:105px;
  display:flex;
  align-items:flex-end;
  overflow:hidden;
  padding:10px;
  border:2px solid transparent;
  border-radius:15px;
  color:#fff;
  background-image:linear-gradient(180deg,rgba(5,31,64,.04) 25%,rgba(5,31,64,.8) 100%),var(--countdown-thumb);
  background-position:center;
  background-size:cover;
  box-shadow:inset 0 0 0 1px rgba(255,255,255,.2);
  text-align:left
}
.countdown-background-options button.active{
  border-color:#fff;
  outline:3px solid #0878df;
  outline-offset:-2px;
  box-shadow:0 7px 17px rgba(8,117,223,.22)
}
.countdown-background-options button span{min-width:0;position:relative;z-index:1}
.countdown-background-options button strong,
.countdown-background-options button small{
  display:block;
  overflow:hidden;
  text-overflow:ellipsis;
  white-space:nowrap
}
.countdown-background-options button strong{font-size:10px;text-shadow:0 2px 7px rgba(0,0,0,.48)}
.countdown-background-options button small{margin-top:2px;color:rgba(255,255,255,.88);font-size:7px}
.countdown-background-options button>b{
  position:absolute;
  z-index:2;
  top:8px;
  right:8px;
  width:24px;
  height:24px;
  display:none;
  place-items:center;
  border-radius:50%;
  color:#0873d8;
  background:#fff;
  box-shadow:0 4px 10px rgba(0,37,75,.25);
  font-size:13px
}
.countdown-background-options button.active>b{display:grid}
.countdown-card.countdown-photo-card{
  --countdown-position:center center;
  width:min(100%,430px);
  min-height:0;
  aspect-ratio:9/16;
  align-items:stretch;
  justify-content:flex-start;
  margin-inline:auto;
  padding:17px;
  border:1px solid rgba(255,255,255,.78);
  border-radius:27px;
  color:#fff;
  background-color:#0c6eb4;
  background-image:linear-gradient(180deg,rgba(4,28,61,.42) 0%,rgba(4,28,61,.04) 36%,rgba(4,28,61,.14) 72%,rgba(4,28,61,.46) 100%),var(--countdown-background);
  background-position:center,var(--countdown-position);
  background-size:cover;
  box-shadow:0 18px 38px rgba(17,73,127,.22);
  text-align:left
}
.countdown-card.countdown-photo-card:after{content:none;display:none}
.countdown-preview-brand{
  width:max-content;
  max-width:76%;
  display:flex;
  align-items:center;
  gap:8px;
  padding:7px 10px 7px 7px;
  border:1px solid rgba(255,255,255,.8);
  border-radius:15px;
  color:#17365d;
  background:rgba(255,255,255,.9);
  box-shadow:0 7px 18px rgba(4,28,61,.2);
  backdrop-filter:blur(10px)
}
.countdown-preview-brand img{
  width:35px;
  height:35px;
  flex:none;
  border-radius:10px;
  object-fit:cover
}
.countdown-preview-brand span,
.countdown-preview-brand strong,
.countdown-preview-brand small{display:block;min-width:0}
.countdown-preview-brand strong{overflow:hidden;font-size:10px;text-overflow:ellipsis;white-space:nowrap}
.countdown-preview-brand small{margin-top:2px;color:#5d748d;font-size:5.5px;font-weight:850;letter-spacing:.07em}
.countdown-preview-heading{
  display:grid;
  gap:2px;
  margin:22px 4px 0;
  color:#fff;
  text-shadow:0 3px 12px rgba(3,25,55,.58)
}
.countdown-preview-heading small{font-size:7px;font-weight:900;letter-spacing:.12em}
.countdown-preview-heading strong{font-size:24px;line-height:1.05}
.countdown-preview-glass{
  display:grid;
  gap:9px;
  margin:auto 0 40px;
  padding:16px 14px 15px;
  border:1px solid rgba(255,255,255,.9);
  border-radius:22px;
  color:#17365d;
  background:rgba(255,255,255,.7);
  box-shadow:0 15px 32px rgba(3,25,55,.25);
  backdrop-filter:blur(16px) saturate(1.1)
}
.countdown-preview-meta{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:8px;
  color:#3e5e7c;
  font-size:6.5px;
  font-weight:850
}
.countdown-preview-meta>span{color:#0870ce;letter-spacing:.04em}
.countdown-preview-meta time{flex:none}
.countdown-preview-glass h2{
  margin:0;
  color:#102f5c;
  font-size:25px;
  line-height:1.05
}
.countdown-preview-trip{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:8px;
  margin:0;
  color:#4f6a83;
  font-size:8px;
  font-weight:750
}
.countdown-preview-trip span{
  max-width:48%;
  overflow:hidden;
  padding:4px 7px;
  border-radius:99px;
  color:#0a69b9;
  background:rgba(226,243,255,.86);
  text-overflow:ellipsis;
  white-space:nowrap
}
.countdown-preview-units{
  display:grid;
  grid-template-columns:repeat(4,minmax(0,1fr));
  gap:6px
}
.countdown-preview-units>span{
  min-width:0;
  display:grid;
  place-items:center;
  padding:9px 2px 7px;
  border:1px solid rgba(255,255,255,.9);
  border-radius:13px;
  background:rgba(255,255,255,.48)
}
.countdown-preview-units b{color:#0b2f61;font-size:23px;line-height:1}
.countdown-preview-units small{margin-top:4px;color:#60778e;font-size:6px;font-weight:850}
.countdown-preview-onsite{
  padding:14px;
  border:1px solid rgba(255,255,255,.9);
  border-radius:14px;
  color:#0b65b0;
  background:rgba(255,255,255,.48);
  font-size:14px;
  font-weight:900;
  text-align:center
}
.countdown-preview-tagline{
  margin:2px 0 0;
  color:#385a78;
  font-size:7px;
  font-weight:800;
  text-align:center
}
.countdown-preview-domain{
  position:absolute;
  left:50%;
  bottom:17px;
  translate:-50% 0;
  padding:6px 10px;
  border-radius:99px;
  color:#fff;
  background:rgba(5,40,83,.67);
  box-shadow:0 4px 13px rgba(3,25,55,.26);
  font-size:8px;
  font-weight:850;
  white-space:nowrap
}
.countdown-preview-format{
  position:absolute;
  top:18px;
  right:17px;
  padding:5px 7px;
  border:1px solid rgba(255,255,255,.38);
  border-radius:99px;
  color:#fff;
  background:rgba(5,40,83,.44);
  font-size:5.5px;
  font-weight:800;
  backdrop-filter:blur(8px)
}
.countdown-actions,
.countdown-note{width:min(100%,560px);margin-inline:auto}
.countdown-actions button:disabled{cursor:wait;opacity:.68}

@media(max-width:360px){
  .countdown-background-options button{min-height:92px;padding:8px}
  .countdown-card.countdown-photo-card{padding:14px;border-radius:23px}
  .countdown-preview-heading{margin-top:16px}
  .countdown-preview-heading strong{font-size:21px}
  .countdown-preview-glass{gap:7px;margin-bottom:35px;padding:13px 11px}
  .countdown-preview-glass h2{font-size:21px}
  .countdown-preview-units{gap:4px}
  .countdown-preview-units b{font-size:20px}
}

.community-profile-owner-actions {
  position: relative;
  z-index: 1;
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 8px;
  margin-top: 15px;
}

.community-profile-owner-actions button {
  min-height: 45px;
  display: flex;
  gap: 7px;
  align-items: center;
  justify-content: center;
  padding: 8px;
  border: 1px solid #cfe1ef;
  border-radius: 14px;
  color: #166dba;
  background: rgba(255,255,255,.92);
  font-size: 9px;
  font-weight: 900;
}

.community-profile-owner-actions .icon {
  width: 19px;
  height: 19px;
}

.member-status-icon {
  width: 18px;
  height: 18px;
  display: inline-grid;
  place-items: center;
  margin-left: 4px;
  border-radius: 50%;
  vertical-align: .08em;
  font-size: 11px;
  font-style: normal;
  line-height: 1;
}

.member-status-icon.traveler {
  color: #fff;
  background: #1684e8;
  box-shadow: 0 0 0 2px #e5f3ff;
  font-weight: 1000;
}

.member-status-icon.supporter {
  width: auto;
  background: transparent;
  font-size: 15px;
}

.community-profile-identity h1 .member-role-badge {
  vertical-align: middle;
}

.community-profile-status,
.community-profile-next-level {
  display: block;
  margin-top: 5px;
  color: #337459;
  font-size: 10px;
}

.community-profile-next-level {
  color: #71849a;
  font-weight: 700;
}

.community-profile-overview,
.community-profile-activities,
.community-profile-reviews,
.community-profile-badges,
.community-profile-impact,
.community-profile-friends {
  margin-top: 10px;
  overflow: hidden;
}

.community-profile-stat-grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 8px;
  padding: 0 12px 14px;
}

.community-profile-stat-grid article {
  min-width: 0;
  display: grid;
  grid-template-columns: 26px minmax(0, 1fr);
  align-items: center;
  padding: 10px;
  border: 1px solid #dce9f2;
  border-radius: 15px;
  background: linear-gradient(145deg, #f8fcff, #fff);
}

.community-profile-stat-grid article > span {
  grid-row: 1 / 3;
  font-size: 18px;
}

.community-profile-stat-grid b {
  color: #123b69;
  font-size: 17px;
}

.community-profile-stat-grid small {
  overflow: hidden;
  color: #6f8298;
  font-size: 7px;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.community-profile-subhead {
  margin: 5px 12px 0;
  color: #2475b7;
  font-size: 10px;
  text-transform: uppercase;
  letter-spacing: .08em;
}

.community-profile-stay-list.past {
  opacity: .88;
}

.community-profile-activity-list,
.community-profile-review-list,
.community-profile-friend-list {
  display: grid;
  padding: 0 12px 14px;
}

.community-profile-activity {
  display: grid;
  grid-template-columns: 38px minmax(0, 1fr);
  gap: 10px;
  padding: 11px 0;
  border-top: 1px solid #e9f0f5;
}

.community-profile-activity:first-child,
.community-profile-review:first-child,
.community-profile-friend:first-child {
  border-top: 0;
}

.community-profile-activity > span {
  width: 38px;
  height: 38px;
  display: grid;
  place-items: center;
  border-radius: 13px;
  background: #edf7ff;
  font-size: 18px;
}

.community-profile-activity strong,
.community-profile-activity p,
.community-profile-activity small {
  display: block;
  margin: 0;
}

.community-profile-activity strong { font-size: 10px; }
.community-profile-activity p { margin-top: 2px; color: #60778e; font-size: 9px; line-height: 1.35; }
.community-profile-activity small { margin-top: 3px; color: #91a0ad; font-size: 8px; }

.public-profile-blog {
  cursor: pointer;
}

.public-profile-content-thumb {
  width: 76px;
  height: 76px;
  align-self: center;
  border-radius: 14px;
  object-fit: cover;
}

.community-profile-review {
  padding: 11px 0;
  border-top: 1px solid #e9f0f5;
}

.community-profile-review > div {
  display: flex;
  gap: 8px;
  align-items: center;
  justify-content: space-between;
}

.community-profile-review strong { font-size: 10px; }
.community-profile-review div span { color: #f2a300; font-size: 10px; letter-spacing: .05em; }
.community-profile-review p { margin: 5px 0; color: #526b84; font-size: 9px; line-height: 1.45; }
.community-profile-review small { color: #8797a7; font-size: 8px; }

.community-profile-badge-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 8px;
  padding: 0 12px 14px;
}

.community-profile-badge-grid article {
  min-width: 0;
  display: grid;
  grid-template-columns: 38px minmax(0, 1fr);
  gap: 8px;
  align-items: center;
  padding: 10px;
  border: 1px solid #dce8f0;
  border-radius: 15px;
  background: #fbfdff;
}

.community-profile-badge-grid article.traveler { border-color: #abd8fa; background: #eff8ff; }
.community-profile-badge-grid article.supporter { border-color: #f4dc7a; background: #fffbed; }
.community-profile-badge-grid article > span { font-size: 23px; text-align: center; }
.community-profile-badge-grid strong,
.community-profile-badge-grid small { display: block; }
.community-profile-badge-grid strong { color: #193c66; font-size: 9px; }
.community-profile-badge-grid small { margin-top: 3px; color: #74879a; font-size: 7px; line-height: 1.35; }

.community-profile-impact-grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 8px;
  padding: 0 12px 14px;
}

.community-profile-impact-grid article {
  padding: 13px 8px;
  border-radius: 15px;
  text-align: center;
  background: linear-gradient(145deg, #eaf7ff, #f8fffa);
}

.community-profile-impact-grid b,
.community-profile-impact-grid span { display: block; }
.community-profile-impact-grid b { color: #0875bd; font-size: 20px; }
.community-profile-impact-grid span { margin-top: 3px; color: #5f778d; font-size: 7px; line-height: 1.3; }

.community-profile-friend {
  width: 100%;
  display: grid;
  grid-template-columns: 48px minmax(0, 1fr) 18px;
  gap: 10px;
  align-items: center;
  padding: 9px 0;
  border: 0;
  border-top: 1px solid #e9f0f5;
  color: inherit;
  background: transparent;
  text-align: left;
}

.community-profile-friend strong,
.community-profile-friend small { display: block; }
.community-profile-friend strong { font-size: 10px; }
.community-profile-friend small { margin-top: 3px; color: #798b9d; font-size: 8px; }
.community-profile-friend > b { color: #2b78b9; font-size: 20px; }

@media (max-width: 460px) {
  .community-profile-stat-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .community-profile-badge-grid { grid-template-columns: 1fr; }
  .community-profile-impact-grid { gap: 5px; }
}

/* 1.8.6 – lebendiger Chat, klare Freundesaktionen und direkte Glocken-Aktionen */
.friend-card-row {
  grid-template-columns: minmax(0, 1fr) auto !important;
  gap: 12px !important;
  padding: 12px 14px !important;
}
.friend-card-actions {
  display: grid;
  grid-template-columns: repeat(2, minmax(92px, 1fr));
  gap: 8px;
}
.friend-profile-action,
.friend-message-button {
  min-height: 44px !important;
  padding: 8px 13px !important;
  border: 1px solid #c9ddf0 !important;
  border-radius: 13px !important;
  display: inline-flex !important;
  align-items: center;
  justify-content: center;
  gap: 7px;
  font-size: 12px !important;
  font-weight: 900 !important;
  white-space: nowrap;
}
.friend-profile-action {
  color: #155da7;
  background: #edf6ff;
}
.friend-message-button {
  color: #fff !important;
  background: linear-gradient(135deg, #2874e8, #43afe3) !important;
  box-shadow: 0 6px 14px rgba(28, 104, 198, .16);
}
.friend-profile-action .icon,
.friend-message-button .icon { width: 18px; height: 18px; }
.friend-message-button.is-disabled { opacity: .55; box-shadow: none; }

.chat-screen {
  background-color: #e8f0e9 !important;
  background-image:
    radial-gradient(circle at 12px 12px, rgba(24, 101, 83, .055) 1.3px, transparent 1.5px),
    radial-gradient(circle at 31px 28px, rgba(24, 101, 83, .04) 1px, transparent 1.3px) !important;
  background-size: 42px 42px !important;
}
.chat-head {
  grid-template-columns: 42px minmax(0, 1fr) 42px !important;
  min-height: 70px;
  height: auto !important;
  box-shadow: 0 2px 12px rgba(20, 52, 76, .09);
}
.chat-profile {
  min-width: 0;
  padding: 0;
  border: 0;
  background: transparent;
  color: #142e55;
  display: grid;
  grid-template-columns: 44px minmax(0, 1fr);
  align-items: center;
  gap: 10px;
  text-align: left;
}
.chat-profile strong { display: block; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; font-size: 14px; }
.chat-profile small { display: block; margin-top: 2px; color: #2b806a; font-size: 10px; font-weight: 800; }
.chat-body { padding: 16px clamp(10px, 3vw, 28px) 20px !important; }
.bubble {
  max-width: min(78%, 540px) !important;
  padding: 8px 9px 6px !important;
  border-radius: 17px 17px 17px 5px !important;
  background: #fff !important;
  box-shadow: 0 2px 8px rgba(22, 56, 66, .11) !important;
}
.bubble.mine {
  margin-left: auto;
  border-radius: 17px 17px 5px 17px !important;
  background: #d9fdd3 !important;
}
.bubble p { padding: 2px 4px; font-size: 13px !important; line-height: 1.46 !important; overflow-wrap: anywhere; }
.bubble p strong { color: #0a4f40; font-weight: 900; }
.bubble time { margin: 4px 3px 0 !important; text-align: right; }
.chat-image {
  display: block;
  width: 100%;
  max-width: 420px;
  padding: 0;
  border: 0;
  border-radius: 12px;
  overflow: hidden;
  background: #dbe5e2;
}
.chat-image img { display: block; width: 100%; max-height: 340px; object-fit: cover; }
.chat-compose {
  display: grid !important;
  grid-template-columns: 1fr !important;
  gap: 7px !important;
  padding: 8px max(10px, env(safe-area-inset-right)) max(9px, env(safe-area-inset-bottom)) max(10px, env(safe-area-inset-left)) !important;
  background: rgba(250, 252, 251, .97) !important;
}
.chat-tools { display: flex; gap: 6px; align-items: center; }
.chat-tools > button,
.chat-photo-button {
  width: 39px !important;
  height: 36px !important;
  margin: 0 !important;
  padding: 0 !important;
  border: 1px solid #d3e0df !important;
  border-radius: 11px !important;
  display: grid !important;
  place-items: center;
  background: #fff !important;
  color: #1d5b62 !important;
  font-size: 17px;
}
.chat-photo-button .icon { width: 20px; height: 20px; }
.chat-emoji-palette {
  display: grid;
  grid-template-columns: repeat(10, 34px);
  gap: 4px;
  padding: 7px;
  overflow-x: auto;
  border: 1px solid #dce7e5;
  border-radius: 13px;
  background: #fff;
}
.chat-emoji-palette[hidden] { display: none !important; }
.chat-emoji-palette button { width: 34px !important; height: 34px !important; padding: 0 !important; border: 0 !important; background: transparent !important; font-size: 20px; }
.chat-photo-preview {
  display: grid;
  grid-template-columns: 58px minmax(0, 1fr) 34px;
  align-items: center;
  gap: 9px;
  padding: 7px;
  border: 1px solid #cfe0dd;
  border-radius: 13px;
  background: #eef8f5;
}
.chat-photo-preview[hidden] { display: none !important; }
.chat-photo-preview img { width: 58px; height: 52px; border-radius: 9px; object-fit: cover; }
.chat-photo-preview strong { display: block; font-size: 12px; }
.chat-photo-preview small { display: block; margin-top: 2px; color: #607b7b; font-size: 9px; }
.chat-photo-preview button { width: 32px !important; height: 32px !important; padding: 0 !important; border: 0 !important; border-radius: 50% !important; background: #d8e7e4 !important; color: #244d52 !important; font-size: 20px; }
.chat-compose-row { display: grid; grid-template-columns: minmax(0, 1fr) 44px; gap: 8px; align-items: end; }
.chat-compose-row textarea {
  width: 100%;
  min-height: 44px;
  max-height: 120px;
  padding: 11px 15px;
  border: 1px solid #d4e1df;
  border-radius: 20px;
  resize: vertical;
  outline: none;
  background: #fff;
  color: #183642;
  line-height: 1.35;
}
.chat-compose-row textarea:focus { border-color: #4ca68f; box-shadow: 0 0 0 3px rgba(76, 166, 143, .12); }
.chat-compose-row > button { width: 44px !important; height: 44px !important; padding: 11px !important; border: 0 !important; border-radius: 50% !important; background: linear-gradient(135deg, #1d8d72, #39ae89) !important; color: #fff !important; }

.notification-card { border-bottom: 1px solid #e7eef3; background: #fff; }
.notification-card.unread { background: linear-gradient(90deg, #edf5ff, #f8fbff); box-shadow: inset 4px 0 #2d78e5; }
.notification-card .notification-item { width: 100%; border: 0 !important; background: transparent !important; text-align: left; }
.notification-friend-actions { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 8px; padding: 0 11px 11px 56px; }
.notification-friend-actions button { min-height: 39px; border: 0; border-radius: 11px; font-size: 11px; font-weight: 900; }
.notification-friend-actions .accept { color: #fff; background: linear-gradient(135deg, #2677eb, #43afe3); }
.notification-friend-actions .decline { color: #51687f; background: #eaf0f5; }

@media (max-width: 560px) {
  .friend-card-row { grid-template-columns: 1fr !important; }
  .friend-card-actions { width: 100%; grid-template-columns: repeat(2, 1fr); }
  .friend-profile-arrow { display: none; }
  .bubble { max-width: 88% !important; }
  .notification-friend-actions { padding-left: 11px; }
}

.comment-helpful-button{
  border:1px solid #b9ddcf;
  border-radius:999px;
  background:#edf9f4;
  color:#176a54;
  padding:5px 9px;
  font-size:12px;
  font-weight:800;
  line-height:1;
}
.comment-helpful-button.active{background:#137a5d;color:#fff;border-color:#137a5d}
.comment-helpful-button:disabled{opacity:1;cursor:default}
.home-mission-copy button:disabled{background:#d9f3e8!important;color:#14664f!important;box-shadow:none!important;cursor:default}

/* Version 1.8.6: moderne Community- und Empfehlungsbereiche */
.home-modern-card{border-color:#c9deed!important;background:linear-gradient(145deg,rgba(255,255,255,.98),rgba(244,250,255,.96))!important;box-shadow:0 14px 34px rgba(15,63,109,.11)!important}
.home-modern-head{position:relative;display:grid!important;grid-template-columns:50px minmax(0,1fr) auto auto;align-items:center!important;gap:11px!important;padding:15px 16px!important;background:linear-gradient(110deg,#eff9ff 0%,#fff 54%,#fff8df 100%);border-bottom:1px solid #deebf3}
.home-modern-head>div{min-width:0}.home-modern-head>div>small,.home-section-kicker{display:block;margin-bottom:2px;color:#1779c6;font-size:8px;font-weight:950;letter-spacing:.13em}.home-modern-head h2{font-size:19px!important;line-height:1.15}.home-modern-head p{font-size:10.5px!important}.home-modern-icon{width:48px;height:48px;display:grid;place-items:center;border-radius:16px;font-size:23px;box-shadow:inset 0 0 0 1px rgba(255,255,255,.8),0 6px 15px rgba(23,81,132,.11)}.home-modern-icon.is-community{background:linear-gradient(145deg,#dff5ff,#e8f9ea)}.home-modern-icon.is-food{background:linear-gradient(145deg,#fff3c8,#fff8e6)}.home-modern-stat{min-width:62px;display:grid;place-items:center;padding:7px 9px;border:1px solid #cde5f3;border-radius:13px;background:rgba(255,255,255,.84);color:#146bb1}.home-modern-stat b{font-size:15px}.home-modern-stat small{font-size:7.5px;color:#72869a}.home-modern-stat.is-gold{border-color:#f0d48a;background:#fff8e0;color:#a26b00}.home-modern-head .link-button{padding:9px 11px!important;border:1px solid #cce0ef!important;border-radius:12px!important;background:#fff!important;white-space:nowrap}.home-activity-list,.home-restaurant-list{padding:5px 12px 10px}.home-activity-item,.home-restaurant-item{margin:4px 0;padding:9px!important;border:1px solid transparent!important;border-radius:16px;background:rgba(255,255,255,.82)!important;transition:transform .18s ease,border-color .18s ease,box-shadow .18s ease}.home-activity-item:hover,.home-restaurant-item:hover{transform:translateY(-1px);border-color:#cbdfee!important;box-shadow:0 7px 17px rgba(22,72,115,.09)}.home-restaurant-rank{background:linear-gradient(145deg,#1678e5,#4eb8e1)!important;color:#fff!important;box-shadow:0 5px 12px rgba(20,108,191,.22)}.home-restaurant-item:first-child .home-restaurant-rank{background:linear-gradient(145deg,#ffbc22,#f18a00)!important}.home-restaurant-item>img{box-shadow:0 5px 12px rgba(15,48,82,.14)}
.home-mission-card{position:relative;overflow:hidden;display:grid;grid-template-columns:minmax(0,1fr) 180px;gap:14px;padding:18px;border:1px solid #bdddeb;border-radius:23px;background:radial-gradient(circle at 83% 18%,rgba(255,215,67,.28),transparent 23%),linear-gradient(125deg,#073d70,#0d6d9a 65%,#278e82);color:#fff;box-shadow:0 16px 34px rgba(8,57,99,.2)}.home-mission-card:after{content:'〰  ☀  〰';position:absolute;right:16px;top:8px;font-size:27px;opacity:.13}.home-mission-copy,.home-impact-panel{position:relative;z-index:1}.home-mission-copy>small{color:#9fe6ff;font-size:8px;font-weight:950;letter-spacing:.15em}.home-mission-copy h2{margin:5px 0;font-size:21px}.home-mission-copy p{margin:0 0 12px;color:#d9f1fb;font-size:11px;line-height:1.45}.home-mission-copy button{min-height:42px;padding:0 15px;border:0;border-radius:13px;background:linear-gradient(135deg,#ffd63d,#ffab20);color:#5f4100;font-size:11px;font-weight:950}.home-impact-panel{display:grid;align-content:center;padding:13px;border:1px solid rgba(255,255,255,.27);border-radius:17px;background:rgba(2,34,64,.25);backdrop-filter:blur(8px)}.home-impact-panel>span{font-size:9px;font-weight:900}.home-impact-panel>strong{font-size:30px;line-height:1.1}.home-impact-panel p{margin:2px 0 6px;color:#d7eef8;font-size:9px}.home-impact-panel em{font-size:9px;font-style:normal;font-weight:900}.home-mission-badges{display:flex;gap:4px;margin-top:6px}.home-mission-badges i{width:24px;height:24px;display:grid;place-items:center;border-radius:50%;background:rgba(255,255,255,.16);font-style:normal}
.home-weekly-card{padding-bottom:13px!important}.home-weekly-grid{display:grid;grid-template-columns:1.05fr 1fr 1.15fr;gap:9px;padding:0 14px}.home-helper-tile,.home-roundup-events,.home-roundup-photos{min-width:0;min-height:112px;border:1px solid #d7e6ef;border-radius:16px;background:linear-gradient(145deg,#f7fbff,#fffdf5)}.home-helper-tile{display:flex;align-items:center;gap:9px;padding:12px;color:#183a64;text-align:left}.home-helper-tile>span{font-size:30px}.home-helper-tile small,.home-roundup-events>small{color:#c08300;font-size:7.5px;font-weight:950;letter-spacing:.1em}.home-helper-tile strong{display:block;margin-top:3px;font-size:12px}.home-helper-tile p{margin:3px 0 0;color:#73869b;font-size:8.5px}.home-roundup-photos{display:grid;grid-template-columns:repeat(3,1fr);overflow:hidden}.home-roundup-photos .photo-wall-tile{min-height:110px;border-radius:0}.home-roundup-events{display:grid;align-content:start;gap:4px;padding:10px}.home-roundup-events button{display:grid;grid-template-columns:auto minmax(0,1fr) auto;gap:6px;align-items:center;padding:7px;border:0;border-radius:10px;background:#fff;color:#18395f;text-align:left}.home-roundup-events button b{color:#1674c9;font-size:8px}.home-roundup-events button span{overflow:hidden;font-size:9px;font-weight:850;text-overflow:ellipsis;white-space:nowrap}.home-roundup-events p,.home-roundup-empty{padding:12px;color:#71869a;font-size:9px;text-align:center}.home-post-trip-card{position:relative;display:grid;grid-template-columns:48px minmax(0,1fr) auto auto;gap:12px;align-items:center;padding:15px;border:1px solid #f0d7a0;border-radius:20px;background:linear-gradient(120deg,#fff9e7,#fff,#eaf8ff);box-shadow:0 9px 22px rgba(29,72,107,.08)}.home-post-trip-card>span{font-size:29px}.home-post-trip-card small{color:#c17e00;font-size:7.5px;font-weight:950;letter-spacing:.12em}.home-post-trip-card h2{margin:3px 0;font-size:15px}.home-post-trip-card p{margin:0;color:#71849a;font-size:9px}.home-post-trip-card>button:not(.quiet){min-height:40px;padding:0 13px;border:0;border-radius:12px;background:#1674df;color:#fff;font-size:10px;font-weight:900}.home-post-trip-card .quiet{width:32px;height:32px;border:0;border-radius:50%;background:#eef3f7;color:#536b84;font-size:18px}
@media(max-width:620px){.home-modern-head{grid-template-columns:43px minmax(0,1fr) auto}.home-modern-icon{width:42px;height:42px}.home-modern-stat{display:none}.home-modern-head .link-button{grid-column:2/4;justify-self:stretch;margin-top:2px;text-align:center}.home-mission-card{grid-template-columns:1fr 112px;padding:14px}.home-mission-copy h2{font-size:17px}.home-impact-panel>strong{font-size:25px}.home-weekly-grid{grid-template-columns:1fr 1fr}.home-roundup-events{grid-column:1/-1}.home-post-trip-card{grid-template-columns:38px minmax(0,1fr) auto;padding:13px}.home-post-trip-card>button:not(.quiet){grid-column:2/4;width:100%}.home-post-trip-card .quiet{position:absolute;right:8px;top:8px}.home-activity-list,.home-restaurant-list{padding-left:7px;padding-right:7px}}

/* 1.6.2 – versionsabhängiger Android-Update-Hinweis */
.app-update-card{grid-column:1/-1;display:grid;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:14px;padding:17px 18px!important;border-color:#bcd9f5!important;background:linear-gradient(135deg,rgba(239,248,255,.98),rgba(255,255,255,.98))!important;box-shadow:0 16px 34px rgba(25,91,163,.12)!important}.app-update-card.is-persistent{border-color:#f0be94!important;background:linear-gradient(135deg,#fff6e8,#fffdf9)!important;box-shadow:0 16px 34px rgba(173,91,24,.14)!important}.app-update-icon{width:48px;height:48px;display:grid;place-items:center;border-radius:16px;background:linear-gradient(135deg,#1674e8,#28b5df);color:#fff;font-size:25px;font-weight:900;box-shadow:0 9px 22px rgba(22,116,232,.22)}.app-update-card.is-persistent .app-update-icon{background:linear-gradient(135deg,#d26820,#f0a03b);box-shadow:0 9px 22px rgba(210,104,32,.22)}.app-update-copy{min-width:0}.app-update-copy small{display:block;margin-bottom:2px;color:#2770bd;font-size:9px;font-weight:950;letter-spacing:.13em}.app-update-card.is-persistent .app-update-copy small{color:#aa5a20}.app-update-copy h2{margin:0;color:#112f61;font-size:19px;letter-spacing:-.025em}.app-update-copy p{margin:5px 0 0;color:#536a87;font-size:12px;line-height:1.45}.app-update-copy span{display:block;margin-top:5px;color:#7c8ba0;font-size:10px;line-height:1.4}.app-update-actions{display:grid;gap:6px;min-width:138px}.app-update-actions button{min-height:42px;border:0;border-radius:13px;padding:9px 13px;background:linear-gradient(135deg,#1674e8,#28aedd);color:#fff;font:inherit;font-size:11px;font-weight:900;box-shadow:0 8px 18px rgba(22,116,232,.18)}.app-update-actions .app-update-later{border:1px solid #d4e2f1;background:#fff;color:#315a8c;box-shadow:none}
@media(max-width:620px){.app-update-card{grid-template-columns:auto minmax(0,1fr);align-items:start;padding:15px!important}.app-update-icon{width:43px;height:43px;border-radius:14px}.app-update-actions{grid-column:1/-1;grid-template-columns:1fr;min-width:0}.app-update-actions button{width:100%;min-height:46px}.app-update-copy h2{font-size:17px}}

/* 1.7.0 – verlinkte Wochenaktivitaeten und Community-Bewertungen */
.home-activities-card,.home-top-restaurants{overflow:hidden}.home-activity-list,.home-restaurant-list,.activities-list{display:grid;gap:0}.home-activity-item,.home-restaurant-item{width:100%;min-width:0;display:grid;align-items:center;border:0;border-bottom:1px solid #e8eff5;background:transparent;color:#15345f;text-align:left;cursor:pointer}.home-activity-item:last-child,.home-restaurant-item:last-child{border-bottom:0}.home-activity-item{grid-template-columns:46px minmax(0,1fr) auto 18px;gap:10px;min-height:65px;padding:9px 2px}.home-activity-item>img,.home-activity-icon{width:46px;height:46px;border-radius:14px;object-fit:cover}.home-activity-icon{display:grid;place-items:center;background:linear-gradient(145deg,#e8f5ff,#f2fbf5);font-size:22px}.home-activity-icon.is-review{background:linear-gradient(145deg,#fff8dc,#fff1cf)}.home-activity-copy{min-width:0;display:grid;gap:3px}.home-activity-copy strong{overflow:hidden;font-size:12px;line-height:1.35;text-overflow:ellipsis}.home-activity-copy small{color:#7d8da0;font-size:9px}.home-activity-rating{padding:5px 7px;border-radius:999px;background:#fff5d8;color:#9b6a00;font-size:9px;font-weight:900}.home-activity-item>b{color:#2674c9;font-size:20px}.home-activity-count{display:block;margin-top:7px;color:#71859b;font-size:9px;text-align:right}.home-activity-empty{min-height:108px;display:grid;place-items:center;align-content:center;gap:4px;padding:18px;color:#70859b;text-align:center}.home-activity-empty>span{font-size:25px}.home-activity-empty strong{color:#284d79;font-size:12px}.home-activity-empty small{font-size:9px}.home-restaurant-item{grid-template-columns:28px 58px minmax(0,1fr) 16px;gap:9px;min-height:82px;padding:9px 1px}.home-restaurant-rank{width:25px;height:25px;display:grid;place-items:center;border-radius:50%;background:#e8f4ff;color:#0a6bcf;font-size:11px;font-weight:950}.home-restaurant-item>img,.home-restaurant-placeholder{width:58px;height:58px;border-radius:15px;object-fit:cover}.home-restaurant-placeholder{display:grid;place-items:center;background:#edf7ff;font-size:25px}.home-restaurant-copy{min-width:0;display:grid;gap:2px}.home-restaurant-copy>small{color:#1680d2;font-size:8px;font-weight:950;letter-spacing:.06em}.home-restaurant-copy>strong{overflow:hidden;font-size:13px;text-overflow:ellipsis;white-space:nowrap}.home-restaurant-rating{min-width:0;display:flex;align-items:center;gap:5px;margin-top:3px;white-space:nowrap}.home-restaurant-rating b,.discovery-rating-chip b{color:#f0a000;letter-spacing:-.03em}.home-restaurant-rating strong{font-size:10px}.home-restaurant-rating small{overflow:hidden;color:#74879b;font-size:8px;text-overflow:ellipsis}.home-restaurant-rating.is-empty small{color:#0b6ccb;font-weight:900}.home-restaurant-arrow{color:#2778cc;font-size:19px}.discovery-rating-chip{cursor:pointer}.discovery-rating-chip.is-empty{border-color:#b9d9f6!important;background:#eef7ff!important;color:#0969c8!important}.activities-screen{width:min(760px,100%);margin:0 auto}.activities-hero{display:grid;grid-template-columns:40px minmax(0,1fr) auto;align-items:center;gap:10px;margin-bottom:12px;padding:18px;border:1px solid #c8deef;border-radius:22px;background:linear-gradient(135deg,#eaf6ff,#fff9e5);box-shadow:0 15px 34px rgba(25,78,130,.1)}.activities-hero h1{margin:2px 0 0;color:#102e5c;font-size:24px;line-height:1.05}.activities-hero p{margin:5px 0 0;color:#67809a;font-size:10px}.activities-hero>div>span{color:#1975c7;font-size:8px;font-weight:950;letter-spacing:.13em}.activities-hero>em{font-size:31px;font-style:normal}.activities-list{padding:5px 15px!important}

/* 1.7.0 – echte, touchfaehige OpenStreetMap-Communitykarte. */
.user-map-openstreetmap{position:relative;overflow:hidden;padding:0!important;border:1px solid #bcd8eb;border-radius:19px;background:#dff0fa}.user-map-live{width:100%;height:clamp(390px,56vh,620px);min-height:390px;z-index:1;background:#dcecf5;touch-action:pan-x pan-y}.user-map-live .leaflet-control-zoom a{width:38px;height:38px;line-height:36px;color:#124b87;font-size:24px}.user-map-live .leaflet-control-attribution{max-width:75%;padding:2px 5px;background:rgba(255,255,255,.86);font-size:8px}.user-map-zoom-hint{position:absolute;z-index:500;left:50%;bottom:12px;transform:translateX(-50%);pointer-events:none;padding:7px 11px;border-radius:999px;background:rgba(9,45,91,.82);color:#fff;font-size:9px;font-weight:850;white-space:nowrap;box-shadow:0 5px 14px rgba(3,30,66,.2)}.user-map-leaflet-icon{background:transparent;border:0}.user-map-leaflet-pin{position:relative;width:40px;height:40px;display:grid;place-items:center;border:3px solid #fff;border-radius:50% 50% 50% 15%;background:linear-gradient(145deg,#137ce8,#3b9cf0);color:#fff;font-size:10px;font-weight:950;box-shadow:0 5px 13px rgba(9,55,108,.35);transform:rotate(-45deg)}.user-map-leaflet-pin::after{content:"";position:absolute;inset:3px;border:1px solid rgba(255,255,255,.32);border-radius:inherit}.user-map-leaflet-pin.dating{background:linear-gradient(145deg,#a641df,#d44de0)}.user-map-leaflet-pin.admin{box-shadow:0 0 0 2px #ffd76c,0 5px 13px rgba(9,55,108,.35)}.user-map-leaflet-pin{line-height:1}.user-map-leaflet-pin>*{transform:rotate(45deg)}.user-map-leaflet-pin{padding:0}.user-map-leaflet-pin{font-variant-numeric:tabular-nums}.user-map-leaflet-pin::first-letter{transform:rotate(45deg)}.user-map-leaflet-icon .user-map-leaflet-pin{display:flex}.user-map-leaflet-icon .user-map-leaflet-pin{justify-content:center}.user-map-leaflet-icon .user-map-leaflet-pin{align-items:center}.user-map-leaflet-icon .user-map-leaflet-pin{color:transparent}.user-map-leaflet-icon .user-map-leaflet-pin::before{content:attr(data-label);color:#fff;transform:rotate(45deg)}.marker-cluster{display:grid!important;place-items:center;border-radius:50%;background:rgba(26,124,226,.2);box-shadow:0 3px 12px rgba(7,58,111,.25)}.marker-cluster div{width:34px;height:34px;display:grid;place-items:center;margin:5px;border:3px solid #fff;border-radius:50%;background:linear-gradient(145deg,#177be2,#41a4ec);color:#fff;font-size:11px;font-weight:950}.marker-cluster-small,.marker-cluster-medium,.marker-cluster-large{background:rgba(32,145,227,.22)}.user-map-load-error{height:100%;min-height:390px;display:grid;place-items:center;align-content:center;gap:7px;padding:24px;color:#476987;text-align:center}.user-map-load-error>span{font-size:34px}.user-map-load-error strong{color:#12345f}.user-map-load-error small{font-size:10px}.user-map-detail{min-height:88px}.user-map-person{display:grid;grid-template-columns:52px minmax(0,1fr);gap:10px;align-items:center}.user-map-person>div{min-width:0}.user-map-person small{display:block;margin-top:3px;color:#71859b;font-size:9px}.map-status-row{display:flex;flex-wrap:wrap;gap:5px;margin-top:5px}.map-status-chip{padding:4px 7px;border-radius:999px;background:#e9f4ff;color:#1767b5;font-size:8px;font-weight:900}.map-status-chip.dating{background:#f7eaff;color:#913db3}
@media(max-width:620px){.home-activity-item{grid-template-columns:43px minmax(0,1fr) auto 14px;gap:8px}.home-activity-item>img,.home-activity-icon{width:43px;height:43px}.home-activity-rating{padding:4px 5px;font-size:8px}.home-restaurant-item{grid-template-columns:25px 54px minmax(0,1fr) 12px;gap:7px}.home-restaurant-item>img,.home-restaurant-placeholder{width:54px;height:54px}.activities-hero{padding:14px}.activities-hero h1{font-size:21px}.user-map-live{height:calc(100svh - 285px);min-height:430px;max-height:680px}.user-map-card{padding:10px!important}.user-map-toolbar{align-items:flex-start;gap:8px}.map-filter-row{display:flex;max-width:100%;overflow-x:auto;scrollbar-width:none}.map-filter-row button{min-height:39px;white-space:nowrap}.user-map-zoom-hint{bottom:9px;font-size:8px}.user-map-detail{padding:12px!important}}

/* Markertext trotz gedrehter Karten-Nadel aufrecht halten. */
.user-map-leaflet-pin{display:grid!important;color:#fff!important}
.user-map-leaflet-pin>b{position:relative;z-index:1;color:#fff;font:inherit;transform:rotate(45deg)}
.user-map-leaflet-pin::before{content:none!important}


/* 1.8.0e – alle kumulativen Funktionen sichtbar */
.mr180-feature-hub {
  overflow: hidden;
  padding: 0 !important;
}
.mr180-feature-hub > .section-head {
  gap: 12px;
  margin: 0;
  padding: 17px 18px 13px;
  border-bottom: 1px solid #e3edf5;
  background: linear-gradient(100deg, #ffffff 0%, #f3f9ff 70%, #fff9df 100%);
}
.mr180-feature-hub > .section-head h2 {
  margin: 0;
  color: #123768;
}
.mr180-feature-hub > .section-head p {
  margin-top: 3px;
}
.mr180-feature-version {
  flex: 0 0 auto;
  padding: 6px 9px;
  border-radius: 999px;
  background: #0c73d9;
  color: #fff;
  font-size: 10px;
  font-weight: 900;
  white-space: nowrap;
}
.mr180-feature-list {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 0;
}
.mr180-feature-row {
  min-width: 0;
  min-height: 72px;
  display: grid;
  grid-template-columns: 42px minmax(0, 1fr) auto 14px;
  gap: 10px;
  align-items: center;
  padding: 11px 14px;
  border: 0;
  border-right: 1px solid #e3edf5;
  border-bottom: 1px solid #e3edf5;
  border-radius: 0;
  background: #fff;
  color: #17375f;
  font: inherit;
  text-align: left;
  cursor: pointer;
}
.mr180-feature-row:nth-child(2n) {
  border-right: 0;
}
.mr180-feature-row:hover,
.mr180-feature-row:focus-visible {
  background: #f1f8ff;
  outline: 0;
}
.mr180-feature-icon {
  width: 42px;
  height: 42px;
  display: grid;
  place-items: center;
  border-radius: 13px;
  background: #eaf5ff;
  color: #125fae;
  font-size: 18px;
  font-weight: 950;
  letter-spacing: -1px;
}
.mr180-feature-row:nth-child(4n + 2) .mr180-feature-icon,
.mr180-feature-row:nth-child(4n + 3) .mr180-feature-icon {
  background: #fff4cf;
  color: #8b6300;
}
.mr180-feature-copy {
  min-width: 0;
}
.mr180-feature-copy strong,
.mr180-feature-copy small {
  display: block;
}
.mr180-feature-copy strong {
  color: #123768;
  font-size: 12px;
  line-height: 1.2;
}
.mr180-feature-copy small {
  margin-top: 3px;
  color: #6b7f95;
  font-size: 9px;
  line-height: 1.35;
}
.mr180-feature-release {
  align-self: start;
  margin-top: 2px;
  padding: 3px 5px;
  border-radius: 7px;
  background: #edf5ff;
  color: #2b6eaf;
  font-size: 7px;
  font-weight: 900;
  white-space: nowrap;
}
.mr180-feature-row > b {
  color: #0870df;
  font-size: 19px;
}
.mr180-feature-note {
  margin: 0;
  padding: 11px 16px 13px;
  background: #f7fbff;
  color: #5c7188;
  font-size: 9px;
  line-height: 1.45;
}
@media (max-width: 680px) {
  .mr180-feature-list {
    grid-template-columns: minmax(0, 1fr);
  }
  .mr180-feature-row,
  .mr180-feature-row:nth-child(2n) {
    border-right: 0;
  }
  .mr180-feature-row {
    min-height: 66px;
    grid-template-columns: 40px minmax(0, 1fr) auto 12px;
    padding: 10px 13px;
  }
  .mr180-feature-icon {
    width: 40px;
    height: 40px;
  }
}
@media (max-width: 390px) {
  .mr180-feature-version {
    font-size: 8px;
  }
  .mr180-feature-release {
    display: none;
  }
  .mr180-feature-row {
    grid-template-columns: 40px minmax(0, 1fr) 12px;
  }
}

/* 1.8.0l – durchgehend größere, kontrastreichere Leseschriften (muss zuletzt stehen). */
.section-head h2{font-size:20px}.section-head p{font-size:13px;line-height:1.35}.link-button{font-size:14px}
.app-nav>.nav-item>span:nth-child(2){font-size:10px!important}.header-brand-copy small{font-size:8px}.empty{font-size:12px}

.home-account-shortcuts strong{font-size:12px}.home-account-shortcuts small{font-size:10px}
.home-discovery-heading{font-size:10px}.home-discovery-copy strong{font-size:13px}.home-discovery-copy small{font-size:10px}
.mini-post strong,.mini-post h3{font-size:14px}.mini-post time{font-size:11px}.mini-post p{font-size:12px;line-height:1.4}.mini-post-social{font-size:10px}
.weather-day b{font-size:11px}.weather-day .temps{font-size:10px}.event-copy strong{font-size:14px}.event-copy small{font-size:11px}
.swap-item em{font-size:10px}.swap-item strong,.swap-item b{font-size:13px}.swap-item small{font-size:10px}
.onsite-avatar>span:last-child{font-size:10.5px;color:#17365e}.onsite-summary{font-size:11px}.onsite-empty strong{font-size:13px}.onsite-empty small{font-size:10px}
.home-activity-copy strong{font-size:14px}.home-activity-copy small{font-size:11px}.home-activity-rating,.home-activity-count{font-size:10px}
.home-restaurant-copy>small{font-size:10px}.home-restaurant-copy>strong{font-size:15px}.home-restaurant-rating strong{font-size:11px}.home-restaurant-rating small{font-size:10px}
.mr180-feature-hub>.section-head h2{font-size:20px}.mr180-feature-hub>.section-head p{font-size:12px}.mr180-feature-version{font-size:11px}
.mr180-feature-copy strong{font-size:14px}.mr180-feature-copy small{font-size:11px}.mr180-feature-release{font-size:9px}.mr180-feature-note{font-size:11px}
.app-menu-profile summary strong{font-size:16px!important}.app-menu-group summary strong{font-size:15px!important}.app-menu-accordion summary small{font-size:11.5px!important;line-height:1.35}.app-menu-accordion nav button>strong{font-size:13px!important}
.app-menu-points strong{font-size:14px!important}.app-menu-points strong em{font-size:16px}.app-menu-points small{font-size:10.5px!important}.app-menu-label{font-size:10px}.app-menu-head small{font-size:10px!important}
.travel-hero p,.travel-card-copy span,.travel-empty p{font-size:11px}.travel-kicker,.travel-card-copy small,.travel-panel-intro small,.community-stay-profile small,.travel-privacy-note{font-size:10px}.travel-tabs button,.travel-add-wide,.travel-empty button{font-size:11px}.travel-card-copy strong,.travel-panel-intro strong,.community-stay-profile strong{font-size:14px}
.countdown-top span,.countdown-select,.countdown-numbers small,.countdown-note{font-size:9px}.countdown-copy small,.countdown-card>p,.countdown-actions small{font-size:10px}.countdown-actions strong{font-size:13px}
.event-period-head span,.event-period-head p,.event-period-head label,.event-month-strip small,.event-page-date small,.event-page-category{font-size:9px}.event-page-meta{font-size:10px}.event-page-description,.event-page-empty p{font-size:11px}.event-page-card h2{font-size:15px}
.discovery-hero>div>span,.discovery-tabs button span,.discovery-list-head span,.discovery-place-title span{font-size:9px}.discovery-hero p,.discovery-copy p{font-size:11px}.discovery-place-title h2{font-size:15px}.discovery-place-address{font-size:10px}.discovery-place-description{font-size:10px}.discovery-place-chips span{font-size:8.5px}.discovery-place-actions button,.discovery-place-profile-link{font-size:9.5px}
.points-hero>div>span{font-size:9px}.points-hero p{font-size:12px}.points-progress strong{font-size:13px}.points-progress span,.points-progress>small{font-size:10px}.points-rules article strong{font-size:12px}.points-rules article p{font-size:10px}.points-rules article small{font-size:8.5px}.points-history strong{font-size:11px}.points-history small{font-size:9px}
.member-directory-head>span{font-size:9px}.member-directory-head p{font-size:10px}.member-directory-profile strong{font-size:12px}.member-directory-profile small{font-size:9px}.member-connect,.member-status,.member-load-more{font-size:9.5px}
.member-directory-title{min-width:0;display:flex;align-items:center;gap:6px}.member-directory-title strong{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.member-directory-title strong.admin{color:#c52e3b}.member-directory-title strong.moderator{color:#6b45b5}.member-directory-title strong.content{color:#147a61}.member-team-role{flex:none;padding:3px 6px;border-radius:999px;font-size:7px;font-style:normal;font-weight:900;line-height:1.1;letter-spacing:.01em}.member-team-role.is-admin{color:#a51f2d;background:#ffe8eb}.member-team-role.is-moderator{color:#59359b;background:#f0eaff}.member-team-role.is-content{color:#11634f;background:#e3f7f0}.member-directory-profile small.member-directory-meta{display:flex;align-items:center;gap:5px;overflow:visible;color:#74889c;white-space:nowrap}.member-directory-meta>span:first-child:not(.member-country-flag):not(.member-country-fallback){min-width:0;overflow:hidden;text-overflow:ellipsis}.member-directory-meta>i{color:#afbdc9;font-style:normal}.member-country-flag{flex:none;width:20px;height:14px;display:inline-flex;overflow:hidden;border:1px solid rgba(19,54,93,.18);border-radius:3px;background:#fff;box-shadow:0 1px 3px rgba(18,47,85,.12)}.member-country-flag svg{display:block;width:100%;height:100%}.member-country-fallback{flex:none;font-size:13px;line-height:1}
@media(max-width:420px){.member-directory-title{gap:4px}.member-team-role{padding:3px 5px;font-size:6.5px}.member-country-flag{width:19px;height:13px}}
.post-author strong{font-size:15px}.post-meta{font-size:11px}.post-body h2{font-size:18px}.post-body p{font-size:14px}.post-location,.post-stats,.post-action{font-size:11px}.comment-bubble strong{font-size:12px}.comment-bubble p{font-size:13px}.comment-time{font-size:10px}
@media(max-width:420px){.section-head h2{font-size:19px}.section-head p{font-size:12px}.app-menu-profile summary strong{font-size:15px!important}.app-menu-group summary strong{font-size:14px!important}.app-menu-accordion summary small{font-size:10.5px!important}.app-menu-accordion nav button>strong{font-size:13px!important}.mr180-feature-copy strong{font-size:13px}.mr180-feature-copy small{font-size:10px}}

/* 1.8.0m – Strand-Startseite: sichtbares Motiv, E-Mail-Einstieg und kompakter Login. */
.guest-background img{object-position:50% 53%;filter:saturate(1.02) contrast(1.02)}
.guest-background-shade{background:linear-gradient(180deg,rgba(2,24,51,.36) 0,rgba(2,30,56,.08) 27%,rgba(2,29,52,.12) 55%,rgba(2,20,39,.66) 100%)}
.guest-layout{min-height:auto}
.guest-hero{width:min(760px,100%);min-height:100svh;display:flex;flex-direction:column;margin:0 auto;padding:max(16px,env(safe-area-inset-top,0px)) 16px max(22px,env(safe-area-inset-bottom,0px))}
.guest-topbar{align-items:flex-start}
.guest-top-login{min-height:47px;padding:0 18px;border:1px solid rgba(255,255,255,.82);border-radius:14px;color:#fff;background:rgba(7,92,175,.84);box-shadow:0 9px 25px rgba(0,24,55,.26);font-size:13px;font-weight:950;-webkit-backdrop-filter:blur(15px);backdrop-filter:blur(15px)}
.guest-language-toggle{color:#fff;background:rgba(4,35,66,.58);box-shadow:0 9px 25px rgba(0,24,55,.2)}
.guest-language-chevron{color:rgba(255,255,255,.82)}
.guest-claim{width:min(570px,100%);gap:5px;margin:auto auto 0;padding:20px 18px;border-color:rgba(255,255,255,.38);border-radius:23px;color:#fff;background:rgba(3,28,54,.65);box-shadow:0 18px 44px rgba(0,20,45,.3);text-shadow:0 1px 7px rgba(0,14,31,.22);-webkit-backdrop-filter:blur(12px) saturate(1.04);backdrop-filter:blur(12px) saturate(1.04)}
.guest-claim h1,.guest-claim strong{color:#fff;font-size:clamp(22px,6.3vw,32px);line-height:1.06}
.guest-claim>span{color:rgba(255,255,255,.88);font-size:clamp(12px,3.5vw,15px);line-height:1.42}
.guest-email-form{display:grid;gap:6px;margin-top:14px;padding-top:13px;border-top:1px solid rgba(255,255,255,.24);text-align:left}
.guest-email-form>small{color:#8ee8ff;font-size:8px;font-style:normal;font-weight:950;letter-spacing:.14em}
.guest-email-form>strong{font-size:16px;letter-spacing:-.02em}
.guest-email-form>p{margin:0;color:rgba(255,255,255,.82);font-size:10.5px;line-height:1.4}
.guest-email-row{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:7px;margin-top:4px}
.guest-email-row>label{position:absolute!important;width:1px!important;height:1px!important;padding:0!important;margin:-1px!important;overflow:hidden!important;clip:rect(0,0,0,0)!important;white-space:nowrap!important;border:0!important}
.guest-email-row input{min-width:0;min-height:50px;padding:0 13px;border:1px solid rgba(255,255,255,.56);border-radius:14px;outline:0;color:#12355e;background:rgba(255,255,255,.95);font:inherit;font-size:13px;box-shadow:0 7px 20px rgba(0,20,45,.15)}
.guest-email-row input:focus{border-color:#69c8f2;box-shadow:0 0 0 4px rgba(86,196,242,.2),0 7px 20px rgba(0,20,45,.15)}
.guest-email-row button{min-height:50px;padding:0 15px;border:0;border-radius:14px;color:#fff;background:linear-gradient(112deg,#0872ed,#12afd1);font-size:11px;font-weight:950;box-shadow:0 8px 23px rgba(5,99,205,.32)}
.guest-email-form>em{color:rgba(255,255,255,.72);font-size:8.5px;font-style:normal;line-height:1.35}
.guest-bottom-brand{display:flex;align-items:center;justify-content:center;gap:9px;margin-top:18px;color:#fff;text-shadow:0 2px 10px rgba(0,18,40,.65)}
.guest-bottom-brand img{width:46px;height:46px;display:block;object-fit:cover;border:1px solid rgba(255,255,255,.64);border-radius:14px;box-shadow:0 8px 24px rgba(0,19,42,.28)}
.guest-bottom-brand>span{display:grid;gap:2px;text-align:left}
.guest-bottom-brand strong{font-size:18px;line-height:1.05;letter-spacing:-.035em}
.guest-bottom-brand small{font-size:6.5px;font-weight:950;letter-spacing:.14em}
.guest-panel{width:min(660px,calc(100% - 14px));margin:8px auto max(8px,env(safe-area-inset-bottom,0px));padding:16px;border-radius:26px;background:linear-gradient(155deg,rgba(255,255,255,.96),rgba(244,251,255,.92))}
.guest-panel-heading{display:grid;gap:3px;margin-bottom:11px;text-align:center}
.guest-panel-heading h2{margin:0;color:#12365e;font-size:18px;line-height:1.15;letter-spacing:-.025em}
.guest-panel-heading p{margin:0;color:#637d95;font-size:10.5px;line-height:1.4}
.guest-public-access{margin:0;padding:0;border:0;background:transparent}
.guest-public-links{grid-template-columns:repeat(3,minmax(0,1fr));gap:7px}
.guest-public-links a{min-height:64px;border-radius:15px;font-size:10px}
.guest-public-links a>span:first-child{font-size:21px}
.guest-more{margin-top:12px;border:1px solid #d5e5f0;border-radius:16px;background:rgba(246,251,255,.86);overflow:hidden}
.guest-more summary{min-height:48px;display:flex;align-items:center;justify-content:space-between;padding:0 13px;color:#173b63;font-size:11px;font-weight:950;cursor:pointer;list-style:none}
.guest-more summary::-webkit-details-marker{display:none}
.guest-more summary::after{content:'＋';color:#0872df;font-size:18px}
.guest-more[open] summary::after{content:'−'}
.guest-more .guest-benefits{padding:0 10px 10px}
.guest-protected{font-size:9.5px}.guest-disclaimer{font-size:8.5px}.guest-legal-links a{font-size:9px}
@media(max-width:390px){
  .guest-hero{padding-left:11px;padding-right:11px}.guest-claim{padding:17px 13px}.guest-email-row{grid-template-columns:1fr}.guest-email-row button{font-size:12px}.guest-bottom-brand{margin-top:14px}.guest-panel{padding:13px}.guest-public-links a{min-height:58px}.guest-panel-heading h2{font-size:17px}
}
@media(min-width:900px){
  .guest-welcome{padding:clamp(22px,3vw,42px)}
  .guest-background img{object-position:50% 55%;transform:scale(1.03);filter:blur(9px) saturate(.9) contrast(.98);opacity:.68}
  .guest-background-shade{background:linear-gradient(105deg,rgba(2,26,52,.44),rgba(225,244,250,.38) 49%,rgba(255,246,221,.58))}
  .guest-layout{width:min(1320px,100%);min-height:min(850px,calc(100vh - clamp(44px,6vw,84px)));grid-template-columns:minmax(500px,1.12fr) minmax(430px,.88fr);gap:clamp(20px,2.4vw,34px)}
  .guest-hero{width:100%;min-height:0;margin:0;padding:clamp(24px,2.7vw,38px);border-radius:38px;background-image:linear-gradient(180deg,rgba(2,25,50,.12),rgba(2,25,48,.04) 45%,rgba(2,20,40,.7)),image-set(url('./welcome-rosolina-sunrise-180l.avif?v=180m') type('image/avif'),url('./welcome-rosolina-sunrise-180l.webp?v=180m') type('image/webp'));background-position:center 54%;background-size:cover;box-shadow:0 28px 75px rgba(4,34,65,.24)}
  .guest-claim{width:min(600px,100%);margin:auto auto 0;padding:25px 24px;background:rgba(3,28,54,.63)}
  .guest-claim h1,.guest-claim strong{font-size:30px}.guest-claim>span{font-size:14px}.guest-email-form>strong{font-size:17px}.guest-email-form>p{font-size:11px}.guest-email-form>em{font-size:9px}
  .guest-bottom-brand{margin-top:22px}.guest-panel{width:100%;max-width:550px;align-self:center;margin:0;padding:24px;border-radius:32px}.guest-panel-heading h2{font-size:21px}.guest-panel-heading p{font-size:11px}.guest-public-links a{min-height:69px;font-size:10.5px}.guest-more summary{font-size:12px}
}

/* 1.8.0n – Blog-Kacheln, sichtbare Login-E-Mail und gleiche Mitgliedergrößen. */
.app-menu-profile-copy{min-width:0;display:grid!important;align-content:center;gap:3px}.app-menu-profile-email,#menu-profile-detail{display:block!important;position:relative!important;max-width:100%;height:auto!important;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;visibility:visible!important;opacity:1!important;color:#60758d;font-size:11.5px!important;font-weight:700;line-height:1.25}
.home-blog-wall{overflow:hidden}
.home-blog-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:5px;padding:5px;border-radius:18px;background:#e7eff7}
.home-blog-tile{position:relative;min-width:0;aspect-ratio:1.18/1;display:block;padding:0;overflow:hidden;border:0;border-radius:14px;background:linear-gradient(145deg,#0c579c,#11a4c3);color:#fff;text-align:left;cursor:pointer;box-shadow:0 3px 12px rgba(15,62,105,.15)}
.home-blog-tile>img,.home-blog-placeholder{width:100%;height:100%;display:block;object-fit:cover}
.home-blog-placeholder{display:grid;place-items:center;background:linear-gradient(145deg,#0b4c8d,#15a2bd);font-size:34px}
.home-blog-shade{position:absolute;inset:auto 0 0;display:grid;gap:2px;padding:24px 9px 8px;background:linear-gradient(180deg,transparent,rgba(3,22,43,.92));text-shadow:0 1px 4px rgba(0,0,0,.42)}
.home-blog-shade small,.home-blog-shade strong,.home-blog-shade em{display:block;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.home-blog-shade small{color:#77ddff;font-size:8px;font-weight:950;letter-spacing:.06em;text-transform:uppercase}
.home-blog-shade strong{color:#fff;font-size:12px;line-height:1.18}
.home-blog-shade em{color:rgba(255,255,255,.82);font-size:8.5px;font-style:normal;font-weight:750}
.home-blog-empty{min-height:105px;display:grid;place-items:center;align-content:center;gap:3px;margin:5px;padding:12px;border-radius:15px;background:#f2f8fc;color:#667e96;text-align:center}
.home-blog-empty>span{font-size:24px}.home-blog-empty>strong{color:#17385f;font-size:13px}.home-blog-empty>small{font-size:10px}
@media(max-width:420px){
  .home-blog-grid{gap:3px;padding:3px}.home-blog-tile{border-radius:11px;aspect-ratio:1/1}.home-blog-shade{padding:20px 6px 6px}.home-blog-shade small{font-size:6.5px}.home-blog-shade strong{font-size:10px}.home-blog-shade em{font-size:7px}
}

/* 1.8.0p – schmalere, transparentere Glasflächen vor dem Login. */
.guest-claim {
  width: min(530px, calc(100% - 24px));
  padding: 17px 16px;
  border-color: rgba(255, 255, 255, .44);
  background: linear-gradient(150deg, rgba(3, 30, 58, .52), rgba(5, 50, 78, .38));
  box-shadow: 0 15px 38px rgba(0, 18, 41, .22);
  -webkit-backdrop-filter: blur(9px) saturate(1.04);
  backdrop-filter: blur(9px) saturate(1.04);
}
.guest-panel {
  width: min(610px, calc(100% - 28px));
  padding: 12px;
  border-color: rgba(255, 255, 255, .66);
  border-radius: 23px;
  background: linear-gradient(155deg, rgba(255, 255, 255, .76), rgba(237, 249, 255, .6));
  box-shadow: 0 15px 40px rgba(3, 30, 59, .17), inset 0 1px rgba(255, 255, 255, .72);
  -webkit-backdrop-filter: blur(13px) saturate(1.08);
  backdrop-filter: blur(13px) saturate(1.08);
}
.guest-panel-heading { gap: 2px; margin-bottom: 8px; }
.guest-panel-heading h2 { font-size: 17px; }
.guest-panel-heading p { font-size: 10px; }
.guest-public-links { gap: 5px; }
.guest-public-links a {
  min-height: 54px;
  border-color: rgba(186, 217, 238, .72);
  background: rgba(255, 255, 255, .58);
  box-shadow: 0 3px 10px rgba(20, 67, 105, .045);
  -webkit-backdrop-filter: blur(6px);
  backdrop-filter: blur(6px);
}
.guest-more {
  margin-top: 8px;
  border-color: rgba(199, 224, 239, .78);
  background: rgba(244, 251, 255, .52);
}
.guest-more summary { min-height: 42px; }
.guest-more .guest-benefits { padding: 0 7px 7px; }
.guest-benefits { gap: 6px; }
.guest-benefits article {
  min-height: 88px;
  padding: 8px;
  border-color: rgba(198, 217, 232, .64);
  background: rgba(255, 255, 255, .53);
  box-shadow: 0 3px 11px rgba(27, 70, 108, .04);
}
.guest-protected { margin-top: 7px; }
.guest-disclaimer { margin-top: 6px; padding-top: 6px; }
.guest-legal-links { margin-top: 6px; }
@media (max-width: 390px) {
  .guest-claim { width: calc(100% - 18px); padding: 15px 13px; }
  .guest-panel { width: calc(100% - 22px); padding: 10px; border-radius: 21px; }
  .guest-public-links a { min-height: 51px; }
}
@media (min-width: 900px) {
  .guest-claim { width: min(550px, calc(100% - 30px)); padding: 21px 20px; }
  .guest-panel { width: min(510px, 100%); max-width: 510px; padding: 18px; border-radius: 28px; }
  .guest-public-links a { min-height: 59px; }
}

/* 1.8.0p – vollständiger Player statt abgeschnittener Musikzeile. */
.holiday-music-card {
  height: auto !important;
  min-height: 178px !important;
  overflow: hidden !important;
  padding: 13px !important;
  background:
    radial-gradient(circle at 92% 4%, rgba(29, 185, 84, .13), transparent 150px),
    linear-gradient(125deg, rgba(255, 255, 255, .98), rgba(239, 249, 246, .96) 58%, rgba(255, 247, 235, .98));
}
.holiday-music-head { margin-bottom: 9px !important; }
.holiday-music-link {
  height: auto !important;
  min-height: 94px !important;
  overflow: visible !important;
  background:
    radial-gradient(circle at 86% 14%, rgba(45, 215, 110, .14), transparent 130px),
    linear-gradient(135deg, #102b43, #071722 72%);
}
.holiday-music-copy { gap: 1px; }
.holiday-music-player {
  display: grid !important;
  grid-template-columns: auto minmax(85px, 1fr);
  gap: 11px;
  align-items: center;
  margin-top: 5px;
  overflow: visible !important;
}
.holiday-music-controls {
  display: inline-flex !important;
  align-items: center;
  gap: 4px;
  overflow: visible !important;
}
.holiday-music-controls i {
  width: 21px;
  height: 21px;
  display: grid;
  place-items: center;
  border-radius: 50%;
  color: #0d2639;
  background: #fff;
  font-size: 10px;
  font-style: normal;
  font-weight: 950;
}
.holiday-music-controls i.play { width: 27px; height: 27px; padding-left: 2px; font-size: 11px; }
.holiday-music-volume { margin-top: 0; }
@media (max-width: 520px) {
  .holiday-music-card { min-height: 169px !important; padding: 11px !important; }
  .holiday-music-link { min-height: 88px !important; }
  .holiday-music-player { grid-template-columns: auto minmax(56px, 1fr); gap: 7px; }
  .holiday-music-controls i { width: 18px; height: 18px; font-size: 8px; }
  .holiday-music-controls i.play { width: 23px; height: 23px; font-size: 9px; }
  .holiday-music-volume { grid-template-columns: auto minmax(30px, 1fr); gap: 5px; }
  .holiday-music-volume b { font-size: 7px; }
}

/* 1.8.0q – ein zusammenhängender Gästeauftritt und vollständig sichtbare Sprachauswahl. */
.guest-language-menu {
  right: auto;
  left: 0;
  width: 210px;
  max-width: calc(100vw - 32px);
}
.guest-language-menu button { min-width: 0; }
@media (min-width: 900px) {
  .guest-layout {
    width: min(920px, 100%);
    min-height: auto;
    grid-template-columns: minmax(0, 1fr);
    gap: 16px;
    align-items: start;
  }
  .guest-hero { min-height: min(760px, calc(100vh - 84px)); }
  .guest-panel {
    width: 100%;
    max-width: none;
    margin: 0;
    padding: 18px 20px;
    border-radius: 28px;
  }
  .guest-panel-heading { margin-bottom: 12px; }
  .guest-panel-heading h2 { font-size: 22px; }
  .guest-panel-heading p { font-size: 12px; }
  .guest-public-links {
    grid-template-columns: repeat(6, minmax(0, 1fr));
    gap: 8px;
  }
  .guest-public-links a { min-height: 70px; font-size: 11px; }
  .guest-more { margin-top: 14px; }
}
@media (max-width: 899px) {
  .guest-language-menu { width: min(210px, calc(100vw - 34px)); }
}

.home-photo-upload-cta {
  width: calc(100% - 18px);
  min-height: 62px;
  display: grid;
  grid-template-columns: 42px minmax(0,1fr) 18px;
  align-items: center;
  gap: 10px;
  margin: 8px 9px 10px;
  padding: 9px 12px;
  border: 1px solid #aed8ef;
  border-radius: 16px;
  background: linear-gradient(135deg,#e8f8ff,#fff8dc);
  color: #15365f;
  font: inherit;
  text-align: left;
  cursor: pointer;
}
.home-photo-upload-icon { width:42px;height:42px;display:grid;place-items:center;border-radius:13px;background:linear-gradient(135deg,#1479e5,#40b4e9);color:#fff;font-size:21px;box-shadow:0 6px 14px rgba(18,115,204,.2) }
.home-photo-upload-cta strong,.home-photo-upload-cta small{display:block}.home-photo-upload-cta strong{font-size:13.5px}.home-photo-upload-cta small{margin-top:3px;color:#627a91;font-size:10px;line-height:1.35}.home-photo-upload-cta>b{color:#0871dd;font-size:20px}

/* Event-Detailseite 1.8.1: gemeinsame Darstellung fuer Android und PWA. */
.event-page-card{width:100%;font:inherit;text-align:left;cursor:pointer}.event-page-card:focus-visible{outline:3px solid rgba(45,126,226,.35);outline-offset:2px}.event-page-more{display:inline-flex;margin-top:10px;color:#1769c5;font-size:12px}.event-row{width:100%;border:0;font:inherit;text-align:left;cursor:pointer}.event-detail-screen{width:min(1040px,100%);margin:0 auto;padding:8px 8px calc(96px + env(safe-area-inset-bottom));color:#12335f}.event-detail-head{display:flex;gap:13px;align-items:flex-start;padding:16px 12px}.event-detail-head>button{width:43px;height:43px;flex:0 0 43px;border:1px solid #cfe0ef;border-radius:14px;background:#fff;color:#194b8d;font-size:29px;box-shadow:0 8px 20px rgba(17,63,115,.1)}.event-detail-head span{font-size:11px;font-weight:900;letter-spacing:.12em;color:#2671d4}.event-detail-head h1{margin:5px 0 0;font-size:clamp(28px,6vw,47px);line-height:1.04}.event-status{display:inline-flex;padding:6px 9px;border-radius:999px;background:#e8f6ef;color:#168052;font-size:11px}.event-status.danger{background:#fff0f0;color:#b42136}.event-detail-hero{height:clamp(220px,42vw,440px);overflow:hidden;border:1px solid #cbdfef;border-radius:25px;background:linear-gradient(145deg,#1b4e9b,#51bbdf);box-shadow:0 18px 42px rgba(16,61,110,.14)}.event-detail-hero img{width:100%;height:100%;object-fit:cover}.event-detail-fallback{height:100%;display:grid;place-items:center;font-size:76px}.event-detail-grid{display:grid;grid-template-columns:minmax(0,1.45fr) minmax(270px,.75fr);gap:15px;margin-top:15px}.event-detail-grid>div,.event-detail-grid>aside{display:grid;gap:15px;align-content:start}.event-detail-card{padding:20px;border:1px solid #d0e1ef;border-radius:22px;background:#fff;box-shadow:0 11px 28px rgba(18,60,108,.08);min-width:0}.event-detail-card h2{margin:0 0 13px;font-size:21px}.event-detail-card p{line-height:1.55;overflow-wrap:anywhere}.event-detail-schedule>div{display:grid;gap:5px;padding:14px;border-radius:16px;background:#edf7ff}.event-detail-schedule strong{font-size:19px}.event-detail-schedule small{color:#6c809a}.event-detail-lead{font-size:17px;font-weight:700}.event-detail-copy{line-height:1.72;color:#3e5878;overflow-wrap:anywhere}.event-detail-map{height:240px;border-radius:16px;overflow:hidden;background:#e6f1f7}.event-detail-map-empty{padding:18px;border-radius:15px;background:#f0f6fb;color:#667b94;text-align:center}.event-detail-primary,.event-detail-links button,.event-detail-links a,.event-share-button,.event-invite-button{display:flex;width:100%;align-items:center;justify-content:center;margin-top:9px;padding:12px;border:0;border-radius:14px;background:linear-gradient(135deg,#2f72df,#4cb5dc);color:#fff;font:inherit;font-weight:900;text-decoration:none;cursor:pointer}.event-detail-links{display:grid;gap:7px}.event-detail-links button,.event-detail-links a{margin:0;background:#edf5ff;color:#174b8b}.event-attendance-actions{display:grid;gap:7px}.event-attendance-actions button{padding:11px;border:1px solid #cfe0ef;border-radius:13px;background:#f5f9fd;color:#184478;font-weight:850}.event-attendance-actions button.active{background:#1f70d4;color:#fff}.event-attendance-actions button:disabled,.event-detail-sticky button:disabled{opacity:.45}.event-share-button{background:#eef5ff;color:#174b8b}.event-participants{display:flex;gap:6px;overflow:auto;margin:12px 0}.event-participants button{border:0;background:transparent;min-width:52px}.event-participants button span{display:block;max-width:64px;overflow:hidden;text-overflow:ellipsis;font-size:9px}.event-detail-source small{display:block;margin-top:12px;color:#71839b;line-height:1.5}.event-detail-sticky{display:none}.event-invite-sheet{position:fixed;z-index:5000;inset:0;display:flex;align-items:flex-end;justify-content:center;padding:12px;background:rgba(8,27,57,.55);backdrop-filter:blur(7px)}.event-invite-sheet form{width:min(560px,100%);max-height:82vh;overflow:auto;padding:20px;border-radius:25px 25px calc(20px + env(safe-area-inset-bottom)) calc(20px + env(safe-area-inset-bottom));background:#fff;box-shadow:0 25px 70px rgba(4,28,60,.3)}.event-invite-sheet header{display:flex;justify-content:space-between;align-items:center}.event-invite-sheet header h2{margin:2px 0 10px}.event-invite-sheet header button{width:40px;height:40px;border:0;border-radius:50%;font-size:23px}.event-friend-list{display:grid;gap:6px;max-height:42vh;overflow:auto}.event-friend-list label{display:flex;align-items:center;gap:10px;padding:9px;border:1px solid #d8e5f0;border-radius:14px}.event-friend-list label>span:last-child{display:grid}.event-friend-list small{color:#71849b}.event-invite-sheet textarea{width:100%;margin-top:10px;padding:11px;border:1px solid #cfdfea;border-radius:13px;box-sizing:border-box;font:inherit}
@media(max-width:760px){.event-detail-grid{grid-template-columns:1fr}.event-detail-screen{padding-left:4px;padding-right:4px}.event-detail-head{padding-left:5px;padding-right:5px}.event-detail-head h1{font-size:31px}.event-detail-hero{border-radius:19px}.event-detail-card{padding:17px;border-radius:19px}.event-detail-sticky{position:fixed;display:grid;grid-template-columns:repeat(3,1fr);left:7px;right:7px;bottom:calc(70px + env(safe-area-inset-bottom));z-index:1900;padding:6px;border:1px solid #ccdeed;border-radius:17px;background:rgba(255,255,255,.96);box-shadow:0 15px 38px rgba(10,46,91,.23);backdrop-filter:blur(13px)}.event-detail-sticky button{border:0;background:transparent;padding:10px 3px;color:#153e74;font-weight:900;font-size:11px}}

/* 1.8.3 – Startseite besser lesbar, ohne Kacheln oder Abstaende umzubauen. */
.home-discovery-heading{font-size:12px!important;font-weight:950!important;line-height:1.3!important;letter-spacing:.16em!important}
.home-discovery-copy strong{font-size:15px!important;font-weight:950!important;line-height:1.22!important}
.home-discovery-copy small{font-size:12px!important;font-weight:650!important;line-height:1.35!important}
.section-head h2{font-size:22px!important;font-weight:950!important;line-height:1.14!important}
.section-head p{font-size:14px!important;line-height:1.4!important}
.link-button{font-size:15px!important;font-weight:950!important}
.mini-post strong,.mini-post h3{font-size:16px!important;font-weight:950!important;line-height:1.24!important}
.mini-post time{font-size:12px!important;line-height:1.3!important}
.mini-post p{font-size:13.5px!important;line-height:1.45!important}
.mini-post-social{font-size:11.5px!important}
.onsite-avatar>span:last-child{font-size:12px!important;font-weight:900!important}
.onsite-summary{font-size:12.5px!important;line-height:1.4!important}
.onsite-empty strong{font-size:14px!important}.onsite-empty small{font-size:11.5px!important;line-height:1.4!important}
.home-activity-copy strong{font-size:15px!important;line-height:1.3!important}
.home-activity-copy small{font-size:12px!important;line-height:1.35!important}
.home-activity-rating,.home-activity-count{font-size:11px!important}
.home-activity-empty strong{font-size:14px!important}.home-activity-empty small{font-size:11.5px!important;line-height:1.4!important}
.home-restaurant-copy>small{font-size:11px!important;line-height:1.25!important}
.home-restaurant-copy>strong{font-size:16px!important;line-height:1.25!important}
.home-restaurant-rating strong{font-size:12px!important}.home-restaurant-rating small{font-size:11px!important}
.home-blog-shade small{font-size:10px!important;line-height:1.25!important}
.home-blog-shade strong{font-size:13px!important;line-height:1.25!important}
.home-blog-shade em{font-size:10px!important;line-height:1.25!important}
.home-blog-empty>strong{font-size:14px!important}.home-blog-empty>small{font-size:11.5px!important;line-height:1.4!important}
.home-photo-upload-cta strong{font-size:15px!important;line-height:1.25!important}
.home-photo-upload-cta small{font-size:12px!important;line-height:1.4!important}
.empty{font-size:13px!important;line-height:1.45!important}
@media(max-width:420px){
  .home-discovery-heading{font-size:11.5px!important}
  .home-discovery-copy strong{font-size:14px!important}
  .home-discovery-copy small{font-size:11px!important}
  .section-head h2{font-size:21px!important}
  .section-head p{font-size:13px!important}
  .link-button{font-size:14px!important}
  .mini-post strong,.mini-post h3{font-size:15px!important}
  .mini-post time{font-size:11.5px!important}
  .mini-post p{font-size:13px!important}
  .home-blog-shade small{font-size:9px!important}
  .home-blog-shade strong{font-size:12px!important}
  .home-blog-shade em{font-size:9px!important}
}

/* Eventkalender 1.8.1b: aktuelle Termine zuerst, Vergangenes kompakt. */
.event-day-heading{margin:12px 2px 2px;padding:8px 11px;border-radius:12px;background:linear-gradient(90deg,#e8f4ff,#fff9dc);color:#17477f;font-size:14px;text-transform:capitalize}.event-past-events{margin-top:12px;border:1px solid #d5e3ee;border-radius:18px;background:#f7fafc;overflow:hidden}.event-past-events>summary{display:flex;align-items:center;justify-content:space-between;padding:15px;cursor:pointer;color:#4d6681;font-weight:900;list-style:none}.event-past-events>summary::-webkit-details-marker{display:none}.event-past-events>summary small{display:grid;place-items:center;min-width:26px;height:26px;border-radius:50%;background:#dfeaf3}.event-past-events>div{display:grid;gap:8px;padding:0 10px 10px}.event-past-events .event-page-card{opacity:.86;box-shadow:none}.event-page-date small{display:block;max-width:72px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.event-edit-button{display:flex;width:100%;align-items:center;justify-content:center;margin-top:9px;padding:12px;border:1px solid #b8d4eb;border-radius:14px;background:#fff;color:#174b8b;font:inherit;font-weight:900;cursor:pointer}
.event-editor-sheet{scrollbar-gutter:stable}.event-editor-group{display:grid;gap:11px;margin:0 12px 14px;padding:15px;border:1px solid #d3e3ef;border-radius:18px;background:rgba(255,255,255,.92)}.event-editor-group h3{margin:0;color:#153e73;font-size:17px}.event-editor-group label{margin:0}.event-editor-group input,.event-editor-group select,.event-editor-group textarea{box-sizing:border-box;width:100%}.event-editor-check{display:flex!important;align-items:center;gap:9px;padding:10px;border-radius:13px;background:#eff7fd}.event-editor-check input{width:20px!important;height:20px;flex:0 0 20px}.event-editor-check.danger{color:#9e2636;background:#fff1f2}.event-editor-dates{grid-template-columns:repeat(2,minmax(0,1fr))}.event-editor-info{margin-inline:12px}.event-editor-note{margin-inline:14px}@media(max-width:620px){.event-editor-group{margin-inline:8px;padding:12px}.event-editor-dates{grid-template-columns:1fr 1fr}.event-editor-sheet>header{position:sticky;top:0;z-index:2}}

/* 1.8.3 – Entdecken grosszuegig, bildstark und identisch in Android/PWA. */
.app-main:has(.discovery-screen){max-width:1180px}
.discovery-screen{gap:14px!important}
.discovery-hero{min-height:176px!important;padding:24px!important;grid-template-columns:44px minmax(0,1fr) 72px!important;border-radius:28px!important;background:radial-gradient(circle at 88% 16%,rgba(255,211,67,.54),transparent 17rem),linear-gradient(135deg,#f8fdff,#e5f6ff 62%,#fff5d2)!important;box-shadow:0 18px 44px rgba(19,67,111,.12)!important}
.discovery-hero>div>span{font-size:10px!important;letter-spacing:.16em!important}.discovery-hero h1{margin:7px 0!important;font-size:clamp(30px,4vw,48px)!important}.discovery-hero p{max-width:700px;font-size:14px!important;line-height:1.5!important}.discovery-hero>em{width:68px!important;height:68px!important;border-radius:21px!important;font-size:34px!important}
.discovery-tabs{gap:8px!important;padding:8px!important;border-radius:21px!important}.discovery-tabs button{min-height:72px!important;border-radius:16px!important;font-size:23px!important}.discovery-tabs button span{font-size:11px!important}.discovery-tabs button.active{background:linear-gradient(135deg,#e4f2ff,#fff7d7)!important;box-shadow:inset 0 0 0 1px #c6dff0}
.discovery-intro{padding:20px!important}.discovery-copy p{font-size:13px!important;line-height:1.65!important}.discovery-admin-edit{font-size:11px!important}
.discovery-list-head{padding:8px 4px!important}.discovery-list-head span{font-size:9px!important}.discovery-list-head h2{font-size:22px!important}.discovery-list-head button{min-height:43px!important;padding:0 16px!important;font-size:11px!important}
.discovery-place-list{grid-template-columns:repeat(2,minmax(0,1fr));gap:14px!important}
.discovery-place-card{grid-template-columns:1fr!important;grid-template-rows:auto 1fr;min-height:0!important;border-radius:24px!important;overflow:hidden;box-shadow:0 14px 34px rgba(18,65,108,.11)!important}
.discovery-place-media{position:relative;display:block;width:100%;height:230px;overflow:hidden;background:linear-gradient(145deg,#dff4ff,#fff3cc)}
.discovery-place-media>img,.discovery-place-media>.discovery-place-placeholder{display:block;width:100%!important;height:100%!important;min-height:0!important;object-fit:cover;transition:transform .3s ease}
.discovery-place-card:hover .discovery-place-media>img{transform:scale(1.025)}
.discovery-place-media>.discovery-place-placeholder{display:grid;place-items:center;font-size:58px}
.discovery-place-media>span:last-child{position:absolute;left:13px;bottom:12px;padding:6px 10px;border-radius:999px;background:rgba(5,34,66,.78);color:#fff;font-size:10px;font-weight:950;backdrop-filter:blur(7px)}
.discovery-place-body{display:flex;min-height:265px;flex-direction:column;padding:18px!important}
.discovery-place-title span{font-size:9px!important}.discovery-place-title h2{margin-top:4px!important;font-size:22px!important;line-height:1.15}.discovery-place-title button{width:38px!important;height:38px!important;border-radius:12px!important;font-size:17px}
.discovery-place-address{font-size:11px!important;line-height:1.45}.discovery-place-description{font-size:12px!important;line-height:1.55!important;-webkit-line-clamp:4!important}
.discovery-place-chips{gap:6px!important;margin-top:10px!important}.discovery-place-chips span{padding:6px 8px!important;font-size:9px!important}.discovery-place-chips .discovery-rating-chip{color:#855700;background:#fff6d8}.discovery-place-chips .discovery-view-chip{color:#315b88;background:#eaf4ff}
.discovery-place-actions{margin-top:12px!important}.discovery-place-actions button{min-height:36px!important;padding:0 11px!important;font-size:9px!important}
.discovery-place-profile-link{margin-top:auto!important;padding-top:13px;font-size:11px!important}
@media(max-width:760px){.app-main:has(.discovery-screen){max-width:760px}.discovery-screen{gap:10px!important}.discovery-hero{min-height:145px!important;padding:16px!important;grid-template-columns:38px minmax(0,1fr) 54px!important}.discovery-hero h1{font-size:28px!important}.discovery-hero p{font-size:11px!important}.discovery-hero>em{width:52px!important;height:52px!important;font-size:27px!important}.discovery-tabs button{min-height:60px!important}.discovery-place-list{grid-template-columns:1fr}.discovery-place-media{height:190px}.discovery-place-body{min-height:0;padding:15px!important}.discovery-place-title h2{font-size:19px!important}.discovery-place-description{font-size:11px!important}.discovery-copy p{font-size:11px!important}}
@media(max-width:390px){.discovery-place-card{grid-template-columns:1fr!important}.discovery-place-media{height:165px}.discovery-hero h1{font-size:24px!important}.discovery-tabs button span{font-size:9px!important}}

/* 1.8.3 – lebendige Blogkarten mit mehreren optimierten Bildern. */
.home-blog-media{position:absolute;inset:0;display:block;overflow:hidden;background:#123b65}
.home-blog-media>img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;opacity:0;animation:mr183BlogSlides 16s infinite;animation-delay:calc(var(--slide) * 4s)}
.home-blog-media.is-1>img{opacity:1;animation:none}
@keyframes mr183BlogSlides{0%,22%{opacity:1;transform:scale(1)}28%,94%{opacity:0;transform:scale(1.045)}100%{opacity:1;transform:scale(1)}}
@media(prefers-reduced-motion:reduce){.home-blog-media>img{animation:none}.home-blog-media>img:first-child{opacity:1}}

/* 1.8.3b – Entdecken kompakt halten: grosse Bilder ohne Karten aufzublasen. */
.discovery-place-list{grid-template-columns:1fr!important;gap:12px!important}
.discovery-place-card{display:grid!important;grid-template-columns:220px minmax(0,1fr)!important;grid-template-rows:190px!important;min-height:190px!important;background:linear-gradient(135deg,#fff 0%,#f7fbff 72%,#fff9e8 100%)!important}
.discovery-place-media{grid-column:1!important;grid-row:1!important;width:220px!important;height:190px!important;min-width:0!important;overflow:hidden!important}
.discovery-place-media>img,.discovery-place-media>.discovery-place-placeholder{display:block!important;width:100%!important;max-width:none!important;height:100%!important;min-height:0!important;object-fit:cover!important}
.discovery-place-media>.discovery-place-placeholder{display:grid!important}
.discovery-place-body{grid-column:2!important;grid-row:1!important;min-width:0!important;min-height:0!important;padding:16px 18px!important}
.discovery-place-title h2{font-size:20px!important}.discovery-place-description{-webkit-line-clamp:2!important}
.discovery-place-profile-link{padding-top:7px!important}
@media(min-width:1080px){.discovery-place-list{grid-template-columns:repeat(2,minmax(0,1fr))!important}.discovery-place-card{grid-template-columns:190px minmax(0,1fr)!important}.discovery-place-media{width:190px!important}}
@media(max-width:620px){.discovery-hero{min-height:126px!important;padding:14px!important}.discovery-intro{padding:14px!important}.discovery-place-card{grid-template-columns:1fr!important;grid-template-rows:155px auto!important}.discovery-place-media{grid-column:1!important;grid-row:1!important;width:100%!important;height:155px!important}.discovery-place-body{grid-column:1!important;grid-row:2!important;padding:13px!important}.discovery-place-description{-webkit-line-clamp:2!important}.discovery-place-title h2{font-size:18px!important}}

/* 1.8.3b – ruhige, vollflächige Blogvorschau ohne leere Restfläche. */
.home-blog-grid{grid-template-columns:repeat(auto-fit,minmax(190px,1fr))!important;gap:8px!important;padding:8px!important}
.home-blog-tile{aspect-ratio:16/10!important;min-height:135px!important}
.home-blog-media>img{animation:none!important;opacity:0!important}
.home-blog-media>img:first-child{opacity:1!important}
@media(max-width:520px){.home-blog-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important}.home-blog-tile{min-height:128px!important}.home-blog-shade small{font-size:7.5px!important}.home-blog-shade strong{font-size:11px!important}}

/* 1.8.3c – Entdecken: stabile, kompakte Karten ohne Bild-/Textspruenge. */
.discovery-place-list{
  display:grid!important;
  grid-template-columns:1fr!important;
  gap:12px!important;
}
.discovery-place-card{
  display:flex!important;
  flex-direction:row!important;
  align-items:stretch!important;
  min-width:0!important;
  min-height:184px!important;
  height:auto!important;
  overflow:hidden!important;
  border:1px solid #cbdfea!important;
  border-radius:20px!important;
  background:#fff!important;
  box-shadow:0 10px 25px rgba(19,62,104,.09)!important;
}
.discovery-place-media{
  position:relative!important;
  flex:0 0 36%!important;
  width:36%!important;
  height:auto!important;
  min-height:184px!important;
  overflow:hidden!important;
  background:#eaf4fb!important;
}
.discovery-place-media>img,
.discovery-place-media>.discovery-place-placeholder{
  position:absolute!important;
  inset:0!important;
  display:block!important;
  width:100%!important;
  max-width:none!important;
  height:100%!important;
  min-height:0!important;
  margin:0!important;
  object-fit:cover!important;
}
.discovery-place-media>.discovery-place-placeholder{display:grid!important;place-items:center!important}
.discovery-place-media>span:last-child{
  position:absolute!important;
  z-index:2!important;
  left:10px!important;
  right:auto!important;
  bottom:10px!important;
  max-width:calc(100% - 20px)!important;
  padding:5px 8px!important;
  overflow:hidden!important;
  border-radius:999px!important;
  background:rgba(8,39,73,.82)!important;
  color:#fff!important;
  font-size:9px!important;
  font-weight:900!important;
  line-height:1.2!important;
  text-overflow:ellipsis!important;
  white-space:nowrap!important;
}
.discovery-place-body{
  display:flex!important;
  flex:1 1 auto!important;
  flex-direction:column!important;
  min-width:0!important;
  min-height:184px!important;
  padding:15px 16px!important;
}
.discovery-place-title h2{font-size:19px!important;line-height:1.15!important}
.discovery-place-address{font-size:10px!important;line-height:1.35!important}
.discovery-place-description{font-size:11px!important;line-height:1.45!important;-webkit-line-clamp:2!important}
.discovery-place-chips{gap:5px!important;margin-top:8px!important}
.discovery-place-chips span{padding:5px 7px!important;font-size:8px!important}
.discovery-place-actions{gap:5px!important;margin-top:8px!important}
.discovery-place-actions button{min-height:32px!important;padding:0 9px!important;font-size:8px!important}
.discovery-place-profile-link{margin-top:auto!important;padding-top:8px!important;font-size:9px!important}
@media(min-width:1100px){
  .discovery-place-list{grid-template-columns:repeat(2,minmax(0,1fr))!important}
  .discovery-place-media{flex-basis:39%!important;width:39%!important}
}
@media(max-width:430px){
  .discovery-place-card{min-height:170px!important}
  .discovery-place-media{flex-basis:40%!important;width:40%!important;min-height:170px!important}
  .discovery-place-body{min-height:170px!important;padding:12px!important}
  .discovery-place-title h2{font-size:16px!important}
  .discovery-place-address{font-size:8px!important}
  .discovery-place-description{font-size:9px!important;-webkit-line-clamp:2!important}
  .discovery-place-actions{display:none!important}
  .discovery-place-chips span{font-size:7px!important}
}

/* 1.8.3d – Startseite: komplette Blogbilder und ruhige, moderne Vorschaukarten. */
.home-blog-wall{
  overflow:hidden!important;
  border-color:#c8ddea!important;
  background:linear-gradient(145deg,#fff 0%,#f9fcff 74%,#fff8dc 100%)!important;
  box-shadow:0 12px 30px rgba(19,62,104,.09)!important;
}
.home-blog-wall>.section-head{
  padding:16px 16px 11px!important;
}
.home-blog-grid{
  display:grid!important;
  grid-template-columns:repeat(4,minmax(0,1fr))!important;
  gap:10px!important;
  padding:10px!important;
  border-top:1px solid #d8e6f0!important;
  border-radius:0!important;
  background:linear-gradient(135deg,#edf6fc,#f7fbff 58%,#fff8df)!important;
}
.home-blog-tile{
  position:relative!important;
  display:grid!important;
  grid-template-rows:minmax(132px,1fr) auto!important;
  min-width:0!important;
  min-height:215px!important;
  aspect-ratio:auto!important;
  overflow:hidden!important;
  border:1px solid #c9ddea!important;
  border-radius:17px!important;
  background:#fff!important;
  color:#17385f!important;
  box-shadow:0 7px 18px rgba(16,58,96,.12)!important;
  transition:transform .18s ease,box-shadow .18s ease!important;
}
.home-blog-tile:hover{
  transform:translateY(-2px)!important;
  box-shadow:0 11px 24px rgba(16,58,96,.17)!important;
}
.home-blog-media{
  position:relative!important;
  inset:auto!important;
  display:block!important;
  width:100%!important;
  height:100%!important;
  min-height:132px!important;
  overflow:hidden!important;
  border-bottom:1px solid #d7e5ef!important;
  background:linear-gradient(145deg,#e9f3f9,#f8fbfd)!important;
}
.home-blog-media>img{
  position:absolute!important;
  inset:0!important;
  display:block!important;
  width:100%!important;
  height:100%!important;
  margin:auto!important;
  object-fit:contain!important;
  object-position:center center!important;
  opacity:0!important;
  transform:none!important;
  animation:none!important;
  background:linear-gradient(145deg,#e9f3f9,#f8fbfd)!important;
}
.home-blog-media>img:first-child{opacity:1!important}
.home-blog-placeholder{
  position:relative!important;
  min-height:132px!important;
  border-bottom:1px solid #d7e5ef!important;
}
.home-blog-shade{
  position:relative!important;
  inset:auto!important;
  display:grid!important;
  align-content:start!important;
  gap:4px!important;
  min-width:0!important;
  padding:11px 12px 13px!important;
  background:#fff!important;
  text-shadow:none!important;
}
.home-blog-shade small{
  color:#1689b5!important;
  font-size:9px!important;
  font-weight:950!important;
  letter-spacing:.055em!important;
}
.home-blog-shade strong{
  display:-webkit-box!important;
  overflow:hidden!important;
  color:#153b68!important;
  font-size:13px!important;
  font-weight:950!important;
  line-height:1.28!important;
  text-overflow:clip!important;
  white-space:normal!important;
  -webkit-box-orient:vertical!important;
  -webkit-line-clamp:2!important;
}
.home-blog-shade em{
  color:#647a91!important;
  font-size:9.5px!important;
  font-weight:800!important;
  line-height:1.3!important;
}
@media(max-width:720px){
  .home-blog-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important}
  .home-blog-tile{grid-template-rows:minmax(118px,1fr) auto!important;min-height:202px!important}
  .home-blog-media,.home-blog-placeholder{min-height:118px!important}
}
@media(max-width:360px){
  .home-blog-grid{grid-template-columns:1fr!important}
  .home-blog-tile{grid-template-rows:minmax(175px,1fr) auto!important}
  .home-blog-media,.home-blog-placeholder{min-height:175px!important}
}

/* 1.8.6-fix1 – Reichweite und bestätigte Hilfe klar getrennt darstellen. */
.home-impact-metrics{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:5px;
  margin:5px 0 7px;
}
.home-impact-metrics>span{
  display:grid;
  gap:1px;
  padding:5px 6px;
  border:1px solid rgba(255,255,255,.17);
  border-radius:9px;
  background:rgba(255,255,255,.09);
}
.home-impact-metrics b{font-size:11px}
.home-impact-metrics small{color:#d7eef8;font-size:7px;font-weight:800}
.home-impact-metrics>span:nth-child(3){grid-column:1/-1}

/* 1.8.6 – hilfreiche Tipps im Wochenrückblick. */
.home-roundup-tips{
  grid-column:1/-1;
  min-width:0;
  display:grid;
  grid-template-columns:auto repeat(2,minmax(0,1fr));
  align-items:stretch;
  gap:7px;
  min-height:72px;
  padding:9px;
  border:1px solid #d7e6ef;
  border-radius:16px;
  background:linear-gradient(145deg,#f7fbff,#fffdf5);
}
.home-roundup-tips>small{align-self:center;color:#1880c8;font-size:7.5px;font-weight:950;letter-spacing:.1em}
.home-roundup-tips>button{display:grid;grid-template-columns:28px minmax(0,1fr) auto;align-items:center;gap:7px;padding:8px;border:0;border-radius:11px;background:rgba(255,255,255,.88);color:#17385e;text-align:left}
.home-roundup-tips>button>span{font-size:18px}
.home-roundup-tips strong,.home-roundup-tips p{display:block;overflow:hidden;margin:0;text-overflow:ellipsis;white-space:nowrap}
.home-roundup-tips strong{font-size:9px}.home-roundup-tips p{margin-top:2px;color:#74869a;font-size:8px}
.home-roundup-tips i{color:#1675c8;font-style:normal;font-weight:900}.home-roundup-tips>p{grid-column:2/-1;align-self:center;margin:0;color:#71869a;font-size:9px}
@media(max-width:620px){.home-roundup-tips{grid-template-columns:1fr}.home-roundup-tips>small,.home-roundup-tips>p{grid-column:1}.home-roundup-tips>small{padding:2px 4px}}

/* 1.9.0 – Vollbild-Community-Karte und moderne Mitgliederkarte. */
.user-map-fullscreen{
  position:fixed!important;
  z-index:72!important;
  inset:68px 0 78px!important;
  display:block!important;
  padding:0!important;
  background:#dcecf5!important;
}
.user-map-stage,.user-map-stage>.user-map-board{
  position:absolute!important;
  inset:0!important;
  width:100%!important;
  height:100%!important;
  min-height:0!important;
  margin:0!important;
  border:0!important;
  border-radius:0!important;
}
.user-map-stage>.user-map-board .user-map-live{
  width:100%!important;
  height:100%!important;
  min-height:0!important;
  max-height:none!important;
}
.user-map-stage>.map-attribution{
  position:absolute;
  z-index:520;
  right:8px;
  bottom:4px;
  margin:0;
  padding:3px 6px;
  border-radius:7px;
  background:rgba(255,255,255,.86);
  color:#657990;
  font-size:7px;
  pointer-events:none;
}
.user-map-floating-toolbar{
  position:absolute;
  z-index:650;
  top:14px;
  left:14px;
  right:14px;
  display:flex;
  align-items:center;
  gap:8px;
  width:max-content;
  max-width:calc(100% - 28px);
  padding:7px;
  border:1px solid rgba(189,215,232,.85);
  border-radius:18px;
  background:rgba(255,255,255,.93);
  box-shadow:0 10px 28px rgba(12,47,89,.18);
  backdrop-filter:blur(13px);
  -webkit-backdrop-filter:blur(13px);
}
.user-map-floating-toolbar .user-map-home,.user-map-floating-toolbar .user-map-settings{
  display:flex;
  align-items:center;
  justify-content:center;
  gap:6px;
  min-height:39px;
  border:0;
  border-radius:12px;
  background:#eaf4ff;
  color:#145b9f;
  font-size:11px;
  font-weight:900;
}
.user-map-floating-toolbar .user-map-home{padding:0 12px}.user-map-floating-toolbar .user-map-settings{width:39px;padding:0}
.user-map-floating-toolbar .map-filter-row{display:flex;gap:5px;min-width:0;overflow-x:auto;scrollbar-width:none}
.user-map-floating-toolbar .map-filter-row::-webkit-scrollbar{display:none}
.user-map-floating-toolbar .map-filter-row button{min-height:39px;padding:0 13px;background:#f7fbff;font-size:10px}
.user-map-floating-toolbar .map-filter-row button.active{background:linear-gradient(135deg,#2478ed,#45a8df);border-color:transparent;color:#fff;box-shadow:0 4px 12px rgba(31,112,211,.25)}
.user-map-floating-toolbar>strong{padding:0 5px;color:#526d88;font-size:10px;white-space:nowrap}
.user-map-fullscreen .user-map-zoom-hint{bottom:14px;background:rgba(10,45,86,.88)}

.user-map-member-sheet{
  position:absolute!important;
  z-index:700!important;
  top:14px!important;
  right:14px!important;
  bottom:14px!important;
  left:auto!important;
  width:min(390px,calc(100% - 28px))!important;
  min-height:0!important;
  margin:0!important;
  padding:19px!important;
  overflow:auto!important;
  border:1px solid rgba(194,214,230,.92)!important;
  border-radius:25px!important;
  background:linear-gradient(150deg,rgba(255,255,255,.98),rgba(246,251,255,.97) 74%,rgba(255,247,218,.96))!important;
  box-shadow:0 22px 48px rgba(11,44,82,.27)!important;
  opacity:0;
  transform:translateX(32px);
  transition:opacity .18s ease,transform .18s ease;
}
.user-map-member-sheet.open{opacity:1;transform:translateX(0)}
.user-map-member-sheet[hidden]{display:none!important}
.user-map-sheet-handle{display:none}
.user-map-sheet-close{position:absolute;z-index:2;right:13px;top:13px;width:38px;height:38px;border:0;border-radius:50%;background:#eef4f8;color:#486681;font-size:16px}
.user-map-sheet-identity{display:grid;grid-template-columns:78px minmax(0,1fr);align-items:center;gap:13px;padding:10px 45px 16px 0;border-bottom:1px solid #dfe9f1}
.user-map-sheet-identity .avatar{--avatar:78px!important;font-size:20px}
.user-map-sheet-identity h2{margin:5px 0 4px;color:#12325e;font-size:23px;line-height:1.1}
.user-map-sheet-identity p{margin:0;color:#627a92;font-size:10px;font-weight:800;line-height:1.4}
.user-map-sheet-identity p i{color:#f1b400}
.user-map-role-badge{display:inline-flex;align-items:center;min-height:23px;padding:0 9px;border-radius:999px;background:#2479e8;color:#fff;font-size:8px;font-weight:950;letter-spacing:.04em;text-transform:uppercase}
.user-map-sheet-identity.role-admin .user-map-role-badge{background:#d92e3d}
.user-map-sheet-identity.role-moderator .user-map-role-badge{background:#eb7c22}
.user-map-sheet-identity.role-content .user-map-role-badge{background:#e8b400;color:#493800}
.user-map-sheet-facts{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;margin-top:14px}
.user-map-sheet-facts>span{position:relative;display:grid;grid-template-columns:28px minmax(0,1fr);gap:1px 7px;min-width:0;padding:11px;border:1px solid #dbe7f0;border-radius:14px;background:rgba(255,255,255,.86)}
.user-map-sheet-facts i{grid-row:1/3;align-self:center;display:grid;place-items:center;width:28px;height:28px;border-radius:9px;background:#eaf4ff;color:#2474d7}
.user-map-sheet-facts small{color:#7d8fa1;font-size:8px;font-weight:800}
.user-map-sheet-facts strong{overflow:hidden;color:#18375f;font-size:10px;text-overflow:ellipsis;white-space:nowrap}
.user-map-sheet-privacy{display:flex;align-items:center;gap:7px;margin:12px 0;padding:9px 10px;border-radius:12px;background:#eef9f3;color:#39725c;font-size:9px;font-weight:750;line-height:1.35}
.user-map-sheet-actions{display:grid;grid-template-columns:1.25fr 1fr;gap:8px}
.user-map-sheet-actions:has(>button:only-child){grid-template-columns:1fr}
.user-map-sheet-actions button{min-height:47px;border-radius:13px;font-size:11px;font-weight:900}
.user-map-sheet-primary{border:0;background:linear-gradient(135deg,#2775ed,#48ace0);color:#fff;box-shadow:0 7px 16px rgba(32,112,209,.23)}
.user-map-sheet-secondary{border:1px solid #cddfed;background:#fff;color:#1a609e}
.user-map-sheet-actions i{margin-right:5px}

.user-map-leaflet-pin.role-member{background:linear-gradient(145deg,#177ee7,#46a7eb)!important}
.user-map-leaflet-pin.role-admin{background:linear-gradient(145deg,#bd182b,#ed4b55)!important;box-shadow:0 0 0 3px rgba(208,32,51,.24),0 6px 14px rgba(80,15,26,.35)!important}
.user-map-leaflet-pin.role-moderator{background:linear-gradient(145deg,#d85b12,#f59a35)!important;box-shadow:0 0 0 3px rgba(231,111,26,.22),0 6px 14px rgba(90,44,10,.3)!important}
.user-map-leaflet-pin.role-content{background:linear-gradient(145deg,#d7a700,#ffd33a)!important;color:#443500!important;box-shadow:0 0 0 3px rgba(239,190,19,.24),0 6px 14px rgba(96,73,2,.3)!important}
.user-map-leaflet-pin.role-content>b{color:#443500!important}

/* 1.9.0 – Startseitenbeiträge: kompaktere Titel, Bild plus immer sichtbarer Pfeil. */
.mini-post{position:relative;grid-template-columns:40px minmax(0,1fr) auto!important;padding-right:2px!important}
.mini-post h3{font-size:14px!important;line-height:1.24!important}
.mini-post-tail{display:flex;align-items:center;gap:7px;min-width:22px}
.mini-post-tail .thumb{width:55px;height:55px;flex:0 0 55px}
.mini-post-arrow{display:grid;place-items:center;width:25px;height:38px;border-radius:10px;background:#eaf4ff;color:#096ce6;font-size:27px;font-weight:950;line-height:1;box-shadow:inset 0 0 0 1px #d7e8f5}
.mini-post:hover .mini-post-arrow,.mini-post:active .mini-post-arrow{background:#1475e8;color:#fff}

@media(max-width:620px){
  .user-map-fullscreen{inset:64px 0 70px!important}
  .user-map-floating-toolbar{top:9px;left:9px;right:9px;max-width:calc(100% - 18px);padding:5px;border-radius:15px}
  .user-map-floating-toolbar .user-map-home{width:39px;padding:0}.user-map-floating-toolbar .user-map-home span{display:none}
  .user-map-floating-toolbar .map-filter-row{max-width:calc(100vw - 155px)}
  .user-map-floating-toolbar .map-filter-row button{padding:0 10px;font-size:9px}
  .user-map-floating-toolbar>strong{display:none}
  .user-map-member-sheet{top:auto!important;right:7px!important;bottom:7px!important;left:7px!important;width:auto!important;max-height:min(72%,540px)!important;padding:16px 14px 14px!important;border-radius:24px!important;transform:translateY(28px)}
  .user-map-member-sheet.open{transform:translateY(0)}
  .user-map-sheet-handle{display:block;width:48px;height:5px;margin:-7px auto 8px;border-radius:999px;background:#9eacb9}
  .user-map-sheet-identity{grid-template-columns:68px minmax(0,1fr);padding:5px 42px 12px 0}
  .user-map-sheet-identity .avatar{--avatar:68px!important}.user-map-sheet-identity h2{font-size:20px}
  .user-map-sheet-facts{gap:6px;margin-top:10px}.user-map-sheet-facts>span{padding:9px 8px}.user-map-sheet-actions button{min-height:44px}
  .mini-post h3{font-size:13.5px!important}
  .mini-post-tail{gap:5px}.mini-post-tail .thumb{width:48px;height:48px;flex-basis:48px}.mini-post-arrow{width:21px;height:34px;font-size:24px}
}
@media(max-width:390px){
  .user-map-sheet-facts{grid-template-columns:1fr 1fr}.user-map-sheet-facts strong{font-size:9px}
  .mini-post{grid-template-columns:38px minmax(0,1fr) auto!important;gap:7px!important}.mini-post-tail .thumb{width:43px;height:43px;flex-basis:43px}
}
