:root {
  --zfsc-bg: #080910;
  --zfsc-panel: #11131d;
  --zfsc-panel-2: #171a27;
  --zfsc-card: #141725;
  --zfsc-text: #f7f7fb;
  --zfsc-muted: #a6abc2;
  --zfsc-border: rgba(255,255,255,.1);
  --zfsc-primary: #ff2d86;
  --zfsc-primary-2: #8a5cff;
  --zfsc-glow: rgba(255,45,134,.24);
  --zfsc-radius: 22px;
  --zfsc-max: 960px;
}

.zfsc-shell,
.zfsc-message-app {
  width: min(var(--zfsc-max), calc(100vw - 28px));
  margin: 0 auto;
  color: var(--zfsc-text);
}

.zfsc-app-page .site-main,
.zfsc-app-page main,
.zfsc-app-page .entry-content {
  max-width: none !important;
}

.zfsc-muted { color: var(--zfsc-muted); }

.zfsc-card,
.zfsc-post-card,
.zfsc-member-card,
.zfsc-notification-card {
  background: linear-gradient(180deg, rgba(255,255,255,.055), rgba(255,255,255,.025));
  border: 1px solid var(--zfsc-border);
  border-radius: var(--zfsc-radius);
  box-shadow: 0 18px 55px rgba(0,0,0,.28);
}

.zfsc-card { padding: 24px; }

.zfsc-btn,
.zfsc-follow-btn,
.zfsc-reaction-btn {
  appearance: none;
  border: 1px solid var(--zfsc-border);
  background: rgba(255,255,255,.07);
  color: var(--zfsc-text);
  border-radius: 999px;
  padding: 10px 16px;
  font-weight: 800;
  line-height: 1;
  text-decoration: none !important;
  cursor: pointer;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 8px;
}

.zfsc-btn:hover,
.zfsc-follow-btn:hover,
.zfsc-reaction-btn:hover,
.zfsc-btn-primary {
  background: linear-gradient(135deg, var(--zfsc-primary), var(--zfsc-primary-2));
  border-color: transparent;
  color: #fff;
  box-shadow: 0 12px 34px var(--zfsc-glow);
}

.zfsc-btn-small { padding: 8px 12px; font-size: 13px; }

.zfsc-avatar {
  border-radius: 999px;
  object-fit: cover;
  background: var(--zfsc-panel-2);
  border: 1px solid rgba(255,255,255,.16);
  flex: 0 0 auto;
}

.zfsc-header-actions {
  display: flex;
  align-items: center;
  gap: 12px;
}

.zfsc-icon-link,
.zfsc-header-avatar {
  width: 42px;
  height: 42px;
  border-radius: 999px;
  background: rgba(255,255,255,.07);
  border: 1px solid var(--zfsc-border);
  color: var(--zfsc-text) !important;
  text-decoration: none !important;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  position: relative;
}

.zfsc-header-avatar img { width: 40px; height: 40px; }
.zfsc-badge-wrap { position: relative; }
.zfsc-badge {
  position: absolute;
  top: -6px;
  right: -6px;
  min-width: 18px;
  height: 18px;
  border-radius: 999px;
  background: var(--zfsc-primary);
  color: #fff;
  font-size: 11px;
  line-height: 18px;
  text-align: center;
  font-weight: 900;
  border: 2px solid var(--zfsc-bg);
}

.zfsc-feed-head {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 20px;
  margin: 24px 0;
}

.zfsc-feed-head h1,
.zfsc-message-topbar h1,
.zfsc-conversation-topbar h1,
.zfsc-profile-info h1,
.zfsc-upload-shell h1,
.zfsc-notifications-shell h1 {
  color: var(--zfsc-text);
  margin: 0 0 4px;
  letter-spacing: -.03em;
}

.zfsc-feed-list {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 18px;
}

.zfsc-post-card {
  overflow: hidden;
  background-color: var(--zfsc-card);
}

.zfsc-post-author {
  display: flex;
  align-items: center;
  gap: 12px;
  padding: 15px 16px;
}

.zfsc-author-name,
.zfsc-post-author a {
  color: var(--zfsc-text) !important;
  font-weight: 900;
  text-decoration: none !important;
}

.zfsc-post-author time,
.zfsc-post-actions,
.zfsc-post-actions a {
  color: var(--zfsc-muted) !important;
}

.zfsc-post-media img {
  width: 100%;
  aspect-ratio: 1 / .72;
  object-fit: cover;
  display: block;
}

.zfsc-post-link {
  display: block;
  color: inherit !important;
  text-decoration: none !important;
}

.zfsc-post-body {
  padding: 18px;
}

.zfsc-post-body h2 {
  color: var(--zfsc-text);
  font-size: 20px;
  margin: 0 0 8px;
}

