/* First paint gate: keep the actual app hidden until the saved theme and route are ready.
   No placeholder header, tabs, cards, or branding that can contradict the real UI. */
@keyframes mc-boot-spin {
  to {
    transform: rotate(360deg);
  }
}


@media(prefers-reduced-motion:reduce) {
  .mc-boot-indicator {
  animation: none;
}
}


body.mc-boot-pending {
  overflow: hidden;
}


.mc-boot-gate {
  position: fixed;
  inset: 0;
  z-index: 30000;
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 10px;
  background: var(--mc-page-bg,#ffffff);
  color: var(--mc-base-ink,#657789);
  font: 600 13px/1.4 system-ui,-apple-system,Segoe UI,Arial,sans-serif;
}


.mc-boot-indicator {
  width: 15px;
  height: 15px;
  border-radius: 50%;
  border: 2px solid #cbfaff;
  border-top-color: #00f2ff;
  animation: mc-boot-spin .95s linear infinite;
  flex: none;
}

/* ===== base-v97.css — V97.198 first-paint + post-frame correction ===== */

a {
  color: inherit;
  text-decoration: none;
}


button,
input,
textarea,
select {
  font: inherit;
  color: inherit;
}


/* Remove only the native square touch overlay, never Theme selected
   backgrounds or keyboard-visible focus indicators. */
:where(a, button, summary, [role="button"], [role="tab"], [role="menuitem"], input[type="button"], input[type="submit"]) {
  -webkit-tap-highlight-color: transparent;
}

button {
  cursor: pointer;
}


img,
video {
  max-width: 100%;
}


[hidden] {
  display: none !important;
}


.top {
  position: sticky;
  top: 0;
  z-index: 100;
  display: grid;
  grid-template-columns: auto minmax(0,1fr) auto;
  grid-template-areas: "menu brand actions" "search search search" "weather weather weather" "nav nav nav";
  gap: 8px 10px;
  grid-auto-rows: max-content;
  align-content: start;
  width: min(100%,var(--mc-page,920px));
  margin: 0 auto;
  padding: 10px 12px 9px;
}


.menu-toggle {
  grid-area: menu;
  align-self: center;
  /* Canonical hit-test ownership: an independently moved Home brand must not
     intercept taps meant for the adjacent Menu button. */
  position: relative;
  z-index: 3;
}


.brand {
  grid-area: brand;
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 8px;
  min-width: 0;
}


.mc-menu-brand-logo { width: min(190px, 100%); height: 45px; object-fit: contain; object-position: left; display: block; }
.mc-auth-brand-logo { width: min(240px, 100%); height: 65px; object-fit: contain; }
.mc-menu-brand-logo[hidden],.mc-auth-brand-logo[hidden] { display: none !important; }
.brand-copy {
  display: flex;
  flex-direction: column;
  align-items: center;
  min-width: 0;
}


.brand strong {
  font-size: clamp(20px,5vw,28px);
  line-height: 1.05;
}


.brand small {
  font-size: 10px;
  letter-spacing: .08em;
  white-space: nowrap;
}


.top-actions {
  grid-area: actions;
  display: flex;
  justify-content: flex-end;
  align-items: center;
  gap: 7px;
}


.header-search {
  grid-area: search;
  display: flex;
  align-items: center;
  justify-content: center;
  min-width: 42px;
  max-width: 52px;
}


.header-search input {
  min-width: 0;
  width: 100%;
  border: 0;
  background: transparent !important;
  margin: 0;
  padding: 0;
  outline: 0;
}


.header-search button {
  border: 0;
  background: transparent;
  padding: 0;
}


/* One native header Search: opening the header icon exposes this single editable input and six categories. */
.mc-header-search-panel[hidden] {
  display: none!important;
}


.mc-header-search-panel {
  display: grid;
  grid-template-columns: minmax(0,1fr);
  gap: 10px;
  box-sizing: border-box;
  width: min(100%,var(--mc-page,920px));
  padding: 11px 13px;
  margin: 0 auto;
  background: var(--mc-card-material,#fff);
  border: 1px solid var(--mc-border,#dfe4e9);
  border-radius: 0 0 15px 15px;
  position: relative;
  z-index: 99;
}


.mc-header-search-panel .mc-search-entry {
  display: flex;
  align-items: center;
  gap: 8px;
  min-height: 48px;
  min-width: 0;
  box-sizing: border-box;
  padding: 0 10px;
  border: 1px solid var(--mc-border,#dfe4e9);
  border-radius: 13px;
  background: var(--mc-input-material,#f8fbff);
}


.mc-header-search-panel #mcMainSearchInput {
  flex: 1 1 auto;
  min-width: 0;
  max-width: 100%;
  font: inherit;
  font-size: 15px;
  min-height: 44px;
  color: var(--mc-text,#111);
  border: 0;
  outline: 0;
  box-shadow: none;
  background: transparent;
  padding: 8px 2px;
}


.mc-header-search-panel .mc-search-close {
  flex: 0 0 34px;
  display: grid;
  place-items: center;
  width: 34px;
  height: 34px;
  border: 0;
  background: transparent;
  color: var(--mc-muted,#737b84);
  font-size: 26px;
  line-height: 1;
  cursor: pointer;
}


.mc-header-search-panel .mc-search-scopes {
  display: grid;
  grid-template-columns: repeat(6,minmax(0,1fr));
  gap: 5px;
  min-width: 0;
}


.mc-header-search-panel .mc-search-scopes button {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 4px;
  min-width: 0;
  min-height: 40px;
  padding: 5px 2px;
  border: 1px solid var(--mc-border,#dfe4e9);
  border-radius: 11px;
  background: var(--mc-card-material,#fff);
  color: var(--mc-text,#111);
  font: inherit;
  font-weight: 700;
  font-size: clamp(10px,2.6vw,13px);
  white-space: nowrap;
  cursor: pointer;
  box-sizing: border-box;
}


.mc-header-search-panel #mcSearchFilterIcon {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  flex: 0 0 auto;
  width: 16px;
  height: 16px;
}


.mc-header-search-panel #mcSearchFilterIcon .mc-search-filter-svg {
  width: 16px;
  height: 16px;
  flex: 0 0 16px;
  stroke-width: 1.85;
}


.mc-header-search-panel .mc-search-scopes button.active {
  background: var(--mc-active,#06b6ed);
  border-color: var(--mc-active,#06b6ed);
  color: var(--mc-selected-text,#fff);
}


@media(max-width:350px) {
  .mc-header-search-panel .mc-search-scopes {
  grid-template-columns: repeat(3,minmax(0,1fr));
}

  .mc-header-search-panel .mc-search-scopes button {
  font-size: 12px;
}
}


.top nav {
  grid-area: nav;
  display: grid;
  grid-template-columns: repeat(5,minmax(0,1fr));
  gap: 6px;
  width: 100%;
  overflow: visible;
}


.top nav a {
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  gap: 3px;
  min-width: 0;
  text-align: center;
}


.navlabel {
  font-weight: 800;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
  max-width: 100%;
}


.mc-weather-header-row {
  grid-area: weather;
  display: grid;
  grid-template-columns: 1fr 1fr 1fr;
  align-items: stretch;
  gap: 8px;
  width: 100%;
}


.mc-weather-header-row>a,
.mc-weather-header-row>button {
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  gap: 4px;
  text-align: center;
}


.mc-weather-header-row #mcWeatherHeaderButton {
  grid-column: 2;
}


.mc-weather-header-row #mcVotingHeaderButton {
  grid-column: 1;
  grid-row: 1;
}


.mc-weather-header-row #mcAnnouncementHeaderButton {
  grid-column: 3;
  grid-row: 1;
}


.side-menu {
  position: fixed;
  z-index: 200;
  top: 0;
  left: 0;
  width: min(86vw,330px);
  height: 100dvh;
  padding: 72px 12px 22px;
  overflow: auto;
  transform: translateX(-104%);
  transition: transform .24s ease;
}


.side-menu.open {
  transform: translateX(0);
}


.side-close {
  position: absolute;
  top: 14px;
  right: 14px;
  width: 40px;
  height: 40px;
  border: 0;
}


.menu-backdrop {
  position: fixed;
  inset: 0;
  z-index: 190;
  border: 0;
  background: rgba(10,32,58,.24);
}


body.menu-open {
  overflow: hidden;
}


main#app {
  width: min(100%,var(--mc-page,920px));
  margin: 12px auto 28px;
  padding: 0 clamp(10px,2.5vw,16px);
  min-height: 30vh;
}


.home-page-shell,
.announcements-page-shell,
.voting-page-shell,
.post-page-shell,
.saved-page-shell,
.search-page-shell,
.settings-page-shell,
.shops-page-shell {
  display: grid;
  grid-template-columns: minmax(0,1fr);
  gap: var(--mc-gap,14px);
  margin: 0;
  padding: 0;
}


.home-tabs {
  display: flex;
  gap: 6px;
  margin: 0;
  overflow: auto;
  padding: 2px;
}


.tabs {
  display: flex;
  gap: 6px;
  flex-wrap: wrap;
}


.card,
.page-heading,
.auth,
.chat-panel,
.vote-card,
.vote-create-card {
  position: relative;
}


.card {
  padding: var(--mc-card-pad,16px);
  margin: 0 0 var(--mc-gap,12px);
}


.page-heading {
  padding: 14px 16px;
  margin: 0;
  display: grid;
  gap: 5px;
}


.page-heading h1,
.card h1,
.card h2,
.card h3 {
  margin-top: 0;
}


.page-heading h1 {
  margin: 0;
  font-size: clamp(21px,4.7vw,27px);
  line-height: 1.18;
  overflow-wrap: anywhere;

  font-weight: 750;
  letter-spacing: -.02em;
}


.page-heading p {
  margin: 0;

  line-height: 1.45;
  color: var(--mc-muted,#657889);
}


.section-row {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
}


.grid2 {
  display: grid;
  grid-template-columns: repeat(2,minmax(0,1fr));
  gap: 12px;
}


.btn,
.pill,
.smallbtn,
.iconbtn {
  min-height: 44px;
  border: 0;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 7px;
  padding: 9px 13px;
  line-height: 1.15;
  text-align: center;
}


.smallbtn {
  min-height: 34px;
  padding: 7px 10px;
  font-size: 12px;
}


.full {
  width: 100%;
}


.dangerbtn {
  color: #000000;
}


.muted {
  color: var(--mc-muted,#000000);
}


.empty {
  text-align: center;
  padding: 30px 14px;
}


.error {
  color: #000000;
}


.flash {
  padding: 11px 13px;
  margin-bottom: 10px;
}


.center {
  min-height: calc(100svh - 150px);
  display: grid;
  place-items: center;
}


.auth {
  width: min(420px,100%);
  padding: 22px;
}


.authlink {
  margin-top: 14px;
}


input:not([data-checkin-search]):not([type=checkbox]):not([type=radio]):not([type=color]):not([type=range]):not([type=hidden]),
textarea,
select {
  width: 100%;
  border: 0;
  outline: 0;
  padding: 11px 12px;
  margin: 6px 0;
  min-height: 44px;
}


textarea {
  resize: none;
  min-height: 96px;
  overflow-y: auto;
}


.audience {
  width: auto;
}


.settingrow small {
  color: var(--mc-muted);
}


.person {
  display: flex;
  align-items: center;
  gap: 10px;
  min-width: 0;
}


.person>span {
  display: grid;
  gap: 2px;
  min-width: 0;
  line-height: 1.22;
}


.person b,
.person small {
  overflow-wrap: anywhere;
}


.avatar,
.top-user-avatar,
.conversation-avatar {
  width: 42px;
  height: 42px;
  object-fit: cover;
  border-radius: 50%;
  flex: 0 0 auto;
}


.letter {
  display: grid;
  place-items: center;
  font-weight: 900;
}


.verified-badge {
  display: inline-flex;
  vertical-align: -2px;
}


.verified-badge .verified-color-badge {
  width: 17px;
  height: 17px;
  fill: none;
  stroke: none;
  vertical-align: middle;
}


.counts {
  display: flex;
  gap: 18px;
  justify-content: center;
  flex-wrap: wrap;
}


.socials {
  display: flex;
  gap: 7px;
  flex-wrap: wrap;
  justify-content: center;
}


.social {
  padding: 7px 10px;
}


.sectiontitle {
  margin: 18px 3px 8px;
}


.composer {
  margin: 0 !important;
}


.mc-tool {
  display: flex !important;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  gap: 5px;
  min-width: 0;
  padding: 8px 5px !important;
}


.mc-tool span:last-child {
  font-weight: 800;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
  max-width: 100%;
}


.composer-extra-panels {
  display: grid;
  grid-template-columns: repeat(2,minmax(0,1fr));
  gap: 8px;
}


.actions {
  display: flex;
  align-items: center;
  justify-content: flex-end;
  gap: 8px;
  flex-wrap: wrap;
}


.post {
  overflow: visible;
}


/* One post card layout, shared by home, profile, saved posts and shop feed. */
.posthead {
  display: grid;
  grid-template-columns: minmax(0,1fr) auto;
  align-items: center;
  gap: 12px;
  min-width: 0;
}
.posthead .person {
  min-width: 0;
  display: flex;
  align-items: center;
  gap: 10px;
}
.posthead .person > span { min-width: 0; }
.posthead .person b, .posthead .person small {
  overflow-wrap: anywhere;
}
.post-more>summary svg {
  width: 21px;
  height: 21px;
}


.postimg,
.postvideo {
  width: 100%;
  display: block;
  margin: 10px 0 0;
  border-radius: 12px;
}


.posttext {
  margin: 10px 0 0;
  overflow-wrap: anywhere;
}


.post-more-menu {
  position: absolute;
  right: 0;
  top: 32px;
  min-width: 170px;
  padding: 7px;
}


.post-menu-item {
  display: flex;
  width: 100%;
  align-items: center;
  gap: 8px;
  padding: 9px;
  border: 0;
  background: transparent;
  text-align: left;
}


.post-extra-row {
  display: flex;
  align-items: center;
  gap: 4px 12px;
  flex-wrap: wrap;
  margin: 5px 0 0;
  font-size: 12px;
  line-height: 1.35;
}

.post-extra-chip {
  display: inline-flex;
  align-items: center;
  gap: 4px;
  min-width: 0;
  max-width: 100%;
  padding: 0;
  color: var(--mc-muted,#66738b);
  font-size: inherit;
}
.post-extra-chip .mc-outline-icon { width: 15px; height: 15px; flex: 0 0 15px; }
.post-extra-chip[data-post-checkin] span { display: inline-block; max-width: min(75vw,380px); overflow: hidden; white-space: nowrap; text-overflow: ellipsis; vertical-align: bottom; }
.post-mention { display: inline-flex; align-items: center; gap: 4px; max-width: 100%; margin: 0 1px; color: var(--mc-accent,#087ccf); font-weight: 600; text-decoration: none; vertical-align: middle; }
.post-mention-avatar,.post-mention-icon { width: 22px; height: 22px; border-radius: 50%; object-fit: cover; flex: 0 0 22px; display: inline-flex; align-items:center; justify-content:center; overflow: hidden; }
.post-mention-icon { background:var(--mc-input-material,#f0f3f6); }
.post-mention-icon svg { width: 15px; height: 15px; }
.mention-shop-fallback { display:inline-flex; align-items:center; justify-content:center; border:1px solid var(--mc-border,#dfe4e9); }
.mention-shop-fallback svg { width: 19px; height: 19px; }
.post-mention:focus-visible { outline: 2px solid var(--mc-accent,#00e7ef); outline-offset: 2px; border-radius: 4px; }


.comment {
  padding: 9px 0;
  border-bottom: 1px solid rgba(90,120,150,.12);
}


/* Post detail comments — single-source professional thread */
.records-grid {
  display: grid;
  gap: 10px;
}


.userrow,
.blocked-user-row {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 10px;
}


.form-actions {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
}


.whatsapp-btn,
.whatsapp-pro-btn {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 7px;
}


.whatsapp-action-icon {
  display: grid;
  place-items: center;
  width: 30px;
  height: 30px;
  flex: 0 0 30px;
}


.whatsapp-action-icon .mc-outline-icon {
  width: 25px!important;
  height: 25px!important;
  stroke-width: 1.9;
}


.conversation-copy>* {
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}


.chat-panel {
  padding: 12px;
}


.message-send-pro textarea,
.message-send-pro input {
  margin: 0;
}


.message-photo {
  display: block;
  width: auto;
  height: auto;
  max-width: min(100%, 300px, 76vw);
  max-height: min(340px, 46vh);
  object-fit: contain;
  border-radius: 12px;
}


.notification-tabs {
  display: flex;
  gap: 7px;
  overflow: auto;
}


.notifications-list {
  display: grid;
  gap: 8px;
}


.notification-card {
  display: flex;
  align-items: center;
  gap: 12px;
  padding: 13px;

  min-height: 68px;}


.notification-main {
  flex: 1;
  min-width: 0;
}


.search-results-section {
  margin-top: 12px;
}


/* People directory: single canonical component rules. */
.people-discovery-grid {
  display: grid;
  grid-template-columns: repeat(2,minmax(0,1fr));
  gap: 12px;
  min-width: 0;
}


.people-only-page {
  min-width: 0;
}


.people-only-page>.section-row {
  align-items: center;
  gap: 12px;
  margin-bottom: 12px;
}


.people-only-page>.section-row h2 {
  font-size: clamp(19px,3.8vw,23px);
  line-height: 1.2;
  margin: 0 0 3px;
}


.people-only-page>.section-row p {
  font-size: 12px;
  line-height: 1.35;
  margin: 0;
}


.people-only-page #peopleResultCount {
  font-size: 13px;
  font-weight: 700;
  min-width: 32px;
  text-align: center;
}


.discovery-avatar {
  width: 48px;
  height: 48px;
  min-width: 48px;
  max-width: 48px;
  flex: 0 0 48px;
  border-radius: 50%;
  object-fit: cover;
  overflow: hidden;
}


.people-suggest-pro {
  display: grid;
  grid-template-columns: minmax(0,1fr) 98px;
  align-items: center;
  column-gap: 12px;
  min-width: 0;
  min-height: 96px;
  padding: 13px;
  border: 1px solid var(--mc-border,#dfe4e9);
  border-radius: 16px;
  box-sizing: border-box;
}


.people-suggest-main {
  display: grid;
  grid-template-columns: 48px minmax(0,1fr);
  align-items: center;
  gap: 10px;
  min-width: 0;
  width: 100%;
  text-decoration: none;
  color: inherit;
}


.people-suggest-copy {
  display: flex;
  flex-direction: column;
  gap: 2px;
  min-width: 0;
}


.people-suggest-copy b {
  font-size: 14px;
  line-height: 1.32;
  font-weight: 750;
  white-space: normal;
  overflow-wrap: anywhere;
  display: block;
  min-width: 0;
}


.people-suggest-copy small {
  font-size: 12px;
  line-height: 1.4;
  display: block;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
  color: var(--mc-muted,#667085);
}


.people-suggest-meta {
  display: grid;
  grid-template-columns: minmax(0,1fr);
  justify-items: start;
  gap: 2px;
  min-width: 0;
  max-width: 100%;
  margin-top: 3px;
  font-size: 11px;
  line-height: 1.3;
  color: var(--mc-muted,#667085);
}


.people-suggest-meta em,
.people-suggest-meta i {
  min-width: 0;
  max-width: 100%;
  font-style: normal;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}


.people-suggest-meta em {
  display: inline-flex;
  gap: 3px;
  align-items: center;
}


.people-suggest-meta em .svgicon,
.people-suggest-meta em .mc-outline-icon {
  width: 13px;
  height: 13px;
  flex: 0 0 13px;
}


.people-suggest-meta mark {
  font-size: 10px;
  border: 1px solid var(--mc-border,#dfe4e9);
  border-radius: 8px;
  background: transparent;
  color: inherit;
  padding: 1px 6px;
  line-height: 1.3;
}


.people-suggest-pro>.js-suggest-follow {
  width: 98px;
  min-width: 0;
  min-height: 42px;
  padding: 5px 7px;
  font-size: 12px;
  font-weight: 750;
  line-height: 1.2;
  white-space: nowrap;
  justify-self: end;
  align-self: center;
  margin-top: 0;
  border: 1px solid var(--mc-border,#dfe4e9);
  border-radius: 12px;
  box-sizing: border-box;
  color: var(--mc-text,#111);
  background: var(--mc-card-material,#fff);
  box-shadow: none;
}

.people-suggest-pro>.js-suggest-follow.is-following {
  background: var(--mc-input-material,#f8fafc);
  border-color: var(--mc-border,#dfe4e9);
}


.people-only-page .feed-load-row {
  margin-top: 10px;
}


@media(max-width:700px) {
  .people-discovery-grid {
  grid-template-columns: minmax(0,1fr);
  gap: 8px;
}
}


@media(max-width:360px) {
  .people-suggest-pro {
  grid-template-columns: minmax(0,1fr) 82px;
  padding: 10px;
  gap: 9px;
}

  .people-suggest-main {
  grid-template-columns: 44px minmax(0,1fr);
  gap: 7px;
}

  .people-suggest-main .discovery-avatar {
  width: 44px;
  height: 44px;
  min-width: 44px;
  max-width: 44px;
  flex-basis: 44px;
}

  .people-suggest-pro>.btn,
  .people-suggest-pro>.js-suggest-follow {
  width: 82px;
  padding: 5px 3px;
  font-size: 11px;
}
}


.discovery-person:not(.people-suggest-pro) {
  display: flex;
  align-items: center;
  gap: 9px;
  padding: 10px;
}


.settings-group-head {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 10px;
}


.settings-group-body {
  padding-top: 8px;
}


.blocked-user-row {
  padding: 9px 0;
}


.settings-delete-form {
  display: grid;
  gap: 8px;
}


table {
  width: 100%;
  border-collapse: collapse;
}


th,
td {
  padding: 9px;
  text-align: left;
  border-bottom: 1px solid rgba(90,120,150,.12);
  white-space: nowrap;
}


.feature-installed-card {
  display: flex;
  justify-content: space-between;
  gap: 10px;
  align-items: center;
}


.feature-installed-actions {
  display: flex;
  gap: 6px;
  flex-wrap: wrap;
}


.feature-safety-note {
  display: grid;
  gap: 4px;
  padding: 10px;
}


.svgicon,
.nav-svgicon,
.social-svg {
  width: 21px;
  height: 21px;
  fill: none;
  stroke: currentColor;
  stroke-width: 1.9;
  stroke-linecap: round;
  stroke-linejoin: round;
  flex: 0 0 auto;
}


.navbadge {
  display: inline-grid;
  place-items: center;
  min-width: 18px;
  height: 18px;
  padding: 0 5px;
  border-radius: 999px;
  font-size: 9px;
  font-weight: 900;
}


.top-bell,
.top-profile-link,
.top-login,
.menu-toggle {
  display: grid;
  place-items: center;
}


.top-login {
  padding: 0 12px;
  display: flex;
}


.top-profile-link img {
  border-radius: 50%;
  object-fit: cover;
}


.header-search button[hidden] {
  display: none !important;
}


.tablewrap {
  overflow: auto;
  overflow-x: auto;
  -webkit-overflow-scrolling: touch;
}


.message-filters {
  display: grid !important;
  grid-template-columns: repeat(4,minmax(0,1fr)) minmax(66px,auto);
  align-items: stretch;
  gap: 4px !important;
  width: 100%;
  min-width: 0;
}


.message-filters .pill {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 100%;
  min-width: 0;
  margin: 0 !important;
  padding: 7px 2px !important;
  font-size: clamp(9px,2.7vw,11px) !important;
  white-space: nowrap;
}


.new-group-btn {
  display: inline-flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  gap: 1px;
  min-width: 0;
  margin: 0;
  padding: 6px 4px;
  white-space: nowrap;
  border: 1px solid var(--mc-border,#dfe4e9);
  border-radius: var(--mc-control-radius,12px);
  background: var(--mc-card-material,#fff);
  color: var(--mc-text,#000000);
  font: inherit;
  font-size: 12px;
  font-weight: 800;
  cursor: pointer;
  min-height: 42px;
}


.new-group-btn .mc-outline-icon {
  width: 15px;
  height: 15px;
  flex: 0 0 15px;
}


.new-group-btn span {
  font-size: 10px;
  line-height: 1.05;
  white-space: nowrap;
}


.new-group-btn[aria-expanded="true"] {
  background: var(--mc-active,#1683ff);
  color: #fff;
  border-color: var(--mc-active,#1683ff);
}


/* Group management: canonical controls shared by Group Info and Admin Center. */
.group-member-actions {
  display: flex;
  gap: 5px;
  flex-wrap: wrap;
  align-items: center;
  justify-content: flex-end;
}


.group-switch-row {
  display: flex;
  align-items: center;
  gap: 10px;
  min-height: 40px;
  font-size: 13px;
}


.group-action-block .group-switch-row input[type="checkbox"] {
  appearance: auto!important;
  -webkit-appearance: checkbox!important;
  width: 19px!important;
  max-width: 19px!important;
  min-width: 19px!important;
  height: 19px!important;
  min-height: 19px!important;
  max-height: 19px!important;
  padding: 0!important;
  margin: 0!important;
  flex: 0 0 19px;
}


.group-post-disabled {
  padding: 14px;
  text-align: center;
  color: var(--mc-muted,#657184);
  font-size: 13px;
}


.admin-group-cards {
  display: grid;
  gap: 12px;
}


.admin-group-detail {
  display: grid;
  gap: 12px;
  margin-top: 12px;
  padding: 14px;
  border: 1px solid var(--mc-border,#dfe4e9);
  border-radius: 14px;
  min-width: 0;
}


.admin-group-detail[hidden] {
  display: none!important;
}


.admin-group-detail input[name="name"] {
  display: block;
  width: 100%;
  min-width: 0;
  box-sizing: border-box;
  padding: 12px;
  border: 1px solid var(--mc-border,#dfe4e9);
  border-radius: 10px;
  background: var(--mc-card-material,#fff);
}


.admin-group-card .section-row {
  flex-wrap: wrap;
}


.admin-group-card h3 {
  margin: 0;
}


.admin-group-detail .group-member-actions button {
  font-size: 12px;
}


.group-member-actions button {
  font-size: 11px;
}


@media(max-width:380px) {
  .group-member-actions {
  width: 100%;
  justify-content: flex-end;
}

  .admin-group-detail {
  padding: 9px;
}
}


/* Canonical message group management controls: member lookup and owner actions. */
.new-group-card {
  min-width: 0;
  padding: clamp(14px,3vw,22px)!important;
}


.new-group-card .section-row {
  display: flex;
  align-items: flex-start;
  gap: 12px;
}


.new-group-card .section-row h2 {
  margin: 0 0 4px;
}


.new-group-card .section-row p {
  margin: 0 0 14px;
  line-height: 1.45;
  font-size: 13px;
}


.new-group-card #newGroupForm {
  display: grid;
  gap: 14px;
  min-width: 0;
}


.new-group-card #newGroupForm>label,
.group-member-picker>label,
.group-action-block>label {
  font-size: 13px;
  font-weight: 700;
  color: var(--mc-text,#111827);
}


.new-group-card #newGroupForm>input,
.group-member-search,
.group-rename-row input {
  display: block;
  width: 100%;
  max-width: 100%;
  min-width: 0;
  min-height: 44px;
  padding: 10px 12px;
  border: 1px solid var(--mc-border,#dfe4e9);
  border-radius: 12px;
  background: var(--mc-card-material,#fff);
  color: var(--mc-text,#111827);
  font: inherit;
  box-sizing: border-box;
}


.group-member-picker {
  min-width: 0;
  display: grid;
  gap: 8px;
}


.group-member-results {
  display: grid;
  gap: 5px;
  min-width: 0;
  max-height: 245px;
  overflow: auto;
  overscroll-behavior: contain;
}


.group-member-results>small {
  padding: 9px 2px;
  color: var(--mc-muted,#657184);
  font-size: 12px;
}


.group-member-result {
  display: flex;
  align-items: center;
  gap: 9px;
  min-width: 0;
  width: 100%;
  padding: 9px;
  border: 1px solid var(--mc-border,#dfe4e9);
  border-radius: 12px;
  background: var(--mc-card-material,#fff);
  text-align: left;
  font: inherit;
  color: var(--mc-text,#111827);
  cursor: pointer;
}


.group-member-result>span:nth-child(2) {
  flex: 1;
  min-width: 0;
  display: grid;
  gap: 2px;
}


.group-member-result b,
.group-member-name b {
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
  font-size: 13px;
}


.group-member-result small,
.group-member-name small {
  overflow-wrap: anywhere;
  font-size: 12px;
  color: var(--mc-muted,#657184);
}


.group-member-avatar {
  width: 40px;
  height: 40px;
  min-width: 40px;
  border-radius: 50%;
  object-fit: cover;
  overflow: hidden;
}


.group-add-label {
  flex: 0 0 auto;
  font-size: 12px;
  font-weight: 700;
  color: var(--mc-active,#1683ff);
}


.group-member-chips {
  display: flex;
  flex-wrap: wrap;
  gap: 6px;
  min-width: 0;
}


.group-member-chip {
  display: inline-flex;
  align-items: center;
  gap: 6px;
  max-width: 100%;
  padding: 6px 8px;
  border: 1px solid var(--mc-border,#dfe4e9);
  background: var(--mc-card-material,#fff);
  border-radius: 18px;
  font-size: 12px;
  font-weight: 700;
  overflow-wrap: anywhere;
}


.group-member-chip small {
  color: var(--mc-muted,#657184);
  font-size: 11px;
}


.group-member-chip button {
  width: 21px;
  height: 21px;
  border: 0;
  border-radius: 50%;
  background: var(--mc-border,#dfe4e9);
  color: var(--mc-text,#111827);
  cursor: pointer;
}


.group-chat-head {
  display: flex;
  align-items: center;
  gap: 10px;
  min-width: 0;
}


.group-chat-title {
  min-width: 0;
  flex: 1;
  display: grid;
  gap: 2px;
}


.group-chat-title b {
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
}


.group-manage-trigger {
  flex: 0 0 auto;
  font-size: 12px;
}


.group-manage-panel {
  display: grid;
  gap: 14px;
  padding: 14px;
  border: 1px solid var(--mc-border,#dfe4e9);
  border-radius: 14px;
  background: var(--mc-card-material,#fff);
  min-width: 0;
}


.group-manage-panel[hidden] {
  display: none!important;
}


.group-panel-heading {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 10px;
}


.group-panel-heading small {
  font-size: 12px;
  color: var(--mc-muted,#657184);
}


.group-member-list {
  display: grid;
  gap: 6px;
  min-width: 0;
  max-height: 270px;
  overflow: auto;
}


.group-member-row {
  display: flex;
  align-items: center;
  gap: 9px;
  min-width: 0;
  padding: 8px 0;
  border-bottom: 1px solid var(--mc-border,#dfe4e9);
  flex-wrap: wrap;
}


.group-member-name {
  display: grid;
  gap: 2px;
  min-width: 0;
  flex: 1;
}


.group-member-row button {
  flex: 0 0 auto;
  font-size: 11px;
  padding: 7px 9px;
}


.group-action-block {
  display: grid;
  gap: 9px;
  min-width: 0;
  margin: 0;
  padding-top: 12px;
  border-top: 1px solid var(--mc-border,#dfe4e9);
}


.group-action-block h3 {
  margin: 0;
  font-size: 15px;
}


.group-action-button,
.group-delete-button,
.group-leave-button {
  width: 100%;
  min-height: 42px;
}


.group-rename-row {
  display: grid;
  grid-template-columns: minmax(0,1fr) auto;
  gap: 7px;
  min-width: 0;
}


.group-rename-row button {
  white-space: nowrap;
  padding: 8px 12px;
}


.afc-group-actions {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 8px;
  margin: 8px 0;
}


@media(max-width:380px) {
  .group-manage-panel {
  padding: 10px;
}

  .group-member-result {
  padding: 7px;
}

  .group-member-row button {
  padding: 6px;
}

  .group-rename-row {
  grid-template-columns: minmax(0,1fr);
}

  .group-chat-head {
  gap: 6px;
}

  .group-manage-trigger {
  padding: 7px 8px;
}
}


.search-message-row {
  grid-template-columns: 44px minmax(0,1fr) !important;
}


.conversation-copy {
  display: flex;
  flex-direction: column;
  flex: 1;
}


.guest-auth-actions {
  display: flex;
  align-items: center;
  gap: 6px;
}


.top-register {
  min-height: 42px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  padding: 0 12px;
  font-weight: 900;
}


.guest-access-card {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
}


.guest-access-card>div:first-child {
  display: grid;
  gap: 3px;
}


.guest-access-actions {
  display: flex;
  gap: 7px;
  flex-wrap: wrap;
}


@media (max-width:390px) {
  .brand strong {
  font-size: 20px;
}

  .guest-auth-actions {
  gap: 3px;
}

  .guest-auth-actions .top-register,
  .guest-auth-actions .top-login {
  display: inline-flex !important;
  padding-left: 7px !important;
  padding-right: 7px !important;
  font-size: 9px !important;
}
}


.terms-check {
  display: flex !important;
  align-items: flex-start !important;
  gap: 9px !important;
  margin: 8px 0 !important;
  line-height: 1.35 !important;
}


.terms-check>input[type=checkbox] {
  appearance: auto !important;
  -webkit-appearance: checkbox !important;
  width: 18px !important;
  height: 18px !important;
  min-width: 18px !important;
  min-height: 18px !important;
  margin: 2px 0 0 !important;
  padding: 0 !important;
  border-radius: 4px !important;
  flex: 0 0 18px !important;
}


.terms-check>span {
  min-width: 0 !important;
}


/* File picker: one canonical owner for Admin / shop / post attachment controls. */
.custom-file-picker {
  box-sizing: border-box;
  display: grid;
  gap: 9px;
  min-width: 0;
  width: 100%;
  max-width: 100%;
  padding: 12px;
  border: 1px solid var(--mc-border,#dfe4e9);
  border-radius: 12px;
  background: var(--mc-input-material,#f8fafc);
}


.custom-file-title {
  display: flex;
  align-items: center;
  gap: 8px;
  min-width: 0;
  font-size: 13px;
  font-weight: 800;
  line-height: 1.3;
}


.custom-file-title .mc-outline-icon {
  width: 19px;
  height: 19px;
  flex: 0 0 19px;
}


.custom-file-row {
  display: flex;
  flex-wrap: wrap;
  gap: 10px;
  align-items: center;
  min-width: 0;
  width: 100%;
}


.custom-file-button {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 7px;
  flex: 0 0 auto;
  min-height: 42px;
  max-width: 100%;
  box-sizing: border-box;
  padding: 9px 13px;
  border-radius: 10px;
  cursor: pointer;
  font-size: 12px;
  font-weight: 800;
  line-height: 1.25;
  background: var(--mc-card-material,#fff);
  color: var(--mc-text,#111827);
  border: 1px solid var(--mc-border,#dfe4e9);
  box-shadow: none;
}


.custom-file-button .mc-outline-icon {
  flex: none;
  width: 17px;
  height: 17px;
}


.custom-file-button:focus-within,
.custom-file-button:hover {
  border-color: var(--mc-button,#0a99ce);
}


.custom-file-name {
  flex: 1 1 110px;
  min-width: 0;
  max-width: 100%;
  font-size: 12px;
  line-height: 1.35;
  color: var(--mc-muted,#667085);
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}


/* Shared file-picker preview: Admin post/announcement, Shop, and profile photo forms. */
.custom-file-media-preview { display:flex; align-items:center; gap:10px; padding:8px; min-width:0; margin-top:8px; border:1px solid var(--mc-border,#dfe4e9); border-radius:12px; background:var(--mc-input-material,#f7f9fc); }
.custom-file-media-preview img, .custom-file-media-preview video { width:64px; height:64px; flex:0 0 64px; object-fit:contain; border-radius:9px; }
.custom-file-media-preview audio { min-width:0; width:min(100%,210px); }
.custom-file-media-preview .btn { margin-left:auto; flex-shrink:0; }

.custom-file-note {
  font-size: 11px;
  color: var(--mc-muted,#667085);
  line-height: 1.3;
}


.admin-pro-form .grid2 {
  display: grid;
  grid-template-columns: repeat(2,minmax(0,1fr));
  gap: 10px;
  min-width: 0;
}


.admin-pro-form .grid2>label {
  display: grid;
  gap: 5px;
  min-width: 0;
  max-width: 100%;
}


.admin-pro-form input[type=file] {
  display: block;
  box-sizing: border-box;
  width: 100%;
  max-width: 100%;
  min-width: 0;
  font-size: 12px;
}


.admin-pro-form input[type=file]::file-selector-button {
  min-height: 38px;
  margin-right: 8px;
  background: var(--mc-card-material,#fff);
  border: 1px solid var(--mc-border,#dfe4e9);
  border-radius: 9px;
  padding: 6px 9px;
  color: var(--mc-text,#111827);
  font: inherit;
  font-weight: 750;
}


@media(max-width:600px) {
  .admin-pro-form .grid2 {
  grid-template-columns: minmax(0,1fr);
}

  .custom-file-row {
  align-items: flex-start;
}

  .custom-file-name {
  flex-basis: 120px;
  align-self: center;
}
}


html.core-auth-route body.flat-theme main#app {
  min-height: 0 !important;
}


body.flat-theme .core-auth-shell {
  width: 100% !important;
  min-height: calc(100svh - 150px) !important;
  display: grid !important;
  place-items: center !important;
  visibility: visible !important;
  opacity: 1 !important;
}


body.flat-theme .core-auth-panel {
  display: block !important;
  width: min(430px,100%) !important;
  height: auto !important;
  min-height: 0 !important;
  max-height: none !important;
  overflow: visible !important;
  visibility: visible !important;
  opacity: 1 !important;
}


body.flat-theme .core-auth-form {
  display: grid !important;
  grid-template-columns: minmax(0,1fr) !important;
  gap: 11px !important;
  width: 100% !important;
  height: auto !important;
  min-height: 0 !important;
  max-height: none !important;
  overflow: visible !important;
  visibility: visible !important;
  opacity: 1 !important;
  margin-top: 10px !important;
}


body.flat-theme .core-auth-form>input:not([type=hidden]) {
  display: block !important;
  width: 100% !important;
  height: auto !important;
  min-height: 48px !important;
  max-height: none !important;
  visibility: visible !important;
  opacity: 1 !important;
  margin: 0 !important;
}


/* Login / Registration share one password control with an accessible visibility action. */
body.flat-theme .core-auth-form>.core-auth-password-control {
  position: relative;
  display: flex;
  align-items: center;
  width: 100%;
  min-width: 0;
}

body.flat-theme .core-auth-form>.core-auth-password-control>input {
  display: block;
  width: 100%;
  min-width: 0;
  min-height: 48px;
  margin: 0;
  padding-inline-end: 54px;
  background: var(--mc-input-material,#fff);
  color: var(--mc-text,#000);
}

body.flat-theme .core-auth-form .core-auth-password-eye {
  position: absolute;
  inset-inline-end: 4px;
  top: 50%;
  transform: translateY(-50%);
  width: 42px;
  height: 42px;
  display: grid;
  place-items: center;
  padding: 0;
  border: 0;
  border-radius: 10px;
  background: transparent;
  color: var(--mc-text,#111);
  cursor: pointer;
}

.core-auth-password-eye .svgicon {
  width: 21px;
  height: 21px;
}

.core-auth-password-eye.is-visible::after {
  content: '';
  position: absolute;
  width: 26px;
  height: 1.6px;
  background: currentColor;
  transform: rotate(-40deg);
}

.core-auth-password-eye:focus-visible {
  outline: 2px solid var(--mc-accent,#06c5d8);
  outline-offset: 0;
}

body.flat-theme .core-auth-form>.core-auth-submit {
  display: inline-flex !important;
  width: 100% !important;
  min-height: 48px !important;
  visibility: visible !important;
  opacity: 1 !important;
  margin-top: 2px !important;
}


body.flat-theme .core-auth-link {
  display: block !important;
  visibility: visible !important;
  opacity: 1 !important;
}


body.flat-theme .login-mode-grid {
  display: grid !important;
  gap: 8px !important;
  margin: 10px 0 14px !important;
}


.notification-page-frame .page-heading,
.notification-page-frame .notification-tabs,
.notification-page-frame .notifications-list,
.notification-page-frame .notification-card {
  width: 100%;
  max-width: 100%;
  min-width: 0;
  box-sizing: border-box;
}


.notification-page-frame .notification-tabs {
  overflow-x: auto;
  overflow-y: hidden;
  scrollbar-width: none;
  padding-bottom: 3px;
}


.notification-page-frame .notification-tabs::-webkit-scrollbar {
  display: none;
}


.notification-page-frame .notification-main {
  min-width: 0;
  max-width: 100%;
  overflow: hidden;
  display: grid;
  gap: 2px;
}


.notification-page-frame .notification-main b,
.notification-page-frame .notification-main span,
.notification-page-frame .notification-main small {
  min-width: 0;
  max-width: 100%;
  white-space: normal;
  overflow-wrap: anywhere;
  word-break: break-word;
}


.notification-page-frame .notification-avatar,
.notification-page-frame .notification-icon,
.notification-page-frame .notification-arrow {
  flex: 0 0 auto;
  min-width: 0;
}


*,
*::before,
*::after {
  box-sizing: border-box;
}


main#app :is(section,article,div,form,label,span,a,button,input,textarea,select) {
  min-width: 0;
}


main#app :is(img,video,audio,iframe,canvas) {
  max-width: 100%;
}


main#app :is(input,textarea,select) {
  width: 100%;
  max-width: 100%;
}


.notification-page-frame {
  padding: 10px;
  border: 1px solid #dfe4e9;
  border-radius: var(--mc-card-radius);
  background: #ffffff;
  box-shadow: none;
  display: grid;
  gap: 9px;
}


.notification-page-frame .notifications-list {
  gap: 7px;
}


.notification-page-frame .notification-card {
  display: grid;
  grid-template-columns: auto minmax(0,1fr) auto;
  align-items: center;
  gap: 10px;
  overflow: hidden;
  text-decoration: none;
  min-height: 64px !important;
  padding: 9px 10px !important;
  border-radius: 12px !important;
}


.notification-avatar-shell {
  width: var(--mc-notification-avatar,46px);
  height: var(--mc-notification-avatar,46px);
  border-radius: 50%;
  overflow: hidden;
  flex: 0 0 auto;
  display: grid;
  place-items: center;
}


.notification-page-frame .notification-avatar {
  width: 100% !important;
  height: 100% !important;
  max-width: none !important;
  border-radius: 50% !important;
  object-fit: cover !important;
  display: grid !important;
  place-items: center !important;
  font-weight: 900 !important;
  border: 2px solid #dfe4e9 !important;
}


.notification-page-frame .notification-icon {
  width: var(--mc-notification-avatar,46px);
  height: var(--mc-notification-avatar,46px);
  display: grid;
  place-items: center;
  border-radius: 50%;
  background: #ffffff;
}


.notification-page-frame .notification-icon svg {
  width: 25px;
  height: 25px;
}


.notification-title-row {
  display: flex;
  align-items: baseline;
  justify-content: space-between;
  gap: 8px;
  min-width: 0;
}


.notification-title-row b {
  min-width: 0;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap !important;
}


.notification-title-row small {
  flex: 0 0 auto;
  white-space: nowrap !important;
  font-size: 9px;
}


.notification-page-frame .notification-main>span {
  font-size: 12px;
  line-height: 1.35;
  display: -webkit-box;
  -webkit-line-clamp: 2;
  -webkit-box-orient: vertical;
  overflow: hidden !important;
}


.notification-arrow {
  opacity: .55;
}


.notification-arrow svg {
  width: 17px !important;
  height: 17px !important;
}


.feature-toggle-btn {
  min-width: 104px !important;
}


.route-frame {
  padding: var(--mc-frame-pad,10px);
  overflow: hidden !important;
  width: 100%;
  display: grid;
  gap: var(--mc-gap,12px);
}


.route-frame>* {
  min-width: 0;
  max-width: 100%;
}


.card,
.route-frame,
.post,
.composer,
.chat-panel,
.announcement-card,
.notification-card {
  box-sizing: border-box;
}


.mc-tool span:last-child,
.navlabel {
  font-size: var(--mc-control-font) !important;
  line-height: 1.15 !important;
}


.message-page-frame>.page-heading {
  margin: 0 !important;
}


.conversation-row time {
  font-size: 10px;
  white-space: nowrap;
  align-self: flex-start;
}


.conversation-unread-dot {
  position: absolute;
  right: 10px;
  bottom: 10px;
}




.chat-person {
  padding-bottom: 9px;
  border-bottom: 1px solid rgba(100,120,160,.12);
}


.messages {
  margin: 0 !important;
  border-radius: 14px;
  padding: 10px !important;
  background: var(--mc-card-material,#ffffff);
  scrollbar-gutter: auto;
}


.message-send-pro textarea {
  min-width: 0 !important;
  max-height: 120px !important;
}


.message-emoji-picker,
.message-attachment-preview {
  grid-column: 1/-1;
}


.announcement-more>summary::-webkit-details-marker {
  display: none;
}


.announcement-more>summary span {
  display: block;
  width: 4px;
  height: 4px;
  border-radius: 50%;
  background: currentColor;
  margin: 2px auto;
}


.announcement-menu-item {
  width: 100%;
  border: 0;
  background: transparent;
  display: flex;
  align-items: center;
  gap: 8px;
  padding: 10px;
  text-align: left;
  border-radius: 11px;
}


.announcement-menu-item.danger {
  color: #000000;
}


:is(.posttext,.bio,.profile-pro-copy,.profile-about-item,.shop-pro-copy,.shop-detail-summary,.shop-description-compact,.announcement-text,.message,.notification-main,.conversation-copy,.admin-report-card,.record-user-main) {
  min-width: 0;
  max-width: 100%;
  overflow-wrap: anywhere;
  word-break: break-word;
}


:is(input,textarea,select,button,.btn,.pill) {
  max-width: 100%;
  box-sizing: border-box;
}


.announcement-more[open]>summary {
  background: #ffffff !important;
}


body {
  margin: 0;
  min-height: 100svh;
  font-family: Inter,ui-rounded,"SF Pro Rounded",-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,Arial,sans-serif;
  color: var(--mc-text,#000000);
  background: var(--mc-page-bg,#ffffff);
  font-size: clamp(15px,calc(16px * var(--mc-font,1)),18px) !important;
}


main#app,
main#app>* {
  min-width: 0;
  max-width: 100%;
}


.route-frame,
.card:not(.google-ad-card),
.post,
.composer,
.message-page-frame,
.announcement-card,
.notification-card {
  min-width: 0;
  max-width: 100%;
}


.top,
.side-menu,
.composer,
.post,
.message-page-frame,
.notification-page-frame,
.announcement-card {
  font-size: clamp(14px,calc(15px * var(--mc-font,1)),17px);
}


.posttext,
.announcement-text {
  font-size: clamp(14px,3.7vw,16px) !important;
  line-height: 1.48 !important;
}


.message-page-frame {
  display: grid !important;
  gap: 12px !important;
}


.conversation-list {
  display: grid !important;
  gap: 9px !important;
}


.conversation-row {
  align-items: center;
  gap: 12px;
  display: grid !important;
  grid-template-columns: 44px minmax(0,1fr) auto !important;
  margin: 0 !important;
  padding: 12px !important;
  position: relative !important;
  min-height: 76px !important;
}


.message-filter-card {
  min-width: 0;
  padding: 12px !important;
}


.announcement-more-menu {
  position: absolute;
  right: 0;
  top: 38px;
  min-width: 190px;
  padding: 7px;
  border-radius: var(--mc-popup-radius);
  background: var(--mc-popup-paper);
  border: 1px solid var(--mc-popup-border);
  box-shadow: 0 10px 26px rgba(15,28,39,.12);
  max-width: min(230px,calc(100vw - 36px)) !important;
}


/* Auth routes own their page branding. The site header does not appear on Login, Register or Reset. */
html.core-auth-route body.flat-theme > .top,
html.core-auth-route body.flat-theme > #mcHeaderSearchPanel {
  display: none !important;
}

.core-auth-shell,
.core-auth-panel,
.core-auth-form {
  min-width: 0 !important;
  max-width: 100% !important;
}


.core-auth-panel {
  overflow: visible !important;
}


.announcement-head,
.posthead {
  position: relative !important;
  z-index: 70 !important;
}


.announcement-more,
.post-more {
  position: relative !important;
  z-index: 75 !important;
}


.announcement-more[open],
.post-more[open] {
  z-index: 900 !important;
}


.announcement-more-menu,
.post-more-menu {
  z-index: 1000 !important;
  pointer-events: auto !important;
}


.announcement-more-menu>*,
.post-more-menu>* {
  pointer-events: auto !important;
}


html body [hidden] {
  display: none !important;
}


.post-more>summary {
  list-style: none !important;
  width: 36px !important;
  height: 36px !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  cursor: pointer !important;
  border: 1px solid #dfe4e9 !important;
  border-radius: 12px !important;
  background: #ffffff !important;
  box-shadow: none !important;
}


.post-more>summary::-webkit-details-marker {
  display: none !important;
}




.post-more[open]>summary {
  background: #ffffff !important;
}


.announcement-card {
  display: grid;
  gap: 10px;
  padding: var(--mc-post-pad,var(--mc-card-pad,16px));
  overflow: visible !important;
}


.announcement-head {
  justify-content: space-between;
  display: grid !important;
  grid-template-columns: minmax(0,1fr) 38px !important;
  gap: 10px !important;
  align-items: start !important;
  width: 100% !important;
}


.announcement-author {
  flex: 1;
  display: grid !important;
  grid-template-columns: 44px minmax(0,1fr) !important;
  gap: 10px !important;
  align-items: center !important;
  min-width: 0 !important;
}


.announcement-avatar {
  width: 44px !important;
  height: 44px !important;
  min-width: 44px !important;
  max-width: 44px !important;
  flex: 0 0 44px !important;
  border-radius: 50% !important;
}


.announcement-author>span {
  display: block !important;
  min-width: 0 !important;
}


.announcement-author b {
  display: block !important;
  font-size: 14px !important;
  line-height: 1.18 !important;
  white-space: normal !important;
  overflow-wrap: anywhere !important;
}


.announcement-author small {
  display: block !important;
  margin-top: 3px !important;
  font-size: 10px !important;
  line-height: 1.25 !important;
  white-space: normal !important;
  overflow-wrap: anywhere !important;
}


.announcement-menu-slot {
  width: 38px !important;
  min-width: 38px !important;
  display: flex !important;
  justify-content: flex-end !important;
  align-items: flex-start !important;
}


.announcement-menu-slot:empty {
  display: none !important;
}


.announcement-head:has(.announcement-menu-slot:empty) {
  grid-template-columns: minmax(0,1fr) !important;
}


.announcement-more>summary {
  list-style: none;
  display: grid;
  place-items: center;
  cursor: pointer;
  border: 1px solid #dfe4e9 !important;
  border-radius: 12px !important;
  background: #ffffff !important;
  box-shadow: none !important;
  width: 36px !important;
  height: 36px !important;
}


.announcement-kind-row {
  display: flex !important;
  align-items: center !important;
  margin: 9px 0 0 !important;
  min-width: 0 !important;
}


.announcement-kind {
  display: inline-flex !important;
  align-items: center !important;
  gap: 6px !important;
  max-width: 100% !important;
  min-width: 0 !important;
  padding: 6px 10px !important;
  border-radius: 12px !important;
  font-size: 10.5px !important;
  font-weight: 900 !important;
  line-height: 1.15 !important;
  white-space: normal !important;
  overflow: visible !important;
  text-overflow: clip !important;
}


.announcement-kind svg {
  width: 18px !important;
  height: 18px !important;
  flex: 0 0 18px !important;
}


.announcement-kind>span {
  min-width: 0 !important;
  overflow-wrap: anywhere !important;
}


.announcement-text {
  margin-top: 10px !important;
  padding-top: 10px !important;
  border-top: 1px solid #dfe4e9 !important;
}


.announcement-photo {
  width: 100%;
  border-radius: 12px;
  margin-top: 10px!important;
  max-width: 100%!important;
}


/* Guest header owns one full-width identity row. Signed-in header layout is unchanged. */
body.flat-theme .top.guest-top.guest-auth-hidden {
  height: auto !important;
  overflow: visible !important;
  grid-template-columns: minmax(0,1fr) !important;
  grid-template-areas: "brand" !important;
  justify-items: center;
}

.top.guest-top.guest-auth-hidden .top-actions {
  display: none !important;
}

body.flat-theme .top.guest-top.guest-auth-hidden .brand {
  width: min(100%,600px);
  max-width: 100%;
  min-width: 0 !important;
  margin-inline: auto !important;
  justify-self: center;
}

body.flat-theme .top.guest-top.guest-auth-hidden .site-brand-line {
  width: 100%;
  max-width: 100%;
  min-width: 0 !important;
}

body.flat-theme .top.guest-top.guest-auth-hidden .site-brand-icon {
  max-width: 100% !important;
  height: auto !important;
  flex-shrink: 1;
}

body.flat-theme .top.guest-top.guest-auth-hidden .brand-copy {
  min-width: 0;
  max-width: 100%;
}

body.flat-theme .top.guest-top.guest-auth-hidden #siteBrandTagline {
  max-width: 100%;
  white-space: normal;
  overflow-wrap: anywhere;
  text-align: center;
}

@media (max-width:700px) {
  body.flat-theme .top.guest-top.guest-auth-hidden .site-brand-line {
    flex-direction: column !important;
  }
  body.flat-theme .top.guest-top.guest-auth-hidden .site-brand-icon {
    max-width: min(100%,320px) !important;
  }
  body.flat-theme .top.guest-top.guest-auth-hidden .brand-copy {
    width: 100%;
    align-items: center;
  }
}


body.modal-open {
  overflow: hidden !important;
  touch-action: none;
}


.media-overlay,
.verify-gate {
  position: fixed !important;
  inset: 0 !important;
  z-index: 2147483000 !important;
  display: flex !important;
  align-items: flex-start !important;
  justify-content: center !important;
  padding: max(72px,calc(env(safe-area-inset-top) + 58px)) 14px 24px !important;
  background: rgba(32,38,74,.34) !important;
  overflow: auto !important;
}


.media-modal-card,
.verify-gate-card {
  position: relative !important;
  width: min(430px,calc(100vw - 28px)) !important;
  max-width: 430px !important;
  margin: 0 auto !important;
  padding: 20px !important;
  border-radius: var(--mc-popup-radius) !important;
  background: var(--mc-popup-paper) !important;
  border: 1px solid var(--mc-popup-border) !important;
  box-shadow: 0 14px 38px rgba(8,22,38,.12) !important;
  color: var(--mc-text) !important;
}


.media-modal-card h2,
.verify-gate-card h2 {
  margin: 4px 42px 8px 0 !important;
}


.media-modal-card p,
.verify-gate-card p {
  line-height: 1.45 !important;
}


.media-modal-close,
.verify-gate-close {
  position: absolute !important;
  right: 12px !important;
  top: 12px !important;
  width: 38px !important;
  height: 38px !important;
  background: var(--mc-popup-paper,#fff) !important;
  color: var(--mc-popup-ink,#101828) !important;
  border: 1px solid var(--mc-popup-border,#dfe4e9) !important;
  border-radius: 12px !important;
  display: grid !important;
  place-items: center !important;
  z-index: 3 !important;
}


.media-modal-icon {
  width: 54px;
  height: 54px;
  display: grid;
  place-items: center;
  margin-bottom: 8px;
}


.media-modal-icon svg {
  width: 48px !important;
  height: 48px !important;
}


/* The Posts Theme Studio owns the video policy hints in the existing media picker. */
.video-upload-hint {
  color: var(--mc-video-hint-color, #64748b);
  font-size: var(--mc-video-hint-size, 12px);
  line-height: 1.5;
  margin-block: 8px;
}
.media-source-grid {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 10px;
  margin-top: 16px;
}


.media-source-choice {
  min-width: 0;
  border: 1px solid var(--mc-popup-border,#dfe4e9);
  border-radius: 14px;
  padding: 14px 10px;
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 8px;
  text-align: center;
  background: var(--mc-input-bg,#f7f8fa);
  box-shadow: 0 4px 14px rgba(16,24,40,.045);
  color: var(--mc-popup-ink,var(--mc-text));
  cursor: pointer;
}


.media-source-choice svg {
  width: 42px !important;
  height: 42px !important;
}


.media-source-choice span {
  display: grid;
  gap: 2px;
}


.media-source-choice small {
  font-size: 11px;
  color: var(--mc-muted);
}

/* Canonical camera shutter: touch/hold is handled by the existing media composer. */
.media-inline-camera {
  display: block;
  width: 100%;
  height: min(46svh, 400px);
  border-radius: 14px;
  background: #14202b;
  object-fit: cover;
  margin: 12px 0;
}
.media-inline-status {
  min-height: 24px;
  text-align: center;
  font-size: 13px;
  color: var(--mc-muted);
}
.media-inline-actions {
  display: flex;
  justify-content: center;
  align-items: center;
  gap: 16px;
  flex-wrap: wrap;
  margin-top: 12px;
}
.media-inline-actions .btn { min-height: 44px; }
.media-inline-shutter {
  background: transparent;
  color: var(--mc-popup-ink,var(--mc-text));
  border: 0;
  min-width: 118px;
  display: inline-flex;
  flex-direction: column;
  align-items: center;
  gap: 8px;
  cursor: pointer;
  padding: 8px;
  touch-action: none;
  user-select: none;
  -webkit-user-select: none;
  -webkit-touch-callout: none;
}
.media-inline-shutter-core {
  width: 66px;
  height: 66px;
  background: var(--mc-primary,#00f2ff);
  border: 6px solid var(--mc-popup-bg,#fff);
  border-radius: 50%;
  box-shadow: 0 0 0 3px var(--mc-primary,#00f2ff), 0 4px 14px rgba(0,0,0,.12);
  transition: background .15s, border-radius .15s, transform .15s;
}
.media-inline-shutter.is-recording .media-inline-shutter-core {
  background: #e11d48;
  border-radius: 18px;
  transform: scale(.86);
  box-shadow: 0 0 0 4px #e11d48;
}
.media-inline-shutter-label { font-size: 12px; font-weight: 700; max-width: 146px; text-align:center; }
.media-inline-shutter:disabled { cursor: default; opacity: .5; }
.media-inline-shutter:focus-visible { outline: 2px solid var(--mc-primary,#00f2ff); outline-offset: 3px; }
.media-inline-recovery { margin: 12px auto 0; max-width: 360px; text-align:center; }
.media-inline-recovery[hidden], .media-inline-permission-help[hidden], .media-inline-audio-help[hidden] { display:none !important; }
.media-inline-permission-help, .media-inline-audio-help, .media-native-capture-choices { border: 1px solid var(--mc-popup-border,#dfe4e9); border-radius:12px; margin:10px auto; background:var(--mc-input-bg,#f7f8fa); text-align:left; }
.media-inline-permission-help summary, .media-inline-audio-help summary, .media-native-capture-choices summary { padding:11px 13px; font-size:13px; font-weight:650; cursor:pointer; color:var(--mc-popup-ink,var(--mc-text)); }
.media-inline-permission-help p, .media-inline-audio-help p { margin:2px 13px 11px; font-size:12px; line-height:1.55; color:var(--mc-muted); }
.media-inline-retry { display:block; margin: 12px auto; min-height: 42px; }
.media-native-capture-options { display:flex; flex-wrap:wrap; gap:8px; padding:0 12px 12px; }
.media-native-capture-options .btn { flex:1 1 auto; min-height:42px; font-size:12px; padding:10px 12px; }
.media-native-capture-input { position:absolute; width:1px; height:1px; opacity:0; pointer-events:none; }
/* One compact camera sheet, including on narrow Android browsers. */
.media-source-modal { align-items:center !important; padding: max(14px, env(safe-area-inset-top)) 14px max(14px,env(safe-area-inset-bottom)) !important; }
.media-source-modal .media-source-card { max-height:calc(100dvh - 34px); overflow-y:auto; overscroll-behavior:contain; }
.media-source-modal .media-inline-camera { height:min(38dvh,330px); margin:10px 0; }
.media-source-modal .media-inline-actions { gap:10px; }
.media-source-modal .media-inline-status { min-height:18px; line-height:1.45; }


.verify-state {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-height: 42px;
  padding: 0 14px;
  border-radius: 12px;
  font-weight: 900;
}


.verify-state.pending {
  background: #fff4cd;
}


.verify-state.approved {
  background: #dcfaea;
}


#announcementComposer>textarea {
  height: 96px !important;
  min-height: 96px !important;
  max-height: 96px !important;
  resize: none !important;
  overflow-y: auto !important;
}


@media (max-width:560px) {
  .media-overlay,
  .verify-gate {
  padding-top: max(58px,calc(env(safe-area-inset-top) + 46px)) !important;
}

  .media-source-grid {
  grid-template-columns: 1fr 1fr;
}
}


textarea[data-mc-composer="standard"] {
  height: 96px !important;
  min-height: 96px !important;
  max-height: 96px !important;
  resize: none !important;
  overflow-y: auto !important;
}


textarea[data-mc-composer="compact"] {
  height: 56px !important;
  min-height: 56px !important;
  max-height: 56px !important;
  resize: none !important;
  overflow-y: auto !important;
}


textarea[data-mc-composer="message"] {
  height: 42px !important;
  min-height: 42px !important;
  max-height: 42px !important;
  resize: none !important;
  overflow-y: auto !important;
}


#composer textarea[name="text"],
#announcementComposer textarea[name="text"],
.post-action-form textarea,
.settings-help-form textarea {
  resize: none !important;
}


/* Voting Celebration: one canonical component, continuously animated only while visible. */
.winner-celebration {
  position: absolute;
  inset: 0;
  z-index: 1;
  pointer-events: none;
  overflow: hidden;
  border-radius: inherit;
  contain: paint;
}


.winner-glow {
  position: absolute;
  left: 50%;
  top: 15%;
  width: min(70%,250px);
  aspect-ratio: 1;
  transform: translate(-50%,-50%);
  border-radius: 50%;
  background: radial-gradient(circle,color-mix(in srgb,var(--mc-vote-winner-glow,#ffd347) 24%,transparent),transparent 72%);
  opacity: .22;
  animation: winnerGlow 4s ease-in-out infinite alternate;
}


.winner-light-beam {
  position: absolute;
  top: -10%;
  width: 17%;
  height: 70%;
  transform-origin: 50% 0;
  opacity: .14;
  background: linear-gradient(180deg,color-mix(in srgb,var(--mc-vote-winner-light,#ffe7a3) 37%,transparent),transparent 85%);
}


.winner-light-beam.beam-a {
  left: 13%;
  transform: rotate(16deg);
  animation: winnerBeamA 3.3s ease-in-out infinite alternate;
}


.winner-light-beam.beam-b {
  right: 13%;
  transform: rotate(-16deg);
  animation: winnerBeamB 3.8s ease-in-out infinite alternate;
}


.winner-balloon {
  position: absolute;
  z-index: 2;
  bottom: -12%;
  width: var(--mc-vote-balloon-size,18px);
  height: calc(var(--mc-vote-balloon-size,18px)*1.25);
  border-radius: 52% 52% 48% 48%;
  background: linear-gradient(145deg,color-mix(in srgb,var(--c,#ff5fb7) 70%,#fff),var(--c,#ff5fb7) 58%,color-mix(in srgb,var(--c,#ff5fb7) 80%,#000));
  box-shadow: inset -3px -4px 0 rgba(0,0,0,.08),inset 4px 4px 0 rgba(255,255,255,.32);
  opacity: 0;
  animation: winnerBalloon var(--duration,8s) linear var(--delay,0s) infinite;
}


.winner-balloon:before {
  content: "";
  position: absolute;
  left: 50%;
  bottom: -4px;
  transform: translateX(-50%);
  border-left: 3px solid transparent;
  border-right: 3px solid transparent;
  border-top: 5px solid var(--c,#ff5fb7);
}


.winner-balloon:after {
  content: "";
  position: absolute;
  left: 50%;
  top: calc(100% + 2px);
  width: 1px;
  height: calc(var(--mc-vote-balloon-size,18px)*1.5);
  background: color-mix(in srgb,var(--mc-vote-winner-text,#000) 24%,transparent);
}


.winner-confetti {
  position: absolute;
  z-index: 2;
  top: -7%;
  width: var(--mc-vote-confetti-size,6px);
  height: calc(var(--mc-vote-confetti-size,6px)*1.7);
  border-radius: 2px;
  background: var(--c,var(--mc-vote-celebration-2,#64d9ff));
  opacity: 0;
  animation: winnerConfetti var(--duration,5.8s) linear var(--delay,0s) infinite;
}


.winner-firework {
  position: absolute;
  z-index: 2;
  width: var(--burst-size,70px);
  height: var(--burst-size,70px);
  border-radius: 50%;
  background: repeating-conic-gradient(from 0deg,var(--c,var(--mc-vote-winner-firework,#eab74e)) 0deg 7deg,transparent 8deg 45deg);
  -webkit-mask: radial-gradient(circle,transparent 0 25%,#000 29% 74%,transparent 79%);
  mask: radial-gradient(circle,transparent 0 25%,#000 29% 74%,transparent 79%);
  opacity: 0;
  transform: scale(.12) rotate(-12deg);
  animation: winnerFirework var(--duration,3.8s) ease-out var(--delay,0s) infinite;
}


.winner-sparkle {
  position: absolute;
  z-index: 2;
  width: 14px;
  height: 14px;
  color: var(--c,var(--mc-vote-winner-firework,#eab74e));
  opacity: 0;
  animation: winnerSparkle var(--duration,2.6s) ease-in-out var(--delay,0s) infinite;
}


.winner-sparkle:before,
.winner-sparkle:after {
  content: "";
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%,-50%);
  border-radius: 99px;
  background: currentColor;
}


.winner-sparkle:before {
  width: 3px;
  height: 100%;
}


.winner-sparkle:after {
  height: 3px;
  width: 100%;
}


@keyframes winnerBalloon {
  0% {
    transform: translate3d(0,35px,0) rotate(-6deg) scale(.84);
    opacity: 0;
  }
  18% {
    opacity: .85;
  }
  72% {
    opacity: .85;
  }
  100% {
    transform: translate3d(12px,-520px,0) rotate(6deg) scale(1);
    opacity: 0;
  }
}


@keyframes winnerConfetti {
  0% {
    transform: translate3d(0,-35px,0) rotate(0);
    opacity: 0;
  }
  12% {
    opacity: .95;
  }
  85% {
    opacity: .9;
  }
  100% {
    transform: translate3d(32px,580px,0) rotate(600deg);
    opacity: 0;
  }
}


@keyframes winnerFirework {
  0%,
  13% {
    transform: scale(.12) rotate(-12deg);
    opacity: 0;
  }
  25% {
    opacity: 1;
  }
  48% {
    transform: scale(1.1) rotate(14deg);
    opacity: .9;
  }
  71%,
  100% {
    transform: scale(1.4) rotate(22deg);
    opacity: 0;
  }
}


@keyframes winnerSparkle {
  0%,
  100% {
    transform: scale(.4) rotate(-15deg);
    opacity: 0;
  }
  46% {
    transform: scale(1.2) rotate(20deg);
    opacity: .94;
  }
}


@keyframes winnerGlow {
  to {
    transform: translate(-50%,-50%) scale(1.18);
    opacity: .44;
  }
}


@keyframes winnerBeamA {
  to {
    transform: rotate(3deg) translateX(10px);
    opacity: .28;
  }
}


@keyframes winnerBeamB {
  to {
    transform: rotate(-3deg) translateX(-10px);
    opacity: .28;
  }
}


.winner-celebration:not(.is-reduced-motion) :is(.winner-glow,.winner-light-beam,.winner-balloon,.winner-confetti,.winner-firework,.winner-sparkle) {
  animation-play-state: paused;
}


.winner-celebration.is-running:not(.is-reduced-motion) :is(.winner-glow,.winner-light-beam,.winner-balloon,.winner-confetti,.winner-firework,.winner-sparkle) {
  animation-play-state: running;
}


.winner-celebration.is-reduced-motion :is(.winner-glow,.winner-light-beam,.winner-balloon,.winner-confetti,.winner-firework,.winner-sparkle) {
  animation: none!important;
}


.winner-celebration.is-reduced-motion .winner-glow {
  opacity: .3;
}


.winner-celebration.is-reduced-motion .winner-light-beam {
  opacity: .17;
}


.winner-celebration.is-reduced-motion .winner-balloon {
  bottom: 12%;
  opacity: .7;
}


.winner-celebration.is-reduced-motion .winner-confetti {
  top: 11%;
  opacity: .7;
}


.winner-celebration.is-reduced-motion .winner-firework {
  opacity: .24;
  transform: scale(.82);
}


.winner-celebration.is-reduced-motion .winner-sparkle {
  opacity: .6;
}


@media (max-width:520px) {
  .winner-firework {
  --burst-size: 53px;
}

  .winner-light-beam {
  width: 24%;
}

  .winner-light-beam.beam-a {
  left: 10%;
}

  .winner-light-beam.beam-b {
  right: 10%;
}
}


@media (prefers-reduced-motion:reduce) {
  .winner-celebration :is(.winner-glow,.winner-light-beam,.winner-balloon,.winner-confetti,.winner-firework,.winner-sparkle) {
  animation: none!important;
}
}


/* Header identity: a logo-only name setting should place the independent tagline
   beneath the logo, not to its right. Keep saved sizes, logo file, colours and
   Theme Studio finger-drag transforms untouched. */
body.flat-theme .top .brand:has(#siteBrandName[hidden]) .site-brand-line {
  flex-direction: column !important;
  align-items: center !important;
  justify-content: center !important;
  gap: 3px !important;
  max-width: 100%;
}
body.flat-theme .top .brand:has(#siteBrandName[hidden]) .brand-copy {
  width: 100%;
  max-width: 100%;
  align-items: center;
}
body.flat-theme .top .brand:has(#siteBrandName[hidden]) #siteBrandTagline:not([hidden]) {
  display: block;
  max-width: 100%;
  text-align: center;
  white-space: normal;
  line-height: 1.25;
  overflow-wrap: normal;
  word-break: normal;
  translate: var(--mc-tagline-guard-x,0px) var(--mc-tagline-guard-y,0px);
}

.site-brand-icon {
  flex: 0 0 auto;
  display: block;
  max-width: min(100%,600px) !important;
  max-height: none !important;
  min-width: 0 !important;
  min-height: 0 !important;
  object-fit: contain !important;
  background: transparent !important;
  mix-blend-mode: normal !important;
  border: 0 !important;
  box-shadow: none !important;
}


.feed-voting-teasers>.card {
  margin: 0;
}


.saved-page-feed {
  display: grid;
  gap: 12px;
}


.postvideo {
  -webkit-user-select: none;
  user-select: none;
}

/* Canonical feed-video media shell and persistent Facebook-style speaker overlay. */
.feed-video-shell {
  position: relative;
  box-sizing: border-box;
  width: var(--mc-feed-video-frame-width, 100%);
  min-width: 0;
  margin: 10px auto 0;
  isolation: isolate;
  /* Feed previews use a tightly cropped full-bleed cover, so portrait and
     landscape sources fill their compact cards without white side gutters.
     The original uncut video remains available in the expanded viewer. */
  height: auto;
  aspect-ratio: 4 / 5;
  max-height: var(--mc-feed-video-frame-height, 265px);
  max-width: 100%;
  overflow: hidden;
  border-radius: 12px;
  border: 2px solid var(--mc-post-frame-border, var(--mc-border, #dfe4e9));
  background: #0a0d12;
}
/* Reuse the same player, with the same visible border, in a wider post media slot.
   Announcement videos now use the same post-card media treatment. */
body.flat-theme .post > .feed-video-shell {
  max-width: none;
  margin-left: calc(2px - var(--mc-post-pad,var(--mc-card-pad,16px)));
  margin-right: 0;
  width: calc(100% + var(--mc-post-pad,var(--mc-card-pad,16px)) + var(--mc-post-pad,var(--mc-card-pad,16px)) - 4px);
}
.feed-video-shell > video.postvideo,
.feed-video-shell > video.announcement-photo {
  display: block;
  box-sizing: border-box;
  width: 100%;
  height: 100%;
  max-height: 100%;
  min-height: 0;
  margin-top: 0 !important;
  vertical-align: middle;
  /* Preview fills the card. Expanded playback below overrides to contain. */
  object-fit: cover;
  object-position: center;
  background: #0a0d12;
}
/* Compact feed preview and large tap-to-open viewer use one canonical player.
   Only the player node moves to the temporary viewer and back; no duplicate video. */
.feed-video-shell > .feed-video-start {
  position: absolute;
  z-index: 4;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  display: grid;
  place-items: center;
  width: 52px;
  height: 52px;
  padding: 12px;
  border: 1px solid rgba(255,255,255,.8);
  border-radius: 50%;
  color: white;
  background: rgba(6,12,20,.6);
  cursor: pointer;
  touch-action: manipulation;
}
.feed-video-shell > .feed-video-start svg { width: 27px; height: 27px; pointer-events: none; }
.feed-video-shell.is-playing > .feed-video-start { display: none; }
.feed-video-shell > .feed-video-start:focus-visible { outline: 3px solid #18e9f2; outline-offset: 3px; }
.feed-video-shell > .feed-video-expand {
  position: absolute;
  z-index: 3;
  right: 9px;
  top: 9px;
  display: grid;
  place-items: center;
  width: 36px;
  height: 36px;
  padding: 7px;
  border: 1px solid rgba(255,255,255,.45);
  border-radius: 10px;
  background: rgba(12,18,27,.78);
  color: white;
  cursor: pointer;
  touch-action: manipulation;
}
.feed-video-expand svg { width: 21px; height: 21px; pointer-events: none; }
.feed-video-expand:focus-visible { outline: 3px solid #16c4e2; outline-offset: 2px; }
.feed-video-shell.controls-open > .feed-video-expand { top: 9px; }
.feed-video-placeholder { display: block; flex-shrink: 0; }
/* Canonical fullscreen media viewer: the ONE original video spans the screen.
   The author, Back control and actions float transparently above the media;
   no separately painted black header/footer bands or duplicate video player. */
body.feed-video-viewer-open { overflow: hidden; overscroll-behavior: none; }
.feed-video-expanded-layer {
  position: fixed;
  inset: 0;
  z-index: 2147482000;
  display: block;
  width: 100%;
  height: 100vh;
  height: 100dvh;
  min-width: 0;
  color: #fff;
  background: #1b242c;
  isolation: isolate;
  overflow: hidden;
  overscroll-behavior: contain;
  font-family: inherit;
  -webkit-tap-highlight-color: transparent;
}
.feed-video-expanded-header {
  position: absolute;
  inset: 0 0 auto;
  z-index: 4;
  display: flex;
  align-items: center;
  gap: 10px;
  min-height: 60px;
  min-width: 0;
  padding: calc(8px + env(safe-area-inset-top, 0px)) 14px 8px;
  box-sizing: border-box;
  background: transparent;
  color: #fff;
  text-shadow: 0 1px 5px rgba(0,0,0,.80);
}
.feed-video-expanded-close {
  display: grid;
  place-items: center;
  flex: 0 0 38px;
  width: 38px;
  height: 38px;
  border: 0;
  border-radius: 50%;
  padding: 0;
  background: rgba(0,0,0,.24);
  color: #fff;
  cursor: pointer;
}
.feed-video-expanded-close svg { width: 23px; height: 23px; pointer-events: none; }
.feed-video-expanded-close:focus-visible,.feed-video-expanded-social-button:focus-visible {
  outline: 2px solid #55d9ef;
  outline-offset: 2px;
}
.feed-video-expanded-author {
  display: flex;
  align-items: center;
  flex: 1 1 auto;
  gap: 9px;
  min-width: 0;
  overflow: hidden;
  color: #fff;
  text-decoration: none;
}
.feed-video-expanded-author > span:not(.avatar):not(.announcement-avatar):not(.shopavatar-small) {
  display: flex;
  flex-direction: column;
  flex: 1 1 auto;
  gap: 2px;
  min-width: 0;
}
.feed-video-expanded-author b,
.feed-video-expanded-author small {
  display: block;
  overflow: hidden;
  white-space: nowrap;
  text-overflow: ellipsis;
  max-width: 100%;
}
.feed-video-expanded-header .feed-video-expanded-author b { color: #fff; font-size: 14px; font-weight: 700; line-height: 1.25; text-shadow: 0 1px 5px rgba(0,0,0,.85); }
.feed-video-expanded-header .feed-video-expanded-author small { color: #f1f4f6; font-size: 11px; line-height: 1.35; text-shadow: 0 1px 5px rgba(0,0,0,.85); }
.feed-video-expanded-author .avatar,
.feed-video-expanded-author .announcement-avatar,
.feed-video-expanded-author .shopavatar-small {
  display: grid;
  place-items: center;
  flex: 0 0 36px;
  width: 36px;
  height: 36px;
  border: 1px solid rgba(255,255,255,.28);
  border-radius: 50%;
  overflow: hidden;
  object-fit: cover;
}
.feed-video-expanded-fallback { font-weight: 650; }
/* Video options are available at the top right of the fullscreen player. */
.feed-video-viewer-menu { position:relative; margin-left:auto; flex:0 0 38px; z-index:8; }
.feed-video-viewer-menu > summary {display:grid; place-items:center; width:38px; height:38px; border-radius:50%; background:rgba(0,0,0,.25); color:#fff; font-size:27px; line-height:1; cursor:pointer; list-style:none; }
.feed-video-viewer-menu > summary::-webkit-details-marker {display:none}
.feed-video-viewer-menu-panel {position:absolute; right:0; top:calc(100% + 6px); min-width:164px; padding:5px; background:rgba(22,30,40,.97); border:1px solid rgba(255,255,255,.2); border-radius:11px; box-shadow:0 10px 28px #0008}
.feed-video-viewer-download {font:600 13px system-ui; width:100%; min-height:38px; padding:8px 11px; color:white; background:transparent; border:0; border-radius:7px; text-align:left; cursor:pointer}
.feed-video-viewer-download:active {background:rgba(255,255,255,.15)}

.feed-video-expanded-stage {
  position: absolute;
  inset: 0;
  z-index: 1;
  min-height: 0;
  min-width: 0;
  overflow: hidden;
  background: transparent;
}
.feed-video-expanded-layer .feed-video-shell {
  position: absolute;
  inset: 0;
  z-index: 1;
  width: 100%;
  height: 100%;
  max-width: none;
  max-height: none;
  min-width: 0;
  min-height: 0;
  box-sizing: border-box;
  margin: 0;
  border: 0;
  border-radius: 0;
  overflow: hidden;
  background: transparent;
}
.feed-video-expanded-layer .feed-video-shell > video {
  display: block;
  width: 100%;
  height: 100%;
  max-width: none;
  max-height: none;
  margin: 0;
  object-fit: contain;
  object-position: center center;
  border-radius: 0;
  background: transparent;
}
/* Canonical expanded photo viewer: full device display, author over original photo.
   No blurred photo duplicate or black header strip; original proportions remain intact. */
body.post-photo-viewer-open { overflow: hidden; overscroll-behavior: none; }
.post-photo-expanded-layer {
  position: fixed;
  inset: 0;
  z-index: 2147482000;
  display: block;
  width: 100%;
  height: 100vh;
  height: 100dvh;
  overflow: hidden;
  isolation: isolate;
  color: #fff;
  background: #1b242c;
}
.post-photo-expanded-stage {
  position: absolute;
  inset: 0;
  z-index: 1;
  min-width: 0;
  min-height: 0;
  overflow: hidden;
  display: block;
}
.post-photo-expanded-header { padding-right: 12px; background: transparent; }
.post-photo-expanded-layer:fullscreen,
.feed-video-expanded-layer:fullscreen {
  width: 100%;
  height: 100%;
  inset: 0;
}
.post-photo-expanded-image {
  position: absolute;
  inset: 0;
  z-index: 1;
  display: block;
  width: 100%;
  height: 100%;
  max-width: 100%;
  max-height: 100%;
  object-fit: contain;
  object-position: center top;
  margin: 0;
  border: 0;
  border-radius: 0;
  background: transparent;
}
.post-photo-expanded-close {
  position: relative;
  z-index: 4;
  flex: 0 0 42px;
  display: grid;
  place-items: center;
  width: 42px;
  height: 42px;
  padding: 0;
  border: 1px solid rgba(255,255,255,.3);
  border-radius: 50%;
  color: white;
  background: rgba(8,12,18,.72);
  cursor: pointer;
}
.post-photo-expanded-close svg { width: 22px; height: 22px; }
.post-photo-expanded-close:focus-visible { outline: 2px solid #55d9ef; outline-offset: 2px; }
.feed-video-expanded-layer .feed-video-expand { display: none; }
.feed-video-expanded-footer {
  position: absolute;
  inset: auto 0 0;
  z-index: 4;
  display: grid;
  gap: 5px;
  padding: 5px 10px calc(6px + env(safe-area-inset-bottom,0px));
  min-height: 52px;
  box-sizing: border-box;
  background: transparent;
  border-top: 0;
  text-shadow: 0 1px 5px rgba(0,0,0,.85);
}
.feed-video-expanded-caption {
  padding: 3px 5px 1px;
  color: rgba(255,255,255,.88);
  font-size: 12px;
  line-height: 1.3;
  max-height: 2.6em;
  overflow: hidden;
  overflow-wrap: anywhere;
}
.feed-video-expanded-social {
  display: grid;
  grid-template-columns: repeat(3,minmax(0,1fr));
  gap: 2px;
  align-items: center;
}
.feed-video-expanded-social-button {
  display: flex;
  justify-content: center;
  align-items: center;
  gap: 5px;
  min-width: 0;
  width: 100%;
  height: 42px;
  padding: 2px 3px;
  border: 0;
  border-radius: 7px;
  background: transparent;
  color: #e5e8ec;
  cursor: pointer;
  touch-action: manipulation;
  font-size: 12px;
  font-weight: 550;
}
.feed-video-expanded-social-button svg { display: block; width: 20px; height: 20px; flex: 0 0 20px; }
.feed-video-expanded-social-button.is-active { color: #6ce5f2; }
.feed-video-expanded-social-count { font-size: 11px; font-variant-numeric: tabular-nums; color: inherit; opacity: .8; }
.feed-video-expanded-social[hidden] { display: none; }
/* Video controls (seek/play/sound) stay IN the media row, not over the author or actions. */
.feed-video-expanded-layer .feed-video-controls {
  /* Reserve the real footer height: timeline must never overlap social row. */
  padding: calc(10px + env(safe-area-inset-top,0px)) 12px
    calc(var(--mc-viewer-footer-height, 70px) + 16px);
  background: linear-gradient(to bottom,rgba(0,0,0,.12),transparent 25%,transparent 65%,rgba(0,0,0,.38));
}
.feed-video-expanded-layer .feed-video-actions button {
  width: 42px;
  height: 42px;
  background: rgba(9,12,16,.62);
}
.feed-video-expanded-layer .feed-video-actions .feed-video-play { width: 52px; height: 52px; }
.feed-video-expanded-layer .feed-video-shell > .feed-video-sound-button,
.feed-video-expanded-layer .feed-video-shell.controls-open > .feed-video-sound-button {
  right: 12px;
  /* Keep speaker above the reserved timeline and social row. */
  bottom: calc(var(--mc-viewer-footer-height, 70px) + 64px);
  width: 34px;
  height: 34px;
  padding: 7px;
  border: 1px solid rgba(255,255,255,.24);
  background: rgba(3,5,8,.70);
  box-shadow: none;
}
.feed-video-expanded-layer .feed-video-sound-button svg { width: 18px; height: 18px; }
/* One-tap clean-media mode. Playback continues; tapping the media again
   restores header, action row, seek controls and speaker. */
.feed-video-expanded-layer.viewer-chrome-hidden .feed-video-expanded-header,
.feed-video-expanded-layer.viewer-chrome-hidden .feed-video-expanded-footer,
.feed-video-expanded-layer.viewer-chrome-hidden .feed-video-controls,
.feed-video-expanded-layer.viewer-chrome-hidden .feed-video-sound-button,
.feed-video-expanded-layer.viewer-chrome-hidden .feed-video-start,
.post-photo-expanded-layer.viewer-chrome-hidden .post-photo-expanded-header {
  opacity: 0;
  visibility: hidden;
  pointer-events: none;
}
.feed-video-expanded-layer .feed-video-expanded-header,
.feed-video-expanded-layer .feed-video-expanded-footer,
.feed-video-expanded-layer .feed-video-controls,
.feed-video-expanded-layer .feed-video-sound-button,
.post-photo-expanded-layer .post-photo-expanded-header {
  transition: opacity 150ms ease, visibility 150ms ease;
}
@media (prefers-reduced-motion: reduce) {
  .feed-video-expanded-layer .feed-video-expanded-header,
  .feed-video-expanded-layer .feed-video-expanded-footer,
  .feed-video-expanded-layer .feed-video-controls,
  .feed-video-expanded-layer .feed-video-sound-button,
  .post-photo-expanded-layer .post-photo-expanded-header { transition: none; }
}
@media (max-width:375px) {
  .feed-video-expanded-header { gap: 7px; padding-left: 7px; padding-right: 8px; }
  .feed-video-expanded-social-button { gap: 3px; font-size: 11px; }
}
/* Video is the visual hero. Tap reveals controls; native chrome never overlays the feed. */
.feed-video-controls {
  position: absolute;
  inset: 0;
  z-index: 2;
  display: flex;
  flex-direction: column;
  justify-content: space-between;
  background: linear-gradient(to bottom, rgba(0,0,0,.20), transparent 24%, transparent 40%, rgba(0,0,0,.78));
  color: #fff;
  padding: 10px 12px 8px;
  pointer-events: none;
}
.feed-video-controls[hidden] { display: none; }
.feed-video-actions {
  flex: 1;
  display: flex;
  align-items: center;
  justify-content: center;
  gap: clamp(16px, 5vw, 36px);
  min-height: 0;
}
.feed-video-actions button {
  display: inline-flex;
  flex-direction: column;
  gap: 2px;
  align-items: center;
  justify-content: center;
  width: 50px;
  height: 50px;
  flex: 0 0 auto;
  border-radius: 50%;
  border: 1px solid rgba(255,255,255,.25);
  background: rgba(12,18,27,.65);
  color: white;
  cursor: pointer;
  -webkit-tap-highlight-color: transparent;
  touch-action: manipulation;
  pointer-events: auto;
}
.feed-video-actions .feed-video-play { width: 62px; height: 62px; background: rgba(15,23,42,.78); }
.feed-video-actions svg { width: 23px; height: 23px; pointer-events: none; }
.feed-video-actions [data-seek-label] { font-size: 10px; font-weight: 650; line-height: 1; pointer-events: none; }
.feed-video-play .feed-pause-symbol, .feed-video-play.is-playing .feed-play-symbol { display: none; }
.feed-video-play.is-playing .feed-pause-symbol { display: block; }
.feed-video-timeline {
  display: flex;
  align-items: center;
  gap: 9px;
  width: 100%;
  min-height: 38px;
  padding: 0 2px;
  font-size: 12px;
  font-weight: 650;
  font-variant-numeric: tabular-nums;
  text-shadow: 0 1px 2px rgba(0,0,0,.5);
}
.feed-video-timeline [data-video-time] { flex: 0 0 auto; min-width: 28px; white-space: nowrap; }
.feed-video-seek {
  flex: 1;
  min-width: 24px;
  height: 28px;
  margin: 0;
  border: 0;
  background: transparent;
  appearance: none;
  -webkit-appearance: none;
  cursor: pointer;
  touch-action: pan-x;
  accent-color: #fff;
  pointer-events: auto;
}
.feed-video-seek::-webkit-slider-runnable-track {
  height: 4px;
  border-radius: 4px;
  background: linear-gradient(to right,#fff var(--seek-progress,0%),rgba(255,255,255,.38) var(--seek-progress,0%));
}
.feed-video-seek::-webkit-slider-thumb {
  -webkit-appearance: none;
  width: 15px;
  height: 15px;
  margin-top: -5.5px;
  border: 2px solid #fff;
  border-radius: 50%;
  background: #fff;
  box-shadow: 0 1px 6px rgba(0,0,0,.3);
}
.feed-video-seek::-moz-range-track { height: 4px; border-radius: 4px; background: rgba(255,255,255,.38); }
.feed-video-seek::-moz-range-progress { height: 4px; background: #fff; }
.feed-video-seek::-moz-range-thumb { width: 15px; height: 15px; border: 0; border-radius: 50%; background: #fff; }
.feed-video-controls button:focus-visible, .feed-video-seek:focus-visible {
  outline: 3px solid #16c4e2;
  outline-offset: 3px;
}
.feed-video-shell.controls-open > .feed-video-sound-button { bottom: 55px; }
@media (max-width: 380px) {
  .feed-video-actions button { width: 44px; height: 44px; }
  .feed-video-actions .feed-video-play { width: 54px; height: 54px; }
}
.feed-video-shell > .feed-video-sound-button {
  position: absolute;
  z-index: 3;
  right: 12px;
  bottom: var(--mc-video-sound-bottom, 12px);
  display: flex;
  align-items: center;
  justify-content: center;
  width: 42px;
  height: 42px;
  padding: 9px;
  border: 1px solid rgba(255,255,255,.3);
  border-radius: 50%;
  background: rgba(15,23,42,.78);
  color: #ffffff;
  box-shadow: 0 2px 10px rgba(0,0,0,.28);
  cursor: pointer;
  -webkit-tap-highlight-color: transparent;
  touch-action: manipulation;
}
.feed-video-sound-button svg {
  display: block;
  width: 22px;
  height: 22px;
  flex: 0 0 auto;
  pointer-events: none;
}
.feed-video-sound-button .feed-sound-off,
.feed-video-sound-button.is-muted .feed-sound-on { display: none; }
.feed-video-sound-button.is-muted .feed-sound-off { display: block; }
.feed-video-sound-button:focus-visible {
  outline: 3px solid #16c4e2;
  outline-offset: 3px;
}


.post.is-inline-editing .posttext {
  padding-top: 10px;
}


.post-inline-edit-form {
  display: grid;
  gap: 12px;
  width: 100%;
  margin: 0;
}


.post-inline-edit-form label {
  display: grid;
  gap: 6px;
  font-weight: 700;
}


.post-inline-edit-form textarea {
  min-height: 110px;
  width: 100%;
  resize: none;
  overflow-y: auto;
}


.post-inline-edit-form input[data-checkin-search] {
  min-height: 44px;
  width: 100%;
  border: 0;
  box-shadow: none;
  background: transparent;
}

.post-inline-edit-form select {
  width: 100%;
  box-sizing: border-box;
}


@media (max-width:640px) {
  .post-inline-edit-actions>.btn {
  flex: 1 1 120px;
}
}


.post.is-inline-editing {
  overflow: visible;
}


.post.is-inline-editing .post-inline-edit-form {
  padding: 12px;
  border-radius: 12px;
  background: #ffffff;
  border: 1px solid #dfe4e9;
  box-shadow: none;
}


.post-inline-edit-actions {
  display: flex;
  gap: 8px;
  justify-content: flex-end;
  flex-wrap: wrap;
}


/* Single autocomplete menu owned by every composer, including comments. */
.composer-main:has(> .mention-suggestions),
.mc-comment-input:has(> .mention-suggestions),
.announcement-composer form:has(> .mention-suggestions),
.shop-composer form:has(> .mention-suggestions) { position: relative; overflow: visible; }
.mention-suggestions {
  position: absolute;
  top: 100%; left: 0; right: 0;
  z-index: 120;
  display: grid; gap: 3px;
  max-height: min(40vh, 270px);
  overflow-y: auto;
  padding: 6px;
  background: var(--mc-card-material,#fff);
  color: var(--mc-text,#111);
  border: 1px solid var(--mc-border,#dfe4e9);
  border-radius: 12px;
  box-shadow: 0 8px 24px rgba(0,0,0,.12);
}
.mention-suggestions[hidden] { display: none; }
.mention-suggestion { border: 0; border-radius: 8px; background: transparent; padding: 7px; cursor: pointer; }
.mention-suggestion:hover,.mention-suggestion:focus-visible { background: var(--mc-input-material,#f3f6f9); }

.mention-avatar {
  width: 38px;
  height: 38px;
  min-width: 38px;
  max-width: 38px;
  border-radius: 50%;
  object-fit: cover;
  overflow: hidden;
}


.mention-suggestion {
  width: 100%;
  display: grid;
  grid-template-columns: 38px minmax(0,1fr);
  align-items: center;
  gap: 9px;
  text-align: left;
}


.mention-suggestion>span {
  display: flex;
  flex-direction: column;
  min-width: 0;
}


.mention-suggestion b,
.mention-suggestion small {
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}


/* One canonical app invitation for Android APK and iPhone Home Screen, using Theme variables. */
.mc-pwa-install-overlay {
  position: fixed;
  inset: 0;
  z-index: 2147483200;
  display: grid;
  place-items: center;
  padding: max(16px,env(safe-area-inset-top)) 16px max(16px,env(safe-area-inset-bottom));
  background: rgba(15,22,33,.45);
}
.mc-pwa-install-dialog {
  position: relative;
  box-sizing: border-box;
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 12px;
  width: min(410px,100%);
  max-height: calc(100dvh - 32px);
  overflow-y: auto;
  padding: 26px 20px 20px;
  text-align: center;
  border: 1px solid var(--mc-popup-border,#dfe4e9);
  border-radius: var(--mc-popup-radius,16px);
  color: var(--mc-popup-ink,#101828);
  background: var(--mc-popup-paper,#fff);
  box-shadow: 0 18px 58px rgba(8,22,38,.18);
}
.mc-pwa-install-icon {
  display: block;
  width: 86px;
  height: 86px;
  object-fit: contain;
  border-radius: 18px;
}
.mc-pwa-install-dialog h2 {
  margin: 0;
  font-size: clamp(21px,5vw,25px);
  line-height: 1.2;
  color: var(--mc-popup-ink,#101828);
}
.mc-pwa-install-dialog p {
  margin: 0;
  font-size: 14px;
  line-height: 1.5;
  color: var(--mc-popup-muted,#596470);
}
.mc-pwa-install-close {
  position: absolute;
  top: 9px;
  right: 10px;
  width: 36px;
  height: 36px;
  border: 0;
  border-radius: 10px;
  background: transparent;
  color: var(--mc-popup-ink,#101828);
  font-size: 28px;
  line-height: 1;
}
.mc-pwa-install-actions {
  display: grid;
  grid-template-columns: 1fr;
  gap: 10px;
  width: 100%;
  margin-top: 6px;
}
.mc-pwa-install-actions .btn {
  min-width: 0;
  min-height: 46px;
  border-radius: 12px;
  font-weight: 700;
}
/* iOS instructions use the existing dialog text control in Theme Studio. */
.mc-pwa-install-dialog .mc-iphone-install-hint {
  padding: 10px 12px;
  border-radius: 10px;
  background: var(--mc-popup-paper,#fff);
  color: var(--mc-popup-muted,#596470);
  border: 1px solid var(--mc-popup-border,#dfe4e9);
}
.mc-pwa-install-actions .mc-native-apk-download {
  display: flex;
  align-items: center;
  justify-content: center;
  text-align: center;
  text-decoration: none;
  border: 1px solid transparent;
}
.mc-pwa-install-actions [data-pwa-dismiss] {
  background: var(--mc-popup-paper,#fff);
  color: var(--mc-popup-ink,#101828);
  border: 1px solid var(--mc-popup-border,#dfe4e9);
}
@media (prefers-reduced-motion:reduce) {
  .mc-pwa-install-overlay, .mc-pwa-install-dialog { animation: none; }
}

/* One source-owned, non-modal notification. Old full-screen upload/activity popup removed. */
body.flat-theme .global-notice-host {
  position: fixed;
  z-index: 2147483300;
  top: max(12px, env(safe-area-inset-top));
  left: 50%;
  transform: translateX(-50%);
  display: grid;
  place-items: center;
  width: max-content;
  max-width: calc(100vw - 24px);
  pointer-events: none;
}
body.flat-theme .global-notice {
  --mc-notice-brand: #00f2ff;
  --mc-notice-error: #ee3346;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 8px;
  width: max-content;
  min-width: 108px;
  max-width: min(350px, calc(100vw - 24px));
  min-height: 36px;
  box-sizing: border-box;
  margin: 0;
  padding: 5px 13px;
  overflow: hidden;
  border: 1.5px solid var(--mc-notice-brand);
  border-radius: 13px;
  background: var(--mc-popup-paper,#fff);
  color: var(--mc-popup-ink,#151c29);
  box-shadow: 0 4px 13px rgba(18, 33, 52, .11);
  font: 650 12px/1.3 system-ui, -apple-system, 'Segoe UI', sans-serif;
  pointer-events: none;
  white-space: normal;
  animation: mc-mini-notice-in .20s ease-out both;
}
/* Small, discreet download-only state; no global processing banner. */
body.flat-theme .global-notice-host.global-notice-host-download {
  top: auto;
  bottom: calc(86px + env(safe-area-inset-bottom, 0px));
}
body.flat-theme .global-notice-download {
  position: static;
  transform: none;
  width: max-content;
  min-width: 0;
  min-height: 32px;
  padding: 6px 12px;
  border-radius: 999px;
  border-color: var(--mc-popup-border,#dfe4e9);
  box-shadow: 0 3px 10px rgba(18,33,52,.09);
  animation: none;
  white-space: nowrap;
}
body.flat-theme .global-notice-symbol {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 17px;
  height: 17px;
  flex: 0 0 17px;
  color: var(--mc-notice-brand);
  background: transparent;
  border: 0;
  border-radius: 0;
  box-shadow: none;
  font-size: 19px;
  line-height: 1;
  font-weight: 800;
}
body.flat-theme .global-notice-symbol svg {
  width: 17px;
  height: 17px;
  display: block;
  stroke: currentColor;
}
body.flat-theme .global-notice-copy {
  display: grid;
  gap: 2px;
  min-width: 0;
}
body.flat-theme .global-notice-detail {
  display: block;
  font-size: 11px;
  line-height: 1.3;
  overflow-wrap: anywhere;
  font-weight: 450;
}
body.flat-theme .global-notice-label {
  display: block;
  overflow: hidden;
  min-width: 0;
  text-overflow: ellipsis;
  font-size: 12px;
  font-weight: 650;
  letter-spacing: .01em;
  color: inherit;
}
body.flat-theme .global-notice-error .global-notice-symbol,
body.flat-theme .global-notice-warning .global-notice-symbol {
  color: var(--mc-notice-error);
}
@keyframes mc-mini-notice-in {
  from { opacity: 0; transform: translateY(-7px); }
  to { opacity: 1; transform: translateY(0); }
}

/* Single compact accessible confirmation dialog; appearance remains Theme Studio editable. */
.site-confirm-modal {
  position: fixed;
  inset: 0;
  z-index: 2147483200;
  display: grid;
  place-items: center;
  padding: 16px;
  padding-top: max(16px,env(safe-area-inset-top));
  padding-bottom: max(16px,env(safe-area-inset-bottom));
  background: rgba(14,25,44,.43);
  -webkit-backdrop-filter: blur(3px);
  backdrop-filter: blur(3px);
  overflow-y: auto;
  overscroll-behavior: contain;
  animation: mc-dialog-backdrop-in .16s ease both;
}
body.flat-theme .site-confirm-dialog {
  box-sizing: border-box;
  width: min(370px,100%);
  max-height: calc(100dvh - 32px);
  overflow-y: auto;
  border: 1px solid var(--mc-popup-border,#dce5f0);
  border-radius: max(12px,var(--mc-popup-radius,16px));
  background: var(--mc-popup-paper,#fff);
  color: var(--mc-popup-ink,#132036);
  box-shadow: 0 12px 36px rgba(7,19,42,.20);
  font-family: inherit;
  animation: mc-dialog-card-in .2s ease both;
}
.site-confirm-copy { box-sizing:border-box;min-width:0;padding:17px 18px 8px;text-align:left; }
.site-confirm-heading { display:flex;gap:10px;align-items:center;min-width:0; }
.site-confirm-icon {
  display:grid;place-items:center;flex:0 0 33px;width:33px;height:33px;
  border-radius:11px;background:#ebf4ff;color:#176bd7;
}
.site-confirm-icon.danger { background:#fff0f1;color:#cf354a; }
.site-confirm-icon svg { width:19px;height:19px;stroke:currentColor;stroke-width:2.1; }
.site-confirm-copy h2 {
  flex:1;min-width:0;margin:0;font-size:17px;font-weight:750;
  line-height:1.3;color:var(--mc-popup-ink,#142039);overflow-wrap:anywhere;
}
.site-confirm-close {
  display:grid;place-items:center;flex:0 0 30px;width:30px;height:30px;
  padding:5px;border:0;border-radius:9px;background:transparent;
  color:var(--mc-popup-muted,#60708a);cursor:pointer;
}
.site-confirm-close svg { width:17px;height:17px; }
.site-confirm-copy p {
  margin:11px 0 2px;font-size:13px;line-height:1.45;
  color:var(--mc-popup-muted,#60708a);overflow-wrap:anywhere;white-space:pre-line;
}
.site-confirm-actions {
  box-sizing:border-box;display:grid;grid-template-columns:1fr 1fr;
  gap:9px;padding:10px 18px 18px;
}
.site-confirm-actions .btn {
  box-sizing:border-box;width:100%;min-width:0;min-height:41px;margin:0;
  padding:9px;border-radius:11px;font-weight:650;font-size:13px;cursor:pointer;
}
.site-confirm-actions .site-confirm-ok {
  color:white;background:var(--mc-active,#1683ff);border:1px solid transparent;
}
.site-confirm-danger .site-confirm-actions .site-confirm-ok {
  background:#c93449;border-color:#c93449;
}
.site-confirm-actions .site-confirm-cancel {
  background:var(--mc-popup-paper,#fff);color:var(--mc-popup-ink,#182d43);
  border:1px solid var(--mc-popup-border,#d2dce8);
}
.site-confirm-actions .btn:focus-visible,.site-confirm-close:focus-visible {
  outline:2px solid #229cff;outline-offset:2px;
}
@keyframes mc-dialog-backdrop-in {from{opacity:0}to{opacity:1}}
@keyframes mc-dialog-card-in {from{opacity:0;transform:translateY(6px)}to{opacity:1;transform:translateY(0)}}
@media(max-width:430px) {
  .site-confirm-modal {padding:12px}
  .site-confirm-copy {padding:14px 15px 7px}
  .site-confirm-actions {padding:10px 15px 15px}
}
@media(prefers-reduced-motion:reduce) {
  .site-confirm-modal,body.flat-theme .site-confirm-dialog,body.flat-theme .global-notice {animation:none}
}

.mc-field-validation {
  box-sizing: border-box;
  display: flex;
  align-items: flex-start;
  gap: 9px;
  width: 100%;
  min-width: 0;
  max-width: 100%;
  margin: 7px 0 5px;
  padding: 10px 12px;
  border: 1px solid #ead8da;
  border-radius: 12px;
  background: #fff9f9;
  color: #792d34;
  box-shadow: 0 5px 14px rgba(63,24,27,.06);
}


.mc-field-validation-icon {
  display: grid;
  place-items: center;
  flex: 0 0 24px;
  width: 24px;
  height: 24px;
  border-radius: 50%;
  background: #fbe7e9;
  color: #a02d36;
}


.mc-field-validation-icon svg {
  width: 17px;
  height: 17px;
}


.mc-field-validation-copy {
  display: grid;
  gap: 2px;
  min-width: 0;
}


.mc-field-validation-title {
  font-weight: 750;
  font-size: 13px;
  line-height: 1.3;
}


.mc-field-validation-message {
  font-size: 12px;
  line-height: 1.5;
  overflow-wrap: anywhere;
  color: #793941;
}


[aria-invalid="true"] {
  border-color: #b85a65!important;
  outline-color: #b85a65!important;
}


/* Keep the same visual language for existing post, reactions, media, share and verification popups. */
body.flat-theme .post-action-dialog,
body.flat-theme .reaction-sheet,
body.flat-theme .sharecard,
body.flat-theme .verify-gate-card,
body.flat-theme .media-modal-card {
  border: 1px solid var(--mc-popup-border)!important;
  border-radius: var(--mc-popup-radius)!important;
  background: var(--mc-popup-paper)!important;
  color: var(--mc-popup-ink)!important;
  box-shadow: 0 14px 38px rgba(8,22,38,.12)!important;
}


/* Canonical post/announcement action dialog: one overlay and one responsive form shell. */
.post-action-modal {
  position: fixed;
  inset: 0;
  z-index: 2000;
  display: flex;
  align-items: center;
  justify-content: center;
  box-sizing: border-box;
  width: 100%;
  height: 100dvh;
  padding: max(12px,env(safe-area-inset-top,0px)) 12px max(12px,env(safe-area-inset-bottom,0px));
  background: rgba(12,24,40,.55);
  overflow-y: auto;
  overscroll-behavior: contain;
}

.post-action-dialog {
  width: min(100%,480px);
  max-height: calc(100dvh - 32px);
  min-width: 0;
  box-sizing: border-box;
  margin: auto;
  padding: 18px;
  overflow-x: hidden;
  overflow-y: auto;
  overscroll-behavior: contain;
}

.post-action-dialog-head {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: 12px;
  margin-bottom: 15px;
}
.post-action-dialog-head > div { min-width: 0; display: grid; gap: 3px; }
.post-action-dialog-head b { font-size: 17px; line-height: 1.3; }
.post-action-dialog-head small { font-size: 12px; color: var(--mc-muted,#66738b); }
.post-action-dialog-head .post-action-close {
  display: grid;
  place-items: center;
  flex: 0 0 38px;
  width: 38px;
  height: 38px;
  padding: 7px;
  margin: 0;
}
.post-action-form { display: grid; gap: 15px; min-width: 0; }
.post-action-form > label { display: grid; gap: 7px; min-width: 0; font-weight: 650; }
.post-action-form :is(input,select,textarea) {
  display: block;
  width: 100%;
  min-width: 0;
  box-sizing: border-box;
  padding: 11px 12px;
  border: 1px solid var(--mc-border,#dfe4e9);
  border-radius: 12px;
  background: var(--mc-input-material,#fff);
  color: var(--mc-text,#111827);
  font: inherit;
  font-size: 16px;
  line-height: 1.4;
}
.post-action-form textarea { min-height: 110px; }
.post-action-form .report-note {
  display: flex;
  align-items: flex-start;
  gap: 10px;
  min-width: 0;
  padding: 12px;
  border-radius: 12px;
  background: var(--mc-input-material,#f7fbff);
}
.post-action-form .report-note > svg { width: 22px; height: 22px; flex: 0 0 22px; }
.post-action-form .report-note > span { display: grid; min-width: 0; gap: 4px; }
.post-action-form .report-note b { font-size: 14px; line-height: 1.35; }
.post-action-form .report-note small { color: var(--mc-muted,#66738b); font-size: 12px; line-height: 1.4; }
.post-action-form-buttons { display: flex; flex-wrap: wrap; justify-content: flex-end; gap: 10px; }
.post-action-form-buttons .btn { flex: 1 1 135px; min-height: 42px; }

.media-overlay,
.verify-gate { overscroll-behavior: contain; }


body.flat-theme .post-composer-sheet {
  border-radius: var(--mc-popup-radius);
  background: var(--mc-popup-paper);
}


.permission-state-card {
  display: flex;
  align-items: center;
  gap: 12px;
  min-width: 0;
  padding: 16px;
}


.permission-state-card.compact {
  padding: 12px;
  margin-top: 10px;
}


.permission-state-icon {
  width: 46px;
  height: 46px;
  flex: 0 0 46px;
  display: grid;
  place-items: center;
  border-radius: 12px;
}


.permission-state-icon .svgicon {
  width: 25px;
  height: 25px;
}


.permission-state-card>div:last-child {
  display: grid;
  gap: 3px;
  min-width: 0;
}


.permission-state-card b {
  font-size: 15px;
}


.permission-state-card small,
.professional-permission-note {
  color: var(--mc-muted);
  line-height: 1.45;
}


.professional-permission-note {
  display: flex;
  align-items: center;
  gap: 8px;
  margin: 0 0 12px;
  padding: 10px 12px;
  border-radius: 12px;
}


.professional-permission-note .svgicon {
  width: 18px;
  height: 18px;
  flex: 0 0 18px;
}


.btn.is-disabled,
.btn:disabled,
.iconbtn:disabled,
.message-tool:disabled {
  cursor: not-allowed;
  opacity: .48;
  box-shadow: none !important;
  transform: none !important;
  pointer-events: none;
}


.compact-search-shop,
.conversation-row,
.notification-card,
.post,
.announcement-card {
  max-width: 100%;
  min-width: 0;
}


.compact-search-shop>span,
.conversation-copy,
.announcement-main {
  min-width: 0;
}


.modal-open {
  overflow: hidden !important;
}


@media (max-width:430px) {
  .notification-page-frame .notification-card {
  grid-template-columns: auto minmax(0,1fr) auto !important;
  gap: 8px !important;
}

  .feature-toggle-btn {
  width: 96px !important;
  min-width: 96px !important;
  font-size: 10px !important;
  padding-left: 6px !important;
  padding-right: 6px !important;
}

  .conversation-row {
  grid-template-columns: auto minmax(0,1fr) auto !important;
}

  .message-send-button {
  min-width: 42px !important;
}

  .announcement-kind {
  max-width: 110px;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}

  .announcement-more-menu {
  right: -2px;
  min-width: 180px;
}
}


.feed-voting-teasers {
  display: block;
  margin-bottom: 12px;
  position: relative;
}


@media (max-width:700px) {
  .top {
  width: 100%;
  padding-left: 8px;
  padding-right: 8px;
}

  .brand strong {
  font-size: 22px;
}

  .brand small {
  font-size: 8px;
}

  .top nav {
  grid-template-columns: repeat(5,minmax(0,1fr));
}

  .mc-weather-header-row {
  gap: 6px;
}

  main#app {
  margin-top: 7px;
  padding: 0 8px 24px;
}

  .grid2,
  .composer-extra-panels {
  grid-template-columns: 1fr;
}

  .section-row {
  align-items: flex-start;
}

  .feature-installed-card {
  align-items: flex-start;
  flex-direction: column;
}

  .guest-auth-actions {
  gap: 4px;
}

  .top-register,
  .top-login {
  padding-left: 9px !important;
  padding-right: 9px !important;
  font-size: 10px !important;
}

  .guest-access-card {
  align-items: stretch;
  flex-direction: column;
}

  .guest-access-actions {
  display: grid;
  grid-template-columns: 1fr 1fr;
}

  body.flat-theme .core-auth-panel {
  width: 100% !important;
  padding: 18px !important;
}

  body.flat-theme .core-auth-shell {
  min-height: calc(100svh - 125px) !important;
}

  .notification-page-frame {
  padding: 7px;
  border-radius: 12px;
}

  .notification-page-frame .notification-card {
  grid-template-columns: auto minmax(0,1fr) auto;
  padding: 10px 8px;
}

  .route-frame {
  padding: min(var(--mc-frame-pad,8px),8px);
}

  .permission-state-card {
  padding: 13px;
}

  .home-feed-list {
  display: grid;
  gap: 12px;
  min-width: 0;
}

  .home-feed-list>.card:not(.google-ad-card),
  .home-feed-list>.feed-voting-teasers {
  min-width: 0;
  margin: 0;
}

  .feed-load-row {
  display: flex;
  justify-content: center;
  padding: 12px 0 4px;
}

  .feed-load-row[hidden] {
  display: none !important;
}

  .feed-load-row>.btn {
  min-width: 180px;
  justify-content: center;
}

  @media (max-width:520px) {
    .post-inline-edit-actions .btn {
  flex: 1 1 135px;
}

    .feed-load-row>.btn {
  width: 100%;
  min-width: 0;
}
}
}


/* Close original <=700px mobile rules before global flat theme. */
/* ===== flat-theme-v97.css ===== */
:root {
  --mc-popup-radius: 16px;
  --mc-popup-ink: var(--mc-flat-text,#16202a);
  --mc-popup-muted: var(--mc-muted,#596470);
  --mc-popup-border: var(--mc-border,#dfe4e9);
  --mc-popup-paper: var(--mc-card-material,#fff);
  --mc-control-font: clamp(11px,2.9vw,13px);
  --mc-body-font: clamp(14px,3.7vw,16px);
  --mc-detail-font: clamp(12px,3.2vw,14px);
  --mc-base-ink: var(--mc-text,#000000);
  --mc-base-muted: var(--mc-muted,#000000);
}


html {
  font-size: 16px;
  background: var(--mc-page-bg,#ffffff)!important;
  scroll-behavior: auto !important;
}


body.mc-new-theme,
body.flat-theme {
  background: var(--mc-page-bg,#ffffff)!important;
  color: var(--mc-text,var(--mc-base-ink)) !important;
  overflow-x: clip !important;
  font-weight: 400;
}


body.flat-theme>.top {
  background: var(--mc-header-material,#fff) !important;
  color: var(--mc-header-text,#000000) !important;
  padding-top: var(--mc-header-padding,10px) !important;
  border-bottom: 1px solid var(--mc-border,#dfe4e9) !important;
  position: var(--mc-header-scroll-position,sticky) !important;
  top: 0 !important;
  left: auto !important;
  right: auto !important;
  transform: none !important;
  translate: none !important;
  margin: 0 auto !important;
  box-sizing: border-box !important;
  overflow: visible !important;
  min-height: 0 !important;
  max-height: none !important;
  z-index: 100 !important;
}


body.flat-theme .side-menu.open {
  transform: translateX(0) !important;
}


body.flat-theme .menu-backdrop,
#menuBackdrop {
  position: fixed !important;
  inset: 0 !important;
  z-index: 9990 !important;
  margin: 0 !important;
  transform: none !important;
}


body.flat-theme main#app {
  display: block !important;
  position: relative !important;
  top: auto !important;
  right: auto !important;
  bottom: auto !important;
  left: auto !important;
  transform: none !important;
  translate: none !important;
  margin: 6px auto 26px !important;
  padding-top: 0 !important;
  min-height: 0 !important;
  height: auto !important;
  transition: none !important;
}


body.flat-theme .home-page-shell {
  position: relative !important;
  top: auto !important;
  left: auto !important;
  right: auto !important;
  transform: none !important;
  translate: none !important;
  margin: 0 !important;
  padding: 0 !important;
  min-height: 0 !important;
  height: auto !important;
  gap: 12px !important;
  transition: none !important;
}


/* Canonical Feed navigation owns its original buttons. Their offset follows the
   actual Header height (including the admin's live drag/resize layout). */
body.flat-theme .home-page-shell>.home-tabs {
  position: var(--mc-feed-tab-scroll-position,sticky) !important;
  top: var(--mc-feed-tab-offset,0px) !important;
  left: auto !important;
  z-index: 90 !important;
  width: 100%;
  min-height: 0 !important;
  height: auto !important;
  box-sizing: border-box;
  margin-top: 0 !important;
  padding: 6px 0 !important;
  background: var(--mc-page-bg,#fff);
  scroll-margin-top: var(--mc-feed-tab-offset,0px);
}
body.flat-theme .home-page-shell>.composer,
body.flat-theme #homeFeed,
body.flat-theme .feed-voting-teasers {
  position: relative !important;
  top: auto !important;
  left: auto !important;
  transform: none !important;
  translate: none !important;
  margin-top: 0 !important;
  padding-top: 0 !important;
  min-height: 0 !important;
  height: auto !important;
}


html.mc-spa-busy main#app,
.route-busy main#app {
  opacity: 1 !important;
  transform: none !important;
  transition: none !important;
}


body.flat-theme :is(.card:not(.settings-group),.post,.page-heading,.auth,.profile-pro-card,.shop-pro-card,.admin-section,.notification-card,.announcement-card,.people-only-page,.shop-suggestion-hub,.shop-all-card,.conversation-list,.chat-panel,.theme-v97-card,.report-card,.vote-card,.admin-control-hub) {
  color: var(--mc-flat-text,var(--mc-base-ink)) !important;
  background: var(--mc-card-material,#ffffff) !important;
  border: 1px solid var(--mc-border,#dfe4e9) !important;
  border-radius: var(--mc-card-radius,20px) !important;
  box-shadow: none !important;
}


body.flat-theme :is(.card:not(.settings-group),.profile-pro-card,.shop-pro-card,.admin-section,.notification-card,.announcement-card,.vote-card) {
  overflow: visible;
}


body.flat-theme .card:not(.post):not(.profile-pro-card):not(.shop-pro-card):not(.settings-group):not(.notification-card):not(.announcement-card):not(.vote-card),
body.flat-theme .admin-section:not(.settings-group) {
  background: var(--mc-card-material,#fff) !important;
}


body.flat-theme :is(input:not([data-checkin-search]):not([type=checkbox]):not([type=radio]):not([type=color]):not([type=range]),textarea:not(.message-compose-text),select:not(.composer-audience-select),.custom-file-picker) {
  background: var(--mc-input-material,#fff) !important;
  border: 1.5px solid var(--mc-flat-input-border-color,var(--mc-border,#dfe4e9)) !important;
  border-radius: var(--mc-input-radius,9px) !important;
  box-shadow: none !important;
  color: var(--mc-flat-text,var(--mc-base-ink)) !important;
}


body.flat-theme input::placeholder,
body.flat-theme textarea::placeholder {
  color: var(--mc-flat-muted,#858eb1) !important;
}


body.flat-theme :is(.btn,.pill,.smallbtn) {
  border-radius: var(--mc-button-radius,9px)!important;
  min-height: var(--mc-button-height,44px);
  font-weight: 700;
  white-space: normal;
  border: 1px solid var(--mc-flat-border-color,var(--mc-border,#dfe4e9)) !important;
  background: var(--mc-card-material,#fff) !important;
  color: var(--mc-flat-button-text,#000000) !important;
  box-shadow: none !important;
  overflow: hidden !important;

  line-height: 1.3;
}


body.flat-theme :is(.btn.primary,.pill.active) {
  background: var(--mc-button,#1683ff) !important;
  color: var(--mc-flat-button-text,#000000) !important;
  border-color: var(--mc-button,#1683ff) !important;
  box-shadow: none !important;
}


body.flat-theme .dangerbtn {
  color: #000000 !important;
  background: rgba(255,238,244,.72) !important;
}


body.flat-theme svg.mc-outline-icon:not(.mc-search-filter-svg):not(.mc-engagement svg),
body.flat-theme svg.mc-static-icon {
  display: inline-block !important;
  width: var(--mc-icon-size,25px) !important;
  height: var(--mc-icon-size,25px) !important;
  max-width: none !important;
  max-height: none !important;
  padding: 0 !important;
  margin: 0 !important;
  border: 0 !important;
  border-radius: 0 !important;
  background: none !important;
  box-shadow: none !important;
  overflow: visible !important;
  vertical-align: middle !important;
  flex: 0 0 auto !important;
}


body.flat-theme :is(.iconbtn,.header-search button,.side-close) {
  background: transparent !important;
  border: 0 !important;
  box-shadow: none !important;
  border-radius: 0 !important;
  padding: 4px !important;
  overflow: visible !important;
  color: var(--mc-icon,var(--mc-base-ink)) !important;
}


body.flat-theme :is(.iconbtn,.menu-toggle,.top-bell,.header-search button,.side-close)::before,
body.flat-theme :is(.iconbtn,.menu-toggle,.top-bell,.header-search button,.side-close)::after {
  display: none !important;
}


body.flat-theme :is(.iconbtn,.menu-toggle,.top-bell,.header-search button):active svg.mc-outline-icon,
body.flat-theme :is(.menu-toggle,.top-bell,.header-search button):active svg.mc-static-icon {
  transform: scale(.90) translateY(1px);
}


body.flat-theme .side-menu .nav-svgicon {
  width: var(--mc-menu-icon-size,28px) !important;
  height: var(--mc-menu-icon-size,28px) !important;
}


body.flat-theme .mc-tool svg.mc-outline-icon {
  width: 31px !important;
  height: 31px !important;
}


body.flat-theme .settings-group-head svg.mc-outline-icon,
body.flat-theme .settings-feature-icon svg.mc-outline-icon {
  width: 34px !important;
  height: 34px !important;
}


body.flat-theme .page-heading svg.mc-outline-icon {
  width: 38px !important;
  height: 38px !important;
}


body.flat-theme .social svg.mc-outline-icon {
  width: 28px !important;
  height: 28px !important;
}


body.flat-theme .menu-toggle {
  display: grid !important;
  place-items: center !important;
  align-self: center !important;
}


body.flat-theme .brand {
  display: flex !important;
  flex-direction: column !important;
  align-items: center !important;
  justify-content: center !important;
  gap: 2px !important;
  min-width: 0 !important;
}


body.flat-theme .site-brand-line {
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  gap: 7px !important;
  min-width: 0 !important;
}


body.flat-theme :is(.top .navlabel,.side-menu [data-menu-key]) {
  font-family: var(--mc-label-font,inherit);
}


body.flat-theme :is(#siteBrandName,.mc-site-name)[hidden] { display: none !important; }

body.flat-theme :is(#siteBrandName,.mc-site-name) {
  font-weight: 1000 !important;
  line-height: 1.06 !important;
  font-family: var(--mc-brand-font,inherit) !important;
  letter-spacing: -.045em !important;
  text-shadow: none;
}


body.flat-theme #siteBrandName {
  font-size: var(--mc-brand-font-size,34px) !important;
  background: var(--mc-brand-gradient,linear-gradient(90deg,var(--mc-brand1,#000000),var(--mc-brand2,#000000))) !important;
  -webkit-background-clip: text !important;
  background-clip: text !important;
  color: transparent !important;
  -webkit-text-fill-color: transparent !important;
}


body.flat-theme :is(#siteBrandTagline,.mc-site-tagline) {
  font-family: var(--mc-tagline-font,inherit);
  font-weight: 900 !important;
  letter-spacing: .035em !important;
}


body.flat-theme #siteBrandTagline {
  font-size: var(--mc-tagline-font-size,10px) !important;
  color: var(--mc-tagline,#000000) !important;
}


body.flat-theme .top-actions {
  gap: 5px !important;
}


body.flat-theme .top-bell {
  display: grid !important;
  place-items: center !important;
  position: relative !important;
}


body.flat-theme .top-profile-link {
  padding: 0 !important;
  box-shadow: none !important;
  display: grid !important;
  place-items: center !important;
}


body.flat-theme .top-user-avatar {
  border: 3px solid var(--mc-border,#dfe4e9) !important;
  border-radius: 50% !important;
  box-shadow: none !important;
  background: var(--mc-card-material,#fff) !important;
}


/* Navigation badge ownership: base appearance is shared; each component owns placement. */
body.flat-theme .navbadge {
  background: var(--mc-active,#111827) !important;
  color: #ffffff !important;
  border: 1.5px solid var(--mc-card-material,#ffffff) !important;
  box-shadow: none !important;
  line-height: 1.1;
  text-align: center;
}


body.flat-theme .navbadge:empty {
  display: none !important;
}


body.flat-theme :is(.top-bell,#mcAnnouncementHeaderButton) {
  position: relative !important;
}


/* Navigation counters are positioned by their real owning icons, never by a whole header column. */
body.flat-theme .top-bell>.navbadge {
  position: absolute;
  top: 1px;
  right: 0;
}

body.flat-theme #mcAnnouncementHeaderButton>.navbadge {
  position: absolute;
  top: 1px;
  left: calc(50% + 15px);
  transform: translateX(-50%);
}


body.flat-theme .header-search {
  padding: 5px !important;
  display: flex !important;
  align-items: center;
  justify-content: center;
  gap: 0 !important;
}


body.flat-theme .header-search input {
  font-size: 15px !important;
  min-height: 38px !important;
  padding: 0 3px !important;
  background: transparent !important;
  box-shadow: none !important;
  border: 0 !important;
}


body.flat-theme .mc-weather-header-row {
  grid-template-columns: repeat(3,minmax(0,1fr)) !important;
  gap: 9px !important;
}


body.flat-theme .mc-weather-header-row>a,
body.flat-theme .mc-weather-header-row>button {
  position: relative !important;
  padding: 8px 6px !important;
  box-shadow: none !important;
  overflow: visible !important;
}


body.flat-theme #mcWeatherHeaderButton>svg {
  overflow: visible !important;
}


body.flat-theme :is(.mc-weather-button-label,.mc-voting-button-label,.mc-announcement-button-label) {
  font-family: var(--mc-label-font,inherit);
  font-size: 10px !important;
  font-weight: 950 !important;
  line-height: 1.18 !important;
}


body.flat-theme #mcWeatherHeaderButton {
  grid-column: 2 !important;
  grid-row: 1 !important;
}


body.flat-theme #mcVotingHeaderButton {
  grid-column: 1 !important;
  grid-row: 1 !important;
}


body.flat-theme #mcAnnouncementHeaderButton {
  grid-column: 3 !important;
  grid-row: 1 !important;
}


body.flat-theme .navlabel {
  font-weight: 950 !important;
}


body.flat-theme .top-login {
  min-height: 42px !important;
  border: 1.5px solid var(--mc-border,#dfe4e9) !important;
  border-radius: 12px !important;
  padding: 0 13px !important;
  background: var(--mc-input-material,#fff) !important;
  color: var(--mc-header-text,#000000) !important;
  box-shadow: none !important;
  font-weight: 900 !important;
}


body.flat-theme .side-menu {
  position: fixed !important;
  top: 0 !important;
  bottom: 0 !important;
  left: 0 !important;
  right: auto !important;
  width: min(88vw,var(--mc-menu-width,320px)) !important;
  height: 100dvh !important;
  margin: 0 !important;
  z-index: 9999 !important;
  transform: translateX(-106%) !important;
  translate: none !important;
  overflow-y: auto !important;
  overflow-x: hidden !important;
  padding: max(10px,env(safe-area-inset-top)) 12px max(14px,env(safe-area-inset-bottom)) !important;
  background: var(--mc-side-menu-material,#fff) !important;
  border-right: 1px solid var(--mc-flat-nav-border-color,var(--mc-border,#dfe4e9)) !important;
  box-shadow: none !important;
  color: var(--mc-flat-text,var(--mc-base-ink)) !important;
}


body.flat-theme .side-menu .side-menu-links>:is(a,button) {
  display: grid !important;
  grid-template-columns: max-content minmax(0,1fr) max-content !important;
  align-items: center !important;
  gap: 10px !important;
  width: 100% !important;
  padding: 6px 8px !important;
  margin: 0 !important;
  min-height: var(--mc-menu-item-height,44px) !important;
  border: 0 !important;
  border-radius: var(--mc-menu-item-radius,12px) !important;
  background: var(--mc-menu-item-bg,transparent) !important;
  box-shadow: none !important;
  color: var(--mc-menu-item-text,#000000) !important;
  font: inherit !important;
  font-weight: 900 !important;
  text-align: left !important;
  min-width: 0 !important;
}


body.flat-theme .side-menu .side-menu-links>:is(a,button):hover {
  background: var(--mc-active-tint,#f9e8f6) !important;
}


body.flat-theme .side-menu .side-menu-links>:is(a,button):is(.active,.selected,[aria-current="page"],[aria-selected="true"],:active) {
  background: var(--mc-menu-selected-bg,var(--mc-active-tint,#f9e8f6)) !important;
  color: var(--mc-menu-selected-text,var(--mc-menu-item-text,#000000)) !important;
}


body.flat-theme .side-menu .side-menu-links>:is(a,button):is(.active,.selected,[aria-current="page"],[aria-selected="true"],:active) :is(svg.mc-outline-icon,svg) {
  color: var(--mc-menu-selected-icon,currentColor) !important;
  stroke: currentColor;
}


body.flat-theme .side-close {
  position: absolute !important;
  right: 10px !important;
  top: max(10px,env(safe-area-inset-top)) !important;
  width: 36px !important;
  height: 36px !important;
  font-size: 0 !important;
  padding: 0 !important;
  border: 0 !important;
  background: transparent !important;
}


body.flat-theme .side-close:after {
  display: block !important;
  content: "×" !important;
  font-size: 30px !important;
  line-height: 1 !important;
  font-weight: 700 !important;
  color: var(--mc-icon,#000000) !important;
  text-shadow: none !important;
}


body.flat-theme .home-tabs {
  display: grid !important;
  grid-template-columns: repeat(3,1fr) !important;
  gap: 8px !important;
  padding: 0 !important;
  overflow: visible !important;
}


body.flat-theme .home-tabs .pill {
  line-height: 1.15 !important;
  padding: 7px 4px !important;
  font-weight: 850 !important;
  text-shadow: none !important;
  box-shadow: none !important;
}

/* These three buttons read their saved Theme Studio fields directly. They do
   not inherit the general .pill colour or pass through another palette. */
body.flat-theme .home-tabs .pill[data-feed-tab="for_you"] {
  background: var(--mc-tab-for-you-color, #ffffff) !important;
  color: var(--mc-tab-for-you-text, #000000) !important;
  border: 1.5px solid var(--mc-tab-for-you-border-color, #dfe4e9) !important;
  min-height: var(--mc-tab-for-you-height, 48px) !important;
  border-radius: var(--mc-tab-for-you-radius, 12px) !important;
  font-size: var(--mc-tab-for-you-text-size, 12px) !important;
}
body.flat-theme .home-tabs .pill.active[data-feed-tab="for_you"] {
  background: var(--mc-tab-for-you-active-color, #ffffff) !important;
  color: var(--mc-tab-for-you-active-text, #000000) !important;
  border-color: var(--mc-tab-for-you-border-color, #dfe4e9) !important;
}

body.flat-theme .home-tabs .pill[data-feed-tab="following"] {
  background: var(--mc-tab-following-color, #ffffff) !important;
  color: var(--mc-tab-following-text, #000000) !important;
  border: 1.5px solid var(--mc-tab-following-border-color, #dfe4e9) !important;
  min-height: var(--mc-tab-following-height, 48px) !important;
  border-radius: var(--mc-tab-following-radius, 12px) !important;
  font-size: var(--mc-tab-following-text-size, 12px) !important;
}
body.flat-theme .home-tabs .pill.active[data-feed-tab="following"] {
  background: var(--mc-tab-following-active-color, #ffffff) !important;
  color: var(--mc-tab-following-active-text, #000000) !important;
  border-color: var(--mc-tab-following-border-color, #dfe4e9) !important;
}

body.flat-theme .home-tabs .pill[data-feed-tab="shop_posts"] {
  background: var(--mc-tab-shop-posts-color, #ffffff) !important;
  color: var(--mc-tab-shop-posts-text, #000000) !important;
  border: 1.5px solid var(--mc-tab-shop-posts-border-color, #dfe4e9) !important;
  min-height: var(--mc-tab-shop-posts-height, 48px) !important;
  border-radius: var(--mc-tab-shop-posts-radius, 12px) !important;
  font-size: var(--mc-tab-shop-posts-text-size, 12px) !important;
}
body.flat-theme .home-tabs .pill.active[data-feed-tab="shop_posts"] {
  background: var(--mc-tab-shop-posts-active-color, #ffffff) !important;
  color: var(--mc-tab-shop-posts-active-text, #000000) !important;
  border-color: var(--mc-tab-shop-posts-border-color, #dfe4e9) !important;
}

body.flat-theme .shop-composer {
  padding: var(--mc-card-pad,16px) !important;
}


body.flat-theme .composer-extra-panel {
  padding: 8px !important;
  border-radius: 12px !important;
  background: var(--mc-card-material,#fff) !important;
  border: 1px solid var(--mc-border,#dfe4e9) !important;
}


/* Canonical Shop directory layout: approved compact cards with My Shop moved to the top toolbar. */
.shop-suggestion-hub,
.shop-all-card {
  display: grid;
  gap: 12px;
  min-width: 0;
}

.shop-directory-top {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: 12px;
}

.shop-directory-hero-copy {
  min-width: 0;
  flex: 1 1 auto;
}

.shop-directory-top-actions {
  display: inline-flex;
  align-items: center;
  gap: 10px;
  flex: 0 0 auto;
}

.shop-toolbar-btn {
  min-height: 44px;
  border-radius: 14px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 8px;
  padding: 0 14px;
}

.shop-toolbar-btn .svgicon,
.shop-toolbar-btn .mc-outline-icon {
  width: 18px;
  height: 18px;
  flex: 0 0 18px;
}

.shop-toolbar-myshop {
  white-space: nowrap;
}


.shop-hub-head,
.shop-section-head {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
  min-width: 0;
}

body.flat-theme .shops-page-shell .shop-hub-head,
body.flat-theme .shops-page-shell .shop-section-head {
  flex-wrap: nowrap;
}

.shop-hub-head > div,
.shop-section-head > div {
  min-width: 0;
}

.shop-hub-head h2,
.shop-section-head h2 {
  margin: 0 0 3px;
  font-size: clamp(19px,3.8vw,23px);
  line-height: 1.15;
}

.shop-hub-head p,
.shop-section-head p {
  margin: 0;
  font-size: 12px;
  line-height: 1.35;
}



.shop-discovery-grid,
.shop-all-list {
  display: grid;
  grid-template-columns: minmax(0,1fr);
  gap: 12px;
  min-width: 0;
}

.shop-discovery-item,
.shop-all-row {
  display: grid;
  grid-template-columns: 52px minmax(0,1fr) minmax(108px,124px);
  grid-template-areas: 'photo details actions';
  align-items: center;
  column-gap: 12px;
  min-width: 0;
  max-width: 100%;
  min-height: 100px;
  padding: 12px;
  border: 1px solid var(--mc-border,#dfe4e9);
  border-radius: 16px;
  background: var(--mc-card-material,#fff);
}

.shop-discovery-item[hidden],
.shop-all-row[hidden] {
  display: none;
}

.shop-suggest-avatar,
.shopavatar-small {
  grid-area: photo;
  width: 52px !important;
  height: 52px !important;
  min-width: 52px;
  min-height: 52px;
  max-width: 52px;
  max-height: 52px;
  aspect-ratio: 1 / 1;
  box-sizing: border-box;
  object-fit: cover !important;
  object-position: center;
  border-radius: 50% !important;
  overflow: hidden;
  background-size: cover;
  background-position: center;
  background-repeat: no-repeat;
}

.shop-discovery-main,
.shop-all-main {
  grid-area: details;
  min-width: 0;
  align-self: center;
  color: inherit;
  text-decoration: none;
}

.shop-discovery-main > .shop-card-copy,
.shop-all-main > .shop-card-copy {
  display: flex;
  flex-direction: column;
  gap: 2px;
  min-width: 0;
}

.shop-discovery-main b,
.shop-all-main b {
  display: block;
  max-width: 100%;
  font-size: 14px;
  line-height: 1.35;
  overflow-wrap: anywhere;
}

.shop-discovery-main small,
.shop-all-main small {
  display: block;
  max-width: 100%;
  min-width: 0;
  overflow: hidden;
  color: var(--mc-muted,#667085);
  font-size: 12px;
  font-style: normal;
  line-height: 1.4;
  text-overflow: ellipsis;
  white-space: nowrap;
}


@media (max-width: 560px) {
  .shop-directory-top {
    align-items: center;
  }

  .shop-directory-top-actions {
    gap: 8px;
  }

  .shop-toolbar-btn {
    min-height: 40px;
    padding: 0 12px;
    border-radius: 12px;
  }
}

.shop-directory-actions {
  grid-area: actions;
  display: grid;
  grid-template-columns: minmax(0,1fr);
  gap: 6px;
  min-width: 0;
  width: 100%;
}

body.flat-theme .shops-page-shell .shop-directory-actions > :is(.btn, .shop-view-link),
.shop-directory-actions > :is(.btn, .shop-view-link) {
  display: inline-flex;
  justify-content: center;
  align-items: center;
  gap: 5px;
  width: 100%;
  min-width: 0;
  min-height: 34px;
  padding: 6px 8px;
  border: 1px solid var(--mc-border,#dfe4e9);
  border-radius: 10px;
  background: var(--mc-card-material,#fff);
  color: inherit;
  text-decoration: none;
  font-size: 12px;
  font-weight: 700;
  line-height: 1.25;
  white-space: nowrap;
}

body.flat-theme .shops-page-shell .shop-directory-actions > .shop-directory-follow:not(.is-following):not(:disabled) {
  border-color: var(--mc-button,#06c5d8) !important;
  background: var(--mc-button,#06c5d8) !important;
  color: var(--mc-button-text,#ffffff) !important;
}

.shop-directory-actions > .shop-directory-follow.is-following,
.shop-directory-actions > .shop-directory-self {
  border-color: var(--mc-border,#dfe4e9);
  background: var(--mc-card-material,#fff);
}

.shop-directory-actions .shop-directory-follow-label {
  display: inline !important;
  visibility: visible !important;
  opacity: 1 !important;
  font-size: max(11px, 1em);
  line-height: 1.25;
  overflow: visible;
  white-space: nowrap;
}
.shop-directory-actions > :is(button, a):focus-visible {
  outline: 2px solid var(--mc-accent,#06c5d8);
  outline-offset: 2px;
}

.shop-directory-actions .svgicon,
.shop-directory-actions .mc-outline-icon {
  width: 16px;
  height: 16px;
  flex: 0 0 16px;
}

.shop-count-badge {
  display: inline-grid;
  place-items: center;
  min-width: 29px;
  height: 27px;
  padding: 0 7px;
  border: 1px solid var(--mc-border,#dfe4e9);
  border-radius: 9px;
  font-size: 12px;
  font-weight: 700;
}


@media (min-width: 740px) {
  .shop-discovery-grid,
  .shop-all-list {
    grid-template-columns: repeat(2,minmax(0,1fr));
  }
}

@media (max-width: 380px) {
  body.flat-theme .shops-page-shell .shop-hub-head {
    align-items: flex-start;
    flex-wrap: wrap;
  }

  .shop-directory-top {
    flex-wrap: wrap;
  }

  .shop-directory-top-actions {
    width: 100%;
    justify-content: flex-start;
  }

  .shop-discovery-item,
  .shop-all-row {
    grid-template-columns: 42px minmax(0,1fr) 96px;
    column-gap: 8px;
    padding: 9px;
  }

  .shop-suggest-avatar,
  .shopavatar-small {
    width: 42px !important;
    height: 42px !important;
    min-width: 42px;
    min-height: 42px;
    max-width: 42px;
    max-height: 42px;
  }

  .shop-directory-actions > :is(.btn, .shop-view-link) {
    padding: 5px 6px;
    font-size: 11px;
  }
}

body.flat-theme .chat-panel,
body.flat-theme .conversation-list {
  background: var(--mc-message-surface,#fff) !important;
  padding: var(--mc-message-pad,16px) !important;
}


body.flat-theme .post-more-menu {
  border: 1px solid var(--mc-popup-border) !important;
  border-radius: var(--mc-popup-radius) !important;
  background: var(--mc-popup-paper) !important;
  box-shadow: 0 10px 26px rgba(15,28,39,.12) !important;
}


body.flat-theme .post-menu-item {
  border-radius: 12px !important;
}


body.flat-theme .comment {
  border-bottom: 1px solid #dfe4e9 !important;
}


body.flat-theme .post-extra-chip {
  display: inline-flex !important;
  align-items: center !important;
  gap: 4px !important;
  border: 0 !important;
  border-radius: 0 !important;
  background: transparent !important;
  box-shadow: none !important;
  padding: 0 !important;
  font-size: 12px !important;
}


body.flat-theme :is(.avatar,.profileavatar,.profile-pro-avatar,.shop-pro-avatar,.shopavatar-small,.shop-suggest-avatar,.conversation-avatar,.discovery-avatar,.admin-vote-avatar,.vote-arena-avatar,.vote-winner-avatar) {
  border: 3px solid var(--mc-border,#dfe4e9) !important;
  box-shadow: none !important;
  background-color: #42546b !important;
}


body.flat-theme :is(.profile-about-item,.profile-recent-item) {
  border: 1.5px solid var(--mc-border,#dfe4e9) !important;
  border-radius: 12px !important;
  background: var(--mc-card-material,#fff) !important;
  box-shadow: none !important;
}


body.flat-theme .social {
  display: inline-flex !important;
  align-items: center !important;
  gap: 5px !important;
  background: transparent !important;
  border: 0 !important;
  box-shadow: none !important;
  padding: 4px 6px !important;
}


body.flat-theme .conversation-row,
body.flat-theme .discovery-person:not(.people-suggest-pro) {
  padding: 10px !important;
  border: 1.5px solid var(--mc-border,#dfe4e9) !important;
  background: var(--mc-card-material,#fff) !important;
  box-shadow: none !important;
  border-radius: 12px !important;
}


body.flat-theme .conversation-row {
  margin-bottom: 6px !important;
}


body.flat-theme .message {
  border: 1px solid var(--mc-border,#dfe4e9) !important;
  box-shadow: none !important;
}


body.flat-theme .message.mine {
  background: color-mix(in srgb,var(--mc-message-surface,#fff) 82%,var(--mc-active,#1683ff) 18%) !important;
  color: var(--mc-text,#000000) !important;
}


body.flat-theme .message.theirs {
  background: var(--mc-message-surface,#fff) !important;
}


body.flat-theme .message-emoji-picker {
  border: 1.5px solid var(--mc-border,#dfe4e9) !important;
  border-radius: 20px !important;
  background: var(--mc-card-material,#fff) !important;
  box-shadow: none !important;
}


body.flat-theme .settings-feature-panel {
  padding: 10px !important;
  border: 1.5px solid var(--mc-border,#dfe4e9) !important;
  border-radius: 12px !important;
  background: var(--mc-card-material,#fff) !important;
  box-shadow: none !important;
}


body.flat-theme table {
  background: var(--mc-card-material,#fff) !important;
  border-radius: 12px !important;
  overflow: hidden !important;
}


body.flat-theme th {
  background: var(--mc-card-material,#fff) !important;
  color: #000000 !important;
}


body.flat-theme td,
body.flat-theme th {
  border-color: var(--mc-border,#dfe4e9) !important;
}


body.flat-theme .feature-installed-icon {
  background: transparent !important;
  font-size: 0 !important;
}


body.flat-theme .notification-card {
  background: var(--mc-notification-surface,#fff) !important;
  padding: var(--mc-notification-pad,16px) !important;
}


body.flat-theme .notification-tabs {
  padding: 4px !important;
  border-radius: 12px !important;
  background: var(--mc-card-material,#fff) !important;
  border: 1px solid var(--mc-border,#dfe4e9) !important;
}


body.flat-theme .search-toolbar {
  padding: 7px !important;
  border-radius: 12px !important;
  background: var(--mc-card-material,#fff) !important;
  border: 1.5px solid var(--mc-border,#dfe4e9) !important;
}


body.flat-theme .mc-live-weather-page {
  position: fixed !important;
  inset: 0 !important;
  z-index: 10020 !important;
  display: none;
  background: var(--mc-weather-page-bg,#ffffff) !important;
  overflow: auto !important;
}


.mc-live-weather-page.open {
  display: block !important;
}


.mc-live-weather-shell {
  width: min(100%,760px) !important;
  margin: 0 auto !important;
  padding: 14px !important;
}


.mc-live-weather-top {
  display: grid !important;
  grid-template-columns: 48px 1fr 48px !important;
  align-items: center !important;
  gap: 8px !important;
}


.mc-live-weather-back,
.mc-live-weather-refresh {
  border: 0 !important;
  background: transparent !important;
  color: #000000 !important;
  font-size: 31px !important;
}


.mc-live-weather-title {
  text-align: center !important;
  display: flex !important;
  flex-direction: column !important;
}


.mc-live-weather-hero,
.mc-live-weather-card,
.mc-live-weather-status {
  border: 1px solid var(--mc-border,#dfe4e9) !important;
  border-radius: 14px !important;
  background: var(--mc-card-material,#ffffff) !important;
  box-shadow: none !important;
}


.mc-live-weather-hero {
  position: relative !important;
  padding: 24px !important;
  margin: 12px 0 !important;
  overflow: hidden !important;
}


.mc-live-weather-temp {
  font-size: 52px !important;
  font-weight: 1000 !important;
}


.mc-live-weather-condition {
  font-size: 18px !important;
  font-weight: 900 !important;
}


.mc-live-weather-hero-symbol {
  position: absolute !important;
  right: 20px !important;
  top: 24px !important;
  font-size: 56px !important;
}


.mc-live-weather-grid {
  display: grid !important;
  grid-template-columns: repeat(2,1fr) !important;
  gap: 8px !important;
}


.mc-live-weather-card {
  padding: 12px !important;
  display: flex !important;
  flex-direction: column !important;
}


.mc-live-weather-status {
  padding: 10px !important;
  margin-top: 8px !important;
  text-align: center !important;
}


@media (max-width:390px) {
  .mc-weather-button-label,
  .mc-voting-button-label,
  .mc-announcement-button-label {
  font-size: 8px !important;
}

  .top nav .nav-svgicon {
  width: 30px !important;
  height: 30px !important;
}

  .navlabel {
  font-size: 8.4px !important;
}
}


body.flat-theme .verified-badge {
  display: inline-grid !important;
  place-items: center !important;
  vertical-align: -3px !important;
  margin-left: 2px !important;
}


body.flat-theme .verified-badge .verified-color-badge {
  width: 17px !important;
  height: 17px !important;
}


body.flat-theme :is(.verify-gate-close,.post-action-close,.reaction-sheet header button) {
  border: 0 !important;
  background: transparent !important;
  box-shadow: none !important;
  padding: 2px !important;
  display: inline-grid !important;
  place-items: center !important;
}


body.flat-theme :is(.verify-gate-close,.post-action-close,.reaction-sheet header button) svg.mc-outline-icon {
  width: 27px !important;
  height: 27px !important;
}


body.flat-theme .notification-arrow svg.mc-outline-icon,
body.flat-theme .settings-chevron svg.mc-outline-icon,
body.flat-theme details summary strong svg.mc-outline-icon,
body.flat-theme details summary span svg.mc-outline-icon {
  width: 21px !important;
  height: 21px !important;
}


body.flat-theme .mc-live-weather-back,
body.flat-theme .mc-live-weather-refresh {
  display: grid !important;
  place-items: center !important;
  width: 45px !important;
  height: 45px !important;
  padding: 0 !important;
  border: 0 !important;
  background: transparent !important;
  box-shadow: none !important;
}


body.flat-theme svg.flat-weather-control {
  width: 38px !important;
  height: 38px !important;
  overflow: visible !important;
}


.flat-weather-symbol {
  width: 64px !important;
  height: 64px !important;
  overflow: visible !important;
}


.flat-weather-icon {
  color: currentColor;
  overflow: visible;
}


body.flat-theme .has-outline-action-icon {
  gap: 6px !important;
}


body.flat-theme .has-outline-action-icon>svg.mc-outline-icon {
  width: 25px !important;
  height: 25px !important;
  flex: 0 0 auto !important;
  overflow: visible !important;
}


body.flat-theme :is(.card:not(.post):not(.google-ad-card):not(.profile-pro-card):not(.shop-pro-card):not(.settings-group):not(.notification-card):not(.announcement-card):not(.vote-card):not(.vote-create-card):not(.chat-panel),.admin-section,.theme-v97-card,.admin-control-hub) {
  border-radius: var(--mc-card-radius,12px) !important;
  padding: var(--mc-card-pad,16px) !important;
}


body.flat-theme .top {
  grid-template-columns: minmax(0,1fr) minmax(0,2fr) minmax(0,1fr) !important;
  grid-template-areas: "menu brand actions" "search search search" "weather weather weather" "nav nav nav" !important;
  gap: 8px 9px !important;
  padding: max(env(safe-area-inset-top,0px), calc(max(0px, var(--mc-header-padding,10px) - var(--mc-header-top-cut,0px)))) 13px calc(max(0px, 9px - var(--mc-header-bottom-cut,0px)) + max(0px, var(--mc-header-bottom-space,0px))) !important;
  background: var(--mc-header-material,#ffffff) !important;
  color: var(--mc-header-text,#000000) !important;
  border-bottom: 1px solid var(--mc-flat-header-border-color,var(--mc-border,#dfe4e9)) !important;
  box-shadow: none !important;
  border-radius: 0 0 var(--mc-header-radius,0px) var(--mc-header-radius,0px) !important;
}


body.flat-theme .top nav {
  padding: 6px 7px !important;
  border: 1px solid var(--mc-flat-nav-border-color,var(--mc-border,#dfe4e9)) !important;
  background: var(--mc-nav-material,#fff) !important;
  box-shadow: none !important;
  gap: 2px !important;
  border-radius: var(--mc-nav-radius,12px) !important;
}


body.flat-theme .top nav>a {
  position: relative !important;
  box-shadow: none !important;
  padding: 5px 3px !important;
}


/* Movable Header/Footer action paint and size are owned only by --mc-hf-* canonical item styles. */
body.flat-theme :is(input:not([data-checkin-search]):not([type=checkbox]):not([type=radio]):not([type=color]):not([type=range]),textarea,select:not(.composer-audience-select)) {
  border-radius: var(--mc-input-radius,9px) !important;
}


body.flat-theme .top-register {
  border: 1.5px solid var(--mc-border,#dfe4e9);
  border-radius: 12px;
  background: var(--mc-card-material,#fff);
  box-shadow: none;
  color: #000000;
}


body.flat-theme .notification-page-frame .notification-card {
  display: grid !important;
  grid-template-columns: auto minmax(0,1fr) auto !important;
  width: 100% !important;
  max-width: 100% !important;
  min-width: 0 !important;
  overflow: hidden !important;
}


body.flat-theme .notification-page-frame .notification-main {
  min-width: 0 !important;
  max-width: 100% !important;
  overflow: hidden !important;
}


body.flat-theme .notification-page-frame {
  width: 100% !important;
  max-width: 100% !important;
  min-width: 0 !important;
  overflow: hidden !important;
  box-sizing: border-box !important;
  background: var(--mc-card-material,#fff) !important;
  border: 1px solid var(--mc-border,#dfe4e9) !important;
  box-shadow: none !important;
}


body.flat-theme .notification-card.unread {
  box-shadow: none !important;
}


body.flat-theme .message-page-frame .card,
body.flat-theme .message-page-frame .conversation-row {
  margin-bottom: 0 !important;
}


body.flat-theme .message-page-frame {
  gap: 14px !important;
}


body.flat-theme :is(.message-filter-card,.conversation-row,.message-chat-page .chat-panel) {
  box-shadow: none !important;
}


body.flat-theme .announcement-more[open],
body.flat-theme .post-more[open] {
  z-index: 900 !important;
}


body.flat-theme .announcement-more-menu,
body.flat-theme .post-more-menu {
  z-index: 1000 !important;
}


html body.flat-theme [hidden] {
  display: none !important;
}


body.flat-theme .post-more>summary {
  border: 1px solid var(--mc-border,#dfe4e9) !important;
  background: var(--mc-card-material,#fff) !important;
}


body.flat-theme .brand[data-brand-pending="1"] #siteBrandTagline {
  visibility: hidden !important;
}



@media (max-width:700px) {
  body.flat-theme .top {
  padding: max(0px, calc(var(--mc-header-padding,10px) - var(--mc-header-top-cut,0px))) 7px calc(max(0px, 7px - var(--mc-header-bottom-cut,0px)) + max(0px, var(--mc-header-bottom-space,0px))) !important;
  grid-template-columns: minmax(0,1fr) minmax(0,2fr) minmax(0,1fr) !important;
  gap: 6px !important;
}

  body.flat-theme #siteBrandName {
  font-size: var(--mc-brand-font-size,34px) !important;
}

  body.flat-theme #siteBrandTagline {
  font-size: var(--mc-tagline-font-size,10px) !important;
}

  body.flat-theme .header-search {
  padding: 5px !important;
  display: flex !important;
}

  .header-search input {
  font-size: 13px !important;
}

  body.flat-theme .mc-weather-header-row {
  gap: 6px !important;
}

  .mc-weather-header-row>a,
  .mc-weather-header-row>button {
  padding: 6px 3px !important;
}

  body.flat-theme .top nav {
  border-radius: 12px !important;
  padding: 6px 4px 5px !important;
}

  body.flat-theme main#app {
  margin-top: 5px !important;
  padding-left: 7px !important;
  padding-right: 7px !important;
}

  body.flat-theme :is(.card:not(.settings-group),.profile-pro-card,.shop-pro-card,.admin-section,.notification-card,.announcement-card,.vote-card) {
  border-radius: 12px !important;
}

  body.flat-theme .home-tabs {
  gap: 5px !important;
}

  body.flat-theme .mc-live-weather-grid {
  grid-template-columns: 1fr 1fr !important;
}

  body.flat-theme :is(.card:not(.settings-group),.profile-pro-card,.shop-pro-card,.admin-section,.notification-card,.announcement-card,.vote-card,.theme-v97-card,.admin-control-hub) {
  border-radius: min(var(--mc-card-radius,12px),28px) !important;
}
}


body.flat-theme .mention-avatar {
  border: 3px solid var(--mc-border,#dfe4e9) !important;
  box-shadow: none !important;
  background: var(--mc-card-material,#fff) !important;
}


body.flat-theme .permission-state-card,
body.flat-theme .professional-permission-note {
  border: 1.5px solid var(--mc-border,#dfe4e9) !important;
  background: var(--mc-card-material,#fff) !important;
  box-shadow: none !important;
}


body.flat-theme .permission-state-icon {
  color: #000000 !important;
  background: var(--mc-card-material,#fff) !important;
  border: 2px solid var(--mc-border,#dfe4e9) !important;
  box-shadow: none !important;
}


body.flat-theme .professional-permission-note {
  color: var(--mc-muted) !important;
}


body.flat-theme .btn.is-disabled,
body.flat-theme .btn:disabled {
  background: var(--mc-card-material,#fff) !important;
  color: var(--mc-muted) !important;
  border-color: var(--mc-border,#dfe4e9) !important;
}


/* One semantic outline icon colour/size source per name; no animation or observers. */
body.flat-theme svg.mc-outline-icon[data-mc-icon="post-plus"]:not(.nav-svgicon):not(.mc-engagement svg) {
  color: var(--mc-icon-post-plus,var(--mc-icon,#000000)) !important;
  width: var(--mc-icon-size-post-plus,var(--mc-icon-size,25px)) !important;
  height: var(--mc-icon-size-post-plus,var(--mc-icon-size,25px)) !important;
}


body.flat-theme svg.mc-outline-icon[data-mc-icon="home"]:not(.nav-svgicon):not(.mc-engagement svg) {
  color: var(--mc-icon-home,var(--mc-icon,#000000)) !important;
  width: var(--mc-icon-size-home,var(--mc-icon-size,25px)) !important;
  height: var(--mc-icon-size-home,var(--mc-icon-size,25px)) !important;
}


body.flat-theme svg.mc-outline-icon[data-mc-icon="user"]:not(.nav-svgicon):not(.mc-engagement svg) {
  color: var(--mc-icon-user,var(--mc-icon,#000000)) !important;
  width: var(--mc-icon-size-user,var(--mc-icon-size,25px)) !important;
  height: var(--mc-icon-size-user,var(--mc-icon-size,25px)) !important;
}


body.flat-theme svg.mc-outline-icon[data-mc-icon="people"]:not(.nav-svgicon):not(.mc-engagement svg) {
  color: var(--mc-icon-people,var(--mc-icon,#000000)) !important;
  width: var(--mc-icon-size-people,var(--mc-icon-size,25px)) !important;
  height: var(--mc-icon-size-people,var(--mc-icon-size,25px)) !important;
}


body.flat-theme svg.mc-outline-icon[data-mc-icon="heart"]:not(.nav-svgicon):not(.mc-engagement svg) {
  color: var(--mc-icon-heart,var(--mc-icon,#000000)) !important;
  width: var(--mc-icon-size-heart,var(--mc-icon-size,25px)) !important;
  height: var(--mc-icon-size-heart,var(--mc-icon-size,25px)) !important;
}


body.flat-theme svg.mc-outline-icon[data-mc-icon="message"]:not(.nav-svgicon):not(.mc-engagement svg) {
  color: var(--mc-icon-message,var(--mc-icon,#000000)) !important;
  width: var(--mc-icon-size-message,var(--mc-icon-size,25px)) !important;
  height: var(--mc-icon-size-message,var(--mc-icon-size,25px)) !important;
}


body.flat-theme svg.mc-outline-icon[data-mc-icon="comment"]:not(.nav-svgicon):not(.mc-engagement svg) {
  color: var(--mc-icon-comment,var(--mc-icon,#000000)) !important;
  width: var(--mc-icon-size-comment,var(--mc-icon-size,25px)) !important;
  height: var(--mc-icon-size-comment,var(--mc-icon-size,25px)) !important;
}


body.flat-theme svg.mc-outline-icon[data-mc-icon="share"]:not(.nav-svgicon):not(.mc-engagement svg) {
  color: var(--mc-icon-share,var(--mc-icon,#000000)) !important;
  width: var(--mc-icon-size-share,var(--mc-icon-size,25px)) !important;
  height: var(--mc-icon-size-share,var(--mc-icon-size,25px)) !important;
}


body.flat-theme svg.mc-outline-icon[data-mc-icon="eye"]:not(.nav-svgicon):not(.mc-engagement svg) {
  color: var(--mc-icon-eye,var(--mc-icon,#000000)) !important;
  width: var(--mc-icon-size-eye,var(--mc-icon-size,25px)) !important;
  height: var(--mc-icon-size-eye,var(--mc-icon-size,25px)) !important;
}


body.flat-theme svg.mc-outline-icon[data-mc-icon="edit"]:not(.nav-svgicon):not(.mc-engagement svg) {
  color: var(--mc-icon-edit,var(--mc-icon,#000000)) !important;
  width: var(--mc-icon-size-edit,var(--mc-icon-size,25px)) !important;
  height: var(--mc-icon-size-edit,var(--mc-icon-size,25px)) !important;
}


body.flat-theme svg.mc-outline-icon[data-mc-icon="gear"]:not(.nav-svgicon):not(.mc-engagement svg) {
  color: var(--mc-icon-gear,var(--mc-icon,#000000)) !important;
  width: var(--mc-icon-size-gear,var(--mc-icon-size,25px)) !important;
  height: var(--mc-icon-size-gear,var(--mc-icon-size,25px)) !important;
}


body.flat-theme svg.mc-outline-icon[data-mc-icon="pin"]:not(.nav-svgicon):not(.mc-engagement svg) {
  color: var(--mc-icon-pin,var(--mc-icon,#000000)) !important;
  width: var(--mc-icon-size-pin,var(--mc-icon-size,25px)) !important;
  height: var(--mc-icon-size-pin,var(--mc-icon-size,25px)) !important;
}


body.flat-theme svg.mc-outline-icon[data-mc-icon="address"]:not(.nav-svgicon):not(.mc-engagement svg) {
  color: var(--mc-icon-address,var(--mc-icon,#000000)) !important;
  width: var(--mc-icon-size-address,var(--mc-icon-size,25px)) !important;
  height: var(--mc-icon-size-address,var(--mc-icon-size,25px)) !important;
}


body.flat-theme svg.mc-outline-icon[data-mc-icon="phone"]:not(.nav-svgicon):not(.mc-engagement svg) {
  color: var(--mc-icon-phone,var(--mc-icon,#000000)) !important;
  width: var(--mc-icon-size-phone,var(--mc-icon-size,25px)) !important;
  height: var(--mc-icon-size-phone,var(--mc-icon-size,25px)) !important;
}


body.flat-theme svg.mc-outline-icon[data-mc-icon="mail"]:not(.nav-svgicon):not(.mc-engagement svg) {
  color: var(--mc-icon-mail,var(--mc-icon,#000000)) !important;
  width: var(--mc-icon-size-mail,var(--mc-icon-size,25px)) !important;
  height: var(--mc-icon-size-mail,var(--mc-icon-size,25px)) !important;
}


body.flat-theme svg.mc-outline-icon[data-mc-icon="shield"]:not(.nav-svgicon):not(.mc-engagement svg) {
  color: var(--mc-icon-shield,var(--mc-icon,#000000)) !important;
  width: var(--mc-icon-size-shield,var(--mc-icon-size,25px)) !important;
  height: var(--mc-icon-size-shield,var(--mc-icon-size,25px)) !important;
}


body.flat-theme svg.mc-outline-icon[data-mc-icon="clock"]:not(.nav-svgicon):not(.mc-engagement svg) {
  color: var(--mc-icon-clock,var(--mc-icon,#000000)) !important;
  width: var(--mc-icon-size-clock,var(--mc-icon-size,25px)) !important;
  height: var(--mc-icon-size-clock,var(--mc-icon-size,25px)) !important;
}


body.flat-theme svg.mc-outline-icon[data-mc-icon="logout"]:not(.nav-svgicon):not(.mc-engagement svg) {
  color: var(--mc-icon-logout,var(--mc-icon,#000000)) !important;
  width: var(--mc-icon-size-logout,var(--mc-icon-size,25px)) !important;
  height: var(--mc-icon-size-logout,var(--mc-icon-size,25px)) !important;
}


body.flat-theme svg.mc-outline-icon[data-mc-icon="photo"]:not(.nav-svgicon):not(.mc-engagement svg) {
  color: var(--mc-icon-photo,var(--mc-icon,#000000)) !important;
  width: var(--mc-icon-size-photo,var(--mc-icon-size,25px)) !important;
  height: var(--mc-icon-size-photo,var(--mc-icon-size,25px)) !important;
}


body.flat-theme svg.mc-outline-icon[data-mc-icon="video"]:not(.nav-svgicon):not(.mc-engagement svg) {
  color: var(--mc-icon-video,var(--mc-icon,#000000)) !important;
  width: var(--mc-icon-size-video,var(--mc-icon-size,25px)) !important;
  height: var(--mc-icon-size-video,var(--mc-icon-size,25px)) !important;
}


body.flat-theme svg.mc-outline-icon[data-mc-icon="shop"]:not(.nav-svgicon):not(.mc-engagement svg) {
  color: var(--mc-icon-shop,var(--mc-icon,#000000)) !important;
  width: var(--mc-icon-size-shop,var(--mc-icon-size,25px)) !important;
  height: var(--mc-icon-size-shop,var(--mc-icon-size,25px)) !important;
}


body.flat-theme svg.mc-outline-icon[data-mc-icon="bell"]:not(.nav-svgicon):not(.mc-engagement svg) {
  color: var(--mc-icon-bell,var(--mc-icon,#000000)) !important;
  width: var(--mc-icon-size-bell,var(--mc-icon-size,25px)) !important;
  height: var(--mc-icon-size-bell,var(--mc-icon-size,25px)) !important;
}


body.flat-theme svg.mc-outline-icon[data-mc-icon="announcement"]:not(.nav-svgicon):not(.mc-engagement svg) {
  color: var(--mc-icon-announcement,var(--mc-icon,#000000)) !important;
  width: var(--mc-icon-size-announcement,var(--mc-icon-size,25px)) !important;
  height: var(--mc-icon-size-announcement,var(--mc-icon-size,25px)) !important;
}


body.flat-theme svg.mc-outline-icon[data-mc-icon="vote"]:not(.nav-svgicon):not(.mc-engagement svg) {
  color: var(--mc-icon-vote,var(--mc-icon,#000000)) !important;
  width: var(--mc-icon-size-vote,var(--mc-icon-size,25px)) !important;
  height: var(--mc-icon-size-vote,var(--mc-icon-size,25px)) !important;
}


body.flat-theme svg.mc-outline-icon[data-mc-icon="search"]:not(.nav-svgicon):not(.mc-engagement svg) {
  color: var(--mc-icon-search,var(--mc-icon,#000000)) !important;
  width: var(--mc-icon-size-search,var(--mc-icon-size,25px)) !important;
  height: var(--mc-icon-size-search,var(--mc-icon-size,25px)) !important;
}


body.flat-theme svg.mc-outline-icon[data-mc-icon="plus"]:not(.nav-svgicon):not(.mc-engagement svg) {
  color: var(--mc-icon-plus,var(--mc-icon,#000000)) !important;
  width: var(--mc-icon-size-plus,var(--mc-icon-size,25px)) !important;
  height: var(--mc-icon-size-plus,var(--mc-icon-size,25px)) !important;
}


body.flat-theme svg.mc-outline-icon[data-mc-icon="star"]:not(.nav-svgicon):not(.mc-engagement svg) {
  color: var(--mc-icon-star,var(--mc-icon,#000000)) !important;
  width: var(--mc-icon-size-star,var(--mc-icon-size,25px)) !important;
  height: var(--mc-icon-size-star,var(--mc-icon-size,25px)) !important;
}


body.flat-theme svg.mc-outline-icon[data-mc-icon="palette"]:not(.nav-svgicon):not(.mc-engagement svg) {
  color: var(--mc-icon-palette,var(--mc-icon,#000000)) !important;
  width: var(--mc-icon-size-palette,var(--mc-icon-size,25px)) !important;
  height: var(--mc-icon-size-palette,var(--mc-icon-size,25px)) !important;
}


body.flat-theme svg.mc-outline-icon[data-mc-icon="brush"]:not(.nav-svgicon):not(.mc-engagement svg) {
  color: var(--mc-icon-brush,var(--mc-icon,#000000)) !important;
  width: var(--mc-icon-size-brush,var(--mc-icon-size,25px)) !important;
  height: var(--mc-icon-size-brush,var(--mc-icon-size,25px)) !important;
}


body.flat-theme svg.mc-outline-icon[data-mc-icon="menu"]:not(.nav-svgicon):not(.mc-engagement svg) {
  color: var(--mc-icon-menu,var(--mc-icon,#000000)) !important;
  width: var(--mc-icon-size-menu,var(--mc-icon-size,25px)) !important;
  height: var(--mc-icon-size-menu,var(--mc-icon-size,25px)) !important;
}


body.flat-theme svg.mc-outline-icon[data-mc-icon="filter"]:not(.nav-svgicon):not(.mc-search-filter-svg) {
  color: var(--mc-icon-filter,var(--mc-icon,#000000)) !important;
  width: var(--mc-icon-size-filter,var(--mc-icon-size,25px)) !important;
  height: var(--mc-icon-size-filter,var(--mc-icon-size,25px)) !important;
}


body.flat-theme svg.mc-outline-icon[data-mc-icon="whatsapp"]:not(.nav-svgicon):not(.mc-engagement svg) {
  color: var(--mc-icon-whatsapp,var(--mc-icon,#000000)) !important;
  width: var(--mc-icon-size-whatsapp,var(--mc-icon-size,25px)) !important;
  height: var(--mc-icon-size-whatsapp,var(--mc-icon-size,25px)) !important;
}


body.flat-theme svg.mc-outline-icon[data-mc-icon="feeling"]:not(.nav-svgicon):not(.mc-engagement svg) {
  color: var(--mc-icon-feeling,var(--mc-icon,#000000)) !important;
  width: var(--mc-icon-size-feeling,var(--mc-icon-size,25px)) !important;
  height: var(--mc-icon-size-feeling,var(--mc-icon-size,25px)) !important;
}


body.flat-theme svg.mc-outline-icon[data-mc-icon="mention"]:not(.nav-svgicon):not(.mc-engagement svg) {
  color: var(--mc-icon-mention,var(--mc-icon,#000000)) !important;
  width: var(--mc-icon-size-mention,var(--mc-icon-size,25px)) !important;
  height: var(--mc-icon-size-mention,var(--mc-icon-size,25px)) !important;
}


body.flat-theme svg.mc-outline-icon[data-mc-icon="upload"]:not(.nav-svgicon):not(.mc-engagement svg) {
  color: var(--mc-icon-upload,var(--mc-icon,#000000)) !important;
  width: var(--mc-icon-size-upload,var(--mc-icon-size,25px)) !important;
  height: var(--mc-icon-size-upload,var(--mc-icon-size,25px)) !important;
}


body.flat-theme svg.mc-outline-icon[data-mc-icon="delete"]:not(.nav-svgicon):not(.mc-engagement svg) {
  color: var(--mc-icon-delete,var(--mc-icon,#000000)) !important;
  width: var(--mc-icon-size-delete,var(--mc-icon-size,25px)) !important;
  height: var(--mc-icon-size-delete,var(--mc-icon-size,25px)) !important;
}


body.flat-theme svg.mc-outline-icon[data-mc-icon="check"]:not(.nav-svgicon):not(.mc-engagement svg) {
  color: var(--mc-icon-check,var(--mc-icon,#000000)) !important;
  width: var(--mc-icon-size-check,var(--mc-icon-size,25px)) !important;
  height: var(--mc-icon-size-check,var(--mc-icon-size,25px)) !important;
}


body.flat-theme svg.mc-outline-icon[data-mc-icon="reply"]:not(.nav-svgicon):not(.mc-engagement svg) {
  color: var(--mc-icon-reply,var(--mc-icon,#000000)) !important;
  width: var(--mc-icon-size-reply,var(--mc-icon-size,25px)) !important;
  height: var(--mc-icon-size-reply,var(--mc-icon-size,25px)) !important;
}


body.flat-theme svg.mc-outline-icon[data-mc-icon="crown"]:not(.nav-svgicon):not(.mc-engagement svg) {
  color: var(--mc-icon-crown,var(--mc-icon,#000000)) !important;
  width: var(--mc-icon-size-crown,var(--mc-icon-size,25px)) !important;
  height: var(--mc-icon-size-crown,var(--mc-icon-size,25px)) !important;
}


body.flat-theme svg.mc-outline-icon[data-mc-icon="lock"]:not(.nav-svgicon):not(.mc-engagement svg) {
  color: var(--mc-icon-lock,var(--mc-icon,#000000)) !important;
  width: var(--mc-icon-size-lock,var(--mc-icon-size,25px)) !important;
  height: var(--mc-icon-size-lock,var(--mc-icon-size,25px)) !important;
}


body.flat-theme svg.mc-outline-icon[data-mc-icon="send"]:not(.nav-svgicon):not(.mc-engagement svg) {
  color: var(--mc-icon-send,var(--mc-icon,#000000)) !important;
  width: var(--mc-icon-size-send,var(--mc-icon-size,25px)) !important;
  height: var(--mc-icon-size-send,var(--mc-icon-size,25px)) !important;
}


body.flat-theme svg.mc-outline-icon[data-mc-icon="close"]:not(.nav-svgicon):not(.mc-engagement svg) {
  color: var(--mc-icon-close,var(--mc-icon,#000000)) !important;
  width: var(--mc-icon-size-close,var(--mc-icon-size,25px)) !important;
  height: var(--mc-icon-size-close,var(--mc-icon-size,25px)) !important;
}


body.flat-theme svg.mc-outline-icon[data-mc-icon="facebook"]:not(.nav-svgicon):not(.mc-engagement svg) {
  color: var(--mc-icon-facebook,var(--mc-icon,#000000)) !important;
  width: var(--mc-icon-size-facebook,var(--mc-icon-size,25px)) !important;
  height: var(--mc-icon-size-facebook,var(--mc-icon-size,25px)) !important;
}


body.flat-theme svg.mc-outline-icon[data-mc-icon="instagram"]:not(.nav-svgicon):not(.mc-engagement svg) {
  color: var(--mc-icon-instagram,var(--mc-icon,#000000)) !important;
  width: var(--mc-icon-size-instagram,var(--mc-icon-size,25px)) !important;
  height: var(--mc-icon-size-instagram,var(--mc-icon-size,25px)) !important;
}


body.flat-theme svg.mc-outline-icon[data-mc-icon="youtube"]:not(.nav-svgicon):not(.mc-engagement svg) {
  color: var(--mc-icon-youtube,var(--mc-icon,#000000)) !important;
  width: var(--mc-icon-size-youtube,var(--mc-icon-size,25px)) !important;
  height: var(--mc-icon-size-youtube,var(--mc-icon-size,25px)) !important;
}


body.flat-theme svg.mc-outline-icon[data-mc-icon="website"]:not(.nav-svgicon):not(.mc-engagement svg) {
  color: var(--mc-icon-website,var(--mc-icon,#000000)) !important;
  width: var(--mc-icon-size-website,var(--mc-icon-size,25px)) !important;
  height: var(--mc-icon-size-website,var(--mc-icon-size,25px)) !important;
}


body.flat-theme svg.mc-outline-icon[data-mc-icon="info"]:not(.nav-svgicon):not(.mc-engagement svg) {
  color: var(--mc-icon-info,var(--mc-icon,#000000)) !important;
  width: var(--mc-icon-size-info,var(--mc-icon-size,25px)) !important;
  height: var(--mc-icon-size-info,var(--mc-icon-size,25px)) !important;
}


body.flat-theme svg.mc-outline-icon[data-mc-icon="error"]:not(.nav-svgicon):not(.mc-engagement svg) {
  color: var(--mc-icon-error,var(--mc-icon,#000000)) !important;
  width: var(--mc-icon-size-error,var(--mc-icon-size,25px)) !important;
  height: var(--mc-icon-size-error,var(--mc-icon-size,25px)) !important;
}


body.flat-theme svg.mc-outline-icon[data-mc-icon="save"]:not(.nav-svgicon):not(.mc-engagement svg) {
  color: var(--mc-icon-save,var(--mc-icon,#000000)) !important;
  width: var(--mc-icon-size-save,var(--mc-icon-size,25px)) !important;
  height: var(--mc-icon-size-save,var(--mc-icon-size,25px)) !important;
}


body.flat-theme svg.mc-outline-icon[data-mc-icon="follow"]:not(.nav-svgicon):not(.mc-engagement svg) {
  color: var(--mc-icon-follow,var(--mc-icon,#000000)) !important;
  width: var(--mc-icon-size-follow,var(--mc-icon-size,25px)) !important;
  height: var(--mc-icon-size-follow,var(--mc-icon-size,25px)) !important;
}


body.flat-theme svg.mc-outline-icon[data-mc-icon="more"]:not(.nav-svgicon):not(.mc-engagement svg) {
  color: var(--mc-icon-more,var(--mc-icon,#000000)) !important;
  width: var(--mc-icon-size-more,var(--mc-icon-size,25px)) !important;
  height: var(--mc-icon-size-more,var(--mc-icon-size,25px)) !important;
}


body.flat-theme svg.mc-outline-icon[data-mc-icon="arrow"]:not(.nav-svgicon):not(.mc-engagement svg) {
  color: var(--mc-icon-arrow,var(--mc-icon,#000000)) !important;
  width: var(--mc-icon-size-arrow,var(--mc-icon-size,25px)) !important;
  height: var(--mc-icon-size-arrow,var(--mc-icon-size,25px)) !important;
}


body.flat-theme svg.mc-outline-icon[data-mc-icon="city"]:not(.nav-svgicon):not(.mc-engagement svg) {
  color: var(--mc-icon-city,var(--mc-icon,#000000)) !important;
  width: var(--mc-icon-size-city,var(--mc-icon-size,25px)) !important;
  height: var(--mc-icon-size-city,var(--mc-icon-size,25px)) !important;
}


body.flat-theme svg.mc-outline-icon[data-mc-icon="village"]:not(.nav-svgicon):not(.mc-engagement svg) {
  color: var(--mc-icon-village,var(--mc-icon,#000000)) !important;
  width: var(--mc-icon-size-village,var(--mc-icon-size,25px)) !important;
  height: var(--mc-icon-size-village,var(--mc-icon-size,25px)) !important;
}


body.flat-theme svg.mc-outline-icon[data-mc-icon="mohalla"]:not(.nav-svgicon):not(.mc-engagement svg) {
  color: var(--mc-icon-mohalla,var(--mc-icon,#000000)) !important;
  width: var(--mc-icon-size-mohalla,var(--mc-icon-size,25px)) !important;
  height: var(--mc-icon-size-mohalla,var(--mc-icon-size,25px)) !important;
}


body.flat-theme svg.mc-outline-icon[data-mc-icon="hometown"]:not(.nav-svgicon):not(.mc-engagement svg) {
  color: var(--mc-icon-hometown,var(--mc-icon,#000000)) !important;
  width: var(--mc-icon-size-hometown,var(--mc-icon-size,25px)) !important;
  height: var(--mc-icon-size-hometown,var(--mc-icon-size,25px)) !important;
}


body.flat-theme svg.mc-outline-icon[data-mc-icon="gender"]:not(.nav-svgicon):not(.mc-engagement svg) {
  color: var(--mc-icon-gender,var(--mc-icon,#000000)) !important;
  width: var(--mc-icon-size-gender,var(--mc-icon-size,25px)) !important;
  height: var(--mc-icon-size-gender,var(--mc-icon-size,25px)) !important;
}


body.flat-theme svg.mc-outline-icon[data-mc-icon="work"]:not(.nav-svgicon):not(.mc-engagement svg) {
  color: var(--mc-icon-work,var(--mc-icon,#000000)) !important;
  width: var(--mc-icon-size-work,var(--mc-icon-size,25px)) !important;
  height: var(--mc-icon-size-work,var(--mc-icon-size,25px)) !important;
}


body.flat-theme svg.mc-outline-icon[data-mc-icon="school"]:not(.nav-svgicon):not(.mc-engagement svg) {
  color: var(--mc-icon-school,var(--mc-icon,#000000)) !important;
  width: var(--mc-icon-size-school,var(--mc-icon-size,25px)) !important;
  height: var(--mc-icon-size-school,var(--mc-icon-size,25px)) !important;
}


body.flat-theme svg.mc-outline-icon[data-mc-icon="category"]:not(.nav-svgicon):not(.mc-engagement svg) {
  color: var(--mc-icon-category,var(--mc-icon,#000000)) !important;
  width: var(--mc-icon-size-category,var(--mc-icon-size,25px)) !important;
  height: var(--mc-icon-size-category,var(--mc-icon-size,25px)) !important;
}

/* ===== profile-v97.css ===== */
.profileavatar.frame {
  width: var(--mc-profile-avatar,94px);
  height: var(--mc-profile-avatar,94px);
  border-radius: 50%;
  overflow: hidden;
}


.profileavatar.frame img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}


.profile-cover {
  min-height: var(--mc-profile-cover,170px);
}


.profile-pro-actions,
.profile-visitor-actions,
.profile-shop-button-row {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
  justify-content: center;
}


/* Profile name and options menu: sole owner is the Profile component. */
.profile-name-line {
  display: flex;
  align-items: center;
  gap: 8px;
  min-width: 0;
}


.profile-name-line h1 {
  min-width: 0;
}


.profile-more-menu {
  position: relative;
  z-index: 16;
  flex: 0 0 auto;
  margin-left: auto;
  font-size: 14px;
  font-weight: normal;
}


.profile-more-menu>summary {
  list-style: none;
  display: grid;
  place-items: center;
  width: 34px;
  height: 34px;
  border: 1px solid var(--mc-border,#dce1e5);
  border-radius: 10px;
  background: var(--mc-card,#fff);
  color: inherit;
  cursor: pointer;
}


.profile-more-menu>summary::-webkit-details-marker,
.profile-menu-report>summary::-webkit-details-marker {
  display: none;
}


.profile-more-menu>summary .mc-outline-icon,
.profile-more-menu>summary .svgicon {
  width: 19px;
  height: 19px;
}


.profile-more-panel {
  position: absolute;
  top: calc(100% + 6px);
  right: 0;
  width: min(260px,calc(100vw - 36px));
  padding: 7px;
  border: 1px solid var(--mc-popup-border);
  border-radius: var(--mc-popup-radius);
  background: var(--mc-popup-paper);
  box-shadow: 0 10px 26px rgba(15,28,39,.12);
}


.profile-more-action {
  display: flex;
  align-items: center;
  gap: 9px;
  width: 100%;
  min-height: 44px;
  padding: 10px;
  border: 0;
  border-radius: 8px;
  background: transparent;
  color: inherit;
  text-align: start;
  font: inherit;
  cursor: pointer;
  list-style: none;
  box-sizing: border-box;
}


.profile-more-action:focus-visible,
.profile-more-action:hover {
  background: var(--mc-surface,#f5f6f7);
}


.profile-more-action .mc-outline-icon,
.profile-more-action .svgicon {
  width: 19px;
  height: 19px;
  flex: 0 0 auto;
}


.profile-menu-report .profile-report-popover {
  display: grid;
  gap: 8px;
  padding: 8px 6px;
}


.profile-menu-report .profile-report-popover label {
  font-size: 13px;
  font-weight: 600;
}


.profile-menu-report .profile-report-popover textarea {
  width: 100%;
  min-height: 84px;
  box-sizing: border-box;
}


.profile-about-grid,
.profile-recent-grid {
  display: grid;
  grid-template-columns: repeat(2,minmax(0,1fr));
  gap: 9px;
}


.profile-about-item,
.profile-recent-item {
  padding: 10px;
}


.profile-page-frame {
  display: grid;
  gap: var(--mc-gap,12px);
}


.profile-pro-card>.profile-cover::after {
  content: "";
  position: absolute;
  inset: auto 0 0;
  height: 54%;
  background: none;
  pointer-events: none;
}


.profile-cover-edit {
  position: absolute !important;
  right: 12px;
  bottom: 12px;
  z-index: 3;
}


.profileavatar.frame.profile-pro-avatar {
  width: var(--mc-profile-avatar,96px) !important;
  height: var(--mc-profile-avatar,96px) !important;
  border: 4px solid #dfe4e9 !important;
  background: #fff !important;
}


.profile-pro-copy :is(.profile-handle,.presence-line) {
  margin: 3px 0 0;
  overflow-wrap: anywhere;
}


.profile-pro-copy .presence-line {
  font-size: 11px;
  line-height: 1.2;
  min-height: 12px;
  display: flex;
  align-items: center;
  gap: 5px;
}


.profile-status-dot {
  display: inline-block;
  flex: none;
  width: 9px;
  height: 9px;
  border-radius: 50%;
  background: #159447;
}


.profile-pro-counts,
.profile-pro-bio,
.profile-pro-card>.socials,
.profile-pro-card>.profile-about-compact,
.profile-pro-card>.profile-pro-actions,
.profile-pro-card>.profile-inline-form,
.profile-pro-card>.verification-inline {
  margin-left: 16px !important;
  margin-right: 16px !important;
}


.profile-pro-counts {
  display: grid;
  grid-template-columns: repeat(3,minmax(0,1fr));
  gap: 0;
  padding: 10px 4px;
  margin-top: 12px;
  margin-bottom: 9px;
  border: 1px solid var(--mc-border,#dfe4e9);
  border-radius: var(--mc-card-radius,14px);
  background: var(--mc-card-material,#fff);
  box-sizing: border-box;
}


.profile-about-grid {
  display: grid !important;
  grid-template-columns: repeat(2,minmax(0,1fr)) !important;
  gap: 8px !important;
  align-items: stretch;
}


.profile-about-item {
  min-width: 0;
  display: flex;
  gap: 8px;
  padding: 9px !important;
  overflow: hidden !important;
  align-items: center !important;
}


.profile-about-item>span:last-child {
  width: 100%;
  min-width: 0;
}


.profile-about-item b,
.profile-about-item small {
  display: block;
  white-space: normal !important;
  text-overflow: clip !important;
  overflow: visible !important;
  overflow-wrap: anywhere !important;
  word-break: break-word !important;
  line-height: 1.25;
}


.profile-shop-button-row {
  padding: 0 4px;
}


.profile-pro-counts>* {
  display: grid !important;
  place-items: center !important;
  gap: 2px !important;
  min-width: 0;
  min-height: 37px;
  text-decoration: none !important;
  color: inherit;
}


.profile-pro-counts>*+* {
  border-inline-start: 1px solid var(--mc-border,#dfe4e9);
}


.profile-pro-counts b {
  font-size: 16px;
  line-height: 1;
}


.profile-pro-counts small {
  font-size: 10px;
  line-height: 1.2;
}


.profileplaceholder {
  width: 100%;
  height: 100%;
  display: grid;
  place-items: center;
  font-size: clamp(28px,9vw,44px);
  font-weight: 950;
  color: #000000;
  background: #f7f8fa;
}


.profile-shop-only-button {
  display: grid !important;
  grid-template-columns: auto auto minmax(0,1fr);
  align-items: center;
  gap: 7px;
  max-width: 100%;
  overflow: hidden;
}


.profile-shop-only-button small {
  min-width: 0;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}


.profile-page-frame>.profile-pro-card {
  padding: 0 !important;
  overflow: visible !important;
}


.profile-pro-card>.profile-cover {
  position: relative;
  width: 100%;
  height: var(--mc-profile-cover,165px);
  min-height: var(--mc-profile-cover,165px);
  background-size: cover !important;
  background-position: center !important;
  border-radius: var(--mc-card-radius,12px) var(--mc-card-radius,12px) 18px 18px !important;
  border: 0 !important;
  box-shadow: none !important;
  overflow: hidden !important;
}


.profile-pro-identity {
  min-width: 0;
  flex: 1;
  display: grid !important;
  grid-template-columns: var(--mc-profile-avatar,96px) minmax(0,1fr) !important;
  gap: 12px !important;
  align-items: start !important;
  width: 100% !important;
}


.profile-avatar-wrap {
  position: relative;
  flex: 0 0 auto;
  margin-top: calc(var(--mc-profile-overlap,44px) * -1) !important;
  z-index: 5;
}


.profile-pro-copy .profile-handle,
.profile-pro-copy .presence-line {
  overflow-wrap: anywhere;
  word-break: break-word;
}


.profile-owner-actions {
  margin-top: 10px !important;
  display: grid !important;
  grid-template-columns: repeat(2,minmax(0,1fr)) !important;
}


.profile-owner-actions>* {
  min-width: 0;
  width: 100%;
  justify-content: center;
}


.profile-about-email b,
.profile-about-item b {
  overflow-wrap: anywhere !important;
  word-break: normal !important;
}


.profile-pro-bio {
  overflow-wrap: anywhere;
  word-break: break-word;
  padding: 8px 0 !important;
  margin-top: 8px !important;
  font-size: clamp(14px,3.7vw,16px) !important;
  line-height: 1.55 !important;
}


.profile-about-grid-balanced b {
  overflow-wrap: anywhere !important;
  word-break: normal !important;
  max-width: 100% !important;
}


.profile-pro-head {
  align-items: flex-end;
  justify-content: space-between;
  gap: 12px;
  margin-top: 0 !important;
  display: block !important;
  padding: 0 14px !important;
  position: relative !important;
  z-index: 2 !important;
}


.profile-pro-copy h1 {
  line-height: 1.16;
  font-size: clamp(20px,4.8vw,27px);
  margin: 0 0 3px !important;
  position: relative !important;
  top: auto !important;
  word-break: break-word !important;
  max-width: 100% !important;
  overflow-wrap: anywhere !important;
  margin-top: 0 !important;
}


@media (max-width:360px) {
  .profile-about-grid.profile-about-grid-balanced {
  grid-template-columns: repeat(2,minmax(0,1fr)) !important;
}
}


#profileForm textarea[name="bio"],
.profile-report-popover textarea {
  resize: none !important;
}


.profile-inline-form-top {
  margin-top: 8px !important;
  padding-top: 8px !important;
}


.profile-pro-card {
  position: relative;
  box-sizing: border-box;
  font-size: clamp(14px,calc(15px * var(--mc-font,1)),17px);
  max-width: 100%;
  min-width: 0;
}


.profile-pro-actions>* {
  min-width: 0;
}


.profile-pro-copy {
  padding: 11px 0 0 !important;
  overflow: visible !important;
  min-width: 0;
}


.profile-pro-copy h1,
.profile-handle {
  max-width: 100%;
  overflow-wrap: anywhere;
}


@media (max-width:700px) {
  .profile-about-grid,
  .profile-recent-grid {
  grid-template-columns: repeat(2,minmax(0,1fr));
}

  .profile-cover {
  min-height: min(var(--mc-profile-cover,145px),145px);
}

  .profile-about-grid {
  grid-template-columns: repeat(2,minmax(0,1fr)) !important;
}

  .profile-pro-head {
  padding: 0 12px;
  gap: 8px;
}

  .profile-pro-identity {
  gap: 9px;
}

  .profile-pro-counts,
  .profile-pro-bio,
  .profile-pro-card>.socials,
  .profile-pro-card>.profile-about-compact,
  .profile-pro-card>.profile-pro-actions,
  .profile-pro-card>.profile-inline-form,
  .profile-pro-card>.verification-inline {
  margin-left: 12px !important;
  margin-right: 12px !important;
}

  .profile-about-item>.svgicon,
  .profile-about-item>.profile-detail-icon {
  flex: 0 0 auto !important;
}

  .profile-pro-actions {
  gap: 7px;
}

  .profile-pro-actions>.btn {
  white-space: normal;
  text-align: center;
}
}


body.flat-theme .profile-cover {
  border-radius: 12px !important;
  border: 2px solid #dfe4e9 !important;
  box-shadow: none !important;
}


body.flat-theme .profile-cover:not(.has-image) {
  background: #ffffff !important;
}


body.flat-theme .profile-about-grid,
body.flat-theme .profile-recent-grid {
  gap: 9px !important;
}


body.flat-theme .profile-about-grid-balanced .profile-about-item {
  border-radius: 12px !important;
  box-shadow: none !important;
}


body.flat-theme .profile-about-title b {
  font-size: 17px !important;
  line-height: 1.15 !important;
}


body.flat-theme .profile-about-title small {
  font-size: 10.5px !important;
  color: var(--mc-muted) !important;
}


body.flat-theme .profile-page-frame {
  background: #ffffff !important;
  border: 1px solid var(--mc-border,#dfe4e9) !important;
  box-shadow: none !important;
}


body.flat-theme .profile-pro-card {
  background: var(--mc-profile-surface,#fff) !important;
  padding: var(--mc-profile-pad,16px) !important;
}


body.flat-theme .profile-pro-head {
  margin-top: 0 !important;
}


.profile-about-compact {
  margin: 12px 0 10px;
}


.profile-about-title {
  display: flex;
  align-items: center;
  justify-content: flex-start;
  gap: 10px;
  width: 100%;
  min-width: 0;
  box-sizing: border-box;
  margin: 0 0 8px;
  padding: 0 2px;
}

.profile-about-heading {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  min-width: 0;
}

.profile-about-heading-line {
  display: inline-flex;
  align-items: center;
  gap: 4px;
}

.profile-about-title .profile-about-heading-line .mc-detail-chevron {
  margin-left: 0;
  width: 26px;
  height: 26px;
  min-width: 26px;
  flex-basis: 26px;
}

.profile-about-title b {
  font-size: 18px;
  line-height: 1.1;
}


.profile-about-title small {
  display: block;
  margin-top: 2px;
  font-size: 11px;
  color: var(--mc-muted);
}


.profile-about-grid.profile-about-grid-balanced {
  grid-auto-flow: row !important;
  display: grid;
  grid-template-columns: repeat(2,minmax(0,1fr));
  gap: 9px;
}


.profile-about-grid-balanced .profile-about-item {
  height: auto !important;
  display: flex;
  align-items: center;
  gap: 9px;
  min-width: 0;
  min-height: 72px;
  padding: 10px 11px;
  border-radius: 12px;
  overflow: hidden;
}


.profile-about-grid-balanced .profile-detail-icon {
  width: 30px;
  height: 30px;
  display: grid;
  place-items: center;
  flex: 0 0 30px;
  box-sizing: border-box;
}


.profile-about-grid-balanced .profile-detail-icon>.svgicon,
.profile-about-grid-balanced .profile-detail-icon>.mc-outline-icon {
  width: 30px;
  height: 30px;
}


.profile-about-grid-balanced .profile-about-item>span {
  min-width: 0;
}


.profile-about-grid-balanced .profile-detail-copy {
  min-width: 0;
  width: 100%;
  flex: 1 1 auto;
  display: block;
}


.profile-about-grid-balanced .profile-about-item small {
  display: block;
  font-size: 10px;
  line-height: 1.15;
  color: var(--mc-muted);
}


.profile-about-grid-balanced .profile-about-item b {
  display: block;
  max-width: 100%;
  font-size: 14px;
  line-height: 1.22;
  white-space: normal;
  overflow-wrap: anywhere;
  word-break: normal;
}


.profile-about-email {
  grid-column: auto;
}


.profile-about-email b {
  word-break: break-all;
}


.admin-full-control-v97 {
  min-width: 0;
}


@media (max-width:430px) {
  .profile-pro-counts {
  gap: 10px;
}

  .profile-pro-counts>* {
  min-width: 50px;
}

  .profile-pro-head {
  align-items: flex-start;
  padding: 0 12px !important;
}

  .profile-pro-identity {
  grid-template-columns: min(var(--mc-profile-avatar,96px),90px) minmax(0,1fr) !important;
  gap: 9px !important;
}

  .profile-pro-copy {
  padding-bottom: 4px;
  padding-top: 9px !important;
}

  .profile-pro-copy h1 {
  font-size: clamp(18px,5.2vw,23px) !important;
}

  .profile-owner-actions {
  grid-template-columns: 1fr !important;
}

  .profile-about-grid.profile-about-grid-balanced {
  grid-template-columns: repeat(2,minmax(0,1fr));
  gap: 7px;
}

  .profile-about-grid-balanced .profile-about-item {
  gap: 7px;
  min-height: 66px;
  padding: 9px;
}

  .profile-about-grid-balanced .profile-detail-icon {
  width: 26px;
  height: 26px;
  flex-basis: 26px;
}

  .profile-about-grid-balanced .profile-detail-icon>.svgicon,
  .profile-about-grid-balanced .profile-detail-icon>.mc-outline-icon {
  width: 26px;
  height: 26px;
}

  .profile-about-grid-balanced .profile-about-item b {
  font-size: 12.5px;
}

  .profile-about-email {
  grid-column: auto;
}
}


@media (max-width:340px) {
  .profile-about-grid.profile-about-grid-balanced {
  grid-template-columns: repeat(2,minmax(0,1fr));
}

  .profile-about-email {
  grid-column: auto;
}
}

/* ===== shop-v97.css ===== */
.shop-pro-actions {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
  justify-content: center;
}


.shop-pro-main {
  display: flex;
  align-items: center;
  gap: 12px;
  position: relative !important;
  z-index: 2 !important;
}


.shop-pro-avatar {
  width: 64px;
  height: 64px;
  border-radius: 50%;
  object-fit: cover;
  flex: 0 0 auto;
}


.shop-create-panel {
  scroll-margin-top: 110px;
}


.shop-detail-page-frame>*,
.shop-detail-page-frame .card {
  width: 100%;
  max-width: 100%;
  min-width: 0;
  box-sizing: border-box;
}


.shop-detail-page-frame .shop-pro-card {
  overflow: hidden;
}


.shop-detail-page-frame .shop-pro-copy>* {
  max-width: 100%;
  overflow-wrap: anywhere;
  word-break: break-word;
}


.shop-detail-page-frame .shop-top-details,
.shop-detail-page-frame .shop-detail-summary,
.shop-detail-page-frame .shop-description-compact {
  width: 100%;
  max-width: 100%;
  min-width: 0;
  box-sizing: border-box;
  overflow-wrap: anywhere;
  word-break: break-word;
}


.shop-detail-page-frame .shop-detail-summary {
  display: grid;
  grid-template-columns: repeat(2,minmax(0,1fr));
  gap: 7px;
}


.shop-detail-page-frame .shop-detail-summary>* {
  min-width: 0;
  max-width: 100%;
}


.shop-detail-page-frame .shop-pro-actions {
  display: grid !important;
  grid-template-columns: repeat(2,minmax(0,1fr)) !important;
  gap: 8px !important;
  width: 100% !important;
  min-width: 0 !important;
}


.shop-detail-page-frame .shop-pro-actions>* {
  width: 100%;
  min-width: 0;
  max-width: 100%;
  justify-content: center;
  margin: 0;
  box-sizing: border-box;
}

.shop-detail-page-frame .shop-pro-actions .shop-follow-action {
  border: 1px solid var(--mc-border,#dfe4e9);
  border-radius: var(--mc-button-radius,12px);
  background: var(--mc-card-material,#fff);
  color: var(--mc-text,#111);
  min-height: var(--mc-button-height,44px);
  font-weight: 750;
}

.shop-detail-page-frame .shop-pro-actions .shop-follow-action.is-following {
  background: var(--mc-input-material,#f8fafc);
}


.shop-detail-page-frame img,
.shop-detail-page-frame video {
  max-width: 100%;
  height: auto;
}


.shop-detail-page-frame .post,
.shop-detail-page-frame .composer {
  max-width: 100%;
  min-width: 0;
  overflow: hidden;
}


@media (max-width:340px) {
  .shop-detail-page-frame .shop-pro-actions {
  grid-template-columns: 1fr !important;
}
}


.shop-detail-page-frame {
  padding: 10px;
  border: 1px solid #dfe4e9;
  border-radius: var(--mc-card-radius);
  background: #ffffff;
  box-shadow: none;
  display: grid;
  gap: var(--mc-gap,12px);
}


.shop-detail-page-frame>.shop-pro-card {
  padding: 0 !important;
  overflow: hidden !important;
}


.shop-cover {
  position: relative;
  width: 100%;
  height: var(--mc-shop-cover,185px);
  min-height: var(--mc-shop-cover,185px);
  background-color: rgba(230,244,255,.55);
  background-size: cover !important;
  background-position: center !important;
  background-repeat: no-repeat !important;
  border-radius: var(--mc-card-radius,12px) var(--mc-card-radius,12px) 18px 18px;
  overflow: hidden;
}


.shop-cover:not(.has-image) {
  background-image: #f7f8fa;
}


.shop-cover-shade {
  position: absolute;
  inset: 0;
  background: #f7f8fa;
  pointer-events: none;
}


.shop-cover-brand {
  position: absolute;
  left: 12px;
  top: 12px;
  display: inline-flex;
  align-items: center;
  gap: 7px;
  max-width: calc(100% - 24px);
  padding: 7px 10px;
  border: 1px solid #dfe4e9;
  border-radius: 12px;
  background: #ffffff;
  font-size: 11px;
  font-weight: 900;
  overflow: hidden;
}


.shop-cover-brand svg {
  width: 20px;
  height: 20px;
  flex: 0 0 auto;
}


.shop-cover-brand span {
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}


.shop-detail-page-frame .shop-pro-copy :is(small,p,span) {
  display: block;
  margin: 2px 0;
  overflow-wrap: anywhere !important;
  word-break: break-word !important;
}


.shop-detail-page-frame .shop-pro-stats {
  display: grid;
  grid-template-columns: repeat(3,minmax(0,1fr));
  gap: 7px;
  width: 100%;
  min-width: 0;
  padding: 9px;
  border: 1px solid #dfe4e9;
  border-radius: 12px;
  background: #ffffff;
  box-shadow: none;
}


.shop-detail-page-frame .shop-pro-stats>* {
  min-width: 0;
  text-align: center;
  padding: 6px 3px;
  text-decoration: none;
}


.shop-detail-page-frame .shop-pro-stats b,
.shop-detail-page-frame .shop-pro-stats small {
  display: block;
}


.shop-business-info {
  display: grid;
  gap: 11px;
  padding: 14px;
  border: 1px solid var(--mc-border,#dfe4e9);
  border-radius: 16px;
  background: var(--mc-card-material,#fff);
  overflow: hidden;
}


.shop-info-heading {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 10px;
  padding: 10px;
  border: 1px solid var(--mc-border,#dfe4e9);
  border-radius: 12px;
  background: var(--mc-card-material,#fff);
  box-sizing: border-box;
}


.shop-info-heading-copy {
  display: grid;
  min-width: 0;
  gap: 2px;
}


.shop-info-heading small {
  font-size: 10px;
  color: var(--mc-muted);
}


.shop-info-heading-icon {
  display: inline-grid;
  place-items: center;
  flex: 0 0 auto;
}


.shop-info-heading-icon .mc-outline-icon {
  width: 28px;
  height: 28px;
}


.shop-detail-item {
  display: flex;
  align-items: flex-start;
  gap: 8px;
  min-width: 0;
  max-width: 100%;
  padding: 10px;
  text-decoration: none;
  overflow: hidden;
  box-sizing: border-box;
  border: 1.5px solid var(--mc-border,#dfe4e9);
  border-radius: 12px;
  background: var(--mc-card-material,#fff);
  color: var(--mc-text,#000);
  box-shadow: none;
}


.shop-detail-item:where(a) {
  color: inherit;
}


.shop-detail-icon {
  display: inline-grid;
  place-items: center;
  width: 30px;
  height: 30px;
  flex: 0 0 30px;
  line-height: 1;
  box-sizing: border-box;
}


.shop-detail-icon .mc-outline-icon {
  width: 24px;
  height: 24px;
  color: var(--mc-icon,#000);
}


.shop-detail-copy {
  display: grid;
  min-width: 0;
  flex: 1 1 auto;
  gap: 2px;
  font-style: normal;
}


.shop-detail-copy small,
.shop-detail-copy b,
.shop-detail-copy p {
  display: block;
  min-width: 0;
  max-width: 100%;
  overflow-wrap: anywhere;
  word-break: break-word;
}


.shop-detail-copy small {
  font-size: 10px;
  color: var(--mc-muted,#000);
}


.shop-detail-copy b {
  font-size: var(--mc-detail-font,14px);
  line-height: 1.25;
}


.shop-pro-actions .btn {
  min-height: var(--mc-button-height,44px);
}


.shop-composer,
.shop-followers-card {
  overflow: hidden !important;
}


.shop-post-submit-row {
  display: grid;
  grid-template-columns: minmax(0,1fr) minmax(120px,.62fr);
  gap: 9px;
  align-items: stretch;
  margin-top: 8px;
}


.shop-post-submit-row>* {
  width: 100%;
  min-width: 0;
  margin: 0 !important;
  min-height: var(--mc-button-height,44px);
}


.shop-post-media-tools {
  display: flex;
  gap: 8px;
  flex-wrap: wrap;
  margin-top: 9px;
}


.shop-post-media-tools>* {
  flex: 1 1 120px;
}


.shop-detail-page-frame .shop-pro-main {
  display: grid !important;
  grid-template-columns: minmax(0,1fr) !important;
  align-items: stretch !important;
  width: 100% !important;
  max-width: 100% !important;
  min-width: 0 !important;
  position: relative !important;
  z-index: 3;
  padding: 0 16px 16px !important;
  gap: 12px !important;
  margin-top: 0 !important;
  padding-top: 0 !important;
}


.shop-detail-page-frame .shop-pro-identity {
  min-width: 0;
  max-width: 100%;
  position: relative;
  display: grid !important;
  grid-template-columns: var(--mc-shop-avatar,96px) minmax(0,1fr) !important;
  gap: 12px !important;
  align-items: start !important;
  margin-top: 0 !important;
}


.shop-detail-page-frame .shop-pro-avatar {
  width: var(--mc-shop-avatar,96px) !important;
  height: var(--mc-shop-avatar,96px) !important;
  border-radius: 50% !important;
  object-fit: cover !important;
  flex: 0 0 auto !important;
  border: 4px solid #dfe4e9 !important;
  background: #fff !important;
  margin-top: calc(var(--mc-shop-overlap,50px) * -1) !important;
  z-index: 5;
}


.shop-detail-page-frame .shop-pro-copy {
  max-width: 100%;
  padding-top: var(--mc-shop-overlap,50px) !important;
  padding-bottom: 6px !important;
  padding: 11px 0 0 !important;
  min-width: 0 !important;
  overflow: visible !important;
}


.shop-detail-page-frame .shop-pro-copy h1 {
  margin: 0 0 3px;
  font-size: clamp(20px,5vw,27px) !important;
  line-height: 1.12 !important;
  overflow-wrap: anywhere !important;
}


.shop-detail-grid-balanced .shop-detail-copy {
  min-width: 0;
}


.shop-detail-grid-balanced small {
  font-size: 10px;
}


.shop-description-panel {
  grid-column: 1 / -1;
  display: block;
  width: 100%;
  min-width: 0;
  margin-top: 9px;
  align-items: flex-start;
  min-height: 108px;
}


.shop-description-panel .shop-detail-copy {
  gap: 5px;
  flex: 1 1 auto;
  min-width: 0;
}


.shop-description-panel [data-shop-detail-label="about"] {
  font-weight: 900;
}


.shop-description-panel p {
  width: 100%;
  margin: 12px 0 0;
  line-height: 1.55;
  font-size: clamp(14px, 3.7vw, 16px);
  overflow-wrap: anywhere;
  word-break: break-word;
}


.shop-pro-card {
  position: relative;
  box-sizing: border-box;
  min-width: 0;
  max-width: 100%;
  font-size: clamp(14px,calc(15px * var(--mc-font,1)),17px);
}


.shop-description-compact {
  margin: 0;
  padding: 0;
  border-radius: 0;
  background: transparent;
  font-size: clamp(14px,3.7vw,16px);
  line-height: 1.48;
}


.shop-detail-grid-balanced {
  display: grid !important;
  gap: 8px !important;
  grid-template-columns: repeat(2,minmax(0,1fr)) !important;
  grid-auto-flow: row !important;
}


.shop-detail-grid-balanced>* {
  min-height: 64px !important;
  padding: 9px !important;
  align-items: center !important;
  min-width: 0 !important;
  overflow: hidden !important;
}


.shop-detail-grid-balanced b {
  font-size: var(--mc-detail-font) !important;
  line-height: 1.25 !important;
  overflow-wrap: anywhere !important;
  word-break: normal !important;
  max-width: 100% !important;
}



.shop-pro-copy h1 {
  max-width: 100% !important;
  overflow-wrap: anywhere !important;
  margin-top: 0 !important;
}


@media (max-width:360px) {
  .shop-detail-grid-balanced {
  grid-template-columns: repeat(2,minmax(0,1fr)) !important;
}
}


#shopForm textarea[name="description"],
#shopPost textarea[name="text"] {
  resize: none !important;
}


.shop-avatar-wrap {
  position: relative;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  flex: 0 0 auto;
}


.shop-cover-edit {
  position: absolute !important;
  right: 12px;
  bottom: 12px;
  z-index: 6;
  display: none !important;
}


.shop-avatar-edit {
  position: absolute;
  right: -4px;
  bottom: -4px;
  z-index: 6;
  display: none !important;
  align-items: center;
  gap: 4px;
  border: 1px solid #dfe4e9;
  border-radius: 999px;
  padding: 7px 9px;
  background: #ffffff;
  box-shadow: none;
  cursor: pointer;
  font-weight: 800;
}


.shop-avatar-edit svg {
  width: 18px;
  height: 18px;
}


.shop-pro-card.is-editing .shop-cover-edit,
.shop-pro-card.is-editing .shop-avatar-edit {
  display: inline-flex !important;
}


.shop-inline-edit {
  margin-top: 12px;
}


.shop-inline-edit[hidden],
#shopViewContent[hidden] {
  display: none !important;
}


.shop-pro-card.is-editing .shop-pro-copy {
  opacity: .85;
}


@media (max-width:640px) {
  .shop-cover-edit {
  right: 8px;
  bottom: 8px;
}

  .shop-avatar-edit span {
  display: none;
}
}


.shop-pro-actions>* {
  min-width: 0;
}


.shop-pro-copy {
  min-width: 0;
}


.shop-pro-copy h1,
.shop-pro-copy small {
  max-width: 100%;
  overflow-wrap: anywhere;
}


@media (max-width:700px) {
  .shop-detail-page-frame {
  padding: 7px;
  border-radius: 12px;
}

  .shop-detail-page-frame .shop-pro-stats {
  grid-template-columns: repeat(3,minmax(0,1fr));
}

  .shop-detail-page-frame .shop-detail-summary {
  grid-template-columns: repeat(2,minmax(0,1fr));
}

  .shop-detail-page-frame .shop-pro-actions>* {
  min-width: 0;
}

  .shop-detail-page-frame .shop-pro-main {
  padding: 0 12px 12px !important;
}

  .shop-cover-brand {
  left: 9px;
  top: 9px;
}

  .shop-detail-item>.shop-detail-icon {
  flex: 0 0 auto;
}

  .shop-pro-actions {
  gap: 7px;
}

  .shop-pro-actions>.btn {
  white-space: normal;
  text-align: center;
}
}


body.flat-theme :is(.shop-card,.shop-detail-summary) {
  border-radius: 12px !important;
}


body.flat-theme .shop-detail-page-frame .shop-pro-main {
  display: grid !important;
  grid-template-columns: minmax(0,1fr) !important;
  width: 100% !important;
  max-width: 100% !important;
  min-width: 0 !important;
}


body.flat-theme .shop-detail-page-frame {
  width: 100% !important;
  max-width: 100% !important;
  min-width: 0 !important;
  overflow: hidden !important;
  box-sizing: border-box !important;
  background: #ffffff !important;
  border: 1px solid var(--mc-border,#dfe4e9) !important;
  box-shadow: none !important;
}


body.flat-theme .shop-pro-card {
  background: var(--mc-shop-surface,#fff) !important;
  padding: var(--mc-shop-pad,16px) !important;
}


body.flat-theme .shop-cover {
  box-shadow: none !important;
}


body.flat-theme .shop-detail-page-frame .shop-pro-identity {
  margin-top: 0 !important;
}


@media (max-width:430px) {
  .shop-detail-page-frame .shop-pro-avatar {
  width: min(var(--mc-shop-avatar,96px),92px) !important;
  height: min(var(--mc-shop-avatar,96px),92px) !important;
}

  .shop-detail-page-frame .shop-pro-stats {
  grid-template-columns: repeat(3,minmax(0,1fr)) !important;
}

  .shop-detail-page-frame .shop-pro-actions>* {
  width: 100% !important;
}

  .shop-post-submit-row {
  grid-template-columns: minmax(0,1fr) minmax(112px,.72fr);
}

  .shop-detail-grid-balanced {
  grid-template-columns: repeat(2,minmax(0,1fr)) !important;
  gap: 6px !important;
}

  .shop-detail-grid-balanced>* {
  padding: 7px !important;
  min-height: 60px !important;
}

  .shop-detail-page-frame .shop-pro-identity {
  grid-template-columns: min(var(--mc-shop-avatar,96px),90px) minmax(0,1fr) !important;
  gap: 9px !important;
}

  .shop-detail-page-frame .shop-pro-copy {
  padding-top: 9px !important;
}

  .shop-detail-page-frame .shop-pro-copy h1 {
  font-size: clamp(18px,5.2vw,23px) !important;
}
}

/* ===== admin-center-v97.css ===== */
/* Admin Center shell: one contained workspace, separate from public navigation. */
body.flat-theme.mc-admin-workspace > .top,
body.flat-theme.mc-admin-workspace > .mc-header-search-panel,
body.flat-theme.mc-admin-workspace > #siteFooterNav,
body.flat-theme.mc-admin-workspace > .community-footer {
  display: none !important;
}
body.flat-theme.mc-admin-workspace main#app {
  width: min(calc(100% - 24px),1100px) !important;
  max-width: 1100px !important;
  margin: 18px auto 40px !important;
  padding: 0 !important;
  overflow-x: visible !important;
}
body.flat-theme.mc-admin-workspace main#app > * {
  min-width: 0;
  max-width: 100%;
  box-sizing: border-box;
}
.admin-workspace-header {
  display: flex;
  align-items: center;
  gap: 16px;
  padding: 18px 20px;
  margin: 0 0 12px;
  border: 1px solid var(--mc-border,#dfe4e9);
  border-radius: 18px;
  background: var(--mc-card-bg,#fff);
}
.admin-workspace-header .admin-exit {
  flex: 0 0 auto;
  min-width: 108px;
  white-space: nowrap;
}
.admin-workspace-title { min-width: 0; flex: 1 1 auto; }
.admin-workspace-eyebrow,
.admin-section-heading small {
  display: block;
  color: var(--mc-muted,#66738b);
  font-weight: 800;
  font-size: 10px;
  letter-spacing: .09em;
}
.admin-workspace-title h1 {
  margin: 4px 0 2px;
  line-height: 1.17;
  font-size: clamp(22px,3.7vw,30px);
  overflow-wrap: normal;
  word-break: normal;
}
.admin-workspace-title p { margin: 0; line-height: 1.4; font-size: 12px; }
.admin-workspace-header > .admin-center-alert-pill { flex: 0 0 auto; }
.admin-section-bar {
  display: grid;
  grid-template-columns: auto minmax(0,1fr);
  align-items: center;
  gap: 14px;
  padding: 13px 16px;
  margin-bottom: 12px;
}
.admin-section-bar[hidden],
.admin-section[hidden],
.admin-control-hub[hidden] { display: none !important; }
.admin-section-back {
  flex: 0 0 auto;
  min-width: 112px;
  white-space: nowrap;
}
.admin-section-heading { min-width: 0; }
.admin-section-heading h2 {
  margin: 3px 0 0;
  line-height: 1.2;
  font-size: clamp(17px,3.7vw,23px);
  white-space: normal;
  overflow-wrap: normal;
  word-break: normal;
}
body.flat-theme.mc-admin-workspace .admin-section,
body.flat-theme.mc-admin-workspace .admin-control-hub { overflow: visible; }
body.flat-theme.mc-admin-workspace .admin-section .tablewrap {
  width: 100%; max-width: 100%; min-width: 0; overflow-x: auto;
}
body.flat-theme.mc-admin-workspace .admin-section :is(h1,h2,h3,b,strong,small,p) {
  word-break: normal;
  overflow-wrap: break-word;
}
body.flat-theme.mc-admin-workspace .admin-section :is(.card,article,section,form,fieldset,div) { min-width: 0; }
body.flat-theme.mc-admin-workspace .admin-section :is(.grid2,.admin-pro-grid) { min-width: 0; }
body.flat-theme.mc-admin-workspace .admin-section :is(button,.btn,select) { white-space: normal; }
body.flat-theme.mc-admin-workspace .admin-section :is(input,textarea,select) { box-sizing: border-box; }
.admin-login-settings { min-width: 0; }
.admin-login-setting-list { display: grid; gap: 0; }
.admin-login-setting {
  display: grid;
  grid-template-columns: minmax(0,1fr) 106px;
  align-items: center;
  gap: 16px;
  padding: 15px 0;
  border-bottom: 1px solid var(--mc-border,#dfe4e9);
}
.admin-login-setting:last-child { border-bottom: 0; }
.admin-login-setting-main { display: flex; align-items: center; gap: 12px; min-width: 0; }
.admin-login-icon { display: grid; place-items: center; flex: 0 0 34px; width: 34px; }
.admin-login-icon svg { width: 24px; height: 24px; }
.admin-login-copy { display: grid; gap: 4px; min-width: 0; }
.admin-login-copy strong { font-size: 14px; line-height: 1.3; }
.admin-login-copy small { font-size: 12px; line-height: 1.35; color: var(--mc-muted,#66738b); }
.admin-login-setting > .btn { width: 106px; min-width: 0; padding: 9px 7px; line-height: 1.25; }
.admin-login-note {
  padding: 14px 16px;
  margin-top: 15px;
  border: 1px solid var(--mc-border,#dfe4e9);
  border-radius: 12px;
  background: var(--mc-page-bg,#f7f9fc);
}
.admin-login-note p { margin: 6px 0 0; font-size: 13px; line-height: 1.5; }
@media (max-width:600px) {
  body.flat-theme.mc-admin-workspace main#app { width: calc(100% - 20px) !important; margin: 10px auto 28px !important; }
  .admin-workspace-header { padding: 14px; gap: 10px; flex-wrap: wrap; }
  .admin-workspace-header .admin-exit { min-width: auto; min-height: 40px; }
  .admin-workspace-title { flex-basis: calc(100% - 135px); }
  .admin-workspace-header > .admin-center-alert-pill { margin-left: 0; }
  .admin-section-bar { grid-template-columns: minmax(0,1fr); gap: 7px; padding: 12px 14px; }
  .admin-section-back { justify-self: start; min-height: 40px; }
  .admin-login-setting { grid-template-columns: minmax(0,1fr) 90px; gap: 10px; }
  .admin-login-setting > .btn { width: 90px; }
  .admin-login-icon { flex-basis: 26px; width: 26px; }
  .admin-login-icon svg { width: 21px; height: 21px; }
  .admin-login-copy strong { font-size: 13px; }
  .admin-login-copy small { font-size: 11.5px; }
}
@media (max-width:360px) {
  .admin-login-setting { grid-template-columns: minmax(0,1fr); gap: 9px; }
  .admin-login-setting > .btn { width: 100%; }
}

.adminrow {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 10px;
}


.admin-control-hub {
  position: relative;
  top: auto;
}


.admin-overview-grid {
  display: grid;
  grid-template-columns: repeat(3,minmax(0,1fr));
  gap: 8px;
}


.admin-stat b {
  font-size: 22px;
}


.admin-pager,
.admin-page-search {display:flex;gap:8px;align-items:center;min-width:0;}
.admin-page-clear[hidden] {display:none;}
.admin-page-tools {
  display: flex;
  gap: 8px;
  align-items: center;
  justify-content: space-between;
  flex-wrap: wrap;
}


.admin-post-preview {
  overflow: hidden;
}


.admin-report-card,
.admin-vote-card,
.record-user-card {
  padding: 11px;
}
.record-user-card .record-user-head { display:flex; align-items:flex-start; justify-content:space-between; gap:12px; min-width:0; }
.record-user-card .record-user-head > div { display:grid; gap:4px; min-width:0; }
.record-user-card .record-user-head small { color:var(--mc-muted,#667085); overflow-wrap:anywhere; }
.record-user-card .record-actions { display:flex; flex-wrap:wrap; gap:8px; }

/* Admin Center owns its navigation in a single stable workspace. Opening a
   section must not remove the dashboard or change the document scroll height. */
body.flat-theme.mc-admin-workspace main#app > .admin-section-view {
  position:fixed; inset:0; width:100vw; max-width:none !important;
  height:100vh; height:100dvh; padding:calc(12px + env(safe-area-inset-top, 0px)) clamp(12px,3vw,24px) calc(24px + env(safe-area-inset-bottom, 0px));
  z-index:2147480000; overflow-y:auto; overflow-x:hidden;
  overscroll-behavior:contain; -webkit-overflow-scrolling:touch;
  background:var(--mc-page-bg,#f5f7fa); box-sizing:border-box;
  scrollbar-gutter:stable; overflow-anchor:none;
}
body.flat-theme.mc-admin-workspace main#app > .admin-section-view[hidden] {display:none !important;}
.admin-section-view > .admin-section,.admin-section-view > .admin-section-bar {width:100%;max-width:1100px;margin-left:auto;margin-right:auto;}
.admin-section-view > .admin-section-bar {position:sticky;top:0;z-index:2;background:var(--mc-card-bg,#fff);}
/* User dossier: desktop side sheet over the unchanged user list; mobile fullscreen.
   The original list and filters stay mounted at the exact saved scroll offset. */
body.flat-theme.mc-admin-workspace .admin-record-detail:not([hidden]) {
  position:fixed; inset:0 0 0 auto; width:min(780px,calc(100vw - 64px));
  height:100vh; height:100dvh; max-width:none !important; max-height:none;
  z-index:2147481000; display:block; overflow-y:auto; overflow-x:hidden;
  overscroll-behavior:contain; -webkit-overflow-scrolling:touch; overflow-anchor:none;
  padding:calc(12px + env(safe-area-inset-top,0px)) clamp(12px,2.5vw,22px) calc(24px + env(safe-area-inset-bottom,0px));
  background:var(--mc-page-bg,#f5f7fa); border:0;
  border-left:1px solid var(--mc-border,#dfe4e9);
  box-shadow:-100vw 0 0 100vw rgba(11,25,35,.30), -12px 0 32px rgba(11,25,35,.13);
  box-sizing:border-box;
}
.admin-record-detail > .admin-record-summary,.admin-record-detail > .dossier-tabs,.admin-record-detail > .dossier-content { max-width:1050px; margin:0 auto 12px; }
.admin-record-detail > .admin-record-summary {
  position:sticky; top:0; z-index:4; padding:10px;
  background:var(--mc-card-bg,#fff); border:1px solid var(--mc-border,#dfe4e9); border-radius:12px;
}
.admin-record-detail > .dossier-content { background:var(--mc-card-bg,#fff); padding:clamp(10px,2vw,18px); border:1px solid var(--mc-border,#dfe4e9); border-radius:12px; }
.admin-record-detail > .dossier-content[hidden] {display:none;}
.admin-record-detail > .dossier-loading { max-width:1050px; margin:0 auto 12px; min-height:72px; padding:20px; border:1px solid var(--mc-border,#dfe4e9); border-radius:12px; background:var(--mc-card-bg,#fff); box-sizing:border-box; }
.admin-record-detail > .dossier-loading[hidden] {display:none;}
.dossier-content [data-dossier-more][disabled] { opacity:.6; cursor:progress; }
/* Prevent the website and the user directory from moving behind a modal sheet. */
body.flat-theme.mc-admin-workspace:has(.admin-record-detail:not([hidden])) {overflow:hidden !important;}
@media(max-width:680px) {
  body.flat-theme.mc-admin-workspace .admin-record-detail:not([hidden]) { width:100vw; border-left:0; box-shadow:none; }
}

/* User Records: canonical responsive all-in-one dossier layout. */
.admin-records-head .section-row { flex-wrap:wrap; align-items:flex-start; }
.admin-records-head .section-row > div:first-child { flex:1 1 220px; min-width:0; }
.admin-records-head .settings-status-chip { flex:0 0 auto; white-space:nowrap; }
.admin-records-list,.admin-record-detail,.dossier-content,.dossier-profile,.dossier-record-row { min-width:0; max-width:100%; }
.record-user-name { padding:0; border:0; background:none; color:inherit; font:inherit; font-weight:750; text-align:start; cursor:pointer; overflow-wrap:anywhere; }
.record-user-name:focus-visible { outline:2px solid var(--mc-primary,#00f2ff); outline-offset:3px; border-radius:3px; }
.dossier-tabs { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:7px; width:100%; }
.dossier-tabs .btn { display:flex; align-items:center; justify-content:center; min-width:0; min-height:42px; padding:8px 5px; text-align:center; white-space:normal; line-height:1.3; font-size:12px; overflow-wrap:anywhere; }
.dossier-content { display:grid; gap:10px; }
.dossier-counters { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:8px; }
.dossier-counters > div { border:1px solid var(--mc-border,#dfe4e9); border-radius:12px; padding:10px 7px; display:grid; gap:5px; text-align:center; min-width:0; }
.dossier-counters b { font-size:18px; font-variant-numeric:tabular-nums; }
.dossier-counters small { font-size:11px; overflow-wrap:anywhere; }
.dossier-facts { display:grid; gap:5px; min-width:0; }
.dossier-facts p { margin:0; line-height:1.5; overflow-wrap:anywhere; }
.dossier-verification-control { display:flex; gap:9px; flex-wrap:wrap; align-items:center; border-top:1px solid var(--mc-border,#dfe4e9); padding-top:10px; }
.dossier-verification-control small { flex:1 1 180px; line-height:1.5; }
.dossier-record-count,.dossier-record-top { display:flex; flex-wrap:wrap; justify-content:space-between; align-items:flex-start; gap:6px 12px; }
.dossier-record-count span,.dossier-record-top time,.dossier-record-id { font-size:11px; color:var(--mc-muted,#667085); }
.dossier-record-row { border:1px solid var(--mc-border,#dfe4e9); border-radius:12px; padding:11px; display:grid; gap:7px; overflow:hidden; }
.dossier-record-row > small { overflow-wrap:anywhere; line-height:1.45; }
.dossier-media-actions { display:flex; flex-wrap:wrap; gap:6px; }
.dossier-media-actions .btn { white-space:normal; overflow-wrap:anywhere; max-width:100%; }
.dossier-record-fields { min-width:0; margin:2px 0; border:1px solid var(--mc-border,#dfe4e9); border-radius:10px; padding:10px; background:var(--mc-surface,#f7f9fb); }
.dossier-record-fields>summary { cursor:pointer; font-weight:650; padding:3px 0; }
.dossier-record-fields>b { display:block; margin-bottom:9px; }
.dossier-fact-grid { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:8px 12px; margin:0; }
.dossier-fact-grid>div { min-width:0; border-bottom:1px solid var(--mc-border,#dfe4e9); padding:5px 0 8px; }
.dossier-fact-grid dt { font-size:11px; font-weight:650; color:var(--mc-muted,#667085); margin-bottom:3px; }
.dossier-fact-grid dd { margin:0; line-height:1.45; overflow-wrap:anywhere; white-space:pre-wrap; }
.dossier-content[aria-busy="true"] { opacity:.88; }
@media(max-width:480px) { .dossier-fact-grid { grid-template-columns:minmax(0,1fr); } }
@media(max-width:480px){ .dossier-tabs {grid-template-columns:repeat(2,minmax(0,1fr));} .dossier-counters {grid-template-columns:repeat(2,minmax(0,1fr));} .record-user-card .record-actions .btn {flex:1 1 125px;} }

/* User Records: expanded investigation keeps security controls and evidence together. */
.admin-record-security { min-width:0; padding:12px; margin:12px 0; border:1px solid var(--mc-border,#dfe4e9); border-radius:12px; display:grid; gap:8px; }
.admin-record-security .section-row { min-width:0; }
.admin-record-security .section-row small { display:block; white-space:normal; overflow-wrap:break-word; }
.admin-record-security [data-record-security-actions] { display:flex; flex-wrap:wrap; gap:8px; min-width:0; }
.admin-record-activity { min-width:0; }
.admin-record-activity>summary { cursor:pointer; font-weight:600; padding:12px 0; }
.admin-records-list { display:grid; gap:12px; min-width:0; }
.admin-record-detail { display:grid; min-width:0; gap:9px; border-top:1px solid var(--mc-border,#dfe4e9); padding-top:10px; }
.admin-record-detail[hidden] { display:none; }
.admin-record-summary { display:flex; flex-wrap:wrap; align-items:center; justify-content:space-between; gap:10px; }
.admin-record-event { display:flex; justify-content:space-between; gap:12px; border-bottom:1px solid var(--mc-border,#e7ebef); padding:9px 0; min-width:0; }
.admin-record-event > span { display:grid; gap:4px; min-width:0; overflow-wrap:anywhere; }
.admin-record-event small { color:var(--mc-muted,#667085); }
.admin-record-event time { flex:0 0 auto; color:var(--mc-muted,#667085); font-size:11px; }
@media (max-width:430px) { .admin-record-event { flex-direction:column; gap:4px; } .record-user-card .record-user-head { flex-wrap:wrap; } }
.admin-profile-disclosure { min-width:0; border:1px solid var(--mc-border,#dfe4e9); border-radius:14px; margin-top:16px; }
.admin-profile-disclosure > summary { display:flex; align-items:center; gap:9px; padding:14px; cursor:pointer; font-weight:750; }
.admin-profile-disclosure > summary > span { flex:1; }
.admin-profile-disclosure > .admin-full-control-v97 { border:0; box-shadow:none; }



.admin-vote-overview,
.admin-vote-arena,
.admin-vote-adjust-grid {
  display: grid;
  grid-template-columns: repeat(2,minmax(0,1fr));
  gap: 8px;
}


.admin-vote-actions {
  display: flex;
  gap: 7px;
  flex-wrap: wrap;
}


.adminnav {
  display: grid !important;
  grid-template-columns: repeat(4,minmax(0,1fr)) !important;
  gap: 8px !important;
  padding: 6px 0 !important;
  overflow: visible !important;
}


.admin-nav-tile .mc-outline-icon {
  width: 38px;
  height: 38px;
}


.admin-nav-tile span {
  font-size: 9px;
  line-height: 1.1;
  text-align: center;
  overflow-wrap: anywhere;
}


.admin-nav-tile.primary span {
  color: var(--mc-active);
}


.admin-page-search input {
  margin: 0;
  min-width:0; flex:1;
}


.admin-page-status {
  display: flex;
  align-items: center;
  gap: 6px;
  flex-wrap: wrap;
}


/* Admin tool finder belongs to the canonical Admin Control Hub. */
.admin-hub-search { display:grid; gap:7px; margin:0 0 14px; min-width:0; }
.admin-hub-search > label { font-weight:750; font-size:13px; }
.admin-hub-search-row { display:flex; gap:8px; align-items:center; min-width:0; }
.admin-hub-search-row > input { width:100%; min-width:0; flex:1; min-height:44px; padding:10px 14px; border:1px solid var(--mc-border,#dfe4e9); border-radius:12px; background:var(--mc-card-bg,#fff); color:inherit; font:inherit; font-size:14px; }
.admin-hub-search-row > input:focus-visible { outline:2px solid var(--mc-primary,#00f2ff); outline-offset:2px; }
.admin-hub-search-row > button {min-height:42px; flex:0 0 auto; }
.admin-hub-search > small { color:var(--mc-muted,#667085); font-size:11px; min-height:16px; }
.admin-nav-group[hidden],.admin-nav-tile[hidden],#adminNavSearchClear[hidden] { display:none !important; }
.admin-nav-group {
  padding: 8px 0;
  border-top: 1px solid rgba(90,120,150,.10);
}


.admin-nav-group:first-child {
  border-top: 0;
}


.admin-nav-group > summary {
  display:flex; align-items:center; gap:9px; width:100%; padding:11px 5px;
  cursor:pointer; list-style:none; font-size:13px; font-weight:750;
  color:var(--mc-text,#19232c); border-radius:8px;
}
.admin-nav-group > summary::-webkit-details-marker {display:none;}
.admin-nav-group > summary:focus-visible { outline:2px solid var(--mc-primary,#00f2ff); outline-offset:2px; }
.admin-nav-group > summary small { margin-left:auto; font-size:11px; font-weight:500; color:var(--mc-muted,#667085); }
.admin-nav-group > summary :is(svg,.mc-outline-icon) { width:17px !important; height:17px !important; transform:rotate(90deg); transition:transform .15s ease; }
.admin-nav-group[open] > summary :is(svg,.mc-outline-icon) {transform:rotate(-90deg);}
.admin-nav-group:not([open]) > summary { color:var(--mc-text,#19232c); }
.admin-nav-group-grid { margin:2px 0 10px; }


.admin-nav-group-grid {
  display: grid;
  grid-template-columns: repeat(5,minmax(0,1fr));
  gap: 7px;
}


.feature-controls-card,
.feature-control-list,
.feature-control-row {
  width: 100%;
  max-width: 100%;
  min-width: 0;
  box-sizing: border-box;
}


.feature-control-list {
  display: grid;
  gap: 7px;
}


.feature-control-row b {
  overflow-wrap: anywhere;
}


.feature-control-row .btn {
  min-width: 96px;
  white-space: nowrap;
}


@media (max-width:380px) {
  .feature-control-row {
  grid-template-columns: minmax(0,1fr) 92px;
}

  .feature-control-row .btn {
  width: 92px;
  font-size: 11px;
}
}


.feature-control-row>span {
  display: flex !important;
  flex-direction: column !important;
  align-items: flex-start !important;
  gap: 2px !important;
  min-width: 0 !important;
}


.feature-control-row>span>b,
.feature-control-row>span>small {
  grid-column: auto !important;
  width: auto !important;
  max-width: 100% !important;
}


.admin-nav-group-grid .admin-nav-tile {
  min-height: 76px !important;
  display: grid !important;
  place-items: center !important;
  align-content: center !important;
  gap: 4px !important;
}


.admin-nav-group-grid .admin-nav-tile span {
  font-size: 10px !important;
  line-height: 1.15 !important;
}


.feature-control-groups {
  display: grid;
  grid-template-columns: repeat(2,minmax(0,1fr));
  gap: 10px;
}


.feature-control-group {
  min-width: 0;
  padding: 10px;
  border: 1px solid #dfe4e9;
  border-radius: 12px;
  background: #ffffff;
}


.video-policy-actions { display: flex; flex-wrap: wrap; align-items: flex-end; gap: 10px; }
.video-policy-actions > button { flex: 1; min-width: 150px; }
.feature-control-group h3 {
  margin: 0 0 8px;
  font-size: 13px;
}


.feature-control-row {
  display: grid !important;
  grid-template-columns: minmax(0,1fr) auto;
  align-items: center;
  gap: 8px;
  min-height: 62px !important;
  padding: 8px !important;
  border-radius: 12px !important;
  background: #ffffff;
}


.feature-control-row>span small {
  font-size: 10px;
}


.admin-section {
  margin-top: 10px;
}


.admin-control-hub,
.admin-section {
  width: 100%;
  overflow: hidden;
  font-size: clamp(13px,calc(14px * var(--mc-font,1)),16px);
}


.admin-alert-badge,
.admin-nav-badge,
.admin-stat-badge {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-width: 20px;
  height: 20px;
  padding: 0 6px;
  border-radius: 999px;
  background: #ff4d88;
  color: #000000;
  font-size: 10px;
  font-weight: 900;
  line-height: 1;
  box-shadow: none;
}


.admin-nav-tile {
  min-width: 0;
  border: 0;
  background: transparent;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  gap: 4px;
  padding: 7px 2px;
  color: var(--mc-text);
  font-weight: 900;
  position: relative;
}


.admin-nav-badge {
  position: absolute;
  right: 5px;
  top: 5px;
}


.admin-stat {
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  gap: 4px;
  min-height: 92px;
  border: 0;
  position: relative;
}


.admin-stat-badge {
  position: absolute;
  right: 7px;
  top: 7px;
  font-style: normal;
}


.admin-stat.has-alert {
  outline: 2px solid rgba(255,77,136,.28);
}


.admin-center-alert-pill {
  display: inline-flex;
  padding: 6px 10px;
  border-radius: 12px;
  background: #ffe1ee;
  color: #000000;
  font-weight: 900;
  font-size: 12px;
}


.admin-alert-banner {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
  border: 1px solid rgba(255,77,136,.24) !important;
}


.admin-alert-banner>div:first-child {
  display: flex;
  align-items: center;
  gap: 9px;
  min-width: 0;
}


.admin-alert-banner>div:first-child svg {
  width: 34px !important;
  height: 34px !important;
}


.admin-alert-banner>div:first-child span {
  display: grid;
  gap: 2px;
}


.admin-alert-banner>div:last-child {
  display: flex;
  gap: 6px;
  flex-wrap: wrap;
}


@media (max-width:560px) {
  .admin-alert-banner {
  align-items: stretch;
  flex-direction: column;
}

  .admin-alert-banner>div:last-child {
  display: grid;
  grid-template-columns: 1fr 1fr;
}
}


#adminHomeNotice textarea[name="text"],
#adminPost textarea[name="text"],
.admin-profile-tools textarea,
.admin-report-card textarea {
  resize: none !important;
}


.admin-pager-btn {
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  gap: 6px !important;
}


.admin-pager-icon {
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  width: 22px !important;
  height: 22px !important;
  flex: 0 0 22px !important;
}


.admin-pager-icon svg {
  width: 22px !important;
  height: 22px !important;
}


.admin-pager-icon-prev {
  transform: rotate(180deg) !important;
}


.verification-policy-card {
  overflow: hidden;
}


.verification-policy-grid {
  display: grid;
  grid-template-columns: repeat(2,minmax(0,1fr));
  gap: 8px;
  margin: 12px 0;
}


.verification-policy-row {
  display: grid;
  grid-template-columns: 38px minmax(0,1fr) auto;
  align-items: center;
  gap: 8px;
  padding: 10px;
  border: 1px solid rgba(90,120,150,.12);
  border-radius: 12px;
  min-width: 0;
}


.verification-policy-row>span:nth-child(2) {
  display: grid;
  gap: 2px;
  min-width: 0;
}


.verification-policy-row small {
  overflow-wrap: anywhere;
}


.verification-policy-row input {
  width: auto !important;
  min-height: auto !important;
  margin: 0 !important;
}


.verification-policy-icon svg {
  width: 30px !important;
  height: 30px !important;
}


.verification-policy-after {
  display: grid;
  gap: 7px;
  margin: 10px 0;
}


.verification-policy-after label {
  display: flex;
  align-items: center;
  gap: 8px;
}


.verification-policy-after input {
  width: auto !important;
  min-height: auto !important;
  margin: 0 !important;
}


.verification-policy-note {
  margin: 8px 0 12px;
}


.admin-vote-count-setting {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
  margin: 10px 0;
  padding: 11px 12px;
  border-radius: 12px;
  background: #ffffff;
  border: 1px solid #dfe4e9;
}


.admin-vote-count-setting>span {
  display: flex;
  align-items: center;
  gap: 9px;
  min-width: 0;
}


.admin-vote-count-setting>span>span {
  display: grid;
  gap: 2px;
}


.admin-vote-count-setting small {
  color: var(--mc-muted);
}


.admin-vote-avatar {
  width: 54px;
  height: 54px;
  min-width: 54px;
  max-width: 54px;
  border-radius: 50%;
  object-fit: cover;
  overflow: hidden;
}


.admin-vote-arena>span {
  display: flex;
  flex-direction: column;
  align-items: center;
  min-width: 0;
  text-align: center;
}


.admin-vote-arena>span b,
.admin-vote-arena>span small,
.admin-vote-arena>span em {
  max-width: 100%;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}


.admin-professional-hub {
  position: relative;
}


.admin-professional-hub .adminnav {
  display: grid;
  gap: 12px;
}


.admin-pro-grid {
  display: grid;
  grid-template-columns: repeat(2,minmax(0,1fr));
  gap: 12px;
}


.admin-pro-item {
  display: grid;
  gap: 10px;
}


.admin-inline-actions {
  display: flex;
  flex-wrap: wrap;
  gap: 7px;
  align-items: center;
}


.admin-pro-form {
  display: grid;
  gap: 10px;
  margin-top: 12px;
}


.admin-pro-form.grid2,
.admin-audit-grid {
  display: grid;
  grid-template-columns: repeat(2,minmax(0,1fr));
  gap: 10px;
}


.admin-audit-grid pre {
  margin: 0;
  white-space: pre-wrap;
  overflow: auto;
  max-height: 320px;
  padding: 12px;
  border-radius: 12px;
  background: rgba(25,39,70,.06);
  font-size: 11px;
}


.admin-health-grid,
.admin-metric-grid {
  display: grid;
  grid-template-columns: repeat(4,minmax(0,1fr));
  gap: 10px;
}


.admin-health-card,
.admin-metric-grid>div {
  display: grid;
  gap: 4px;
  min-height: 88px;
  padding: 13px;
  border-radius: 12px;
  border: 1px solid rgba(85,113,155,.16);
  background: #ffffff;
}


.admin-health-card>b,
.admin-metric-grid b {
  font-size: 17px;
}


.admin-health-card span,
.admin-metric-grid span {
  font-size: 12px;
  font-weight: 800;
  color: var(--mc-muted);
}


.admin-health-card.health-ok {
  box-shadow: none;
}


.admin-health-card.health-warn {
  box-shadow: none;
}


.admin-search-pro {
  display: grid;
  grid-template-columns: minmax(0,1fr) auto;
  gap: 9px;
}


.afc-session-summary {
  display: grid;
  gap: 9px;
  margin-bottom: 12px;
}


.admin-professional-hub .admin-nav-group-grid {
  grid-template-columns: repeat(auto-fit,minmax(128px,1fr));
}


.admin-pro-item textarea {
  min-height: 84px;
}


.admin-pro-item small {
  display: block;
  color: var(--mc-muted);
  margin-top: 3px;
}


.admin-pro-item .settings-status-chip {
  text-transform: capitalize;
}


.admin-report-card details {
  margin: 10px 0;
}


.admin-report-card summary {
  cursor: pointer;
  font-weight: 850;
}


.admin-page-tools {
  display: grid;
  grid-template-columns: minmax(0,1fr) auto;
  align-items: center;
  gap: 8px;
  flex-wrap: wrap;
}


.adminrow>span small {
  display: block;
  color: var(--mc-muted);
  margin-top: 3px;
}


/* Admin Center · canonical traffic + activity notification presentation */
.admin-traffic-kpis .admin-stat {
  display: grid;
  gap: 3px;
}


.admin-traffic-kpis .admin-stat small {
  font-size: 11px;
  color: var(--mc-muted);
  font-weight: 750;
}


.admin-traffic-change {
  display: inline-flex;
  align-items: center;
  width: max-content;
  margin-top: 3px;
  padding: 2px 7px;
  border-radius: 999px;
  font-size: 11px;
  font-weight: 850;
  background: rgba(25,39,70,.06);
  color: var(--mc-muted);
}


.admin-traffic-change.is-up {
  color: #000000;
  background: rgba(8,127,91,.08);
}


.admin-traffic-change.is-down {
  color: #000000;
  background: rgba(180,35,24,.08);
}


.admin-traffic-sparkline {
  display: block;
  width: 100%;
  height: auto;
  max-height: 150px;
  margin-top: 10px;
  color: var(--mc-button,#1683ff);
  overflow: visible;
}


.admin-traffic-rank {
  display: grid;
  gap: 6px;
  padding: 8px 0;
  border-bottom: 1px solid rgba(85,113,155,.12);
}


.admin-traffic-rank:last-child {
  border-bottom: 0;
}


.admin-traffic-rank>div:first-child {
  display: flex;
  justify-content: space-between;
  align-items: center;
  gap: 12px;
  min-width: 0;
}


.admin-traffic-rank b {
  min-width: 0;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
  font-size: 13px;
}


.admin-traffic-rank span {
  flex: 0 0 auto;
  font-size: 12px;
  font-weight: 850;
  color: var(--mc-muted);
}


.admin-traffic-meter {
  height: 7px;
  border-radius: 999px;
  background: rgba(85,113,155,.10);
  overflow: hidden;
}


.admin-traffic-meter i {
  display: block;
  height: 100%;
  border-radius: inherit;
  background: var(--mc-button,#1683ff);
}


.admin-notification-toolbar {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
  align-items: end;
  margin-top: 12px;
}


.admin-notification-toolbar label {
  display: grid;
  gap: 4px;
  min-width: 145px;
  font-size: 11px;
  font-weight: 850;
  color: var(--mc-muted);
}


.admin-notification-toolbar select {
  min-height: 38px;
}


.admin-notification-feed {
  display: grid;
  gap: 10px;
  margin: 10px 0;
  min-width: 0;
}


.admin-notification-item {
  display: grid;
  grid-template-columns: minmax(0,1fr) minmax(120px,auto);
  align-items: center;
  gap: 12px;
  margin: 0;
  min-width: 0;
  max-width: 100%;
  box-sizing: border-box;
}


.admin-notification-item.is-new {
  border-color: var(--mc-button,#1683ff);
}


.admin-notification-item.is-read {
  opacity: .82;
}


.admin-notification-main {
  display: grid;
  grid-template-columns: 40px minmax(0,1fr);
  gap: 10px;
  align-items: start;
}


.admin-notification-icon {
  display: grid;
  place-items: center;
  width: 40px;
  height: 40px;
  border-radius: 12px;
  background: rgba(85,113,155,.08);
  color: var(--mc-button,#1683ff);
}


.admin-notification-icon svg {
  width: 21px;
  height: 21px;
}


.admin-notification-title {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 7px;
}


.admin-notification-main p {
  margin: 4px 0 3px;
  font-size: 13px;
}


.admin-notification-main small {
  color: var(--mc-muted);
}


.admin-notification-new {
  display: inline-flex;
  padding: 2px 7px;
  border-radius: 999px;
  background: #e5484d;
  color: #000000;
  font-size: 10px;
  font-weight: 900;
  letter-spacing: .04em;
}


/* Admin notifications: content and actions each retain a readable column. */
.admin-notification-main,
.admin-notification-main>div:last-child {
  min-width: 0;
  max-width: 100%;
}


.admin-notification-main p,
.admin-notification-main small,
.admin-notification-title {
  overflow-wrap: break-word;
  word-break: normal;
  white-space: normal;
  line-height: 1.45;
}


.admin-notification-title>b {
  font-size: 14px;
  line-height: 1.3;
  min-width: 0;
}


.admin-notification-item>.admin-inline-actions {
  display: flex;
  flex-wrap: wrap;
  gap: 6px;
  justify-content: flex-end;
  align-items: center;
  max-width: 100%;
  min-width: 0;
}


.admin-notification-item>.admin-inline-actions>.btn {
  flex: 0 1 auto;
  min-height: 38px;
  padding: 7px 10px;
  white-space: normal;
  line-height: 1.15;
  font-size: 12px;
}


@media(max-width:720px) {
  .admin-notification-item {
  grid-template-columns: minmax(0,1fr);
  gap: 11px;
}

  .admin-notification-item>.admin-inline-actions {
  width: 100%;
  justify-content: flex-start;
}

  .admin-notification-item>.admin-inline-actions>.btn {
  flex: 1 1 96px;
}

  .admin-notification-toolbar label {
  flex: 1 1 130px;
  min-width: 0;
}

  .admin-notification-main {
  grid-template-columns: 38px minmax(0,1fr);
  gap: 9px;
}
}


.core-auth-brand {
  text-align: center;
  margin: 0 0 10px;
}


.core-auth-brand .mc-site-name {
  display: inline-block;
  font-size: var(--mc-brand-font-size,30px);
  line-height: 1.05;
}


@media (max-width:720px) {
  .admin-pro-grid,
  .admin-pro-form.grid2,
  .admin-audit-grid {
  grid-template-columns: 1fr;
}

  .admin-health-grid,
  .admin-metric-grid {
  grid-template-columns: repeat(2,minmax(0,1fr));
}

  .admin-search-pro {
  grid-template-columns: 1fr;
}

  .admin-inline-actions>.btn,
  .admin-inline-actions>button {
  flex: 1 1 135px;
}

  .admin-professional-hub .admin-nav-group-grid {
  grid-template-columns: repeat(2,minmax(0,1fr));
}
}


@media (max-width:390px) {
  .admin-nav-group-grid {
  grid-template-columns: repeat(3,minmax(0,1fr));
}

  .admin-health-grid,
  .admin-metric-grid {
  grid-template-columns: 1fr;
}

  .admin-professional-hub .admin-nav-group-grid {
  grid-template-columns: 1fr 1fr;
}
}


body.flat-theme .admin-stat svg.mc-outline-icon {
  width: 38px !important;
  height: 38px !important;
}


body.flat-theme .admin-control-hub {
  position: relative !important;
  top: auto !important;
  padding: 12px !important;
}


body.flat-theme .adminnav .btn {
  white-space: normal !important;
}


body.flat-theme .admin-overview-grid {
  grid-template-columns: repeat(3,minmax(0,1fr)) !important;
  gap: 8px !important;
}


body.flat-theme .admin-stat {
  position: relative !important;
  min-height: 112px !important;
  padding: 8px !important;
  border: 1.5px solid #dfe4e9 !important;
  border-radius: 12px !important;
  background: #ffffff !important;
  box-shadow: none !important;
  color: #000000 !important;
}


body.flat-theme .admin-stat b {
  font-size: 21px !important;
}


.admin-stat span {
  font-size: 10px !important;
  font-weight: 900 !important;
  text-align: center !important;
}


body.flat-theme .admin-section {
  padding: 12px !important;
}


body.flat-theme .admin-vote-overview {
  display: grid !important;
  grid-template-columns: repeat(4,minmax(0,1fr)) !important;
  gap: 6px !important;
}


.admin-vote-overview>span,
.admin-vote-live-counts>span {
  padding: 8px 4px !important;
  border: 1.5px solid #dfe4e9 !important;
  border-radius: 12px !important;
  background: #ffffff !important;
  box-shadow: none !important;
  text-align: center !important;
}


.admin-vote-arena {
  grid-template-columns: 1fr 52px 1fr !important;
  align-items: center !important;
}


.admin-vote-arena>strong {
  justify-self: center !important;
  align-self: center !important;
  width: 48px !important;
  height: 48px !important;
  display: grid !important;
  place-items: center !important;
  border-radius: 50% !important;
  color: #000000 !important;
  background: #ffffff !important;
  border: 2px solid #dfe4e9 !important;
  box-shadow: none !important;
}


body.flat-theme .admin-vote-actions .btn>svg.mc-outline-icon,
body.flat-theme .admin-vote-adjust-box .btn>svg.mc-outline-icon {
  width: 25px !important;
  height: 25px !important;
}


body.flat-theme .admin-nav-tile {
  background: transparent !important;
  border: 0 !important;
  box-shadow: none !important;
  border-radius: 0 !important;
}


body.flat-theme .admin-nav-tile .mc-outline-icon {
  width: 40px !important;
  height: 40px !important;
}


body.flat-theme .admin-nav-group-grid .admin-nav-tile.primary {
  background: #ffffff !important;
  border-color: #dfe4e9 !important;
}


body.flat-theme .adminnav {
  gap: 7px !important;
  display: block !important;
  grid-template-columns: none !important;
  overflow: visible !important;
  padding: 6px 0 !important;
}


body.flat-theme .admin-nav-group {
  display: block !important;
  width: 100% !important;
  min-width: 0 !important;
  margin: 0 0 10px !important;
}


body.flat-theme .admin-nav-group-grid {
  display: grid !important;
  grid-template-columns: repeat(5,minmax(0,1fr)) !important;
  gap: 7px !important;
  width: 100% !important;
}


body.flat-theme .admin-nav-group-grid .admin-nav-tile {
  background: #ffffff !important;
  border: 1px solid #dfe4e9 !important;
  border-radius: 12px !important;
  box-shadow: none !important;
  min-width: 0 !important;
  width: 100% !important;
  overflow: hidden !important;
  padding: 7px 2px !important;
}


body.flat-theme .admin-nav-group-grid .admin-nav-tile span {
  word-break: normal !important;
  overflow-wrap: normal !important;
  hyphens: none !important;
  white-space: normal !important;
  line-height: 1.08 !important;
  text-align: center !important;
}


@media (max-width:700px) {
  .admin-vote-overview,
  .admin-vote-arena,
  .admin-vote-adjust-grid {
  grid-template-columns: 1fr;
}

  .admin-overview-grid {
  grid-template-columns: repeat(2,minmax(0,1fr));
}

  .admin-control-hub {
  position: relative;
  top: auto;
}

  .adminnav {
  grid-template-columns: repeat(4,minmax(0,1fr)) !important;
}

  .admin-page-tools {
  grid-template-columns: 1fr;
}

  .feature-control-row {
  grid-template-columns: minmax(0,1fr) 104px;
}

  .feature-control-row .btn {
  width: 104px;
  min-width: 0;
  padding-left: 8px;
  padding-right: 8px;
}

  .feature-control-groups {
  grid-template-columns: 1fr;
}

  .admin-nav-group-grid {
  grid-template-columns: repeat(3,minmax(0,1fr)) !important;
}

  .verification-policy-grid {
  grid-template-columns: 1fr;
}

  .admin-pager {
  display: grid !important;
  grid-template-columns: 1fr 1fr !important;
  gap: 8px !important;
  align-items: center !important;
}

  .admin-pager-info {
  grid-column: 1/-1 !important;
  grid-row: 1 !important;
  text-align: center !important;
}

  .admin-pager-prev {
  grid-column: 1 !important;
  grid-row: 2 !important;
}

  .admin-pager-next {
  grid-column: 2 !important;
  grid-row: 2 !important;
}

  .admin-vote-count-setting {
  align-items: flex-start;
  flex-direction: column;
}

  .admin-vote-count-setting .btn {
  width: 100%;
}

  body.flat-theme .admin-overview-grid {
  grid-template-columns: repeat(2,minmax(0,1fr)) !important;
}

  .admin-stat {
  min-height: 103px !important;
}

  .admin-stat svg.mc-outline-icon {
  width: 35px !important;
  height: 35px !important;
}

  .admin-vote-overview {
  gap: 4px !important;
}

  .admin-nav-group-grid .admin-nav-tile .mc-outline-icon {
  width: 34px !important;
  height: 34px !important;
}

  .admin-nav-group-grid .admin-nav-tile span {
  font-size: 8px !important;
}

  body.flat-theme .admin-nav-group-grid {
  grid-template-columns: repeat(3,minmax(0,1fr)) !important;
}
}


@media (max-width:430px) {
  .admin-nav-group-grid {
  grid-template-columns: repeat(2,minmax(0,1fr)) !important;
}

  .admin-nav-group-grid .admin-nav-tile span {
  font-size: 10.5px !important;
}

  .feature-control-row {
  grid-template-columns: minmax(0,1fr) 96px !important;
}

  body.flat-theme .admin-nav-group-grid {
  grid-template-columns: repeat(2,minmax(0,1fr)) !important;
  gap: 9px !important;
}

  body.flat-theme .admin-nav-group-grid .admin-nav-tile span {
  font-size: 11px !important;
}
}


body.flat-theme .feature-control-row>span {
  display: flex !important;
  flex-direction: column !important;
  align-items: flex-start !important;
  gap: 2px !important;
  grid-template-columns: none !important;
  min-width: 0 !important;
}


body.flat-theme .feature-control-row>span>b,
body.flat-theme .feature-control-row>span>small {
  grid-column: auto !important;
  width: auto !important;
  max-width: 100% !important;
  white-space: normal !important;
  overflow-wrap: anywhere !important;
}


body.flat-theme .feature-control-group {
  box-shadow: none !important;
}


body.flat-theme .admin-vote-adjust-visible {
  display: grid !important;
  gap: 9px !important;
  margin-top: 10px !important;
  padding: 10px !important;
  border: 1.5px solid #dfe4e9 !important;
  border-radius: 12px !important;
  background: #ffffff !important;
  box-shadow: none !important;
}


body.flat-theme .admin-vote-adjust-title {
  display: grid !important;
  gap: 2px !important;
  text-align: center !important;
}


body.flat-theme .admin-vote-adjust-title small {
  color: var(--mc-muted) !important;
  font-size: 10px !important;
}


body.flat-theme .admin-vote-adjust-box {
  display: grid !important;
  gap: 7px !important;
  align-content: start !important;
  padding: 9px !important;
  border: 1.5px solid #dfe4e9 !important;
  border-radius: 12px !important;
  background: #ffffff !important;
}


body.flat-theme .admin-vote-adjust-box>div {
  display: grid !important;
  grid-template-columns: 1fr 1fr !important;
  gap: 6px !important;
}


body.flat-theme .admin-vote-adjust-box input {
  margin: 0 !important;
  text-align: center !important;
  font-weight: 900 !important;
}


body.flat-theme .admin-vote-avatar {
  border: 3px solid #dfe4e9 !important;
  box-shadow: none !important;
  background: #ffffff !important;
}


.admin-section,
.admin-control-hub,
.admin-profile-control-card {
  min-width: 0;
  max-width: 100%;
  box-sizing: border-box;
}


.admin-panel-head,
.admin-full-header {
  display: grid;
  grid-template-columns: minmax(0,1fr) auto;
  align-items: start;
  gap: 12px;
  min-width: 0;
  margin-bottom: 14px;
}


.admin-panel-head h2,
.admin-full-header h2 {
  margin: 0 0 4px;
  line-height: 1.12;
}


.admin-panel-head p,
.admin-full-header p {
  margin: 0;
  line-height: 1.4;
}


.admin-user-id b {
  font-size: 12px;
  line-height: 1.2;
}


.admin-user-id small {
  font-size: 10px;
  line-height: 1.25;
  color: var(--mc-muted);
}


.admin-emergency-list {
  display: grid;
  gap: 8px;
  margin: 0 0 14px;
}


.admin-emergency-row {
  display: grid;
  grid-template-columns: minmax(0,1fr) auto;
  align-items: center;
  gap: 12px;
  min-width: 0;
  padding: 10px 0;
  border-bottom: 1px solid rgba(90,120,150,.13);
}


.admin-emergency-copy {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 10px;
  min-width: 0;
}


.admin-emergency-copy b {
  min-width: 0;
  overflow-wrap: anywhere;
}


.admin-state {
  flex: 0 0 auto;
  padding: 4px 7px;
  border-radius: 12px;
  font-size: 10px;
  font-weight: 900;
}


.admin-state.is-on {
  color: #000000;
  background: rgba(74,205,142,.14);
}


.admin-state.is-off {
  color: #000000;
  background: rgba(255,93,128,.12);
}


.admin-emergency-row>.btn {
  width: 112px;
  min-width: 112px;
  min-height: 40px;
  padding: 7px 10px;
  white-space: nowrap;
}


.admin-maintenance-form,
.admin-form {
  display: grid;
  gap: 10px;
  margin-top: 10px;
}


.admin-switch-grid {
  display: grid;
  grid-template-columns: repeat(2,minmax(0,1fr));
  gap: 8px;
}


.admin-switch-row {
  display: grid;
  grid-template-columns: minmax(0,1fr) 46px;
  align-items: center;
  gap: 10px;
  min-width: 0;
  padding: 10px 11px;
  border-radius: 12px;
  border: 1px solid #dfe4e9;
  background: #ffffff;
}


.admin-switch-row>span {
  display: grid;
  gap: 2px;
  min-width: 0;
}


.admin-switch-row b {
  font-size: 13px;
  line-height: 1.2;
}


.admin-switch-row small {
  font-size: 10px;
  line-height: 1.25;
  color: var(--mc-muted);
}


.admin-switch {
  appearance: none;
  -webkit-appearance: none;
  width: 44px !important;
  height: 24px !important;
  min-height: 24px !important;
  margin: 0 !important;
  padding: 2px !important;
  border: 0 !important;
  border-radius: 12px !important;
  background: #c8cfdd !important;
  box-shadow: none !important;
  cursor: pointer;
  position: relative;
  transition: background .18s ease;
}


.admin-switch:before {
  content: "";
  display: block;
  width: 20px;
  height: 20px;
  border-radius: 50%;
  background: #fff;
  box-shadow: none;
  transition: transform .18s ease;
}


.admin-switch:checked {
  background: var(--mc-active,#000000) !important;
}


.admin-switch:checked:before {
  transform: translateX(20px);
}


.admin-form-grid {
  display: grid;
  grid-template-columns: repeat(2,minmax(0,1fr));
  gap: 10px;
}


.admin-field {
  display: grid;
  gap: 6px;
  min-width: 0;
}


.admin-field>span {
  font-size: 12px;
  font-weight: 900;
}


.admin-field input,
.admin-field select,
.admin-field textarea {
  width: 100%;
  min-width: 0;
  box-sizing: border-box;
}


.admin-field textarea {
  min-height: 90px;
  resize: none;
  overflow-y: auto;
}


.admin-save-button {
  justify-self: end;
  min-width: 180px;
}


.afc-tabs {
  display: grid;
  grid-template-columns: repeat(auto-fit,minmax(118px,1fr));
  gap: 6px;
  padding: 2px 0 8px;
  min-width: 0;
}


.afc-tabs .btn {
  width: 100%;
  min-width: 0;
  min-height: 42px;
  padding: 7px 8px;
  white-space: normal;
  line-height: 1.15;
  text-align: center;
  overflow-wrap: break-word;
}


@media (max-width:430px) {
  .afc-tabs {
  grid-template-columns: repeat(2,minmax(0,1fr));
}

  .afc-tabs .btn {
  font-size: 11px;
}
}


.afc-pane {
  min-width: 0;
}


/* Admin Full Control / User Data: a bounded, initially closed verification archive.
   These selectors are the single owner of verification disclosure layout. */
.afc-user-data-form {
  display: grid;
  gap: 14px;
  min-width: 0;
}

.afc-user-data-form > :is(label,div),
.afc-verification-section,
.afc-verification-record,
.afc-verification-history {
  min-width: 0;
  max-width: 100%;
  box-sizing: border-box;
}

.afc-user-data-form .afc-checks {
  display: grid;
  grid-template-columns: repeat(2,minmax(0,1fr));
  gap: 8px;
}

.afc-user-data-form .afc-checks label {
  display: flex;
  align-items: center;
  justify-content: flex-start;
  gap: 9px;
  width: 100%;
  max-width: 100%;
  min-width: 0;
  box-sizing: border-box;
  margin: 0;
  font-size: 13px;
  line-height: 1.45;
  overflow-wrap: anywhere;
}
.afc-user-data-form .afc-checks label > span {
  display: block;
  flex: 1 1 auto;
  min-width: 0;
  white-space: normal;
}

main#app .afc-user-data-form .afc-checks input[type="checkbox"] {
  /* Keep the actual checkbox compact; the generic text-input 100% rule
     must not turn it into a full-width flex child on Android. */
  flex: 0 0 18px;
  width: 18px;
  min-width: 18px;
  max-width: 18px;
  height: 18px;
  margin: 2px 0 0;
}

.afc-user-data-form .afc-data-meta {
  display: grid;
  grid-template-columns: repeat(auto-fit,minmax(170px,1fr));
  gap: 6px 12px;
  min-width: 0;
  padding: 12px;
  border: 1px solid var(--mc-border,#dfe4e9);
  border-radius: 12px;
  background: var(--mc-card-material,#fff);
}

.afc-user-data-form .afc-data-meta small {
  display: block;
  min-width: 0;
  font-size: 11px;
  line-height: 1.45;
  overflow-wrap: anywhere;
}

.afc-user-data-save {
  display: flex;
  justify-content: flex-start;
  padding: 12px 0;
  border-top: 1px solid var(--mc-border,#dfe4e9);
}

.afc-verification-section {
  display: grid;
  gap: 12px;
  margin-top: 18px;
  padding-top: 16px;
  border-top: 1px solid var(--mc-border,#dfe4e9);
}

.afc-verification-title h3 {
  margin: 0 0 5px;
  font-size: 17px;
}

.afc-verification-title p {
  margin: 0;
  font-size: 12px;
  line-height: 1.45;
}

.afc-verification-record[hidden] {
  display: none;
}

.afc-verification-record,
.afc-verification-history {
  border: 1px solid var(--mc-border,#dfe4e9);
  border-radius: 12px;
  background: var(--mc-card-material,#fff);
  overflow: clip;
}

.afc-verification-record > summary,
.afc-verification-history > summary {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 10px;
  padding: 12px;
  min-width: 0;
  cursor: pointer;
  list-style: none;
}

.afc-verification-record > summary::-webkit-details-marker,
.afc-verification-history > summary::-webkit-details-marker {
  display: none;
}

.afc-verification-record > summary > span:first-child,
.afc-verification-history > summary > span:first-child {
  display: grid;
  gap: 3px;
  flex: 1 1 auto;
  min-width: 0;
}

.afc-verification-record summary b,
.afc-verification-history summary b {
  font-size: 13px;
  line-height: 1.35;
  overflow-wrap: anywhere;
}

.afc-verification-record summary small,
.afc-verification-history summary small {
  color: var(--mc-muted,#667085);
  font-size: 11px;
  line-height: 1.4;
  overflow-wrap: anywhere;
}

.afc-verification-open-label,
.afc-verification-count {
  flex: 0 0 auto;
  font-size: 11px;
  font-weight: 700;
  color: var(--mc-muted,#667085);
  white-space: nowrap;
}

.afc-verification-open-label::after,
.afc-verification-count::after {
  content: '⌄';
  display: inline-block;
  margin-left: 5px;
  font-size: 15px;
  line-height: 1;
  vertical-align: middle;
}

.afc-verification-record[open] > summary .afc-verification-open-label::after,
.afc-verification-history[open] > summary .afc-verification-count::after {
  transform: rotate(180deg);
}

.afc-verification-body,
.afc-verification-events {
  display: grid;
  gap: 10px;
  padding: 12px;
  min-width: 0;
  border-top: 1px solid var(--mc-border,#dfe4e9);
}

.afc-verification-meta,
.afc-verification-note {
  margin: 0;
  font-size: 12px;
  line-height: 1.5;
  overflow-wrap: anywhere;
}

.afc-verification-files {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
  min-width: 0;
}

.afc-verification-files > .btn {
  max-width: 100%;
  white-space: normal;
  overflow-wrap: anywhere;
}

.afc-verification-empty {
  border: 1px dashed var(--mc-border,#dfe4e9);
  border-radius: 10px;
  padding: 14px;
  font-size: 12px;
  color: var(--mc-muted,#667085);
}

.afc-verification-more {
  width: 100%;
  min-height: 40px;
  white-space: normal;
}

.afc-verification-remove {
  justify-self: start;
  white-space: normal;
  line-height: 1.35;
}

@media (max-width:430px) {
  .afc-user-data-form .afc-checks { grid-template-columns: minmax(0,1fr); }
  .afc-user-data-form .grid2 { grid-template-columns: minmax(0,1fr); }
  .afc-user-data-save > .btn { width: 100%; }
  .afc-verification-remove { width: 100%; }
  .afc-verification-record > summary,
  .afc-verification-history > summary { padding: 11px 10px; }
  .afc-verification-body,
  .afc-verification-events { padding: 10px; }
}


.admin-profile-control-grid {
  display: grid;
  grid-template-columns: repeat(2,minmax(0,1fr));
  gap: 8px;
}


.admin-profile-toggle {
  width: 100%;
  min-width: 0;
  min-height: 58px;
  margin: 0;
  padding: 9px 10px;
  display: grid;
  grid-template-columns: 30px minmax(0,1fr);
  align-items: center;
  gap: 8px;
  text-align: left;
  border: 1px solid var(--mc-border,#dfe4e9);
  border-radius: 13px;
  background: var(--mc-card-material,#fff);
  color: var(--mc-text,#111827);
  box-sizing: border-box;
  box-shadow: none;
  overflow: hidden;
}


.admin-full-control-v97 .admin-profile-toggle {
  grid-template-columns: minmax(0,1fr);
  gap: 0;
  min-height: 54px;
}


.admin-full-control-v97 .admin-profile-toggle>span {
  width: 100%;
}


.admin-profile-toggle>svg.mc-outline-icon {
  width: 24px;
  height: 24px;
  justify-self: center;
  flex: 0 0 auto;
}


.admin-profile-toggle>span {
  min-width: 0;
  display: grid;
  grid-template-columns: minmax(0,1fr) auto;
  align-items: center;
  gap: 7px;
}


.admin-profile-toggle b {
  min-width: 0;
  font-size: 11.5px;
  line-height: 1.25;
  white-space: normal;
  overflow-wrap: break-word;
  word-break: normal;
}


.admin-profile-toggle small {
  display: inline-grid;
  place-items: center;
  min-width: 34px;
  height: 22px;
  padding: 0 6px;
  border-radius: 999px;
  font-size: 9px;
  font-weight: 900;
  letter-spacing: .04em;
  background: #eef1f4;
  color: #5b6570;
}


.admin-profile-toggle.is-on {
  border-color: color-mix(in srgb,var(--mc-active,#1683ff) 35%,var(--mc-border,#dfe4e9));
  background: color-mix(in srgb,var(--mc-active,#1683ff) 6%,var(--mc-card-material,#fff));
}


.admin-profile-toggle.is-on small {
  background: var(--mc-active,#1683ff);
  color: #fff;
}


.admin-profile-toggle.is-off {
  opacity: .88;
}


.admin-profile-control-actions {
  display: grid;
  grid-template-columns: repeat(auto-fit,minmax(150px,1fr));
  gap: 8px;
  align-items: stretch;
}


.admin-profile-control-actions>.btn {
  width: 100%;
  min-width: 0;
  white-space: normal;
  line-height: 1.25;
}


.admin-profile-control-card>.section-row {
  align-items: flex-start;
  gap: 10px;
}


.admin-profile-control-card>.section-row>div {
  min-width: 0;
}


.admin-profile-control-card>.section-row h2 {
  margin: 0;
  font-size: 17px;
}


.admin-profile-control-card>.section-row p {
  margin: 4px 0 0;
  font-size: 10px;
  line-height: 1.4;
}


.admin-user-id {
  display: grid;
  gap: 1px;
  align-content: center;
  justify-items: end;
  min-width: 112px;
  max-width: 150px;
  text-align: right;
  overflow-wrap: anywhere;
  flex: 0 0 auto;
  white-space: nowrap;
  padding: 5px 8px;
  border-radius: 999px;
  background: var(--mc-input-material,#f5f7fa);
  font-size: 10px;
  font-weight: 850;
}


.admin-profile-tools {
  display: grid;
  grid-template-columns: repeat(2,minmax(0,1fr));
  gap: 10px;
}


.admin-profile-tools label {
  display: grid;
  gap: 7px;
  min-width: 0;
}


.admin-profile-tools textarea {
  width: 100%;
  min-width: 0;
  box-sizing: border-box;
}


@media (max-width:600px) {
  .admin-panel-head,
  .admin-full-header {
  grid-template-columns: 1fr;
}

  .admin-user-id {
  justify-items: start;
  text-align: left;
  max-width: none;
  width: max-content;
}

  .admin-switch-grid,
  .admin-form-grid,
  .admin-profile-tools {
  grid-template-columns: 1fr;
}

  .admin-emergency-row {
  grid-template-columns: minmax(0,1fr) 102px;
  gap: 8px;
}

  .admin-emergency-copy {
  display: grid;
  justify-content: start;
  gap: 3px;
}

  .admin-emergency-row>.btn {
  width: 102px;
  min-width: 102px;
}

  .admin-save-button {
  width: 100%;
  justify-self: stretch;
}

  .admin-profile-control-grid {
  grid-template-columns: repeat(2,minmax(0,1fr));
}
}


@media (max-width:360px) {
  .admin-emergency-row {
  grid-template-columns: 1fr;
}

  .admin-emergency-row>.btn {
  width: 100%;
}

  .admin-profile-control-grid {
  grid-template-columns: 1fr;
}
}

/* ===== theme-builder-v97.css ===== */
.theme-header-card-grid {
  display: grid;
  grid-template-columns: repeat(auto-fit,minmax(145px,1fr));
  gap: 10px;
}


.theme-header-card-field {
  min-width: 0;
  border: 1px solid var(--mc-border,#e8edf2);
  border-radius: 12px;
  padding: 8px;
  margin: 0;
  background: var(--mc-card-material,#fff);
}


.theme-header-card-field legend,
.theme-header-card-field>h4 {
  font-weight: 750;
  font-size: 12px;
  padding: 0 5px;
  margin: 0 0 8px;
}


.theme-header-card-field .theme-field {
  min-width: 0;
  width: 100%;
}


body.flat-theme .home-tabs.theme-feed-tab-preview {
  grid-template-columns: repeat(2,minmax(0,1fr)) !important;
  gap: 5px !important;
  margin: 5px 0 9px !important;
}


.theme-feed-tab-preview .pill {
  font-size: 11px !important;
  min-height: 36px !important;
  padding: 3px !important;
  text-align: center;
  display: grid;
  place-items: center;
  cursor: default;
}


.theme-toggle-grid input {
  width: auto !important;
  min-height: auto !important;
}


.theme-logo-preview {
  display: flex;
  align-items: center;
  gap: 12px;
  margin: 10px 0 14px;
}


.theme-logo-preview>div:last-child {
  display: grid;
  gap: 4px;
}


.theme-brand-upload {
  display: flex;
  align-items: center;
  gap: 10px;
  flex-wrap: wrap;
  margin: 8px 0;
}


.theme-icon-map-row span {
  font-size: 11px;
  font-weight: 900;
  text-transform: capitalize;
}


.theme-order-row input {
  width: auto;
  min-height: auto;
  margin: 0;
}


.theme-order-row>div {
  display: flex;
  gap: 4px;
}


.theme-order-row button {
  width: 34px;
  height: 32px;
  border: 0;
  border-radius: 10px;
}


@media (max-width:390px) {
  .theme-icon-map-grid {
  grid-template-columns: 1fr;
}
}


.theme-brand-strength {
  margin-top: 12px;
  padding-top: 12px;
  border-top: 1px solid rgba(90,120,150,.10);
}


.theme-brand-strength h4 {
  margin: 0 0 4px;
}


.theme-logo-natural-controls {
  display: grid;
  gap: 8px;
  padding: 10px;
  margin: 8px 0;
  border: 1px solid rgba(90,120,150,.12);
  border-radius: 12px;
  max-width: 100%;
}


.theme-logo-natural-controls>label:first-child {
  display: flex;
  align-items: flex-start;
  gap: 8px;
}


.theme-logo-natural-controls input[type=checkbox] {
  width: auto !important;
  min-height: auto !important;
  margin-top: 2px !important;
}


.theme-logo-clean-btn {
  width: max-content;
  max-width: 100%;
  min-height: 40px;
}


.theme-logo-clean-btn:disabled {
  opacity: .5;
}


.theme-logo-box {
  width: 76px;
  height: 76px;
  display: grid;
  place-items: center;
  border-radius: 12px;
  position: relative !important;
  isolation: isolate !important;
  overflow: hidden !important;
  background: #ffffff !important;
  border: 1px solid #dfe4e9 !important;
}


.theme-logo-box img {
  display: block !important;
  width: 100% !important;
  height: 100% !important;
  max-width: 100% !important;
  max-height: 100% !important;
  object-fit: contain !important;
  pointer-events: none !important;
  mix-blend-mode: normal !important;
}


body.flat-theme .theme-v97-grid {
  display: grid !important;
  /* Each colour editor needs room for its swatch, HEX value and actions.
     The available panel width, not the device type, owns column count. */
  grid-template-columns: repeat(auto-fit,minmax(min(100%,270px),1fr)) !important;
  gap: 12px !important;
}


.theme-v97-sliders {
  display: grid !important;
  grid-template-columns: repeat(2,minmax(0,1fr)) !important;
  gap: 10px !important;
  margin: 12px 0 !important;
}


.theme-range span {
  gap: 8px;
  display: flex !important;
  justify-content: space-between !important;
}


.theme-toggle-grid {
  margin: 12px 0;
  display: grid !important;
  grid-template-columns: repeat(3,minmax(0,1fr)) !important;
  gap: 8px !important;
}


@media (max-width:700px) {
  .theme-v97-grid {
  grid-template-columns: repeat(2,minmax(0,1fr));
}

  .theme-icon-map-grid {
  grid-template-columns: repeat(2,minmax(0,1fr));
}

  body.flat-theme .theme-v97-grid {
  grid-template-columns: repeat(auto-fit,minmax(min(100%,270px),1fr)) !important;
}

  .theme-v97-sliders {
  grid-template-columns: 1fr !important;
}

  .theme-toggle-grid {
  grid-template-columns: minmax(0,1fr) !important;
}
}


body.flat-theme .theme-logo-box,
body.flat-theme .theme-order-row {
  background: #ffffff;
  border: calc(1px * var(--mc-flat-border-strength,.92)) solid #dfe4e9;
  box-shadow: none;
}


body.flat-theme .theme-save-bar {
  background: #ffffff;
  border-radius: 12px;
}


body.flat-theme .theme-order-row {
  grid-template-columns: auto minmax(0,1fr) auto !important;
  display: grid !important;
  align-items: center !important;
}


body.flat-theme .theme-order-row.is-dragging {
  opacity: .72 !important;
  outline: 2px solid color-mix(in srgb,var(--mc-active,#000000) 55%,transparent) !important;
}


.theme-v97-card {
  min-width: 0;
  max-width: 980px;
  margin-inline: auto;
  overflow-wrap: anywhere;
}


#themeBuilderForm {
  display: grid;
  gap: 10px;
  width: 100%;
  max-width: 1180px;
  margin: 0 auto;
}


.theme-control-section {
  min-width: 0;
  margin: 0;
  padding: 0;
  border: 1px solid var(--mc-border,#dfe4e9);
  border-radius: 14px;
  background: var(--mc-card-material,#fff);
  overflow: hidden;
  box-shadow: none;
}


.theme-builder-summary {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 10px;
  min-height: 52px;
  padding: 12px 14px;
  cursor: pointer;
  list-style: none;
  font-size: 14px;
  font-weight: 750;
  line-height: 1.25;
  user-select: none;
  background: var(--mc-card-material,#fff);
}


.theme-builder-summary::-webkit-details-marker {
  display: none;
}


.theme-builder-summary::marker {
  content: "";
}


.theme-builder-arrow {
  display: grid;
  place-items: center;
  flex: 0 0 30px;
  width: 30px;
  height: 30px;
  border-radius: 9px;
  background: #f7f8fa;
  border: 1px solid #e4e8ed;
  font-size: 18px;
  line-height: 1;
  transition: transform .18s ease;
}


.theme-builder-group[open]>.theme-builder-summary {
  border-bottom: 1px solid rgba(90,120,150,.10);
}


.theme-builder-group[open]>.theme-builder-summary .theme-builder-arrow {
  transform: rotate(180deg);
}


.theme-control-body {
  padding: 12px;
  min-width: 0;
  background: #f8fafc;
}


.theme-control-body>p.muted:first-child {
  margin: 0 0 12px;
  font-size: 11px;
  line-height: 1.5;
}


.theme-v97-grid,
.theme-v97-sliders,
.theme-toggle-grid {
  display: grid;
  grid-template-columns: repeat(2,minmax(0,1fr));
  gap: 10px;
  align-items: start;
}


.theme-field,
.theme-range {
  display: grid;
  grid-template-columns: minmax(0,1fr);
  gap: 6px;
  min-width: 0;
  align-content: start;
}


.theme-field>span,
.theme-range>span {
  font-size: 11px;
  font-weight: 750;
  line-height: 1.35;
  min-width: 0;
}


.theme-range>span {
  display: flex;
  align-items: baseline;
  justify-content: space-between;
  gap: 8px;
  white-space: normal;
  word-break: normal;
  overflow-wrap: normal;
}


.theme-range>span output {
  flex: 0 0 auto;
  font-size: 11px;
  font-variant-numeric: tabular-nums;
}


.theme-range>input[type=range] {
  display: block;
  width: 100%!important;
  min-width: 0!important;
  max-width: none!important;
  margin: 0!important;
}


.theme-field input:not([type=color]),
.theme-field select {
  width: 100%;
  min-width: 0;
  min-height: 42px;
  box-sizing: border-box;
  font-size: 13px;
}


.theme-range input {
  width: 100%;
  min-width: 0;
  box-sizing: border-box;
}


.theme-toggle-grid label {
  display: grid;
  grid-template-columns: 44px minmax(0,1fr);
  align-items: center;
  gap: 10px;
  min-width: 0;
  min-height: 48px;
  padding: 9px 10px;
  border: 1px solid #e1e6eb;
  border-radius: 12px;
  background: #fff;
  font-size: 12px;
  font-weight: 750;
  box-shadow: none;
}


.theme-toggle-grid input[type=checkbox] {
  appearance: none;
  -webkit-appearance: none;
  width: 42px!important;
  height: 24px!important;
  min-width: 42px!important;
  min-height: 24px!important;
  margin: 0!important;
  padding: 0!important;
  position: relative;
  border: 1px solid #c8d0d9!important;
  border-radius: 999px!important;
  background: #e9edf1!important;
  box-shadow: none!important;
  cursor: pointer;
  transition: background .16s ease,border-color .16s ease;
}


.theme-toggle-grid input[type=checkbox]::after {
  content: "";
  position: absolute;
  left: 2px;
  top: 2px;
  width: 18px;
  height: 18px;
  border-radius: 50%;
  background: #fff;
  box-shadow: 0 1px 4px rgba(15,23,42,.18);
  transition: transform .16s ease;
}


.theme-toggle-grid input[type=checkbox]:checked {
  background: #1683ff!important;
  border-color: #1683ff!important;
}


.theme-toggle-grid input[type=checkbox]:checked::after {
  transform: translateX(18px);
}


.theme-advanced-panel {
  margin-top: 10px;
  border: 1px solid #dfe4e9;
  border-radius: 12px;
  background: #ffffff;
  overflow: hidden;
}


.theme-advanced-panel>summary {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
  min-height: 44px;
  padding: 10px 12px;
  cursor: pointer;
  list-style: none;
  font-size: 12px;
}


.theme-advanced-panel>summary::-webkit-details-marker {
  display: none;
}


.theme-advanced-panel>summary>span:first-child {
  display: grid;
  gap: 2px;
}


.theme-advanced-panel>summary small {
  font-size: 10px;
  color: var(--mc-muted);
}


.theme-icon-map-grid {
  margin: 12px 0;
  display: grid;
  grid-template-columns: repeat(2,minmax(0,1fr));
  gap: 7px;
  padding: 0 10px 10px;
}


.theme-icon-map-row {
  display: grid;
  gap: 4px;
  min-width: 0;
}


.theme-icon-map-row>span {
  font-size: 10px;
  font-weight: 900;
  text-transform: capitalize;
}


.theme-icon-map-row select {
  margin: 0;
  width: 100%;
  min-width: 0;
  min-height: 38px;
}


.theme-advanced-panel>.btn {
  margin: 0 10px 10px;
}


.theme-order-list {
  margin-top: 8px;
  display: grid;
  gap: 6px;
}


.theme-order-row {
  justify-content: space-between;
  min-height: 44px;
  padding: 7px 9px;
  border-radius: 10px;
  display: grid;
  grid-template-columns: 34px minmax(0,1fr) auto;
  align-items: center;
  gap: 8px;
  min-width: 0;
}


.theme-order-row label {
  display: flex;
  align-items: center;
  gap: 7px;
  min-width: 0;
  overflow: hidden;
}


.theme-order-row label span {
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}


@media (max-width:600px) {
  .theme-v97-grid,
  .theme-toggle-grid,
  .theme-icon-map-grid {
  grid-template-columns: 1fr;
}

  .theme-v97-sliders {
  grid-template-columns: 1fr;
}

  .theme-control-body {
  padding: 10px;
}

  .theme-builder-summary {
  min-height: 50px;
  padding: 10px 11px;
}

  .theme-step-nav {
  margin-inline: -2px;
}

  .theme-step-nav a {
  min-height: 34px;
  padding: 6px 9px;
}

  .theme-module-element-fields {
  grid-template-columns: 1fr;
}

  .theme-module-open-layout {
  padding: 8px;
}

  .theme-item-preview-placeholder {
  min-height: 180px;
}
}


@media (max-width:340px) {
  .theme-icon-map-grid {
  grid-template-columns: 1fr;
}
}


.theme-icon-controls {
  display: grid;
  grid-template-columns: repeat(2,minmax(0,1fr));
  gap: 10px;
  margin-top: 14px;
}


.theme-icon-control {
  min-width: 0;
  margin: 0;
  padding: 10px;
  border: 1px solid var(--mc-border,#dfe4e9);
  border-radius: 12px;
  background: var(--mc-card-material,#fff);
}


.theme-icon-control legend {
  padding: 0 5px;
  font-size: 11px;
  font-weight: 900;
  color: var(--mc-text,#000000);
  text-transform: capitalize;
}


.theme-icon-control-top {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 7px;
  min-height: 45px;
}


.theme-icon-preview {
  display: grid;
  place-items: center;
  width: 52px;
  height: 52px;
  flex: 0 0 52px;
  border-radius: 9px;
  background: var(--mc-input-material,#fff);
  border: 1px solid var(--mc-border,#dfe4e9);
}


body.flat-theme .theme-icon-control .theme-icon-preview svg.mc-outline-icon[data-mc-icon] {
  color: inherit !important;
  width: var(--theme-preview-icon-size,26px) !important;
  height: var(--theme-preview-icon-size,26px) !important;
}


.theme-icon-control-fields {
  display: grid;
  grid-template-columns: minmax(0,1fr);
  gap: 10px;
  margin-top: 10px;
  min-width: 0;
}


.theme-icon-control-fields>label {
  display: grid;
  grid-template-columns: minmax(0,1fr);
  gap: 6px;
  align-items: stretch;
  min-width: 0;
}


.theme-icon-control-fields>label>span {
  display: flex;
  align-items: baseline;
  justify-content: space-between;
  gap: 8px;
  min-width: 0;
  white-space: normal;
  word-break: normal;
  overflow-wrap: normal;
  line-height: 1.3;
}


.theme-icon-control-fields>label>span output {
  flex: 0 0 auto;
  font-size: 11px;
  font-variant-numeric: tabular-nums;
}


.theme-icon-control-fields label {
  font-size: 11px;
  font-weight: 850;
  min-width: 0;
}


.theme-icon-control-fields input[type=color] {
  width: 50px;
  min-width: 50px;
  height: 34px;
  min-height: 34px;
  padding: 2px;
}


.theme-icon-control-fields input[type=range] {
  width: 100%;
  max-width: none;
  min-width: 0;
  margin: 0;
}


.theme-icon-control-fields input:disabled {
  opacity: .45;
}


.theme-head-preview {
  font-size: 11px;
  display: grid;
  gap: 3px;
  align-content: center;
  padding: 8px 11px;
  border: 1px solid var(--mc-border,#dfe4e9);
  border-radius: 12px;
  background: var(--mc-card-material,#fff);
}


.theme-head-preview span {
  color: var(--mc-muted,#000000);
  font-size: 10px;
}


@media(max-width:520px) {
  .theme-icon-controls {
  grid-template-columns: 1fr;
}
}

/* ===== ads-v97.css ===== */
/* My Chhachh V97.43 — single-source Google AdSense presentation + safe test mode. */
.google-ad-card {
  position: relative;
  display: block;
  box-sizing: border-box;
  width: calc(100% - 24px);
  max-width: 520px;
  flex: 0 0 auto;
  align-self: center;
  justify-self: center;
  margin: 12px auto;
  padding: 10px 12px;
  border: 1px solid var(--mc-border, #d7dde5);
  border-radius: 12px;
  background: var(--mc-card-material, #fff);
  box-shadow: none;
  isolation: isolate;
}

.google-ad-card .google-ad-head {
  margin-bottom: 6px;
}


.google-ad-brand {
  display: flex;
  align-items: center;
  gap: 7px;
  text-decoration: none;
  color: inherit;
}


.google-ad-brand>span:last-child {
  display: grid;
  gap: 1px;
}


.google-ad-brand b {
  font-size: .79rem;
  line-height: 1.2;
}


.google-ad-brand small {
  color: var(--muted,#000000);
  font-size: .68rem;
}


.google-ad-mark {
  display: grid;
  place-items: center;
  width: 27px;
  height: 27px;
  border-radius: 50%;
  font-size: .65rem;
  font-weight: 800;
  letter-spacing: .02em;
  background: var(--input,#f7fbff);
  border: 1px solid var(--border,#dfe4e9);
  box-shadow: none;
}


.google-ad-body {
  width: 100%;
  min-height: 90px;
  display: grid;
  align-items: center;
  /* Google owns creative height: never crop or cover a paid ad. */
  border-radius: 10px;
}


.google-ad-body .adsbygoogle {
  width: 100%;
  min-width: 0;
}


.google-ad-preview-card {
  pointer-events: none;
}


.google-ad-preview-body {
  display: grid;
  grid-template-columns: minmax(72px,28%) 1fr;
  gap: 9px;
  align-items: center;
  padding: 6px 0 2px;
}


.google-ad-preview-media {
  min-height: 82px;
  display: grid;
  place-items: center;
  border: 1px dashed currentColor;
  border-radius: 12px;
  font-weight: 900;
  letter-spacing: .08em;
  opacity: .55;
}


.google-ad-preview-copy {
  display: grid;
  gap: 6px;
  min-width: 0;
}


.google-ad-preview-copy b {
  font-size: .84rem;
}


.google-ad-preview-copy span {
  color: var(--muted,#000000);
  font-size: .73rem;
  line-height: 1.45;
}


.admin-ads-form {
  display: grid;
  gap: 14px;
}

.ads-report-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 9px;
}
.ads-report-grid > div {
  display: grid;
  align-content: start;
  gap: 5px;
  padding: 12px;
  min-width: 0;
  border: 1px solid var(--mc-border, #dde3ea);
  border-radius: 10px;
  background: var(--mc-card-material, #fff);
}
.ads-report-grid span { color: var(--muted, #66738b); font-size: .77rem; }
.ads-report-grid b { font-size: 1.25rem; overflow-wrap: anywhere; font-variant-numeric: tabular-nums; }
.ads-report-source { display: block; line-height: 1.55; color: var(--muted, #66738b); }
.ads-report-actions { display: flex; flex-wrap: wrap; align-items: flex-end; gap: 8px; }
.ads-report-actions .admin-field { min-width: 170px; flex: 1 1 180px; }
.ads-report-actions .btn { align-self: end; }



.ads-admin-section {
  display: grid;
  gap: 10px;
  padding: 14px;
  border: 1px solid rgba(125,140,175,.16);
  border-radius: 12px;
  background: #ffffff;
}


.ads-admin-section h3 {
  margin: 0;
}


.ads-admin-section .muted {
  margin: 0;
}


.admin-field-wide {
  grid-column: 1/-1;
}


.ads-code-status {
  padding: 10px 12px;
  border-radius: 12px;
  background: rgba(80,130,255,.08);
  font-size: .84rem;
  word-break: break-word;
}


.ads-test-actions {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
}


.ads-sample-code {
  max-width: 100%;
  margin: 0;
  padding: 12px;
  border-radius: 12px;
  overflow: auto;
  white-space: pre-wrap;
  word-break: break-all;
  background: rgba(20,30,55,.06);
  font-size: .74rem;
  line-height: 1.45;
}


@media(max-width:640px) {
  .google-ad-preview-card .google-ad-preview-body {
  grid-template-columns: minmax(66px,28%) 1fr;
}

  .google-ad-preview-card .google-ad-preview-media {
  min-height: 76px;
}

  .admin-ads-form .ads-admin-section {
  padding: 12px;
}

  .ads-test-actions>* {
  flex: 1 1 100%;
}
}


.ads-inline-test {
  display: grid;
  gap: 10px;
  padding-top: 2px;
}


.ads-test-summary {
  padding: 9px 11px;
  border-radius: 12px;
  background: rgba(80,130,255,.08);
  font-size: .82rem;
  line-height: 1.4;
}


.ads-inline-test .google-ad-preview-card {
  margin: 0;
}


.ads-frequency-block {
  margin-top: 14px;
  padding-top: 14px;
  border-top: 1px solid var(--line,#d8e4ec);
}


.ads-frequency-block:first-of-type {
  margin-top: 8px;
}


.ads-frequency-block h4 {
  margin: 0 0 10px;
  font-size: 14px;
}

/* ===== post-button-navigation — canonical Create Post UI ===== */
body.post-composer-open {
  overflow: hidden!important;
}


.post-composer-modal {
  position: fixed;
  inset: 0;
  z-index: 1000000;
  display: flex;
  align-items: flex-end;
  justify-content: center;
  padding: 12px;
  background: rgba(18,24,45,.32);
}


.post-composer-sheet {
  box-sizing: border-box;
  width: min(560px,100%);
  max-height: min(88dvh,740px);
  overflow: auto;
  padding: 16px;
  border: 1px solid var(--mc-border,#dfe4e9);
  border-radius: 20px;
  background: var(--mc-card-material,#fff);
  box-shadow: 0 14px 45px rgba(0,0,0,.08);
}


.post-composer-head {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 10px;
  padding: 0 0 12px;
  border-bottom: 1px solid var(--mc-border,#dfe4e9);
  margin-bottom: 14px;
}


.post-composer-head>div {
  display: flex;
  align-items: center;
  gap: 11px;
  min-width: 0;
}


.post-composer-head>div>span {
  display: grid;
  gap: 2px;
  min-width: 0;
}


.post-composer-head b {
  font-size: 18px;
  line-height: 1.2;
}


.post-composer-head small {
  font-size: 12px;
  line-height: 1.3;
  color: var(--mc-muted,#5a6570);
}


.post-composer-head .post-composer-plus-icon {
  width: 29px;
  height: 29px;
  flex: 0 0 29px;
}


.post-composer-head [data-post-composer-close] {
  width: 36px;
  height: 36px;
  flex: 0 0 36px;
  display: grid;
  place-items: center;
}


.post-composer-head [data-post-composer-close] svg {
  width: 22px;
  height: 22px;
}


/* Shared Create (+) choices belong to the original Post composer sheet.
   Voting and Announcement keep their canonical, existing upload forms. */
.chhachh-create-choices {
  display: grid;
  grid-template-columns: repeat(3,minmax(0,1fr));
  gap: 9px;
  margin: 0 0 16px;
}
.chhachh-create-choice {
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  gap: 8px;
  min-width: 0;
  min-height: 92px;
  padding: 12px 5px;
  border: 1px solid var(--mc-border,#dfe4e9);
  border-radius: 15px;
  background: var(--mc-card-material,#fff);
  color: var(--mc-text,#202d35);
  font: inherit;
  font-size: 13px;
  font-weight: 650;
  cursor: pointer;
  transition: background-color .15s,border-color .15s;
}
.chhachh-create-choice svg {
  width: 27px;
  height: 27px;
  flex: none;
}
.chhachh-create-choice.is-selected,
.chhachh-create-choice:focus-visible {
  border: 2px solid var(--mc-primary,#00F2FF);
  background: var(--mc-selected-bg,#f4fbfc);
  outline-offset: 2px;
}
.chhachh-create-choice[disabled] { opacity:.42;cursor:not-allowed; }
.chhachh-create-choice:not([disabled]):active { transform:translateY(1px); }
@media(max-width:400px) {
  .chhachh-create-choices {gap:7px;}
  .chhachh-create-choice {min-height:78px;padding:9px 2px;font-size:12px;gap:6px;}
  .chhachh-create-choice svg {width:25px;height:25px;}
}

/* The canonical Create (+) dialog uses each existing upload form.
   Voting has its own compact mobile layout; Announcement and Post are unchanged. */
.chhachh-create-pane { min-width:0;width:100%; }
.chhachh-create-pane .vote-create-card,
.chhachh-create-pane .announcement-composer { min-width:0;width:100%; }
.chhachh-create-pane .announcement-compose-head {display:none;}
.chhachh-create-pane .vote-challenge-form,
.chhachh-create-pane #announcementComposer {
  display:block;width:100%;min-width:0;max-width:100%;box-sizing:border-box;
  margin:0;padding:10px;border:0;border-radius:14px;
  background:transparent;box-shadow:none;
}
.chhachh-create-pane .vote-challenge-form[hidden],
.chhachh-create-pane #announcementComposer[hidden] {display:none!important;}
.chhachh-create-pane input,
.chhachh-create-pane textarea,
.chhachh-create-pane select {max-width:100%;}
.chhachh-create-pane .vote-challenge-send,
.chhachh-create-pane .announcement-publish {max-width:100%;}

/* Voting form, placed only inside the approved Create (+) popup. */
#postComposerModal .chhachh-create-pane #voteCreate {
  display:grid;gap:12px;padding:0;
}
.chhachh-create-pane .vote-dialog-heading {display:grid;gap:4px;}
.chhachh-create-pane .vote-dialog-heading b {
  color:var(--mc-text,#172334);font-size:16px;font-weight:780;line-height:1.3;
}
.chhachh-create-pane .vote-dialog-heading>span {
  color:var(--mc-muted,#667085);font-size:12px;line-height:1.4;
}
.chhachh-create-pane .vote-challenge-modes {
  display:grid;grid-template-columns:repeat(2,minmax(0,1fr));
  gap:8px;padding:4px;margin:0;border-radius:14px;
  background:var(--mc-input-material,#f4f7f9);
  border:1px solid var(--mc-border,#dfe4e9);
}
.chhachh-create-pane .vote-mode-button {
  display:flex;flex-direction:row;align-items:center;justify-content:center;
  gap:7px;min-height:49px;height:auto;padding:8px 5px;
  border:1px solid transparent;border-radius:11px;background:transparent;
  font-size:12px;line-height:1.25;font-weight:750;
}
.chhachh-create-pane .vote-mode-button.is-selected {
  border-color:var(--mc-primary,#00F2FF);background:var(--mc-card-material,#fff);
  box-shadow:0 1px 4px rgba(10,39,51,.07);
}
.chhachh-create-pane .vote-mode-button svg.mc-outline-icon {width:18px;height:18px;flex:none;}
.chhachh-create-pane .vote-mode-button span {display:block;flex:1;max-width:none;text-align:left;line-height:1.25;}
.chhachh-create-pane .vote-mode-help {
  margin:0 0 1px;padding:0 3px;min-height:0;
  color:var(--mc-muted,#667085);font-size:12px;line-height:1.5;
}
.chhachh-create-pane .vote-challenge-compose {
  display:grid;gap:15px;padding:0;margin:0;border:0;border-radius:0;background:transparent;
}
.chhachh-create-pane .vote-opponent-field {
  display:grid;gap:7px;padding:0;margin:0;border:0;position:relative;
}
.chhachh-create-pane .vote-opponent-field[hidden] {display:none!important;}
.chhachh-create-pane .vote-challenge-compose .vote-player-search,
.chhachh-create-pane .vote-challenge-compose .vote-challenge-line-field {
  display:grid;grid-template-columns:20px minmax(0,1fr);
  gap:7px 8px;min-width:0;align-items:center;position:relative;
}
.chhachh-create-pane .vote-field-title {
  grid-column:1/-1;grid-row:1;
  color:var(--mc-text,#172334);font-size:12px;font-weight:750;line-height:1.3;
}
.chhachh-create-pane .vote-player-search>.mc-outline-icon,
.chhachh-create-pane .vote-challenge-line-field>.mc-outline-icon {
  grid-row:2;grid-column:1;z-index:1;margin-left:0;
  width:18px;height:18px;color:var(--mc-muted,#64748b);pointer-events:none;
}
.chhachh-create-pane .vote-challenge-compose .vote-player-search>input,
.chhachh-create-pane .vote-challenge-compose .vote-challenge-line-field>input {
  grid-row:2;grid-column:2;min-width:0;width:100%;
  min-height:49px;height:49px;box-sizing:border-box;
  margin:0;padding:10px 12px;
  font-size:16px;line-height:1.3;
  color:var(--mc-text,#172334);background:var(--mc-card-material,#fff);
  border:1px solid var(--mc-border,#dfe4e9);border-radius:12px;
  outline-offset:2px;
}
.chhachh-create-pane .vote-player-search>input:focus-visible,
.chhachh-create-pane .vote-challenge-line-field>input:focus-visible,
.chhachh-create-pane .vote-challenge-quick-controls select:focus-visible {
  outline:2px solid var(--mc-primary,#00F2FF);
}
.chhachh-create-pane .vote-player-search>input::placeholder,
.chhachh-create-pane .vote-challenge-line-field>input::placeholder {
  font-size:13px;color:var(--mc-muted,#667085);opacity:.85;
}
.chhachh-create-pane .vote-opponent-hint {
  display:block;font-size:11px;line-height:1.45;color:var(--mc-muted,#667085);
}
.chhachh-create-pane .vote-line-counter {
  grid-column:2;grid-row:3;justify-self:end;margin:0;
  font-size:11px;line-height:1.2;color:var(--mc-muted,#667085);
}
.chhachh-create-pane .vote-challenge-quick-controls {
  display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;
}
.chhachh-create-pane .vote-challenge-quick-controls .vote-challenge-field {
  display:grid;grid-template-columns:18px minmax(0,1fr);grid-template-rows:auto 32px;
  align-items:center;gap:2px 5px;min-width:0;
  margin:0;padding:10px 9px 8px;border:1px solid var(--mc-border,#dfe4e9);
  border-radius:12px;background:var(--mc-input-material,#f7f9fc);
}
.chhachh-create-pane .vote-challenge-quick-controls .vote-field-title {
  grid-column:1/-1;grid-row:1;min-width:0;
  font-size:11px;font-weight:750;color:var(--mc-muted,#667085);
}
.chhachh-create-pane .vote-challenge-quick-controls .mc-outline-icon {
  grid-column:1;grid-row:2;width:17px;height:17px;color:var(--mc-text,#172334);
}
.chhachh-create-pane .vote-challenge-quick-controls select,
.chhachh-create-pane .vote-challenge-form .vote-challenge-quick-controls select {
  grid-column:2;grid-row:2;min-width:0;width:100%;max-width:100%;
  height:32px;min-height:32px;padding:1px 2px;margin:0;
  border:0;border-radius:4px;background:transparent;
  font-size:12px;font-weight:650;color:var(--mc-text,#172334);
}
.chhachh-create-pane .vote-challenge-send {
  position:sticky;bottom:0;z-index:2;
  width:100%;min-height:49px;margin:0;
  border-radius:12px;font-size:14px;font-weight:800;
  box-shadow:0 -5px 0 var(--mc-card-material,#fff),0 4px 10px rgba(8,35,43,.06);
}
@media (max-width:600px) {
  .chhachh-create-pane #announcementComposer {padding:4px 0;}
  .post-composer-sheet:has(.chhachh-create-pane [data-vote-mode]) {
    max-height:min(92dvh,780px);overflow-y:auto;
  }
}
@media (max-width:365px) {
  .chhachh-create-pane .vote-mode-button {font-size:11px;gap:4px;}
  .chhachh-create-pane .vote-challenge-quick-controls {gap:7px;}
  .chhachh-create-pane .vote-challenge-quick-controls {grid-template-columns:1fr;}
  .chhachh-create-pane .vote-challenge-quick-controls .vote-challenge-field {padding:8px 11px;}
}

.post-composer-sheet>.composer {
  box-sizing: border-box;
  min-width: 0;
  margin: 0;
  padding: 0;
  border: 0;
  background: transparent;
  box-shadow: none;
}


.post-composer-sheet .composer-main {
  min-width: 0;
}


.post-composer-sheet .composer-main textarea {
  display: block;
  box-sizing: border-box;
  width: 100%;
  height: 114px;
  min-height: 114px;
  max-height: 160px;
  padding: 13px 14px;
  margin: 0;
  background: var(--mc-input-bg,#f7f8fa);
  border: 1px solid var(--mc-border,#dfe4e9);
  border-radius: 12px;
  resize: vertical;
  overflow-wrap: anywhere;
  font-size: 14px;
  line-height: 1.5;
}


/* The existing Post composer owns selected-media previews and removal. */
.composer-selected-media[hidden] {
  display: none;
}

.post-composer-sheet .composer-selected-media {
  display: grid;
  gap: 9px;
  margin: 12px 0 2px;
  padding: 12px;
  background: var(--mc-input-bg,#f7f8fa);
  border: 1px solid var(--mc-border,#dfe4e9);
  border-radius: 14px;
}

.composer-media-selection-head {
  display: flex;
  align-items: baseline;
  justify-content: space-between;
  gap: 10px;
  color: var(--mc-text,#101828);
  font-size: 13px;
}

.composer-media-selection-head small {
  font-size: 11px;
  color: var(--mc-muted,#667085);
}

.composer-media-selection-item {
  display: flex;
  align-items: center;
  gap: 10px;
  min-width: 0;
  padding: 8px;
  background: var(--mc-card-material,#fff);
  border: 1px solid var(--mc-border,#dfe4e9);
  border-radius: 12px;
}

.composer-media-thumbnail {
  width: 68px;
  height: 64px;
  flex: 0 0 68px;
  object-fit: cover;
  border-radius: 9px;
  background: var(--mc-input-bg,#f7f8fa);
}

.composer-media-selection-info {
  display: grid;
  gap: 4px;
  min-width: 0;
  flex: 1;
}

.composer-media-selection-info b {
  font-size: 12px;
  line-height: 1.35;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.composer-media-selection-info small {
  font-size: 11px;
  color: var(--mc-muted,#667085);
}

.post-composer-sheet .composer-media-remove {
  flex: 0 0 auto;
  min-width: 0;
  padding: 8px 9px;
  font-size: 11px;
  border: 1px solid var(--mc-border,#dfe4e9);
  background: var(--mc-card-material,#fff);
  color: var(--mc-text,#101828);
}

.post-composer-sheet .composer-post-btn:disabled {
  opacity: .65;
  cursor: wait;
}

.post-composer-sheet .composer-tools {
  display: grid;
  grid-template-columns: minmax(0,1.18fr) minmax(0,.72fr) minmax(0,.8fr) minmax(0,1.34fr);
  align-items: center;
  gap: 4px;
  margin: 11px 0 12px;
  min-width: 0;
}



.post-composer-sheet .composer-tools:has([data-tool="checkin"]) {
  grid-template-columns: minmax(0,1.18fr) repeat(3,minmax(0,.8fr)) minmax(0,1.2fr);
}

.post-composer-sheet .composer .mc-tool {
  box-sizing: border-box;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  gap: 5px;
  width: 100%;
  min-width: 0;
  min-height: 60px;
  height: auto;
  padding: 6px 1px;
  margin: 0;
  background: transparent;
  color: var(--mc-text,#000);
  border: 0;
  border-radius: 8px;
  box-shadow: none;
  font-size: 12px;
  font-weight: 600;
  text-align: center;
}


.post-composer-sheet .composer .mc-tool:focus-visible,
.post-composer-sheet .composer-audience-trigger:focus-visible,
.post-composer-sheet .composer-audience-option:focus-visible {
  outline: 2px solid currentColor;
  outline-offset: 2px;
}


body.flat-theme .post-composer-sheet .composer .mc-tool svg.mc-outline-icon {
  display: block;
  width: 24px!important;
  height: 24px!important;
  min-width: 24px;
  flex: 0 0 24px;
}


.post-composer-sheet .composer .mc-tool span:last-child {
  display: block;
  max-width: 100%;
  min-width: 0;
  font-size: clamp(9px,2.7vw,11px)!important;
  font-weight: 650;
  line-height: 1.2;
  white-space: normal;
  overflow: visible;
  text-overflow: clip;
  overflow-wrap: normal;
  text-align: center;
}


.post-composer-sheet .composer-audience-tool {
  box-sizing: border-box;
  position: relative;
  display: flex;
  align-items: center;
  justify-content: center;
  width: 100%;
  min-width: 0;
  min-height: 60px;
  padding: 3px 0;
  background: transparent;
}


.post-composer-sheet .composer-audience-trigger {
  box-sizing: border-box;
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 3px;
  width: 100%;
  min-width: 0;
  min-height: 36px;
  padding: 5px 4px;
  margin: 0;
  background: var(--mc-input-bg,#f7f8fa);
  color: var(--mc-text,#101820);
  border: 1px solid var(--mc-border,#dfe4e9);
  border-radius: 18px;
  box-shadow: none;
  font-size: clamp(10px,2.6vw,12px);
  font-weight: 650;
  white-space: nowrap;
  cursor: pointer;
}


.post-composer-sheet .composer-audience-trigger svg.mc-outline-icon {
  box-sizing: border-box;
  width: 15px!important;
  height: 15px!important;
  min-width: 15px!important;
  flex: 0 0 15px;
}


.post-composer-sheet .composer-audience-text {
  display: block;
  min-width: 0;
  overflow: hidden;
  text-overflow: ellipsis;
}


@media(max-width:350px) {
  .post-composer-sheet .composer-audience-trigger>svg.mc-outline-icon {
  display: none;
}
}


.post-composer-sheet .composer-audience-chevron {
  display: block;
  width: 6px;
  height: 6px;
  flex: 0 0 6px;
  border-right: 1.7px solid currentColor;
  border-bottom: 1.7px solid currentColor;
  transform: translateY(-2px) rotate(45deg);
}


.post-composer-sheet .composer-audience-menu {
  box-sizing: border-box;
  position: absolute;
  bottom: calc(100% + 7px);
  right: 0;
  z-index: 30;
  width: 205px;
  max-width: min(240px,calc(100vw - 34px));
  padding: 7px;
  border: 1px solid var(--mc-popup-border);
  border-radius: var(--mc-popup-radius);
  background: var(--mc-popup-paper);
  color: var(--mc-popup-ink);
  box-shadow: 0 10px 26px rgba(15,28,39,.12);
}


.post-composer-sheet .composer-audience-menu[hidden] {
  display: none;
}


.post-composer-sheet .composer-audience-menu-title {
  display: block;
  padding: 5px 8px 8px;
  color: var(--mc-muted,#5a6570);
  font-size: 11px;
  font-weight: 650;
}


.post-composer-sheet .composer-audience-option {
  box-sizing: border-box;
  display: flex;
  align-items: center;
  gap: 9px;
  width: 100%;
  min-height: 48px;
  padding: 8px;
  margin: 0;
  border: 0;
  border-radius: 8px;
  background: transparent;
  color: inherit;
  text-align: left;
  cursor: pointer;
}


.post-composer-sheet .composer-audience-option[aria-checked="true"] {
  background: var(--mc-input-bg,#f7f8fa);
}


.post-composer-sheet .composer-audience-option>svg.mc-outline-icon {
  width: 20px;
  height: 20px;
  flex: 0 0 20px;
}


.post-composer-sheet .composer-audience-option>span:nth-child(2) {
  display: grid;
  gap: 2px;
  flex: 1;
  min-width: 0;
}


.post-composer-sheet .composer-audience-option b {
  font-size: 13px;
  line-height: 1.25;
}


.post-composer-sheet .composer-audience-option small {
  font-size: 10px;
  color: var(--mc-muted,#5a6570);
  line-height: 1.3;
}


.post-composer-sheet .audience-choice-check {
  display: none;
}


.post-composer-sheet .composer-audience-option[aria-checked="true"] .audience-choice-check {
  display: block;
}


.post-composer-sheet .audience-choice-check svg.mc-outline-icon {
  width: 15px;
  height: 15px;
}


.post-composer-sheet .composer-extra-panels {
  display: block;
  margin: 0;
}


.post-composer-sheet .composer-extra-panel {
  display: grid;
  gap: 5px;
  padding: 9px;
  margin: 2px 0 10px;
  border: 1px solid var(--mc-border,#dfe4e9);
  border-radius: 10px;
  background: var(--mc-card-material,#fff);
}


.post-composer-sheet .composer-extra-panel[hidden] {
  display: none;
}



/* At… places must be selected from real search results, not typed as final values. */
.mc-checkin-picker { display:grid; gap:6px; min-width:0; }
.mc-checkin-location-row { display:flex; align-items:center; justify-content:space-between; flex-wrap:wrap; gap:8px; }
.mc-checkin-locate { display:inline-flex; align-items:center; justify-content:center; gap:7px; min-height:40px; padding:8px 12px; border:1px solid var(--mc-border,#dfe4e9); border-radius:11px; background:var(--mc-card-material,#fff); color:inherit; font:inherit; font-size:13px; font-weight:650; cursor:pointer; }
.mc-checkin-locate svg { display:block; width:17px; height:17px; flex:none; }
.mc-checkin-locate:disabled { opacity:.55; cursor:progress; }
.mc-checkin-nearby-label { font-size:12px; opacity:.72; }
.mc-checkin-search-wrap input:disabled { cursor:not-allowed; opacity:.65; }
.mc-checkin-search-wrap { display:grid; grid-template-columns:20px minmax(0,1fr); align-items:center; gap:11px; box-sizing:border-box; min-width:0; min-height:46px; padding:0 13px; border:1px solid var(--mc-border,#dfe4e9); border-radius:11px; background:var(--mc-card-material,#fff); color:inherit; }
.mc-checkin-search-wrap:focus-within { outline:2px solid var(--mc-accent,#1877f2); outline-offset:1px; }
.mc-checkin-search-wrap input { display:block; box-sizing:border-box; width:100%; min-width:0; min-height:44px; border:0; border-radius:0; outline:0; box-shadow:none; background:transparent; color:inherit; padding:8px 0; font:inherit; font-size:14px; text-overflow:ellipsis; }
.mc-checkin-search-wrap input:focus { outline:none; box-shadow:none; }
.mc-checkin-search-icon { display:flex; align-items:center; justify-content:center; position:static; width:20px; height:20px; min-width:0; min-height:0; pointer-events:none; }
.mc-checkin-search-icon svg { display:block; width:20px; height:20px; max-width:20px; max-height:20px; flex:none; }
.mc-checkin-results { border:1px solid var(--mc-border,#dfe4e9); border-radius:10px; background:var(--mc-card-material,#fff); max-height:min(120px,20dvh); overflow:auto; overscroll-behavior:contain; -webkit-overflow-scrolling:touch; }
.mc-checkin-results[hidden],.mc-checkin-selected[hidden] { display:none; }
.mc-checkin-result { display:flex; flex-direction:column; width:100%; align-items:flex-start; text-align:left; gap:1px; padding:7px 10px; border:0; border-bottom:1px solid var(--mc-border,#e8ebef); background:transparent; color:inherit; font:inherit; cursor:pointer; }
.mc-checkin-result:last-child { border-bottom:0; }
.mc-checkin-result:focus-visible,.mc-checkin-result:hover { background:var(--mc-selected-bg,#f3f6fb); outline:2px solid var(--mc-accent,#226ac3); outline-offset:-2px; }
.mc-checkin-result strong { font-size:12px; font-weight:650; line-height:1.25; }
.mc-checkin-result small { opacity:.7; line-height:1.2; font-size:10.5px; }
.mc-checkin-selected { display:flex; align-items:center; gap:8px; justify-content:space-between; min-width:0; border-radius:11px; padding:10px; background:var(--mc-selected-bg,#f3f6fb); }
.mc-checkin-selected>span { display:flex; align-items:center; gap:6px; font-size:13px; min-width:0; overflow-wrap:anywhere; }
.mc-checkin-selected b { font-weight:600; }
.mc-checkin-clear { border:1px solid var(--mc-border,#dfe4e9); border-radius:8px; background:var(--mc-card-material,#fff); color:inherit; padding:7px 9px; font:inherit; cursor:pointer; flex-shrink:0; }
.mc-checkin-status { margin:0; font-size:11px; opacity:.75; line-height:1.3; }
.mc-checkin-status:empty { display:none; }
.post-edit-checkin { display:grid; gap:8px; }


.post-composer-sheet .composer-submit-row {
  display: block;
  width: 100%;
  margin: 0;
}


.post-composer-sheet .composer-post-btn {
  box-sizing: border-box;
  width: 100%;
  min-height: 52px;
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 10px;
  padding: 10px 14px;
  margin: 0;
  border-radius: 12px;
  font-size: 15px;
  font-weight: 750;
}


.post-composer-sheet .composer-post-btn svg.mc-outline-icon {
  width: 23px;
  height: 23px;
}


@media(max-width:600px) {
  .post-composer-modal {
  padding: 9px;
}

  .post-composer-sheet {
  max-height: min(84dvh,740px);
  padding: 14px;
  border-radius: 17px;
}
}

/* ===== header-navigation-icons ===== */
body.flat-theme .top nav>a[data-nav-key="home"] .nav-svgicon {
  filter: none;
}


body.flat-theme .top nav>a[data-nav-key="people"] .nav-svgicon {
  filter: none;
}


body.flat-theme .top nav>a[data-nav-key="shop"] .nav-svgicon {
  filter: none;
}


body.flat-theme .top nav>a[data-nav-key="messages"] .nav-svgicon {
  filter: none;
}


body.flat-theme .top nav>a[data-nav-key="post"] .post-plus-nav-icon {
  margin-top: -9px !important;
  overflow: visible !important;
  filter: none;
}


body.flat-theme .top nav>a[data-nav-key="post"] .navlabel {
  font-weight: 1000 !important;
}

/* ===== Theme Studio · native Header/Footer layout and independent icon instances ===== */
/* Custom-layout selectors are scoped to the Theme Studio runtime layout. */
body.flat-theme .top.mc-custom-layout {
  display: flex !important;
  flex-direction: column !important;
  align-items: stretch !important;
  gap: var(--mc-header-effective-row-gap,var(--mc-header-row-gap,7px)) !important;
}


body.flat-theme .top.mc-custom-layout>.mc-layout-row {
  display: flex;
  flex-shrink: 0;
  flex-flow: row wrap;
  align-items: center;
  justify-content: var(--mc-header-row-align,center);
  gap: var(--mc-header-item-gap,7px);
  width: 100%;
  min-width: 0;
}


html[data-mc-header-align="start"] body.flat-theme .top.mc-custom-layout>.mc-layout-row {
  --mc-header-row-align: flex-start;
}


html[data-mc-header-align="center"] body.flat-theme .top.mc-custom-layout>.mc-layout-row {
  --mc-header-row-align: center;
}


html[data-mc-header-align="space-between"] body.flat-theme .top.mc-custom-layout>.mc-layout-row {
  --mc-header-row-align: space-between;
}


body.flat-theme .top.mc-custom-layout>.mc-layout-row[data-mc-layout-row="primary"] {
  height: auto;
  min-height: var(--mc-header-row1-height,58px);
  box-sizing: border-box;
}

body.flat-theme .top.mc-custom-layout>.mc-layout-row[data-mc-layout-row="utility"] {
  height: auto;
  min-height: var(--mc-header-row2-height,78px);
  box-sizing: border-box;
}

body.flat-theme .top.mc-custom-layout>.mc-layout-row[data-mc-layout-row="navigation"] {
  height: auto;
  min-height: var(--mc-header-row3-height,68px);
  box-sizing: border-box;
}

html[data-mc-header-overflow="scroll"] body.flat-theme .top.mc-custom-layout>.mc-layout-row {
  flex-wrap: nowrap;
  overflow-x: auto;
  overscroll-behavior-inline: contain;
  justify-content: flex-start;
  scrollbar-width: thin;
}


body.flat-theme .top.mc-custom-layout>.mc-layout-row[hidden],
body.flat-theme .top.mc-custom-layout>.mc-header-hidden,
body.flat-theme .top.mc-custom-layout>#topNav,
body.flat-theme .top.mc-custom-layout>.mc-weather-header-row:empty,
body.flat-theme .top.mc-custom-layout>.top-actions:empty {
  display: none !important;
}


body.flat-theme .top.mc-custom-layout [data-mc-layout-row="primary"] .brand {
  flex: 1 1 145px !important;
  width: auto !important;
  min-width: 100px !important;
  max-width: 100%;
}

/* A centered Logo must never sit on top of adjacent Header actions. Keep the
   canonical Theme Studio order but reserve actual space for Menu/Bell/Search.
   Unlike absolute positioning, this flex slot works on both phone and desktop
   and does not undo individually saved finger-move settings. */
body.flat-theme:not(.mc-live-header-editing) .top.mc-custom-layout:not(.mc-free-grid) > .mc-layout-row[data-mc-layout-row="primary"][data-mc-centered-brand="1"] {
  justify-content: space-between;
  flex-wrap: nowrap;
}
body.flat-theme:not(.mc-live-header-editing) .top.mc-custom-layout:not(.mc-free-grid) > .mc-layout-row[data-mc-centered-brand="1"] > .menu-toggle:first-child {
  margin-inline-end: 0;
  flex: 0 0 auto;
}
body.flat-theme:not(.mc-live-header-editing) .top.mc-custom-layout:not(.mc-free-grid) > .mc-layout-row[data-mc-centered-brand="1"] > .brand:nth-child(2) {
  position: relative !important;
  inset-inline-start: auto;
  transform: none;
  flex: 1 1 0 !important;
  width: auto !important;
  max-width: 100%;
  min-width: 0 !important;
}
body.flat-theme:not(.mc-live-header-editing) .top.mc-custom-layout:not(.mc-free-grid) > .mc-layout-row[data-mc-centered-brand="1"] > .brand:nth-child(2) .brand-copy {
  max-width: 100%;
}
body.flat-theme:not(.mc-live-header-editing) .top.mc-custom-layout:not(.mc-free-grid) > .mc-layout-row[data-mc-centered-brand="1"] > .brand:nth-child(2) #siteBrandTagline {
  max-width: 100%;
  overflow: hidden;
  text-overflow: ellipsis;
}
/* Constrain the actual Logo to its available flex slot. Its saved size slider
   is not changed; the display naturally fits smaller screens. */
body.flat-theme .top .brand .site-brand-line {
  max-width: 100%;
  min-width: 0;
}
body.flat-theme .top .brand #siteBrandIcon {
  max-width: min(100%,var(--mc-logo-guard-max-width,600px)) !important;
  flex-shrink: 1;
}
/* When Theme Studio has separately dragged the Logo, use a visual safe-area
   adjustment without overwriting or resetting the user's saved offset. */
body.flat-theme:not(.mc-live-header-editing) .top #siteBrandIcon {
  translate: var(--mc-logo-guard-x,0px) 0;
}


body.flat-theme .top.mc-custom-layout .mc-layout-row .menu-toggle,
body.flat-theme .top.mc-custom-layout .mc-layout-row .top-bell,
body.flat-theme .top.mc-custom-layout .mc-layout-row .top-profile-link {
  flex: 0 0 auto;
  grid-area: auto !important;
}


body.flat-theme .top.mc-custom-layout .mc-layout-row [data-nav-key] {
  flex: 1 1 max(var(--mc-mobile-item-min,48px),57px);
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  gap: 3px;
  min-width: 48px;
  max-width: 180px;
  padding: 5px 3px;
  text-align: center;
}


body.flat-theme .top.mc-custom-layout .mc-layout-row>a#mcVotingHeaderButton,
body.flat-theme .top.mc-custom-layout .mc-layout-row>button#mcWeatherHeaderButton,
body.flat-theme .top.mc-custom-layout .mc-layout-row>a#mcAnnouncementHeaderButton {
  position: relative;
  display: flex;
  flex: 1 1 68px;
  max-width: 200px;
  min-width: 60px;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  gap: var(--mc-header-shortcut-gap,4px);
  padding: var(--mc-header-shortcut-pad-y,7px) 5px;
  text-align: center;
}


body.flat-theme .top.mc-custom-layout .mc-layout-row>#mcWeatherHeaderButton {
  flex: 1 1 68px;
  width: auto;
  min-width: 60px;
  max-width: 200px;
}


body.flat-theme .top.mc-custom-layout .mc-layout-row .header-search.mc-search-icon-only {
  grid-area: auto !important;
}


/* Search card and icon-only are the same native form, so live search/filter bindings remain single-source. */
body.flat-theme .header-search.mc-search-icon-only:not(.mc-search-open) {
  display: flex !important;
  justify-content: center !important;
  align-items: center !important;
  padding: 5px !important;
  border-radius: var(--mc-hf-radius,12px) !important;
}


body.flat-theme .header-search.mc-search-icon-only:not(.mc-search-open)>#mcSearchToggle {
  display: grid;
  place-items: center;
  min-width: 38px;
  min-height: 38px;
  padding: 3px;
}


body.flat-theme .header-search.mc-search-icon-only.mc-search-open {
  width: auto !important;
  flex: 0 0 auto;
  grid-area: auto !important;
}


body.flat-theme .top:not(.mc-custom-layout)>.header-search.mc-search-icon-only {
  justify-self: start;
}


body.flat-theme .header-search #mcSearchToggle {
  display: grid;
  place-items: center;
  border: 0;
  box-shadow: none;
  min-width: 36px;
  min-height: 36px;
  background: transparent;
}


/* Page names remain existing renderers. Color overrides are page scoped, not global labels. */
body.flat-theme .page-heading[data-page-theme-key]>h1 {
  color: var(--mc-page-title,#000000);
  font-family: var(--mc-page-title-font,inherit);
}


body.flat-theme .page-heading[data-page-theme-key]>p {
  color: var(--mc-page-tagline,#000000);
  font-family: var(--mc-page-tagline-font,inherit);
}


/* Drag-and-drop edits settings in the original Theme Builder, not in a second overlay. */
.theme-header-layout-editor {
  display: grid;
  grid-template-columns: minmax(0,1fr);
  gap: 11px;
  align-items: start;
}


.theme-layout-zone {
  background: var(--mc-input-material,#fff);
  border: 1px solid var(--mc-border,#dfe4e9);
  border-radius: 12px;
  min-width: 0;
  padding: 10px;
}


.theme-layout-drop {
  display: grid;
  gap: 6px;
  min-height: 50px;
  align-content: start;
}


.theme-layout-major-accordion,
.theme-option-accordion {
  min-width: 0;
  border: 1px solid var(--mc-border,#dfe4e9);
  border-radius: 12px;
  background: #fff;
  overflow: hidden;
}


.theme-layout-major-accordion {
  margin: 10px 0;
}


.theme-option-accordion {
  margin: 7px 0;
  background: color-mix(in srgb,#fff 96%,var(--mc-page-bg,#f4f6f8));
}


.theme-layout-major-accordion>summary,
.theme-option-accordion>summary {
  list-style: none;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 10px;
  cursor: pointer;
  font-weight: 850;
  color: #000000;
}


.theme-layout-major-accordion>summary {
  padding: 13px 14px;
  font-size: 14px;
}


.theme-option-accordion>summary {
  padding: 10px 11px;
  font-size: 12px;
}


.theme-layout-major-accordion>summary::-webkit-details-marker,
.theme-option-accordion>summary::-webkit-details-marker {
  display: none;
}


.theme-layout-major-accordion>summary>span:last-child,
.theme-option-accordion>summary>span:last-child {
  font-size: 17px;
  transition: transform .18s ease;
}


.theme-layout-major-accordion[open]>summary>span:last-child,
.theme-option-accordion[open]>summary>span:last-child {
  transform: rotate(180deg);
}


.theme-layout-major-accordion>.theme-layout-intro,
.theme-layout-major-accordion>.theme-header-layout-editor,
.theme-layout-major-accordion>.theme-row-settings,
.theme-layout-major-accordion>.theme-footer-settings,
.theme-option-accordion-body {
  padding: 0 12px 12px;
}


.theme-hf-item-style .theme-v97-grid {
  grid-template-columns: repeat(2,minmax(0,1fr));
}


.theme-hf-item-style .theme-v97-sliders {
  margin-top: 8px;
}


.theme-zone-accordion {
  padding: 0 !important;
}


.theme-zone-accordion>summary {
  list-style: none;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 10px;
  padding: 11px 12px;
  cursor: pointer;
  font-weight: 900;
  color: #000000;
}


.theme-zone-accordion>summary::-webkit-details-marker {
  display: none;
}


.theme-zone-accordion>summary>span:last-child {
  font-size: 16px;
  transition: transform .18s ease;
}


.theme-zone-accordion[open]>summary>span:last-child {
  transform: rotate(180deg);
}


.theme-zone-accordion>p,
.theme-zone-accordion>.theme-layout-drop {
  margin-left: 10px;
  margin-right: 10px;
}


.theme-zone-accordion>.theme-layout-drop {
  margin-bottom: 10px;
}


@media(max-width:560px) {
  .theme-hf-item-style .theme-v97-grid {
  grid-template-columns: 1fr;
}

  .theme-layout-major-accordion>summary {
  font-size: 13px;
}
}


.theme-layout-tile {
  display: grid;
  grid-template-columns: 32px minmax(0,1fr) auto;
  align-items: center;
  gap: 8px;
  min-width: 0;
  min-height: 50px;
  padding: 9px 10px;
  border: 1px solid var(--mc-border,#dfe4e9);
  border-radius: 10px;
  background: var(--mc-card-material,#fff);
}


.theme-layout-tile.is-dragging {
  outline: 2px solid var(--mc-active,#000000);
}


.theme-layout-tile>b {
  min-width: 0;
  font-size: 13px;
  overflow-wrap: anywhere;
}


.theme-layout-handle {
  display: grid;
  place-items: center;
  touch-action: none;
  user-select: none;
  flex: 0 0 28px;
  min-height: 32px;
  border: 1px solid var(--mc-border,#dfe4e9);
  border-radius: 7px;
  cursor: grab;
}


.theme-layout-tile>.theme-placement-select {
  min-width: 0;
  width: 122px;
  max-width: 100%;
  font-size: 12px;
  padding: 7px;
}


.theme-layout-hidden {
  background: var(--mc-page-bg,#f4f6f8);
}


/* Single-source ordered theme editor: component inputs are within their own original control row. */
.theme-ordered-builder .section-row {
  align-items: center;
}


.theme-control-finder {
  position: relative;
  display: grid;
  gap: 7px;
  margin: 10px 0 14px;
  max-width: 100%;
}


.theme-control-finder>label {
  font-size: 13px;
  color: var(--mc-text,#000);
}


.theme-control-finder input[type=search] {
  width: 100%;
  min-height: 44px;
  padding: 10px 12px;
  border: 1px solid var(--mc-border,#dfe4e9);
  border-radius: 12px;
  background: var(--mc-input,#fff);
  color: var(--mc-text,#000);
  font-size: 15px;
  box-sizing: border-box;
  outline-offset: 2px;
}


.theme-control-finder input[type=search]:focus-visible {
  outline: 2px solid var(--mc-accent,#06b6d4);
}


.theme-component-matches {
  display: grid;
  gap: 5px;
  max-height: 320px;
  overflow-y: auto;
  padding: 8px;
  border: 1px solid var(--mc-border,#dfe4e9);
  border-radius: 12px;
  background: var(--mc-card-bg,#fff);
}


.theme-component-matches[hidden] {
  display: none;
}


.theme-component-match {
  display: grid;
  gap: 2px;
  width: 100%;
  padding: 10px 12px;
  text-align: start;
  background: transparent;
  border: 1px solid var(--mc-border,#dfe4e9);
  border-radius: 9px;
  color: var(--mc-text,#000);
  cursor: pointer;
}


.theme-component-match small {
  font-size: 11px;
  opacity: .76;
}


.theme-component-match:focus-visible {
  outline: 2px solid var(--mc-accent,#06b6d4);
}


.search-vote-row {
  display: grid;
  gap: 4px;
  text-decoration: none;
  color: var(--mc-text,#000);
}


.search-vote-row small {
  color: var(--mc-muted,#667);
}


.theme-step-nav {
  display: flex;
  gap: 6px;
  overflow-x: auto;
  overscroll-behavior-inline: contain;
  scrollbar-width: thin;
  padding: 7px;
  touch-action: pan-x pan-y;
}


.theme-step-nav a {
  flex: 0 0 auto;
  display: inline-flex;
  align-items: center;
  min-height: 36px;
  padding: 0 10px;
  border: 1px solid var(--mc-border,#dfe4e9);
  border-radius: 9px;
  color: var(--mc-text,#000000);
  font-weight: 800;
  font-size: 11px;
  text-decoration: none;
  background: var(--mc-card-material,#fff);
}


.theme-step-number {
  display: inline-grid;
  place-items: center;
  min-width: 26px;
  height: 26px;
  margin-inline-end: 8px;
  border: 1px solid var(--mc-border,#dfe4e9);
  border-radius: 8px;
  background: var(--mc-input-material,#f8fafe);
  font-size: 10px;
  font-weight: 800;
  font-variant-numeric: tabular-nums;
}


.theme-step-desc {
  font-size: 12px;
  font-weight: 500;
  line-height: 1.5;
  margin: 0 0 12px;
  color: var(--mc-muted,#000000);
}


.theme-layout-zone h4 {
  margin: 0 0 9px;
  font-size: 15px;
}


.theme-layout-zone>.muted {
  font-size: 12px;
  margin: -4px 0 11px;
}


.theme-tile-edit {
  grid-column: 1/-1;
  width: 100%;
  min-width: 0;
  border-top: 1px solid var(--mc-border,#dfe4e9);
}


.theme-tile-edit>summary {
  list-style: none;
  display: flex;
  justify-content: space-between;
  gap: 10px;
  padding: 11px 3px 4px;
  cursor: pointer;
  font-size: 12px;
  font-weight: 700;
}


.theme-tile-edit>summary::-webkit-details-marker {
  display: none;
}


.theme-tile-edit>summary span {
  font-size: 16px;
}


.theme-tile-edit-body {
  display: grid;
  gap: 10px;
  padding: 12px 0 3px;
  min-width: 0;
}


.theme-instance-colour,
.theme-instance-size {
  display: grid;
  gap: 4px;
  font-size: 11px;
  font-weight: 700;
  min-width: 0;
}


.theme-instance-colour input {
  cursor: pointer;
}


.theme-layout-tile .theme-instance-row {
  grid-template-columns: minmax(0,1fr) auto minmax(70px,90px) minmax(100px,1fr);
}


.theme-ordered-builder .theme-control-body>h3 {
  font-size: 14px;
  margin: 16px 0 8px;
}


.theme-ordered-builder .theme-control-body>.theme-instance-grid {
  margin: 10px 0;
}


.theme-page-editor {
  display: grid;
  grid-template-columns: repeat(auto-fit,minmax(min(100%,225px),1fr));
  gap: 9px;
}


.theme-page-editor fieldset {
  min-width: 0;
  border: 1px solid var(--mc-border,#dfe4e9);
  border-radius: 10px;
  padding: 10px;
  display: grid;
  gap: 8px;
}


.theme-page-editor legend {
  font-weight: 800;
}


.theme-page-editor label {
  display: grid;
  gap: 4px;
  font-size: 12px;
}


.theme-page-visibility {
  display: grid;
  gap: 7px;
  padding: 9px;
  border: 1px solid var(--mc-border,#dfe4e9);
  border-radius: 12px;
  background: color-mix(in srgb,var(--mc-card,#fff) 96%,var(--mc-page-bg,#fff));
}


.theme-page-visibility label {
  display: flex;
  align-items: center;
  gap: 9px;
  font-weight: 760;
  min-height: 30px;
}


.theme-page-visibility input[type=checkbox],
.theme-layout-visible input[type=checkbox] {
  appearance: none;
  -webkit-appearance: none;
  position: relative;
  flex: 0 0 40px;
  width: 40px!important;
  height: 22px!important;
  margin: 0;
  border: 1px solid #b8c2cc;
  border-radius: 999px;
  background: #e7ebef;
  cursor: pointer;
  transition: background .16s ease,border-color .16s ease;
}


.theme-page-visibility input[type=checkbox]::after,
.theme-layout-visible input[type=checkbox]::after,
.theme-eng-control-part input[type=checkbox]::after,
.theme-master-switch>input[type=checkbox]::after {
  content: "";
  position: absolute;
  left: 2px;
  top: 2px;
  width: 16px;
  height: 16px;
  border-radius: 50%;
  background: #fff;
  box-shadow: 0 1px 3px rgba(0,0,0,.22);
  transition: transform .16s ease;
}


.theme-page-visibility input[type=checkbox]:checked,
.theme-layout-visible input[type=checkbox]:checked,
.theme-eng-control-part input[type=checkbox]:checked,
.theme-master-switch>input[type=checkbox]:checked {
  background: #1683ff;
  border-color: #1683ff;
}


.theme-page-visibility input[type=checkbox]:checked::after,
.theme-layout-visible input[type=checkbox]:checked::after,
.theme-eng-control-part input[type=checkbox]:checked::after,
.theme-master-switch>input[type=checkbox]:checked::after {
  transform: translateX(18px);
}


.theme-layout-visible {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  font-size: 12px;
  font-weight: 800;
  white-space: nowrap;
}


.theme-instance-grid {
  display: grid;
  grid-template-columns: repeat(auto-fit,minmax(min(100%,265px),1fr));
  gap: 7px;
}


/* Theme Builder control owners: one card per item. */
.theme-colour-line {
  display: flex;
  align-items: center;
  gap: 9px;
  flex-wrap: wrap;
  min-width: 0;
}


.theme-colour-line input[type=color] {
  flex: 0 0 50px;
  width: 50px !important;
  min-width: 50px !important;
  max-width: 50px !important;
  height: 40px;
  min-height: 40px;
  padding: 3px;
  border: 1px solid #cbd9ed;
  border-radius: 10px;
  cursor: pointer;
}


.theme-hex-code {
  flex: 0 1 96px;
  width: 96px !important;
  min-width: 86px !important;
  max-width: 110px !important;
  height: 40px !important;
  min-height: 40px !important;
  padding: 0 10px !important;
  border: 1px solid var(--mc-border,#cbd9ed) !important;
  border-radius: 10px !important;
  background: var(--mc-input-material,#fff) !important;
  color: var(--mc-text,#000000) !important;
  font: 700 12px ui-monospace,SFMono-Regular,Menlo,Consolas,monospace !important;
  letter-spacing: .02em;
  text-transform: uppercase;
  box-sizing: border-box;
}


.theme-hex-code:focus {
  outline: 2px solid color-mix(in srgb,var(--mc-button,#1683ff) 28%,transparent);
  outline-offset: 1px;
  border-color: var(--mc-button,#1683ff) !important;
}


.theme-hex-code.is-invalid {
  border-color: #d83b3b !important;
  box-shadow: 0 0 0 2px rgba(216,59,59,.10) !important;
}


.theme-hex-code:disabled {
  opacity: .55;
  cursor: not-allowed;
}


.theme-colour-preset>.theme-colour-line>.theme-hex-code {
  order: 2;
}


.theme-colour-preset>.theme-colour-line>.theme-match-bg {
  order: 3;
}


.theme-match-bg {
  border: 1px solid #9dcdf6;
  background: #eaf4ff;
  color: #000000;
  border-radius: 10px;
  padding: 7px 10px;
  font-size: 11px;
  min-height: 38px;
  font-weight: 750;
  flex: 0 1 auto;
  max-width: 100%;
}


.theme-match-bg[aria-pressed=true] {
  background: #d6edff;
  border-color: #1683ff;
}


.theme-colour-strength {
  display: grid;
  grid-template-columns: max-content minmax(0,1fr) max-content;
  align-items: center;
  gap: 9px;
  min-width: 0;
  color: var(--mc-muted,#000000);
  font-size: 11px;
  font-weight: 700;
}


.theme-colour-strength>span {
  white-space: nowrap;
  word-break: keep-all;
  overflow-wrap: normal;
}


.theme-colour-strength input {
  min-width: 0;
  width: 100% !important;
  min-height: 27px !important;
  padding: 0 !important;
  margin: 0 !important;
  accent-color: var(--mc-accent,#1683ff);
}


.theme-inline-tone {
  grid-column: 1/-1;
  max-width: 100%;
}


.theme-font-field {
  display: grid;
  gap: 9px;
  min-width: 0;
}


.theme-font-field>label {
  font-size: 12px;
  font-weight: 800;
}


.theme-font-native-value {
  position: absolute!important;
  width: 1px!important;
  height: 1px!important;
  opacity: 0!important;
  pointer-events: none!important;
  clip-path: inset(50%)!important;
}


.theme-font-selected {
  display: grid;
  gap: 3px;
  padding: 11px 12px;
  border: 1px solid #cfddea;
  border-radius: 12px;
  background: #fff;
  min-width: 0;
}


.theme-font-selected>span {
  display: block;
  font-size: 22px;
  line-height: 1.35;
  overflow-wrap: anywhere;
}


.theme-font-selected>small {
  font-size: 11px;
  color: #000;
}


.theme-font-picker {
  border: 1px solid #d7e6f2;
  border-radius: 12px;
  background: #fff;
  min-width: 0;
}


.theme-font-picker>summary {
  padding: 12px;
  font-weight: 850;
  cursor: pointer;
  list-style: none;
}


.theme-font-picker-body {
  display: grid;
  gap: 8px;
  padding: 0 9px 10px;
  min-width: 0;
}


.theme-font-picker-group {
  border: 1px solid #e0e8ef;
  border-radius: 11px;
  min-width: 0;
}


.theme-font-picker-group>summary {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 10px;
  padding: 11px;
  cursor: pointer;
  list-style: none;
  font-weight: 800;
}


.theme-font-picker-group>summary small {
  font-size: 10px;
  font-weight: 650;
  color: #000;
}


.theme-font-choice-grid {
  display: grid;
  grid-template-columns: 1fr;
  gap: 7px;
  padding: 0 8px 9px;
  min-width: 0;
}


.theme-font-choice {
  display: grid;
  gap: 4px;
  width: 100%;
  min-width: 0;
  padding: 10px 11px;
  border: 1px solid #d8e4ee;
  border-radius: 10px;
  background: #fff;
  text-align: left;
  cursor: pointer;
}


.theme-font-choice>span {
  display: block;
  font-size: 21px;
  line-height: 1.4;
  overflow-wrap: anywhere;
}


.theme-font-choice>small {
  display: block;
  font-size: 10px;
  color: #000;
}


.theme-font-choice.active {
  border-color: #1683ff;
  box-shadow: 0 0 0 2px #1683ff22;
  background: #f5faff;
}


.theme-font-sample {
  display: block;
  max-width: 100%;
  padding: 10px;
  border: 1px solid var(--mc-border,#dfe4e9);
  border-radius: 11px;
  background: var(--mc-input-material,#f7fbff);
  font-size: 20px;
  min-height: 54px;
  overflow-wrap: anywhere;
  line-height: 1.6;
}


.theme-font-sample.loading {
  opacity: .74;
}


@media(min-width:640px) {
  .theme-font-choice-grid {
  grid-template-columns: repeat(2,minmax(0,1fr));
}
}


.theme-logo-natural-controls>small {
  line-height: 1.45;
  overflow-wrap: anywhere;
}


.theme-ordered-builder .theme-control-body * {
  max-width: 100%;
}


.theme-ordered-builder .theme-control-body input[type=range] {
  box-sizing: border-box;
}


.theme-card-look-field {
  margin-top: 8px;
}


.theme-card-look-field select {
  width: 100%;
}


.theme-menu-editor {
  display: grid;
  gap: 12px;
}


.theme-menu-item-card {
  display: grid;
  gap: 10px;
  padding: 12px;
  border: 1px solid var(--mc-border,#dfe4e9);
  border-radius: 14px;
  background: var(--mc-card-material,#fff);
}


.theme-menu-item-head {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
  flex-wrap: wrap;
}


.theme-menu-item-head b {
  font-size: 15px;
}


.theme-menu-show {
  display: flex;
  align-items: center;
  gap: 8px;
  font-size: 13px;
}


.theme-menu-item-move {
  display: flex;
  gap: 8px;
}


.theme-menu-item-move button {
  width: 40px;
  height: 36px;
  border: 1px solid var(--mc-border,#dfe4e9);
  border-radius: 10px;
  background: #f5f7fb;
}


.theme-menu-item-card .theme-instance-row {
  grid-template-columns: minmax(0,1fr) auto minmax(88px,112px) minmax(130px,1fr);
}


body.flat-theme .theme-order-row label span {
  white-space: normal;
  overflow: visible;
  text-overflow: clip;
}


.theme-instance-row {
  display: grid;
  grid-template-columns: minmax(0,1fr) auto minmax(90px,1fr) minmax(90px,1fr);
  align-items: center;
  gap: 9px;
  padding: 12px;
  border: 1px solid var(--mc-border,#dfe4e9);
  border-radius: 12px;
  min-width: 0;
}


.theme-instance-row>b {
  font-size: 12px;
  min-width: 0;
}


.theme-instance-row input[type=range] {
  width: 100%;
  min-width: 0;
}


.theme-instance-row input[type=color] {
  width: 54px !important;
  max-width: 54px !important;
  min-width: 54px !important;
  height: 38px;
  padding: 2px;
}


.theme-instance-row output {
  font-size: 11px;
}


@media(max-width:650px) {
  .theme-instance-row,
  .theme-layout-tile .theme-instance-row,
  .theme-menu-item-card .theme-instance-row {
  grid-template-columns: minmax(0,1fr) auto;
  gap: 11px;
}

  .theme-instance-row>b {
  font-size: 14px;
  line-height: 1.3;
  overflow-wrap: normal;
  word-break: normal;
}

  .theme-instance-colour,
  .theme-instance-size,
  .theme-menu-item-card .theme-instance-colour,
  .theme-menu-item-card .theme-instance-size {
  grid-column: 1/-1;
  display: grid;
  grid-template-columns: minmax(0,1fr);
  grid-template-rows: auto auto;
  align-items: stretch;
  gap: 7px;
  min-width: 0;
  width: 100%;
}

  .theme-instance-colour>span,
  .theme-instance-size>span,
  .theme-menu-item-card .theme-instance-colour>span,
  .theme-menu-item-card .theme-instance-size>span {
  display: flex;
  align-items: baseline;
  justify-content: space-between;
  gap: 8px;
  min-width: 0;
  white-space: normal;
  word-break: normal;
  overflow-wrap: normal;
}

  .theme-instance-size input,
  .theme-menu-item-card .theme-instance-size input {
  width: 100%;
  max-width: none;
  min-width: 0;
}

  .theme-layout-zone {
  padding: 10px;
}

  .theme-step-nav {
  margin-inline: 0;
}

  .theme-control-body {
  padding: 12px;
}

  .theme-v97-grid,
  .theme-v97-sliders,
  .theme-header-card-grid {
  grid-template-columns: minmax(0,1fr);
}

  .theme-layout-tile {
  grid-template-columns: 28px minmax(0,1fr);
}

  .theme-layout-tile>.theme-placement-select {
  grid-column: 2;
  justify-self: start;
}

  .theme-ordered-builder .section-row {
  flex-wrap: wrap;
}

  .theme-menu-item-card {
  padding: 10px;
}

  .theme-menu-item-head {
  align-items: flex-start;
}

  .theme-colour-line {
  justify-content: flex-start;
}

  .theme-icon-control-fields {
  grid-template-columns: minmax(0,1fr);
}

  .theme-icon-control-fields>* {
  min-width: 0;
}
}
















































.theme-row-settings,
.theme-footer-settings {
  margin-top: 12px;
  padding: 12px;
  border: 1px solid var(--mc-border,#dfe4e9);
  border-radius: 12px;
}


.theme-menu-card-style {
  display: grid;
  grid-template-columns: repeat(2,minmax(0,1fr));
  gap: 8px;
  margin-top: 9px;
  padding: 9px;
  border: 1px solid var(--mc-border,#dfe4e9);
  border-radius: 10px;
}


.theme-menu-card-style>label {
  display: grid;
  gap: 5px;
  font-size: 11px;
  font-weight: 700;
}


.theme-menu-card-style input[type="color"] {
  width: 100%;
  min-height: 38px;
}


.theme-menu-card-style input[type="range"] {
  width: 100%;
}


@media(max-width:620px) {

  .theme-menu-card-style {
  grid-template-columns: 1fr;
}
}


@media(max-width:390px) {
  body.flat-theme .top.mc-custom-layout>.mc-layout-row {
  gap: 5px;
}

  .theme-layout-tile>.theme-placement-select {
  width: 105px;
}
}

/* ===== Theme Studio · canonical layout ownership ===== */
body.flat-theme .side-menu-brand {
  display: block;
  margin: 0 48px 8px 0;
  padding: 4px 4px 8px;
  border: 0;
  border-radius: 0;
  background: transparent;
  color: var(--mc-menu-brand-text,#000000);
  min-width: 0;
}


body.flat-theme .side-menu-brand>div {
  min-width: 0;
  display: grid;
  gap: 2px;
}


body.flat-theme .side-menu-brand b {
  font-size: 18px;
  overflow-wrap: anywhere;
  color: var(--mc-menu-brand-text,#000000);
}


body.flat-theme .side-menu-brand small {
  font-size: 10px;
  color: var(--mc-menu-brand-tagline,var(--mc-muted,#000000));
  line-height: 1.25;
  overflow-wrap: anywhere;
}


body.flat-theme .side-menu-profile {
  display: grid;
  grid-template-columns: max-content minmax(0,1fr);
  align-items: center;
  gap: 11px;
  margin: 0 0 var(--mc-menu-section-gap,8px);
  padding: 6px 6px;
  min-height: 44px;
  border: 0;
  border-radius: 10px;
  background: transparent;
  box-shadow: none;
  min-width: 0;
  color: var(--mc-menu-profile-name,#000000);
}


body.flat-theme .side-menu-profile:hover {
  background: var(--mc-active-tint,#f9e8f6);
}


body.flat-theme .side-menu-profile-avatar {
  width: var(--mc-menu-profile-photo,44px);
  height: var(--mc-menu-profile-photo,44px);
  flex: 0 0 var(--mc-menu-profile-photo,44px);
  border-radius: 50%;
  object-fit: cover;
}


body.flat-theme .side-menu-profile>span {
  display: grid;
  gap: 2px;
  min-width: 0;
}


body.flat-theme .side-menu-profile b {
  font-size: 14px;
  line-height: 1.2;
  overflow-wrap: anywhere;
  color: var(--mc-menu-profile-name,#000000);
}


body.flat-theme .side-menu-profile small {
  font-size: 11px;
  color: var(--mc-menu-profile-username,var(--mc-muted,#000000));
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}


body.flat-theme .side-menu-links {
  display: grid;
  gap: var(--mc-menu-item-gap,3px);
  align-content: start;
  min-width: 0;
}


body.flat-theme .side-menu-links>a>span:not(.navbadge) {
  min-width: 0;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}


body.flat-theme #sideMenu .side-menu-links>a>.navbadge {
  position: static;
  top: auto;
  right: auto;
  justify-self: end;
  flex: 0 0 auto;
  margin-inline-start: auto;
}


/* One source-owned footer silhouette. The background alone is cut away;
   navigation items and their Theme Studio icon styling remain untouched. */
body.flat-theme .site-footer-nav {
  --mc-footer-center-cut: clamp(31px,calc(var(--mc-footer-height,66px) * .61),48px);
  --mc-footer-center-rise: clamp(13px,calc(var(--mc-footer-height,66px) * .29),26px);
  width: 100%;
  max-width: none;
  height: clamp(48px,var(--mc-footer-height,66px),92px);
  min-height: 48px;
  max-height: 92px;
  box-sizing: border-box;
  display: flex;
  align-items: center;
  justify-content: center;
  gap: var(--mc-footer-item-gap,6px);
  padding: 5px 7px;
  position: relative;
  isolation: isolate;
  border: 0;
  border-radius: var(--mc-footer-radius,18px);
  background: transparent;
  color: var(--mc-text,#000000);
  box-shadow: none;
  overflow: visible;
  scrollbar-width: none;
  z-index: 98;
}

/* The cut-out belongs to the existing footer, not a second footer layer.
   It leaves a genuine transparent circular recess at the top centre. */
body.flat-theme .site-footer-nav::before {
  content: '';
  position: absolute;
  inset: 0;
  z-index: -1;
  pointer-events: none;
  border: 1px solid var(--mc-border,#dfe4e9);
  border-radius: inherit;
  background: var(--mc-footer-bg,#fff);
  box-shadow: 0 -5px 20px rgba(17,32,48,.09);
  -webkit-mask-image: radial-gradient(circle var(--mc-footer-center-cut) at 50% 0px,transparent calc(var(--mc-footer-center-cut) - 1px),#000 var(--mc-footer-center-cut));
  mask-image: radial-gradient(circle var(--mc-footer-center-cut) at 50% 0px,transparent calc(var(--mc-footer-center-cut) - 1px),#000 var(--mc-footer-center-cut));
}

/* The inner rim makes the genuine cut-out discernible on white pages. */
body.flat-theme .site-footer-nav::after {
  content: '';
  position: absolute;
  left: 50%;
  top: calc(-1 * var(--mc-footer-center-cut));
  width: calc(2 * var(--mc-footer-center-cut));
  height: calc(2 * var(--mc-footer-center-cut));
  box-sizing: border-box;
  transform: translateX(-50%);
  border: 1px solid var(--mc-border,#dfe4e9);
  border-radius: 50%;
  clip-path: inset(50% 0 0 0);
  pointer-events: none;
  z-index: -1;
}

/* Theme Studio sets the order. Only the existing centre slot is raised;
   no icon, colour, label, dimensions, or item order are replaced. */
body.flat-theme .site-footer-nav > .mc-footer-center-slot {
  translate: 0 calc(-1 * var(--mc-footer-center-rise));
  z-index: 2;
}


body.flat-theme .site-footer-nav[hidden] {
  display: none !important;
}


body.flat-theme .site-footer-nav.mc-footer-fixed {
  position: fixed;
  left: 0;
  right: 0;
  width: 100%;
  border-radius: 0;
  /* The WebView content area is already inset above Android navigation.
     The footer is anchored to its bottom edge, not inset twice. */
  bottom: 0;
  transform: none;
}


body.flat-theme .site-footer-nav.mc-footer-flow {
  position: relative;
  margin: 10px auto max(10px,env(safe-area-inset-bottom));
}


body.flat-theme.mc-has-footer-fixed main#app:has(#themeBuilderForm) {
  padding-bottom: calc(var(--mc-footer-height,66px) + 132px + env(safe-area-inset-bottom));
  scroll-padding-bottom: calc(var(--mc-footer-height,66px) + 132px + env(safe-area-inset-bottom));
}


body.flat-theme main#app:has(#themeBuilderForm) :is(input,select,button,details,summary) {
  scroll-margin-bottom: calc(var(--mc-footer-height,66px) + 122px + env(safe-area-inset-bottom));
}


body.flat-theme .site-footer-nav>[data-nav-key],
body.flat-theme .site-footer-nav>.menu-toggle,
body.flat-theme .site-footer-nav>.top-bell,
body.flat-theme .site-footer-nav>.top-profile-link,
body.flat-theme .site-footer-nav>#mcVotingHeaderButton,
body.flat-theme .site-footer-nav>#mcWeatherHeaderButton,
body.flat-theme .site-footer-nav>#mcAnnouncementHeaderButton {
  position: relative !important;
  flex: 1 1 56px !important;
  width: auto !important;
  max-width: 150px !important;
  min-width: 0 !important;
  min-height: 0 !important;
  height: 100% !important;
  max-height: 100% !important;
  box-sizing: border-box;
  display: flex !important;
  flex-direction: column !important;
  align-self: stretch !important;
  align-items: center !important;
  justify-content: center !important;
  gap: 3px !important;
  padding: 3px 2px !important;
  margin: 0 !important;
  inset: auto !important;
  text-align: center !important;
}




body.flat-theme .site-footer-nav>.menu-toggle::after,body.flat-theme .site-footer-nav>.top-bell::after,
body.flat-theme .site-footer-nav>.top-profile-link::after {
  content: attr(data-mc-layout-label);
  font-size: var(--mc-hf-label-size,10px);
  font-weight: 850;
  line-height: 1.1;
  white-space: nowrap;
  max-width: 100%;
  overflow: hidden;
  text-overflow: ellipsis;
}


body.flat-theme .site-footer-nav .navlabel,
body.flat-theme .site-footer-nav .mc-voting-button-label,
body.flat-theme .site-footer-nav .mc-weather-button-label,
body.flat-theme .site-footer-nav .mc-announcement-button-label {
  font-weight: 750 !important;
  line-height: 1.1;
  font-size: min(var(--mc-hf-label-size,11px),11px) !important;
  white-space: nowrap;
  max-width: 100%;
  overflow: hidden;
  text-overflow: ellipsis;
}


body.flat-theme .site-footer-nav .top-user-avatar {
  width: 30px !important;
  height: 30px !important;
  border-width: 1px !important;
  border-radius: 50% !important;
  object-fit: cover !important;
}


body.flat-theme .site-footer-nav.mc-footer-hide-labels {
  min-height: 54px;
}


body.flat-theme .site-footer-nav.mc-footer-hide-labels :is(.navlabel,.mc-voting-button-label,.mc-weather-button-label,.mc-announcement-button-label) {
  display: none !important;
}


body.flat-theme .site-footer-nav.mc-footer-hide-labels>.menu-toggle::after,
body.flat-theme .site-footer-nav.mc-footer-hide-labels>.top-bell::after,
body.flat-theme .site-footer-nav.mc-footer-hide-labels>.top-profile-link::after {
  display: none;
}


body.flat-theme .site-footer-nav>.header-search {
  flex: 1 1 56px !important;
  max-width: 180px !important;
  margin: 0 !important;
  align-self: center !important;
  padding: 5px !important;
}


body.flat-theme .site-footer-nav>.header-search.mc-search-open {
  position: absolute;
  left: 8px;
  right: 8px;
  bottom: calc(100% + 8px);
  width: auto !important;
  max-width: none !important;
  background: var(--mc-footer-bg,#fff) !important;
  border: 1px solid var(--mc-border,#dfe4e9) !important;
  border-radius: var(--mc-footer-radius,18px) !important;
  padding: 8px !important;
}


.theme-layout-intro {
  padding: 12px 13px;
  margin-bottom: 11px;
  border: 1px solid var(--mc-border,#dfe4e9);
  border-radius: 12px;
  background: var(--mc-input-material,#f7fbff);
}


.theme-layout-intro p {
  margin: 5px 0 0;
  color: var(--mc-muted,#000000);
  font-size: 12px;
  line-height: 1.45;
}


.theme-layout-presets {
  display: flex;
  flex-wrap: wrap;
  gap: 7px;
  margin-top: 10px;
}


.theme-layout-presets button {
  border: 1px solid var(--mc-border,#dfe4e9);
  background: var(--mc-card-material,#fff);
  color: var(--mc-text,#000000);
  border-radius: 999px;
  padding: 8px 11px;
  font: inherit;
  font-size: 12px;
  font-weight: 800;
  cursor: pointer;
}


.theme-layout-presets button:active {
  transform: translateY(1px);
}


.theme-footer-settings {
  display: grid;
  gap: 11px;
  margin-top: 12px;
  padding: 12px;
  border: 1px solid var(--mc-border,#dfe4e9);
  border-radius: 13px;
  background: var(--mc-card-material,#fff);
}


.theme-footer-settings h4 {
  margin: 0;
  font-size: 15px;
}


.theme-menu-drag {
  display: grid;
  place-items: center;
  touch-action: none;
  user-select: none;
  width: 30px;
  height: 30px;
  border: 1px solid var(--mc-border,#dfe4e9);
  border-radius: 8px;
  cursor: grab;
}


.theme-menu-item-card.is-dragging {
  outline: 2px solid var(--mc-active,#000000);
}


.theme-menu-label-field {
  display: grid;
  gap: 5px;
}


.theme-menu-label-field input {
  width: 100%;
}


@media(max-width:520px) {
  body.flat-theme .site-footer-nav {
  gap: 3px;
  padding: 5px 5px;
}

  .site-footer-nav>[data-nav-key],
  body.flat-theme .site-footer-nav>.menu-toggle,
  body.flat-theme .site-footer-nav>.top-bell,
  body.flat-theme .site-footer-nav>.top-profile-link,
  body.flat-theme .site-footer-nav>#mcVotingHeaderButton,
  body.flat-theme .site-footer-nav>#mcWeatherHeaderButton,
  body.flat-theme .site-footer-nav>#mcAnnouncementHeaderButton {
  padding: 4px 2px;
}

  .theme-footer-settings {
  padding: 10px;
}
}


/* Source-audited icon slots (single scoped declaration, only custom placements). */
body.flat-theme :is(svg.mc-outline-icon,svg.flat-weather-symbol,svg.verified-color-badge)[data-mc-site-icon][data-mc-site-custom] {
  color: var(--mc-site-colour) !important;
  width: var(--mc-site-size) !important;
  height: var(--mc-site-size) !important;
}


/* Theme Studio · Per-icon controls */

.theme-slot-grid {
  display: grid;
  grid-template-columns: minmax(0,1fr);
  gap: 9px;
  padding: 10px;
  min-width: 0;
}


.theme-site-slot {
  min-width: 0;
  border: 1px solid #dbe7f2;
  border-radius: 12px;
  background: #fff;
  overflow: hidden;
}


.theme-site-slot>summary {
  display: grid!important;
  grid-template-columns: 38px minmax(0,1fr) 18px!important;
  align-items: center!important;
  gap: 9px 11px!important;
}


.theme-site-slot-preview {
  display: grid;
  place-items: center;
  min-width: 0;
}


.theme-site-slot-meta {
  min-width: 0;
}


.theme-site-slot-meta b,
.theme-site-slot-meta small {
  display: block;
  overflow-wrap: anywhere;
}


.theme-site-slot-meta b {
  font-size: 13px;
}


.theme-site-slot-meta small {
  color: #000;
  font-size: 11px;
}


.theme-exact-icon-body {
  display: grid!important;
  grid-template-columns: minmax(0,1fr)!important;
  gap: 12px!important;
  min-width: 0!important;
  width: 100%!important;
}


.theme-slot-kind {
  display: grid;
  grid-template-columns: minmax(0,1fr);
  gap: 6px;
  min-width: 0;
}


.theme-slot-kind span {
  font-size: 12px;
  font-weight: 800;
}


.theme-slot-kind select {
  width: 100%;
  min-width: 0;
}


.theme-exact-icon-control {
  display: grid!important;
  grid-template-columns: minmax(0,1fr)!important;
  gap: 7px!important;
  min-width: 0!important;
  width: 100%!important;
  margin: 0!important;
  padding: 0!important;
}


.theme-exact-icon-control b {
  font-size: 12px;
  line-height: 1.3;
}


.theme-exact-icon-colour-row {
  display: grid!important;
  grid-template-columns: 54px minmax(0,1fr)!important;
  gap: 9px!important;
  align-items: center!important;
  min-width: 0!important;
  width: 100%!important;
}


.theme-exact-icon-colour-row input[type=color] {
  width: 54px!important;
  min-width: 54px!important;
  max-width: 54px!important;
  height: 42px!important;
  padding: 3px!important;
  border: 1px solid #b7cfdf!important;
  border-radius: 10px!important;
  background: #fff!important;
}


.theme-exact-icon-colour-row .theme-hex-code {
  width: 100%!important;
  min-width: 0!important;
  max-width: none!important;
  height: 42px!important;
}


.theme-exact-icon-size>span {
  display: flex!important;
  align-items: baseline!important;
  justify-content: space-between!important;
  gap: 10px!important;
  min-width: 0!important;
  width: 100%!important;
}


.theme-exact-icon-size output {
  flex: 0 0 auto;
  font-size: 11px;
  font-variant-numeric: tabular-nums;
}


.theme-exact-icon-size>input[type=range] {
  display: block!important;
  width: 100%!important;
  min-width: 0!important;
  max-width: none!important;
  margin: 0!important;
  padding: 0!important;
}


.theme-exact-icon-note {
  display: block;
  line-height: 1.45;
}


.theme-font-status {
  font-size: 11px;
  color: #000;
  display: block;
}














.theme-font-field>select:not(.theme-font-native-value) {
  width: 100%;
  max-width: 100%;
  min-width: 0;
}




body.flat-theme svg.verified-color-badge[data-mc-site-custom] stop:first-child {
  stop-color: color-mix(in srgb,var(--mc-site-colour),white 55%)!important;
}


body.flat-theme svg.verified-color-badge[data-mc-site-custom] stop:nth-child(2) {
  stop-color: var(--mc-site-colour)!important;
}


body.flat-theme svg.verified-color-badge[data-mc-site-custom] stop:last-child {
  stop-color: color-mix(in srgb,var(--mc-site-colour),black 20%)!important;
}


html.mc-inst-active-menu-home body.flat-theme [data-mc-theme-id="menu-home"] svg.mc-outline-icon {
  color: var(--mc-inst-menu-home-color) !important;
  width: var(--mc-inst-menu-home-size) !important;
  height: var(--mc-inst-menu-home-size) !important;
}


html.mc-inst-active-menu-people body.flat-theme [data-mc-theme-id="menu-people"] svg.mc-outline-icon {
  color: var(--mc-inst-menu-people-color) !important;
  width: var(--mc-inst-menu-people-size) !important;
  height: var(--mc-inst-menu-people-size) !important;
}


html.mc-inst-active-menu-shop body.flat-theme [data-mc-theme-id="menu-shop"] svg.mc-outline-icon {
  color: var(--mc-inst-menu-shop-color) !important;
  width: var(--mc-inst-menu-shop-size) !important;
  height: var(--mc-inst-menu-shop-size) !important;
}


html.mc-inst-active-menu-votes body.flat-theme [data-mc-theme-id="menu-votes"] svg.mc-outline-icon {
  color: var(--mc-inst-menu-votes-color) !important;
  width: var(--mc-inst-menu-votes-size) !important;
  height: var(--mc-inst-menu-votes-size) !important;
}


html.mc-inst-active-menu-saved body.flat-theme [data-mc-theme-id="menu-saved"] svg.mc-outline-icon {
  color: var(--mc-inst-menu-saved-color) !important;
  width: var(--mc-inst-menu-saved-size) !important;
  height: var(--mc-inst-menu-saved-size) !important;
}


html.mc-inst-active-menu-messages body.flat-theme [data-mc-theme-id="menu-messages"] svg.mc-outline-icon {
  color: var(--mc-inst-menu-messages-color) !important;
  width: var(--mc-inst-menu-messages-size) !important;
  height: var(--mc-inst-menu-messages-size) !important;
}


html.mc-inst-active-menu-announcements body.flat-theme [data-mc-theme-id="menu-announcements"] svg.mc-outline-icon {
  color: var(--mc-inst-menu-announcements-color) !important;
  width: var(--mc-inst-menu-announcements-size) !important;
  height: var(--mc-inst-menu-announcements-size) !important;
}


html.mc-inst-active-menu-notifications body.flat-theme [data-mc-theme-id="menu-notifications"] svg.mc-outline-icon {
  color: var(--mc-inst-menu-notifications-color) !important;
  width: var(--mc-inst-menu-notifications-size) !important;
  height: var(--mc-inst-menu-notifications-size) !important;
}


html.mc-inst-active-menu-profile body.flat-theme [data-mc-theme-id="menu-profile"] svg.mc-outline-icon {
  color: var(--mc-inst-menu-profile-color) !important;
  width: var(--mc-inst-menu-profile-size) !important;
  height: var(--mc-inst-menu-profile-size) !important;
}


html.mc-inst-active-menu-settings body.flat-theme [data-mc-theme-id="menu-settings"] svg.mc-outline-icon {
  color: var(--mc-inst-menu-settings-color) !important;
  width: var(--mc-inst-menu-settings-size) !important;
  height: var(--mc-inst-menu-settings-size) !important;
}


html.mc-inst-active-menu-theme body.flat-theme [data-mc-theme-id="menu-theme"] svg.mc-outline-icon {
  color: var(--mc-inst-menu-theme-color) !important;
  width: var(--mc-inst-menu-theme-size) !important;
  height: var(--mc-inst-menu-theme-size) !important;
}


html.mc-inst-active-menu-admin body.flat-theme [data-mc-theme-id="menu-admin"] svg.mc-outline-icon {
  color: var(--mc-inst-menu-admin-color) !important;
  width: var(--mc-inst-menu-admin-size) !important;
  height: var(--mc-inst-menu-admin-size) !important;
}


html.mc-inst-active-menu-logout body.flat-theme [data-mc-theme-id="menu-logout"] svg.mc-outline-icon {
  color: var(--mc-inst-menu-logout-color) !important;
  width: var(--mc-inst-menu-logout-size) !important;
  height: var(--mc-inst-menu-logout-size) !important;
}


/* Theme Studio · Header/Footer paint, border, radius, label and size are driven by --mc-hf-* variables. */
body.flat-theme .top [data-mc-hf-colors],
body.flat-theme .site-footer-nav [data-mc-hf-colors] ,
body.flat-theme #sideMenu [data-mc-hf-colors] {
  background: var(--mc-hf-bg) !important;
  color: var(--mc-hf-label) !important;
  border: var(--mc-hf-border-width) solid var(--mc-hf-border) !important;
  border-radius: var(--mc-hf-radius) !important;
}


body.flat-theme .top [data-mc-hf-style],
body.flat-theme #sideMenu [data-mc-hf-style] {
  min-width: var(--mc-hf-card-size) !important;
  min-height: var(--mc-hf-card-size) !important;
}

body.flat-theme .site-footer-nav [data-mc-hf-style] {
  min-width: 0 !important;
  min-height: 0 !important;
}


body.flat-theme .top [data-mc-hf-colors] svg.mc-outline-icon,
body.flat-theme .site-footer-nav [data-mc-hf-colors] svg.mc-outline-icon ,
body.flat-theme #sideMenu [data-mc-hf-colors] svg.mc-outline-icon {
  color: var(--mc-hf-icon) !important;
}


body.flat-theme .top [data-mc-hf-style] svg.mc-outline-icon,
body.flat-theme #sideMenu [data-mc-hf-style] svg.mc-outline-icon {
  width: var(--mc-hf-icon-size) !important;
  height: var(--mc-hf-icon-size) !important;
}
body.flat-theme .site-footer-nav [data-mc-hf-style] svg.mc-outline-icon {
  width: min(var(--mc-hf-icon-size),max(16px,calc(var(--mc-footer-height,66px) - 28px))) !important;
  height: min(var(--mc-hf-icon-size),max(16px,calc(var(--mc-footer-height,66px) - 28px))) !important;
}
body.flat-theme .site-footer-nav > .mc-footer-center-slot[data-mc-hf-style] svg.mc-outline-icon {
  width: var(--mc-hf-icon-size) !important;
  height: var(--mc-hf-icon-size) !important;
}


body.flat-theme .top [data-mc-hf-colors] :is(.navlabel,.mc-voting-button-label,.mc-weather-button-label,.mc-announcement-button-label),
body.flat-theme #sideMenu [data-mc-hf-colors] :is(.navlabel,.mc-voting-button-label,.mc-weather-button-label,.mc-announcement-button-label) {
  color: var(--mc-hf-label) !important;
  font-size: var(--mc-hf-label-size) !important;
}
body.flat-theme .site-footer-nav [data-mc-hf-colors] :is(.navlabel,.mc-voting-button-label,.mc-weather-button-label,.mc-announcement-button-label) {
  color: var(--mc-hf-label) !important;
  /* Allow the chosen Theme font while fitting five complete mobile labels. */
  font-size: min(var(--mc-hf-label-size,11px),clamp(9px,2.7vw,13px)) !important;
}


body.flat-theme .top [data-mc-hf-colors]:is(.nav-active,.top-action-active,[data-mc-selected="1"]),
body.flat-theme .site-footer-nav [data-mc-hf-colors]:is(.nav-active,.top-action-active,[data-mc-selected="1"]) ,
body.flat-theme #sideMenu [data-mc-hf-colors]:is(.nav-active,.top-action-active,[data-mc-selected="1"]) {
  background: var(--mc-hf-active-bg) !important;
  color: var(--mc-hf-active-label) !important;
}


body.flat-theme .top [data-mc-hf-colors]:is(.nav-active,.top-action-active,[data-mc-selected="1"]) svg.mc-outline-icon,
body.flat-theme .site-footer-nav [data-mc-hf-colors]:is(.nav-active,.top-action-active,[data-mc-selected="1"]) svg.mc-outline-icon ,
body.flat-theme #sideMenu [data-mc-hf-colors]:is(.nav-active,.top-action-active,[data-mc-selected="1"]) svg.mc-outline-icon {
  color: var(--mc-hf-active-icon) !important;
}


body.flat-theme .top [data-mc-hf-colors]:is(.nav-active,.top-action-active,[data-mc-selected="1"]) :is(.navlabel,.mc-voting-button-label,.mc-weather-button-label,.mc-announcement-button-label),
body.flat-theme .site-footer-nav [data-mc-hf-colors]:is(.nav-active,.top-action-active,[data-mc-selected="1"]) :is(.navlabel,.mc-voting-button-label,.mc-weather-button-label,.mc-announcement-button-label) ,
body.flat-theme #sideMenu [data-mc-hf-colors]:is(.nav-active,.top-action-active,[data-mc-selected="1"]) :is(.navlabel,.mc-voting-button-label,.mc-weather-button-label,.mc-announcement-button-label) {
  color: var(--mc-hf-active-label) !important;
}


body.flat-theme .site-footer-nav>[data-mc-hf-style] {
  min-width: 0 !important;
  flex-basis: 0 !important;
}


body.flat-theme .top :is([data-mc-hf-style="menu"],[data-mc-hf-style="notifications"],[data-mc-hf-style="profile"]) {
  width: var(--mc-hf-card-size) !important;
  min-width: var(--mc-hf-card-size) !important;
  height: var(--mc-hf-card-size) !important;
}


body.flat-theme .top .header-search[data-mc-hf-style="search"].mc-search-icon-only:not(.mc-search-open) {
  width: var(--mc-hf-card-size) !important;
  min-width: var(--mc-hf-card-size) !important;
  min-height: var(--mc-hf-card-size) !important;
}


body.flat-theme .top [data-mc-hf-style="profile"] .top-user-avatar {
  width: max(12px,calc(var(--mc-hf-card-size) - 6px)) !important;
  height: max(12px,calc(var(--mc-hf-card-size) - 6px)) !important;
}


html.mc-inst-active-post-like body.flat-theme .mc-engagement[data-engagement-kind="post"] [data-eng-open-reactions] .mc-react-visual svg {
  color: var(--mc-inst-post-like-color) !important;
  width: var(--mc-inst-post-like-size) !important;
  height: var(--mc-inst-post-like-size) !important;
}


html.mc-inst-active-post-comment body.flat-theme .mc-engagement[data-engagement-kind="post"] .mc-engagement-actions [data-eng-focus-comments] svg {
  color: var(--mc-inst-post-comment-color) !important;
  width: var(--mc-inst-post-comment-size) !important;
  height: var(--mc-inst-post-comment-size) !important;
}


html.mc-inst-active-post-share body.flat-theme .mc-engagement[data-engagement-kind="post"] .mc-engagement-actions [data-eng-share] svg {
  color: var(--mc-inst-post-share-color) !important;
  width: var(--mc-inst-post-share-size) !important;
  height: var(--mc-inst-post-share-size) !important;
}


html.mc-inst-active-post-send body.flat-theme .mc-engagement[data-engagement-kind="post"] .mc-comment-composer button[type="submit"] svg {
  color: var(--mc-inst-post-send-color) !important;
  width: var(--mc-inst-post-send-size) !important;
  height: var(--mc-inst-post-send-size) !important;
}


html.mc-inst-active-shop-like body.flat-theme .mc-engagement[data-engagement-kind="shop"] [data-eng-open-reactions] .mc-react-visual svg {
  color: var(--mc-inst-shop-like-color) !important;
  width: var(--mc-inst-shop-like-size) !important;
  height: var(--mc-inst-shop-like-size) !important;
}


html.mc-inst-active-shop-comment body.flat-theme .mc-engagement[data-engagement-kind="shop"] .mc-engagement-actions [data-eng-focus-comments] svg {
  color: var(--mc-inst-shop-comment-color) !important;
  width: var(--mc-inst-shop-comment-size) !important;
  height: var(--mc-inst-shop-comment-size) !important;
}


html.mc-inst-active-shop-share body.flat-theme .mc-engagement[data-engagement-kind="shop"] .mc-engagement-actions [data-eng-share] svg {
  color: var(--mc-inst-shop-share-color) !important;
  width: var(--mc-inst-shop-share-size) !important;
  height: var(--mc-inst-shop-share-size) !important;
}


html.mc-inst-active-shop-send body.flat-theme .mc-engagement[data-engagement-kind="shop"] .mc-comment-composer button[type="submit"] svg {
  color: var(--mc-inst-shop-send-color) !important;
  width: var(--mc-inst-shop-send-size) !important;
  height: var(--mc-inst-shop-send-size) !important;
}


html.mc-inst-active-announcement-like body.flat-theme .mc-engagement[data-engagement-kind="announcement"] [data-eng-open-reactions] .mc-react-visual svg {
  color: var(--mc-inst-announcement-like-color) !important;
  width: var(--mc-inst-announcement-like-size) !important;
  height: var(--mc-inst-announcement-like-size) !important;
}


html.mc-inst-active-announcement-comment body.flat-theme .mc-engagement[data-engagement-kind="announcement"] .mc-engagement-actions [data-eng-focus-comments] svg {
  color: var(--mc-inst-announcement-comment-color) !important;
  width: var(--mc-inst-announcement-comment-size) !important;
  height: var(--mc-inst-announcement-comment-size) !important;
}


html.mc-inst-active-announcement-share body.flat-theme .mc-engagement[data-engagement-kind="announcement"] .mc-engagement-actions [data-eng-share] svg {
  color: var(--mc-inst-announcement-share-color) !important;
  width: var(--mc-inst-announcement-share-size) !important;
  height: var(--mc-inst-announcement-share-size) !important;
}


html.mc-inst-active-announcement-send body.flat-theme .mc-engagement[data-engagement-kind="announcement"] .mc-comment-composer button[type="submit"] svg {
  color: var(--mc-inst-announcement-send-color) !important;
  width: var(--mc-inst-announcement-send-size) !important;
  height: var(--mc-inst-announcement-send-size) !important;
}


html.mc-inst-active-vote-like body.flat-theme .mc-engagement[data-engagement-kind="vote"] [data-eng-open-reactions] .mc-react-visual svg {
  color: var(--mc-inst-vote-like-color) !important;
  width: var(--mc-inst-vote-like-size) !important;
  height: var(--mc-inst-vote-like-size) !important;
}


html.mc-inst-active-vote-comment body.flat-theme .mc-engagement[data-engagement-kind="vote"] .mc-engagement-actions [data-eng-focus-comments] svg {
  color: var(--mc-inst-vote-comment-color) !important;
  width: var(--mc-inst-vote-comment-size) !important;
  height: var(--mc-inst-vote-comment-size) !important;
}


html.mc-inst-active-vote-share body.flat-theme .mc-engagement[data-engagement-kind="vote"] .mc-engagement-actions [data-eng-share] svg {
  color: var(--mc-inst-vote-share-color) !important;
  width: var(--mc-inst-vote-share-size) !important;
  height: var(--mc-inst-vote-share-size) !important;
}


html.mc-inst-active-vote-send body.flat-theme .mc-engagement[data-engagement-kind="vote"] .mc-comment-composer button[type="submit"] svg {
  color: var(--mc-inst-vote-send-color) !important;
  width: var(--mc-inst-vote-send-size) !important;
  height: var(--mc-inst-vote-send-size) !important;
}


/* ===== Theme Studio · free 12-column Header/Footer placement ===== */
body.flat-theme .top.mc-custom-layout.mc-free-grid>.mc-layout-row {
  display: grid !important;
  grid-template-columns: repeat(12,minmax(0,1fr)) !important;
  grid-auto-flow: row dense;
  align-items: center;
  justify-content: stretch !important;
  gap: var(--mc-header-item-gap,7px);
  overflow: visible;
}


body.flat-theme .top.mc-custom-layout.mc-free-grid>.mc-layout-row>* {
  grid-column: span var(--mc-layout-span,2);
  min-width: 0 !important;
  max-width: none !important;
  width: 100% !important;
  margin-inline: 0 !important;
  justify-self: stretch;
  box-sizing: border-box;
}


body.flat-theme .top.mc-custom-layout.mc-free-grid [data-mc-layout-row="primary"] .brand {
  grid-column: span var(--mc-layout-span,6);
  min-width: 0 !important;
  max-width: none !important;
  width: 100% !important;
}


body.flat-theme .top.mc-custom-layout.mc-free-grid .mc-layout-row .menu-toggle,
body.flat-theme .top.mc-custom-layout.mc-free-grid .mc-layout-row .top-bell,
body.flat-theme .top.mc-custom-layout.mc-free-grid .mc-layout-row .top-profile-link {
  grid-column: span var(--mc-layout-span,2);
  justify-self: stretch;
  width: 100% !important;
  max-width: none !important;
}


body.flat-theme .top.mc-custom-layout.mc-free-grid .mc-layout-row [data-nav-key],
body.flat-theme .top.mc-custom-layout.mc-free-grid .mc-layout-row>a#mcVotingHeaderButton,
body.flat-theme .top.mc-custom-layout.mc-free-grid .mc-layout-row>button#mcWeatherHeaderButton,
body.flat-theme .top.mc-custom-layout.mc-free-grid .mc-layout-row>a#mcAnnouncementHeaderButton,
body.flat-theme .top.mc-custom-layout.mc-free-grid .mc-layout-row>.header-search {
  grid-column: span var(--mc-layout-span,2);
  width: 100% !important;
  min-width: 0 !important;
  max-width: none !important;
  flex: none !important;
}


body.flat-theme .top.mc-custom-layout.mc-free-grid .mc-layout-spacer {
  display: block !important;
  grid-column: span var(--mc-layout-span,1);
  min-width: 0 !important;
  min-height: 1px !important;
  width: 100% !important;
  pointer-events: none;
  background: transparent !important;
  border: 0 !important;
}


body.flat-theme .site-footer-nav.mc-footer-free-grid {
  /* One compact row regardless of shared header grid settings. */
  display: flex !important;
  flex-flow: row nowrap;
  align-items: center;
  justify-content: center;
}


body.flat-theme .site-footer-nav.mc-footer-free-grid>* {
  flex: 1 1 0 !important;
  min-width: 0 !important;
  max-width: 150px !important;
  box-sizing: border-box;
}


body.flat-theme .site-footer-nav.mc-footer-free-grid>.mc-layout-spacer {
  display: none !important;
}


.theme-layout-width {
  display: grid;
  gap: 7px;
  padding: 9px 10px;
  border: 1px solid var(--mc-border,#dfe4e9);
  border-radius: 10px;
  background: var(--mc-input-material,#f7fbff);
  font-size: 12px;
  font-weight: 800;
}


.theme-layout-width>span {
  display: flex;
  justify-content: space-between;
  gap: 10px;
}


.theme-layout-width output {
  font-variant-numeric: tabular-nums;
  color: var(--mc-active,#000000);
}


.theme-layout-width input {
  width: 100%;
  min-width: 0;
}


.theme-layout-spacer-tile {
  border-style: dashed;
  background: color-mix(in srgb,var(--mc-input-material,#f7fbff),transparent 12%);
}


.theme-layout-spacer-tile>b {
  color: var(--mc-muted,#000000);
}


.theme-free-grid-toggle {
  margin-top: 10px;
}








@media(max-width:390px) {
  body.flat-theme .top.mc-custom-layout.mc-free-grid>.mc-layout-row {
  gap: 5px;
}
}

/* ===== Theme Studio · live Header/Footer finger positioning ===== */
body.flat-theme [data-mc-live-key].mc-live-positioned {
  transform: translate3d(var(--mc-live-x,0px),var(--mc-live-y,0px),0) !important;
}

/* Inline header identity components are individual live positioning targets. */
body.flat-theme #siteBrandName[data-mc-live-key]:not([hidden]),
body.flat-theme #siteBrandTagline[data-mc-live-key]:not([hidden]) { display: inline-block; }


.theme-live-header-controls {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 8px;
  margin: 10px 0 4px;
  align-items: center;
}


.theme-live-header-controls small {
  grid-column: 1/-1;
  display: block;
  color: var(--mc-muted,#000000);
  font-size: 12px;
  line-height: 1.5;
}


.theme-layout-divider {
  border: 0;
  border-top: 1px solid var(--mc-border,#dfe4e9);
  margin: 14px 0;
}


body.mc-live-header-editing .top [data-mc-live-key],
body.mc-live-header-editing #siteFooterNav [data-mc-live-key] {
  outline: 2px dashed #1683ff !important;
  outline-offset: 2px !important;
  touch-action: manipulation !important;
  user-select: none !important;
  -webkit-user-select: none !important;
  cursor: pointer !important;
  position: relative;
  z-index: 160 !important;
}
body.mc-live-header-editing .top [data-mc-live-key].mc-live-selected,
body.mc-live-header-editing #siteFooterNav [data-mc-live-key].mc-live-selected {
  outline: 3px solid #00c5d5 !important;
  outline-offset: 3px !important;
  background-color: rgba(0,242,255,.08) !important;
  touch-action: none !important;
  cursor: grab !important;
}

body.mc-live-header-editing .top [data-mc-live-key].mc-live-dragging,
body.mc-live-header-editing #siteFooterNav [data-mc-live-key].mc-live-dragging {
  cursor: grabbing !important;
  outline-style: solid !important;
  z-index: 180 !important;
}
body.mc-live-header-editing .top {
  position: relative !important;
  z-index: 170 !important;
  overflow: visible !important;
}


body.mc-live-header-editing #siteFooterNav {
  z-index: 170 !important;
  overflow: visible !important;
}


.mc-live-header-toolbar {
  position: fixed;
  left: 50%;
  bottom: max(10px, env(safe-area-inset-bottom));
  transform: translateX(-50%);
  box-sizing: border-box;
  width: min(calc(100% - 20px), 680px);
  max-height: calc(100dvh - 24px);
  overflow-y: auto;
  z-index: 9999;
  display: grid;
  grid-template-columns: minmax(0, 1fr) minmax(0, 1.2fr) repeat(2, minmax(76px, auto));
  grid-template-areas: "selection picker save done" "nudge nudge nudge nudge";
  gap: 8px;
  align-items: center;
  padding: 12px;
  border: 1px solid #d7e5f2;
  border-radius: 16px;
  background: #fff;
  box-shadow: 0 8px 24px rgba(15,23,42,.16);
  color: #111827;
}
.mc-live-header-toolbar[data-dock="top"] {
  top: max(10px, env(safe-area-inset-top));
  bottom: auto;
}
.mc-live-selection [data-live-toolbar-dock] {
  align-self: flex-start;
  width: auto;
  min-height: 28px;
  margin-top: 3px;
  padding: 3px 8px;
  font-size: 11px;
  font-weight: 700;
  border: 1px solid #b6d4db;
}
.mc-live-selection {grid-area:selection;display:flex;flex-direction:column;min-width:0;}
.mc-live-selection b {font-size:13px;}
.mc-live-selection small {font-size:11px;color:#4b5563;line-height:1.3;max-width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;}
.mc-live-header-toolbar [data-live-item-picker] {
  grid-area:picker;
  width:100%;
  max-width:100%;
  min-width:0;
  min-height:44px;
  border:1px solid #b6d4db;
  border-radius:9px;
  padding:0 8px;
  background:#fff;
  color:#111827;
  font-size:13px;
}
.mc-live-nudge {grid-area:nudge;display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:5px;align-items:center;min-width:0;}
.mc-live-header-toolbar button {
  box-sizing:border-box;
  width:100%;
  min-width:0;
  min-height:44px;
  margin:0;
  border:0;
  border-radius:9px;
  padding:0 8px;
  font-size:13px;
  font-weight:700;
  background:#ecf5f7;
  color:#111827;
}
.mc-live-header-toolbar button[data-live-nudge] {font-size:19px;}
.mc-live-header-toolbar button:disabled {opacity:.35;cursor:not-allowed;}
.mc-live-header-toolbar button[data-live-save] {grid-area:save;background:#00cadb;color:#001923;}
.mc-live-header-toolbar button[data-live-done] {grid-area:done;background:#edf3f6;color:#111827;}
@media (max-width:700px) {
  .theme-live-header-controls {grid-template-columns:1fr;}
  .mc-live-header-toolbar {
    grid-template-columns:minmax(0,1fr) minmax(0,1.15fr);
    grid-template-areas:"selection picker" "nudge nudge" "save done";
    gap:8px;
    padding:10px;
  }
  .mc-live-selection small {white-space:normal;line-height:1.35;}
}

/* ===== Theme Studio · live side-menu moves and shell resize handles ===== */
body.flat-theme .side-menu .side-menu-links>.mc-side-menu-live-item svg {
  flex: 0 0 auto;
}


body.flat-theme .side-menu .side-menu-links>.mc-side-menu-live-item .mc-weather-button-label,
body.flat-theme .side-menu .side-menu-links>.mc-side-menu-live-item .mc-voting-button-label,
body.flat-theme .side-menu .side-menu-links>.mc-side-menu-live-item .mc-announcement-button-label,
body.flat-theme .side-menu .side-menu-links>.mc-side-menu-live-item .navlabel {
  display: inline !important;
  min-width: 0 !important;
}


body.mc-live-header-editing #siteFooterNav:not([hidden]) {
  position: fixed !important;
  bottom: 0 !important;
  left: 0 !important;
  right: 0 !important;
  width: 100% !important;
}


.mc-live-shell-resize {
  position: absolute;
  left: 50%;
  transform: translateX(-50%);
  z-index: 220;
  display: flex;
  align-items: center;
  gap: 6px;
  min-width: 112px;
  height: 28px;
  padding: 0 10px;
  border: 1px solid #9bc8ff;
  border-radius: 999px;
  background: #fff;
  color: #000000;
  box-shadow: 0 3px 12px rgba(15,23,42,.16);
  font-size: 11px;
  font-weight: 800;
  touch-action: none;
  user-select: none;
  cursor: ns-resize;
}


.mc-live-shell-resize span {
  font-size: 15px;
  line-height: 1;
}


.mc-live-shell-resize.is-resizing {
  background: #1683ff;
  color: #000000;
  border-color: #1683ff;
}


.mc-live-header-resize {
  bottom: -14px;
}


.mc-live-footer-resize {
  top: -14px;
}


@media(max-width:700px) {
  .mc-live-shell-resize {
  min-width: 102px;
  height: 26px;
  font-size: 10px;
}

  .mc-live-header-resize {
  bottom: -13px;
}

  .mc-live-footer-resize {
  top: -13px;
}
}


@media(max-width:560px) {
  .search-toolbar form {
  grid-template-columns: minmax(0,1fr) auto;
}
}


/* Theme Studio · Comments and Reactions controls (current owner) */
.theme-engagement-control-grid {
  display: grid;
  grid-template-columns: repeat(auto-fit,minmax(280px,1fr));
  gap: 12px;
  margin-top: 12px;
}


.theme-eng-control {
  min-width: 0;
  margin: 0;
  padding: 12px;
  border: 1px solid rgba(85,105,145,.16);
  border-radius: 14px;
  background: rgba(255,255,255,.72);
}


.theme-eng-control>legend {
  padding: 0 7px;
  font-weight: 850;
  color: #000000;
}


.theme-eng-control-head {
  display: grid;
  gap: 9px;
  margin-bottom: 10px;
}


.theme-eng-control-head>label:first-child {
  font-weight: 780;
}


.theme-eng-control-part {
  display: grid;
  grid-template-columns: repeat(2,minmax(0,1fr));
  gap: 8px;
  align-items: end;
  padding: 9px 0;
  border-top: 1px solid rgba(85,105,145,.1);
}


.theme-eng-control-part>b {
  grid-column: 1/-1;
  font-size: 12px;
  color: #000000;
}


.theme-eng-control-part label {
  display: grid;
  gap: 5px;
  min-width: 0;
  font-size: 11px;
  color: #000000;
}


.theme-eng-control-part label:has(input[type=checkbox]) {
  display: flex;
  align-items: center;
  gap: 8px;
  align-self: center;
}


.theme-eng-control-part input[type=checkbox] {
  appearance: none;
  -webkit-appearance: none;
  position: relative;
  flex: 0 0 40px;
  width: 40px!important;
  height: 22px!important;
  margin: 0;
  border: 1px solid #b8c2cc;
  border-radius: 999px;
  background: #e7ebef;
  cursor: pointer;
}


.theme-eng-control-part input[type=color] {
  width: 100%;
  min-height: 36px;
}


.theme-eng-control-part input[type=range] {
  width: 100%;
}


@media(max-width:520px) {
  .theme-engagement-control-grid {
  grid-template-columns: 1fr;
}

  .theme-eng-control-part {
  grid-template-columns: 1fr;
}
}


/* Announcement creation: one form, collapsed until the heading arrow opens it. */
.announcement-composer,
.vote-create-card.vote-challenge-lobby {
  display: grid;
  grid-template-columns: minmax(0,1fr);
  gap: 14px;
  min-width: 0;
  margin: 0;
  padding: 0;
}
.announcement-composer #announcementComposer,
.vote-create-card #voteCreate {
  min-width: 0;
  margin: 0;
}
.announcement-composer #announcementComposer[hidden] { display: none !important; }
.vote-create-card #voteCreate[hidden] { display: none !important; }
/* Both creation entry controls share one canonical visual owner. Theme Studio
   remains responsible for individual saved overrides of each item. */
.announcement-composer .announcement-compose-head,
.vote-create-card .vote-challenge-header {
  display: flex;
  align-items: center;
  gap: 12px;
  min-width: 0;
  margin: 0;
  padding: 14px;
  border: 1px solid var(--mc-border,#dfe4e9);
  border-radius: 16px;
  background: #ffffff;
  box-shadow: none;
  flex-wrap: nowrap;
}
.announcement-compose-launch,
.vote-challenge-launch {
  display: flex;
  flex: 1 1 auto;
  align-items: center;
  min-width: 0;
  gap: 12px;
}
.announcement-compose-emblem,
.vote-challenge-emblem {
  display: grid;
  place-items: center;
  width: 50px;
  height: 50px;
  flex: 0 0 50px;
  box-sizing: border-box;
  border: 2px solid #00F2FF;
  border-radius: 14px;
  background: #ffffff;
  color: #111111;
}
.announcement-compose-emblem .mc-outline-icon,
.vote-challenge-emblem .mc-outline-icon {
  display: block;
  width: 25px;
  height: 25px;
  color: #111111;
}
.announcement-compose-intro,
.vote-challenge-intro {
  flex: 1 1 auto;
  min-width: 0;
}
.announcement-compose-intro h2,
.vote-challenge-intro h2 {
  margin: 0;
  font-size: 19px;
  font-weight: 800;
  letter-spacing: -.02em;
  line-height: 1.2;
}
.announcement-compose-intro p,
.vote-challenge-intro p {
  margin: 5px 0 0;
  font-size: 13px;
  line-height: 1.35;
  font-weight: 400;
  color: var(--mc-muted,#667085);
}
.announcement-compose-toggle,
.vote-challenge-toggle {
  display: grid;
  place-items: center;
  flex: 0 0 44px;
  width: 44px;
  height: 44px;
  min-width: 44px;
  min-height: 44px;
  margin: 0;
  padding: 0;
  box-sizing: border-box;
  border: 0;
  border-radius: 50%;
  background: #00F2FF;
  color: #ffffff;
  box-shadow: none;
  overflow: hidden;
  line-height: 1;
  cursor: pointer;
  -webkit-tap-highlight-color: transparent;
}
.announcement-compose-toggle .mc-entry-chevron,
.vote-challenge-toggle .mc-entry-chevron {
  display: block;
  width: 24px;
  height: 24px;
  flex: none;
  max-width: 100%;
  max-height: 100%;
  color: inherit;
  transition: transform 150ms ease;
}
.announcement-compose-toggle[aria-expanded="true"] .mc-entry-chevron,
.vote-challenge-toggle[aria-expanded="true"] .mc-entry-chevron {
  transform: rotate(-90deg);
}
.announcement-compose-toggle:focus-visible,
.vote-challenge-toggle:focus-visible {
  outline: 2px solid #00F2FF;
  outline-offset: 3px;
}
@media (max-width: 520px) {
  .announcement-compose-launch,
  .vote-challenge-launch { gap: 10px; }
  .announcement-compose-emblem,
  .vote-challenge-emblem {
    width: 46px;
    height: 46px;
    flex-basis: 46px;
    border-radius: 13px;
  }
  .announcement-compose-toggle,
  .vote-challenge-toggle {
    width: 42px;
    height: 42px;
    min-width: 42px;
    min-height: 42px;
    flex-basis: 42px;
  }
  .announcement-compose-intro h2,
  .vote-challenge-intro h2 { font-size: 17px; }
  .announcement-compose-intro p,
  .vote-challenge-intro p { font-size: 12px; }
}
@media (max-width: 350px) {
  .announcement-compose-launch,
  .vote-challenge-launch { gap: 8px; }
  .announcement-compose-head,
  .vote-challenge-header { padding: 10px; }
  .announcement-compose-intro h2,
  .vote-challenge-intro h2 { font-size: 15px; }
  .announcement-compose-intro p,
  .vote-challenge-intro p { font-size: 11px; }
}

.announcement-composer #announcementComposer>textarea {
  display: block;
  box-sizing: border-box;
  width: 100%;
  margin: 6px 0 0;
}


.announcement-composer .announcement-attach-tools {
  display: grid;
  grid-template-columns: repeat(2,minmax(0,1fr));
  align-items: stretch;
  gap: 10px;
  margin: 8px 0 0;
  min-width: 0;
}


.announcement-composer .announcement-attach-tools>.voice-record-btn,
.announcement-composer .announcement-attach-tools>.filepick,
.announcement-composer .announcement-attach-tools>.js-verify-gate {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 8px;
  min-width: 0;
  width: 100%;
  min-height: 44px;
  height: 46px;
  margin: 0;
  padding: 7px 10px;
  border: 1px solid var(--mc-border,#dfe4e9);
  border-radius: 12px;
  background: var(--mc-input-material,#f7fbff);
  color: var(--mc-text,#000);
  box-shadow: none;
  font-size: 13px;
  font-weight: 750;
  line-height: 1.2;
  cursor: pointer;
  box-sizing: border-box;
}


.announcement-composer .announcement-attach-tools [data-annc-icon-id] {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  flex: 0 0 auto;
  line-height: 1;
}


.announcement-composer .announcement-attach-tools [data-annc-icon-id] svg {
  display: block;
  width: 21px;
  height: 21px;
  max-width: 100%;
}


.announcement-composer .announcement-attach-tools [data-annc-label-id],
.announcement-composer .announcement-attach-tools .voice-record-label {
  display: inline-block;
  min-width: 0;
  white-space: normal;
  overflow-wrap: anywhere;
  text-align: center;
}


.announcement-composer .voice-record-btn .voice-stop-square {
  width: 12px;
  height: 12px;
  border-radius: 3px;
  background: currentColor;
}


.announcement-composer .voice-record-status {
  display: flex;
  align-items: center;
  gap: 8px;
  min-width: 0;
  margin: 7px 0 12px;
  padding: 0 2px;
  color: var(--mc-muted,#666);
  font-size: 12px;
  line-height: 1.35;
}


.announcement-composer .voice-record-status b,
.announcement-composer .voice-record-status small {
  display: block;
  margin: 0;
  font-size: inherit;
  font-weight: 500;
}


.announcement-composer .voice-record-status small {
  font-variant-numeric: tabular-nums;
}


.announcement-composer .announcement-publish-row {
  display: grid;
  grid-template-columns: minmax(0,1fr);
  gap: 10px;
  align-items: stretch;
  margin-top: 10px;
  min-width: 0;
}


.announcement-composer .announcement-publish-row>select {
  width: 100%;
  margin: 0;
}


.announcement-composer .announcement-publish-row .announcement-publish {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 10px;
  padding: 0 16px;
  border: 1px solid var(--mc-border,#dfe4e9);
  border-radius: 14px;
  min-height: 52px;
  box-shadow: none;
  font-weight: 850;
  line-height: 1.2;
}


.announcement-composer .announcement-publish [data-annc-icon-id] {
  display: inline-flex;
  align-items: center;
  justify-content: center;
}


.announcement-composer .announcement-publish [data-annc-label-id] {
  font-weight: 850;
}


.announcement-composer [data-annc-ui-slot][hidden],
.announcement-composer .voice-record-btn [hidden] {
  display: none !important;
}


@media (max-width:360px) {
  .announcement-composer .announcement-attach-tools {
  gap: 7px;
}

  .announcement-composer .announcement-attach-tools>.voice-record-btn,
  .announcement-composer .announcement-attach-tools>.filepick,
  .announcement-composer .announcement-attach-tools>.js-verify-gate {
  font-size: 12px;
  padding: 7px 6px;
}
}


/* Theme Studio · Module and Element editor controls (current owner) */
.theme-module-section>.theme-control-body {
  padding-top: 10px;
}


.theme-module-control-editor {
  display: grid;
  gap: 10px;
}


.theme-module-element {
  border: 1px solid var(--mc-border,#dfe4e9);
  border-radius: 12px;
  background: var(--mc-card,#fff);
  overflow: hidden;
}


.theme-module-element>summary {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
  min-height: 46px;
  padding: 9px 11px;
  cursor: pointer;
  list-style: none;
}


.theme-module-element>summary::-webkit-details-marker {
  display: none;
}


.theme-module-element>summary>span:first-child {
  display: grid;
  gap: 2px;
  min-width: 0;
}


.theme-module-element>summary small {
  color: var(--muted,#000000);
  font-size: 11px;
  text-transform: capitalize;
}


.theme-module-summary-actions {
  display: flex;
  align-items: center;
  gap: 10px;
  flex-wrap: wrap;
  justify-content: flex-end;
}


.theme-module-summary-actions label {
  display: inline-flex;
  align-items: center;
  gap: 5px;
  font-size: 12px;
  white-space: nowrap;
}


.theme-module-element-fields {
  display: grid;
  grid-template-columns: 1fr;
  gap: 9px;
  padding: 0;
  align-content: start;
}


.theme-module-element-fields label:not(.theme-module-visibility-row) {
  display: grid;
  gap: 5px;
  min-width: 0;
  font-size: 12px;
}


.theme-module-element-fields label:not(.theme-module-visibility-row)>span {
  display: flex;
  justify-content: space-between;
  gap: 8px;
  align-items: center;
}


.theme-module-element-fields input[type="color"] {
  width: 100%;
  height: 40px;
  border: 1px solid var(--mc-border,#dfe4e9);
  border-radius: 10px;
  padding: 3px;
  background: #fff;
}


.theme-module-element-fields input[type="range"] {
  width: 100%;
}


.theme-module-element-fields input:disabled {
  opacity: .46;
  cursor: not-allowed;
}


.theme-control-subgroup {
  border: 1px solid #dde4eb;
  border-radius: 10px;
  background: #fff;
  overflow: hidden;
}


.theme-control-subgroup>summary {
  list-style: none;
  cursor: pointer;
  display: flex;
  align-items: center;
  justify-content: space-between;
  min-height: 40px;
  padding: 9px 10px;
  font-size: 12px;
  font-weight: 850;
}


.theme-control-subgroup>summary::-webkit-details-marker {
  display: none;
}


.theme-control-subgroup>summary:after {
  content: "⌄";
  font-size: 15px;
}


.theme-control-subgroup[open]>summary:after {
  transform: rotate(180deg);
}


.theme-subgroup-grid {
  display: grid;
  grid-template-columns: repeat(2,minmax(0,1fr));
  gap: 9px;
  padding: 9px;
  border-top: 1px solid #edf0f3;
}


.theme-module-wide {
  padding: 9px;
  border: 1px solid #dde4eb;
  border-radius: 10px;
  background: #fff;
}


.theme-module-wide input {
  min-height: 40px;
  width: 100%;
  box-sizing: border-box;
}


@media(max-width:620px) {
  .theme-module-element>summary {
  align-items: center;
  flex-direction: row;
}

  .theme-module-summary-actions {
  justify-content: flex-end;
}

  .theme-module-element-fields {
  grid-template-columns: 1fr;
}

  .theme-subgroup-grid {
  grid-template-columns: 1fr;
}
}


/* Theme Studio · Scoped element preview */
.theme-list-primary {
  display: grid;
  gap: 9px;
  margin-top: 10px;
}


.theme-list-primary-note {
  display: grid;
  gap: 3px;
  padding: 10px 12px;
  border: 1px solid #dfe4e9;
  border-radius: 10px;
  background: #fff;
}


.theme-list-primary-note b {
  font-size: 14px;
  color: #000000;
}


.theme-list-primary-note span {
  font-size: 11px;
  line-height: 1.4;
  color: #000000;
}


.theme-module-open-layout {
  display: grid;
  grid-template-columns: minmax(250px,.9fr) minmax(0,1.1fr);
  gap: 10px;
  padding: 10px;
  border-top: 1px solid var(--mc-border,#dfe4e9);
  background: #f8fafc;
}


.theme-module-open-layout>.theme-module-element-fields {
  padding: 0;
  border: 0;
  align-content: start;
}


.theme-item-preview-slot {
  min-width: 0;
}


.theme-item-preview-placeholder {
  min-height: 190px;
  display: grid;
  place-content: center;
  text-align: center;
  gap: 5px;
  border: 1px dashed #cfd6dd;
  border-radius: 10px;
  background: #fff;
  color: #000000;
  padding: 12px;
}


.theme-item-preview-placeholder b {
  color: #000000;
}


.theme-module-color-row {
  display: grid;
  grid-template-columns: 52px minmax(0,1fr);
  gap: 7px;
}


.theme-module-color-row input[type="color"] {
  width: 52px!important;
}


.theme-module-color-row input[type="text"] {
  min-width: 0;
  height: 40px;
  border: 1px solid var(--mc-border,#dfe4e9);
  border-radius: 10px;
  padding: 0 9px;
  background: #fff;
  font: 700 11px ui-monospace,SFMono-Regular,Menlo,monospace;
  text-transform: uppercase;
}


.theme-module-color-row input:disabled {
  opacity: .46;
  cursor: not-allowed;
}


.mc-list-item-preview {
  border: 1px solid #d5e6f4;
  border-radius: 15px;
  background: #fff;
  overflow: hidden;
  box-shadow: 0 9px 26px rgba(28,59,92,.08);
}


.mc-list-item-preview-head {
  display: flex;
  justify-content: space-between;
  gap: 10px;
  align-items: flex-start;
  padding: 10px 11px;
  border-bottom: 1px solid #dfeaf4;
  background: linear-gradient(135deg,#f3faff,#fff7fc);
}


.mc-list-item-preview-head>div:first-child {
  display: grid;
  gap: 2px;
  min-width: 0;
}


.mc-list-item-preview-head span {
  font-size: 8px;
  font-weight: 900;
  letter-spacing: .11em;
  color: #000000;
}


.mc-list-item-preview-head b {
  font-size: 12px;
  color: #000000;
}


.mc-list-item-preview-head small {
  font-size: 8px;
  color: #000000;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
  max-width: 280px;
}


.mc-list-item-preview-actions {
  display: flex;
  gap: 5px;
  flex-wrap: wrap;
  justify-content: flex-end;
}


.mc-list-item-preview-actions button {
  min-height: 30px;
  border: 1px solid #cfe0ef;
  border-radius: 8px;
  background: #fff;
  color: #000000;
  padding: 0 8px;
  font-size: 9px;
  font-weight: 800;
}


.mc-list-item-preview-actions button.active {
  background: #1683ff;
  border-color: #1683ff;
  color: #000000;
}


.mc-list-item-preview-frame {
  position: relative;
  margin: 10px auto;
  width: calc(100% - 20px);
  height: 260px;
  border: 1px solid #dce6ef;
  border-radius: 12px;
  overflow: hidden;
  background: #eef3f8;
  transition: max-width .15s ease;
}


.mc-list-item-preview-frame[data-list-preview-frame="mobile"] {
  max-width: 430px;
}


.mc-list-item-preview-frame[data-list-preview-frame="desktop"] {
  max-width: 100%;
}


.mc-list-item-preview-frame iframe {
  width: 100%;
  height: 100%;
  border: 0;
  background: #fff;
  pointer-events: none;
}


.mc-list-item-preview-status {
  position: absolute;
  left: 50%;
  bottom: 10px;
  transform: translateX(-50%);
  max-width: 92%;
  padding: 6px 9px;
  border-radius: 99px;
  background: rgba(16,32,61,.88);
  color: #000000;
  font-size: 9px;
  font-weight: 800;
  text-align: center;
  z-index: 3;
}


.mc-list-item-preview-status[hidden] {
  display: none;
}


.mc-list-item-preview-note {
  padding: 0 11px 10px;
  font-size: 9px;
  line-height: 1.4;
  color: #000000;
}


@media(max-width:900px) {
  .theme-module-open-layout {
  grid-template-columns: 1fr;
}

  .mc-list-item-preview-frame {
  height: 280px;
}
}


@media(max-width:620px) {
  .theme-module-open-layout {
  padding: 9px;
}

  .mc-list-item-preview-head {
  display: grid;
}

  .mc-list-item-preview-actions {
  justify-content: flex-start;
}

  .mc-list-item-preview-frame {
  height: 250px;
  width: calc(100% - 14px);
  margin: 7px auto;
}

  .mc-list-item-preview-note {
  font-size: 8px;
}

  .theme-module-color-row {
  grid-template-columns: 48px minmax(0,1fr);
}
}


@media(min-width:901px) {
  .theme-ordered-builder>.section-row {
  align-items: flex-start;
}

  .theme-ordered-builder>.section-row>div {
  max-width: 760px;
}

  .theme-control-body>.theme-v97-grid,
  .theme-control-body>.theme-v97-sliders {
  grid-template-columns: repeat(2,minmax(0,1fr));
}
}


/* V97.132 — authenticated header state guard. Guest/logout pages never expose private header controls. */
body.flat-theme .top.guest-top .header-search,
body.flat-theme .top.guest-top #topNav,
body.flat-theme .top.guest-top .mc-weather-header-row,
body.flat-theme .top.guest-top .menu-toggle {
  display: none !important;
}


body.flat-theme .top.guest-top .top-bell,
body.flat-theme .top.guest-top .top-profile-link {
  display: none !important;
}


body.flat-theme:has(.top.guest-top) #siteFooterNav {
  display: none !important;
}


/* V97.134 — expanded search owns the header row while open. */
body.mc-header-search-open [data-mc-search-hidden="1"] {
  display: none!important;
  visibility: hidden!important;
  pointer-events: none!important;
}


body.mc-header-search-open .top .header-search.mc-search-open {
  z-index: 20;
}


/* Theme Studio · Legal Pages single authoritative admin editor */
.mc-legal-editor{display:grid;gap:14px;max-width:100%;min-width:0}
.mc-legal-tabs,.mc-legal-actions{display:flex;flex-wrap:wrap;align-items:center;gap:10px}
.mc-legal-tabs .is-active{background:var(--mc-primary,#00f2ff);color:#07282f;border-color:transparent}
.mc-legal-field{display:grid;gap:8px;min-width:0}
.mc-legal-field[hidden],.mc-legal-preview[hidden]{display:none!important}
.mc-legal-field>label{font-weight:750;font-size:14px;color:inherit}
/* Legal Pages: compact tap-to-expand previews + one fullscreen editor (no duplicate editing source). */
.mc-legal-field-top{display:flex;align-items:center;justify-content:space-between;gap:10px;flex-wrap:wrap}
.mc-legal-editor .mc-legal-field textarea{display:block;box-sizing:border-box;width:100%;max-width:100%;height:150px;min-height:150px;max-height:150px;resize:none;cursor:pointer;line-height:1.7;white-space:pre-wrap;overflow-wrap:anywhere;padding:13px 15px;border:1px solid var(--mc-border,#d4e4e8);border-radius:13px;background:var(--mc-input-bg,#fff);color:var(--mc-text,#15252c);font-size:15px;font-family:inherit}
.mc-legal-editor .mc-legal-field textarea[dir="rtl"]{font-family:Tahoma,"Noto Naskh Arabic",Arial,sans-serif;line-height:1.95;font-size:16px}
.mc-legal-field textarea:focus-visible,.mc-legal-open:focus-visible{outline:2px solid var(--mc-primary,#00f2ff);outline-offset:2px}
/* One full-screen legal writing dialog: own its geometry instead of inheriting Theme Studio input styles. */
#mcLegalWritingDialog.mc-legal-writing-dialog{box-sizing:border-box;display:none;position:fixed;inset:12px auto auto 50%;transform:translateX(-50%);margin:0!important;padding:0!important;width:min(960px,calc(100vw - 24px));max-width:none!important;height:min(900px,calc(100dvh - 24px));max-height:none!important;border:1px solid #d7e8eb;border-radius:18px;background:#fff;color:#14262d;box-shadow:0 18px 68px #001b2840;overflow:hidden!important;overscroll-behavior:contain}
#mcLegalWritingDialog.mc-legal-writing-dialog[open]{display:block!important}
#mcLegalWritingDialog::backdrop{background:rgba(2,14,24,.66);backdrop-filter:blur(3px)}
#mcLegalWritingDialog .mc-legal-writing-layout{box-sizing:border-box;display:grid!important;grid-template-rows:auto minmax(0,1fr) auto!important;grid-template-columns:minmax(0,1fr);width:100%!important;height:100%!important;min-width:0;min-height:0!important;max-height:none!important;overflow:hidden!important}
#mcLegalWritingDialog .mc-legal-writing-head{display:flex;align-items:center;justify-content:space-between;gap:12px;min-width:0;padding:12px 18px;border-bottom:1px solid #e1eaed;background:#fff}
#mcLegalWritingDialog .mc-legal-writing-kicker{display:block;color:#566e76;font:700 10px/1.3 system-ui,sans-serif;letter-spacing:.08em}
#mcLegalWritingDialog .mc-legal-writing-head h2{margin:4px 0 0;font:750 18px/1.3 system-ui,sans-serif;color:#152830}
#mcLegalWritingDialog .mc-legal-writing-x{border:1px solid #dce8ec;border-radius:11px;background:#f4f7f8;color:#16343b;font-size:26px;line-height:1;width:40px;height:40px;cursor:pointer;flex-shrink:0}
#mcLegalWritingDialog #mcLegalWritingText{box-sizing:border-box;display:block!important;min-width:0!important;min-height:0!important;max-height:none!important;max-width:none!important;width:100%!important;height:100%!important;margin:0!important;padding:clamp(14px,2.5vw,24px)!important;border:0!important;border-radius:0!important;outline:none!important;resize:none!important;overflow-y:auto!important;overflow-x:hidden!important;overscroll-behavior:contain;font:400 17px/1.8 system-ui,Arial,sans-serif!important;color:#162933!important;background:#fff!important;box-shadow:none!important;white-space:pre-wrap;overflow-wrap:anywhere;tab-size:2;touch-action:pan-y}
#mcLegalWritingDialog #mcLegalWritingText[dir="rtl"]{font-family:Tahoma,"Noto Naskh Arabic",Arial,sans-serif!important;font-size:18px!important;line-height:1.95!important}
#mcLegalWritingDialog .mc-legal-writing-actions{box-sizing:border-box;display:flex!important;align-items:center;justify-content:space-between;gap:8px;flex-wrap:nowrap!important;min-width:0;padding:9px 14px;padding-bottom:max(9px,env(safe-area-inset-bottom));border-top:1px solid #e1eaed;background:#fff}
#mcLegalWritingDialog .mc-legal-writing-actions>span{font-size:12px;color:#61747b;font-variant-numeric:tabular-nums;white-space:nowrap}
#mcLegalWritingDialog .mc-legal-writing-actions>div{display:flex;flex-wrap:nowrap;justify-content:flex-end;gap:8px}
#mcLegalWritingDialog .mc-legal-writing-actions .btn{min-width:70px;min-height:40px;padding:7px 12px;white-space:nowrap}
#mcLegalWritingDialog #mcLegalWritingOK{background:#00f2ff!important;color:#06262d!important;border:1px solid #00cbd7!important;border-radius:10px!important}
@media(max-width:600px){
 .mc-legal-editor .mc-legal-field textarea{height:125px;min-height:125px;max-height:125px;padding:12px;font-size:15px}
 .mc-legal-editor .mc-legal-field textarea[dir="rtl"]{font-size:16px}
 #mcLegalWritingDialog.mc-legal-writing-dialog{inset:var(--mc-legal-visual-top,0px) auto auto var(--mc-legal-visual-left,0px)!important;transform:none!important;width:var(--mc-legal-visual-width,100vw)!important;max-width:none!important;height:var(--mc-legal-visual-height,100dvh)!important;max-height:none!important;border:0!important;border-radius:0!important}
 #mcLegalWritingDialog .mc-legal-writing-head{padding:8px 12px}
 #mcLegalWritingDialog .mc-legal-writing-kicker{font-size:9px}
 #mcLegalWritingDialog .mc-legal-writing-head h2{font-size:16px;margin-top:2px}
 #mcLegalWritingDialog .mc-legal-writing-x{height:36px;width:36px}
 #mcLegalWritingDialog #mcLegalWritingText{padding:12px 15px!important;font-size:17px!important}
 #mcLegalWritingDialog #mcLegalWritingText[dir="rtl"]{font-size:18px!important}
 #mcLegalWritingDialog .mc-legal-writing-actions{padding:7px 10px;padding-bottom:max(7px,env(safe-area-inset-bottom))}
 #mcLegalWritingDialog .mc-legal-writing-actions .btn{min-width:66px;min-height:38px;padding:6px 10px;font-size:13px}
}
@media(max-height:400px){#mcLegalWritingDialog .mc-legal-writing-head{padding-block:5px}#mcLegalWritingDialog .mc-legal-writing-actions{padding-top:5px;padding-bottom:5px}}
.mc-legal-note{margin:0;color:var(--mc-muted,#627187);font-size:12px;line-height:1.7}
.mc-legal-actions .btn{min-height:38px;display:inline-flex;align-items:center;justify-content:center;text-align:center;text-decoration:none}
.mc-legal-actions .btn.primary{margin-inline-start:auto}
.mc-legal-preview{background:#fff;color:#172033;border:1px solid #dae8ed;border-radius:14px;padding:clamp(14px,3vw,28px);max-height:540px;overflow:auto}
.mc-legal-preview section{line-height:1.8;overflow-wrap:anywhere}
.mc-legal-preview section+section{border-top:1px solid #e0e9ed;margin-top:26px;padding-top:24px;line-height:2}
.mc-legal-preview h1{font-size:23px;margin:0 0 13px}.mc-legal-preview h2{font-size:18px;margin:18px 0 9px}.mc-legal-preview h3{font-size:16px}
.mc-legal-preview p{font-size:14px;white-space:pre-wrap;margin:8px 0 14px}
@media(max-width:540px){.mc-legal-actions .btn{flex:1 1 auto}.mc-legal-actions .btn.primary{width:100%;flex-basis:100%}.mc-legal-tabs>.btn{flex:1 1 44%}}
/* Theme Studio · Editor shell and footer visibility.
   It is shown again only while explicit live Header/Footer editing is active. */
body.mc-theme-studio-active:not(.mc-live-header-editing) #siteFooterNav {
  display: none!important;
}


body.mc-theme-studio-active:not(.mc-live-header-editing) {
  padding-bottom: 0!important;
}


body.mc-theme-studio-active .theme-v97-card {
  padding-bottom: 84px!important;
}


/* Theme Studio · Item accordions and expansion */
.theme-ordered-builder details:not([open])>:not(summary) {
  display: none !important;
}


.theme-compact-list {
  display: grid;
  gap: 8px;
  min-width: 0;
}


.theme-item-accordion {
  border: 1px solid var(--mc-border,#dfe4e9);
  border-radius: 12px;
  background: var(--mc-card-material,#fff);
  min-width: 0;
  overflow: hidden;
}


.theme-module-item-picker {
  display: grid;
  gap: 6px;
  margin: 0 0 8px;
}


.theme-module-item-picker select {
  width: 100%;
  min-width: 0;
}


.theme-module-element[hidden] {
  display: none !important;
}


.theme-item-accordion>summary {
  list-style: none;
  cursor: pointer;
  display: flex;
  align-items: center;
  gap: 9px;
  min-height: 46px;
  padding: 10px 12px;
  font-weight: 800;
  min-width: 0;
}


.theme-item-accordion>summary::-webkit-details-marker {
  display: none;
}


.theme-item-accordion>summary>span:first-child {
  min-width: 0;
  flex: 1;
  display: grid;
  gap: 2px;
}


.theme-item-accordion>summary small {
  font-size: 10px;
  font-weight: 650;
  color: var(--mc-muted,#000);
}


.theme-item-accordion[open]>summary {
  border-bottom: 1px solid var(--mc-border,#dfe4e9);
}


.theme-compact-item-body {
  display: grid;
  gap: 10px;
  padding: 11px;
  min-width: 0;
}


.theme-header-card-field.theme-item-accordion {
  padding: 0;
  margin: 0;
}


.theme-header-card-field.theme-item-accordion>summary b {
  font-size: 13px;
}


.theme-menu-item-card.theme-item-accordion {
  padding: 0;
}


.theme-menu-item-card.theme-item-accordion>.theme-menu-item-head {
  display: grid;
  grid-template-columns: 30px minmax(0,1fr) auto auto 18px;
  align-items: center;
  gap: 7px;
}


.theme-menu-item-card.theme-item-accordion>.theme-menu-item-head>b {
  min-width: 0;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}


.theme-instance-row.theme-item-accordion {
  display: block;
  padding: 0;
}


.theme-instance-row.theme-item-accordion>summary {
  grid-template-columns: minmax(0,1fr) 18px;
}


.theme-site-slot.theme-item-accordion {
  display: block;
  padding: 0;
}


.theme-site-slot.theme-item-accordion>summary {
  display: grid;
  grid-template-columns: 38px minmax(0,1fr) 18px;
  grid-template-areas: "preview meta arrow";
}


.theme-site-slot.theme-item-accordion>summary .theme-site-slot-preview {
  grid-area: preview;
}


.theme-site-slot.theme-item-accordion>summary .theme-site-slot-meta {
  grid-area: meta;
}


.theme-site-slot.theme-item-accordion>.theme-compact-item-body {
  display: grid;
  gap: 10px;
}


.theme-page-item.theme-item-accordion {
  padding: 0;
}


@media(max-width:520px) {
  .theme-item-accordion>summary {
  padding: 9px 10px;
}

  .theme-compact-item-body {
  padding: 10px;
}
}


/* Theme Studio · Header/Footer placement and master controls */
.theme-placement-quick {
  display: grid;
  grid-template-columns: minmax(0,1.4fr) minmax(140px,.8fr) minmax(130px,.65fr) auto;
  gap: 9px;
  align-items: end;
  margin: 10px 0;
  padding: 11px;
  border: 1px solid #dce3e9;
  border-radius: 12px;
  background: #fff;
}


.theme-placement-quick>div {
  display: grid;
  gap: 3px;
  align-self: center;
  min-width: 0;
}


.theme-placement-quick>div>b {
  font-size: 13px;
  line-height: 1.25;
  color: #000;
}


.theme-placement-quick>div>small {
  font-size: 10px;
  line-height: 1.4;
  color: #000;
  opacity: .72;
}


.theme-placement-quick>label {
  display: grid;
  gap: 5px;
  min-width: 0;
  font-size: 10px;
  font-weight: 800;
  color: #000;
}


.theme-placement-quick select {
  width: 100%;
  min-width: 0;
  min-height: 42px;
}


.theme-placement-quick .btn {
  min-height: 42px;
  white-space: nowrap;
}


.theme-footer-master {
  margin: 4px 0 10px;
  padding: 0;
  border: 1px solid #b9d9ff;
  border-radius: 14px;
  background: #f5faff;
  overflow: hidden;
}


.theme-master-switch {
  display: grid!important;
  grid-template-columns: 42px minmax(0,1fr)!important;
  gap: 10px!important;
  align-items: center!important;
  min-height: 58px;
  padding: 9px 11px!important;
  cursor: pointer;
}


.theme-master-switch>input[type=checkbox] {
  appearance: none;
  -webkit-appearance: none;
  position: relative;
  width: 40px!important;
  height: 22px!important;
  margin: 0!important;
  border: 1px solid #aeb9c4;
  border-radius: 999px;
  background: #e1e6eb;
  cursor: pointer;
  transition: background .16s ease,border-color .16s ease;
}


.theme-master-switch>span {
  display: grid;
  gap: 2px;
  min-width: 0!important;
  width: auto!important;
  word-break: normal!important;
  overflow-wrap: normal!important;
}


.theme-master-switch>span>b {
  font-size: 14px;
  color: #000;
}


.theme-master-switch>span>small {
  font-size: 10px;
  line-height: 1.4;
  color: #000;
  opacity: .72;
}


@media(max-width:700px) {
  .theme-placement-quick {
  grid-template-columns: minmax(0,1fr) minmax(0,1fr);
}

  .theme-placement-quick>div {
  grid-column: 1/-1;
}

  .theme-placement-quick .btn {
  grid-column: 1/-1;
  width: 100%;
}
}


@media(max-width:520px) {
  .theme-placement-quick {
  grid-template-columns: minmax(0,1fr)!important;
  padding: 9px;
}

  .theme-placement-quick>div,
  .theme-placement-quick>label,
  .theme-placement-quick .btn {
  grid-column: 1!important;
  width: 100%!important;
}

  .theme-footer-master {
  margin-top: 2px;
}

  .theme-master-switch {
  grid-template-columns: 42px minmax(0,1fr)!important;
  padding: 9px 10px!important;
}
}


/* Theme Studio · Mobile-first editor layout */
.theme-v97-card * {
  box-sizing: border-box;
}


.theme-v97-card .theme-control-section {
  border: 1px solid #dce3e9;
  border-radius: 14px;
  background: #fff;
  overflow: hidden;
  box-shadow: none;
}


.theme-v97-card .theme-builder-summary {
  min-height: 54px;
  padding: 10px 12px;
  background: #fff;
}


.theme-v97-card .theme-control-body {
  padding: 10px;
  background: #f7f9fb;
}


.theme-v97-card .theme-control-body>p.theme-step-desc {
  margin: 0 0 9px;
  padding: 8px 10px;
  border-radius: 9px;
  background: #fff;
  border: 1px solid #e2e7ec;
  font-size: 11px;
  line-height: 1.45;
}


.theme-v97-card .theme-layout-major-accordion,
.theme-v97-card .theme-advanced-panel,
.theme-v97-card .theme-option-accordion {
  border: 1px solid #dce3e9;
  border-radius: 11px;
  background: #fff;
  overflow: hidden;
  margin: 7px 0;
}


.theme-v97-card .theme-layout-major-accordion>summary,
.theme-v97-card .theme-advanced-panel>summary,
.theme-v97-card .theme-option-accordion>summary {
  min-height: 44px;
  padding: 9px 11px;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 8px;
  cursor: pointer;
  list-style: none;
  font-size: 12px;
  font-weight: 850;
}


.theme-v97-card .theme-layout-major-accordion>summary::-webkit-details-marker,
.theme-v97-card .theme-advanced-panel>summary::-webkit-details-marker,
.theme-v97-card .theme-option-accordion>summary::-webkit-details-marker {
  display: none;
}


.theme-v97-card .theme-v97-grid,
.theme-v97-card .theme-v97-sliders,
.theme-v97-card .grid2 {
  display: grid;
  grid-template-columns: minmax(0,1fr);
  gap: 9px;
}


.theme-v97-card .theme-field,
.theme-v97-card .theme-v97-grid>*,
.theme-v97-card .theme-v97-sliders>* {
  min-width: 0;
}


.theme-v97-card input,
.theme-v97-card select,
.theme-v97-card button {
  max-width: 100%;
}


.theme-v97-card input[type=color] {
  width: 54px!important;
  min-width: 54px!important;
  height: 42px!important;
  padding: 3px!important;
  border: 1px solid #b9c1c9!important;
  border-radius: 10px!important;
  background: #fff!important;
}


.theme-v97-card .theme-hex-code {
  width: min(150px,100%)!important;
  min-width: 0!important;
  height: 42px!important;
  border: 1px solid #b9c1c9!important;
  border-radius: 10px!important;
  padding: 0 10px!important;
  background: #fff!important;
  font: 750 13px ui-monospace,SFMono-Regular,Menlo,monospace!important;
  text-transform: uppercase!important;
}


.theme-v97-card .theme-colour-line {
  display: grid!important;
  grid-template-columns: 54px minmax(0,1fr)!important;
  gap: 8px!important;
  align-items: center!important;
}


.theme-v97-card .theme-colour-preset {
  min-width: 0;
}


.theme-v97-card .theme-colour-preset>label,
.theme-v97-card .theme-colour-preset>span:first-child {
  font-size: 12px;
  font-weight: 800;
}


.theme-v97-card .theme-match-bg {
  min-height: 38px;
  padding: 0 10px;
  font-size: 11px;
  white-space: nowrap;
  overflow-wrap: normal;
  word-break: normal;
  justify-self: start;
}

.theme-v97-card .theme-colour-line .theme-match-bg {
  grid-column: 1 / -1;
  width: max-content;
  max-width: 100%;
}


.theme-v97-card .theme-module-color-row {
  display: grid!important;
  grid-template-columns: 54px minmax(112px,150px)!important;
  gap: 8px!important;
  align-items: center!important;
}


.theme-v97-card .theme-module-color-row .theme-hex-code {
  width: 100%!important;
}


.theme-v97-card .theme-compact-item-body>label:has(input[type=color]),
.theme-v97-card .theme-eng-control-part>label:has(input[type=color]),
.theme-v97-card .theme-menu-card-style>label:has(input[type=color]) {
  grid-template-columns: minmax(0,1fr) 54px minmax(112px,150px);
  align-items: center;
  gap: 8px;
}


.theme-v97-card .theme-compact-item-body>label:has(input[type=color])>span,
.theme-v97-card .theme-eng-control-part>label:has(input[type=color])>span,
.theme-v97-card .theme-menu-card-style>label:has(input[type=color])>span {
  min-width: 0;
}


.theme-v97-card .theme-site-slot>summary,
.theme-v97-card .theme-icon-control>summary,
.theme-v97-card .theme-instance-row>summary {
  min-height: 50px;
}


.theme-v97-card .theme-module-open-layout {
  grid-template-columns: minmax(0,1fr)!important;
}


.theme-v97-card .theme-item-preview-slot {
  order: 2;
}


.theme-v97-card .theme-module-element-fields {
  order: 1;
}


.theme-v97-card .theme-item-preview-placeholder {
  min-height: 105px;
}


.theme-v97-card .theme-subgroup-grid {
  grid-template-columns: minmax(0,1fr)!important;
}


@media(min-width:760px) {
  .theme-v97-card .theme-v97-grid,
  .theme-v97-card .theme-v97-sliders,
  .theme-v97-card .grid2 {
  grid-template-columns: repeat(2,minmax(0,1fr));
}

  .theme-v97-card .theme-subgroup-grid {
  grid-template-columns: repeat(2,minmax(0,1fr))!important;
}

  .theme-v97-card .theme-module-open-layout {
  grid-template-columns: minmax(240px,.8fr) minmax(0,1.2fr)!important;
}

  .theme-v97-card .theme-item-preview-slot {
  order: 1;
}

  .theme-v97-card .theme-module-element-fields {
  order: 2;
}
}


@media(max-width:520px) {
  .theme-v97-card {
  padding: 10px!important;
}

  .theme-v97-card .theme-control-body {
  padding: 8px;
}

  .theme-v97-card .theme-builder-summary {
  padding: 9px 10px;
}

  .theme-v97-card .theme-colour-line {
  grid-template-columns: 50px minmax(100px,1fr)!important;
}

  .theme-v97-card .theme-colour-line .theme-match-bg {
  grid-column: 1/-1;
}

  .theme-v97-card .theme-module-color-row {
  grid-template-columns: 50px minmax(100px,1fr)!important;
}

  .theme-v97-card .theme-compact-item-body>label:has(input[type=color]),
  .theme-v97-card .theme-eng-control-part>label:has(input[type=color]),
  .theme-v97-card .theme-menu-card-style>label:has(input[type=color]) {
  display: grid!important;
  grid-template-columns: 50px minmax(0,1fr)!important;
  grid-template-rows: auto 42px!important;
  align-items: center!important;
  gap: 6px 8px!important;
  min-width: 0!important;
  width: 100%!important;
}

  .theme-v97-card .theme-compact-item-body>label:has(input[type=color])>span:first-child,
  .theme-v97-card .theme-eng-control-part>label:has(input[type=color])>span:first-child,
  .theme-v97-card .theme-menu-card-style>label:has(input[type=color])>span:first-child {
  grid-column: 1/-1!important;
  grid-row: 1!important;
  min-width: 0!important;
  width: auto!important;
  word-break: normal!important;
  overflow-wrap: normal!important;
  white-space: normal!important;
  line-height: 1.3!important;
}

  .theme-v97-card .theme-compact-item-body>label:has(input[type=color])>input[type=color],
  .theme-v97-card .theme-eng-control-part>label:has(input[type=color])>input[type=color],
  .theme-v97-card .theme-menu-card-style>label:has(input[type=color])>input[type=color] {
  grid-column: 1!important;
  grid-row: 2!important;
  width: 50px!important;
  min-width: 50px!important;
  height: 42px!important;
}

  .theme-v97-card .theme-compact-item-body>label:has(input[type=color])>.theme-hex-code,
  .theme-v97-card .theme-eng-control-part>label:has(input[type=color])>.theme-hex-code,
  .theme-v97-card .theme-menu-card-style>label:has(input[type=color])>.theme-hex-code {
  grid-column: 2!important;
  grid-row: 2!important;
  width: 100%!important;
  min-width: 0!important;
  max-width: none!important;
}

  .theme-v97-card .theme-colour-preset {
  display: grid!important;
  grid-template-columns: minmax(0,1fr)!important;
  grid-template-rows: auto auto auto!important;
  align-items: stretch!important;
  gap: 7px!important;
  min-width: 0!important;
  width: 100%!important;
}

  .theme-v97-card .theme-colour-preset>label[for] {
  grid-column: 1!important;
  grid-row: 1!important;
  min-width: 0!important;
  width: 100%!important;
  word-break: normal!important;
  overflow-wrap: normal!important;
  white-space: normal!important;
  line-height: 1.3!important;
}

  .theme-v97-card .theme-colour-preset>.theme-colour-line {
  grid-column: 1!important;
  grid-row: 2!important;
  width: 100%!important;
  min-width: 0!important;
}

  .theme-v97-card .theme-colour-preset>.theme-colour-strength {
  grid-column: 1!important;
  grid-row: 3!important;
  width: 100%!important;
  min-width: 0!important;
  grid-template-columns: max-content minmax(0,1fr) max-content!important;
  gap: 8px!important;
}

  .theme-v97-card .theme-colour-preset>.theme-colour-strength>span {
  white-space: nowrap!important;
  word-break: keep-all!important;
  overflow-wrap: normal!important;
}

  .theme-v97-card .theme-colour-preset>.theme-colour-strength>input[type=range] {
  width: 100%!important;
  min-width: 0!important;
}

  .theme-menu-item-card.theme-item-accordion>.theme-menu-item-head {
  grid-template-columns: 28px minmax(0,1fr) auto 16px!important;
}

  .theme-menu-item-card.theme-item-accordion>.theme-menu-item-head>small {
  display: none;
}

  .theme-menu-show {
  font-size: 10px!important;
}
}

/* ===== V97.198 CANONICAL PROFESSIONAL UI OWNERSHIP =====
   Voting/result and announcement voice player have one source owner here.
   Theme Studio remains variable-driven; no legacy per-screen vote patches remain. */
body.flat-theme :is(.home-page-shell,.announcements-page-shell,.voting-page-shell,.post-page-shell,.saved-page-shell,.search-page-shell,.settings-page-shell,.shops-page-shell,.route-frame) {
  align-content: start;
}


body.flat-theme :is(.profile-page-frame,.shop-detail-page-frame,.message-page-frame,.notification-page-frame) {
  display: grid;
  grid-template-columns: minmax(0,1fr);
  align-content: start;
  gap: 12px;
  min-width: 0;
}


body.flat-theme main#app :is(h1,h2,h3,p) {
  max-width: 100%;
  overflow-wrap: anywhere;
}


body.flat-theme main#app :is(h1,h2,h3) {
  line-height: 1.18;
}


body.flat-theme main#app :is(form,label,.section-row,.settingrow,.conversation-row,.notification-card,.people-suggest-pro,.admin-section) {
  min-width: 0;
  max-width: 100%;
}


body.flat-theme main#app :is(input,textarea,select,button,a) {
  max-width: 100%;
}


body.flat-theme main#app :is(img,video,audio) {
  max-width: 100%;
}


body.flat-theme .tablewrap {
  width: 100%;
  max-width: 100%;
  overflow-x: auto;
  overscroll-behavior-x: contain;
}


body.flat-theme :is(.settings-stack,.notifications-list,.conversation-list,.people-discovery-grid) {
  min-width: 0;
}


body.flat-theme :is(.settingrow,.conversation-row,.notification-card) {
  box-sizing: border-box;
}


body.flat-theme .community-footer {
  margin: 4px 0 0;
  padding: 14px 8px calc(10px + env(safe-area-inset-bottom));
  text-align: center;
  font-size: 10.5px;
  line-height: 1.35;
  color: var(--mc-muted,#66738b);
}


body.flat-theme :is(.home-feed-list,.announcement-feed,.saved-page-feed) {
  display: grid;
  grid-template-columns: minmax(0,1fr);
  gap: 12px;
}


body.flat-theme .announcement-feed>.card,
body.flat-theme .saved-page-feed>.card {
  margin: 0;
}


body.flat-theme .page-heading {
  margin: 0 !important;
  min-width: 0;
}


body.flat-theme .page-heading p {
  line-height: 1.35;
  overflow-wrap: anywhere;
}


body.flat-theme .section-row {
  min-width: 0;
  flex-wrap: wrap;
}



body.flat-theme :is(input,textarea,select) {
  font: inherit;
  line-height: 1.3;
}


body.flat-theme .person {
  min-width: 0;
  align-items: center;
}


body.flat-theme .person>span {
  min-width: 0;
}


body.flat-theme .person b {
  font-size: 14px;
  line-height: 1.2;
}


body.flat-theme .person small {
  font-size: 11px;
  line-height: 1.25;
  color: var(--mc-muted,#66738b);
}


body.flat-theme .post {
  background: var(--mc-post-surface,#fff)!important;
  border: 2px solid var(--mc-post-frame-border,var(--mc-border,#d7dde5))!important;
  border-radius: var(--mc-card-radius,12px)!important;
  box-shadow: none!important;
  overflow: hidden;
  display: grid;
  grid-template-columns: minmax(0,1fr);
  align-content: start;
  padding: var(--mc-post-pad,var(--mc-card-pad,16px))!important;
}


body.flat-theme .posthead {
  align-items: center;
  min-width: 0;
}

/* Canonical mobile card geometry: preserve every original card/border and
   move only the requested full-width content to a 3px outer page gutter.
   Suggestion grids and unrelated pages retain their original dimensions. */
@media (max-width: 759px) {
  body.flat-theme main#app {
    --mc-card-route-gutter: clamp(10px,2.5vw,16px);
  }
  /* Feed/posts/shop/voting cards sit close to the edge. The suggestion
     collections remain unchanged; card border/padding/Theme settings survive. */
  body.flat-theme :is(
    .home-feed-list > .post,
    .home-feed-list > .feed-voting-teasers,
    .home-feed-list > .vote-open-feed-section,
    .post-page-shell > .post,
    .saved-page-feed > .post,
    .shops-page-shell > .shop-all-card,
    .shops-page-shell > .shop-create-panel
  ) {
    width: calc(100% + var(--mc-card-route-gutter) + var(--mc-card-route-gutter) - 2px);
    max-width: none !important;
    margin-left: calc(1px - var(--mc-card-route-gutter));
    margin-right: 0;
    box-sizing: border-box;
  }
  /* Entire voting, announcement, chat and individual-shop cards now reach
     the same edge; their own borders and Theme Studio padding stay intact. */
  body.flat-theme main#app:has(> :is(
    .voting-page-shell,
    .announcements-page-shell,
    .message-page-frame,
    .shop-detail-page-frame
  )) {
    padding-left: 1px !important;
    padding-right: 1px !important;
  }
  /* Route-frame's internal 10px canvas was the second unwanted gutter.
     Do not alter the chat scroller, header, composer or any fixed elements. */
  body.flat-theme main#app > :is(.message-page-frame,.shop-detail-page-frame) {
    padding-left: 0 !important;
    padding-right: 0 !important;
  }
}
@media (max-width: 700px) {
  body.flat-theme main#app {
    --mc-card-route-gutter: 7px;
  }
}


body.flat-theme .posthead>.person {
  flex: 1 1 auto;
}


/* Post media inset: the original outer post border and inner media border
   remain intact; full-width card geometry is owned by the route rules above. */
/* The post still owns its outer card and the media still owns its inner border.
   Near-edge media has no unneeded white inset or letterbox inside its preview.
   The existing photo viewer continues to reveal the complete uncropped image. */
body.flat-theme .announcement-card > a[data-open-post-photo] {
  display: block;
  box-sizing: border-box;
  height: clamp(220px, 64vw, 280px);
  width: calc(100% + var(--mc-post-pad,var(--mc-card-pad,16px)) * 2 - 4px);
  max-width: none;
  overflow: hidden;
  margin: 10px 0 0 calc(2px - var(--mc-post-pad,var(--mc-card-pad,16px)));
  border-radius: 12px;
  background: #0a0d12;
}
body.flat-theme .post > a[data-open-post-photo] {
  display: block;
  box-sizing: border-box;
  width: calc(100% + var(--mc-post-pad,var(--mc-card-pad,16px)) + var(--mc-post-pad,var(--mc-card-pad,16px)) - 4px);
  max-width: none!important;
  height: clamp(220px, 64vw, 280px);
  margin: 10px 0 0 calc(2px - var(--mc-post-pad,var(--mc-card-pad,16px)));
  min-width: 0;
  overflow: hidden;
  border-radius: 12px;
  background: #0a0d12;
}
body.flat-theme .postimg {
  display: block;
  box-sizing: border-box;
  width: 100%;
  height: 100% !important;
  margin: 0;
  border: 2px solid var(--mc-border,#dfe4e9)!important;
  border-radius: 12px!important;
  box-shadow: none!important;
  max-height: 100%;
  object-fit: cover;
  object-position: center;
  background: transparent;
}



body.flat-theme .posttext {
  margin-top: 10px !important;
  margin-bottom: 0 !important;
}


body.flat-theme .post-extra-row {
  margin-top: 5px !important;
  margin-bottom: 0 !important;
}


/* Announcement card hierarchy */
body.flat-theme .announcement-card {
  background: var(--mc-announcement-surface,#fff)!important;
  display: grid!important;
  grid-template-columns: minmax(0,1fr);
  align-content: start;
  gap: 0!important;
  padding: var(--mc-post-pad,var(--mc-card-pad,16px))!important;
}


body.flat-theme .announcement-head {
  margin: 0;
  align-items: start !important;
}


body.flat-theme .announcement-kind-row {
  margin: 10px 0 0 !important;
}


body.flat-theme .announcement-text {
  margin: 10px 0 0 !important;
  padding: 0 !important;
  border: 0 !important;
  line-height: 1.48 !important;
}


body.flat-theme .announcement-photo {
  box-sizing: border-box;
  border: 2px solid var(--mc-border,#dfe4e9)!important;
  box-shadow: none!important;
  display: block;
  margin: 0 !important;
  width: 100%;
  height: auto;
}
body.flat-theme img.announcement-photo {
  max-height: 100%;
  height: 100% !important;
  object-fit: cover;
  object-position: center;
  background: transparent;
}



/* Professional voice announcement player */
.voice-announcement-player {
  width: 100%;
  display: grid;
  grid-template-columns: 48px minmax(0,1fr);
  align-items: center;
  gap: 10px;
  margin: 12px 0 0;
  padding: 11px;
  border: 1px solid var(--mc-border,#dfe4e9);
  border-radius: 12px;
  background: var(--mc-card-material,#fff);
  overflow: hidden;
}


.voice-announcement-player audio {
  display: none;
}


.voice-play {
  width: 46px;
  height: 46px;
  min-width: 46px;
  display: grid;
  place-items: center;
  border: 1px solid var(--mc-border,#dfe4e9);
  border-radius: 12px;
  background: var(--mc-input-material,#fff);
  color: var(--mc-text,#000);
  padding: 0;
}


.voice-play-icon {
  display: block;
  font-size: 18px;
  line-height: 1;
  transform: translateX(1px);
}


.voice-core {
  display: grid;
  grid-template-columns: minmax(0,1fr);
  gap: 7px;
  min-width: 0;
}


.voice-title {
  display: grid;
  grid-template-columns: minmax(0,1fr);
  gap: 2px;
  min-width: 0;
}


.voice-title b {
  font-size: 14px;
  line-height: 1.18;
  white-space: normal;
  overflow-wrap: anywhere;
}


.voice-title small {
  font-size: 10.5px;
  line-height: 1.25;
  color: var(--mc-muted,#66738b);
  white-space: normal;
  overflow-wrap: anywhere;
}


.voice-wave-track {
  position: relative;
  width: 100%;
  height: 34px;
  display: block;
  margin: 0;
  padding: 0 2px;
  border: 0;
  background: transparent;
  overflow: hidden;
  cursor: pointer;
}


.voice-wave-bars {
  position: absolute;
  inset: 0 2px;
  height: 100%;
  display: flex;
  align-items: center;
  gap: 2px;
  overflow: hidden;
  pointer-events: none;
}


.voice-wave-bars i {
  display: block;
  flex: 1 1 2px;
  min-width: 1px;
  max-width: 3px;
  height: max(12%,var(--bar,36%));
  border-radius: 99px;
  background: color-mix(in srgb,var(--mc-text,#000) 32%,transparent);
}


.voice-wave-bars-played {
  clip-path: inset(0 100% 0 0);
  z-index: 1;
  transition: none !important;
}


.voice-wave-bars-played i {
  background: var(--mc-active,#1683ff);
}


.voice-time {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 10px;
  font-size: 10.5px;
  line-height: 1;
  color: var(--mc-muted,#66738b);
  font-variant-numeric: tabular-nums;
}


.voice-live-dot {
  display: none;
}


/* Voting — complete professional card */
.voting-page-shell {
  display: grid;
  grid-template-columns: minmax(0,1fr);
  gap: 12px;
}


.vote-card {
  display: grid;
  grid-template-columns: minmax(0,1fr);
  align-content: start;
  overflow: visible !important;
  padding: var(--mc-vote-pad,16px) !important;
  background: var(--mc-vote-surface,var(--mc-card-material,#fff)) !important;
}


.vote-kicker {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  font-size: 10px;
  font-weight: 900;
  line-height: 1.15;
  letter-spacing: .10em;
  text-transform: uppercase;
  color: var(--mc-muted,#66738b);
}


.vote-card-head {
  display: grid;
  grid-template-columns: minmax(0,1fr);
  justify-items: center;
  text-align: center;
  gap: 5px;
  min-width: 0;
}


.vote-card-head>div {
  display: grid;
  justify-items: center;
  gap: 4px;
  min-width: 0;
}


.vote-card-head h2 {
  margin: 0 !important;
  max-width: 100%;
  font-size: clamp(23px,6.2vw,34px);
  line-height: 1.08;
  letter-spacing: -.02em;
  overflow-wrap: anywhere;
}


.vote-card-head h2 span {
  display: inline-block;
  font-size: .65em;
  font-weight: 800;
  letter-spacing: 0;
  text-transform: lowercase;
  color: var(--mc-muted,#66738b);
}


.vote-card-head .vote-timer {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-height: 30px;
  margin: 2px 0 0;
  padding: 5px 10px;
  border: 1px solid var(--mc-border,#dfe4e9);
  border-radius: 999px;
  background: var(--mc-input-material,#fff);
  font-size: 10.5px;
  font-weight: 800;
  line-height: 1.1;
  text-align: center;
}


.vote-help-banner {
  display: grid;
  grid-template-columns: minmax(0,1fr);
  justify-items: center;
  gap: 4px;
  margin-top: 12px;
  padding: 10px 12px;
  border: 1px solid var(--mc-border,#dfe4e9);
  border-radius: 12px;
  background: var(--mc-card-material,#fff);
  text-align: center;
  min-width: 0;
}


.vote-help-banner b {
  font-size: 13px;
  line-height: 1.2;
}


.vote-help-banner span {
  display: block;
  max-width: 100%;
  font-size: 12px;
  line-height: 1.38;
  color: var(--mc-muted,#66738b);
  overflow-wrap: anywhere;
}


.vote-help-result b {
  font-size: 14px;
}


.vote-arena,
.vote-duel,
.vote-single-arena {
  display: grid;
  grid-template-columns: minmax(0,1fr) clamp(88px,26vw,116px) minmax(0,1fr);
  align-items: start;
  gap: 7px;
  margin-top: 12px;
  padding: 12px 7px;
  border: 1px solid var(--mc-border,#dfe4e9);
  border-radius: 12px;
  background: var(--mc-card-material,#fff);
  min-width: 0;
}


.vote-candidate {
  display: grid;
  justify-items: center;
  align-content: center;
  text-align: center;
  gap: 4px;
  min-width: 0;
  padding: 6px 2px;
}


.vote-candidate-line {
  width: 100%;
  min-width: 0;
  max-width: 100%;
  font-size: 11px;
  line-height: 1.35;
  overflow-wrap: anywhere;
  margin: 4px 0 0;
}


/* The two match players share native grid rows, so a written line cannot displace either player. */
.vote-single-arena {
  grid-template-rows: repeat(7,auto);
  row-gap: 4px;
}


.vote-single-arena>.vote-player-slot {
  display: contents;
}


.vote-single-arena>.left-player>* {
  grid-column: 1;
}


.vote-single-arena>.right-player>* {
  grid-column: 3;
}


.vote-single-arena>.vote-player-slot>* {
  justify-self: center;
  min-width: 0;
  max-width: 100%;
  text-align: center;
}


.vote-single-arena>.vote-player-slot>:first-child {
  grid-row: 1;
}


.vote-single-arena>.vote-player-slot>b {
  grid-row: 2;
}


.vote-single-arena>.vote-player-slot>small {
  grid-row: 3;
}


.vote-single-arena>.vote-player-slot>.vote-inline-cast {
  grid-row: 4;
}


.vote-single-arena>.vote-player-slot>.player-ready-dot {
  grid-row: 5;
}


.vote-single-arena>.vote-player-slot>.vote-player-line {
  grid-row: 6;
}


.vote-single-arena>.vote-player-slot>.vote-inline-count {
  grid-row: 7;
}


.vote-profile {
  display: grid;
  justify-items: center;
  gap: 4px;
  min-width: 0;
}


.vote-avatar,
.vote-arena-avatar {
  width: clamp(62px,18vw,82px) !important;
  height: clamp(62px,18vw,82px) !important;
  max-width: 82px !important;
  max-height: 82px !important;
  border-radius: 50%;
  object-fit: cover;
}


.vote-player-slot b,
.vote-candidate b {
  display: block;
  max-width: 100%;
  font-size: clamp(11.5px,3.3vw,14px);
  line-height: 1.18;
  white-space: normal;
  overflow-wrap: anywhere;
}


.vote-player-slot>small,
.vote-candidate>small {
  display: block;
  max-width: 100%;
  font-size: clamp(9.5px,2.8vw,11px);
  line-height: 1.2;
  color: var(--mc-muted,#66738b);
  white-space: normal;
  overflow-wrap: anywhere;
}


.player-ready-dot {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  max-width: 100%;
  margin-top: 2px;
  padding: 4px 8px;
  border: 1px solid var(--mc-border,#dfe4e9);
  border-radius: 999px;
  background: var(--mc-input-material,#fff);
  font-size: 9px;
  font-weight: 850;
  line-height: 1;
  white-space: nowrap;
}


.player-ready-dot.on {
  background: var(--mc-input-material,#fff);
  color: var(--mc-text,#000);
}


.vote-player-line {
  width: 100%;
  min-width: 0;
  max-width: 100%;
  margin: 5px 0 0;
  padding: 6px 2px 0;
  border-top: 1px solid var(--mc-border,#dfe4e9);
  font-size: 11px;
  line-height: 1.35;
  font-weight: 600;
  color: var(--mc-text,#000);
  overflow-wrap: anywhere;
  white-space: pre-wrap;
  text-align: center;
}


/* Challenge previews never enlarge the match grid until explicitly expanded. */
:is(.vote-player-line,.vote-open-statement,.vote-candidate-line):is(details)>summary {
  list-style: none;
  display: grid;
  justify-items: center;
  min-width: 0;
  gap: 2px;
  cursor: pointer;
}


:is(.vote-player-line,.vote-open-statement,.vote-candidate-line):is(details)>summary::-webkit-details-marker {
  display: none;
}


:is(.vote-player-line,.vote-open-statement,.vote-candidate-line):is(details)>summary>.vote-line-preview {
  display: -webkit-box;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 2;
  line-clamp: 2;
  overflow: hidden;
  width: 100%;
  max-width: 100%;
  overflow-wrap: anywhere;
  white-space: pre-wrap;
}


:is(.vote-player-line,.vote-open-statement,.vote-candidate-line):is(details)>summary>.vote-line-expand-label::after {
  content: 'Read more';
  font: inherit;
  font-size: 10px;
  color: var(--mc-muted,#66738b);
}


:is(.vote-player-line,.vote-open-statement,.vote-candidate-line)[open]>summary>.vote-line-preview {
  display: none;
}


:is(.vote-player-line,.vote-open-statement,.vote-candidate-line)[open]>summary>.vote-line-expand-label::after {
  content: 'Show less';
}


:is(.vote-player-line,.vote-open-statement,.vote-candidate-line)>p.vote-line-complete {
  margin: 5px 0 0;
  padding: 0;
  font: inherit;
  line-height: 1.35;
  font-weight: inherit;
  white-space: pre-wrap;
  overflow-wrap: anywhere;
  text-align: inherit;
}


.vote-center-stack {
  width: 100%;
  min-width: 0;
  display: grid;
  place-items: center;
  align-content: center;
  gap: 7px;
  justify-self: center;
  grid-column: 2;
  grid-row: 1 / 8;
  align-self: center;
}


.vote-vs-core {
  width: 52px;
  height: 52px;
  display: grid;
  place-items: center;
  align-content: center;
  gap: 0;
  border: 1px solid var(--mc-border,#dfe4e9);
  border-radius: 50%;
  background: var(--mc-input-material,#fff);
  color: var(--mc-text,#000);
}


.vote-vs-core span {
  font-size: 18px;
  font-weight: 950;
  line-height: 1;
}


.vote-vs-core small {
  margin-top: 2px;
  font-size: 6.5px;
  font-weight: 900;
  line-height: 1;
  letter-spacing: .10em;
  color: var(--mc-muted,#66738b);
}


.vote-inline-result {
  width: 100%;
  max-width: 112px;
  display: grid;
  justify-items: center;
  gap: 3px;
  padding: 8px 5px;
  border: 1px solid var(--mc-border,#dfe4e9);
  border-radius: 12px;
  background: var(--mc-card-material,#fff);
  min-width: 0;
}


.vote-inline-result>b {
  font-size: 8.5px;
  line-height: 1.1;
  letter-spacing: .06em;
  text-transform: uppercase;
  white-space: nowrap;
}


.vote-final-score {
  display: flex !important;
  align-items: center;
  justify-content: center;
  gap: 6px;
  width: 100%;
  font-variant-numeric: tabular-nums;
  white-space: nowrap;
}


.vote-final-score strong {
  font-size: clamp(20px,6.5vw,28px);
  font-weight: 950;
  line-height: 1;
}


.vote-final-score i {
  font-style: normal;
  font-size: 18px;
  line-height: 1;
  color: var(--mc-muted,#66738b);
}


.vote-inline-result small {
  font-size: 8.5px;
  line-height: 1.15;
  color: var(--mc-muted,#66738b);
  text-align: center;
}


.vote-inline-cast {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 5px;
  width: 100%;
  min-height: 38px;
  margin-top: 4px;
  padding: 7px 8px;
  border: 1px solid var(--mc-border,#dfe4e9);
  border-radius: 12px;
  background: var(--mc-input-material,#fff);
  font: inherit;
  font-size: 11px;
  font-weight: 850;
}


.vote-inline-cast.selected {
  background: var(--mc-active-tint,#f1f7ff);
}


.vote-inline-count {
  display: grid;
  justify-items: center;
  gap: 1px;
  margin-top: 4px;
  font-variant-numeric: tabular-nums;
}


.vote-inline-count b {
  font-size: 20px;
  line-height: 1;
}


.vote-inline-count small {
  font-size: 9px;
  color: var(--mc-muted,#66738b);
}


.vote-mini-timer,
.vote-feed-timer {
  width: 100%;
  display: grid;
  grid-template-columns: repeat(4,minmax(0,1fr));
  gap: 2px;
  padding: 5px;
  border: 1px solid var(--mc-border,#dfe4e9);
  border-radius: 10px;
  background: var(--mc-input-material,#fff);
  font-variant-numeric: tabular-nums;
}


.vote-mini-timer>span,
.vote-feed-timer>span {
  display: grid;
  place-items: center;
  gap: 1px;
  min-width: 0;
}


.vote-mini-timer b,
.vote-feed-timer b {
  font-size: 10px;
  line-height: 1;
}


.vote-mini-timer small,
.vote-feed-timer small {
  font-size: 5.5px;
  font-weight: 800;
  line-height: 1;
  color: var(--mc-muted,#66738b);
}


.vote-waiting-panel,
.vote-ready-panel {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 8px;
  margin-top: 10px;
  padding: 10px 12px;
  border: 1px solid var(--mc-border,#dfe4e9);
  border-radius: 12px;
  background: var(--mc-card-material,#fff);
  text-align: center;
}


.vote-waiting-panel>div,
.vote-ready-panel {
  min-width: 0;
}


.vote-waiting-panel b,
.vote-ready-panel b {
  display: block;
  font-size: 12px;
  line-height: 1.2;
}


.vote-waiting-panel small,
.vote-ready-panel small {
  display: block;
  margin-top: 2px;
  font-size: 10.5px;
  line-height: 1.3;
  color: var(--mc-muted,#66738b);
}


.vote-pulse-orb {
  width: 18px;
  height: 18px;
  flex: 0 0 18px;
  border: 1px solid var(--mc-border,#dfe4e9);
  border-radius: 50%;
  background: var(--mc-input-material,#fff);
}


.vote-result-pro {
  display: grid;
  gap: 8px;
  margin-top: 10px;
  min-width: 0;
}


.vote-result-meter {
  display: grid;
  gap: 8px;
  padding: 10px 11px;
  border: 1px solid var(--mc-border,#dfe4e9);
  border-radius: 12px;
  background: var(--mc-card-material,#fff);
  min-width: 0;
}


.vote-result-meter-labels {
  display: grid;
  grid-template-columns: minmax(0,1fr) minmax(0,1fr);
  align-items: center;
  gap: 10px;
  min-width: 0;
}


.vote-result-meter-labels span {
  display: flex;
  align-items: baseline;
  gap: 4px;
  min-width: 0;
  font-size: 11px;
  line-height: 1.2;
}


.vote-result-meter-labels span:last-child {
  justify-content: flex-end;
  text-align: right;
}


.vote-result-meter-labels small {
  min-width: 0;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
  font-size: 10.5px;
  color: var(--mc-text,#000);
}


.vote-result-meter-labels b {
  font-size: 16px;
  line-height: 1;
  font-variant-numeric: tabular-nums;
  flex: 0 0 auto;
}


.vote-result-track {
  height: 12px;
  display: flex;
  overflow: hidden;
  border-radius: 999px;
  background: color-mix(in srgb,var(--mc-border,#dfe4e9) 65%,transparent);
}


.vote-result-track i,
.vote-result-track em {
  display: block;
  height: 100%;
  margin: 0;
  padding: 0;
  border: 0;
}


.vote-result-track i {
  background: var(--mc-active,#42546b);
}


.vote-result-track em {
  background: color-mix(in srgb,var(--mc-active,#42546b) 48%,var(--mc-border,#dfe4e9));
}


/* Live match power rail — the TWO TEAM COLOURS themselves flow.
   One canonical CSS owner; no travelling spot, overlay, arrow, chevron,
   marker, white/black runner, or decorative duplicate element.
   Score updates move the meeting edge; the entire colour surface carries
   a soft charge forward toward the opposing player. */
body.flat-theme .vote-neon-meter {
  display: grid;
  gap: 10px;
  margin: 18px 8px 8px;
  min-width: 0;
  padding: 5px 8px 1px;
}
body.flat-theme .vote-neon-track {
  --vote-neon-side-left: var(--mc-vote-neon-left,#00F2FF);
  --vote-neon-side-right: var(--mc-vote-neon-right,#FF225C);
  position: relative;
  height: var(--mc-vote-neon-height,16px);
  min-width: 0;
  overflow: visible;
  isolation: isolate;
  border-radius: 999px;
  background: linear-gradient(90deg,var(--vote-neon-side-left),var(--vote-neon-side-right));
  box-shadow:
    0 2px 9px color-mix(in srgb,var(--vote-neon-side-left) 28%,transparent),
    0 2px 9px color-mix(in srgb,var(--vote-neon-side-right) 28%,transparent),
    0 0 var(--mc-vote-neon-glow,18px) color-mix(in srgb,var(--vote-neon-side-left) 24%,transparent),
    0 0 var(--mc-vote-neon-glow,18px) color-mix(in srgb,var(--vote-neon-side-right) 24%,transparent);
}
body.flat-theme .vote-self-right .vote-neon-track {
  --vote-neon-side-left: var(--mc-vote-neon-right,#FF225C);
  --vote-neon-side-right: var(--mc-vote-neon-left,#00F2FF);
}
body.flat-theme .vote-neon-left,
body.flat-theme .vote-neon-right {
  --neon-mid: var(--neon-base);
  --neon-low: color-mix(in srgb,var(--neon-base) 86%,#000);
  --neon-bright: color-mix(in srgb,var(--neon-base) 80%,#fff);
  --neon-peak: color-mix(in srgb,var(--neon-base) 70%,#fff);
  position: absolute;
  top: 0;
  height: 100%;
  display: block;
  overflow: hidden;
  background-color: var(--neon-base);
  background-image: linear-gradient(105deg,
    var(--neon-low) 0%, var(--neon-mid) 12%,
    var(--neon-bright) 24%, var(--neon-mid) 36%,
    var(--neon-low) 48%, var(--neon-mid) 57%,
    var(--neon-peak) 72%, var(--neon-mid) 85%,
    var(--neon-low) 100%);
  background-size: 185% 100%;
  box-shadow: inset 0 1px 0 color-mix(in srgb,var(--neon-base) 50%,white),
              inset 0 -2px 3px color-mix(in srgb,var(--neon-base) 60%,#193144);
  transition: width .95s cubic-bezier(.22,1,.36,1),
              left .95s cubic-bezier(.22,1,.36,1);
  will-change: background-position;
}
body.flat-theme .vote-neon-left {
  --neon-base: var(--vote-neon-side-left);
  left: 0;
  width: var(--vote-left-share,50%);
  border-radius: 999px 0 0 999px;
  animation: chhachh-battle-current-forward 2.3s linear infinite;
  box-shadow: inset 0 1px 0 color-mix(in srgb,var(--neon-base) 45%,white),
              inset 0 -2px 3px color-mix(in srgb,var(--neon-base) 65%,#12303a),
              0 0 calc(var(--mc-vote-neon-glow,18px) * .52) color-mix(in srgb,var(--neon-base) 75%,transparent);
}
body.flat-theme .vote-neon-right {
  --neon-base: var(--vote-neon-side-right);
  left: var(--vote-left-share,50%);
  right: 0;
  border-radius: 0 999px 999px 0;
  animation: chhachh-battle-current-reverse 2.3s linear infinite;
  box-shadow: inset 0 1px 0 color-mix(in srgb,var(--neon-base) 45%,white),
              inset 0 -2px 3px color-mix(in srgb,var(--neon-base) 65%,#3a1524),
              0 0 calc(var(--mc-vote-neon-glow,18px) * .52) color-mix(in srgb,var(--neon-base) 75%,transparent);
}
/* Shifting the surface's OWN colour, rather than animating an overlay on it. */
@keyframes chhachh-battle-current-forward {
  from { background-position: 100% 50%; }
  to   { background-position: 0% 50%; }
}
@keyframes chhachh-battle-current-reverse {
  from { background-position: 0% 50%; }
  to   { background-position: 100% 50%; }
}
body.flat-theme .vote-neon-labels {
  display: flex;
  justify-content: space-between;
  gap: 8px;
  font-weight: 750;
  font-size: 11px;
  color: var(--mc-text,#161b22);
  font-variant-numeric: tabular-nums;
}
body.flat-theme .vote-status-active {
  --vote-neon-side-left: var(--mc-vote-neon-left,#00F2FF);
  --vote-neon-side-right: var(--mc-vote-neon-right,#FF225C);
}
body.flat-theme .vote-status-active.vote-self-right {
  --vote-neon-side-left: var(--mc-vote-neon-right,#FF225C);
  --vote-neon-side-right: var(--mc-vote-neon-left,#00F2FF);
}
body.flat-theme .vote-status-active .left-player .vote-arena-avatar {
  border: 3px solid var(--vote-neon-side-left) !important;
  box-shadow: 0 0 var(--mc-vote-neon-glow,18px) var(--vote-neon-side-left) !important;
  animation: vote-neon-breathe 2.4s ease-in-out infinite;
}
body.flat-theme .vote-status-active .right-player .vote-arena-avatar {
  border: 3px solid var(--vote-neon-side-right) !important;
  box-shadow: 0 0 var(--mc-vote-neon-glow,18px) var(--vote-neon-side-right) !important;
  animation: vote-neon-breathe 2.4s ease-in-out infinite;
}
@keyframes vote-neon-breathe {
  0%,100% { filter: brightness(1); }
  50% { filter: brightness(1.22); }
}
body.mc-vote-neon-off .vote-neon-meter { display: none !important; }
body.flat-theme.mc-vote-avatar-glow-off .vote-status-active .vote-arena-avatar {
  border-color: var(--mc-border,#dfe4e9) !important;
  box-shadow: none !important;
  animation: none !important;
}
@media (prefers-reduced-motion:reduce) {
  body.flat-theme .vote-neon-left,body.flat-theme .vote-neon-right { transition: none !important; animation: none !important; background-position: 50% 50%; }
  body.flat-theme .vote-status-active .vote-arena-avatar { animation: none !important; }
}


.vote-result-note {
  padding: 8px 10px;
  border: 1px solid var(--mc-border,#dfe4e9);
  border-radius: 12px;
  text-align: center;
  font-size: 11px;
  font-weight: 750;
}


.vote-card-actions {
  display: grid;
  grid-template-columns: repeat(2,minmax(0,1fr));
  align-items: stretch;
  gap: 8px;
  margin-top: 12px;
  min-width: 0;
}


.vote-card-actions .btn {
  width: 100%;
  min-width: 0;
  min-height: 46px;
  margin: 0 !important;
  padding: 8px 9px !important;
  display: flex !important;
  align-items: center;
  justify-content: center;
  gap: 7px;
  font-size: 12px;
  line-height: 1.15;
  white-space: normal;
  text-align: center;
}


.vote-card-actions .btn>svg.mc-outline-icon {
  width: 22px !important;
  height: 22px !important;
}


.vote-card-actions .js-vote-share-profile {
  margin: 0 !important;
}


.vote-section-title {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 10px;
  margin: 16px 2px 8px;
  min-width: 0;
}


.vote-section-title>* {
  min-width: 0;
}


.vote-player-search {
  position: relative;
}


.vote-opponent-results {
  display: grid;
  gap: 6px;
  position: absolute;
  left: 0;
  right: 0;
  top: 100%;
  z-index: 40;
  margin-top: 4px;
  padding: 6px;
  border: 1px solid var(--mc-border,#dfe4e9);
  border-radius: 12px;
  background: var(--mc-card-material,#fff);
}


.vote-opponent-result {
  display: grid;
  grid-template-columns: 44px minmax(0,1fr) auto;
  align-items: center;
  gap: 8px;
  width: 100%;
  padding: 7px;
  border: 0;
  border-radius: 10px;
  background: transparent;
  text-align: left;
}


.vote-search-avatar {
  width: 42px !important;
  height: 42px !important;
  border-radius: 50%;
  object-fit: cover;
}


.vote-how-card {
  overflow: hidden;
}


.vote-how-grid {
  display: grid;
  grid-template-columns: repeat(3,minmax(0,1fr));
  gap: 8px;
  margin-top: 10px;
}


.vote-how-grid>div {
  display: grid;
  justify-items: center;
  align-content: start;
  gap: 4px;
  min-width: 0;
  padding: 8px 4px;
  text-align: center;
}


.vote-how-grid>div svg.mc-outline-icon {
  width: 30px !important;
  height: 30px !important;
}


.vote-how-grid>div b {
  width: 20px;
  height: 20px;
  display: grid;
  place-items: center;
  border: 1px solid var(--mc-border,#dfe4e9);
  border-radius: 50%;
  font-size: 9px;
}


.vote-how-grid>div span {
  font-size: 9px;
  line-height: 1.18;
  font-weight: 800;
  overflow-wrap: anywhere;
}


.vote-steps {
  display: grid;
  grid-template-columns: repeat(5,minmax(0,1fr));
  gap: 5px;
  margin: 10px 0;
}


.vote-step {
  display: grid;
  justify-items: center;
  gap: 3px;
  min-width: 0;
  text-align: center;
  font-size: 8px;
  font-weight: 850;
}


.vote-step>span {
  width: 28px;
  height: 28px;
  display: grid;
  place-items: center;
  border: 1px solid var(--mc-border,#dfe4e9);
  border-radius: 50%;
  background: var(--mc-card-material,#fff);
}


.vote-step svg.mc-outline-icon {
  width: 20px !important;
  height: 20px !important;
}

/* ===== Voting winner card: one source-owned, theme-aware celebration layout ===== */
.vote-winner-card {
  position: relative;
  isolation: isolate;
  display: block;
  overflow: hidden;
  min-width: 0;
  max-width: 100%;
  margin: 0 0 22px;
  padding: 0!important;
  text-align: center;
  border: 1px solid color-mix(in srgb, var(--mc-vote-winner-firework,#d9b568) 24%,var(--mc-border,#dfe4e9))!important;
  border-radius: max(18px,var(--mc-card-radius,18px))!important;
  background: var(--mc-vote-winner-card,var(--mc-card-material,#fff))!important;
  color: var(--mc-vote-winner-text,var(--mc-text,#263042))!important;
  box-shadow: 0 9px 28px rgba(22,36,54,.075)!important;
}


.vote-winner-card:before {
  content: none;
}


.vote-winner-content {
  position: relative;
  z-index: 3;
  display: flex;
  flex-direction: column;
  align-items: center;
  min-width: 0;
  gap: 0;
  padding: 23px clamp(14px,4vw,25px) 22px;
}


.winner-status-pill {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 7px;
  min-height: 26px;
  padding: 5px 13px;
  border: 1px solid color-mix(in srgb,var(--mc-vote-winner-firework,#dfbc77) 45%,#fff);
  border-radius: 999px;
  background: color-mix(in srgb,var(--mc-vote-winner-firework,#dfbc77) 12%,#fff);
  color: #725320;
  font-size: 10px;
  font-weight: 850;
  line-height: 1.2;
  letter-spacing: .08em;
  text-transform: uppercase;
}


.winner-status-pill:before {
  content: "";
  width: 6px;
  height: 6px;
  border-radius: 50%;
  background: #c59a3b;
}


.winner-avatar-stage {
  position: relative;
  display: grid;
  place-items: center;
  width: 106px;
  height: 106px;
  margin: 17px 0 13px;
  isolation: isolate;
}


.winner-avatar-stage:before {
  content: "";
  position: absolute;
  inset: 0;
  z-index: 0;
  border: 2px solid var(--mc-vote-winner-firework,#d9b568);
  border-radius: 50%;
  background: transparent;
  box-shadow: 0 0 0 5px color-mix(in srgb,var(--mc-vote-winner-firework,#d9b568) 12%,transparent);
}


.winner-avatar-stage:after {
  content: none;
}


.vote-winner-avatar {
  position: relative;
  z-index: 2;
  width: 94px!important;
  height: 94px!important;
  max-width: none;
  object-fit: cover;
  border: 2px solid #fff!important;
  border-radius: 50%!important;
  box-shadow: 0 3px 12px rgba(22,36,54,.09)!important;
  background: var(--mc-card-material,#fff)!important;
}


.winner-crown {
  position: absolute;
  z-index: 4;
  top: -13px;
  right: -15px;
  left: auto;
  display: grid;
  place-items: center;
  width: 33px;
  height: 33px;
  transform: rotate(10deg);
  border: 1px solid color-mix(in srgb,var(--mc-vote-winner-firework,#d9b568) 44%,#fff);
  border-radius: 11px;
  background: #fffaf0;
  box-shadow: 0 3px 9px rgba(22,36,54,.12);
}


.vote-winner-card .winner-crown svg.mc-outline-icon {
  width: 21px!important;
  height: 21px!important;
  color: var(--mc-vote-winner-crown,#bb8e35)!important;
}


.vote-winner-kicker {
  margin: 0 0 6px;
  font-size: 11px;
  line-height: 1.3;
  font-weight: 850;
  letter-spacing: .11em;
  text-transform: uppercase;
  color: var(--mc-vote-winner-kicker,#ad812d);
}


.vote-winner-card h3 {
  max-width: 100%;
  margin: 0 0 4px;
  font-size: clamp(24px,6vw,30px);
  line-height: 1.2;
  font-weight: 850;
  overflow-wrap: anywhere;
}


.winner-handle {
  display: block;
  font-size: 12px;
  line-height: 1.4;
  opacity: .68;
  overflow-wrap: anywhere;
}


.winner-figure {
  display: inline-flex;
  flex-wrap: wrap;
  align-items: baseline;
  justify-content: center;
  gap: 5px;
  margin: 13px 0 0;
  font-size: 11px;
  font-weight: 650;
  line-height: 1.3;
  color: var(--mc-vote-winner-text,#263042);
  opacity: .82;
}


.winner-figure strong {
  font-size: 13px;
  font-weight: 850;
  color: var(--mc-vote-winner-kicker,#ad812d);
}


.winner-score-panel {
  display: grid;
  grid-template-columns: minmax(0,1fr) 1px minmax(0,1fr);
  align-items: center;
  gap: 10px;
  width: min(100%,355px);
  min-width: 0;
  margin: 14px 0 0;
  padding: 15px 10px;
  border: 1px solid var(--mc-border,#e4e8eb);
  border-radius: 14px;
  background: color-mix(in srgb,var(--mc-vote-winner-card,#fff) 12%,#fff);
  color: var(--mc-vote-winner-text,#263042);
  box-shadow: none;
}


.winner-score-panel .winner-score-main,
.winner-score-panel .winner-total {
  display: grid;
  justify-items: center;
  align-content: center;
  gap: 5px;
  text-align: center;
  min-width: 0;
}


.winner-score-panel .winner-score-main small,
.winner-score-panel .winner-total small {
  font-size: 10px;
  line-height: 1.35;
  font-weight: 750;
  letter-spacing: .015em;
  opacity: .72;
}


.winner-score-panel .winner-score-main b,
.winner-score-panel .winner-total b {
  font-size: clamp(19px,5vw,23px);
  line-height: 1.1;
  font-weight: 850;
  font-variant-numeric: tabular-nums;
  white-space: nowrap;
}


.winner-score-panel .winner-score-divider {
  width: 1px;
  height: 42px;
  background: var(--mc-border,#e4e8eb);
}


.winner-vote-progress {
  width: min(100%,355px);
  height: 5px;
  overflow: hidden;
  margin: 12px 0 0;
  border-radius: 99px;
  background: #edf0f3;
}


.winner-vote-progress>span {
  display: block;
  height: 100%;
  border-radius: inherit;
  background: var(--mc-vote-winner-firework,#d9b568);
}


.vote-winner-card .winner-result-caption {
  max-width: 355px;
  margin: 9px 0 0;
  font-size: 11px;
  line-height: 1.45;
  opacity: .76;
}


.vote-winner-feed {
  min-height: 0;
  text-decoration: none;
  color: inherit;
}


.vote-winner-feed em {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  margin-top: 15px;
  min-height: 35px;
  padding: 7px 14px;
  border-radius: 9px;
  border: 1px solid var(--mc-border,#e4e8eb);
  background: #fff;
  font-size: 11px;
  font-weight: 750;
  font-style: normal;
  color: inherit;
}


.vote-winner-feed:focus-visible {
  outline: 3px solid var(--mc-active,#176bd4);
  outline-offset: 3px;
}


.vote-winner-card .winner-celebration {
  z-index: 1;
}


body.mc-vote-celebration-off .winner-celebration {
  display: none!important;
}


@media(max-width:520px) {
  .vote-winner-content {
  padding: 22px 14px 21px;
}

  .winner-avatar-stage {
  width: 101px;
  height: 101px;
}

  .vote-winner-avatar {
  width: 89px!important;
  height: 89px!important;
}

  .winner-score-panel {
  gap: 7px;
  padding: 13px 6px;
}

  .winner-score-panel .winner-score-main b,
  .winner-score-panel .winner-total b {
  font-size: 20px;
}
}


/* Voting teaser in the feed */
.vote-feed-live {
  display: grid;
  grid-template-columns: minmax(0,1fr);
  gap: 10px;
  text-decoration: none;
  color: inherit;
}


.vote-feed-arena {
  display: grid;
  grid-template-columns: minmax(0,1fr) minmax(78px,96px) minmax(0,1fr);
  align-items: center;
  gap: 7px;
  padding: 10px;
  border: 1px solid var(--mc-border,#dfe4e9);
  border-radius: 12px;
  background: var(--mc-card-material,#fff);
}


.vote-feed-arena>span {
  display: grid;
  place-items: center;
  gap: 3px;
  min-width: 0;
  text-align: center;
}


.vote-feed-arena>span>b {
  max-width: 100%;
  font-size: 12px;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}


.vote-feed-arena em {
  font-size: 9.5px;
  font-style: normal;
  color: var(--mc-muted,#66738b);
  font-weight: 800;
}


.vote-feed-center {
  display: grid;
  place-items: center;
  gap: 5px;
  min-width: 0;
}


.vote-feed-center>strong {
  display: grid;
  place-items: center;
  width: 50px;
  height: 50px;
  border: 1px solid var(--mc-border,#dfe4e9);
  border-radius: 50%;
  background: var(--mc-input-material,#fff);
  font-size: 15px;
}


.vote-teaser-avatar {
  width: 60px !important;
  height: 60px !important;
  border-radius: 50%;
  object-fit: cover;
}


.post-vote-share-card {
  display: grid;
  grid-template-columns: auto minmax(0,1fr) auto;
  align-items: center;
  gap: 10px;
  margin: 10px 0 0;
  padding: 10px 11px;
  border: 1px solid var(--mc-border,#dfe4e9);
  border-radius: 12px;
  text-decoration: none;
  color: inherit;
}


.post-vote-share-card>span {
  display: grid;
  gap: 2px;
  min-width: 0;
}


.post-vote-share-card small {
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}


.post-vote-share-card strong {
  font-size: .9em;
}


/* Fixed footer must never cover page content */
body.flat-theme.mc-has-footer-fixed main#app {
  padding-bottom: calc(var(--mc-footer-height,66px) + 18px + env(safe-area-inset-bottom,0px));
  scroll-padding-bottom: calc(var(--mc-footer-height,66px) + 18px + env(safe-area-inset-bottom,0px));
}


@media (max-width:420px) {
  .vote-card {
  padding: min(var(--mc-vote-pad,16px),12px) !important;
}

  .vote-arena,
  .vote-duel,
  .vote-single-arena {
  grid-template-columns: minmax(0,1fr) clamp(82px,25vw,94px) minmax(0,1fr);
  gap: 5px;
  padding: 10px 4px;
}

  .vote-arena-avatar,
  .vote-avatar {
  width: clamp(58px,17vw,70px) !important;
  height: clamp(58px,17vw,70px) !important;
}

  .vote-card-head h2 {
  font-size: clamp(22px,7vw,29px);
}

  .vote-vs-core {
  width: 46px;
  height: 46px;
}

  .vote-vs-core span {
  font-size: 16px;
}

  .vote-inline-result {
  padding: 7px 3px;
}

  .vote-final-score {
  gap: 4px;
}

  .vote-final-score strong {
  font-size: clamp(19px,6.5vw,24px);
}

  .vote-card-actions {
  gap: 7px;
}

  .vote-card-actions .btn {
  min-height: 44px;
  padding-inline: 6px !important;
  font-size: 11px;
}

  .voice-announcement-player {
  grid-template-columns: 44px minmax(0,1fr);
  gap: 9px;
  padding: 10px;
}

  .voice-play {
  width: 42px;
  height: 42px;
  min-width: 42px;
}
}


@media (max-width:340px) {
  .vote-arena,
  .vote-duel,
  .vote-single-arena {
  grid-template-columns: minmax(0,1fr) 78px minmax(0,1fr);
  gap: 3px;
  padding-inline: 2px;
}

  .vote-arena-avatar,
  .vote-avatar {
  width: 56px !important;
  height: 56px !important;
}

  .vote-player-slot b,
  .vote-candidate b {
  font-size: 10.5px;
}

  .vote-player-slot>small,
  .vote-candidate>small {
  font-size: 9px;
}

  .vote-inline-result>b {
  font-size: 7.5px;
}

  .vote-final-score strong {
  font-size: 19px;
}

  .vote-card-actions {
  grid-template-columns: 1fr;
}
}


/* V97.198 canonical per-item background style: full card / icon-only / merge / none. */
body.flat-theme :is(.top,#siteFooterNav,#sideMenu) [data-mc-card-shell="icon"] :is(svg.mc-outline-icon,img.top-user-avatar) {
  background: var(--mc-shell-icon-bg,var(--mc-card-material,#fff))!important;
  border: var(--mc-hf-border-width,1px) solid var(--mc-hf-border,var(--mc-border,#dfe4e9))!important;
  border-radius: var(--mc-hf-radius,12px)!important;
  padding: 5px!important;
  box-sizing: content-box!important;
}


body.flat-theme :is(.top,#siteFooterNav) [data-mc-card-shell="icon"]:is(.nav-active,.top-action-active,[data-mc-selected="1"]) :is(svg.mc-outline-icon,img.top-user-avatar) {
  background: var(--mc-shell-icon-active-bg,var(--mc-active-tint,#f9e8f6))!important;
}


body.flat-theme #sideMenu [data-mc-card-shell="icon"] svg.mc-outline-icon {
  border-color: var(--mc-border,#dfe4e9)!important;
  border-radius: 10px!important;
}


/* V97.200 preserved exact per-item shell modes. */
body.flat-theme :is(.top,#siteFooterNav,#sideMenu) [data-mc-card-shell="icon-only"] :is(.navlabel,.mc-voting-button-label,.mc-weather-button-label,.mc-announcement-button-label) {
  display: none!important;
}


body.flat-theme #sideMenu [data-mc-card-shell="icon-only"]>span:not(.navbadge):not(.inline-badge) {
  display: none!important;
}


body.flat-theme :is(.top,#siteFooterNav,#sideMenu) [data-mc-card-shell="icon-only"] {
  gap: 0!important;
}

/* ===== V97.200 CANONICAL DESKTOP RESPONSIVE OWNERSHIP =====
   One desktop breakpoint for the public UI. Mobile rules remain source-owned below 760px.
   This layer prevents body-level horizontal drift, keeps feed cards readable, and lets
   Theme Studio/Admin use a wider workspace without stretching ordinary posts. */
html,
body {
  max-width: 100%;
  overflow-x: clip;
}


@media (min-width:760px) {
  :root {
  --mc-desktop-shell: 920px;
  --mc-desktop-feed: 760px;
  --mc-desktop-wide: 1180px;
}

  body.flat-theme {
  overflow-x: clip !important;
}

  body.flat-theme>.top {
  width: min(calc(100% - 32px),var(--mc-page,var(--mc-desktop-shell))) !important;
  max-width: var(--mc-desktop-shell) !important;
  margin-inline: auto !important;
  padding-inline: 16px !important;
  box-sizing: border-box !important;
  overflow-x: clip;
}

  body.flat-theme main#app {
  width: min(calc(100% - 32px),var(--mc-desktop-shell)) !important;
  max-width: var(--mc-desktop-shell) !important;
  margin: 12px auto calc(var(--mc-footer-height,66px) + 34px) !important;
  padding-inline: 0 !important;
  box-sizing: border-box !important;
  overflow-x: clip;
}

  /* Feed-like routes stay comfortably readable instead of stretching to the full desktop shell. */
  body.flat-theme main#app :is(.home-page-shell,.post-page-shell,.announcements-page-shell,.voting-page-shell,.saved-page-shell) {
  width: min(100%,var(--mc-desktop-feed)) !important;
  max-width: var(--mc-desktop-feed) !important;
  margin-inline: auto !important;
}

  /* Search, shops, profile, settings and messages can use the full normal desktop shell. */
  body.flat-theme main#app :is(.search-page-shell,.settings-page-shell,.shops-page-shell,.profile-page-frame,.shop-detail-page-frame,.message-page-frame,.notification-page-frame,.route-frame) {
  width: 100%;
  max-width: 100%;
  margin-inline: auto;
}

  /* Theme Studio and Admin are workspace pages, so they receive a larger centered desktop canvas. */
  body.flat-theme main#app:has(#themeBuilderForm),
  body.flat-theme main#app:has(.admin-page-frame),
  body.flat-theme main#app:has([data-admin-page]) {
  width: min(calc(100% - 32px),var(--mc-desktop-wide)) !important;
  max-width: var(--mc-desktop-wide) !important;
}

  body.flat-theme .home-tabs {
  width: 100% !important;
  display: grid !important;
  grid-template-columns: repeat(3,minmax(0,1fr)) !important;
  gap: 10px !important;
  overflow: visible !important;
}

  body.flat-theme .home-tabs .pill {
  min-width: 0 !important;
  width: 100% !important;
}

  body.flat-theme :is(.post,.announcement-card,.vote-card,.composer,.card:not(.google-ad-card),.notification-card,.profile-pro-card,.shop-pro-card) {
  width: 100%;
  max-width: 100%;
  margin-inline: 0;
  box-sizing: border-box;
}

  body.flat-theme .post .postimg { max-width: 100% !important; }
  body.flat-theme .announcement-card img:not(.postimg),
  body.flat-theme .vote-card img {
  max-width: 100% !important;
  height: auto !important;
}

  /* Footer fills the viewport, while page content retains its desktop shell. */
  body.flat-theme .site-footer-nav {
  width: 100% !important;
  max-width: none !important;
  box-sizing: border-box !important;
  overflow: visible;
}

  body.flat-theme .site-footer-nav>* {
  min-width: 0 !important;
  max-width: 100%;
}

  body.flat-theme .top.mc-custom-layout.mc-free-grid>.mc-layout-row,
  body.flat-theme .site-footer-nav.mc-footer-free-grid {
  width: 100%;
  max-width: 100%;
  min-width: 0;
  box-sizing: border-box;
  overflow-x: auto;
  overflow-y: hidden;
}

  body.flat-theme .top.mc-custom-layout.mc-free-grid>.mc-layout-row>*,
  body.flat-theme .site-footer-nav.mc-footer-free-grid>* {
  min-width: 0 !important;
  max-width: 150px !important;
  box-sizing: border-box !important;
}

  body.flat-theme .side-menu {
  max-width: min(360px,42vw) !important;
}

  body.flat-theme .tablewrap {
  max-width: 100%;
  overflow-x: auto;
}
}


/* Phone using browser “Desktop site”: the viewport is desktop-sized but the pointer is coarse.
   Keep the same no-overflow desktop structure while making header/feed controls comfortably legible. */
@media (min-width:760px) and (pointer:coarse) {
  body.flat-theme>.top {
  gap: 10px !important;
}

  body.flat-theme .brand strong {
  font-size: clamp(28px,3.4vw,36px) !important;
}

  body.flat-theme #siteBrandTagline {
  font-size: var(--mc-tagline-font-size,10px) !important;
}

  body.flat-theme .mc-eng-action {
  min-height: 52px;
  font-size: 13px;
}

  body.flat-theme .mc-engagement-summary {
  font-size: 12px;
}
}

/* ===== Canonical professional Messages / Settings / Profile relations ===== */
/* Each conversation is a self-contained viewport: a stationary contact header,
   independently scrolling message history, and a stationary send/record dock.
   Message history never paints underneath either fixed control area. */
.message-chat-page {
  gap: 0 !important;
  min-height: 0;
}
body.flat-theme .message-chat-page .chat-panel {
  display: flex !important;
  flex-direction: column;
  gap: 0 !important;
  height: var(--mc-chat-height, min(68dvh, 680px));
  min-height: 160px;
  min-width: 0;
  overflow: hidden;
  padding: 0 !important;
  margin: 0 !important;
  border-radius: var(--mc-card-radius,14px) !important;
  background: var(--mc-card-material,#fff);
}
.message-chat-page .chat-person {
  position: relative;
  z-index: 2;
  flex: 0 0 auto;
  display: flex;
  align-items: center;
  gap: 10px;
  min-height: 60px;
  padding: 10px 12px;
  margin: 0;
  border-bottom: 1px solid var(--mc-border,#dfe4e9);
  background: var(--mc-card-material,#fff);
}
.message-chat-page .chat-person > div { min-width: 0; }
.message-chat-page .chat-person b {
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}
.message-chat-page .group-manage-panel:not([hidden]) {
  flex: 0 1 auto;
  min-height: 0;
  max-height: 48%;
  overflow-y: auto;
  overscroll-behavior: contain;
}
/* The conversation is the sole vertical scroller; document-level overscroll
   must not invoke Android/Chromium's page refresh gesture. */
html.mc-chat-active, html.mc-chat-active body {
  height: 100%;
  overflow-y: hidden;
  overscroll-behavior: none;
}
.message-chat-page .messages {
  touch-action: pan-y;
  flex: 1 1 auto;
  min-height: 0;
  max-height: none;
  overflow-x: hidden;
  overflow-y: auto;
  overscroll-behavior-y: contain;
  -webkit-overflow-scrolling: touch;
  padding: 9px 10px !important;
  border: 0;
  border-radius: 0;
  background: transparent;
}
.message-chat-page .group-post-disabled { flex: 0 0 auto; }
/* A chat fills exactly the available visual viewport, not the document's
   general feed scroll/padding budget. Other routes keep their normal footer. */
body.flat-theme.mc-has-footer-fixed main#app:has(.message-chat-page) {
  padding-bottom: 0;
  scroll-padding-bottom: 0;
}
@media (min-width:760px) {
  body.flat-theme main#app:has(.message-chat-page) {
    margin-bottom: 0 !important;
  }
}


.message {
  margin: 7px 0;
  position: relative;
  -webkit-user-select: none;
  user-select: none;
  -webkit-touch-callout: none;
  width: fit-content;
  max-width: min(84%,560px);
  padding: 9px 12px;
  border-radius: 18px 18px 6px 18px;
  box-sizing: border-box;
  overflow: visible;
}
.message:has(> .message-audio-card) {
  width: min(83%,300px);
  max-width: min(83%,300px);
  padding: 7px 10px 6px;
}
.message.theirs { border-radius: 18px 18px 18px 6px; margin-right: auto; }


.message>p {
  margin: 0;
  line-height: 1.42;
}


.message.mine {
  margin-left: auto;
}



.message-send-pro {
  position: relative;
  z-index: 2;
  flex: 0 0 auto;
  left: auto;
  bottom: auto;
  transform: none;
  width: 100%;
  box-shadow: 0 -2px 12px rgba(15,23,42,.05);
  display: grid;
  grid-template-columns: minmax(0,1fr) 44px;
  grid-template-areas: "input send" "tools tools" "emoji emoji" "voice voice" "preview preview";
  align-items: center;
  gap: 7px;
  max-width: 100%;
  padding: 8px;
  border: 0;
  border-top: 1px solid var(--mc-border,#dfe4e9);
  border-radius: 0;
  background: var(--mc-card-material,#fff);
  box-sizing: border-box;
  overflow: visible;
}

.message-compose-tools {
  grid-area: tools;
  display: flex;
  align-items: center;
  justify-content: flex-start;
  gap: 6px;
  min-width: 0;
}


.message-compose-input {
  grid-area: input;
  display: block;
  min-width: 0;
  margin: 0;
}


.message-compose-input textarea.message-compose-text {
  display: block;
  width: 100%;
  min-width: 0;
  max-height: 128px;
  min-height: 42px;
  margin: 0;
  padding: 10px 12px;
  resize: none;
  border: 1px solid var(--mc-border,#dfe4e9);
  border-radius: 13px;
  background: var(--mc-input-material,#fff);
  box-sizing: border-box;
  line-height: 1.35;
  white-space: pre-wrap;
}


.message-tool,
.message-send-button {
  width: 38px;
  height: 38px;
  min-width: 38px;
  min-height: 38px;
  display: grid;
  place-items: center;
  margin: 0;
  padding: 0;
  border: 1px solid var(--mc-border,#dfe4e9);
  border-radius: 12px;
  background: var(--mc-card-material,#fff);
  color: var(--mc-text,#000);
  box-sizing: border-box;
}


.message-tool svg,
.message-send-button svg {
  width: 20px;
  height: 20px;
}


.message-voice-tool.is-recording {
  border-color: #e5484d;
  background: #fff1f1;
  color: #b42318;
}


.message-stop-square {
  display: block;
  width: 11px;
  height: 11px;
  border-radius: 3px;
  background: currentColor;
}


.message-send-button {
  grid-area: send;
  width: 44px;
  height: 44px;
  min-width: 44px;
  min-height: 44px;
  background: var(--mc-button-material,#1683ff);
  color: var(--mc-button-text,#fff);
  border-color: transparent;
}


.message-emoji-picker {
  grid-area: emoji;
  display: flex;
  flex-wrap: wrap;
  gap: 5px;
  padding: 8px;
  border: 1px solid var(--mc-border,#dfe4e9);
  border-radius: 13px;
  background: var(--mc-card-material,#fff);
}


.message-emoji-picker[hidden] {
  display: none;
}


.message-record-status, .announcement-composer .voice-record-status {
  align-items: center;
  gap: 8px;
  font-variant-numeric: tabular-nums;
  font-size: 12px;
  min-width: 0;
  color: var(--mc-text,#222);
}
.message-record-status { grid-area: voice; display: flex; padding: 5px 4px; }
.message-record-status[hidden], .announcement-composer .voice-record-status[hidden] { display: none !important; }
.announcement-composer .announcement-audio-preview {
  padding: 10px;
  border: 1px solid var(--mc-border,#dfe4e9);
  border-radius: 14px;
  background: var(--mc-card-material,#fff);
}
.announcement-composer .announcement-audio-preview[hidden] { display: none !important; }
.announcement-composer .voice-record-status.is-ready .recording-dot { display:none; }
.announcement-composer .announcement-preview-heading { display:flex; align-items:center; justify-content:space-between; gap:8px; margin-bottom:8px; }
.announcement-composer .announcement-audio-preview .voice-announcement-player { max-width:100%; }
.announcement-composer .announcement-photo-preview {
  display: flex;
  align-items: center;
  gap: 10px;
  padding: 8px;
  border: 1px solid var(--mc-border,#dfe4e9);
  border-radius: 12px;
}
.announcement-composer .announcement-photo-preview[hidden] { display: none !important; }
.announcement-composer .announcement-photo-preview img { width: 64px; height: 64px; object-fit: cover; border-radius: 9px; }
.message-record-status time, .announcement-composer .voice-record-status small {
  margin-left: auto;
  white-space: nowrap;
  font-size: 13px;
  font-weight: 750;
}
.recording-dot {
  display: inline-block;
  width: 9px;
  height: 9px;
  flex: 0 0 9px;
  border-radius: 50%;
  background: #df3748;
}
.message-voice-tool, .announcement-composer .voice-record-btn {touch-action:none; -webkit-user-select:none;user-select:none;}
.message-voice-tool[aria-busy="true"], .announcement-composer .voice-record-btn[aria-busy="true"] {opacity:.75;}
.message-attachment-preview {
  grid-area: preview;
  display: flex;
  align-items: center;
  min-width: 0;
  gap: 9px;
  padding: 6px;
  border-radius: 12px;
  background: var(--mc-input-material,#f5f6f8);
}
.message-preview-photo { width: 60px; height: 60px; flex: 0 0 60px; object-fit: cover; border-radius: 9px; }
.message-preview-filename { display:block; min-width: 0; flex: 1 1 0; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; font-size: 12px; }
.message-preview-remove { width: 32px; height: 32px; border-radius: 9px; border: 1px solid var(--mc-border,#dfe4e9); background: var(--mc-card-material,#fff); font-size: 20px; }


.message-attachment-preview[hidden] {
  display: none;
}
/* One inline saving indicator for profile and shop media frames. */
.mc-photo-frame-busy { position:relative; }
.mc-photo-frame-progress {
  position:absolute; inset:auto 6px 6px; z-index:5;
  padding:4px 7px; background:rgba(0,0,0,.78); color:white;
  border-radius:7px; text-align:center; font-size:11px; pointer-events:none;
}
.mc-photo-frame-busy .mc-photo-frame-progress { display:block; }
.mc-outgoing-inline { min-width:0; width:100%; }
.mc-outgoing-inline:empty { display:none; }


/* Canonical outgoing publication card for posts, shop posts and announcements. */
.mc-outgoing-list:empty,
#announcementOutgoingFeed:empty { display:none; }
.mc-outgoing-publication {
  width:100%; min-width:0; box-sizing:border-box; overflow:hidden;
  border:1px solid var(--mc-border,#dfe4e9); border-radius:17px;
  padding:12px; background:var(--mc-card-material,#fff);
  margin:8px 0 14px;
}
.mc-outgoing-head { display:flex; align-items:center; justify-content:space-between; gap:10px; min-width:0; }
.mc-outgoing-head > strong { font-weight:750; }
.mc-outgoing-head > small { color:var(--mc-muted,#667085); display:inline-flex; align-items:center; gap:6px; min-width:0; }
.mc-outgoing-publication[data-outgoing-state="sending"] .mc-outgoing-head > small::before {
  content:""; width:11px; height:11px; border:2px solid currentColor;
  border-right-color:transparent; border-radius:50%; display:inline-block;
  animation:mc-outgoing-spin .75s linear infinite;
}
.mc-outgoing-publication > .posttext { margin:10px 0; white-space:pre-wrap; overflow-wrap:anywhere; }
.mc-outgoing-media { display:block; width:auto; max-width:100%; height:auto; max-height:min(420px,50vh); border-radius:12px; object-fit:contain; margin-top:10px; }
.mc-outgoing-media:is(video,audio) { width:100%; }
.mc-outgoing-publication[data-outgoing-state="failed"] .mc-outgoing-head > small { color:#b42318; }
.mc-outgoing-retry { display:block; margin:8px 0 0 auto; }
.mc-outgoing-retry[hidden] { display:none; }
@media (prefers-reduced-motion:reduce) { .mc-outgoing-publication[data-outgoing-state="sending"] .mc-outgoing-head > small::before { animation:none; } }
/* Pending message is rendered in the conversation before upload starts. */
.message-outgoing { min-width: 100px; }
.message-outgoing > audio { display:block; width:min(100%,280px); max-width:100%; }
.message-outgoing-state { display:flex; align-items:center; justify-content:flex-end; gap:8px; }
.message-outgoing[data-pending-state="sending"] .message-outgoing-state small::before {
  content:""; display:inline-block; width:10px; height:10px; margin-right:5px;
  vertical-align:-1px; border:2px solid currentColor; border-right-color:transparent;
  border-radius:50%; animation:mc-outgoing-spin .75s linear infinite;
}
.message-outgoing[data-pending-state="failed"] .message-outgoing-state { color:#b42318; }
.message-outgoing-retry { border:1px solid currentColor; padding:4px 9px; border-radius:9px; color:inherit; background:transparent; cursor:pointer; }
.message-outgoing-retry[hidden] { display:none; }
@keyframes mc-outgoing-spin { to { transform:rotate(360deg); } }
@media (prefers-reduced-motion:reduce) { .message-outgoing[data-pending-state="sending"] .message-outgoing-state small::before { animation:none; } }


.message-audio-card {
  min-width: 0;
  max-width: 100%;
  margin-top: 0;
  width: 100%;
}
.message-audio-card .voice-announcement-player {
  margin: 0;
  padding: 3px 0;
  width: 100%;
  min-width: 0;
  grid-template-columns: 41px minmax(0,1fr);
  gap: 9px;
  border: 0;
  border-radius: 0;
  background: transparent;
  overflow: visible;
}
.message-audio-card .voice-play {
  width: 40px;
  height: 40px;
  min-width: 40px;
  border-radius: 50%;
  background: var(--mc-input-material,#fff);
}
.message-audio-card .voice-title { display: none; }
.message-audio-card .voice-core { gap: 3px; }
.message-audio-card .voice-wave-track { height: 29px; }
.message-audio-card .voice-time { font-size: 10px; }
.message:has(> .message-audio-card) .message-meta { margin: 2px 0 0; text-align: right; }

/* Canonical Messages selection: the fixed-size bubbles never contain actions.
   The toolbar lives above the scrollable chat and is styled by Theme Studio. */
.message[data-message-selectable="1"] {
  -webkit-user-select: none;
  user-select: none;
  -webkit-touch-callout: none;
  touch-action: pan-y;
  cursor: pointer;
}
.message > p {
  -webkit-user-select: text;
  user-select: text;
  -webkit-touch-callout: default;
}
.message.is-selected,
body.flat-theme .message.is-selected {
  outline: 2px solid var(--mc-active,#1683ff);
  outline-offset: 1px;
}
.message-selection-toolbar {
  position: relative;
  z-index: 5;
  flex: 0 0 auto;
  width: 100%;
  min-height: 48px;
  display: flex;
  align-items: center;
  flex-wrap: nowrap;
  gap: 8px;
  padding: 6px 10px;
  box-sizing: border-box;
  border: 0;
  border-top: 1px solid var(--mc-border,#dfe4e9);
  background: var(--mc-card-material,#fff);
  color: var(--mc-text,#161616);
}
.message-selection-toolbar[hidden] { display: none !important; }
.message-selection-count {
  flex: 1 1 auto;
  min-width: 0;
  font-size: 13px;
  font-weight: 650;
  font-variant-numeric: tabular-nums;
}
.message-delete-actions { position: relative; flex: 0 0 36px; }
.message-selection-toolbar .message-copy-btn,
.message-selection-toolbar .message-delete-trigger,
.message-selection-toolbar .message-selection-cancel {
  display: grid;
  place-items: center;
  flex: 0 0 36px;
  width: 36px;
  height: 36px;
  min-width: 0;
  padding: 0;
  border: 1px solid var(--mc-border,#dfe4e9);
  border-radius: 10px;
  background: var(--mc-input-material,#f4f6f8);
  color: var(--mc-text,#191919);
  box-sizing: border-box;
  cursor: pointer;
}
.message-selection-toolbar :is(.message-copy-btn,.message-delete-trigger,.message-selection-cancel) svg {
  width: 19px;
  height: 19px;
}
.message-selection-toolbar .message-copy-btn[hidden] { display: none !important; }
.message-delete-menu {
  position: absolute;
  bottom: calc(100% + 8px);
  right: 0;
  width: 205px;
  max-width: calc(100vw - 44px);
  display: grid;
  gap: 2px;
  padding: 6px;
  border: 1px solid var(--mc-border,#dfe4e9);
  border-radius: 13px;
  background: var(--mc-card-material,#fff);
  box-shadow: 0 10px 28px rgba(15,23,42,.15);
}
.message-delete-menu[hidden],
.message-delete-menu .message-delete-everyone[hidden] { display: none !important; }
.message-selection-toolbar .message-delete-btn {
  display: block;
  width: 100%;
  min-height: 40px;
  padding: 9px 12px;
  border: 0;
  border-radius: 9px;
  background: transparent;
  color: var(--mc-text,#191919);
  text-align: left;
  font-size: 14px;
  white-space: nowrap;
  cursor: pointer;
}
.message-selection-toolbar .message-delete-btn:hover,
.message-selection-toolbar .message-delete-btn:focus-visible {
  background: var(--mc-input-material,#f4f6f8);
}
.message-selection-toolbar :is(.message-delete-btn,.message-delete-trigger,.message-selection-cancel):disabled {
  opacity: .55;
  cursor: wait;
}

@media(max-width:520px) {
  .message-chat-page .messages {
  min-height: 0;
}

  .message {
  max-width: 84%;
}

  .message-send-pro {
  grid-template-columns: minmax(0,1fr) 42px;
  gap: 6px;
  padding: 7px;
}

  .message-compose-tools {
  gap: 5px;
}

  .message-tool {
  width: 36px;
  height: 36px;
  min-width: 36px;
  min-height: 36px;
}

  .message-send-button {
  width: 42px;
  height: 42px;
  min-width: 42px;
  min-height: 42px;
}

  .message-audio-card {
  min-width: 0;
  width: 100%;
}
}


/* One canonical header/footer visibility owner per positioned action. */
[data-mc-hf-style][data-mc-show-icon="0"] svg.mc-outline-icon,
[data-mc-hf-style][data-mc-show-icon="0"] > svg,
[data-mc-hf-style][data-mc-show-icon="0"] img.top-user-avatar {
  display: none!important;
}


[data-mc-hf-style][data-mc-show-label="0"] .navlabel,
[data-mc-hf-style][data-mc-show-label="0"] .mc-voting-button-label,
[data-mc-hf-style][data-mc-show-label="0"] .mc-announcement-button-label {
  display: none!important;
}


.theme-hf-visibility-controls {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 10px;
  padding: 9px 0;
}


.theme-hf-visibility-controls>label:not(.theme-module-visibility-row) {
  display: inline-flex!important;
  flex: 1 1 125px;
  align-items: center;
  justify-content: flex-start;
  gap: 8px;
  width: auto!important;
  min-width: 125px!important;
  max-width: 100%;
  font-size: 12px;
  font-weight: 650;
  line-height: 1.35;
  min-height: 34px;
  white-space: normal;
  word-break: normal;
  overflow-wrap: normal;
  box-sizing: border-box;
}


.theme-hf-visibility-controls>label>span {
  display: block;
  flex: 1 1 auto;
  min-width: 0;
  white-space: normal;
  word-break: normal;
  overflow-wrap: normal;
}


.theme-hf-visibility-controls input[type="checkbox"] {
  accent-color: #1886df;
  flex: none;
}


/* Canonical Theme Studio module visibility component: independent controls; safe on narrow screens. */
.theme-module-element-fields .theme-module-part-visibility {
  display: grid;
  grid-template-columns: minmax(0,1fr);
  gap: 8px;
  width: 100%;
  min-width: 0;
  padding: 4px 0;
}


.theme-module-element-fields .theme-module-part-visibility>.theme-module-visibility-row {
  display: grid;
  grid-template-columns: 20px minmax(0,1fr);
  gap: 10px;
  align-items: center;
  min-width: 0;
  width: 100%;
  min-height: 42px;
  margin: 0;
  padding: 8px 10px;
  border: 1px solid var(--mc-border,#dce3e9);
  border-radius: 10px;
  background: var(--mc-card-material,#fff);
  font-size: 12px;
  line-height: 1.35;
  box-sizing: border-box;
}


.theme-module-element-fields .theme-module-part-visibility>.theme-module-visibility-row>input[type="checkbox"] {
  width: 18px;
  min-width: 18px;
  height: 18px;
  margin: 0;
  padding: 0;
  justify-self: center;
}


.theme-module-element-fields .theme-module-part-visibility>.theme-module-visibility-row>span {
  display: block;
  min-width: 0;
  max-width: 100%;
  width: auto;
  overflow-wrap: normal;
  word-break: normal;
  white-space: normal;
  line-height: 1.35;
}


.settings-page-shell {
  display: grid;
  gap: 12px;
  max-width: 100%;
}


.settings-stack {
  display: grid;
  gap: 9px;
}

/* Legal documents have equal visible entry points on the Settings page.
   Use the existing card and button tokens so Theme Studio owns their appearance. */
.settings-legal-card{display:grid;gap:12px;padding:16px;min-width:0}
.settings-legal-copy h2{font-size:15px;line-height:1.35;margin:0;color:var(--mc-text,var(--mc-base-ink))}
.settings-legal-copy p{font-size:12px;line-height:1.5;margin:4px 0 0;color:var(--mc-muted,#667085)}
.settings-legal-actions{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;min-width:0}
.settings-legal-actions>.btn{box-sizing:border-box;display:flex;justify-content:center;align-items:center;text-align:center;min-height:44px;min-width:0;white-space:normal;line-height:1.35;overflow-wrap:anywhere}
@media(max-width:390px){.settings-legal-actions{grid-template-columns:minmax(0,1fr)}}


body.flat-theme .settings-group {
  padding: 0!important;
  overflow: hidden!important;
  border: 1px solid var(--mc-border,#dfe4e9)!important;
  border-radius: 16px!important;
  background: var(--mc-card-material,#fff)!important;
  color: var(--mc-text,var(--mc-base-ink))!important;
  box-shadow: none!important;
}


body.flat-theme .settings-group-head {
  width: 100%;
  display: grid;
  grid-template-columns: 38px minmax(0,1fr) auto 28px;
  align-items: center;
  gap: 10px;
  text-align: left;
  padding: 11px 12px;
  border: 0;
  background: transparent;
  color: var(--mc-text,var(--mc-base-ink));
}


.settings-group-head>svg.mc-outline-icon {
  width: 28px;
  height: 28px;
  padding: 5px;
  border: 1px solid var(--mc-border,#dfe4e9);
  border-radius: 10px;
  background: var(--mc-input-material,#f7f9fc);
  box-sizing: content-box;
}


.settings-group-head>span:nth-of-type(1) {
  min-width: 0;
}


.settings-group-head h2 {
  font-size: 14px;
  line-height: 1.2;
  margin: 0;
}


.settings-group-head p {
  font-size: 10px;
  line-height: 1.35;
  margin: 2px 0 0;
  color: var(--mc-muted,#667085);
}


.settings-value {
  max-width: 112px;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
  font-size: 10px;
  padding: 5px 8px;
  border-radius: 999px;
  background: var(--mc-input-material,#f4f7fb);
}


.settings-chevron {
  width: 28px;
  height: 28px;
  display: grid;
  place-items: center;
  transition: transform .18s ease;
}


.settings-group:not(.settings-collapsed) .settings-chevron {
  transform: rotate(90deg);
}


.settings-chevron svg {
  width: 17px;
  height: 17px;
}


body.flat-theme .settings-group-body {
  padding: 0 12px 12px;
  min-width: 0;
  overflow: visible;
}


.settingrow {
  justify-content: space-between;
  display: grid;
  grid-template-columns: minmax(0,1fr) 42px;
  align-items: center;
  gap: 13px;
  min-width: 0;
  min-height: 56px;
  padding: 12px 3px;
  border-bottom: 1px solid color-mix(in srgb,var(--mc-border,#dfe4e9) 76%,transparent);
  box-sizing: border-box;
}


.settingrow:last-child {
  border-bottom: 0;
}


.settingrow>span {
  flex-direction: column;
  gap: 2px;
  display: grid;
  grid-template-columns: 28px minmax(0,1fr);
  column-gap: 8px;
  align-items: center;
  min-width: 0;
}


.settingrow>span>svg {
  grid-row: 1/3;
  width: 22px;
  height: 22px;
}


.settingrow>span>b {
  min-width: 0;
  font-size: 13px;
  line-height: 1.4;
  overflow-wrap: anywhere;
}


.settingrow>span>small {
  grid-column: 2;
  min-width: 0;
  font-size: 11px;
  line-height: 1.45;
  color: var(--mc-muted,#667085);
  overflow-wrap: anywhere;
}


.settingrow>input[type="checkbox"] {
  appearance: none;
  -webkit-appearance: none;
  justify-self: end;
  flex: 0 0 42px;
  width: 42px!important;
  min-width: 42px!important;
  max-width: 42px!important;
  height: 24px!important;
  min-height: 24px!important;
  max-height: 24px!important;
  margin: 0!important;
  padding: 0!important;
  position: relative;
  border: 1px solid #cbd5e1;
  border-radius: 999px;
  background: #e7ebf0;
  box-shadow: none;
  transition: background .16s ease,border-color .16s ease;
  cursor: pointer;
  box-sizing: border-box;
}


.settingrow>input[type="checkbox"]:after {
  content: "";
  position: absolute;
  top: 2px;
  left: 2px;
  width: 18px;
  height: 18px;
  border-radius: 50%;
  background: #fff;
  box-shadow: 0 1px 4px rgba(15,23,42,.18);
  transition: transform .16s ease;
}


.settingrow>input[type="checkbox"]:checked {
  background: var(--mc-active,#1683ff);
  border-color: var(--mc-active,#1683ff);
}


.settingrow>input[type="checkbox"]:checked:after {
  transform: translateX(18px);
}


.settingrow>input[type="checkbox"]:disabled {
  opacity: .5;
  cursor: not-allowed;
}


.settings-save-form {
  position: relative;
  bottom: auto;
  z-index: 1;
  padding: 10px;
  border: 1px solid var(--mc-border,#dfe4e9);
  border-radius: 14px;
  background: var(--mc-card-material,#fff);
  backdrop-filter: none;
}


.settings-save-form .btn {
  width: 100%;
  margin: 0;
  min-height: 44px;
}


/* Account identity controls; their own layout, not checkbox setting rows. */
.settings-account-identity {
  display:grid;
  gap:14px;
  min-width:0;
  margin-bottom:16px;
  padding:clamp(12px,3vw,18px);
  border:1px solid var(--mc-border,#dfe4e9);
  border-radius:16px;
  background:var(--mc-card-material,#fff);
  box-sizing:border-box;
}
.settings-account-summary {
  display:grid;
  grid-template-columns:40px minmax(0,1fr);
  align-items:start;
  column-gap:12px;
  min-width:0;
}
.settings-account-symbol {
  display:grid;
  place-items:center;
  width:40px;
  height:40px;
  border:1px solid var(--mc-border,#dfe4e9);
  border-radius:12px;
  color:var(--mc-text,#111827);
}
.settings-account-symbol svg {width:21px;height:21px}
.settings-account-copy {min-width:0}
.settings-account-copy>b {display:block;font-size:15px;line-height:1.4}
.settings-account-identity .settings-account-email {
  display:block;
  width:100%;
  min-width:0;
  max-width:100%;
  margin:6px 0;
  font-size:clamp(13px,3.6vw,16px);
  line-height:1.45;
  overflow-wrap:anywhere;
  word-break:normal;
  font-weight:650;
}
.settings-account-copy>small, .settings-account-footnote {
  display:block;
  color:var(--mc-muted,#667085);
  font-size:12px;
  line-height:1.55;
}
.settings-account-identity details form:not([hidden]) {display:grid;gap:11px;padding:12px 0}
.settings-account-identity details form label {display:grid;gap:5px;min-width:0}
.settings-account-identity details input {width:100%;min-width:0}
.settings-inline-details {
  border: 1px solid var(--mc-border,#dfe4e9);
  border-radius: 12px;
  padding: 8px;
  margin-top: 8px;
}


.settings-inline-details>summary {
  display: flex;
  align-items: center;
  gap: 8px;
  cursor: pointer;
  font-size: 11px;
  font-weight: 850;
}


.settings-inline-details>summary>span:last-child {
  margin-left: auto;
}


.settings-feature-panel {
  display: grid;
  grid-template-columns: 42px minmax(0,1fr);
  gap: 10px;
  align-items: start;
  min-width: 0;
}


.settings-feature-icon {
  width: 40px;
  height: 40px;
  display: grid;
  place-items: center;
  border: 1px solid var(--mc-border,#dfe4e9);
  border-radius: 12px;
  background: var(--mc-input-material,#f7f9fc);
}


.settings-feature-copy {
  min-width: 0;
}


.settings-feature-top {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 8px;
  min-width: 0;
  flex-wrap: wrap;
}


.professional-support-form {
  display: grid;
  gap: 9px;
  min-width: 0;
}


.professional-support-form .grid2 {
  display: grid;
  grid-template-columns: repeat(2,minmax(0,1fr));
  gap: 8px;
}


.professional-support-form label {
  display: grid;
  gap: 4px;
  min-width: 0;
}


.professional-support-form :is(input,select,textarea) {
  margin: 0!important;
  min-width: 0;
}


.support-history-details {
  margin-top: 9px;
  border: 1px solid var(--mc-border,#dfe4e9);
  border-radius: 12px;
  background: var(--mc-card-material,#fff);
  overflow: hidden;
}


.support-history-details>summary {
  display: grid;
  grid-template-columns: minmax(0,1fr) auto;
  align-items: center;
  gap: 10px;
  padding: 10px 11px;
  cursor: pointer;
  list-style: none;
}


.support-history-details>summary>span:first-child {
  display: grid;
  gap: 2px;
  min-width: 0;
}


.support-history-details>summary b {
  font-size: 12px;
  line-height: 1.3;
}


.support-history-details>summary small {
  font-size: 9.5px;
  line-height: 1.35;
  color: var(--mc-muted,#667085);
  white-space: normal;
}


.support-history-count {
  display: grid;
  place-items: center;
  min-width: 30px;
  height: 26px;
  padding: 0 8px;
  border-radius: 999px;
  background: var(--mc-input-material,#f4f7fb);
  font-size: 10px;
  font-weight: 900;
}


.support-history {
  display: grid;
  gap: 7px;
  padding: 0 9px 9px;
}


.support-ticket {
  min-width: 0;
  padding: 9px;
  border: 1px solid var(--mc-border,#dfe4e9);
  border-radius: 11px;
  background: var(--mc-input-material,#fafbfc);
}


@media(max-width:520px) {
  body.flat-theme .settings-group-head {
  grid-template-columns: 34px minmax(0,1fr) auto 24px;
  padding: 10px;
}

  .settings-group-head>svg.mc-outline-icon {
  width: 24px;
  height: 24px;
  padding: 4px;
}

  .settingrow {
  grid-template-columns: minmax(0,1fr) 40px;
  gap: 9px;
  min-height: 48px;
  padding: 8px 0;
}

  .settingrow>input[type="checkbox"] {
  width: 40px!important;
  min-width: 40px!important;
  max-width: 40px!important;
  height: 23px!important;
  min-height: 23px!important;
  max-height: 23px!important;
}

  .settingrow>input[type="checkbox"]:after {
  width: 17px;
  height: 17px;
}

  .settingrow>input[type="checkbox"]:checked:after {
  transform: translateX(17px);
}

  .professional-support-form .grid2 {
  grid-template-columns: 1fr;
}

  .settings-feature-panel {
  grid-template-columns: 36px minmax(0,1fr);
}

  .settings-feature-icon {
  width: 34px;
  height: 34px;
  border-radius: 10px;
}
}


.profile-header-actions {
  display: grid;
  grid-template-columns: minmax(0,1fr);
  gap: 8px;
  align-items: stretch;
  justify-content: center;
  margin: 8px 16px 0;
  max-width: none;
  width: auto;
}


.profile-header-actions .btn {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 8px;
  width: 100%;
  min-width: 0;
  min-height: 42px;
  padding: 8px 12px;
  margin: 0;
  box-sizing: border-box;
  font-size: 13px;
  font-weight: 700;
  border-radius: var(--mc-button-radius,12px);
}


.profile-header-actions .profile-follow-action {
  background: var(--mc-input-material,#f8fafc);
  color: var(--mc-text,#111);
  border: 1px solid var(--mc-border,#dfe4e9);
  box-shadow: none;
}


.profile-header-actions .profile-message-action {
  background: var(--mc-card-material,#fff);
  border: 1px solid var(--mc-border,#dfe4e9);
  color: var(--mc-text,#111);
  margin: 0;
}


.profile-header-actions #blockUser {
  width: auto;
  min-height: 30px;
  justify-self: end;
  font-size: 11px;
  padding: 5px 11px;
}


.profile-follow-overlay {
  position: fixed;
  inset: 0;
  z-index: 260;
  display: grid;
  place-items: center;
  padding: 18px max(12px,env(safe-area-inset-right)) max(18px,env(safe-area-inset-bottom)) max(12px,env(safe-area-inset-left));
  background: rgba(15,23,42,.34);
  box-sizing: border-box;
}


.profile-follow-backdrop {
  position: absolute;
  inset: 0;
  display: block;
}


.profile-follow-panel {
  position: relative;
  z-index: 1;
  display: grid;
  grid-template-rows: auto minmax(0,1fr);
  gap: 10px;
  width: min(560px,100%);
  max-height: min(72vh,680px);
  margin: 0;
  padding: 12px;
  border: 1px solid var(--mc-border,#dfe4e9);
  border-radius: 18px;
  background: var(--mc-card-material,#fff);
  box-shadow: 0 18px 54px rgba(15,23,42,.22);
  overflow: hidden;
}


.profile-follow-head {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 8px;
}


.profile-follow-head>div {
  min-width: 0;
}


.profile-follow-head h2 {
  margin: 0;
  font-size: 16px;
}


.profile-follow-head small {
  display: block;
  margin-top: 2px;
  color: var(--mc-muted,#667085);
  overflow-wrap: anywhere;
}


.profile-follow-close {
  width: 36px;
  height: 36px;
  display: grid;
  place-items: center;
  flex: 0 0 36px;
  border: 1px solid var(--mc-border,#dfe4e9);
  border-radius: 11px;
  background: var(--mc-input-material,#f8fafc);
  color: var(--mc-text,#111);
  text-decoration: none;
}


.profile-follow-close svg {
  width: 19px;
  height: 19px;
}


.profile-follow-list {
  display: grid;
  gap: 6px;
  min-height: 0;
  overflow-y: auto;
  overscroll-behavior: contain;
  padding-right: 2px;
}


.profile-follow-row {
  padding: 8px;
  border: 1px solid color-mix(in srgb,var(--mc-border,#dfe4e9) 75%,transparent);
  border-radius: 12px;
  background: var(--mc-input-material,#f8fafc);
}


@media(max-width:640px) {
  .profile-pro-head {
  display: grid!important;
  grid-template-columns: 1fr!important;
  align-items: start!important;
}

  .profile-header-actions {
  width: auto;
  grid-template-columns: minmax(0,1fr);
  margin: 8px 12px 0;
}

  .profile-header-actions .btn {
  width: 100%;
  min-width: 0;
  flex: initial;
}

  .profile-header-actions #followUser {
  order: 1;
}

  .profile-header-actions .profile-message-action {
  order: 2;
  grid-column: 1;
  width: 100%;
  justify-self: stretch;
}

  .profile-header-actions #blockUser {
  order: 3;
  width: auto;
  justify-self: end;
}

  .profile-follow-overlay {
  place-items: end center;
  padding: 10px 8px max(10px,env(safe-area-inset-bottom));
}

  .profile-follow-panel {
  width: 100%;
  max-height: min(76vh,680px);
  border-radius: 18px 18px 14px 14px;
}

  .profile-follow-head {
  align-items: center;
  flex-direction: row;
}
}


.whatsapp-btn .mc-outline-icon {
  stroke-width: 2.1;
  stroke-linecap: round;
  stroke-linejoin: round;
}


.whatsapp-pro-btn .whatsapp-action-icon {
  border-radius: 50%;
  border: 1px solid color-mix(in srgb,#25d366 45%,var(--mc-border,#dfe4e9));
  background: color-mix(in srgb,#25d366 12%,#fff);
}


.whatsapp-pro-btn .whatsapp-action-icon .mc-outline-icon {
  color: var(--mc-icon-whatsapp,#14883d);
}


.vote-runtime-section {
  display: grid;
  gap: 12px;
  min-width: 0;
}

/* ===== V97.210 CANONICAL THEME STUDIO COMPONENT OWNERSHIP ===== */
.theme-v97-card .theme-item-accordion {
  border-color: #dbe2e8;
  border-radius: 13px;
  background: #fff;
  box-shadow: none;
}


.theme-v97-card .theme-item-accordion>summary {
  min-height: 50px;
  padding: 10px 12px;
  background: #fff;
  font-size: 13px;
  font-weight: 750;
}


.theme-v97-card .theme-item-accordion[open]>summary {
  background: #f8fafc;
  border-bottom-color: #dbe2e8;
}


.theme-v97-card .theme-module-item-picker {
  display: grid;
  grid-template-columns: minmax(0,1fr);
  gap: 9px;
  padding: 12px;
  border: 1px solid var(--mc-border,#dfe4e9);
  border-radius: 12px;
  background: var(--mc-card-material,#fff);
}


.theme-v97-card .theme-module-item-picker label,
.theme-v97-card .theme-module-element-fields>label {
  font-size: 12px;
  font-weight: 700;
  color: #202733;
}


.theme-v97-card .theme-module-item-picker select,
.theme-v97-card .theme-hf-label-editor input,
.theme-v97-card input[type=text]:not(.theme-hex-code),
.theme-v97-card input[type=search],
.theme-v97-card select {
  min-height: 42px;
  border: 1px solid #cfd7df;
  border-radius: 10px;
  background: #fff;
  padding: 8px 10px;
  color: #111827;
  box-shadow: none;
}


.theme-v97-card .theme-hf-label-editor {
  width: 100%!important;
  min-width: 0!important;
  font-weight: 750;
}


.theme-v97-card .theme-control-subgroup {
  margin: 0;
  padding: 9px;
  border: 1px solid #e1e6eb;
  border-radius: 11px;
  background: #fbfcfd;
}


.theme-v97-card .theme-save-bar {
  position: static;
  padding: 8px;
  background: var(--mc-card-material,#fff);
  border: 1px solid #d8e0e7;
  border-radius: 14px;
  box-shadow: none;
}


.theme-v97-card #themeSaveApply {
  min-height: 48px;
  font-weight: 900;
  border-radius: 11px!important;
}


@media(max-width:520px) {
  .theme-toggle-grid label {
  grid-template-columns: 42px minmax(0,1fr);
  padding: 8px;
}

  .theme-v97-card .theme-item-accordion>summary {
  padding: 9px 10px;
}
}


.theme-v97-card .theme-module-summary-actions label {
  display: inline-grid;
  grid-template-columns: 38px auto;
  align-items: center;
  gap: 6px;
  margin: 0;
  padding: 3px 6px;
  border: 1px solid #dfe5ec;
  border-radius: 999px;
  background: #f8fafc;
  font-size: 9px;
  font-weight: 850;
  white-space: nowrap;
}


.theme-v97-card .theme-module-summary-actions input[type=checkbox] {
  appearance: none;
  -webkit-appearance: none;
  width: 36px!important;
  height: 20px!important;
  min-width: 36px!important;
  min-height: 20px!important;
  margin: 0!important;
  padding: 0!important;
  position: relative;
  border: 1px solid #c8d0d9!important;
  border-radius: 999px!important;
  background: #e8edf2!important;
  box-shadow: none!important;
}


.theme-v97-card .theme-module-summary-actions input[type=checkbox]::after {
  content: "";
  position: absolute;
  left: 2px;
  top: 2px;
  width: 14px;
  height: 14px;
  border-radius: 50%;
  background: #fff;
  box-shadow: 0 1px 3px rgba(15,23,42,.18);
  transition: transform .15s ease;
}


.theme-v97-card .theme-module-summary-actions input[type=checkbox]:checked {
  background: #1683ff!important;
  border-color: #1683ff!important;
}


.theme-v97-card .theme-module-summary-actions input[type=checkbox]:checked::after {
  transform: translateX(16px);
}


.sr-only {
  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;
}


/* Side Menu icon and label visibility are independently persisted per action. */
.side-menu-links [data-mc-show-icon="0"] > svg {
  display: none!important;
}


.side-menu-links [data-mc-show-label="0"] > span {
  display: none!important;
}


/* If both parts are hidden, collapse the complete action rather than leaving a blank card. */
[data-mc-hf-style][data-mc-show-icon="0"][data-mc-show-label="0"]:not(.header-search) {
  display: none!important;
}


.side-menu-links [data-mc-show-icon="0"][data-mc-show-label="0"] {
  display: none!important;
}


/* Canonical paired detail columns and native disclosures (Profile & Shop). */
.mc-detail-disclosure {
  min-width: 0;
}


.mc-detail-disclosure:not([open])>:not(summary) {
  display: none;
}


.mc-detail-disclosure>.mc-detail-summary {
  list-style: none;
  cursor: pointer;
  user-select: none;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 9px;
}


.mc-detail-disclosure>.mc-detail-summary::-webkit-details-marker {
  display: none;
}


.mc-detail-summary .mc-detail-chevron {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 30px;
  height: 30px;
  min-width: 30px;
  flex: 0 0 30px;
  line-height: 1;
  color: inherit;
  margin-left: auto;
}


.mc-detail-summary .mc-detail-chevron::before {
  content: "";
  display: block;
  width: 9px;
  height: 9px;
  border-right: 2px solid currentColor;
  border-bottom: 2px solid currentColor;
  transform: translateY(-2px) rotate(45deg);
  transition: transform .16s ease;
}


.mc-detail-disclosure[open]>.mc-detail-summary .mc-detail-chevron::before {
  transform: translateY(2px) rotate(225deg);
}


.mc-detail-disclosure>.mc-detail-summary:focus-visible {
  outline: 3px solid var(--mc-accent,#1683ff);
  outline-offset: 3px;
}


.mc-detail-columns {
  display: grid;
  grid-template-columns: repeat(2,minmax(0,1fr));
  gap: 10px;
  align-items: start;
  min-width: 0;
}


.mc-detail-columns>.mc-detail-column {
  display: flex;
  flex-direction: column;
  gap: 10px;
  min-width: 0;
  align-self: start;
}


.mc-detail-columns .profile-about-item,
.mc-detail-columns .shop-detail-item {
  box-sizing: border-box;
  max-width: 100%;
  min-width: 0;
  width: 100%;
}


.mc-detail-columns .shop-detail-copy {
  min-width: 0;
  overflow-wrap: anywhere;
}


.mc-detail-columns .shop-detail-about {
  align-self: start;
}


.mc-detail-columns .shop-detail-about>.mc-detail-summary {
  align-items: center;
  gap: 6px;
  min-width: 0;
}


.mc-detail-columns .shop-detail-about .mc-detail-chevron {
  margin-left: auto;
}


.mc-detail-columns .shop-detail-about p {
  overflow-wrap: anywhere;
  word-break: break-word;
}


.shop-business-info>.mc-detail-summary {
  margin: 0;
}


.shop-description-panel.mc-detail-disclosure {
  display: block;
  min-width: 0;
}


.shop-description-panel.mc-detail-disclosure>.mc-detail-summary {
  margin: 0;
}


.shop-description-panel.mc-detail-disclosure>.shop-description-compact {
  margin: 8px 0 0;
}


.shop-business-info>.mc-detail-summary>.mc-detail-chevron {
  margin-left: auto;
}


.theme-detail-order-panel .theme-detail-order-body {
  padding: 10px;
}


.theme-detail-editor-columns {
  display: grid;
  grid-template-columns: repeat(2,minmax(0,1fr));
  gap: 9px;
  margin-top: 9px;
}


.theme-detail-editor-column {
  min-width: 0;
  min-height: 100px;
  padding: 8px;
  background: #f8fafc;
  border: 1px solid #dce3ed;
  border-radius: 12px;
  display: flex;
  flex-direction: column;
  gap: 6px;
}


.theme-detail-editor-column>b {
  font-size: 12px;
  color: #172334;
  padding: 3px;
}


.theme-detail-drag-item {
  min-width: 0;
  min-height: 46px;
  display: grid;
  grid-template-columns: 25px minmax(0,1fr);
  grid-template-rows: auto auto;
  align-items: center;
  gap: 5px;
  padding: 6px;
  border: 1px solid #cad8e6;
  border-radius: 10px;
  background: #fff;
  color: #172334;
}


.theme-detail-drag-item>span {
  font-size: 11px;
  font-weight: 750;
  overflow-wrap: anywhere;
  min-width: 0;
}


.theme-detail-grip {
  width: 26px;
  height: 34px;
  padding: 0;
  border: 0;
  background: transparent;
  color: #334155;
  touch-action: none;
  cursor: grab;
  font-size: 23px;
}


.theme-detail-drag-item.is-detail-dragging {
  outline: 2px solid #1683ff;
  outline-offset: 0;
  opacity: .8;
}


.theme-detail-move-buttons {
  display: flex;
  gap: 3px;
  grid-column: 1/-1;
  justify-content: space-between;
}


.theme-detail-move-buttons>button {
  flex: 1;
  min-width: 0;
  min-height: 28px;
  border: 1px solid #dae4ed;
  border-radius: 7px;
  background: #f5f9fd;
  font-weight: 700;
  color: #162a41;
  font-size: 13px;
}


.theme-detail-move-buttons>button:focus-visible,
.theme-detail-grip:focus-visible {
  outline: 2px solid #1683ff;
}


@media(max-width:360px) {
  .mc-detail-columns {
  gap: 6px;
}

  .mc-detail-columns>.mc-detail-column {
  gap: 6px;
}

  .theme-detail-editor-columns {
  gap: 6px;
}

  .theme-detail-editor-column {
  padding: 5px;
}
}


/* Voting New Challenge: canonical compact lobby and open-challenge controls. */




.vote-challenge-header>.vote-system-chip {
  margin-left: auto;
  flex: 0 0 auto;
  font-size: 10px;
}


.vote-challenge-form,
.vote-opponent-field,
.vote-challenge-inputs,
.vote-challenge-field {
  display: grid;
  min-width: 0;
  gap: 5px;
}


.vote-challenge-form {
  gap: 12px;
}


.vote-challenge-compose {
  display: grid;
  gap: 10px;
  min-width: 0;
  padding: 12px;
  background: var(--mc-input-material,#f7f9fc);
  border: 1px solid var(--mc-border,#dfe4e9);
  border-radius: 14px;
}


.vote-challenge-compose .vote-opponent-field {
  position: relative;
  padding-bottom: 8px;
  border-bottom: 1px solid var(--mc-border,#dfe4e9);
}


.vote-challenge-compose .vote-player-search {
  display: flex;
  align-items: center;
  gap: 8px;
  min-width: 0;
}


.vote-challenge-compose .vote-challenge-line-field {
  display: grid;
  grid-template-columns: 18px minmax(0,1fr);
  align-items: center;
  gap: 3px 8px;
  min-width: 0;
}


.vote-challenge-compose .mc-outline-icon,
.vote-challenge-quick-controls .mc-outline-icon {
  width: 18px;
  height: 18px;
  flex: none;
  color: var(--mc-text,#172334);
}


.vote-challenge-compose :is(input) {
  flex: 1;
  min-width: 0;
  background: var(--mc-card-material,#fff);
  border: 1px solid var(--mc-border,#dfe4e9);
}


.vote-challenge-compose .vote-line-counter {
  grid-column: 2;
  justify-self: end;
  color: var(--mc-muted,#667085);
  font-size: 10px;
  line-height: 1.2;
  white-space: nowrap;
}


.vote-challenge-quick-controls {
  display: grid;
  grid-template-columns: repeat(2,minmax(0,1fr));
  gap: 10px;
}


.vote-challenge-quick-controls .vote-challenge-field {
  display: flex;
  flex-direction: row;
  align-items: center;
  min-width: 0;
  gap: 3px;
  padding: 0 6px;
  border: 1px solid var(--mc-border,#dfe4e9);
  border-radius: 999px;
  background: var(--mc-card-material,#fff);
}


.vote-challenge-form .vote-challenge-quick-controls select {
  flex: 1;
  width: 100%;
  min-width: 0;
  max-width: 100%;
  height: 42px;
  min-height: 42px;
  padding: 3px 1px;
  border: 0;
  border-radius: 999px;
  background: transparent;
  font-size: 12px;
}


.vote-challenge-modes {
  display: grid;
  grid-template-columns: repeat(2,minmax(0,1fr));
  gap: 6px;
  min-width: 0;
  padding: 5px;
  border: 1px solid var(--mc-border,#dfe4e9);
  border-radius: 14px;
  background: var(--mc-input-material,#f7f9fc);
}


.vote-mode-button {
  display: grid;
  grid-template-columns: minmax(0,1fr);
  grid-template-rows: 19px minmax(0,1fr);
  align-content: center;
  align-items: center;
  justify-items: center;
  gap: 3px;
  width: 100%;
  min-width: 0;
  min-height: 60px;
  height: 60px;
  box-sizing: border-box;
  padding: 6px;
  border: 1px solid transparent;
  border-radius: 10px;
  background: transparent;
  color: var(--mc-text,#172334);
  font-size: 12px;
  font-weight: 750;
  cursor: pointer;
  line-height: 1.15;
  text-align: center;
}


.vote-mode-button.is-selected {
  border-color: var(--mc-border,#dfe4e9);
  background: var(--mc-card-material,#fff);
  box-shadow: none;
}


.vote-mode-button svg.mc-outline-icon {
  width: 17px;
  height: 17px;
  flex: none;
}


.vote-mode-button span {
  min-width: 0;
  max-width: 100%;
  display: -webkit-box;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 2;
  line-clamp: 2;
  overflow: hidden;
  overflow-wrap: anywhere;
  text-wrap: balance;
}


.vote-mode-help {
  margin: -3px 2px 0;
  min-height: 15px;
  color: var(--mc-muted,#667085);
  font-size: 10.5px;
  line-height: 1.3;
  overflow-wrap: anywhere;
}


.vote-opponent-hint {
  display: block;
  color: var(--mc-muted,#667085);
  font-size: 11px;
  line-height: 1.3;
  overflow-wrap: anywhere;
}
.vote-create-error {
  padding: 9px 11px;
  margin: 0;
  border: 1px solid var(--mc-notice-error,#e04b60);
  border-radius: 9px;
  background: var(--mc-card-material,#fff);
  color: var(--mc-text,#172334);
  font-size: 12px;
  line-height: 1.4;
}
.vote-create-error[hidden],
.vote-opponent-field[hidden],
.vote-opponent-results[hidden] {
  display: none;
}


.vote-open-challenge {
  display: grid;
  gap: 12px;
  min-width: 0;
  padding: 16px;
  border: 1px solid var(--mc-border,#dfe4e9);
  border-radius: 16px;
}

.vote-open-heading {
  display: flex;
  align-items: center;
  gap: 10px;
  min-width: 0;
}

.vote-open-symbol {
  display: grid;
  place-items: center;
  flex: 0 0 36px;
  width: 36px;
  height: 36px;
  border-radius: 11px;
  background: var(--mc-input-material,#f7f9fc);
}

.vote-open-heading>div {
  display: grid;
  gap: 2px;
  min-width: 0;
}

.vote-open-heading b {
  font-size: 14px;
  overflow-wrap: anywhere;
}

.vote-open-heading small {
  font-size: 11px;
  line-height: 1.35;
  color: var(--mc-muted,#667085);
  overflow-wrap: anywhere;
}

.vote-open-arena {
  display: grid;
  grid-template-columns: minmax(0,1fr) 30px minmax(0,1fr);
  gap: 8px;
  align-items: center;
  min-width: 0;
  padding: 12px 9px;
  border: 1px solid var(--mc-border,#dfe4e9);
  background: var(--mc-input-material,#f7f9fc);
  border-radius: 13px;
}

.vote-open-player {
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  gap: 3px;
  min-width: 0;
  text-align: center;
}

.vote-open-player>.vote-search-avatar,
.vote-open-empty-avatar {
  display: grid;
  place-items: center;
  width: 42px;
  height: 42px;
  flex: 0 0 42px;
  border-radius: 50%;
  object-fit: cover;
  background: var(--mc-card-material,#fff);
  border: 1px solid var(--mc-border,#dfe4e9);
}

.vote-open-empty-avatar svg { width: 22px; height: 22px; }

.vote-open-player-role,
.vote-open-player-username {
  max-width: 100%;
  font-size: 10px;
  line-height: 1.3;
  color: var(--mc-muted,#667085);
  overflow-wrap: anywhere;
}

.vote-open-player b {
  max-width: 100%;
  font-size: 12px;
  line-height: 1.3;
  overflow-wrap: anywhere;
}

.vote-open-player b .verified-badge { display: inline-flex; vertical-align: middle; }
.vote-open-vs { font-size: 11px; font-weight: 900; text-align: center; color: var(--mc-muted,#667085); }

.vote-open-meta {
  display: flex;
  align-items: center;
  gap: 7px;
  min-width: 0;
  font-size: 11px;
  color: var(--mc-muted,#667085);
}
.vote-open-meta svg { width: 17px; height: 17px; flex: 0 0 17px; }

.vote-open-statement {
  padding: 10px 0;
  margin: 0;
  border-top: 1px solid var(--mc-border,#dfe4e9);
  font-size: 12px;
  line-height: 1.5;
  overflow-wrap: anywhere;
  word-break: break-word;
}

.vote-open-actions {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  align-items: center;
  gap: 8px;
  min-width: 0;
}

.vote-open-actions .btn {
  flex: 0 1 auto;
  min-width: 0;
  width: auto;
  max-width: 100%;
  min-height: 40px;
  margin: 0;
  padding: 8px 14px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 7px;
  font-size: 12px;
  text-align: center;
}

.vote-open-actions .btn svg { width: 17px; height: 17px; flex: 0 0 17px; }

.vote-accept-start-form {
  display: grid;
  gap: 8px;
  min-width: 0;
  padding: 0;
  margin: 0;
  border: 0;
  background: transparent;
}


.vote-accept-start-form label {
  display: grid;
  gap: 6px;
  min-width: 0;
  font-size: 12px;
  font-weight: 750;
}


.vote-accept-start-form textarea {
  width: 100%;
  min-width: 0;
  min-height: 64px;
  box-sizing: border-box;
  padding: 10px;
  border: 1px solid var(--mc-border,#dfe4e9);
  border-radius: 10px;
  background: var(--mc-card-material,#fff);
  font: inherit;
  resize: vertical;
}


.vote-accept-start-form button {
  min-height: 42px;
  width: 100%;
  margin: 0;
}


.vote-accept-start-form button svg.mc-outline-icon {
  width: 20px;
  height: 20px;
}


.vote-challenge-inputs {
  grid-template-columns: repeat(2,minmax(0,1fr));
  gap: 8px;
}


.vote-challenge-field>span,
.vote-opponent-field .vote-player-search>span {
  font-size: 11px;
  font-weight: 800;
  line-height: 1.2;
}


.vote-opponent-field .vote-player-search>small,
.vote-challenge-field>span small {
  margin-left: 4px;
  font-size: 9.5px;
  color: var(--mc-muted,#657080);
  font-weight: 500;
  white-space: nowrap;
}


.vote-challenge-form :is(input,select) {
  min-width: 0;
  width: 100%;
  height: 39px;
  min-height: 39px;
  margin: 0;
  padding: 7px 9px;
  border-radius: 9px;
  box-sizing: border-box;
  font-size: 12px;
}


.vote-challenge-form input::placeholder {
  font-size: 11.5px;
}


.vote-challenge-send {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 8px;
  width: 100%;
  min-height: 42px;
  margin: 2px 0 0;
  padding: 8px 12px;
  border-radius: 10px;
  font-size: 12px;
  font-weight: 800;
  text-align: center;
}


.vote-challenge-send svg.mc-outline-icon {
  width: 18px;
  height: 18px;
  flex: none;
}


.vote-waiting-section .vote-section-title {
  margin: 10px 2px 3px;
}


.vote-waiting-section .vote-section-title h2 {
  margin: 0;
  font-size: 17px;
  line-height: 1.3;
}


.vote-waiting-section .vote-section-title>span {
  display: grid;
  place-items: center;
  min-width: 24px;
  height: 24px;
  border: 1px solid var(--mc-border,#dfe4e9);
  border-radius: 999px;
  font-size: 11px;
  font-weight: 700;
}


@media(max-width:520px) {
  .vote-challenge-header>.vote-system-chip {
    display: none;
  }
}


@media(max-width:350px) {
  .vote-challenge-quick-controls {
  gap: 5px;
}

  .vote-challenge-quick-controls .vote-challenge-field {
  padding: 0 3px;
}

  .vote-challenge-quick-controls .mc-outline-icon {
  width: 14px;
  height: 14px;
}

  .vote-challenge-quick-controls select {
  font-size: 10px;
}

  .vote-mode-button {
    gap: 3px;
  }

  .vote-mode-button svg.mc-outline-icon {
    width: 15px;
    height: 15px;
  }
}


/* Verification Center — one scoped responsive component owner. */
.verification-form {
  display: grid;
  gap: 14px;
  width: 100%;
  min-width: 0;
  max-width: 660px;
  box-sizing: border-box;
  margin-inline: auto;
}


.verification-form :is(input,select,button) {
  box-sizing: border-box;
  max-width: 100%;
}


.verification-form [hidden],
.verification-camera-panel[hidden],
.verification-scan-card[hidden],
.verification-document-preview[hidden] {
  display: none !important;
}


.verification-intro {
  display: grid;
  gap: 9px;
  padding: 18px;
  border: 1px solid var(--mc-border,#dce2e7);
  border-radius: 16px;
  background: var(--mc-card-material,#fff);
}


.verification-intro b {
  display: block;
  font-size: 19px;
  line-height: 1.2;
  letter-spacing: -.02em;
}


.verification-intro p {
  margin: 0;
  font-size: 13px;
  line-height: 1.55;
  color: var(--mc-muted,#667085);
}


.verification-progress {
  display: grid;
  grid-template-columns: repeat(3,minmax(0,1fr));
  gap: 6px;
  margin-top: 3px;
}


.verification-progress span {
  display: grid;
  gap: 4px;
  justify-items: center;
  padding: 10px 3px;
  text-align: center;
  border: 1px solid var(--mc-border,#dce2e7);
  border-radius: 10px;
  background: var(--mc-input-material,#f8fafc);
  font-size: 11px;
  font-weight: 750;
  line-height: 1.2;
}


.verification-progress b {
  display: grid;
  place-items: center;
  width: 24px;
  height: 24px;
  border-radius: 50%;
  background: var(--mc-card-material,#fff);
  border: 1px solid var(--mc-border,#dce2e7);
  font-size: 11px;
}


.verification-progress [data-ready="1"] {
  border-color: var(--mc-button,#0ca8d7);
  background: color-mix(in srgb,var(--mc-button,#0ca8d7) 8%,#fff);
}


.verification-progress [data-ready="1"] b {
  background: var(--mc-button,#0ca8d7);
  color: #fff;
  border-color: transparent;
}


.verification-field {
  display: grid;
  gap: 7px;
  min-width: 0;
  font-size: 12px;
  font-weight: 800;
}


.verification-form .verification-field :is(input,select) {
  width: 100%;
  min-width: 0;
  min-height: 47px;
  padding: 10px 12px;
  border: 1px solid var(--mc-border,#dce2e7);
  border-radius: 11px;
  background: var(--mc-input-material,#f8fafc);
  font-size: 14px;
}


.verification-section-head {
  display: flex;
  justify-content: space-between;
  align-items: center;
  gap: 8px;
  min-width: 0;
}


.verification-section-head b {
  font-size: 15px;
  line-height: 1.25;
}


.verification-section-head small {
  font-size: 11px;
  color: var(--mc-muted,#667085);
}


.verification-scan-grid {
  display: grid;
  grid-template-columns: repeat(2,minmax(0,1fr));
  gap: 10px;
  margin: 0;
  min-width: 0;
}


.verification-scan-card {
  display: flex;
  flex-direction: column;
  gap: 9px;
  min-width: 0;
  padding: 14px;
  border: 1px solid var(--mc-border,#dce2e7);
  border-radius: 14px;
  background: var(--mc-card-material,#fff);
}


.verification-scan-card[data-scan-ready="1"] {
  border-color: var(--mc-button,#0ca8d7);
}


.verification-scan-card b {
  font-size: 13px;
  line-height: 1.3;
}


.verification-scan-card p {
  margin: 0;
  min-height: 38px;
  font-size: 12px;
  line-height: 1.4;
  color: var(--mc-muted,#667085);
}


.verification-scan-card .btn {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 6px;
  width: 100%;
  min-height: 43px;
  margin-top: auto;
  padding: 7px 8px;
  font-size: 12px;
  font-weight: 800;
  border-radius: 10px;
}


.verification-scan-card small {
  min-width: 0;
  font-size: 11px;
  line-height: 1.4;
  color: var(--mc-muted,#667085);
  overflow-wrap: anywhere;
}


.verification-scan-card-face {
  grid-column: 1/-1;
}


.verification-document-preview {
  display: block;
  width: 100%;
  max-width: 100%;
  height: 125px;
  object-fit: contain;
  object-position: center;
  border-radius: 9px;
  background: #eef2f6;
  border: 1px solid var(--mc-border,#dce2e7);
}


.verification-face-progress {
  display: grid;
  gap: 7px;
  padding: 12px;
  border: 1px solid var(--mc-border,#dce2e7);
  border-radius: 10px;
  background: var(--mc-input-material,#f8fafc);
  min-width: 0;
}


.verification-face-progress-bar {
  display: block;
  width: 100%;
  height: 7px;
  border-radius: 999px;
  overflow: hidden;
  background: var(--mc-border,#dce2e7);
}


.verification-face-progress-bar i {
  display: block;
  width: 0%;
  height: 100%;
  border-radius: inherit;
  background: var(--mc-button,#0ca8d7);
  transition: width .15s linear;
}


.verification-face-progress strong {
  font-size: 12px;
  font-weight: 750;
  text-align: center;
  color: var(--mc-muted,#667085);
}


/* The Verification camera is one dark camera screen, not a small dialog with extra video controls. */
.verification-camera-panel {
  position: fixed;
  inset: 0 0 auto 0;
  box-sizing: border-box;
  display: flex;
  flex-direction: column;
  gap: 0;
  width: min(100vw,540px);
  height: 100dvh;
  max-width: none;
  max-height: 100dvh;
  min-width: 0;
  margin: 0 auto;
  padding: 0;
  border: 0;
  border-radius: 0 0 22px 22px;
  background: #0c1320;
  color: #fff;
  overflow: hidden;
  overscroll-behavior: contain;
  z-index: 10000;
}


.verification-camera-panel:not([open]) {
  display: none;
}


.verification-camera-panel::backdrop {
  background: rgba(5,12,25,.88);
}


.verification-camera-heading {
  display: flex;
  align-items: center;
  justify-content: space-between;
  flex: 0 0 auto;
  gap: 12px;
  padding: calc(12px + env(safe-area-inset-top,0px)) 18px 13px;
  background: #0c1320;
  min-width: 0;
}


.verification-camera-title {
  display: grid;
  gap: 4px;
  min-width: 0;
}


.verification-camera-title small {
  font-size: 10px;
  line-height: 1.3;
  letter-spacing: .11em;
  font-weight: 800;
  color: #9caebe;
}


.verification-camera-heading b {
  font-size: 19px;
  line-height: 1.2;
  color: #fff;
  letter-spacing: -.02em;
}


.verification-camera-close {
  display: grid;
  place-items: center;
  flex: none;
  width: 42px;
  height: 42px;
  padding: 0;
  border: 1px solid #344051;
  border-radius: 50%;
  background: #222c3b;
  color: #fff;
  font-size: 30px;
  font-weight: 300;
  line-height: 1;
  cursor: pointer;
}


.verification-camera-viewport {
  position: relative;
  display: block;
  flex: 1 1 auto;
  min-height: 0;
  overflow: hidden;
  background: #080c13;
  isolation: isolate;
}


/* Keep the native media element out of view: Samsung/Android must not show video-player UI. */
.verification-camera-panel #verificationVideo {
  position: absolute;
  width: 1px;
  height: 1px;
  top: 0;
  left: 0;
  opacity: 0;
  pointer-events: none;
  z-index: -1;
  max-width: none;
  min-height: 0;
  overflow: hidden;
}


.verification-camera-canvas {
  display: block;
  width: 100%;
  height: 100%;
  position: absolute;
  inset: 0;
  object-fit: cover;
  background: #0d1420;
  z-index: 0;
  visibility: hidden;
}


.verification-camera-panel.verification-camera-ready .verification-camera-canvas {
  visibility: visible;
}


.verification-camera-loading {
  position: absolute;
  inset: 0;
  display: flex;
  align-items: center;
  justify-content: center;
  flex-direction: column;
  gap: 13px;
  padding: 24px;
  box-sizing: border-box;
  background: #101827;
  color: #dce8f3;
  font-size: 14px;
  font-weight: 700;
  text-align: center;
  z-index: 1;
}


.verification-camera-loading[hidden] {
  display: none;
}


.verification-camera-loading.verification-camera-failed .verification-camera-spinner {
  display: none;
}


.verification-camera-spinner {
  width: 34px;
  height: 34px;
  border: 3px solid #cbfaff;
  border-top-color: #00f2ff;
  border-radius: 50%;
  animation: verification-camera-spin .9s linear infinite;
}


@keyframes verification-camera-spin {
  to {
    transform: rotate(360deg);
  }
}


.verification-camera-panel.verification-camera-ready .verification-camera-loading {
  display: none;
}


.verification-camera-actions #verificationCameraRetry {
  width: 100%;
  max-width: 430px;
  min-height: 55px;
  box-sizing: border-box;
  margin: 0;
  border: 1px solid #526174;
  border-radius: 16px;
  background: #243247;
  color: #fff;
  font-weight: 800;
}


.verification-face-guide,
.verification-document-guide {
  pointer-events: none;
  position: absolute;
  z-index: 1;
  box-sizing: border-box;
  border: 2.5px solid rgba(255,255,255,.92);
  box-shadow: 0 0 0 999px rgba(0,0,0,.19);
}


.verification-face-guide {
  top: 14%;
  left: 19%;
  width: 62%;
  height: 63%;
  border-radius: 48% 48% 45% 45%;
}


.verification-document-guide {
  top: 28%;
  left: 8%;
  width: 84%;
  height: 43%;
  border-radius: 14px;
}


.verification-camera-panel[data-scan-mode="document"] .verification-face-guide,
.verification-camera-panel[data-scan-mode="face"] .verification-document-guide {
  display: none;
}


.verification-camera-panel.verification-doc-ready .verification-document-guide {
  border-color: #4ade80;
}


.verification-camera-panel:not(.verification-camera-ready) .verification-face-guide,
.verification-camera-panel:not(.verification-camera-ready) .verification-document-guide {
  display: none;
}


.verification-camera-step {
  position: absolute;
  top: 17px;
  left: 17px;
  z-index: 2;
  display: inline-flex;
  align-items: center;
  min-height: 28px;
  margin: 0;
  padding: 3px 11px;
  border: 1px solid rgba(255,255,255,.23);
  border-radius: 30px;
  background: rgba(10,20,35,.74);
  color: #fff;
  font-size: 12px;
  font-weight: 800;
  font-variant-numeric: tabular-nums;
}


.verification-camera-instructions {
  position: absolute;
  inset: auto 0 0;
  z-index: 2;
  display: grid;
  gap: 6px;
  justify-items: center;
  min-width: 0;
  padding: 50px 16px 22px;
  text-align: center;
  background: linear-gradient(0deg,rgba(3,9,18,.96),rgba(3,9,18,.76) 60%,transparent);
  pointer-events: none;
}


.verification-camera-panel #verificationPoseInstruction {
  margin: 0;
  max-width: 330px;
  color: #fff;
  font-size: 17px;
  font-weight: 800;
  line-height: 1.4;
}


.verification-camera-panel #verificationCameraStatus {
  margin: 0;
  max-width: 350px;
  min-height: 0;
  color: #c6d3dd;
  font-size: 12px;
  line-height: 1.45;
}


.verification-camera-panel #verificationCameraStatus:empty {
  display: none;
}


.verification-camera-actions {
  display: flex;
  align-items: center;
  justify-content: center;
  flex: none;
  min-height: 95px;
  padding: 13px 22px calc(14px + env(safe-area-inset-bottom,0px));
  box-sizing: border-box;
  background: #0c1320;
}


.verification-camera-actions #verificationCapture {
  width: 100%;
  max-width: 430px;
  min-height: 55px;
  box-sizing: border-box;
  margin: 0;
  border-radius: 16px;
  background: var(--mc-button,#0ca8d7);
  border: 1px solid var(--mc-button,#0ca8d7);
  color: #fff;
  font-size: 15px;
  font-weight: 800;
  cursor: pointer;
}


@media(min-width:541px) {
  .verification-camera-panel {
  max-height: min(840px,100dvh);
  height: min(840px,100dvh);
  border-radius: 20px;
}
}


@media(max-height:650px) {
  .verification-camera-heading {
  padding-top: 10px;
  padding-bottom: 9px;
}

  .verification-camera-actions {
  min-height: 75px;
  padding-top: 9px;
  padding-bottom: 9px;
}

  .verification-camera-instructions {
  padding-bottom: 14px;
}

  .verification-face-guide {
  top: 12%;
  height: 62%;
}
}


/* Verification media stays on its existing scan card; the progress belongs to that form. */
.verification-upload-progress { width:100%; min-width:0; display:grid; gap:7px; margin:8px 0 12px; padding:9px 12px; border-radius:12px; border:1px solid var(--mc-border,#dfe4e9); background:var(--mc-input-material,#f7f9fc); box-sizing:border-box; }
.verification-upload-progress-track { height:6px; background:var(--mc-border,#dfe4e9); border-radius:20px; overflow:hidden; }
.verification-upload-progress-track>span { display:block; height:100%; width:0; background:var(--mc-accent,#00F2FF); transition:width .2s ease; }
.verification-upload-progress>small { overflow-wrap:anywhere; font-size:12px; color:var(--mc-muted,#667085); }
.verification-upload-progress[data-state=failed]>small { color:#b42318; }
.verification-upload-progress[data-state=success]>small { color:#087e58; }

.verification-form>button[type="submit"] {
  min-height: 48px;
  border-radius: 12px;
  font-weight: 850;
}


@media(max-width:450px) {
  .verification-intro {
  padding: 13px;
}

  .verification-progress span {
  font-size: 10px;
}

  .verification-scan-grid {
  gap: 8px;
}

  .verification-scan-card {
  padding: 10px;
}

  .verification-scan-card p {
  font-size: 11px;
}

  .verification-scan-card .btn {
  font-size: 11px;
}

  .verification-document-preview {
  height: 105px;
}
}


/* Admin Verification review layout — scoped to the existing Verification owner. */
.admin-verify-request {
  display: grid;
  gap: 12px;
  min-width: 0;
}


.admin-verify-person {
  display: grid;
  gap: 3px;
  min-width: 0;
}


.admin-verify-person b {
  font-size: 14px;
  overflow-wrap: break-word;
}


.admin-verify-person small {
  font-size: 11px;
  color: var(--mc-muted,#667085);
}


.admin-verify-phone {
  margin: 0;
  font-size: 12px;
}


.admin-verify-evidence {
  display: grid;
  gap: 11px;
  min-width: 0;
  padding: 12px;
  border: 1px solid var(--mc-border,#dce2e7);
  border-radius: 12px;
  background: var(--mc-input-material,#f8fafc);
}


.admin-verify-evidence-title {
  display: flex;
  justify-content: space-between;
  align-items: center;
  gap: 8px;
  flex-wrap: wrap;
  font-size: 12px;
}


.admin-verify-evidence-title small {
  font-size: 11px;
  color: var(--mc-muted,#667085);
}


.admin-verify-evidence-files {
  display: grid;
  grid-template-columns: repeat(2,minmax(0,1fr));
  gap: 8px;
  min-width: 0;
}


.admin-verify-evidence-link {
  display: flex;
  justify-content: center;
  align-items: center;
  min-width: 0;
  min-height: 42px;
  max-width: 100%;
  box-sizing: border-box;
  white-space: normal;
  overflow-wrap: break-word;
  text-align: center;
  font-size: 12px;
  line-height: 1.25;
}


.admin-verify-note {
  margin: 0;
  font-size: 12px;
  line-height: 1.4;
}


.admin-verify-decision-label {
  font-size: 12px;
  font-weight: 800;
}


.admin-verify-request textarea {
  width: 100%;
  min-width: 0;
  min-height: 84px;
  box-sizing: border-box;
  resize: vertical;
}


.admin-verify-actions {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
}


.admin-verify-actions>.btn {
  flex: 1 1 120px;
  min-height: 42px;
  line-height: 1.25;
  white-space: normal;
}


@media(max-width:360px) {
  .admin-verify-evidence-files {
  grid-template-columns: minmax(0,1fr);
}
}


/* Canonical Account & Security device list: no IP or overflowing controls. */
.settings-device-list{display:grid;gap:0;margin:8px 0 12px;border:1px solid var(--mc-border,#e3e7eb);border-radius:14px;overflow:hidden;min-width:0;background:var(--mc-card,#fff)}
.settings-device-row{display:flex;align-items:flex-start;gap:11px;padding:13px 12px;min-width:0;width:100%;box-sizing:border-box}
.settings-device-row+.settings-device-row{border-top:1px solid var(--mc-border,#edf0f2)}
.settings-device-icon{display:grid;place-items:center;flex:0 0 32px;width:32px;height:32px;border-radius:10px;background:var(--mc-input-material,#f5f7fa)}
.settings-device-icon svg{width:17px;height:17px}
.settings-device-copy{display:flex;flex-direction:column;gap:3px;flex:1;min-width:0;overflow-wrap:anywhere}
.settings-device-copy b{font-weight:700;font-size:14px;line-height:1.35}
.settings-device-copy small{font-size:12px;line-height:1.45;color:var(--mc-muted,#697586)}
.settings-device-current{font-size:11px;font-weight:700;color:var(--mc-text,#111827);background:var(--mc-input-material,#f2f5f8);padding:5px 8px;border-radius:8px;flex-shrink:0}
.settings-device-row>.btn{flex-shrink:0;max-width:85px;padding:8px 10px;font-size:12px;white-space:nowrap;min-height:34px}
.settings-device-review{display:flex;flex-wrap:wrap;gap:7px;margin-top:8px;min-width:0}
.settings-device-review .btn{font-size:12px;padding:8px 10px;white-space:normal;max-width:100%;min-width:0}
@media(max-width:390px){.settings-device-row{gap:8px;padding:11px 9px}.settings-device-icon{flex-basis:28px;width:28px;height:28px}.settings-device-row>.btn{padding:8px;font-size:11px}}

/* Canonical Admin Reports status control: one intentional Apply action, no
   adjacent status touch targets during vertical scrolling. */
.admin-report-status-control{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:10px;align-items:end;margin:12px 0}
.admin-report-status-control label{display:grid;gap:5px;min-width:0;font-size:13px}
.admin-report-status-control select{width:100%;min-width:0;min-height:42px;box-sizing:border-box}
.admin-report-status-control button{min-height:42px;white-space:nowrap}
@media(max-width:360px){.admin-report-status-control{grid-template-columns:minmax(0,1fr)}.admin-report-status-control button{width:100%}}

/* Private deleted-content archive: one clear card inside canonical User Record */
.dossier-deleted-preview{margin:12px 0;padding:12px;border:1px solid var(--line,#dce8ed);border-radius:12px;background:var(--surface,#fafcfd);overflow:hidden}
.dossier-deleted-heading{display:flex;gap:8px;align-items:center;justify-content:space-between;flex-wrap:wrap;margin-bottom:8px}
.dossier-deleted-heading span{font-size:11px;color:#697b83}
.dossier-deleted-text{white-space:pre-wrap;overflow-wrap:anywhere;margin:8px 0;line-height:1.55;max-height:360px;overflow-y:auto}
.dossier-archived-media{margin:10px 0;max-width:100%;overflow:hidden}
.dossier-archived-media img,.dossier-archived-media video{display:block;max-width:100%;width:auto;max-height:340px;object-fit:contain;border-radius:8px}
.dossier-archived-media audio{max-width:100%}
.dossier-archived-media small,.dossier-archived-media figcaption{display:block;margin-top:4px;font-size:11px;color:#677b83}
.dossier-media-unavailable{font-size:12px;color:#9b5d14;margin-top:8px;overflow-wrap:anywhere}

.dossier-deleted-meta{font-size:11px;color:#687983;margin-top:5px}