.zfsc-post-body p { color: var(--zfsc-muted); margin-bottom: 0; }
.zfsc-post-actions {
  display: flex;
  align-items: center;
  gap: 10px;
  flex-wrap: wrap;
  padding: 0 16px 16px;
}
.zfsc-reaction-btn.is-active { color: #fff; background: var(--zfsc-primary); border-color: transparent; }

.zfsc-form { display: grid; gap: 16px; }
.zfsc-form label { display: grid; gap: 8px; color: var(--zfsc-muted); font-weight: 800; }
.zfsc-form input,
.zfsc-form textarea,
.zfsc-form select,
.zfsc-search-form input {
  width: 100%;
  border: 1px solid var(--zfsc-border);
  background: rgba(0,0,0,.28);
  color: var(--zfsc-text);
  border-radius: 16px;
  padding: 13px 14px;
  outline: none;
}
.zfsc-form textarea { resize: vertical; }
.zfsc-form input:focus,
.zfsc-form textarea:focus,
.zfsc-form select:focus,
.zfsc-search-form input:focus {
  border-color: rgba(255,45,134,.7);
  box-shadow: 0 0 0 4px rgba(255,45,134,.12);
}

.zfsc-search-form {
  display: flex;
  gap: 10px;
  margin: 0 0 18px;
}
.zfsc-member-list,
.zfsc-notification-list {
  display: grid;
  gap: 12px;
}
.zfsc-member-card,
.zfsc-notification-card {
  padding: 14px;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
  text-decoration: none !important;
  color: var(--zfsc-text) !important;
}
.zfsc-member-main {
  color: var(--zfsc-text) !important;
  text-decoration: none !important;
  font-weight: 900;
  display: flex;
  align-items: center;
  gap: 12px;
  min-width: 0;
}
.zfsc-member-actions { display: flex; gap: 8px; flex-wrap: wrap; justify-content: flex-end; }

.zfsc-profile-hero {
  background: var(--zfsc-card);
  border: 1px solid var(--zfsc-border);
  border-radius: 28px;
  overflow: hidden;
  margin: 24px 0 18px;
}
.zfsc-profile-cover {
  height: 150px;
  background: radial-gradient(circle at 20% 0%, rgba(255,45,134,.45), transparent 35%), radial-gradient(circle at 80% 20%, rgba(138,92,255,.38), transparent 36%), linear-gradient(135deg, #151823, #0b0d15);
}
.zfsc-profile-row {
  display: flex;
  gap: 18px;
  align-items: flex-end;
  padding: 0 22px 18px;
  margin-top: -48px;
}
.zfsc-profile-avatar { width: 96px; height: 96px; border: 5px solid var(--zfsc-card); }
.zfsc-profile-info { min-width: 0; }
.zfsc-profile-stats { display: flex; gap: 18px; flex-wrap: wrap; color: var(--zfsc-muted); }
.zfsc-profile-stats b { color: var(--zfsc-text); }
.zfsc-profile-actions { padding: 0 22px 22px; display: flex; gap: 10px; }

/* ArenaCity-style messenger: mobile single column, no split screen, no left/right bubbles. */
.zfsc-message-app {
  --zfsc-chat-max: 480px;
  width: min(var(--zfsc-chat-max), calc(100vw - 20px));
  max-width: var(--zfsc-chat-max);
  min-height: calc(100vh - 150px);
  margin: 0 auto;
  padding: 0 0 92px;
  color: var(--zfsc-text);
}
.zfsc-message-list-screen,
.zfsc-conversation-screen {
  background: rgba(12,13,22,.72);
  border: 1px solid var(--zfsc-border);
  border-radius: 26px;
  box-shadow: 0 24px 70px rgba(0,0,0,.34);
  overflow: clip;
}
.zfsc-message-topbar,
.zfsc-conversation-topbar {
  position: sticky;
  top: 0;
  z-index: 15;
  display: flex;
  align-items: center;
  gap: 10px;
  padding: 14px;
  min-height: 68px;
  background: rgba(10,11,18,.96);
  border-bottom: 1px solid rgba(255,255,255,.08);
  backdrop-filter: blur(16px);
}
.zfsc-message-topbar { justify-content: space-between; }
.zfsc-message-topbar h1,
.zfsc-conversation-topbar h1 { font-size: 22px; }
.zfsc-message-topbar p,
.zfsc-conversation-topbar a { margin: 0; color: var(--zfsc-muted) !important; font-size: 12px; text-decoration: none !important; }
.zfsc-round-action,
.zfsc-back-link {
  width: 42px;
  height: 42px;
  border-radius: 999px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  background: linear-gradient(135deg, var(--zfsc-primary), var(--zfsc-primary-2));
  color: #fff !important;
  text-decoration: none !important;
  font-weight: 900;
  font-size: 24px;
  flex: 0 0 auto;
}
.zfsc-back-link { background: rgba(255,255,255,.08); border: 1px solid var(--zfsc-border); }
.zfsc-chat-list {
  display: grid;
  gap: 0;
  padding: 4px 0;
}
.zfsc-chat-row {
  color: var(--zfsc-text) !important;
  text-decoration: none !important;
  display: flex;
  align-items: center;
  gap: 11px;
  background: transparent;
  border: 0;
  border-radius: 0;
  padding: 12px 14px;
  min-width: 0;
  border-bottom: 1px solid rgba(255,255,255,.07);
}
.zfsc-chat-row:last-child { border-bottom: 0; }
.zfsc-chat-row:hover,
.zfsc-chat-row.has-unread {
  background: rgba(255,45,134,.11);
}
.zfsc-chat-row-main {
  flex: 1;
  min-width: 0;
  display: grid;
  gap: 4px;
}
.zfsc-chat-row-main strong { color: var(--zfsc-text); font-size: 14px; }
.zfsc-chat-row-main em,
.zfsc-chat-row-time {
  color: var(--zfsc-muted);
  font-style: normal;
  font-size: 12px;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
}
.zfsc-chat-row-time { flex: 0 0 auto; }
.zfsc-section-title { color: var(--zfsc-text); font-size: 15px; margin: 20px 14px 8px; }
.zfsc-message-thread {
  display: grid;
  gap: 9px;
  padding: 14px 14px 104px;
}
.zfsc-message-row {
  display: flex;
  align-items: center;
  gap: 8px;
  width: 100%;
  min-width: 0;
  padding: 2px 0;
}
.zfsc-message-row .zfsc-avatar {
  width: 32px !important;
  height: 32px !important;
}
.zfsc-message-line {
  min-width: 0;
  flex: 1;
  color: var(--zfsc-text);
  line-height: 1.35;
  font-size: 14px;
  background: transparent !important;
  border: 0 !important;
  border-radius: 0 !important;
  padding: 0 !important;
}
.zfsc-message-text {
  display: inline;
  color: var(--zfsc-text);
  overflow-wrap: anywhere;
}
.zfsc-message-time,
.zfsc-message-line time {
  display: inline;
  color: var(--zfsc-muted);
  font-size: 11px;
  margin-left: 7px;
  white-space: nowrap;
  vertical-align: baseline;
}
.zfsc-message-copy {
  min-width: 0;
  flex: 1;
  line-height: 1.35;
  color: var(--zfsc-text);
  background: transparent !important;
  padding: 0 !important;
  border-radius: 0 !important;
}
.zfsc-message-copy strong { display: none !important; }
.zfsc-message-copy time { display: inline; color: var(--zfsc-muted); font-size: 11px; margin-left: 7px; white-space: nowrap; }
.zfsc-message-form {
  position: sticky;
  bottom: 14px;
  z-index: 16;
  display: flex;
  align-items: flex-end;
  gap: 8px;
  margin: 0 10px;
  padding: 8px;
  background: rgba(17,19,29,.96);
  border: 1px solid var(--zfsc-border);
  border-radius: 24px;
  box-shadow: 0 18px 45px rgba(0,0,0,.38);
  backdrop-filter: blur(18px);
}
.zfsc-message-form textarea {
  flex: 1;
  min-height: 42px;
  max-height: 130px;
  resize: none;
  border: 0;
  outline: 0;
  border-radius: 18px;
  background: rgba(255,255,255,.075);
  color: var(--zfsc-text);
  padding: 11px 13px;
}
.zfsc-send-btn {
  border: 0;
  border-radius: 999px;
  background: linear-gradient(135deg, var(--zfsc-primary), var(--zfsc-primary-2));
  color: #fff;
  font-weight: 900;
  padding: 12px 16px;
  cursor: pointer;
}

.zfsc-empty { text-align: center; color: var(--zfsc-muted); }
.zfsc-empty h2 { color: var(--zfsc-text); }
.zfsc-notification-card { align-items: flex-start; flex-direction: column; }
.zfsc-notification-card time { color: var(--zfsc-muted); font-size: 13px; }
.zfsc-notification-card.is-unread { border-color: rgba(255,45,134,.38); }
.zfsc-pagination { display: flex; gap: 8px; justify-content: center; padding: 24px 0; }
.zfsc-pagination a { color: var(--zfsc-text) !important; text-decoration: none !important; border: 1px solid var(--zfsc-border); border-radius: 999px; padding: 7px 12px; }
.zfsc-pagination a.is-active { background: var(--zfsc-primary); border-color: transparent; }

.zfsc-bottom-nav {
  position: fixed;
  left: 50%;
  bottom: 12px;
  transform: translateX(-50%);
  width: min(520px, calc(100vw - 20px));
  z-index: 99;
  display: none;
  grid-template-columns: repeat(5, 1fr);
  gap: 4px;
  padding: 8px;
  border-radius: 24px;
  background: rgba(17,19,29,.93);
  border: 1px solid var(--zfsc-border);
  box-shadow: 0 20px 60px rgba(0,0,0,.46);
  backdrop-filter: blur(20px);
}
.zfsc-bottom-nav a {
  color: var(--zfsc-text) !important;
  text-decoration: none !important;
  display: grid;
  justify-items: center;
  gap: 2px;
  font-size: 11px;
  position: relative;
}
.zfsc-bottom-nav span { font-size: 18px; line-height: 1; }
.zfsc-bottom-nav em { font-style: normal; color: var(--zfsc-muted); }
.zfsc-bottom-nav .zfsc-badge { top: -5px; right: 12px; }

@media (max-width: 780px) {
  .zfsc-shell { width: min(100% - 20px, var(--zfsc-max)); }
  .zfsc-message-app { width: min(var(--zfsc-chat-max), calc(100vw - 20px)); }
  .zfsc-feed-list { grid-template-columns: 1fr; }
  .zfsc-feed-head { align-items: flex-start; }
  .zfsc-member-card { align-items: flex-start; }
  .zfsc-member-actions { flex-direction: column; align-items: stretch; }
  .zfsc-profile-row { align-items: center; }
  .zfsc-bottom-nav { display: grid; }
  body.zfsc-app-page { padding-bottom: 88px; }
}

@media (max-width: 520px) {
  .zfsc-feed-head { flex-direction: column; }
  .zfsc-search-form { flex-direction: column; }
  .zfsc-member-card { flex-direction: column; }
  .zfsc-profile-row { flex-direction: column; text-align: center; align-items: center; }
  .zfsc-profile-actions { justify-content: center; flex-wrap: wrap; }
  .zfsc-profile-stats { justify-content: center; }
  .zfsc-chat-row-time { display: none; }
  .zfsc-conversation-topbar h1 { font-size: 20px; }
  .zfsc-message-form { bottom: 78px; }
}

/* v1.0.2 Messages list: mobile app inbox first, then tap a user to open the dark conversation screen. */
.zfsc-message-app.zfsc-message-list-screen.zfsc-ios-message-list {
  --zfsc-chat-max: 430px;
  width: min(var(--zfsc-chat-max), calc(100vw - 20px));
  max-width: var(--zfsc-chat-max);
  min-height: min(760px, calc(100vh - 110px));
  padding: 0;
  position: relative;
  overflow: hidden;
  background: #fff;
  color: #161821;
  border: 1px solid rgba(0,0,0,.07);
  border-radius: 28px;
  box-shadow: 0 24px 70px rgba(0,0,0,.28);
}

.zfsc-ios-message-header {
  display: grid;
  grid-template-columns: 72px 1fr 72px;
  align-items: center;
  gap: 6px;
  min-height: 58px;
  padding: 8px 13px 6px;
  background: rgba(255,255,255,.96);
  border-bottom: 1px solid #ececf2;
  position: sticky;
  top: 0;
  z-index: 15;
}

.zfsc-ios-message-header h1 {
  margin: 0;
  color: #101018;
  font-size: 17px;
  font-weight: 900;
  text-align: center;
  letter-spacing: -.02em;
}

.zfsc-ios-edit,
.zfsc-ios-menu {
  color: #11131b !important;
  text-decoration: none !important;
  font-size: 15px;
  font-weight: 700;
  display: inline-flex;
  align-items: center;
  min-height: 38px;
}

.zfsc-ios-menu {
  justify-content: flex-end;
  font-size: 21px;
  line-height: 1;
}

.zfsc-ios-message-list .zfsc-chat-list {
  display: grid;
  gap: 0;
  padding: 0 0 72px;
  background: #fff;
}

.zfsc-ios-message-list .zfsc-chat-row {
  min-height: 74px;
  padding: 10px 12px 10px 4px;
  gap: 10px;
  color: #151720 !important;
  background: #fff;
  border-bottom: 1px solid #ececf2;
  border-radius: 0;
  position: relative;
}

.zfsc-ios-message-list .zfsc-chat-row:hover,
.zfsc-ios-message-list .zfsc-chat-row.has-unread {
  background: #f7f7fb;
}

.zfsc-ios-message-list .zfsc-chat-row .zfsc-avatar {
  width: 52px !important;
  height: 52px !important;
  border: 0;
  background: #e9eaf2;
}

.zfsc-ios-message-list .zfsc-unread-dot {
  width: 8px;
  height: 8px;
  border-radius: 999px;
  background: #0a84ff;
  opacity: 0;
  flex: 0 0 8px;
  margin-left: 0;
}

.zfsc-ios-message-list .zfsc-chat-row.has-unread .zfsc-unread-dot {
  opacity: 1;
}

.zfsc-ios-message-list .zfsc-chat-row-main {
  display: grid;
  gap: 2px;
  min-width: 0;
  flex: 1 1 auto;
}

.zfsc-ios-message-list .zfsc-chat-row-main strong {
  color: #151720;
  font-size: 16px;
  font-weight: 900;
  line-height: 1.13;
  overflow: hidden;
  white-space: nowrap;
  text-overflow: ellipsis;
}

.zfsc-ios-message-list .zfsc-chat-row-main em {
  color: #858792;
  font-style: normal;
  font-size: 14px;
  line-height: 1.18;
  white-space: normal;
  overflow: hidden;
  display: -webkit-box;
  -webkit-line-clamp: 2;
  -webkit-box-orient: vertical;
}

.zfsc-ios-message-list .zfsc-chat-row-meta {
  flex: 0 0 auto;
  display: inline-flex;
  align-items: center;
  justify-content: flex-end;
  gap: 5px;
  align-self: flex-start;
  padding-top: 5px;
  max-width: 98px;
}

.zfsc-ios-message-list .zfsc-chat-row-time {
  display: inline !important;
  color: #a7a8b1;
  font-size: 13px;
  line-height: 1;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
}

.zfsc-ios-message-list .zfsc-chat-chevron {
  color: #c8c9d0;
  font-size: 22px;
  line-height: .75;
  font-weight: 300;
}

.zfsc-ios-message-list .zfsc-start-row .zfsc-unread-dot {
  opacity: 0;
}

.zfsc-floating-compose {
  position: absolute;
  left: 16px;
  bottom: 16px;
  z-index: 16;
  width: 54px;
  height: 54px;
  border-radius: 999px;
  background: #0a84ff;
  color: #fff !important;
  text-decoration: none !important;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  font-size: 22px;
  box-shadow: 0 12px 30px rgba(10,132,255,.36);
}

.zfsc-ios-empty {
  margin: 18px 14px;
  color: #6e707c;
  background: #f7f7fb;
  border-color: #ececf2;
  box-shadow: none;
}

.zfsc-ios-empty h2 {
  color: #171923;
}

.zfsc-message-app.zfsc-conversation-screen {
  --zfsc-chat-max: 920px;
  width: min(var(--zfsc-chat-max), calc(100vw - 24px));
  max-width: var(--zfsc-chat-max);
}

@media (max-width: 520px) {
  .zfsc-message-app.zfsc-message-list-screen.zfsc-ios-message-list {
    width: calc(100vw - 12px);
    min-height: calc(100vh - 84px);
    border-radius: 22px;
  }

  .zfsc-ios-message-list .zfsc-chat-row {
    padding-right: 8px;
  }

  .zfsc-ios-message-list .zfsc-chat-row-meta {
    max-width: 74px;
  }

  .zfsc-ios-message-list .zfsc-chat-row-time {
    font-size: 12px;
  }
}

/* ZF Social Offender System 1.1.0 */
.zfsc-stats-bar{width:min(1280px,calc(100vw - 36px));margin:24px auto 34px;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px;color:#0f172a}.zfsc-stat-card{min-height:112px;border:1px solid rgba(255,255,255,.75);border-radius:18px;background:rgba(255,255,255,.62);backdrop-filter:blur(10px);display:flex;flex-direction:column;align-items:center;justify-content:center;box-shadow:0 15px 40px rgba(0,0,0,.12)}.zfsc-stat-card span{font-size:25px}.zfsc-stat-card strong{font-size:34px;line-height:1;font-weight:950;margin:8px 0;color:#0e1729}.zfsc-stat-card em{font-style:normal;color:#64748b;font-size:18px}.zfsc-offender-strip-wrap{width:min(1280px,calc(100vw - 36px));margin:0 auto 24px;overflow-x:auto;padding:4px 0 14px}.zfsc-offender-strip{display:flex;align-items:center;gap:16px;min-height:122px}.zfsc-offender-avatar-card{appearance:none;border:0;border-radius:12px;background:transparent;padding:0;cursor:pointer;flex:0 0 auto;box-shadow:0 12px 28px rgba(0,0,0,.16);transition:transform .16s ease,box-shadow .16s ease}.zfsc-offender-avatar-card:hover{transform:translateY(-3px);box-shadow:0 20px 40px rgba(0,0,0,.22)}.zfsc-offender-avatar-card img{display:block;width:118px;height:118px;object-fit:cover;border-radius:12px;background:#e2e8f0}.zfsc-empty-strip{color:var(--zfsc-muted);padding:20px;border:1px dashed var(--zfsc-border);border-radius:18px;width:100%}.zfsc-offender-grid-cards{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:26px}.zfsc-offender-card{border-radius:0;overflow:hidden;background:linear-gradient(180deg,rgba(255,255,255,.10),rgba(255,255,255,.04));box-shadow:0 18px 48px rgba(0,0,0,.18);border:0;color:var(--zfsc-text)}.zfsc-offender-card-media{display:block;text-decoration:none!important}.zfsc-offender-card-media img{width:100%;height:260px;object-fit:cover;display:block;background:#e7eef7}.zfsc-no-image{height:260px;background:#f1f5f9;color:#64748b;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:12px;text-align:center;font-weight:950}.zfsc-no-image b{font-size:130px;line-height:.65;color:#cbd5e1}.zfsc-no-image em{font-style:normal;font-size:24px}.zfsc-offender-card-body{padding:28px 24px 24px}.zfsc-offender-badge{display:inline-flex;align-items:center;border-radius:999px;background:#ff764f;color:#fff;font-size:18px;font-weight:950;padding:9px 18px;margin-bottom:16px}.zfsc-offender-card h2{font-size:34px;line-height:1.05;letter-spacing:-.05em;margin:0 0 12px;color:var(--zfsc-text)}.zfsc-offender-card h2 a{color:inherit!important;text-decoration:none!important}.zfsc-offender-location{color:#0d2b5d;font-weight:800;text-transform:uppercase;letter-spacing:.02em}.zfsc-offender-excerpt{font-size:18px;line-height:1.6;color:#10244e}.zfsc-offender-card-actions{display:flex;align-items:center;gap:8px;flex-wrap:wrap;margin-top:18px}.zfsc-offender-react-btn{appearance:none;border:1px solid var(--zfsc-border);background:rgba(255,255,255,.08);color:var(--zfsc-text);border-radius:999px;padding:8px 12px;font-weight:900;cursor:pointer}.zfsc-info-count{font-weight:900;color:#fff;background:rgba(0,0,0,.26);border-radius:999px;padding:8px 11px}.zfsc-offender-form-shell,.zfsc-single-offender-shell,.zfsc-watch-page{--zfsc-max:1040px}.zfsc-form-head h1,.zfsc-form-section-title h2{margin:0;color:var(--zfsc-text);letter-spacing:-.03em}.zfsc-form-head p,.zfsc-form-section-title p{margin:6px 0 0}.zfsc-form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}.zfsc-form-grid .zfsc-full{grid-column:1/-1}.zfsc-upload-drop{border:2px dashed rgba(255,255,255,.2);border-radius:22px;padding:18px;text-align:center;background:rgba(255,255,255,.035);cursor:pointer}.zfsc-upload-drop input{margin:10px 0;background:transparent;border:0;padding:0}.zfsc-upload-drop b,.zfsc-upload-drop em{display:block}.zfsc-upload-drop em{font-style:normal;font-weight:700;color:var(--zfsc-muted);margin-top:4px}.zfsc-upload-preview{max-width:220px;border-radius:16px;margin:14px auto 0;display:block}.zfsc-success-card,.zfsc-inline-success{border-color:rgba(16,185,129,.5);background:rgba(16,185,129,.12);color:#d1fae5;margin-bottom:16px}.zfsc-inline-success{border-radius:14px;padding:10px 12px}.zfsc-single-offender-card,.zfsc-add-info-card,.zfsc-profile-updates-card,.zfsc-modern-comments{margin-bottom:18px}.zfsc-single-offender-card{background:linear-gradient(180deg,rgba(255,255,255,.06),rgba(255,255,255,.025));border:1px solid var(--zfsc-border);border-radius:28px;overflow:hidden}.zfsc-single-offender-top{display:grid;grid-template-columns:320px 1fr;gap:0}.zfsc-single-offender-image img,.zfsc-single-offender-image .zfsc-no-image{width:100%;height:100%;min-height:320px;object-fit:cover}.zfsc-single-offender-info{padding:28px}.zfsc-single-offender-info h1{font-size:42px;line-height:1;letter-spacing:-.055em;margin:0 0 18px;color:var(--zfsc-text)}.zfsc-single-meta-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.zfsc-single-meta-grid span{border:1px solid var(--zfsc-border);background:rgba(255,255,255,.04);border-radius:16px;padding:12px;color:var(--zfsc-muted)}.zfsc-single-meta-grid b{display:block;color:var(--zfsc-text);font-size:13px;text-transform:uppercase;letter-spacing:.04em;margin-bottom:4px}.zfsc-single-offender-details{padding:0 28px 28px}.zfsc-single-offender-details h2,.zfsc-add-info-card h2,.zfsc-profile-updates-card h2,.zfsc-modern-comments h2,.zfsc-watch-card h2{color:var(--zfsc-text);letter-spacing:-.03em;margin-top:0}.zfsc-info-timeline{display:grid;gap:12px}.zfsc-info-item{display:flex;gap:12px;border:1px solid var(--zfsc-border);border-radius:18px;padding:14px;background:rgba(255,255,255,.04)}.zfsc-info-item p{margin:5px 0;color:var(--zfsc-text)}.zfsc-info-item time,.zfsc-comment-head time{color:var(--zfsc-muted);font-size:13px}.zfsc-modern-comment-form{border:1px solid var(--zfsc-border);border-radius:22px;padding:14px;background:rgba(255,255,255,.035);margin:0 0 18px}.zfsc-comment-form-row{display:flex;gap:12px;align-items:flex-start}.zfsc-modern-comment-form textarea{width:100%;background:rgba(0,0,0,.25);color:var(--zfsc-text);border:1px solid var(--zfsc-border);border-radius:16px;padding:12px 14px}.zfsc-modern-comment-form .zfsc-btn{margin-top:10px}.zfsc-comment-tree{display:grid;gap:14px}.zfsc-modern-comment{display:flex;gap:12px;padding:14px;border:1px solid var(--zfsc-border);border-radius:18px;background:rgba(255,255,255,.035)}.zfsc-comment-replies{display:grid;gap:10px;margin-left:54px}.zfsc-comment-level-2{background:rgba(255,255,255,.025)}.zfsc-comment-body{flex:1;min-width:0}.zfsc-comment-head{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.zfsc-comment-text p{margin:.4em 0;color:var(--zfsc-text)}.zfsc-comment-reactions{display:flex;gap:6px;flex-wrap:wrap;margin-top:8px}.zfsc-comment-reactions button{border:1px solid var(--zfsc-border);background:rgba(255,255,255,.06);border-radius:999px;color:var(--zfsc-text);padding:6px 9px;cursor:pointer}.zfsc-comment-reactions button.is-active{background:linear-gradient(135deg,var(--zfsc-primary),var(--zfsc-primary-2));border-color:transparent}.zfsc-reply-toggle{border:0;background:transparent;color:var(--zfsc-muted);font-weight:900;cursor:pointer;padding:8px 0}.zfsc-login-comment{margin:0 0 18px}.zfsc-modal{position:fixed;inset:0;z-index:100000;display:flex;align-items:center;justify-content:center;padding:18px}.zfsc-modal[hidden]{display:none}.zfsc-modal-backdrop{position:absolute;inset:0;background:rgba(0,0,0,.65);backdrop-filter:blur(6px)}.zfsc-modal-panel{position:relative;z-index:1;width:min(560px,calc(100vw - 28px));max-height:calc(100vh - 34px);overflow:auto;background:#121426;color:var(--zfsc-text);border:1px solid rgba(255,255,255,.16);border-radius:28px;padding:22px;box-shadow:0 30px 80px rgba(0,0,0,.5)}.zfsc-modal-close{position:absolute;top:12px;right:12px;width:38px;height:38px;border-radius:999px;border:1px solid var(--zfsc-border);background:rgba(255,255,255,.08);color:#fff;font-size:28px;line-height:1;cursor:pointer}.zfsc-modal-image{display:block;width:100%;max-height:360px;object-fit:cover;border-radius:20px;margin-bottom:16px;background:#e2e8f0}.zfsc-modal-title{margin:0 42px 5px 0;color:var(--zfsc-text)}.zfsc-modal-name{margin:0 0 16px}.zfsc-modal-actions{display:flex;align-items:center;gap:10px;flex-wrap:wrap;margin-bottom:14px}.zfsc-watch-card{max-width:840px;margin:0 auto}.zfsc-watch-modal .zfsc-card{box-shadow:none;border:0;background:transparent;padding:0}.zfsc-watch-trigger{cursor:pointer}.zfsc-offender-header-actions .zfsc-watch-trigger{color:#ffbf3f!important}.zfsc-bottom-nav a[href*="/upload/"] em{font-size:0}.zfsc-bottom-nav a[href*="/upload/"] em:after{content:"Report";font-size:11px}.zfsc-bottom-nav a[href*="/feed/"] em{font-size:0}.zfsc-bottom-nav a[href*="/feed/"] em:after{content:"Offenders";font-size:11px}
@media (max-width:980px){.zfsc-offender-grid-cards{grid-template-columns:repeat(2,minmax(0,1fr))}.zfsc-single-offender-top{grid-template-columns:1fr}.zfsc-single-offender-image img,.zfsc-single-offender-image .zfsc-no-image{max-height:430px}.zfsc-stats-bar{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media (max-width:640px){.zfsc-stats-bar{width:calc(100vw - 20px);grid-template-columns:repeat(4,minmax(0,1fr));gap:8px}.zfsc-stat-card{min-height:82px;border-radius:14px}.zfsc-stat-card span{font-size:18px}.zfsc-stat-card strong{font-size:24px}.zfsc-stat-card em{font-size:12px}.zfsc-offender-grid-cards{grid-template-columns:1fr;gap:18px}.zfsc-form-grid,.zfsc-single-meta-grid{grid-template-columns:1fr}.zfsc-offender-card h2{font-size:30px}.zfsc-offender-card-media img,.zfsc-no-image{height:230px}.zfsc-comment-replies{margin-left:20px}.zfsc-header-actions{gap:7px}.zfsc-icon-link,.zfsc-header-avatar{width:38px;height:38px}.zfsc-header-actions .zfsc-icon-link:nth-of-type(2){display:none}}

/* 1.1.5 Get Notified popup / email subscribe fixes */
.zfsc-watch-modal{
    align-items:flex-start;
    justify-content:center;
    overflow-y:auto;
    padding-top:24px;
    padding-bottom:24px;
}
.admin-bar .zfsc-watch-modal{padding-top:70px;}
.zfsc-watch-modal .zfsc-modal-panel{
    width:min(860px,calc(100vw - 28px));
    max-height:none;
    margin:0 auto;
    overflow:visible;
}
.zfsc-watch-modal .zfsc-modal-close{z-index:3;}
.zfsc-watch-email-display{
    border:1px solid var(--zfsc-border);
    background:rgba(255,255,255,.04);
    border-radius:18px;
    padding:12px 14px;
}
.zfsc-watch-email-display strong{display:block;color:var(--zfsc-text);font-size:16px;margin-top:5px;word-break:break-word;}
.zfsc-watch-email-display small{display:block;color:var(--zfsc-muted);font-weight:700;margin-top:3px;}
.zfsc-check-row{display:flex!important;align-items:flex-start;gap:10px;border:1px solid var(--zfsc-border);background:rgba(255,255,255,.035);border-radius:18px;padding:12px 14px;}
.zfsc-check-row input{width:auto!important;min-width:18px;margin-top:3px;}
.zfsc-check-row span{margin:0!important;line-height:1.4;}
.zfsc-watch-login{border:1px solid var(--zfsc-border);border-radius:20px;padding:16px;background:rgba(255,255,255,.04);}
@media (max-width:782px){.admin-bar .zfsc-watch-modal{padding-top:86px;}}
@media (max-width:640px){
    .zfsc-watch-modal{padding:14px 10px 18px;padding-top:18px;}
    .admin-bar .zfsc-watch-modal{padding-top:68px;}
    .zfsc-watch-modal .zfsc-modal-panel{width:calc(100vw - 20px);border-radius:22px;padding:18px;}
}

/* 1.1.6 Navy/blue brand refresh, old-system layout restoration, floating buttons, comments popup, full-page messenger */
:root{
  --zfsc-bg:#f3f7ff;
  --zfsc-panel:#ffffff;
  --zfsc-panel-2:#e8f0ff;
  --zfsc-card:#ffffff;
  --zfsc-text:#0b2a66;
  --zfsc-muted:#51668f;
  --zfsc-border:rgba(11,42,102,.16);
  --zfsc-primary:#0b2a66;
  --zfsc-primary-2:#1e63d7;
  --zfsc-glow:rgba(30,99,215,.25);
}
.zfsc-card,.zfsc-post-card,.zfsc-member-card,.zfsc-notification-card,
.zfsc-offender-card,.zfsc-single-offender-card,.zfsc-add-info-card,.zfsc-profile-updates-card,.zfsc-modern-comments{
  background:rgba(255,255,255,.82)!important;
  color:var(--zfsc-text)!important;
  border-color:var(--zfsc-border)!important;
  box-shadow:0 18px 48px rgba(11,42,102,.11)!important;
}
.zfsc-muted,.zfsc-form label,.zfsc-comment-head time{color:var(--zfsc-muted)!important;}
.zfsc-btn-primary,.zfsc-btn:hover,.zfsc-follow-btn:hover,.zfsc-reaction-btn:hover,
.zfsc-send-btn,.zfsc-round-action,.zfsc-comment-reactions button.is-active{
  background:linear-gradient(135deg,#0b2a66,#1f6fd8 58%,#38bdf8)!important;
  color:#fff!important;
  box-shadow:0 12px 34px rgba(30,99,215,.24)!important;
}
.zfsc-btn,.zfsc-follow-btn,.zfsc-reaction-btn,.zfsc-offender-react-btn{
  color:var(--zfsc-text)!important;
  border-color:var(--zfsc-border)!important;
}
.zfsc-form input,.zfsc-form textarea,.zfsc-form select,.zfsc-search-form input,
.zfsc-modern-comment-form textarea,.zfsc-message-form textarea{
  background:#fff!important;
  color:var(--zfsc-text)!important;
  border-color:var(--zfsc-border)!important;
}
.zfsc-upload-drop,.zfsc-modern-comment-form,.zfsc-info-item,.zfsc-check-row{
  background:rgba(255,255,255,.72)!important;
  border-color:var(--zfsc-border)!important;
}
.zfsc-offender-badge{background:#0b2a66!important;color:#fff!important;}
.zfsc-offender-location,.zfsc-offender-excerpt,.zfsc-comment-text p,.zfsc-info-item p{color:#0b2a66!important;}
.zfsc-offender-strip-wrap{margin:18px auto 18px!important;padding:4px 0 14px!important;}
.zfsc-offender-avatar-card img{width:118px!important;height:118px!important;border-radius:12px!important;}
.zfsc-stats-bar{margin:10px auto 34px!important;}
.zfsc-offenders-title-head{justify-content:flex-start!important;margin-top:22px!important;}
.zfsc-offenders-title-head .zfsc-btn{display:none!important;}
.zfsc-comment-actions-line{display:flex;align-items:center;gap:10px;flex-wrap:wrap;margin-top:8px;}
.zfsc-comment-actions-line .zfsc-comment-reactions{margin-top:0;}
.zfsc-comment-view-link{display:inline-flex;align-items:center;justify-content:center;width:28px;height:28px;border-radius:999px;text-decoration:none!important;border:1px solid var(--zfsc-border);background:rgba(30,99,215,.08);color:#0b2a66!important;}
.zfsc-popup-comments{margin:16px 0;padding:14px;border:1px solid var(--zfsc-border);border-radius:18px;background:rgba(255,255,255,.74);max-height:330px;overflow:auto;}
.zfsc-popup-comments .zfsc-comment-tree{gap:10px;}
.zfsc-popup-comments .zfsc-modern-comment{padding:10px;border-radius:14px;background:#fff!important;}
.zfsc-popup-comments .zfsc-comment-replies{margin-left:24px;}
.zfsc-modal-panel{background:#fff!important;color:var(--zfsc-text)!important;border-color:var(--zfsc-border)!important;}
.zfsc-modal-title{color:var(--zfsc-text)!important;}
.zfsc-modal-close{background:#0b2a66!important;color:#fff!important;border-color:#1e63d7!important;}
.zfsc-floating-actions{position:fixed;inset:auto 24px 24px 24px;z-index:1000;pointer-events:none;display:block;}
.zfsc-float-btn{position:absolute;bottom:0;width:72px;height:72px;border-radius:999px;border:1px solid rgba(255,255,255,.9);background:linear-gradient(135deg,#0b2a66,#1e63d7);color:#fff!important;text-decoration:none!important;display:inline-flex;align-items:center;justify-content:center;font-size:34px;font-weight:950;box-shadow:0 18px 45px rgba(11,42,102,.28);pointer-events:auto;cursor:pointer;}
.zfsc-float-bell{left:0;font-size:28px;}
.zfsc-float-add{right:0;}
.zfsc-notification-popup-panel{width:min(480px,calc(100vw - 28px))!important;}
.zfsc-popup-notification-list{display:grid;gap:10px;margin:16px 0;}
.zfsc-bottom-nav{background:rgba(255,255,255,.96)!important;border-color:var(--zfsc-border)!important;box-shadow:0 16px 44px rgba(11,42,102,.18)!important;}
.zfsc-bottom-nav a,.zfsc-bottom-nav button{appearance:none;border:0;background:transparent;color:#0b2a66!important;text-decoration:none!important;display:grid;justify-items:center;align-items:center;font-size:0;position:relative;min-height:46px;cursor:pointer;}
.zfsc-bottom-nav span{font-size:23px!important;line-height:1;}
.zfsc-bottom-add span{width:42px;height:42px;border-radius:999px;background:linear-gradient(135deg,#0b2a66,#1e63d7);color:#fff;display:flex;align-items:center;justify-content:center;margin-top:-18px;box-shadow:0 10px 28px rgba(30,99,215,.28);}
.zfsc-message-app{--zfsc-chat-max:1180px!important;width:min(1180px,calc(100vw - 28px))!important;max-width:1180px!important;min-height:calc(100vh - 126px)!important;}
.zfsc-message-app.zfsc-message-list-screen.zfsc-ios-message-list{--zfsc-chat-max:620px!important;width:min(620px,calc(100vw - 20px))!important;max-width:620px!important;background:#fff!important;color:#0b2a66!important;}
.zfsc-message-app.zfsc-conversation-screen{width:min(1180px,calc(100vw - 28px))!important;max-width:1180px!important;background:rgba(255,255,255,.82)!important;color:#0b2a66!important;border-color:var(--zfsc-border)!important;}
.zfsc-conversation-topbar{background:#fff!important;border-color:var(--zfsc-border)!important;}
.zfsc-message-thread{min-height:calc(100vh - 300px);}
.zfsc-message-line,.zfsc-message-text,.zfsc-conversation-topbar h1{color:#0b2a66!important;}
.zfsc-message-time,.zfsc-conversation-topbar a{color:var(--zfsc-muted)!important;}
.zfsc-message-form{background:rgba(255,255,255,.95)!important;border-color:var(--zfsc-border)!important;box-shadow:0 16px 38px rgba(11,42,102,.14)!important;}
@media (min-width:781px){.zfsc-bottom-nav{display:none!important}.zfsc-floating-actions{display:block!important}}
@media (max-width:780px){.zfsc-floating-actions{display:none!important}.zfsc-bottom-nav{display:grid!important}.zfsc-message-app{width:calc(100vw - 14px)!important;min-height:calc(100vh - 92px)!important}.zfsc-offender-strip-wrap{width:calc(100vw - 20px)!important}.zfsc-offender-avatar-card img{width:92px!important;height:92px!important}.zfsc-stats-bar{width:calc(100vw - 20px)!important}}
.zfsc-profile-cover{background:radial-gradient(circle at 20% 0%,rgba(56,189,248,.34),transparent 35%),radial-gradient(circle at 80% 20%,rgba(30,99,215,.34),transparent 36%),linear-gradient(135deg,#0b2a66,#e8f0ff)!important;}
.zfsc-notification-card.is-unread{border-color:rgba(30,99,215,.42)!important;}


/* 1.1.7 Notifications must always overlay every page/form + 3-column members grid */
.zfsc-notification-popup{
  z-index:100500!important;
}
.zfsc-notification-popup .zfsc-modal-backdrop{
  z-index:100500!important;
}
.zfsc-notification-popup .zfsc-modal-panel,
.zfsc-notification-popup-panel{
  z-index:100501!important;
  position:relative!important;
}
.zfsc-member-list{
  display:grid!important;
  grid-template-columns:repeat(3,minmax(0,1fr))!important;
  gap:18px!important;
}
.zfsc-member-card{
  min-height:178px;
  align-items:center!important;
  justify-content:flex-start!important;
  flex-direction:column!important;
  text-align:center!important;
  padding:22px 16px!important;
}
.zfsc-member-main{
  flex-direction:column!important;
  justify-content:center!important;
  gap:10px!important;
  width:100%;
}
.zfsc-member-main .zfsc-avatar{
  width:74px!important;
  height:74px!important;
}
.zfsc-member-main span{
  font-size:18px;
  line-height:1.2;
}
.zfsc-member-actions{
  justify-content:center!important;
  width:100%;
  margin-top:14px;
}
.zfsc-message-me-btn{
  background:linear-gradient(135deg,#0b2a66,#1f6fd8 58%,#38bdf8)!important;
  color:#fff!important;
  border-color:transparent!important;
  box-shadow:0 10px 26px rgba(30,99,215,.20)!important;
}
@media (max-width:980px){
  .zfsc-member-list{grid-template-columns:repeat(2,minmax(0,1fr))!important;}
}
@media (max-width:640px){
  .zfsc-member-list{grid-template-columns:1fr!important;}
  .zfsc-member-card{min-height:auto;}
}


/* 1.1.8 Full-page messenger: full-width list/conversation, internal thread scrolling, desktop top navigation */
body.zfsc-messages-page .zfsc-message-app,
.zfsc-message-app{
  --zfsc-chat-max: none!important;
  width:min(1500px,calc(100vw - 28px))!important;
  max-width:none!important;
  height:calc(100dvh - 128px)!important;
  min-height:640px!important;
  margin:0 auto!important;
  padding:0!important;
  display:flex!important;
  flex-direction:column!important;
}
body.admin-bar.zfsc-messages-page .zfsc-message-app{
  height:calc(100dvh - 160px)!important;
}
.zfsc-message-app.zfsc-message-list-screen.zfsc-ios-message-list,
.zfsc-message-app.zfsc-conversation-screen{
  width:min(1500px,calc(100vw - 28px))!important;
  max-width:none!important;
  height:calc(100dvh - 128px)!important;
  min-height:640px!important;
  border-radius:26px!important;
  overflow:hidden!important;
  display:flex!important;
  flex-direction:column!important;
}
body.admin-bar .zfsc-message-app.zfsc-message-list-screen.zfsc-ios-message-list,
body.admin-bar .zfsc-message-app.zfsc-conversation-screen{
  height:calc(100dvh - 160px)!important;
}
.zfsc-ios-message-header,
.zfsc-conversation-topbar{
  flex:0 0 auto!important;
}
.zfsc-ios-message-list .zfsc-chat-list,
.zfsc-chat-list{
  flex:1 1 auto!important;
  min-height:0!important;
  overflow:auto!important;
  padding-bottom:92px!important;
}
.zfsc-message-thread{
  flex:1 1 auto!important;
  min-height:0!important;
  height:auto!important;
  overflow:auto!important;
  overscroll-behavior:contain!important;
  padding:18px 22px 18px!important;
}
.zfsc-message-form{
  position:relative!important;
  bottom:auto!important;
  flex:0 0 auto!important;
  margin:12px 18px 16px!important;
}
.zfsc-messenger-full-header{
  display:flex!important;
  align-items:center!important;
  gap:12px!important;
  padding:12px 16px!important;
  min-height:70px!important;
}
.zfsc-ios-message-header.zfsc-messenger-full-header{
  display:grid!important;
  grid-template-columns:1fr auto 1fr!important;
}
.zfsc-ios-message-header.zfsc-messenger-full-header h1{
  justify-self:center!important;
}
.zfsc-ios-message-header.zfsc-messenger-full-header .zfsc-ios-menu{
  justify-self:end!important;
}
.zfsc-messenger-top-actions{
  display:flex!important;
  align-items:center!important;
  gap:8px!important;
  justify-self:start!important;
}
.zfsc-conversation-topbar .zfsc-conversation-heading{
  min-width:0!important;
  flex:1 1 auto!important;
}
.zfsc-conversation-topbar .zfsc-messenger-top-actions{
  margin-left:auto!important;
  flex:0 0 auto!important;
}
.zfsc-messenger-top-actions a,
.zfsc-messenger-top-actions button{
  appearance:none!important;
  border:1px solid rgba(11,42,102,.15)!important;
  background:rgba(30,99,215,.08)!important;
  color:#0b2a66!important;
  border-radius:999px!important;
  min-height:42px!important;
  padding:8px 13px!important;
  display:inline-flex!important;
  align-items:center!important;
  gap:6px!important;
  text-decoration:none!important;
  font-weight:900!important;
  cursor:pointer!important;
  box-shadow:none!important;
}
.zfsc-messenger-top-actions a:hover,
.zfsc-messenger-top-actions button:hover{
  background:linear-gradient(135deg,#0b2a66,#1f6fd8 58%,#38bdf8)!important;
  color:#fff!important;
}
.zfsc-messenger-top-actions span{font-size:17px!important;line-height:1!important;}
.zfsc-messenger-top-actions em{font-style:normal!important;font-size:13px!important;}
@media (max-width:780px){
  body.zfsc-messages-page .zfsc-message-app,
  .zfsc-message-app,
  .zfsc-message-app.zfsc-message-list-screen.zfsc-ios-message-list,
  .zfsc-message-app.zfsc-conversation-screen{
    width:calc(100vw - 8px)!important;
    height:calc(100dvh - 150px)!important;
    min-height:420px!important;
    border-radius:18px!important;
  }
  body.admin-bar .zfsc-message-app.zfsc-message-list-screen.zfsc-ios-message-list,
  body.admin-bar .zfsc-message-app.zfsc-conversation-screen{
    height:calc(100dvh - 190px)!important;
  }
  .zfsc-messenger-top-actions{display:none!important;}
  .zfsc-ios-message-header.zfsc-messenger-full-header{
    grid-template-columns:44px 1fr 44px!important;
  }
  .zfsc-message-thread{padding:14px 12px 12px!important;}
  .zfsc-message-form{margin:10px 10px 12px!important;}
}

/* ZF Social Core 1.1.9 - comment form/reaction layout refinements */
@media (min-width: 781px){
  .zfsc-modern-comment-form{
    display:grid!important;
    grid-template-columns:minmax(0,1fr) auto!important;
    gap:12px 14px!important;
    align-items:center!important;
  }
  .zfsc-modern-comment-form .zfsc-comment-form-row{
    grid-column:1!important;
    grid-row:1!important;
    margin:0!important;
  }
  .zfsc-modern-comment-form > .zfsc-btn{
    grid-column:2!important;
    grid-row:1!important;
    justify-self:end!important;
    align-self:center!important;
    margin:0!important;
    min-height:48px!important;
    white-space:nowrap!important;
  }
  .zfsc-modern-comment-form textarea{
    min-height:74px!important;
  }
  .zfsc-comment-actions-line{
    display:grid!important;
    grid-template-columns:1fr auto 1fr!important;
    align-items:center!important;
    gap:10px!important;
    width:100%!important;
    margin-top:12px!important;
  }
  .zfsc-comment-actions-line .zfsc-comment-reactions{
    grid-column:2!important;
    justify-content:center!important;
    margin:0!important;
  }
  .zfsc-comment-actions-line .zfsc-reply-toggle{
    grid-column:3!important;
    justify-self:start!important;
    margin:0!important;
  }
}
@media (max-width: 780px){
  .zfsc-modern-comment-form > .zfsc-btn{
    display:block!important;
    width:100%!important;
    margin:10px 0 0!important;
  }
  .zfsc-comment-actions-line,
  .zfsc-comment-actions-line .zfsc-comment-reactions{
    justify-content:center!important;
  }
}


/* ZF Social Core 1.2.0 - profile fallback, sorting/filter UI, and stronger desktop comment layout */
.zfsc-offender-filterbar{
  display:flex!important;
  align-items:flex-end!important;
  gap:10px!important;
  flex-wrap:wrap!important;
  margin:0 0 20px!important;
  padding:12px!important;
  border:1px solid rgba(11,42,102,.12)!important;
  border-radius:18px!important;
  background:rgba(255,255,255,.72)!important;
  box-shadow:0 12px 30px rgba(11,42,102,.08)!important;
}
.zfsc-offender-filterbar label{display:grid!important;gap:5px!important;margin:0!important;min-width:130px!important;}
.zfsc-offender-filterbar label span{font-size:12px!important;font-weight:950!important;text-transform:uppercase!important;letter-spacing:.04em!important;color:#0b2a66!important;}
.zfsc-offender-filterbar select{min-height:40px!important;border:1px solid rgba(11,42,102,.16)!important;border-radius:999px!important;background:#fff!important;color:#0b2a66!important;padding:7px 12px!important;font-weight:800!important;}
@media (min-width:781px){
  .zfsc-modern-comments .zfsc-modern-comment-form{
    display:block!important;
    padding:14px!important;
  }
  .zfsc-modern-comments .zfsc-comment-form-row,
  .zfsc-popup-comments .zfsc-comment-form-row{
    display:grid!important;
    grid-template-columns:42px minmax(0,1fr) auto!important;
    align-items:center!important;
    gap:12px!important;
    width:100%!important;
  }
  .zfsc-modern-comments .zfsc-comment-form-row .zfsc-avatar,
  .zfsc-popup-comments .zfsc-comment-form-row .zfsc-avatar{
    grid-column:1!important;
    align-self:start!important;
    margin-top:4px!important;
  }
  .zfsc-modern-comments .zfsc-comment-form-row textarea,
  .zfsc-popup-comments .zfsc-comment-form-row textarea{
    grid-column:2!important;
    min-height:76px!important;
    margin:0!important;
  }
  .zfsc-modern-comments .zfsc-comment-form-row .zfsc-comment-submit,
  .zfsc-popup-comments .zfsc-comment-form-row .zfsc-comment-submit{
    grid-column:3!important;
    align-self:center!important;
    justify-self:end!important;
    min-width:118px!important;
    min-height:48px!important;
    margin:0!important;
    white-space:nowrap!important;
  }
  .zfsc-modern-comments .zfsc-comment-actions-line,
  .zfsc-popup-comments .zfsc-comment-actions-line{
    display:flex!important;
    align-items:center!important;
    justify-content:center!important;
    position:relative!important;
    width:100%!important;
    margin-top:12px!important;
    min-height:36px!important;
  }
  .zfsc-modern-comments .zfsc-comment-actions-line .zfsc-comment-reactions,
  .zfsc-popup-comments .zfsc-comment-actions-line .zfsc-comment-reactions{
    justify-content:center!important;
    margin:0 auto!important;
  }
  .zfsc-modern-comments .zfsc-comment-actions-line .zfsc-reply-toggle,
  .zfsc-popup-comments .zfsc-comment-actions-line .zfsc-reply-toggle{
    position:absolute!important;
    right:0!important;
    top:50%!important;
    transform:translateY(-50%)!important;
  }
}
@media (max-width:780px){
  .zfsc-modern-comments .zfsc-comment-form-row,
  .zfsc-popup-comments .zfsc-comment-form-row{
    display:grid!important;
    grid-template-columns:42px minmax(0,1fr)!important;
    gap:10px!important;
  }
  .zfsc-modern-comments .zfsc-comment-form-row textarea,
  .zfsc-popup-comments .zfsc-comment-form-row textarea{grid-column:2!important;}
  .zfsc-modern-comments .zfsc-comment-form-row .zfsc-comment-submit,
  .zfsc-popup-comments .zfsc-comment-form-row .zfsc-comment-submit{
    grid-column:1 / -1!important;
    width:100%!important;
    margin:0!important;
  }
  .zfsc-offender-filterbar{display:grid!important;grid-template-columns:1fr 1fr!important;}
  .zfsc-offender-filterbar label,.zfsc-offender-filterbar .zfsc-btn{min-width:0!important;width:100%!important;}
}

/* v1.2.1 compact offender cards: name / offense / info actions / reactions */
.zfsc-offender-card-compact .zfsc-offender-card-body{
  display:grid!important;
  gap:14px!important;
  padding:24px!important;
}
.zfsc-offender-card-compact .zfsc-card-row{width:100%!important;}
.zfsc-offender-card-compact .zfsc-card-name-row h2{
  margin:0!important;
  font-size:32px!important;
  line-height:1.08!important;
  color:#0b2a66!important;
}
.zfsc-offender-card-compact .zfsc-card-offense-row strong{
  display:block!important;
  color:#0b2a66!important;
  font-size:22px!important;
  line-height:1.25!important;
  font-weight:950!important;
  text-transform:uppercase!important;
  letter-spacing:.02em!important;
}
.zfsc-offender-card-compact .zfsc-card-info-actions{
  display:flex!important;
  align-items:center!important;
  gap:10px!important;
  flex-wrap:wrap!important;
}
.zfsc-offender-card-compact .zfsc-card-social-actions{
  display:flex!important;
  align-items:center!important;
  gap:12px!important;
  flex-wrap:wrap!important;
  padding-top:4px!important;
}
.zfsc-offender-comment-count,
.zfsc-offender-card-compact .zfsc-offender-react-btn{
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;
  gap:7px!important;
  min-height:42px!important;
  border:1px solid var(--zfsc-border)!important;
  background:rgba(255,255,255,.72)!important;
  color:#0b2a66!important;
  border-radius:999px!important;
  padding:8px 14px!important;
  font-weight:950!important;
  text-decoration:none!important;
  line-height:1!important;
  cursor:pointer!important;
}
.zfsc-offender-comment-count:hover,
.zfsc-offender-card-compact .zfsc-offender-react-btn:hover,
.zfsc-offender-card-compact .zfsc-offender-react-btn.is-active{
  background:linear-gradient(135deg,#0b2a66,#1f6fd8 58%,#38bdf8)!important;
  color:#fff!important;
  border-color:transparent!important;
}
.zfsc-offender-card-compact .zfsc-offender-badge,
.zfsc-offender-card-compact .zfsc-offender-location,
.zfsc-offender-card-compact .zfsc-offender-excerpt{display:none!important;}


/* v1.2.2: profile page should include offender reports submitted by the user */
.zfsc-profile-section-head{width:min(var(--zfsc-max),calc(100vw - 36px));margin:18px auto 12px;}
.zfsc-profile-section-head h2{margin:0;color:var(--zfsc-text);font-size:26px;letter-spacing:-.03em;}
.zfsc-profile-section-head p{margin:5px 0 0;}
.zfsc-profile-mixed-posts .zfsc-offender-card{min-width:0;}
.zfsc-profile-mixed-posts .zfsc-offender-card .zfsc-offender-card-media img,
.zfsc-profile-mixed-posts .zfsc-offender-card .zfsc-no-image{height:220px;}
.zfsc-profile-mixed-posts .zfsc-offender-card h2{font-size:24px;}
@media (min-width: 900px){.zfsc-profile-mixed-posts{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:22px;}.zfsc-profile-mixed-posts .zfsc-post-card{margin:0;}}

/* v1.2.3: profile settings, profile videos, edit report links, and calmer post title sizing */
.zfsc-profile-actions .zfsc-btn{white-space:nowrap;}
.zfsc-profile-settings-shell,
.zfsc-profile-videos-shell{width:min(var(--zfsc-max),calc(100vw - 36px));margin:18px auto;}
.zfsc-profile-settings-card{padding:0;overflow:hidden;}
.zfsc-profile-settings-summary{list-style:none;cursor:pointer;padding:18px 22px;font-weight:950;color:var(--zfsc-text);display:flex;align-items:center;justify-content:space-between;gap:12px;}
.zfsc-profile-settings-summary::-webkit-details-marker{display:none;}
.zfsc-profile-settings-summary::after{content:'⚙';opacity:.8;}
.zfsc-profile-settings-card[open] .zfsc-profile-settings-summary{border-bottom:1px solid var(--zfsc-border);}
.zfsc-profile-settings-card .zfsc-profile-video-form{padding:18px 22px 22px;}
.zfsc-profile-video-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px;}
.zfsc-profile-video-card{min-height:210px;border:1px solid var(--zfsc-border);border-radius:22px;background:rgba(255,255,255,.055);box-shadow:0 18px 50px rgba(0,0,0,.16);overflow:hidden;position:relative;display:flex;align-items:center;justify-content:center;}
.zfsc-profile-video-card video{width:100%;height:100%;min-height:210px;display:block;object-fit:cover;background:#050914;}
.zfsc-video-placeholder{display:grid;place-items:center;text-align:center;gap:8px;color:var(--zfsc-muted);padding:20px;}
.zfsc-video-placeholder span{width:58px;height:58px;border-radius:999px;display:grid;place-items:center;background:linear-gradient(135deg,#0b2a66,#1f6fd8 58%,#38bdf8);color:#fff;box-shadow:0 12px 34px rgba(31,111,216,.28);}
.zfsc-video-placeholder strong{color:var(--zfsc-text);font-size:18px;}
.zfsc-remove-video-form{position:absolute;right:12px;bottom:12px;}
.zfsc-profile-video-form .zfsc-upload-drop{margin-bottom:12px;}
.zfsc-inline-error{border:1px solid rgba(239,68,68,.5);background:rgba(239,68,68,.12);color:#fecaca;border-radius:14px;padding:10px 12px;margin:14px 22px 0;}
.zfsc-edit-report-btn{background:linear-gradient(135deg,#0b2a66,#1f6fd8 58%,#38bdf8)!important;color:#fff!important;border-color:transparent!important;}
.zfsc-single-title-actions{display:flex;align-items:center;gap:10px;flex-wrap:wrap;margin-bottom:14px;}
.zfsc-offender-card-compact .zfsc-card-name-row h2,
.zfsc-offender-card h2,
.zfsc-profile-mixed-posts .zfsc-offender-card h2,
.zfsc-post-body h2,
.zfsc-profile-mixed-posts .zfsc-post-body h2{font-size:18px!important;line-height:1.25!important;letter-spacing:0!important;margin:0!important;font-weight:950!important;}
.zfsc-offender-card-compact .zfsc-card-offense-row strong{font-size:18px!important;line-height:1.3!important;}
@media (min-width:781px){
  .zfsc-modern-comments .zfsc-comment-form-row,
  .zfsc-popup-comments .zfsc-comment-form-row{display:grid!important;grid-template-columns:42px minmax(0,1fr) auto!important;gap:12px!important;align-items:start!important;}
  .zfsc-modern-comments .zfsc-comment-form-row .zfsc-comment-submit,
  .zfsc-popup-comments .zfsc-comment-form-row .zfsc-comment-submit{grid-column:3!important;justify-self:end!important;align-self:start!important;margin-top:0!important;}
  .zfsc-modern-comments .zfsc-comment-reactions,
  .zfsc-popup-comments .zfsc-comment-reactions{justify-content:center!important;}
}
@media (max-width:899px){.zfsc-profile-video-grid{grid-template-columns:1fr;}.zfsc-profile-video-card,.zfsc-profile-video-card video{min-height:220px;}}

/* v1.2.4: profile comments, desktop profile layout, and matched-offender repeat indicator */
.zfsc-avatar-repeat-wrap{
  position:relative;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  vertical-align:middle;
  flex:0 0 auto;
}
.zfsc-avatar-repeat-wrap .zfsc-avatar{display:block;}
.zfsc-repeat-badge{
  position:absolute;
  top:-6px;
  right:-6px;
  width:26px;
  height:26px;
  border-radius:999px;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  background:#c51f32;
  color:#fff!important;
  border:2px solid #fff;
  box-shadow:0 8px 18px rgba(197,31,50,.35);
  font-size:17px;
  font-weight:950;
  line-height:1;
  z-index:2;
}
.zfsc-repeat-badge.is-tiny{
  position:static;
  width:18px;
  height:18px;
  min-width:18px;
  border-width:1px;
  font-size:12px;
  margin-left:6px;
  vertical-align:middle;
  box-shadow:0 4px 10px rgba(197,31,50,.24);
}
.zfsc-profile-comments-shell{width:min(var(--zfsc-max),calc(100vw - 36px));margin:18px auto;}
.zfsc-profile-comments-card{margin-bottom:0!important;}
.zfsc-profile-comments-card h2{margin-top:0;color:var(--zfsc-text);}
@media (min-width:900px){
  .zfsc-profile-hero{position:relative;}
  .zfsc-profile-info{flex:1;}
  .zfsc-profile-stats{justify-content:center!important;text-align:center;width:100%;}
  .zfsc-profile-actions{justify-content:flex-end!important;align-items:center!important;padding:0 22px 22px!important;margin-top:-64px;}
  .zfsc-profile-row{padding-right:260px;}
  .zfsc-profile-comments-card .zfsc-comment-actions-line{justify-content:center!important;}
  .zfsc-profile-comments-card .zfsc-comment-actions-line .zfsc-comment-reactions{justify-content:center!important;}
}
@media (max-width:899px){
  .zfsc-profile-actions{justify-content:center!important;flex-wrap:wrap!important;}
  .zfsc-profile-stats{justify-content:center!important;}
}

/* v1.2.5: custom login page and corrected matched-offender indicator */
.zfsc-avatar-repeat-wrap{overflow:visible!important;}
.zfsc-repeat-badge{
  top:auto!important;
  right:-6px!important;
  bottom:-6px!important;
  overflow:hidden!important;
}
.zfsc-repeat-badge svg{display:block;width:17px;height:17px;color:#fff!important;}
.zfsc-repeat-badge.is-tiny{
  position:relative!important;
  top:auto!important;
  right:auto!important;
  bottom:auto!important;
  display:inline-flex!important;
  transform:translateY(3px);
}
.zfsc-repeat-badge.is-tiny svg{width:12px;height:12px;}
.zfsc-login-shell{width:min(680px,calc(100vw - 36px));margin:42px auto;}
.zfsc-login-card{padding:34px!important;border-radius:30px!important;text-align:center;background:rgba(255,255,255,.86)!important;color:#0b2a66!important;box-shadow:0 24px 70px rgba(11,42,102,.18)!important;}
.zfsc-login-brand{display:grid;place-items:center;gap:10px;margin-bottom:24px;}
.zfsc-login-brand .custom-logo-link,.zfsc-login-logo-link{display:inline-flex;width:124px;height:124px;border-radius:28px;overflow:hidden;align-items:center;justify-content:center;box-shadow:0 14px 34px rgba(11,42,102,.22);background:#fff;}
.zfsc-login-brand .custom-logo-link img,.zfsc-login-logo-link img{display:block;width:100%;height:100%;object-fit:cover;}
.zfsc-login-logo-fallback{width:118px;height:118px;border-radius:28px;display:grid;place-items:center;background:linear-gradient(135deg,#0b2a66,#1f6fd8 60%,#38bdf8);color:#fff!important;text-decoration:none!important;font-weight:950;font-size:25px;box-shadow:0 14px 34px rgba(11,42,102,.22);}
.zfsc-login-brand h1{margin:8px 0 0!important;color:#0b2a66!important;font-size:42px!important;line-height:1!important;letter-spacing:-.045em!important;font-weight:950!important;}
.zfsc-login-tagline{margin:0!important;color:#203d74!important;font-size:19px!important;font-weight:800!important;}
.zfsc-login-form-wrap{text-align:left;margin:0 auto;max-width:440px;}
.zfsc-login-form-wrap label{font-weight:900;color:#0b2a66;}
.zfsc-login-form-wrap input[type="text"],.zfsc-login-form-wrap input[type="password"]{width:100%;border:1px solid rgba(11,42,102,.18);border-radius:16px;padding:14px 16px;background:#fff;color:#0b2a66;box-shadow:inset 0 1px 0 rgba(255,255,255,.65);}
.zfsc-login-form-wrap .login-remember{display:flex;align-items:center;gap:8px;}
.zfsc-login-form-wrap .login-submit{text-align:center;margin-top:18px;}
.zfsc-login-form-wrap #wp-submit{border:0;border-radius:999px;padding:13px 32px;font-weight:950;color:#fff;background:linear-gradient(135deg,#0b2a66,#1f6fd8 60%,#38bdf8);box-shadow:0 14px 28px rgba(31,111,216,.28);cursor:pointer;}
.zfsc-login-links{display:flex;justify-content:center;gap:18px;flex-wrap:wrap;margin-top:18px;font-weight:900;}
.zfsc-login-links a{color:#0b2a66!important;text-decoration:none!important;}
@media(max-width:640px){.zfsc-login-card{padding:24px!important}.zfsc-login-brand h1{font-size:32px!important}.zfsc-login-brand .custom-logo-link,.zfsc-login-logo-link{width:96px;height:96px}.zfsc-login-tagline{font-size:16px!important}}


/* v1.2.6: solid CSS-only offender match badge and centered compact offender cards */
.zfsc-avatar-repeat-wrap{
  position:relative!important;
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;
  overflow:visible!important;
}
.zfsc-repeat-badge,
.zfsc-offender-match-badge{
  position:absolute!important;
  top:auto!important;
  right:-6px!important;
  bottom:-6px!important;
  width:28px!important;
  height:28px!important;
  min-width:28px!important;
  border-radius:999px!important;
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;
  background:#c51f32!important;
  color:#fff!important;
  border:2px solid #fff!important;
  box-shadow:0 0 0 2px rgba(197,31,50,.22),0 8px 18px rgba(197,31,50,.38)!important;
  line-height:1!important;
  z-index:9!important;
  overflow:visible!important;
  font-family:Arial,Helvetica,sans-serif!important;
  font-size:16px!important;
  font-weight:950!important;
}
.zfsc-repeat-badge img,
.zfsc-repeat-badge svg,
.zfsc-offender-match-badge img,
.zfsc-offender-match-badge svg{
  display:none!important;
}
.zfsc-repeat-glyph{
  display:block!important;
  width:auto!important;
  height:auto!important;
  color:#fff!important;
  font-size:16px!important;
  line-height:1!important;
  transform:translateY(-.5px);
}
.zfsc-repeat-badge.is-tiny,
.zfsc-offender-match-badge.is-tiny{
  position:relative!important;
  top:auto!important;
  right:auto!important;
  bottom:auto!important;
  width:16px!important;
  height:16px!important;
  min-width:16px!important;
  margin-left:5px!important;
  border:0!important;
  box-shadow:none!important;
  transform:translateY(2px)!important;
  background:#fbbf24!important;
  color:#111827!important;
}
.zfsc-repeat-badge.is-tiny .zfsc-repeat-glyph,
.zfsc-offender-match-badge.is-tiny .zfsc-repeat-glyph{
  color:#111827!important;
  font-size:11px!important;
}
.zfsc-offender-card-compact .zfsc-offender-card-body{
  text-align:center!important;
  align-items:center!important;
  justify-items:center!important;
}
.zfsc-offender-card-compact .zfsc-card-name-row,
.zfsc-offender-card-compact .zfsc-card-offense-row,
.zfsc-profile-mixed-posts .zfsc-card-name-row,
.zfsc-profile-mixed-posts .zfsc-card-offense-row{
  text-align:center!important;
}
.zfsc-offender-card-compact .zfsc-card-name-row h2,
.zfsc-offender-card-compact .zfsc-card-name-row h2 a,
.zfsc-profile-mixed-posts .zfsc-offender-card-compact .zfsc-card-name-row h2,
.zfsc-profile-mixed-posts .zfsc-offender-card-compact .zfsc-card-name-row h2 a{
  font-size:16px!important;
  line-height:1.25!important;
  letter-spacing:0!important;
  text-align:center!important;
  font-weight:950!important;
  color:#0b2a66!important;
}
.zfsc-offender-card-compact .zfsc-card-offense-row strong,
.zfsc-profile-mixed-posts .zfsc-offender-card-compact .zfsc-card-offense-row strong{
  font-size:16px!important;
  line-height:1.3!important;
  text-align:center!important;
  letter-spacing:.01em!important;
  color:#0b2a66!important;
}
.zfsc-offender-card-compact .zfsc-card-info-actions,
.zfsc-offender-card-compact .zfsc-card-social-actions{
  justify-content:center!important;
}


/* v1.2.7: tighten desktop profile action buttons so they do not crowd stats */
@media (min-width: 900px){
  .zfsc-profile-hero .zfsc-profile-actions{
    justify-content:flex-end!important;
    align-items:center!important;
    gap:8px!important;
    margin-top:-76px!important;
    padding:0 22px 26px!important;
  }
  .zfsc-profile-hero .zfsc-profile-actions .zfsc-btn,
  .zfsc-profile-hero .zfsc-profile-actions button.zfsc-btn{
    font-size:15px!important;
    line-height:1!important;
    padding:11px 18px!important;
    min-height:42px!important;
    border-radius:999px!important;
    letter-spacing:0!important;
    white-space:nowrap!important;
  }
  .zfsc-profile-hero .zfsc-profile-stats{
    justify-content:center!important;
    text-align:center!important;
    gap:14px!important;
    font-size:16px!important;
    padding-right:0!important;
  }
  .zfsc-profile-hero .zfsc-profile-stats span{
    white-space:nowrap!important;
  }
}
@media (min-width: 1180px){
  .zfsc-profile-hero .zfsc-profile-row{
    padding-right:470px!important;
  }
  .zfsc-profile-hero .zfsc-profile-actions{
    margin-top:-84px!important;
  }
}
@media (min-width: 900px) and (max-width: 1179px){
  .zfsc-profile-hero .zfsc-profile-row{
    padding-right:320px!important;
  }
  .zfsc-profile-hero .zfsc-profile-actions{
    flex-wrap:wrap!important;
    max-width:360px!important;
    margin-left:auto!important;
  }
  .zfsc-profile-hero .zfsc-profile-actions .zfsc-btn,
  .zfsc-profile-hero .zfsc-profile-actions button.zfsc-btn{
    font-size:14px!important;
    padding:10px 14px!important;
    min-height:40px!important;
  }
}

/* v1.2.8 auth page polish */
.zfsc-auth-page{background:var(--zfsc-auth-bg,#eef4ff)!important;}
.zfsc-auth-page .zfsc-app-main,.zfsc-auth-page .site-main{background:var(--zfsc-auth-bg,#eef4ff)!important;}
.zfsc-login-shell.zfsc-auth-shell{width:min(720px,calc(100vw - 36px));margin:42px auto;}
.zfsc-login-card{background:var(--zfsc-auth-card-bg,#fff)!important;color:var(--zfsc-auth-text,#0b2a66)!important;}
.zfsc-login-brand .custom-logo-link,.zfsc-login-logo-link{width:150px!important;height:auto!important;min-height:110px!important;max-height:170px!important;padding:10px;border-radius:30px;overflow:visible!important;background:#fff;}
.zfsc-login-brand .custom-logo-link img,.zfsc-login-logo-link img{width:100%!important;height:auto!important;max-height:150px!important;object-fit:contain!important;object-position:center!important;display:block!important;}
.zfsc-login-brand h1{color:var(--zfsc-auth-text,#0b2a66)!important;}
.zfsc-login-tagline{color:var(--zfsc-auth-muted,#203d74)!important;}
.zfsc-login-form-wrap label,.zfsc-auth-form label{color:var(--zfsc-auth-text,#0b2a66)!important;}
.zfsc-login-form-wrap input[type="text"],.zfsc-login-form-wrap input[type="email"],.zfsc-login-form-wrap input[type="password"],.zfsc-login-form-wrap input[type="date"],.zfsc-auth-form input[type="text"],.zfsc-auth-form input[type="email"],.zfsc-auth-form input[type="password"],.zfsc-auth-form input[type="date"]{width:100%;border:1px solid rgba(11,42,102,.18);border-radius:16px;padding:14px 16px;background:#fff;color:var(--zfsc-auth-text,#0b2a66);box-shadow:inset 0 1px 0 rgba(255,255,255,.65);}
.zfsc-login-form-wrap #wp-submit,.zfsc-auth-submit{border:0;border-radius:999px;padding:13px 32px;font-weight:950;color:var(--zfsc-auth-button-text,#fff)!important;background:linear-gradient(135deg,var(--zfsc-auth-accent,#0b4db3),var(--zfsc-auth-accent-2,#2aa8ff));box-shadow:0 14px 28px color-mix(in srgb,var(--zfsc-auth-accent,#0b4db3) 28%,transparent);cursor:pointer;}
.zfsc-login-links a{color:var(--zfsc-auth-text,#0b2a66)!important;text-decoration:none!important;}
.zfsc-auth-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;}
.zfsc-auth-grid p{margin:0 0 14px!important;}
.zfsc-register-card{width:min(760px,calc(100vw - 36px));}
@media(max-width:640px){.zfsc-login-shell.zfsc-auth-shell{width:min(100%,calc(100vw - 22px));margin:22px auto 86px}.zfsc-login-brand .custom-logo-link,.zfsc-login-logo-link{width:118px!important;min-height:92px!important;max-height:138px!important}.zfsc-auth-grid{grid-template-columns:1fr}.zfsc-register-card{width:auto}.zfsc-login-card{padding:22px!important}}

/* v1.2.9 registration anonymity controls */
.zfsc-auth-checkbox{display:flex!important;align-items:center;gap:10px;margin:12px 0 6px;font-weight:800;color:var(--zfsc-navy,#0b2c67);line-height:1.25}
.zfsc-auth-checkbox input[type="checkbox"]{width:20px!important;height:20px!important;min-width:20px;margin:0;accent-color:#0b63d9}
.zfsc-auth-note{margin-top:4px!important;font-size:.92rem!important}
.zfsc-profile-anon-toggle{margin-top:10px}

/* v1.2.10 popup comments are anonymous/no-login like the original avatar-strip workflow */
.zfsc-anon-avatar{
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;
  width:42px!important;
  height:42px!important;
  border-radius:50%!important;
  background:linear-gradient(135deg,#0b4db3,#2aa8ff)!important;
  color:#fff!important;
  font-weight:950!important;
  font-size:20px!important;
  flex:0 0 42px!important;
}
.zfsc-popup-anon-comment-form .zfsc-popup-anon-note{
  margin:.45rem 0 0!important;
  font-size:.9rem!important;
}
.zfsc-modal-comment-form.zfsc-popup-anon-comment-form textarea{
  width:100%!important;
}


/* v1.2.11: profile tabs, separate comments/timeline pages, timeline cards, and circular comment avatars */
.zfsc-profile-tabs{
  width:min(1120px,calc(100vw - 36px));
  margin:14px auto 22px;
  display:flex;
  align-items:center;
  justify-content:center;
  gap:10px;
  flex-wrap:wrap;
}
.zfsc-profile-tabs a{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  min-width:110px;
  padding:10px 16px;
  border-radius:999px;
  border:1px solid var(--zfsc-border);
  color:var(--zfsc-text)!important;
  text-decoration:none!important;
  background:rgba(255,255,255,.08);
  font-weight:900;
}
.zfsc-profile-tabs a.is-active{
  background:linear-gradient(135deg,var(--zfsc-primary),var(--zfsc-primary-2));
  border-color:transparent;
  color:#fff!important;
}
.zfsc-modern-comment > .zfsc-avatar,
.zfsc-modern-comment .zfsc-avatar-repeat-wrap,
.zfsc-comment-form-row > .zfsc-avatar,
.zfsc-comment-form-row > .zfsc-avatar-repeat-wrap{
  width:42px!important;
  height:42px!important;
  min-width:42px!important;
  flex:0 0 42px!important;
  display:inline-block;
}
.zfsc-modern-comment > .zfsc-avatar,
.zfsc-comment-form-row > .zfsc-avatar,
.zfsc-modern-comment .zfsc-avatar-repeat-wrap img,
.zfsc-comment-form-row .zfsc-avatar-repeat-wrap img{
  width:42px!important;
  height:42px!important;
  aspect-ratio:1/1!important;
  object-fit:cover!important;
  border-radius:50%!important;
}
.zfsc-profile-update-form-card summary{
  cursor:pointer;
  font-weight:950;
  font-size:1.05rem;
  color:var(--zfsc-text);
}
.zfsc-profile-timeline-shell .zfsc-profile-update-form-card{
  margin-bottom:24px;
}
.zfsc-event-timeline{
  position:relative;
  display:grid;
  gap:18px;
  padding-left:34px;
}
.zfsc-event-timeline:before{
  content:"";
  position:absolute;
  left:13px;
  top:8px;
  bottom:8px;
  width:4px;
  border-radius:999px;
  background:linear-gradient(180deg,var(--zfsc-primary),var(--zfsc-primary-2),#60a5fa);
  opacity:.95;
}
.zfsc-event-card{
  position:relative;
}
.zfsc-event-dot{
  position:absolute;
  left:-31px;
  top:22px;
  width:18px;
  height:18px;
  border-radius:999px;
  background:#fff;
  border:5px solid var(--zfsc-primary);
  box-shadow:0 0 0 5px rgba(37,99,235,.18);
}
.zfsc-event-content{
  border:1px solid var(--zfsc-border);
  border-radius:24px;
  background:rgba(255,255,255,.08);
  padding:18px;
  box-shadow:0 18px 45px rgba(0,0,0,.12);
}
.zfsc-event-head{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:12px;
  flex-wrap:wrap;
  margin-bottom:12px;
}
.zfsc-event-head time{
  font-weight:950;
  color:var(--zfsc-text);
}
.zfsc-event-head span{
  color:var(--zfsc-muted);
  font-weight:800;
}
.zfsc-event-content img,
.zfsc-event-content video{
  width:100%;
  max-height:420px;
  object-fit:cover;
  border-radius:18px;
  margin-bottom:12px;
  background:#e2e8f0;
}
.zfsc-event-text{color:var(--zfsc-text);line-height:1.6;}
.zfsc-event-content footer{
  display:flex;
  align-items:center;
  gap:9px;
  color:var(--zfsc-muted);
  font-size:.9rem;
  font-weight:800;
  margin-top:14px;
}
.zfsc-event-content footer .zfsc-avatar,
.zfsc-event-content footer .zfsc-avatar-repeat-wrap,
.zfsc-event-content footer .zfsc-avatar-repeat-wrap img{
  width:28px!important;
  height:28px!important;
  min-width:28px!important;
  flex:0 0 28px!important;
  border-radius:50%!important;
  object-fit:cover!important;
}
@media(max-width:720px){
  .zfsc-profile-tabs{width:min(100%,calc(100vw - 20px));gap:7px;margin-top:10px;}
  .zfsc-profile-tabs a{min-width:auto;flex:1 1 auto;padding:9px 10px;font-size:.9rem;}
  .zfsc-event-timeline{padding-left:24px;}
  .zfsc-event-timeline:before{left:9px;}
  .zfsc-event-dot{left:-25px;}
}

/* v1.2.12 - paid entry landing + feature voting */
.zfsc-entry-shell{max-width:1040px;margin:36px auto;padding:0 18px}
.zfsc-entry-hero{padding:34px;border-radius:30px;text-align:center;background:linear-gradient(135deg,rgba(255,255,255,.96),rgba(232,242,255,.92));box-shadow:0 28px 90px rgba(8,36,90,.16);border:1px solid rgba(20,72,150,.14)}
.zfsc-entry-brand .zfsc-login-logo-link img{max-width:170px;max-height:120px;object-fit:contain;margin:0 auto 10px;display:block}
.zfsc-entry-hero h2{margin:18px auto 10px;color:#071e55;font-size:clamp(30px,4vw,54px);line-height:1.02;max-width:830px;letter-spacing:-.04em}
.zfsc-entry-subheadline{font-size:clamp(16px,2vw,21px);max-width:760px;margin:0 auto 22px;color:#183a76;line-height:1.55}
.zfsc-entry-points{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;margin:26px auto;max-width:900px;text-align:left}
.zfsc-entry-points div{background:#fff;border:1px solid rgba(18,75,160,.13);border-radius:20px;padding:16px;box-shadow:0 12px 36px rgba(8,44,100,.08)}
.zfsc-entry-points strong{display:block;color:#06235d;font-size:16px;margin-bottom:5px}
.zfsc-entry-points span{display:block;color:#38517b;font-size:13px;line-height:1.45}
.zfsc-entry-disclaimer{font-size:12px;color:#51617b;max-width:820px;margin:12px auto 22px;line-height:1.5}
.zfsc-entry-actions{display:flex;justify-content:center;align-items:center;gap:12px;flex-wrap:wrap}
.zfsc-entry-actions form{margin:0}
.zfsc-feature-votes-shell{max-width:1100px;margin:24px auto;padding:0 18px}
.zfsc-feature-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px;margin-top:18px}
.zfsc-feature-card{position:relative;padding:20px;border-radius:24px;overflow:hidden}
.zfsc-feature-card h3{color:#071e55;margin:8px 0 8px;font-size:19px;line-height:1.25}
.zfsc-feature-copy{color:#34476f;font-size:14px;line-height:1.5;min-height:70px}
.zfsc-feature-vote-count{display:inline-flex;align-items:center;gap:6px;background:linear-gradient(135deg,#0a3c92,#2aa8ff);color:#fff;border-radius:999px;padding:7px 12px;font-size:12px;box-shadow:0 10px 25px rgba(10,76,170,.18)}
.zfsc-feature-vote-count strong{font-size:17px;line-height:1}.zfsc-feature-vote-count span{text-transform:uppercase;letter-spacing:.06em}.zfsc-feature-card.has-voted{border-color:rgba(42,168,255,.55)}.zfsc-feature-card button[disabled]{opacity:.75;cursor:default}
@media(max-width:900px){.zfsc-entry-points,.zfsc-feature-grid{grid-template-columns:1fr}.zfsc-entry-hero{padding:24px 18px;border-radius:24px}.zfsc-entry-actions{flex-direction:column}.zfsc-entry-actions .zfsc-btn,.zfsc-entry-actions form{width:100%}.zfsc-entry-actions form .zfsc-btn{width:100%}}

/* v1.2.13 landing page tagline follows auth design colors */
.zfsc-entry-shell .zfsc-login-tagline,
.zfsc-entry-brand .zfsc-login-tagline{
  color:var(--zfsc-auth-muted,#203d74)!important;
}
.zfsc-entry-brand h1{
  color:var(--zfsc-auth-text,#0b2a66)!important;
}
.zfsc-entry-shell .zfsc-entry-hero{
  color:var(--zfsc-auth-text,#0b2a66);
}

/* v1.2.14 - entry page featured offenders + get notified CTA */
.zfsc-entry-featured-offenders{margin:30px auto 0;padding:22px 14px 10px;border-top:1px solid rgba(9,39,100,.10)}
.zfsc-entry-section-head{text-align:center;margin:0 auto 16px}.zfsc-entry-section-head h3{margin:0 0 5px;color:#071e55;font-size:24px;letter-spacing:-.02em}.zfsc-entry-section-head p{margin:0 auto;color:#456186;max-width:620px;font-size:14px;line-height:1.45}
.zfsc-entry-featured-offenders .zfsc-offender-strip-wrap{width:100%;max-width:780px;margin:0 auto;padding:0;overflow:visible}.zfsc-entry-featured-offenders .zfsc-offender-strip{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:14px;min-height:auto;align-items:start}.zfsc-entry-featured-offenders .zfsc-offender-avatar-card{width:100%;border-radius:50%;box-shadow:none;background:transparent;padding:0;display:flex;justify-content:center}.zfsc-entry-featured-offenders .zfsc-offender-avatar-card img{width:92px;height:92px;border-radius:50%;object-fit:cover;border:4px solid #fff;box-shadow:0 12px 32px rgba(8,44,100,.18),0 0 0 1px rgba(16,75,160,.12)}.zfsc-entry-featured-offenders .zfsc-empty-strip{max-width:580px;margin:0 auto;background:#fff;color:#456186;border-color:rgba(18,75,160,.18)}
.zfsc-entry-watch-cta{margin:26px auto 0;max-width:860px;display:flex;align-items:center;justify-content:space-between;gap:18px;text-align:left;background:linear-gradient(135deg,#f8fbff,#e9f3ff);border:1px solid rgba(18,75,160,.13);border-radius:22px;padding:18px 20px;box-shadow:0 15px 45px rgba(8,44,100,.08)}.zfsc-entry-watch-cta strong{display:block;color:#071e55;font-size:20px;margin-bottom:4px}.zfsc-entry-watch-cta span{display:block;color:#38517b;line-height:1.45}.zfsc-entry-watch-cta .zfsc-btn{white-space:nowrap}.zfsc-paywall-eye-panel{text-align:center;max-width:420px}.zfsc-paywall-eye-icon{font-size:38px;line-height:1;margin-bottom:8px}.zfsc-paywall-eye-panel h2{margin:0 0 8px;color:var(--zfsc-text)}.zfsc-paywall-eye-panel p{color:var(--zfsc-muted);font-weight:800;margin:0 0 18px}
@media(max-width:720px){.zfsc-entry-featured-offenders .zfsc-offender-strip{grid-template-columns:repeat(3,minmax(0,1fr));gap:12px 10px}.zfsc-entry-featured-offenders .zfsc-offender-avatar-card img{width:82px;height:82px}.zfsc-entry-watch-cta{align-items:stretch;flex-direction:column;text-align:center}.zfsc-entry-watch-cta .zfsc-btn{width:100%;justify-content:center}.zfsc-entry-featured-offenders{padding-left:0;padding-right:0}}


/* v1.2.15 - compact offender/comment popup typography */
.zfsc-offender-modal .zfsc-modal-panel{
  width:min(560px,calc(100vw - 28px))!important;
  padding:18px!important;
}
.zfsc-offender-modal .zfsc-modal-image{
  max-height:260px!important;
  margin-bottom:12px!important;
}
.zfsc-offender-modal .zfsc-modal-title{
  font-size:24px!important;
  line-height:1.12!important;
  letter-spacing:-.025em!important;
  text-align:center!important;
  margin:4px 42px 6px 42px!important;
  color:#0b2a66!important;
}
.zfsc-offender-modal .zfsc-modal-name{
  font-size:14px!important;
  line-height:1.35!important;
  text-align:center!important;
  margin:0 0 10px!important;
}
.zfsc-offender-modal .zfsc-modal-actions{
  justify-content:center!important;
  gap:10px!important;
  margin-bottom:10px!important;
}
.zfsc-offender-modal .zfsc-modal-actions .zfsc-btn{
  min-height:38px!important;
  padding:9px 14px!important;
  border-radius:999px!important;
  font-size:13px!important;
  line-height:1.1!important;
}
.zfsc-offender-modal .zfsc-modal-comments{
  font-size:13px!important;
  white-space:nowrap!important;
}
.zfsc-offender-modal .zfsc-popup-comments{
  max-height:280px!important;
  padding:12px!important;
  margin:12px 0!important;
}
.zfsc-offender-modal .zfsc-modern-comment{
  gap:10px!important;
  padding:10px!important;
}
.zfsc-offender-modal .zfsc-comment-head strong{
  font-size:14px!important;
  line-height:1.2!important;
}
.zfsc-offender-modal .zfsc-comment-head time{
  font-size:12px!important;
}
.zfsc-offender-modal .zfsc-comment-text p{
  font-size:14px!important;
  line-height:1.45!important;
}
.zfsc-offender-modal .zfsc-comment-reactions button{
  font-size:12px!important;
  padding:5px 8px!important;
  min-height:30px!important;
}
.zfsc-offender-modal .zfsc-reply-toggle{
  font-size:13px!important;
  padding:5px 0!important;
}
.zfsc-offender-modal .zfsc-modal-comment-form textarea{
  min-height:76px!important;
  font-size:14px!important;
  line-height:1.4!important;
}
.zfsc-offender-modal .zfsc-modal-comment-form .zfsc-btn{
  min-height:38px!important;
  padding:9px 14px!important;
  font-size:13px!important;
}
.zfsc-offender-modal .zfsc-popup-anon-note{
  font-size:12px!important;
  margin:8px 0 0!important;
}
@media(max-width:640px){
  .zfsc-offender-modal{padding:10px!important;}
  .zfsc-offender-modal .zfsc-modal-panel{width:calc(100vw - 20px)!important;padding:14px!important;border-radius:22px!important;}
  .zfsc-offender-modal .zfsc-modal-title{font-size:20px!important;margin:4px 40px 5px 40px!important;}
  .zfsc-offender-modal .zfsc-modal-image{max-height:190px!important;border-radius:16px!important;}
  .zfsc-offender-modal .zfsc-modal-actions{align-items:stretch!important;}
  .zfsc-offender-modal .zfsc-modal-actions .zfsc-btn{width:100%!important;justify-content:center!important;}
}


/* v1.2.16 - clean landing/auth pages and popup comment alignment */
body.zfsc-clean-page .zfsa-header,
body.zfsc-clean-page .zfsa-footer,
body.zfsc-clean-page .zfsa-main-nav,
body.zfsc-clean-page .zfsa-header-right,
body.zfsc-clean-page .zfsc-header-actions,
body.zfsc-clean-page .zfsc-floating-actions,
body.zfsc-clean-page .zfsc-bottom-nav,
body.zfsc-clean-page .site-header,
body.zfsc-clean-page header.site-header,
body.zfsc-clean-page #masthead,
body.zfsc-clean-page .main-navigation,
body.zfsc-clean-page nav.primary-navigation,
body.zfsc-clean-page .site-footer,
body.zfsc-clean-page footer.site-footer,
body.zfsc-clean-page #colophon{
  display:none!important;
}
body.zfsc-clean-page .zfsa-site,
body.zfsc-clean-page .zfsa-main,
body.zfsc-clean-page .zfsa-page-wrap,
body.zfsc-clean-page .zfsa-page-entry,
body.zfsc-clean-page .zfsa-entry-content{
  margin:0!important;
  padding:0!important;
  max-width:none!important;
  width:100%!important;
}
body.zfsc-clean-page .zfsa-page-entry > h1,
body.zfsc-clean-page .entry-title,
body.zfsc-clean-page .page-title{
  display:none!important;
}
body.zfsc-clean-page .zfsc-entry-shell,
body.zfsc-clean-page .zfsc-login-shell{
  margin-top:0!important;
}
body.zfsc-clean-page.admin-bar .zfsc-entry-shell,
body.zfsc-clean-page.admin-bar .zfsc-login-shell{
  margin-top:0!important;
}
.zfsc-offender-modal .zfsc-popup-comments,
.zfsc-offender-modal .zfsc-popup-comment-tree,
.zfsc-offender-modal .zfsc-modern-comment,
.zfsc-offender-modal .zfsc-comment-body,
.zfsc-offender-modal .zfsc-comment-text,
.zfsc-offender-modal .zfsc-comment-text p{
  text-align:left!important;
}
.zfsc-offender-modal .zfsc-comment-head{
  justify-content:flex-start!important;
}

/* v1.2.18 version sync; v1.2.17 profile wording/actions, full-screen docked messenger, and Stripe checkout link polish */
body.zfsc-messenger-clean-page .zfsa-header,
body.zfsc-messenger-clean-page .zfsa-footer,
body.zfsc-messenger-clean-page .zfsa-main-nav,
body.zfsc-messenger-clean-page .zfsa-header-right,
body.zfsc-messenger-clean-page .zfsc-floating-actions,
body.zfsc-messenger-clean-page .site-header,
body.zfsc-messenger-clean-page header.site-header,
body.zfsc-messenger-clean-page #masthead,
body.zfsc-messenger-clean-page .main-navigation,
body.zfsc-messenger-clean-page nav.primary-navigation,
body.zfsc-messenger-clean-page .site-footer,
body.zfsc-messenger-clean-page footer.site-footer,
body.zfsc-messenger-clean-page #colophon{
  display:none!important;
}
body.zfsc-messenger-clean-page,
body.zfsc-messenger-clean-page .zfsa-site,
body.zfsc-messenger-clean-page .zfsa-main,
body.zfsc-messenger-clean-page .zfsa-page-wrap,
body.zfsc-messenger-clean-page .zfsa-page-entry,
body.zfsc-messenger-clean-page .zfsa-entry-content{
  margin:0!important;
  padding:0!important;
  width:100%!important;
  max-width:none!important;
  min-width:0!important;
}
body.zfsc-messenger-clean-page{overflow:hidden!important;}
body.zfsc-messenger-clean-page.admin-bar .zfsa-main{padding-top:32px!important;}
body.zfsc-messenger-clean-page .zfsc-message-app,
body.zfsc-messenger-clean-page .zfsc-message-app.zfsc-message-list-screen.zfsc-ios-message-list,
body.zfsc-messenger-clean-page .zfsc-message-app.zfsc-conversation-screen{
  width:100vw!important;
  max-width:100vw!important;
  height:100dvh!important;
  min-height:0!important;
  border-radius:0!important;
  border:0!important;
  margin:0!important;
  box-shadow:none!important;
}
body.admin-bar.zfsc-messenger-clean-page .zfsc-message-app,
body.admin-bar.zfsc-messenger-clean-page .zfsc-message-app.zfsc-message-list-screen.zfsc-ios-message-list,
body.admin-bar.zfsc-messenger-clean-page .zfsc-message-app.zfsc-conversation-screen{
  height:calc(100dvh - 32px)!important;
}
body.zfsc-messenger-clean-page .zfsc-ios-message-list .zfsc-chat-list,
body.zfsc-messenger-clean-page .zfsc-chat-list,
body.zfsc-messenger-clean-page .zfsc-message-thread{
  padding-left:clamp(12px,2.2vw,34px)!important;
  padding-right:clamp(12px,2.2vw,34px)!important;
}
body.zfsc-messenger-clean-page .zfsc-message-form{
  margin:10px clamp(12px,2.2vw,34px) 14px!important;
}
@media (max-width:780px){
  body.zfsc-messenger-clean-page .zfsc-message-app,
  body.zfsc-messenger-clean-page .zfsc-message-app.zfsc-message-list-screen.zfsc-ios-message-list,
  body.zfsc-messenger-clean-page .zfsc-message-app.zfsc-conversation-screen{
    height:calc(100dvh - 72px)!important;
  }
  body.admin-bar.zfsc-messenger-clean-page .zfsc-message-app,
  body.admin-bar.zfsc-messenger-clean-page .zfsc-message-app.zfsc-message-list-screen.zfsc-ios-message-list,
  body.admin-bar.zfsc-messenger-clean-page .zfsc-message-app.zfsc-conversation-screen{
    height:calc(100dvh - 118px)!important;
  }
  body.zfsc-messenger-clean-page .zfsc-bottom-nav{display:grid!important;}
  body.zfsc-messenger-clean-page .zfsc-ios-message-header.zfsc-messenger-full-header{
    grid-template-columns:1fr auto!important;
    justify-items:start!important;
    text-align:left!important;
  }
  body.zfsc-messenger-clean-page .zfsc-ios-message-header.zfsc-messenger-full-header h1{
    justify-self:start!important;
    text-align:left!important;
    margin-left:0!important;
  }
  body.zfsc-messenger-clean-page .zfsc-ios-message-header.zfsc-messenger-full-header .zfsc-ios-menu{
    justify-self:end!important;
  }
}
.zfsc-profile-actions .zfsc-btn[href*="submit-offender"]{display:none!important;}
.zfsc-profile-settings-card[open]{scroll-margin-top:24px;}

/* v1.2.20: repeat-offender badge for offender post cards */
.zfsc-offender-card-media{
  position:relative!important;
  overflow:visible!important;
}
.zfsc-offender-card-media .zfsc-card-match-badge{
  position:absolute!important;
  right:14px!important;
  bottom:14px!important;
  top:auto!important;
  left:auto!important;
  width:34px!important;
  height:34px!important;
  min-width:34px!important;
  border-radius:999px!important;
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;
  background:#fbbf24!important;
  color:#111827!important;
  border:3px solid #fff!important;
  box-shadow:0 8px 20px rgba(11,42,102,.25),0 0 0 3px rgba(251,191,36,.25)!important;
  z-index:25!important;
  text-decoration:none!important;
  line-height:1!important;
  font-size:18px!important;
  font-family:Arial,Helvetica,sans-serif!important;
  font-weight:950!important;
}
.zfsc-offender-card-media .zfsc-card-match-badge span{
  display:block!important;
  width:auto!important;
  height:auto!important;
  color:#111827!important;
  line-height:1!important;
}
.zfsc-offender-card-media .zfsc-card-match-badge img,
.zfsc-offender-card-media .zfsc-card-match-badge svg{
  display:none!important;
}
.zfsc-offender-card-media > .zfsc-repeat-badge,
.zfsc-offender-card-media > .zfsc-offender-match-badge{
  display:none!important;
}
@media (max-width:640px){
  .zfsc-offender-card-media .zfsc-card-match-badge{
    width:30px!important;
    height:30px!important;
    min-width:30px!important;
    right:10px!important;
    bottom:10px!important;
    font-size:16px!important;
  }
}
