/* Comunidade Bless v49 — sistema visual definitivo: Claro Grafite / Escuro Grafite */

html[data-theme="claro"]{
  color-scheme:light;
  --v48-page:#cbd2d6;
  --v48-page-2:#c2c9cd;
  --v48-surface:#e2e6e8;
  --v48-surface-raised:#edf0f2;
  --v48-surface-soft:#d5dce0;
  --v48-surface-active:#c2ccd1;
  --v48-input:#f1f3f4;
  --v48-ink:#1d272d;
  --v48-muted:#5f6d75;
  --v48-faint:#7b888f;
  --v48-border:#9ca9b0;
  --v48-border-strong:#7f8d95;
  --v48-accent:#46535a;
  --v48-accent-hover:#39464c;
  --v48-accent-text:#f6f8f9;
  --v48-danger:#a84343;
  --v48-shadow:0 1px 2px rgba(18,28,34,.08),0 8px 22px rgba(18,28,34,.08);
  --v48-shadow-hover:0 2px 4px rgba(18,28,34,.10),0 13px 28px rgba(18,28,34,.12);
  --v48-header:rgba(226,230,232,.97);
}
html[data-theme="escuro"]{
  color-scheme:dark;
  --v48-page:#0e1418;
  --v48-page-2:#0a0f12;
  --v48-surface:#182126;
  --v48-surface-raised:#1d282e;
  --v48-surface-soft:#202c32;
  --v48-surface-active:#29373e;
  --v48-input:#202b31;
  --v48-ink:#eef3f6;
  --v48-muted:#a9b5bc;
  --v48-faint:#87959d;
  --v48-border:#334149;
  --v48-border-strong:#485861;
  --v48-accent:#cbd6dc;
  --v48-accent-hover:#e1e8ec;
  --v48-accent-text:#11181c;
  --v48-danger:#ef8b8b;
  --v48-shadow:0 1px 2px rgba(0,0,0,.45),0 10px 28px rgba(0,0,0,.24);
  --v48-shadow-hover:0 2px 4px rgba(0,0,0,.50),0 15px 34px rgba(0,0,0,.31);
  --v48-header:rgba(15,21,25,.96);
}

/* Map every legacy color variable to the two-mode system. */
html[data-theme="claro"],html[data-theme="escuro"]{
  --surface:var(--v48-surface);
  --surface-2:var(--v48-surface-raised);
  --paper:var(--v48-page);
  --ink:var(--v48-ink);
  --muted:var(--v48-muted);
  --line:var(--v48-border);
  --green:var(--v48-accent);
  --green-2:var(--v48-accent);
  --green-soft:var(--v48-surface-soft);
  --warm:var(--v48-accent);
  --danger:var(--v48-danger);
  --body-a:var(--v48-page);
  --body-b:var(--v48-page-2);
  --nav-bg:var(--v48-header);
  --nav-bg-2:var(--v48-header);
  --control-bg:var(--v48-input);
  --on-accent:var(--v48-accent-text);
}

html[data-theme="claro"] body,html[data-theme="escuro"] body{
  background:linear-gradient(180deg,var(--v48-page) 0%,var(--v48-page-2) 100%)!important;
  color:var(--v48-ink)!important;
}
html[data-theme="claro"] main,html[data-theme="escuro"] main{color:var(--v48-ink)!important}

/* Header / primary navigation */
html[data-theme="claro"] .topbar,html[data-theme="escuro"] .topbar{
  background:var(--v48-header)!important;
  border-bottom:1px solid var(--v48-border)!important;
  box-shadow:0 3px 14px rgba(0,0,0,.08)!important;
}
html[data-theme="claro"] .brand-logo-frame,html[data-theme="escuro"] .brand-logo-frame,
html[data-theme="claro"] .auth-logo-frame,html[data-theme="escuro"] .auth-logo-frame{
  background:var(--v48-surface-raised)!important;border:1px solid var(--v48-border)!important;box-shadow:none!important;
}
html[data-theme="claro"] .brand-copy h1,html[data-theme="escuro"] .brand-copy h1{color:var(--v48-ink)!important}
html[data-theme="claro"] .brand-copy .eyebrow,html[data-theme="escuro"] .brand-copy .eyebrow,
html[data-theme="claro"] .eyebrow,html[data-theme="escuro"] .eyebrow{color:var(--v48-muted)!important}
html[data-theme="claro"] .topbar .top-nav button,html[data-theme="escuro"] .topbar .top-nav button,
html[data-theme="claro"] .topbar .admin-shortcut,html[data-theme="escuro"] .topbar .admin-shortcut,
html[data-theme="claro"] .topbar .top-signout,html[data-theme="escuro"] .topbar .top-signout,
html[data-theme="claro"] .theme-toggle-btn,html[data-theme="escuro"] .theme-toggle-btn{
  background:var(--v48-surface-raised)!important;color:var(--v48-ink)!important;border:1px solid var(--v48-border)!important;box-shadow:none!important;
}
html[data-theme="claro"] .topbar .top-nav button:hover,html[data-theme="escuro"] .topbar .top-nav button:hover,
html[data-theme="claro"] .topbar .admin-shortcut:hover,html[data-theme="escuro"] .topbar .admin-shortcut:hover,
html[data-theme="claro"] .topbar .top-signout:hover,html[data-theme="escuro"] .topbar .top-signout:hover,
html[data-theme="claro"] .theme-toggle-btn:hover,html[data-theme="escuro"] .theme-toggle-btn:hover{
  background:var(--v48-surface-soft)!important;color:var(--v48-ink)!important;border-color:var(--v48-border-strong)!important;
}
html[data-theme="claro"] .topbar .top-nav button.active,html[data-theme="escuro"] .topbar .top-nav button.active{
  background:var(--v48-surface-active)!important;color:var(--v48-ink)!important;border-color:var(--v48-border-strong)!important;
}
html[data-theme="claro"] .topbar .admin-shortcut.active,html[data-theme="escuro"] .topbar .admin-shortcut.active{
  background:var(--v48-accent)!important;color:var(--v48-accent-text)!important;border-color:var(--v48-accent)!important;
}

/* Every main window must read as a window. */
html[data-theme="claro"] :is(.card,.post,.theme-card,dialog,.chat-panel,.conversation-list,.community-dashboard,.home-hero-panel,.admin-section,.profile),
html[data-theme="escuro"] :is(.card,.post,.theme-card,dialog,.chat-panel,.conversation-list,.community-dashboard,.home-hero-panel,.admin-section,.profile){
  background:var(--v48-surface)!important;color:var(--v48-ink)!important;border:1px solid var(--v48-border)!important;box-shadow:var(--v48-shadow)!important;
}
html[data-theme="claro"] :is(.card,.post,.theme-card,.admin-section,.profile):hover,
html[data-theme="escuro"] :is(.card,.post,.theme-card,.admin-section,.profile):hover{border-color:var(--v48-border-strong)!important}

/* Main navigation cards — explicitly override all legacy white hover rules. */
html[data-theme="claro"] .community-main-menu .quick,html[data-theme="escuro"] .community-main-menu .quick{
  background:var(--v48-surface)!important;color:var(--v48-ink)!important;border:1px solid var(--v48-border)!important;box-shadow:var(--v48-shadow)!important;outline:none!important;
}
html[data-theme="claro"] .community-main-menu .quick:hover,
html[data-theme="claro"] .community-main-menu .quick:focus-visible,
html[data-theme="escuro"] .community-main-menu .quick:hover,
html[data-theme="escuro"] .community-main-menu .quick:focus-visible{
  background:var(--v48-surface-soft)!important;color:var(--v48-ink)!important;border-color:var(--v48-border-strong)!important;box-shadow:var(--v48-shadow-hover)!important;outline:none!important;
}
html[data-theme="claro"] .community-main-menu .quick.filter-active,
html[data-theme="claro"] .community-main-menu .quick[aria-pressed="true"],
html[data-theme="escuro"] .community-main-menu .quick.filter-active,
html[data-theme="escuro"] .community-main-menu .quick[aria-pressed="true"]{
  background:var(--v48-surface-active)!important;color:var(--v48-ink)!important;border-color:var(--v48-border-strong)!important;box-shadow:var(--v48-shadow-hover)!important;
}
html[data-theme="claro"] .community-main-menu .quick b,html[data-theme="escuro"] .community-main-menu .quick b{color:var(--v48-ink)!important}
html[data-theme="claro"] .community-main-menu .quick span,html[data-theme="escuro"] .community-main-menu .quick span{color:var(--v48-muted)!important}
html[data-theme="claro"] .community-main-menu .quick.filter-active::after,
html[data-theme="claro"] .community-main-menu .quick[aria-pressed="true"]::after,
html[data-theme="escuro"] .community-main-menu .quick.filter-active::after,
html[data-theme="escuro"] .community-main-menu .quick[aria-pressed="true"]::after{background:var(--v48-accent)!important}

/* Dashboard metrics */
html[data-theme="claro"] .community-stats,html[data-theme="escuro"] .community-stats{background:transparent!important;border:0!important;gap:10px!important;overflow:visible!important}
html[data-theme="claro"] .community-stat,html[data-theme="escuro"] .community-stat{
  background:var(--v48-surface-raised)!important;color:var(--v48-ink)!important;border:1px solid var(--v48-border)!important;border-radius:11px!important;box-shadow:none!important;
}
html[data-theme="claro"] .community-stat:hover,html[data-theme="escuro"] .community-stat:hover{background:var(--v48-surface-soft)!important;border-color:var(--v48-border-strong)!important}
html[data-theme="claro"] .community-stat.selected,html[data-theme="escuro"] .community-stat.selected{background:var(--v48-surface-active)!important;border-color:var(--v48-border-strong)!important}
html[data-theme="claro"] .community-stat b,html[data-theme="escuro"] .community-stat b,
html[data-theme="claro"] .community-stat.selected b,html[data-theme="escuro"] .community-stat.selected b{color:var(--v48-ink)!important}
html[data-theme="claro"] .community-stat :is(span,small,strong),html[data-theme="escuro"] .community-stat :is(span,small,strong){color:var(--v48-muted)!important}

/* Hero */
html[data-theme="claro"] .home-hero-panel,html[data-theme="escuro"] .home-hero-panel{background:linear-gradient(135deg,var(--v48-surface),var(--v48-surface-raised))!important}
html[data-theme="claro"] .welcome h2,html[data-theme="escuro"] .welcome h2{color:var(--v48-ink)!important}
html[data-theme="claro"] .welcome p,html[data-theme="escuro"] .welcome p,
html[data-theme="claro"] .welcome .hero-note,html[data-theme="escuro"] .welcome .hero-note{color:var(--v48-muted)!important}
html[data-theme="claro"] .welcome .hero-note,html[data-theme="escuro"] .welcome .hero-note{font-weight:700!important}
html[data-theme="claro"] .building-visual,html[data-theme="escuro"] .building-visual{background:var(--v48-surface-soft)!important;border:1px solid var(--v48-border)!important;box-shadow:none!important}
html[data-theme="escuro"] .building-visual img{filter:saturate(.58) brightness(.72) contrast(1.02)!important}
html[data-theme="claro"] .building-visual img{filter:saturate(.72) contrast(.98)!important}

/* Buttons and form controls */
html[data-theme="claro"] :is(.primary,.admin-home-button),html[data-theme="escuro"] :is(.primary,.admin-home-button){background:var(--v48-accent)!important;color:var(--v48-accent-text)!important;border:1px solid var(--v48-accent)!important;box-shadow:none!important}
html[data-theme="claro"] :is(.primary,.admin-home-button):hover,html[data-theme="escuro"] :is(.primary,.admin-home-button):hover{background:var(--v48-accent-hover)!important;border-color:var(--v48-accent-hover)!important}
html[data-theme="claro"] :is(.secondary,.mini-btn),html[data-theme="escuro"] :is(.secondary,.mini-btn){background:var(--v48-surface-raised)!important;color:var(--v48-ink)!important;border:1px solid var(--v48-border)!important}
html[data-theme="claro"] :is(.secondary,.mini-btn):hover,html[data-theme="escuro"] :is(.secondary,.mini-btn):hover{background:var(--v48-surface-soft)!important;border-color:var(--v48-border-strong)!important}
html[data-theme="claro"] :is(.text-btn,.icon-btn),html[data-theme="escuro"] :is(.text-btn,.icon-btn){background:transparent!important;color:var(--v48-ink)!important;border:1px solid transparent!important}
html[data-theme="claro"] :is(.text-btn,.icon-btn):hover,html[data-theme="escuro"] :is(.text-btn,.icon-btn):hover{background:var(--v48-surface-soft)!important;border-color:var(--v48-border)!important}
html[data-theme="claro"] .danger,html[data-theme="escuro"] .danger{background:var(--v48-surface-raised)!important;color:var(--v48-danger)!important;border:1px solid color-mix(in srgb,var(--v48-danger) 36%,var(--v48-border))!important}
html[data-theme="claro"] :is(.form input,.form select,.form textarea,.admin-search,.admin-filters select,#feedSort,.profile input,.message-form input,.group-thread-form textarea),
html[data-theme="escuro"] :is(.form input,.form select,.form textarea,.admin-search,.admin-filters select,#feedSort,.profile input,.message-form input,.group-thread-form textarea){background:var(--v48-input)!important;color:var(--v48-ink)!important;border:1px solid var(--v48-border)!important;box-shadow:none!important}
html[data-theme="claro"] :is(.form input,.form select,.form textarea,.admin-search,.admin-filters select,#feedSort,.profile input,.message-form input,.group-thread-form textarea):focus,
html[data-theme="escuro"] :is(.form input,.form select,.form textarea,.admin-search,.admin-filters select,#feedSort,.profile input,.message-form input,.group-thread-form textarea):focus{border-color:var(--v48-border-strong)!important;box-shadow:0 0 0 3px color-mix(in srgb,var(--v48-accent) 12%,transparent)!important;outline:none!important}
html[data-theme="claro"] fieldset,html[data-theme="escuro"] fieldset{background:var(--v48-surface-raised)!important;color:var(--v48-ink)!important;border:1px solid var(--v48-border)!important;box-shadow:none!important}
html[data-theme="claro"] input[type="checkbox"],html[data-theme="escuro"] input[type="checkbox"]{accent-color:var(--v48-accent)!important}

/* Text hierarchy */
html[data-theme="claro"] :is(.hint,.post-meta,.post-contact,.conversation span,.feed-sort-label,.msg,.meta,.admin-nav-card span,.theme-card p),
html[data-theme="escuro"] :is(.hint,.post-meta,.post-contact,.conversation span,.feed-sort-label,.msg,.meta,.admin-nav-card span,.theme-card p){color:var(--v48-muted)!important}
html[data-theme="claro"] :is(.section-head h2,.section-head h3,.post h4,.admin-nav-card b,.theme-card b),
html[data-theme="escuro"] :is(.section-head h2,.section-head h3,.post h4,.admin-nav-card b,.theme-card b){color:var(--v48-ink)!important}

/* Chips / metrics / messages */
html[data-theme="claro"] :is(.badge,.category-chip,.owner-chip,.admin-role,.status-chip,.metric),
html[data-theme="escuro"] :is(.badge,.category-chip,.owner-chip,.admin-role,.status-chip,.metric){background:var(--v48-surface-soft)!important;color:var(--v48-ink)!important;border:1px solid var(--v48-border)!important;box-shadow:none!important}
html[data-theme="claro"] .conversation,html[data-theme="escuro"] .conversation{background:transparent!important;color:var(--v48-ink)!important;border:1px solid transparent!important}
html[data-theme="claro"] .conversation:hover,html[data-theme="escuro"] .conversation:hover{background:var(--v48-surface-soft)!important;border-color:var(--v48-border)!important}
html[data-theme="claro"] .bubble,html[data-theme="escuro"] .bubble{background:var(--v48-surface-raised)!important;color:var(--v48-ink)!important;border:1px solid var(--v48-border)!important}
html[data-theme="claro"] .bubble.mine,html[data-theme="escuro"] .bubble.mine{background:var(--v48-accent)!important;color:var(--v48-accent-text)!important;border-color:var(--v48-accent)!important}

/* Admin tabs and panels */
html[data-theme="claro"] .admin-nav-card,html[data-theme="escuro"] .admin-nav-card{background:var(--v48-surface)!important;color:var(--v48-ink)!important;border:1px solid var(--v48-border)!important;box-shadow:none!important}
html[data-theme="claro"] .admin-nav-card:hover,html[data-theme="escuro"] .admin-nav-card:hover{background:var(--v48-surface-soft)!important;border-color:var(--v48-border-strong)!important}
html[data-theme="claro"] .admin-nav-card.active,html[data-theme="escuro"] .admin-nav-card.active{background:var(--v48-surface-active)!important;border-color:var(--v48-border-strong)!important}
html[data-theme="claro"] .admin-metric,html[data-theme="escuro"] .admin-metric{background:var(--v48-surface-raised)!important;border:1px solid var(--v48-border)!important;color:var(--v48-ink)!important;box-shadow:none!important}
html[data-theme="claro"] .admin-metric b,html[data-theme="escuro"] .admin-metric b{color:var(--v48-ink)!important}

/* Dialogs / empty states / footer */
html[data-theme="claro"] dialog,html[data-theme="escuro"] dialog{background:var(--v48-surface)!important;color:var(--v48-ink)!important;border:1px solid var(--v48-border-strong)!important;box-shadow:var(--v48-shadow-hover)!important}
html[data-theme="claro"] dialog::backdrop,html[data-theme="escuro"] dialog::backdrop{background:rgba(4,8,11,.52)!important;backdrop-filter:blur(4px)}
html[data-theme="claro"] .empty,html[data-theme="escuro"] .empty{background:var(--v48-surface-raised)!important;color:var(--v48-muted)!important;border:1px dashed var(--v48-border-strong)!important}
html[data-theme="claro"] .app-footer,html[data-theme="escuro"] .app-footer{color:var(--v48-muted)!important}
html[data-theme="claro"] .footer-feedback,html[data-theme="escuro"] .footer-feedback{color:var(--v48-ink)!important}

/* Safety net: legacy dark-theme rules must never introduce white panels. */
html[data-theme="escuro"] :is(.quick,.community-stat,.admin-nav-card,.card,.post,.theme-card,.admin-section,.profile,.home-hero-panel,.community-dashboard,.chat-panel,.conversation-list){color:var(--v48-ink)!important}
html[data-theme="escuro"] :is(.quick,.community-stat,.admin-nav-card,.card,.post,.theme-card,.admin-section,.profile,.home-hero-panel,.community-dashboard,.chat-panel,.conversation-list):hover{color:var(--v48-ink)!important}
html[data-theme="escuro"] a,html[data-theme="escuro"] button{color:inherit}

@media(max-width:780px){
  html[data-theme="claro"] .topbar,html[data-theme="escuro"] .topbar{background:var(--v48-header)!important}
}


/* v49 — Privacidade padrão: switches funcionais e legíveis */
html[data-theme="claro"] .privacy-defaults,
html[data-theme="escuro"] .privacy-defaults{
  margin:4px 0 2px!important;
  padding:14px!important;
  border:1px solid var(--v48-border)!important;
  border-radius:14px!important;
  background:var(--v48-surface-raised)!important;
  box-shadow:none!important;
}
html[data-theme="claro"] .privacy-defaults legend,
html[data-theme="escuro"] .privacy-defaults legend{
  padding:0 7px!important;
  color:var(--v48-ink)!important;
  font-size:13px!important;
  font-weight:800!important;
}
html[data-theme="claro"] .privacy-defaults-intro,
html[data-theme="escuro"] .privacy-defaults-intro{
  margin:0 0 10px!important;
  color:var(--v48-muted)!important;
  font-size:12.5px!important;
  line-height:1.45!important;
}
html[data-theme="claro"] .privacy-toggle,
html[data-theme="escuro"] .privacy-toggle{
  position:relative!important;
  display:grid!important;
  grid-template-columns:minmax(0,1fr) auto!important;
  align-items:center!important;
  gap:16px!important;
  margin:0!important;
  padding:12px 13px!important;
  border:1px solid var(--v48-border)!important;
  border-radius:11px!important;
  background:var(--v48-surface)!important;
  color:var(--v48-ink)!important;
  cursor:pointer!important;
  transition:background .16s ease,border-color .16s ease,box-shadow .16s ease!important;
}
html[data-theme="claro"] .privacy-toggle+ .privacy-toggle,
html[data-theme="escuro"] .privacy-toggle+ .privacy-toggle{margin-top:8px!important}
html[data-theme="claro"] .privacy-toggle:hover,
html[data-theme="escuro"] .privacy-toggle:hover{
  border-color:var(--v48-border-strong)!important;
  box-shadow:0 4px 14px rgba(0,0,0,.06)!important;
}
html[data-theme="claro"] .privacy-toggle.is-on,
html[data-theme="escuro"] .privacy-toggle.is-on{
  background:var(--v48-surface-soft)!important;
  border-color:var(--v48-border-strong)!important;
}
html[data-theme="claro"] .privacy-toggle-copy,
html[data-theme="escuro"] .privacy-toggle-copy{display:grid!important;gap:3px!important;min-width:0!important}
html[data-theme="claro"] .privacy-toggle-copy b,
html[data-theme="escuro"] .privacy-toggle-copy b{color:var(--v48-ink)!important;font-size:13px!important;line-height:1.25!important}
html[data-theme="claro"] .privacy-toggle-copy small,
html[data-theme="escuro"] .privacy-toggle-copy small{color:var(--v48-muted)!important;font-size:11.5px!important;line-height:1.35!important;font-weight:500!important}
html[data-theme="claro"] .privacy-toggle-control,
html[data-theme="escuro"] .privacy-toggle-control{display:flex!important;align-items:center!important;gap:8px!important;min-width:108px!important;justify-content:flex-end!important}
html[data-theme="claro"] .profile .privacy-toggle input[type="checkbox"][data-privacy-default],
html[data-theme="escuro"] .profile .privacy-toggle input[type="checkbox"][data-privacy-default]{
  position:absolute!important;
  opacity:0!important;
  width:1px!important;
  min-width:1px!important;
  height:1px!important;
  min-height:1px!important;
  padding:0!important;
  margin:0!important;
  border:0!important;
  box-shadow:none!important;
  appearance:none!important;
  -webkit-appearance:none!important;
  pointer-events:none!important;
}
html[data-theme="claro"] .privacy-switch,
html[data-theme="escuro"] .privacy-switch{
  position:relative!important;
  width:42px!important;
  min-width:42px!important;
  height:24px!important;
  border-radius:999px!important;
  background:var(--v48-surface-active)!important;
  border:1px solid var(--v48-border-strong)!important;
  box-shadow:inset 0 1px 2px rgba(0,0,0,.08)!important;
  transition:background .16s ease,border-color .16s ease!important;
}
html[data-theme="claro"] .privacy-switch>span,
html[data-theme="escuro"] .privacy-switch>span{
  position:absolute!important;
  top:3px!important;
  left:3px!important;
  width:16px!important;
  height:16px!important;
  border-radius:50%!important;
  background:var(--v48-surface)!important;
  border:1px solid var(--v48-border)!important;
  box-shadow:0 1px 3px rgba(0,0,0,.16)!important;
  transition:transform .16s ease,background .16s ease!important;
}
html[data-theme="claro"] .privacy-toggle input:checked + .privacy-switch,
html[data-theme="escuro"] .privacy-toggle input:checked + .privacy-switch{
  background:var(--v48-accent)!important;
  border-color:var(--v48-accent)!important;
}
html[data-theme="claro"] .privacy-toggle input:checked + .privacy-switch>span,
html[data-theme="escuro"] .privacy-toggle input:checked + .privacy-switch>span{
  transform:translateX(18px)!important;
  background:var(--v48-accent-text)!important;
  border-color:transparent!important;
}
html[data-theme="claro"] .privacy-toggle input:focus-visible + .privacy-switch,
html[data-theme="escuro"] .privacy-toggle input:focus-visible + .privacy-switch{
  outline:3px solid color-mix(in srgb,var(--v48-accent) 24%,transparent)!important;
  outline-offset:2px!important;
}
html[data-theme="claro"] .privacy-state,
html[data-theme="escuro"] .privacy-state{
  width:57px!important;
  text-align:right!important;
  color:var(--v48-muted)!important;
  font-size:10.5px!important;
  font-weight:750!important;
}
html[data-theme="claro"] .privacy-toggle.is-on .privacy-state,
html[data-theme="escuro"] .privacy-toggle.is-on .privacy-state{color:var(--v48-ink)!important}
.privacy-defaults-status,.profile-form-status{min-height:18px!important;margin:9px 0 0!important;font-size:11.5px!important;line-height:1.35!important}
html[data-theme="claro"] :is(.privacy-defaults-status,.profile-form-status),
html[data-theme="escuro"] :is(.privacy-defaults-status,.profile-form-status){color:var(--v48-muted)!important}
html[data-theme="claro"] :is(.privacy-defaults-status,.profile-form-status)[data-state="saved"],
html[data-theme="escuro"] :is(.privacy-defaults-status,.profile-form-status)[data-state="saved"]{color:#4f8062!important}
html[data-theme="claro"] :is(.privacy-defaults-status,.profile-form-status)[data-state="error"],
html[data-theme="escuro"] :is(.privacy-defaults-status,.profile-form-status)[data-state="error"]{color:var(--v48-danger)!important}
@media(max-width:560px){
  html[data-theme="claro"] .privacy-toggle,
  html[data-theme="escuro"] .privacy-toggle{grid-template-columns:1fr!important;gap:9px!important}
  html[data-theme="claro"] .privacy-toggle-control,
  html[data-theme="escuro"] .privacy-toggle-control{justify-content:flex-start!important;min-width:0!important}
  html[data-theme="claro"] .privacy-state,
  html[data-theme="escuro"] .privacy-state{text-align:left!important}
}


/* =========================================================
   v50 — controles de privacidade isolados do CSS de inputs
   ========================================================= */
html[data-theme="claro"] .privacy-defaults,
html[data-theme="escuro"] .privacy-defaults{
  padding:14px 15px 15px!important;
  border:1px solid var(--v48-border)!important;
  border-radius:14px!important;
  background:var(--v48-surface-raised)!important;
  box-shadow:none!important;
}
html[data-theme="claro"] .privacy-defaults legend,
html[data-theme="escuro"] .privacy-defaults legend{
  padding:0 7px!important;
  color:var(--v48-ink)!important;
  font-size:13px!important;
  font-weight:800!important;
}
html[data-theme="claro"] .privacy-defaults-intro,
html[data-theme="escuro"] .privacy-defaults-intro{
  margin:1px 0 11px!important;
  color:var(--v48-muted)!important;
  font-size:12px!important;
  line-height:1.45!important;
}
.privacy-native[hidden]{display:none!important;width:0!important;height:0!important;min-width:0!important;min-height:0!important;padding:0!important;margin:0!important;border:0!important}
.privacy-switch-list{display:grid!important;gap:8px!important}
html[data-theme="claro"] .privacy-choice,
html[data-theme="escuro"] .privacy-choice{
  appearance:none!important;
  -webkit-appearance:none!important;
  width:100%!important;
  min-height:64px!important;
  display:grid!important;
  grid-template-columns:minmax(0,1fr) auto!important;
  align-items:center!important;
  gap:18px!important;
  margin:0!important;
  padding:11px 13px!important;
  border:1px solid var(--v48-border)!important;
  border-radius:11px!important;
  background:var(--v48-surface)!important;
  color:var(--v48-ink)!important;
  text-align:left!important;
  font:inherit!important;
  cursor:pointer!important;
  box-shadow:none!important;
  transform:none!important;
  transition:background .16s ease,border-color .16s ease,box-shadow .16s ease!important;
}
html[data-theme="claro"] .privacy-choice:hover,
html[data-theme="escuro"] .privacy-choice:hover{
  background:var(--v48-surface-soft)!important;
  border-color:var(--v48-border-strong)!important;
  box-shadow:0 4px 14px rgba(0,0,0,.06)!important;
}
html[data-theme="claro"] .privacy-choice:focus-visible,
html[data-theme="escuro"] .privacy-choice:focus-visible{
  outline:3px solid color-mix(in srgb,var(--v48-accent) 24%,transparent)!important;
  outline-offset:2px!important;
}
html[data-theme="claro"] .privacy-choice.is-on,
html[data-theme="escuro"] .privacy-choice.is-on{
  background:var(--v48-surface-soft)!important;
  border-color:var(--v48-border-strong)!important;
}
.privacy-toggle-copy{display:grid!important;gap:3px!important;min-width:0!important}
html[data-theme="claro"] .privacy-toggle-copy b,
html[data-theme="escuro"] .privacy-toggle-copy b{
  color:var(--v48-ink)!important;
  font-size:13px!important;
  line-height:1.25!important;
  font-weight:800!important;
}
html[data-theme="claro"] .privacy-toggle-copy small,
html[data-theme="escuro"] .privacy-toggle-copy small{
  color:var(--v48-muted)!important;
  font-size:11.5px!important;
  line-height:1.35!important;
  font-weight:500!important;
}
.privacy-choice-control{display:flex!important;align-items:center!important;justify-content:flex-end!important;gap:9px!important;min-width:112px!important}
html[data-theme="claro"] .privacy-track,
html[data-theme="escuro"] .privacy-track{
  position:relative!important;
  display:block!important;
  width:46px!important;
  min-width:46px!important;
  height:26px!important;
  min-height:26px!important;
  border-radius:999px!important;
  background:var(--v48-surface-active)!important;
  border:1px solid var(--v48-border-strong)!important;
  box-shadow:inset 0 1px 2px rgba(0,0,0,.10)!important;
  transition:background .16s ease,border-color .16s ease!important;
}
html[data-theme="claro"] .privacy-knob,
html[data-theme="escuro"] .privacy-knob{
  position:absolute!important;
  display:block!important;
  top:3px!important;
  left:3px!important;
  width:18px!important;
  height:18px!important;
  border-radius:50%!important;
  background:var(--v48-surface)!important;
  border:1px solid var(--v48-border)!important;
  box-shadow:0 1px 3px rgba(0,0,0,.18)!important;
  transform:translateX(0)!important;
  transition:transform .16s ease,background .16s ease!important;
}
html[data-theme="claro"] .privacy-choice.is-on .privacy-track,
html[data-theme="escuro"] .privacy-choice.is-on .privacy-track{
  background:var(--v48-accent)!important;
  border-color:var(--v48-accent)!important;
}
html[data-theme="claro"] .privacy-choice.is-on .privacy-knob,
html[data-theme="escuro"] .privacy-choice.is-on .privacy-knob{
  transform:translateX(20px)!important;
  background:var(--v48-accent-text)!important;
  border-color:transparent!important;
}
html[data-theme="claro"] .privacy-state,
html[data-theme="escuro"] .privacy-state{
  width:58px!important;
  color:var(--v48-muted)!important;
  font-size:10.5px!important;
  line-height:1!important;
  font-weight:800!important;
  text-align:right!important;
}
html[data-theme="claro"] .privacy-choice.is-on .privacy-state,
html[data-theme="escuro"] .privacy-choice.is-on .privacy-state{color:var(--v48-ink)!important}
@media(max-width:560px){
  html[data-theme="claro"] .privacy-choice,
  html[data-theme="escuro"] .privacy-choice{gap:12px!important;padding:11px!important}
  .privacy-choice-control{min-width:104px!important;gap:7px!important}
  html[data-theme="claro"] .privacy-toggle-copy small,
  html[data-theme="escuro"] .privacy-toggle-copy small{font-size:11px!important}
}


/* =========================================================
   v51 — auth shell hardening: nenhum recurso privado sem sessão
   ========================================================= */
#topNav.hidden,
#adminNav.hidden,
#signoutBtn.hidden,
#appFooter.hidden{display:none!important}

html:not([data-auth-state="authenticated"]) #topNav,
html:not([data-auth-state="authenticated"]) #adminNav,
html:not([data-auth-state="authenticated"]) #signoutBtn,
html:not([data-auth-state="authenticated"]) #appFooter{display:none!important;visibility:hidden!important;pointer-events:none!important}

html:not([data-auth-state="authenticated"]) #homeView,
html:not([data-auth-state="authenticated"]) #messagesView,
html:not([data-auth-state="authenticated"]) #profileView,
html:not([data-auth-state="authenticated"]) #adminView{display:none!important;visibility:hidden!important;pointer-events:none!important}

html[data-auth-state="guest"] #authView,
html[data-auth-state="checking"] #authView{visibility:visible!important}

html[data-auth-state="guest"] .topbar #topNav,
html[data-auth-state="checking"] .topbar #topNav{display:none!important}


/* =========================================================
   v52 — switches de publicação, aceite seguro e alertas reversíveis
   ========================================================= */
/* Inputs nativos auxiliares nunca podem herdar altura/largura dos campos de formulário. */
.form .privacy-native[hidden],
.profile .privacy-native[hidden]{
  display:none!important;width:0!important;min-width:0!important;height:0!important;min-height:0!important;
  margin:0!important;padding:0!important;border:0!important;box-shadow:none!important;appearance:none!important;-webkit-appearance:none!important;
}
/* Switches de nova publicação e edição usam exatamente o mesmo componente visual do perfil. */
.post-privacy-defaults{padding:14px 15px 15px!important;border-radius:14px!important}
.post-privacy-defaults .privacy-defaults-intro{margin:1px 0 11px!important}
.post-privacy-choice{min-height:58px!important}
.post-rules-block{
  display:grid!important;gap:10px!important;padding:13px 14px!important;
  border:1px solid var(--v48-border-strong)!important;border-radius:14px!important;
  background:var(--v48-surface-raised)!important;
}
.post-rules-head{display:flex!important;justify-content:space-between!important;align-items:flex-start!important;gap:10px!important;flex-wrap:wrap!important}
.post-rules-head b{color:var(--v48-ink)!important}
.post-rules-head span{font-size:12px!important;color:var(--v48-muted)!important}
.post-rules-scroll{
  height:126px!important;overflow-y:auto!important;overscroll-behavior:contain!important;scrollbar-gutter:stable!important;
  padding:12px!important;border:1px solid var(--v48-border)!important;border-radius:11px!important;
  background:var(--v48-input)!important;color:var(--v48-ink)!important;line-height:1.48!important;font-size:13px!important;
}
.post-rules-scroll:focus{border-color:var(--v48-accent)!important;outline:2px solid color-mix(in srgb,var(--v48-accent) 45%,transparent)!important;outline-offset:2px!important}
.post-rules-scroll p{margin:0 0 12px!important;color:var(--v48-ink)!important}
.post-rules-scroll .post-rules-end{margin-bottom:0!important;padding-top:3px!important}
.post-rules-check{display:flex!important;grid-template-columns:auto 1fr!important;align-items:flex-start!important;font-weight:650!important;line-height:1.4!important}
.form .post-rules-check input[type="checkbox"]{
  appearance:none!important;-webkit-appearance:none!important;
  width:21px!important;min-width:21px!important;max-width:21px!important;
  height:21px!important;min-height:21px!important;max-height:21px!important;
  margin:1px 9px 0 0!important;padding:0!important;border:2px solid var(--v48-border-strong)!important;
  border-radius:6px!important;background:var(--v48-input)!important;display:grid!important;place-content:center!important;
  box-shadow:none!important;flex:0 0 21px!important;
}
.form .post-rules-check input[type="checkbox"]::before{
  content:""!important;width:11px!important;height:11px!important;transform:scale(0)!important;
  box-shadow:inset 1em 1em var(--v48-accent-text)!important;
  clip-path:polygon(14% 44%,0 59%,40% 100%,100% 20%,84% 6%,39% 70%)!important;
}
.form .post-rules-check input[type="checkbox"]:checked{background:var(--v48-accent)!important;border-color:var(--v48-accent)!important}
.form .post-rules-check input[type="checkbox"]:checked::before{transform:scale(1)!important}
.form .post-rules-check input[type="checkbox"]:disabled{opacity:.55!important;cursor:not-allowed!important}
#submitPostBtn:disabled{opacity:.58!important;cursor:not-allowed!important;pointer-events:none!important;box-shadow:none!important}
/* Checkbox legal: override completo do CSS genérico de .form input. */
.form .signup-legal-check input[type="checkbox"],
.form .legal-check input[type="checkbox"]{
  appearance:none!important;-webkit-appearance:none!important;
  width:21px!important;min-width:21px!important;max-width:21px!important;
  height:21px!important;min-height:21px!important;max-height:21px!important;
  margin:1px 9px 0 0!important;padding:0!important;
  border:2px solid var(--v48-border-strong)!important;border-radius:6px!important;
  background:var(--v48-input)!important;display:grid!important;place-content:center!important;
  box-shadow:none!important;flex:0 0 21px!important;
}
.form .signup-legal-check input[type="checkbox"]::before,
.form .legal-check input[type="checkbox"]::before{
  content:""!important;width:11px!important;height:11px!important;transform:scale(0)!important;
  box-shadow:inset 1em 1em var(--v48-accent-text)!important;
  clip-path:polygon(14% 44%,0 59%,40% 100%,100% 20%,84% 6%,39% 70%)!important;
}
.form .signup-legal-check input[type="checkbox"]:checked,
.form .legal-check input[type="checkbox"]:checked{background:var(--v48-accent)!important;border-color:var(--v48-accent)!important}
.form .signup-legal-check input[type="checkbox"]:checked::before,
.form .legal-check input[type="checkbox"]:checked::before{transform:scale(1)!important}
.form .signup-legal-check input[type="checkbox"]:disabled,
.form .legal-check input[type="checkbox"]:disabled{opacity:.55!important;cursor:not-allowed!important}
/* O botão de cadastro deve parecer e permanecer indisponível até TODOS os requisitos estarem satisfeitos. */
#submitSignupBtn:disabled,
#submitSignupBtn[aria-disabled="true"]{
  background:var(--v48-surface-active)!important;color:var(--v48-muted)!important;
  border-color:var(--v48-border)!important;opacity:.62!important;cursor:not-allowed!important;
  pointer-events:none!important;box-shadow:none!important;
}
#submitSignupBtn:not(:disabled){opacity:1!important;cursor:pointer!important}
/* Alertas: switch compacto, reversível no nível do portal. */
.notification-choice{
  appearance:none!important;-webkit-appearance:none!important;
  display:flex!important;align-items:center!important;gap:10px!important;
  min-height:38px!important;padding:5px 8px 5px 10px!important;
  border:1px solid var(--v48-border)!important;border-radius:10px!important;
  background:var(--v48-surface-raised)!important;color:var(--v48-ink)!important;
  font:inherit!important;cursor:pointer!important;box-shadow:none!important;
}
.notification-choice:hover{background:var(--v48-surface-soft)!important;border-color:var(--v48-border-strong)!important}
.notification-choice.is-on{background:var(--v48-surface-active)!important;border-color:var(--v48-border-strong)!important}
.notification-choice.is-blocked{opacity:.78!important}
.notification-choice-copy{display:grid!important;gap:1px!important;text-align:left!important;line-height:1.05!important}
.notification-choice-copy b{font-size:11.5px!important;color:var(--v48-ink)!important}
.notification-choice-copy small{font-size:9.5px!important;color:var(--v48-muted)!important;font-weight:600!important;white-space:nowrap!important}
.notification-choice .privacy-choice-control{min-width:auto!important;gap:7px!important}
.notification-choice .privacy-track{width:40px!important;min-width:40px!important;height:22px!important;min-height:22px!important}
.notification-choice .privacy-knob{width:16px!important;height:16px!important;top:2px!important;left:2px!important}
.notification-choice.is-on .privacy-track{background:var(--v48-accent)!important;border-color:var(--v48-accent)!important}
.notification-choice.is-on .privacy-knob{transform:translateX(18px)!important;background:var(--v48-accent-text)!important;border-color:transparent!important}
.notification-choice .privacy-state{width:55px!important}
@media(max-width:620px){
  .messages-head-actions{width:100%!important;justify-content:space-between!important}
  .notification-choice-copy small{white-space:normal!important}
  .notification-choice .privacy-state{display:none!important}
}


/* =========================================================
   v53 — aceite legal robusto + mensagens internas + som opcional
   ========================================================= */
#messagesUnreadBadge.nav-unread-badge{
  display:inline-grid!important;
  place-items:center!important;
  min-width:19px!important;
  height:19px!important;
  padding:0 5px!important;
  margin-left:2px!important;
  border-radius:999px!important;
  background:#d93434!important;
  color:#fff!important;
  border:2px solid var(--v48-surface-raised)!important;
  box-shadow:0 2px 6px rgba(217,52,52,.28)!important;
  font-size:10.5px!important;
  font-weight:900!important;
  line-height:1!important;
}
#messagesUnreadBadge.hidden{display:none!important}
.messages-nav-btn.has-unread{border-color:color-mix(in srgb,#d93434 42%,var(--v48-border))!important}
.notification-choice{min-width:190px!important}
.notification-choice.is-on .privacy-track{background:var(--v48-accent)!important;border-color:var(--v48-accent)!important}
.notification-choice.is-on .privacy-knob{transform:translateX(18px)!important;background:var(--v48-accent-text)!important;border-color:transparent!important}
.legal-end-marker{height:2px!important;width:100%!important;display:block!important;pointer-events:none!important}
.signup-legal-check input[type="checkbox"]:disabled{opacity:.55!important;cursor:not-allowed!important}
.signup-legal-check input[type="checkbox"]:not(:disabled){cursor:pointer!important}
@media(max-width:640px){.notification-choice{min-width:0!important}.messages-head-actions{flex-wrap:wrap!important}}


/* v54 — Mensagens na dashboard */
html[data-theme="claro"] .community-stats,
html[data-theme="escuro"] .community-stats{grid-template-columns:repeat(6,minmax(0,1fr))!important}
html[data-theme="claro"] .dashboard-messages-stat,
html[data-theme="escuro"] .dashboard-messages-stat{position:relative!important}
html[data-theme="claro"] .dashboard-messages-stat.has-unread,
html[data-theme="escuro"] .dashboard-messages-stat.has-unread{border-color:#c64d55!important;box-shadow:0 0 0 1px color-mix(in srgb,#c64d55 28%,transparent)!important}
html[data-theme="claro"] .dashboard-messages-stat.has-unread::after,
html[data-theme="escuro"] .dashboard-messages-stat.has-unread::after{content:"";position:absolute;top:10px;right:10px;width:8px;height:8px;border-radius:999px;background:#d64545;box-shadow:0 0 0 3px color-mix(in srgb,#d64545 14%,transparent)}
html[data-theme="claro"] .dashboard-messages-stat.has-unread b,
html[data-theme="escuro"] .dashboard-messages-stat.has-unread b{color:#c53f48!important}
@media(max-width:1040px){html[data-theme="claro"] .community-stats,html[data-theme="escuro"] .community-stats{grid-template-columns:repeat(3,minmax(0,1fr))!important}}
@media(max-width:780px){html[data-theme="claro"] .community-stats,html[data-theme="escuro"] .community-stats{grid-template-columns:repeat(2,minmax(0,1fr))!important}}
@media(max-width:520px){html[data-theme="claro"] .community-stats,html[data-theme="escuro"] .community-stats{grid-template-columns:1fr!important}}


/* =========================================================
   v55 — revisão de UX, acessibilidade e hardening visual
   ========================================================= */
.ui-message-error{color:#a43d3d!important}
.ui-message-ok{color:#2f6a4e!important}
html[data-theme="escuro"] .ui-message-error{color:#ff9b9b!important}
html[data-theme="escuro"] .ui-message-ok{color:#8fd0a9!important}

/* Aceite legal usa o mesmo padrão de switch do portal e não depende mais de checkbox clicável. */
.legal-native[hidden]{display:none!important;width:0!important;height:0!important;min-width:0!important;min-height:0!important;margin:0!important;padding:0!important;border:0!important}
html[data-theme="claro"] .legal-accept-choice,
html[data-theme="escuro"] .legal-accept-choice{
  appearance:none!important;-webkit-appearance:none!important;width:100%!important;
  display:grid!important;grid-template-columns:minmax(0,1fr) auto!important;align-items:center!important;gap:16px!important;
  padding:11px 12px!important;margin:0!important;border:1px solid var(--v48-border)!important;border-radius:11px!important;
  background:var(--v48-surface)!important;color:var(--v48-ink)!important;text-align:left!important;font:inherit!important;cursor:pointer!important;
  box-shadow:none!important;transition:background .15s ease,border-color .15s ease,box-shadow .15s ease!important;
}
html[data-theme="claro"] .legal-accept-choice:hover,
html[data-theme="escuro"] .legal-accept-choice:hover{background:var(--v48-surface-soft)!important;border-color:var(--v48-border-strong)!important}
html[data-theme="claro"] .legal-accept-choice:focus-visible,
html[data-theme="escuro"] .legal-accept-choice:focus-visible{outline:3px solid color-mix(in srgb,var(--v48-accent) 24%,transparent)!important;outline-offset:2px!important}
.legal-accept-copy{display:grid!important;gap:3px!important;min-width:0!important}
.legal-accept-copy b{font-size:12.5px!important;line-height:1.35!important;color:var(--v48-ink)!important}
.legal-accept-copy small{font-size:11px!important;line-height:1.35!important;color:var(--v48-muted)!important;font-weight:500!important}
.legal-accept-control{display:flex!important;align-items:center!important;justify-content:flex-end!important;gap:8px!important;min-width:116px!important}
.legal-accept-choice:not(.is-ready) .privacy-track{opacity:.55!important}
.legal-accept-choice:not(.is-ready) .privacy-state{color:var(--v48-faint)!important}
.legal-accept-choice.is-on{background:var(--v48-surface-soft)!important;border-color:var(--v48-border-strong)!important}
.legal-accept-choice.is-on .privacy-track{background:var(--v48-accent)!important;border-color:var(--v48-accent)!important}
.legal-accept-choice.is-on .privacy-knob{transform:translateX(20px)!important;background:var(--v48-accent-text)!important;border-color:transparent!important}
.legal-accept-choice.is-on .privacy-state{color:var(--v48-ink)!important}

/* O texto explicativo de privacidade fica dentro do bloco, separado do último switch. */
#postInteractionHint,#editInteractionHint{
  position:static!important;display:block!important;margin:11px 1px 0!important;padding:10px 2px 0!important;
  border-top:1px solid var(--v48-border)!important;line-height:1.45!important;min-height:0!important;overflow:visible!important;
}
.post-privacy-defaults{padding-bottom:14px!important;overflow:visible!important}
.post-privacy-defaults .privacy-switch-list{margin-bottom:0!important}

/* Consistência de formulários e diálogos. */
dialog .form{min-width:0!important}
dialog .form>fieldset,dialog .form>section{min-width:0!important}
.signup-legal-block{overflow:visible!important}
.signup-legal-scroll{overscroll-behavior:contain!important}
#signupLegalStatus{line-height:1.35!important}
#submitSignupBtn:disabled{filter:none!important}

@media(max-width:560px){
  html[data-theme="claro"] .legal-accept-choice,
  html[data-theme="escuro"] .legal-accept-choice{grid-template-columns:1fr!important;gap:9px!important}
  .legal-accept-control{justify-content:flex-start!important;min-width:0!important}
}


/* =========================================================
   v56 — mobile: leitura dos anúncios + instalação PWA
   ========================================================= */
.footer-actions{display:flex;align-items:center;gap:10px;flex-wrap:wrap}
.install-app-btn{
  display:none;
  min-height:34px;padding:7px 11px;border-radius:9px;
  border:1px solid var(--v48-border);background:var(--v48-surface-raised);color:var(--v48-ink);
  font:inherit;font-size:12px;font-weight:800;cursor:pointer;
}
.install-app-btn:hover{background:var(--v48-surface-soft);border-color:var(--v48-border-strong)}
.install-app-dialog-content{max-width:440px!important}
#installAppDialog .hint{margin:0!important;line-height:1.55!important;font-size:13px!important}

/* Título e descrição precisam ocupar linhas independentes em qualquer card. */
.post>h4{display:block!important;position:static!important;clear:both!important;overflow-wrap:anywhere!important}
.post>p{display:block!important;position:static!important;clear:both!important;overflow-wrap:anywhere!important;white-space:normal!important}

@media(max-width:780px){
  .post{overflow:visible!important}
  .post>h4{font-size:16px!important;line-height:1.35!important;margin:9px 0 10px!important;padding:0!important;min-height:0!important}
  .post>p{font-size:13px!important;line-height:1.55!important;margin:0 0 12px!important;padding:0!important;min-height:0!important}
  .post .badge,.post .category-chip,.post .owner-chip{vertical-align:middle!important;margin-bottom:2px!important}
  .post .price{display:inline-block!important;vertical-align:middle!important;margin:2px 0!important}
  .app-footer{gap:12px!important}
  .footer-actions{width:100%!important}
  .install-app-btn:not(.hidden){display:inline-flex!important;align-items:center!important;justify-content:center!important}
}
@media(min-width:781px){.install-app-btn{display:none!important}}


/* v57 — botão Início no mobile */
.mobile-home-nav-btn{display:none!important}
@media(max-width:780px){.mobile-home-nav-btn{display:inline-flex!important;align-items:center!important;justify-content:center!important}}

/* =========================================================
   v58 — navegação mobile com aparência de aplicativo
   ========================================================= */
@media(max-width:780px){
  html[data-theme="claro"] .topbar,
  html[data-theme="escuro"] .topbar{
    padding-top:env(safe-area-inset-top)!important;
    backdrop-filter:blur(18px)!important;
    -webkit-backdrop-filter:blur(18px)!important;
  }
  .topbar-shell{
    width:100%!important;
    max-width:none!important;
    min-height:0!important;
    padding:8px 12px 9px!important;
    display:grid!important;
    grid-template-columns:minmax(0,1fr) auto auto!important;
    grid-template-areas:"brand admin signout" "nav nav nav"!important;
    align-items:center!important;
    gap:8px 7px!important;
  }
  .brand-home-button{
    grid-area:brand!important;
    min-width:0!important;
    width:auto!important;
    margin:0!important;
    gap:9px!important;
    justify-self:start!important;
  }
  .brand-logo-frame{
    width:43px!important;
    height:43px!important;
    min-width:43px!important;
    border-radius:12px!important;
    overflow:hidden!important;
  }
  .brand-logo-frame img{
    width:100%!important;
    height:100%!important;
    object-fit:cover!important;
  }
  .brand-copy{min-width:0!important;line-height:1.1!important}
  .brand-copy .eyebrow{font-size:8.5px!important;letter-spacing:.16em!important;white-space:nowrap!important}
  .brand-copy h1{
    margin:3px 0 0!important;
    font-size:14px!important;
    line-height:1.14!important;
    white-space:nowrap!important;
    overflow:hidden!important;
    text-overflow:ellipsis!important;
    max-width:190px!important;
  }
  .admin-shortcut{grid-area:admin!important;justify-self:end!important}
  .top-signout{grid-area:signout!important;justify-self:end!important}
  .topbar .admin-shortcut,.topbar .top-signout{
    min-height:34px!important;
    padding:7px 9px!important;
    border-radius:10px!important;
    font-size:11px!important;
    line-height:1!important;
  }
  .top-nav{
    grid-area:nav!important;
    width:100%!important;
    min-width:0!important;
    margin:0!important;
    padding:6px 0 0!important;
    display:grid!important;
    grid-template-columns:repeat(4,minmax(0,1fr))!important;
    gap:6px!important;
    overflow:visible!important;
    border-top:1px solid var(--v48-border)!important;
  }
  .topbar .top-nav button{
    width:100%!important;
    min-width:0!important;
    min-height:42px!important;
    padding:7px 5px!important;
    border-radius:11px!important;
    display:flex!important;
    align-items:center!important;
    justify-content:center!important;
    gap:5px!important;
    text-align:center!important;
    font-size:11.5px!important;
    font-weight:800!important;
    line-height:1.15!important;
    white-space:nowrap!important;
    overflow:visible!important;
  }
  html[data-theme="claro"] .topbar .top-nav button,
  html[data-theme="escuro"] .topbar .top-nav button{
    background:var(--v48-surface-raised)!important;
    border:1px solid var(--v48-border)!important;
    color:var(--v48-ink)!important;
    box-shadow:none!important;
  }
  html[data-theme="claro"] .topbar .top-nav button.active,
  html[data-theme="escuro"] .topbar .top-nav button.active{
    background:var(--v48-surface-active)!important;
    border-color:var(--v48-border-strong)!important;
    box-shadow:inset 0 0 0 1px color-mix(in srgb,var(--v48-border-strong) 32%,transparent)!important;
  }
  .messages-nav-btn{position:relative!important}
  #messagesUnreadBadge.nav-unread-badge{
    min-width:18px!important;
    height:18px!important;
    padding:0 5px!important;
    font-size:10px!important;
    border-width:1px!important;
  }
  main{padding-top:16px!important}
}
@media(max-width:420px){
  .topbar-shell{padding-left:9px!important;padding-right:9px!important;gap:7px 5px!important}
  .brand-logo-frame{width:39px!important;height:39px!important;min-width:39px!important}
  .brand-copy h1{font-size:13px!important;max-width:150px!important}
  .brand-copy .eyebrow{font-size:8px!important}
  .topbar .admin-shortcut,.topbar .top-signout{padding:6px 7px!important;font-size:10.5px!important;min-height:32px!important}
  .topbar .top-nav button{min-height:40px!important;padding:6px 3px!important;font-size:10.8px!important}
}

/* v59 — Preferência de notificação de novas mensagens por e-mail */
html[data-theme="claro"] .profile-notifications,
html[data-theme="escuro"] .profile-notifications{
  margin:4px 0 2px!important;
  padding:14px!important;
  border:1px solid var(--v48-border)!important;
  border-radius:14px!important;
  background:var(--v48-surface-raised)!important;
  box-shadow:none!important;
}
html[data-theme="claro"] .profile-notifications legend,
html[data-theme="escuro"] .profile-notifications legend{
  padding:0 7px!important;
  color:var(--v48-ink)!important;
  font-size:13px!important;
  font-weight:800!important;
}
.profile-notification-choice{width:100%!important;text-align:left!important}
.profile-notification-choice:disabled{opacity:.68!important;cursor:wait!important}


/* =========================================================
   v65 — auditoria responsiva e correções de robustez visual
   ========================================================= */
.admin-label-mobile{display:none}

/* Diálogos: nenhum formulário pode expandir além da janela. */
dialog,
dialog .form,
dialog .form > *,
dialog .section-head,
dialog fieldset,
dialog section,
dialog label,
dialog input,
dialog select,
dialog textarea{
  min-width:0!important;
  max-width:100%!important;
}
dialog .form{width:100%!important}
dialog input:not([type="checkbox"]):not([type="radio"]),
dialog select,
dialog textarea{width:100%!important}
dialog input[type="file"]{width:100%!important;max-width:100%!important;overflow:hidden!important}
dialog h1,dialog h2,dialog h3,dialog p,dialog label,dialog legend,dialog code{overflow-wrap:anywhere!important;word-break:normal!important}
.mfa-secret{max-width:100%!important;white-space:normal!important;word-break:break-all!important;overflow-wrap:anywhere!important}
.mfa-qr-wrap,.mfa-qr{max-width:100%!important}

@media(max-width:520px){
  dialog{
    width:calc(100vw - 16px)!important;
    max-width:calc(100vw - 16px)!important;
    margin:auto!important;
    padding:14px!important;
    border-radius:14px!important;
    overflow-x:hidden!important;
  }
  dialog .form{gap:10px!important}
  dialog .section-head{gap:8px!important;align-items:flex-start!important}
  dialog .section-head h2{font-size:22px!important;line-height:1.15!important;margin:0!important}
  #postDialog .privacy-choice,
  #editPostDialog .privacy-choice{grid-template-columns:minmax(0,1fr) auto!important;gap:8px!important;padding:10px!important}
  #postDialog .privacy-choice-control,
  #editPostDialog .privacy-choice-control{min-width:100px!important}
}

/* Cabeçalho mobile: administração compacta sem colidir com a marca. */
@media(max-width:520px){
  .admin-label-full{display:none!important}
  .admin-label-mobile{display:inline!important}
  #adminNav{max-width:58px!important;white-space:nowrap!important}
}
@media(max-width:360px){
  .brand-copy h1{max-width:132px!important}
  .brand-home-button{gap:7px!important}
  .topbar .admin-shortcut,.topbar .top-signout{padding:6px!important}
}

/* =========================================================
   V67 — menu hambúrguer, dashboard fixo, senhas e skeletons
   ========================================================= */
.topbar-shell{position:relative!important}
.hamburger-menu-btn{
  margin-left:auto!important;width:46px!important;height:42px!important;padding:9px 10px!important;
  display:grid!important;align-content:center!important;gap:5px!important;
  border:1px solid var(--v48-border-strong)!important;border-radius:12px!important;
  background:var(--v48-surface-raised)!important;color:var(--v48-ink)!important;cursor:pointer!important;
}
.hamburger-menu-btn.hidden{display:none!important}
.hamburger-menu-btn span{display:block!important;width:24px!important;height:2px!important;margin:auto!important;border-radius:2px!important;background:currentColor!important;transition:transform .18s ease,opacity .18s ease!important}
.hamburger-menu-btn.is-open span:nth-child(1){transform:translateY(7px) rotate(45deg)!important}
.hamburger-menu-btn.is-open span:nth-child(2){opacity:0!important}
.hamburger-menu-btn.is-open span:nth-child(3){transform:translateY(-7px) rotate(-45deg)!important}
.hamburger-panel{
  position:absolute!important;z-index:30!important;right:24px!important;top:calc(100% - 4px)!important;
  width:min(330px,calc(100vw - 24px))!important;padding:10px!important;
  display:grid!important;gap:7px!important;border:1px solid var(--v48-border-strong)!important;
  border-radius:16px!important;background:var(--v48-surface)!important;box-shadow:var(--v48-shadow-hover)!important;
}
.hamburger-panel.hidden{display:none!important}
.hamburger-panel .top-nav{display:grid!important;width:100%!important;margin:0!important;padding:0!important;gap:5px!important;overflow:visible!important}
.hamburger-panel .top-nav{grid-area:auto!important;grid-template-columns:1fr!important;order:0!important}
.hamburger-panel .top-nav.hidden{display:none!important}
.hamburger-panel .top-nav button,.hamburger-panel .admin-shortcut,.hamburger-panel .top-signout{
  width:100%!important;min-height:44px!important;margin:0!important;padding:10px 12px!important;
  display:flex!important;align-items:center!important;justify-content:space-between!important;text-align:left!important;
  border:0!important;border-radius:11px!important;background:transparent!important;color:var(--v48-ink)!important;font-size:13px!important;font-weight:750!important;
}
.hamburger-panel :is(.top-nav button,.admin-shortcut,.top-signout):hover,
.hamburger-panel :is(.top-nav button,.admin-shortcut,.top-signout):focus-visible{background:var(--v48-surface-soft)!important}
.hamburger-panel .top-nav button.active,.hamburger-panel .admin-shortcut.active{background:var(--v48-surface-active)!important}
.hamburger-panel .admin-shortcut.hidden,.hamburger-panel .top-signout.hidden{display:none!important}
.hamburger-panel .admin-shortcut,.hamburger-panel .top-signout{grid-area:auto!important;grid-column:auto!important;justify-self:stretch!important;max-width:none!important;order:0!important}
.admin-label-mobile{display:none!important}

.community-main-menu{grid-template-columns:repeat(4,minmax(0,1fr))!important;position:sticky!important;top:92px!important;z-index:5!important;padding:8px!important;margin:14px 0 22px!important;border:1px solid var(--v48-border)!important;border-radius:16px!important;background:color-mix(in srgb,var(--v48-surface) 94%,transparent)!important;backdrop-filter:blur(12px)!important}

.password-requirements{margin-top:-4px!important;padding:11px 12px!important;border:1px solid var(--v48-border)!important;border-radius:12px!important;background:var(--v48-surface-soft)!important;color:var(--v48-muted)!important;font-size:12px!important;line-height:1.45!important}
.password-requirements b{display:block!important;margin-bottom:5px!important;color:var(--v48-ink)!important;font-size:12.5px!important}
.password-requirements ul{display:grid!important;gap:3px!important;margin:0 0 5px!important;padding:0!important;list-style:none!important}
.password-requirements li::before{content:'○'!important;display:inline-block!important;width:18px!important;color:var(--v48-muted)!important}
.password-requirements li.is-valid{color:var(--v48-accent)!important}
.password-requirements li.is-valid::before{content:'✓'!important;font-weight:900!important;color:var(--v48-accent)!important}
.password-requirements small{color:var(--v48-muted)!important}

@keyframes bless-skeleton{0%{background-position:200% 0}100%{background-position:-200% 0}}
.skeleton-list{display:grid!important;gap:12px!important;width:100%!important}
.skeleton-item{padding:17px!important;border:1px solid var(--v48-border)!important;border-radius:16px!important;background:var(--v48-surface-raised)!important;overflow:hidden!important}
.skeleton-item span,.skeleton-item i,.community-stats.is-loading :is(b,small,strong){
  display:block!important;color:transparent!important;border-radius:8px!important;
  background:linear-gradient(100deg,var(--v48-surface-soft) 25%,var(--v48-surface-active) 45%,var(--v48-surface-soft) 65%)!important;
  background-size:200% 100%!important;animation:bless-skeleton 1.25s ease-in-out infinite!important;
}
.skeleton-post i{width:92px!important;height:22px!important;margin-bottom:15px!important}
.skeleton-post span{height:13px!important;margin-top:10px!important}.skeleton-post span:nth-of-type(1){width:72%!important;height:20px!important}.skeleton-post span:nth-of-type(3){width:48%!important}
.skeleton-conversation span{width:58%!important;height:18px!important;margin-bottom:11px!important}.skeleton-conversation i{width:82%!important;height:12px!important;margin-top:8px!important}.skeleton-conversation i:last-child{width:38%!important}
.skeleton-metric-list{grid-template-columns:repeat(3,minmax(0,1fr))!important}.skeleton-metric i{height:12px!important;width:70%!important}.skeleton-metric span{height:28px!important;width:42%!important;margin:14px 0!important}.skeleton-metric i:last-child{width:50%!important}
.community-stats.is-loading :is(b,small,strong){min-height:18px!important;min-width:36px!important}.community-stats.is-loading small{width:76%!important}.community-stats.is-loading{pointer-events:none!important}
.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}

@media(max-width:780px){
  .topbar-shell{display:flex!important;padding:8px 12px 9px!important;gap:10px!important}
  .brand-home-button{grid-area:auto!important}
  .hamburger-menu-btn{flex:0 0 46px!important}
  .hamburger-panel{right:12px!important;top:calc(100% - 2px)!important}
  .community-main-menu{top:74px!important;grid-template-columns:repeat(2,minmax(0,1fr))!important}
  .skeleton-metric-list{grid-template-columns:repeat(2,minmax(0,1fr))!important}
}
@media(max-width:420px){
  .community-main-menu{grid-template-columns:1fr!important}
  .skeleton-metric-list{grid-template-columns:1fr!important}
}

/* Cabeçalho da área de mensagens: empilha ações em telas estreitas. */
@media(max-width:640px){
  #messagesView>.section-head{
    display:grid!important;
    grid-template-columns:1fr!important;
    align-items:stretch!important;
    gap:8px!important;
  }
  #messagesView>.section-head h2{margin:0!important}
  .messages-head-actions{
    width:100%!important;
    display:grid!important;
    grid-template-columns:minmax(0,1fr) auto!important;
    gap:8px!important;
    align-items:stretch!important;
  }
  .messages-head-actions .notification-choice{width:100%!important;min-width:0!important}
  #refreshMessagesBtn{min-height:40px!important;align-self:stretch!important}
}
@media(max-width:340px){
  .messages-head-actions{grid-template-columns:1fr!important}
  #refreshMessagesBtn{width:100%!important}
}

/* v65.1 — refinamento final após inspeção visual em 320 px */
.admin-shortcut::before{content:none!important;display:none!important}
@media(max-width:360px){
  #postDialog .privacy-choice,
  #editPostDialog .privacy-choice,
  #profileView .privacy-choice{
    grid-template-columns:1fr!important;
    gap:8px!important;
  }
  #postDialog .privacy-choice-control,
  #editPostDialog .privacy-choice-control,
  #profileView .privacy-choice-control{
    justify-content:flex-start!important;
    min-width:0!important;
  }
  .messages-head-actions{grid-template-columns:1fr!important}
  #refreshMessagesBtn{width:100%!important}
}

/* V65 — agrupamento de configurações com os controles existentes */
.settings-tabs{display:flex;gap:10px;margin-bottom:16px}
.settings-tabs [role="tab"]{flex:1;min-width:0}
#profileView [role="tabpanel"][hidden]{display:none!important}
.settings-delete-account{margin-top:20px}
#settingsAdjustmentsPanel .profile-notifications{margin-top:0!important}
#settingsAdjustmentsPanel #messageSoundToggleBtn{margin-top:12px}

/* V79 — apresentação dos painéis de conta e ajustes */
#messagesView [role="tabpanel"][hidden]{display:none!important}
.activity-unread-badge{display:inline-flex;align-items:center;justify-content:center;min-width:20px;height:20px;padding:0 5px;border-radius:999px;background:#c43636!important;color:#fff!important;font-size:11px;line-height:1;vertical-align:middle}
.activity-unread-badge.hidden{display:none!important}
.top-nav button[data-view="messagesView"]{white-space:normal!important;line-height:1.2!important}
#chatPanel{scroll-margin-top:16px}

/* V65: narrow modal, flexible CAPTCHA and submit always reachable. */
#signupDialog{box-sizing:border-box;width:min(620px,calc(100vw - 16px));max-height:calc(100dvh - 24px);overflow-y:auto;overscroll-behavior:contain}
#signupForm{min-width:0;max-width:none}
#signupForm>label,#signupForm input{min-width:0;max-width:100%;box-sizing:border-box}
#signupForm>.section-head{position:sticky;top:-1px;z-index:2;background:var(--surface);padding:8px 0}
#signupTurnstile{width:100%;min-width:0;max-width:100%}
#signupTurnstile iframe{max-width:100%}
#submitSignupBtn{position:sticky;bottom:0;z-index:2;min-height:48px;box-shadow:0 -6px 16px var(--surface)}
#signupMsg{overflow-wrap:anywhere}
@media(max-width:360px){
 #signupDialog{padding:12px!important}
 #signupForm{gap:12px}
 #signupLegalScroll{height:160px}
 #signupForm input{font-size:16px}
 .messages-head-actions{grid-template-columns:1fr!important}
 #refreshMessagesBtn{width:100%!important}
}

/* =========================================================
   V79 — menu lateral retrátil, marca central e início fixo
   ========================================================= */
.topbar-shell{
  display:grid!important;
  grid-template-columns:minmax(150px,1fr) auto minmax(150px,1fr)!important;
  align-items:center!important;
  gap:10px!important;
}
.topbar-menu-slot{
  grid-column:1!important;
  justify-self:start!important;
  display:flex!important;
  align-items:center!important;
  min-width:0!important;
}
.topbar-right-actions{
  grid-column:3!important;
  justify-self:end!important;
  display:flex!important;
  align-items:center!important;
  justify-content:flex-end!important;
  gap:8px!important;
  min-width:0!important;
}
#menuToggleBtn{margin:0!important}
#homeBrandBtn{
  grid-column:2!important;
  justify-self:center!important;
  width:max-content!important;
  max-width:100%!important;
  margin:0!important;
  text-align:left!important;
}
.hamburger-panel{
  left:24px!important;
  right:auto!important;
  display:grid!important;
  visibility:visible!important;
  opacity:1!important;
  transform:translateX(0)!important;
  transform-origin:top left!important;
  transition:opacity .18s ease,transform .18s ease,visibility 0s!important;
}
.hamburger-panel.hidden{
  display:grid!important;
  visibility:hidden!important;
  opacity:0!important;
  pointer-events:none!important;
  transform:translateX(calc(-100% - 24px))!important;
  transition:opacity .18s ease,transform .18s ease,visibility 0s linear .18s!important;
}
.home-hero-panel{margin:0 0 18px!important}
.community-dashboard{margin-top:0!important}
.community-main-menu{scroll-margin-top:calc(92px + env(safe-area-inset-top))!important}

@media(max-width:780px){
  .topbar-shell{
    display:grid!important;
    grid-template-columns:42px minmax(0,1fr) auto!important;
    padding:8px 12px 9px!important;
    gap:8px!important;
  }
  #homeBrandBtn{grid-area:auto!important;grid-column:2!important;justify-self:center!important}
  .topbar-menu-slot{grid-column:1!important;justify-self:start!important}
  .topbar-right-actions{grid-column:3!important;justify-self:end!important;gap:6px!important}
  #menuToggleBtn{flex:none!important}
  .hamburger-panel{left:12px!important;right:auto!important;top:calc(100% - 2px)!important}
}

@media(max-width:430px){
  #homeBrandBtn{gap:6px!important}
  #homeBrandBtn .brand-logo-frame{flex:0 0 40px!important;width:40px!important;height:40px!important}
  #homeBrandBtn .brand-copy h1{max-width:156px!important;font-size:12px!important;line-height:1.12!important}
  #homeBrandBtn .brand-copy .eyebrow{font-size:9px!important}
}

@media(max-width:340px){
  .topbar-shell{grid-template-columns:42px minmax(0,1fr) auto!important;padding-inline:8px!important;gap:5px!important}
  #menuToggleBtn{width:42px!important}
  .topbar-right-actions{gap:4px!important}
  .topbar-utility{min-height:34px!important;padding:6px 7px!important;font-size:10px!important;border-radius:10px!important}
  #homeBrandBtn .brand-logo-frame{flex-basis:36px!important;width:36px!important;height:36px!important}
  #homeBrandBtn .brand-copy h1{max-width:130px!important;font-size:11px!important}
}

/* =========================================================
   V79 — Dashboard informativa e navegação consolidada
   ========================================================= */
.topbar-shell{
  display:grid!important;
  grid-template-columns:minmax(230px,1fr) auto minmax(230px,1fr)!important;
  align-items:center!important;
  gap:12px!important;
}
.topbar-menu-slot{
  grid-column:1!important;
  display:flex!important;
  align-items:center!important;
  justify-content:flex-start!important;
  gap:8px!important;
  min-width:0!important;
}
#homeBrandBtn{grid-column:2!important;justify-self:center!important}
.topbar-right-actions{
  grid-column:3!important;
  display:flex!important;
  align-items:center!important;
  justify-content:flex-end!important;
  gap:8px!important;
  min-width:0!important;
}
.topbar-balance{display:none!important}
#menuToggleBtn{flex:0 0 46px!important;margin:0!important}
.topbar-utility{
  min-height:42px!important;
  margin:0!important;
  padding:8px 12px!important;
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;
  border:1px solid var(--v48-border-strong)!important;
  border-radius:12px!important;
  background:var(--v48-surface-raised)!important;
  color:var(--v48-ink)!important;
  font-size:12px!important;
  font-weight:750!important;
  line-height:1!important;
  white-space:nowrap!important;
  cursor:pointer!important;
}
.topbar-utility:hover,.topbar-utility:focus-visible{background:var(--v48-surface-soft)!important}
.topbar-menu-slot>.hidden,.topbar-right-actions>.hidden{display:none!important}
.hamburger-panel{left:24px!important;right:auto!important}
.hamburger-section-label{
  margin:7px 8px 2px!important;
  color:var(--v48-muted)!important;
  font-size:10px!important;
  font-weight:850!important;
  letter-spacing:.15em!important;
}
.hamburger-panel .top-nav button[data-home-section].filter-active,
.hamburger-panel .top-nav button[data-home-section][aria-pressed="true"]{
  background:var(--v48-surface-active)!important;
}
.community-stat{cursor:default!important;transform:none!important}
.community-stat:hover{background:var(--v48-surface-raised)!important;border-color:var(--v48-border)!important;transform:none!important}
#homeFeedPage{scroll-margin-top:calc(92px + env(safe-area-inset-top))!important}

@media(max-width:780px){
  .topbar-shell{
    display:grid!important;
    grid-template-columns:42px minmax(0,1fr) auto!important;
    grid-template-areas:"menu brand actions"!important;
    padding:8px 12px 10px!important;
    gap:8px!important;
  }
  .topbar-menu-slot{grid-area:menu!important;grid-column:auto!important;justify-self:start!important}
  .topbar-right-actions{grid-area:actions!important;grid-column:auto!important;justify-self:end!important}
  #homeBrandBtn{grid-area:brand!important;grid-column:auto!important;justify-self:center!important}
  .topbar-balance{display:none!important}
  .topbar-utility{min-height:38px!important;padding:7px 10px!important;font-size:11px!important}
  #menuToggleBtn{width:42px!important;height:38px!important;flex-basis:42px!important;padding:7px 8px!important}
  .hamburger-panel{left:12px!important;right:auto!important;top:calc(100% - 2px)!important}
  #homeFeedPage{scroll-margin-top:138px!important}
}

@media(max-width:360px){
  .topbar-shell{padding-inline:8px!important}
  .topbar-menu-slot,.topbar-right-actions{gap:6px!important}
  .topbar-utility{padding-inline:8px!important;font-size:10.5px!important}
}

/* V79 — aceite determinístico no fim das regras da publicação. */
#postDialog{
  box-sizing:border-box!important;
  max-height:calc(100dvh - 16px)!important;
  overflow-y:auto!important;
  overscroll-behavior:contain!important;
}
#postDialog #submitPostBtn{
  position:sticky!important;
  bottom:0!important;
  z-index:3!important;
  min-height:48px!important;
  box-shadow:0 -8px 18px var(--v48-surface)!important;
}
.post-rules-scroll{height:154px!important;padding-bottom:12px!important}
.post-rules-accept-btn{
  width:100%!important;
  min-height:46px!important;
  margin:8px 0 0!important;
  padding:11px 13px!important;
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
  gap:8px!important;
  border:1px solid var(--v48-border-strong)!important;
  border-radius:11px!important;
  background:var(--v48-surface-raised)!important;
  color:var(--v48-ink)!important;
  font:inherit!important;
  font-weight:800!important;
  line-height:1.25!important;
  cursor:pointer!important;
}
.post-rules-accept-btn:hover,.post-rules-accept-btn:focus-visible{
  border-color:var(--v48-accent)!important;
  background:var(--v48-surface-soft)!important;
  outline:2px solid color-mix(in srgb,var(--v48-accent) 35%,transparent)!important;
  outline-offset:2px!important;
}
.post-rules-accept-btn span{
  width:22px!important;height:22px!important;flex:0 0 22px!important;
  display:grid!important;place-items:center!important;
  border:2px solid var(--v48-border-strong)!important;border-radius:7px!important;
  color:transparent!important;background:var(--v48-input)!important;
}
.post-rules-accept-btn.is-accepted{
  border-color:var(--v48-accent)!important;
  background:var(--v48-surface-active)!important;
  color:var(--v48-ink)!important;
}
.post-rules-accept-btn.is-accepted span{
  border-color:var(--v48-accent)!important;
  background:var(--v48-accent)!important;
  color:var(--v48-accent-text)!important;
}
.post-rules-scroll.is-accepted{border-color:var(--v48-accent)!important}
#postAcceptRules[hidden]{display:none!important}

@media(max-width:420px){
  .post-rules-scroll{height:170px!important}
  .post-rules-accept-btn{font-size:13px!important;text-align:left!important;justify-content:flex-start!important}
}

/* =========================================================
   V79 — gaveta lateral do menu principal
   ========================================================= */
.topbar-shell{overflow:visible!important}
.hamburger-menu-btn{
  position:relative!important;
  z-index:71!important;
}
.hamburger-panel{
  position:fixed!important;
  left:max(12px,env(safe-area-inset-left))!important;
  right:auto!important;
  top:calc(72px + env(safe-area-inset-top))!important;
  bottom:auto!important;
  width:min(316px,calc(100vw - 24px))!important;
  height:calc(100dvh - 90px - env(safe-area-inset-top))!important;
  min-height:320px!important;
  max-height:calc(100vh - 90px)!important;
  padding:12px!important;
  display:grid!important;
  align-content:start!important;
  gap:8px!important;
  overflow-y:auto!important;
  visibility:visible!important;
  opacity:1!important;
  pointer-events:auto!important;
  transform:translateX(0)!important;
  transform-origin:top left!important;
  transition:transform .22s ease,opacity .18s ease,visibility 0s!important;
  z-index:70!important;
  border-radius:18px!important;
  border:1px solid var(--v48-border-strong)!important;
  background:var(--v48-surface)!important;
  box-shadow:0 18px 44px rgba(0,0,0,.18),var(--v48-shadow-hover)!important;
}
.hamburger-panel.hidden{
  display:grid!important;
  visibility:hidden!important;
  opacity:0!important;
  pointer-events:none!important;
  transform:translateX(calc(-100% - 28px))!important;
  transition:transform .22s ease,opacity .18s ease,visibility 0s linear .22s!important;
}
.hamburger-panel .top-nav{
  display:grid!important;
  grid-template-columns:1fr!important;
  gap:5px!important;
}
.hamburger-panel .top-nav button,
.hamburger-panel .admin-shortcut{
  min-height:46px!important;
  padding:11px 12px!important;
  border-radius:12px!important;
  justify-content:flex-start!important;
  gap:10px!important;
}
.hamburger-panel .top-nav button span:first-child{min-width:0!important}
.hamburger-panel .top-nav button:hover,
.hamburger-panel .top-nav button:focus-visible,
.hamburger-panel .admin-shortcut:hover,
.hamburger-panel .admin-shortcut:focus-visible{
  background:var(--v48-surface-soft)!important;
  outline:none!important;
}
.hamburger-panel .top-nav button.active,
.hamburger-panel .admin-shortcut.active{
  background:var(--v48-surface-active)!important;
}
.hamburger-section-label{
  padding:8px 10px 2px!important;
  margin:0!important;
}
@media(max-width:780px){
  .hamburger-panel{
    top:calc(62px + env(safe-area-inset-top))!important;
    bottom:auto!important;
    height:calc(100dvh - 74px - env(safe-area-inset-top))!important;
    max-height:calc(100vh - 74px)!important;
    left:max(8px,env(safe-area-inset-left))!important;
    width:min(300px,calc(100vw - 16px))!important;
  }
}
@media(max-width:360px){
  .hamburger-panel{
    width:min(286px,calc(100vw - 12px))!important;
    left:max(6px,env(safe-area-inset-left))!important;
    padding:10px!important;
  }
}

/* =========================================================
   V79 — barra lateral retrátil com ícones
   ========================================================= */
html[data-auth-state="authenticated"] main,
html[data-auth-state="authenticated"] #appFooter{
  transition:margin-left .22s ease!important;
}
html[data-auth-state="authenticated"] main{
  margin-left:76px!important;
}
html[data-auth-state="authenticated"].nav-expanded main{
  margin-left:276px!important;
}
html[data-auth-state="authenticated"] #appFooter{
  margin-left:76px!important;
}
html[data-auth-state="authenticated"].nav-expanded #appFooter{
  margin-left:276px!important;
}
html[data-auth-state="guest"] main,
html[data-auth-state="checking"] main,
html[data-auth-state="guest"] #appFooter,
html[data-auth-state="checking"] #appFooter{
  margin-left:auto!important;
}
.topbar{z-index:80!important;overflow:visible!important}
.topbar-shell{overflow:visible!important}
.hamburger-panel{
  position:absolute!important;
  left:0!important;
  top:100%!important;
  bottom:auto!important;
  width:260px!important;
  height:calc(100dvh - 72px)!important;
  min-height:0!important;
  max-height:none!important;
  padding:10px 10px 18px!important;
  display:grid!important;
  grid-template-rows:auto 1fr!important;
  align-content:start!important;
  gap:8px!important;
  overflow-x:hidden!important;
  overflow-y:auto!important;
  visibility:visible!important;
  opacity:1!important;
  pointer-events:auto!important;
  transform:none!important;
  transition:width .22s ease,box-shadow .22s ease,background .22s ease!important;
  z-index:60!important;
  border:0!important;
  border-right:1px solid var(--v48-border)!important;
  border-radius:0!important;
  background:color-mix(in srgb,var(--v48-surface) 94%,transparent)!important;
  box-shadow:8px 0 24px rgba(0,0,0,.08)!important;
  backdrop-filter:blur(16px)!important;
}
.hamburger-panel.hidden{
  display:none!important;
}
.hamburger-panel.is-collapsed{
  width:68px!important;
  padding-inline:8px!important;
  box-shadow:4px 0 16px rgba(0,0,0,.05)!important;
}
.hamburger-panel .top-nav{
  display:grid!important;
  grid-template-columns:1fr!important;
  gap:5px!important;
  width:100%!important;
  min-width:0!important;
}
.hamburger-panel .top-nav.hidden{display:none!important}
.hamburger-panel .top-nav button,
.hamburger-panel .admin-shortcut{
  position:relative!important;
  width:100%!important;
  min-width:0!important;
  min-height:46px!important;
  margin:0!important;
  padding:9px 12px!important;
  display:grid!important;
  grid-template-columns:34px minmax(0,1fr) auto!important;
  align-items:center!important;
  gap:10px!important;
  text-align:left!important;
  border:0!important;
  border-radius:999px!important;
  background:transparent!important;
  color:var(--v48-ink)!important;
  font-size:13px!important;
  font-weight:800!important;
  line-height:1.15!important;
  white-space:nowrap!important;
  box-shadow:none!important;
}
.hamburger-panel.is-collapsed .top-nav button,
.hamburger-panel.is-collapsed .admin-shortcut{
  grid-template-columns:34px!important;
  justify-content:center!important;
  padding:9px 8px!important;
}
.nav-icon{
  width:34px!important;
  height:34px!important;
  display:grid!important;
  place-items:center!important;
  border-radius:999px!important;
  color:var(--v48-muted)!important;
  font-size:21px!important;
  line-height:1!important;
}
.nav-label{
  min-width:0!important;
  overflow:hidden!important;
  text-overflow:ellipsis!important;
}
.hamburger-panel.is-collapsed .nav-label,
.hamburger-panel.is-collapsed .hamburger-section-label{
  width:1px!important;
  height:1px!important;
  overflow:hidden!important;
  opacity:0!important;
  pointer-events:none!important;
}
.hamburger-panel .top-nav button:hover,
.hamburger-panel .top-nav button:focus-visible,
.hamburger-panel .admin-shortcut:hover,
.hamburger-panel .admin-shortcut:focus-visible{
  background:var(--v48-surface-soft)!important;
  outline:none!important;
}
.hamburger-panel .top-nav button.active,
.hamburger-panel .top-nav button.filter-active,
.hamburger-panel .admin-shortcut.active{
  background:var(--v48-surface-active)!important;
}
.hamburger-panel .top-nav button.active .nav-icon,
.hamburger-panel .top-nav button.filter-active .nav-icon,
.hamburger-panel .admin-shortcut.active .nav-icon{
  color:var(--v48-ink)!important;
  background:color-mix(in srgb,var(--v48-accent) 16%,transparent)!important;
}
.hamburger-section-label{
  margin:10px 12px 4px!important;
  padding:0!important;
  color:var(--v48-muted)!important;
  font-size:10px!important;
  font-weight:850!important;
  letter-spacing:.15em!important;
  white-space:nowrap!important;
}
.hamburger-panel.is-collapsed .nav-unread-badge{
  position:absolute!important;
  top:5px!important;
  right:7px!important;
  min-width:10px!important;
  width:10px!important;
  height:10px!important;
  padding:0!important;
  border-radius:999px!important;
  overflow:hidden!important;
  color:transparent!important;
}
.hamburger-panel:not(.is-collapsed) .nav-unread-badge{
  justify-self:end!important;
}
.hamburger-menu-btn{
  z-index:90!important;
}
.hamburger-menu-btn.is-open span:nth-child(1),
.hamburger-menu-btn.is-open span:nth-child(2),
.hamburger-menu-btn.is-open span:nth-child(3){
  transform:none!important;
  opacity:1!important;
}
@media(max-width:780px){
  html[data-auth-state="authenticated"] main,
  html[data-auth-state="authenticated"] #appFooter{
    margin-left:64px!important;
  }
  html[data-auth-state="authenticated"].nav-expanded main,
  html[data-auth-state="authenticated"].nav-expanded #appFooter{
    margin-left:236px!important;
  }
  .hamburger-panel{
    top:100%!important;
    height:calc(100dvh - 62px)!important;
    width:226px!important;
  }
  .hamburger-panel.is-collapsed{
    width:58px!important;
    padding-inline:6px!important;
  }
  .hamburger-panel .top-nav button,
  .hamburger-panel .admin-shortcut{
    min-height:44px!important;
    grid-template-columns:32px minmax(0,1fr) auto!important;
    gap:8px!important;
    padding:8px 10px!important;
    font-size:12px!important;
  }
  .hamburger-panel.is-collapsed .top-nav button,
  .hamburger-panel.is-collapsed .admin-shortcut{
    grid-template-columns:32px!important;
    padding:8px 6px!important;
  }
  .nav-icon{width:32px!important;height:32px!important;font-size:19px!important}
}
@media(max-width:420px){
  html[data-auth-state="authenticated"] main,
  html[data-auth-state="authenticated"] #appFooter{
    margin-left:56px!important;
  }
  html[data-auth-state="authenticated"].nav-expanded main,
  html[data-auth-state="authenticated"].nav-expanded #appFooter{
    margin-left:0!important;
  }
  .hamburger-panel{
    top:100%!important;
    height:calc(100dvh - 58px)!important;
    width:min(236px,78vw)!important;
    box-shadow:12px 0 30px rgba(0,0,0,.18)!important;
  }
  .hamburger-panel.is-collapsed{
    width:54px!important;
    box-shadow:4px 0 14px rgba(0,0,0,.05)!important;
  }
}

/* V79 — ordem final do topo: menu à esquerda, marca central, ações à direita. */
.topbar-shell{
  display:grid!important;
  grid-template-columns:minmax(140px,1fr) auto minmax(140px,1fr)!important;
  align-items:center!important;
  gap:10px!important;
}
.topbar-menu-slot{
  grid-column:1!important;
  justify-self:start!important;
  display:flex!important;
  width:68px!important;
  align-items:center!important;
  justify-content:center!important;
}
#homeBrandBtn{
  grid-column:2!important;
  justify-self:center!important;
  margin:0!important;
}
.topbar-right-actions{
  grid-column:3!important;
  justify-self:end!important;
  display:flex!important;
  align-items:center!important;
  justify-content:flex-end!important;
  gap:8px!important;
}
@media(max-width:780px){
  .topbar-shell{
    grid-template-columns:58px minmax(0,1fr) auto!important;
    gap:8px!important;
  }
  .topbar-menu-slot{width:58px!important}
  #homeBrandBtn{grid-column:2!important}
  .topbar-right-actions{grid-column:3!important;gap:6px!important}
}
@media(max-width:420px){
  .topbar-shell{
    grid-template-columns:54px minmax(0,1fr) auto!important;
    gap:6px!important;
  }
  .topbar-menu-slot{width:54px!important}
  .topbar-utility{padding-inline:8px!important;font-size:10.5px!important}
}

/* =========================================================
   V79 — login sem título duplicado e lateral fixa real
   ========================================================= */
html[data-auth-state="guest"] .topbar,
html[data-auth-state="checking"] .topbar{
  display:none!important;
}
html[data-auth-state="guest"] main,
html[data-auth-state="checking"] main{
  margin-left:auto!important;
  padding-top:24px!important;
}
html[data-auth-state="authenticated"] .topbar{
  display:block!important;
}
html[data-auth-state="authenticated"] .hamburger-panel{
  position:fixed!important;
  left:0!important;
  top:var(--bless-sidebar-top,72px)!important;
  bottom:0!important;
  width:260px!important;
  height:auto!important;
  min-height:0!important;
  max-height:none!important;
  padding:10px 10px 18px!important;
  border:0!important;
  border-right:1px solid var(--v48-border)!important;
  border-radius:0!important;
  background:color-mix(in srgb,var(--v48-surface) 96%,transparent)!important;
  box-shadow:8px 0 24px rgba(0,0,0,.08)!important;
  backdrop-filter:blur(16px)!important;
  overflow-x:hidden!important;
  overflow-y:auto!important;
  z-index:55!important;
  transform:none!important;
  visibility:visible!important;
  opacity:1!important;
  pointer-events:auto!important;
  transition:width .22s ease,box-shadow .22s ease!important;
}
html[data-auth-state="authenticated"] .hamburger-panel.is-collapsed{
  width:68px!important;
  padding-inline:8px!important;
  box-shadow:4px 0 16px rgba(0,0,0,.05)!important;
}
html[data-auth-state="authenticated"] main,
html[data-auth-state="authenticated"] #appFooter{
  margin-left:76px!important;
}
html[data-auth-state="authenticated"].nav-expanded main,
html[data-auth-state="authenticated"].nav-expanded #appFooter{
  margin-left:276px!important;
}
#homeDashboardPage.hidden + #homeFeedPage,
#homeFeedPage:not(.hidden){
  margin-top:0!important;
}
.nav-icon svg{
  width:22px!important;
  height:22px!important;
  display:block!important;
  fill:none!important;
  stroke:currentColor!important;
  stroke-width:1.9!important;
  stroke-linecap:round!important;
  stroke-linejoin:round!important;
}
.hamburger-panel .top-nav button,
.hamburger-panel .admin-shortcut{
  grid-template-columns:34px minmax(0,1fr) auto!important;
}
.hamburger-panel.is-collapsed .top-nav button,
.hamburger-panel.is-collapsed .admin-shortcut{
  grid-template-columns:34px!important;
}
.hamburger-panel.is-collapsed .nav-label,
.hamburger-panel.is-collapsed .hamburger-section-label{
  position:absolute!important;
  width:1px!important;
  height:1px!important;
  overflow:hidden!important;
  opacity:0!important;
}
@media(max-width:780px){
  html[data-auth-state="authenticated"] .hamburger-panel{
    top:var(--bless-sidebar-top,62px)!important;
    width:226px!important;
  }
  html[data-auth-state="authenticated"] .hamburger-panel.is-collapsed{
    width:58px!important;
  }
  html[data-auth-state="authenticated"] main,
  html[data-auth-state="authenticated"] #appFooter{
    margin-left:64px!important;
  }
  html[data-auth-state="authenticated"].nav-expanded main,
  html[data-auth-state="authenticated"].nav-expanded #appFooter{
    margin-left:236px!important;
  }
}
@media(max-width:420px){
  html[data-auth-state="authenticated"] .hamburger-panel{
    top:var(--bless-sidebar-top,58px)!important;
    width:min(236px,78vw)!important;
  }
  html[data-auth-state="authenticated"] .hamburger-panel.is-collapsed{
    width:54px!important;
  }
  html[data-auth-state="authenticated"] main,
  html[data-auth-state="authenticated"] #appFooter{
    margin-left:56px!important;
  }
  html[data-auth-state="authenticated"].nav-expanded main,
  html[data-auth-state="authenticated"].nav-expanded #appFooter{
    margin-left:0!important;
  }
}


/* =========================================================
   V79 — alinhamento final do botão hambúrguer na lateral
   ========================================================= */
html[data-auth-state="authenticated"] .topbar-shell{
  grid-template-columns:minmax(140px,1fr) auto minmax(140px,1fr)!important;
}
html[data-auth-state="authenticated"] .topbar-menu-slot{
  width:0!important;
  min-width:0!important;
  max-width:0!important;
  padding:0!important;
  overflow:visible!important;
}
html[data-auth-state="authenticated"] .hamburger-panel{
  display:flex!important;
  flex-direction:column!important;
  align-items:stretch!important;
  gap:8px!important;
  padding-top:12px!important;
}
html[data-auth-state="authenticated"] .hamburger-panel #menuToggleBtn{
  width:48px!important;
  height:48px!important;
  min-width:48px!important;
  min-height:48px!important;
  flex:0 0 48px!important;
  margin:0 auto 8px!important;
  padding:9px!important;
  display:grid!important;
  place-items:center!important;
  align-self:center!important;
  border-radius:16px!important;
  background:var(--v48-surface-raised)!important;
  border:1px solid var(--v48-border-strong)!important;
  box-shadow:none!important;
}
html[data-auth-state="authenticated"] .hamburger-panel #menuToggleBtn.hidden{display:none!important}
html[data-auth-state="authenticated"] .hamburger-panel.is-collapsed #menuToggleBtn{
  width:46px!important;
  height:46px!important;
  min-width:46px!important;
  min-height:46px!important;
  margin-bottom:10px!important;
  border-radius:15px!important;
}
html[data-auth-state="authenticated"] .hamburger-panel #menuToggleBtn span{
  width:26px!important;
  margin:0!important;
}
html[data-auth-state="authenticated"] .hamburger-panel .top-nav{
  flex:1 1 auto!important;
  display:grid!important;
  grid-template-columns:1fr!important;
  align-content:start!important;
  gap:6px!important;
}
html[data-auth-state="authenticated"] .hamburger-panel.is-collapsed .top-nav button,
html[data-auth-state="authenticated"] .hamburger-panel.is-collapsed .admin-shortcut{
  justify-items:center!important;
}
html[data-auth-state="authenticated"] .hamburger-panel.is-collapsed .nav-icon{
  margin-inline:auto!important;
}

/* V79 — skeleton loading reforçado para dashboard, feed, mensagens e cards. */
.skeleton-list{
  display:grid!important;
  gap:12px!important;
  width:100%!important;
}
.skeleton-card,
.skeleton-post,
.skeleton-conversation,
.skeleton-metric{
  position:relative!important;
  overflow:hidden!important;
  border-radius:18px!important;
  border:1px solid var(--v48-border)!important;
  background:var(--v48-surface-raised)!important;
  min-height:92px!important;
}
.skeleton-post{min-height:168px!important}
.skeleton-conversation{min-height:72px!important}
.skeleton-metric{min-height:96px!important}
.skeleton-card::before,
.skeleton-post::before,
.skeleton-conversation::before,
.skeleton-metric::before,
.community-stats.is-loading .community-stat::before{
  content:""!important;
  position:absolute!important;
  inset:0!important;
  background:linear-gradient(90deg,transparent,rgba(255,255,255,.34),transparent)!important;
  transform:translateX(-100%)!important;
  animation:blessSkeletonSweep 1.2s ease-in-out infinite!important;
}
.skeleton-line{
  display:block!important;
  height:12px!important;
  margin:14px!important;
  border-radius:999px!important;
  background:color-mix(in srgb,var(--v48-muted) 18%,transparent)!important;
}
.skeleton-line.short{width:42%!important}
.skeleton-line.medium{width:66%!important}
.skeleton-line.long{width:86%!important}
.community-stats.is-loading .community-stat{
  position:relative!important;
  overflow:hidden!important;
  min-height:112px!important;
}
.community-stats.is-loading .community-stat :is(span,b,small,strong){
  color:transparent!important;
  border-radius:999px!important;
  background:color-mix(in srgb,var(--v48-muted) 16%,transparent)!important;
  user-select:none!important;
}
.community-stats.is-loading .community-stat b{
  width:58px!important;
  min-height:34px!important;
}
.community-stats.is-loading .community-stat small{
  width:72%!important;
  min-height:12px!important;
}
@keyframes blessSkeletonSweep{
  to{transform:translateX(100%)!important}
}

@media(max-width:780px){
  html[data-auth-state="authenticated"] .topbar-shell{
    grid-template-columns:minmax(70px,1fr) auto minmax(70px,1fr)!important;
  }
  html[data-auth-state="authenticated"] .hamburger-panel{padding-top:10px!important}
  html[data-auth-state="authenticated"] .hamburger-panel #menuToggleBtn{
    width:44px!important;height:44px!important;min-width:44px!important;min-height:44px!important;
    flex-basis:44px!important;margin-bottom:8px!important;
  }
}
@media(max-width:420px){
  html[data-auth-state="authenticated"] .hamburger-panel #menuToggleBtn{
    width:42px!important;height:42px!important;min-width:42px!important;min-height:42px!important;
    flex-basis:42px!important;border-radius:14px!important;
  }
}

/* =========================================================
   V79 — Conta no singular, ajustes responsivos e menu estável
   ========================================================= */
html[data-auth-state="authenticated"] main,
html[data-auth-state="authenticated"] #appFooter{
  box-sizing:border-box!important;
  max-width:100vw!important;
  overflow-x:clip!important;
}
#profileView,
#adjustmentsView{
  width:100%!important;
  max-width:100%!important;
  box-sizing:border-box!important;
}
#settingsAccountPanel,
#settingsAdjustmentsPanel,
#settingsAdjustmentsPanel .card,
#settingsAdjustmentsPanel .profile-notifications{
  width:100%!important;
  max-width:100%!important;
  box-sizing:border-box!important;
  min-width:0!important;
}
#settingsAdjustmentsPanel .card.profile{
  overflow:hidden!important;
  padding:26px 28px!important;
}
#settingsAdjustmentsPanel .profile-notifications{
  display:grid!important;
  gap:14px!important;
  margin:0!important;
  padding:18px!important;
  border-radius:18px!important;
}
#settingsAdjustmentsPanel .privacy-defaults-intro,
#settingsAdjustmentsPanel .profile-notifications > .hint{
  margin:0!important;
  max-width:100%!important;
  overflow-wrap:anywhere!important;
  line-height:1.45!important;
}
#settingsAdjustmentsPanel .profile-notification-choice{
  width:100%!important;
  max-width:100%!important;
  min-width:0!important;
  box-sizing:border-box!important;
  display:grid!important;
  grid-template-columns:minmax(0,1fr) minmax(128px,max-content)!important;
  align-items:center!important;
  gap:16px!important;
  padding:16px 18px!important;
}
#settingsAdjustmentsPanel .privacy-toggle-copy,
#settingsAdjustmentsPanel .privacy-toggle-copy b,
#settingsAdjustmentsPanel .privacy-toggle-copy small{
  min-width:0!important;
  max-width:100%!important;
  overflow-wrap:anywhere!important;
  white-space:normal!important;
}
#settingsAdjustmentsPanel .privacy-choice-control{
  min-width:0!important;
  justify-self:end!important;
  white-space:nowrap!important;
}
.app-footer{
  box-sizing:border-box!important;
  width:min(100%,1220px)!important;
  max-width:calc(100vw - 24px)!important;
  overflow:hidden!important;
}
.app-footer > span{
  min-width:0!important;
  max-width:100%!important;
  overflow-wrap:anywhere!important;
  text-align:right!important;
}

@media(max-width:720px){
  #settingsAdjustmentsPanel .card.profile{padding:18px!important}
  #settingsAdjustmentsPanel .profile-notifications{padding:14px!important}
  #settingsAdjustmentsPanel .profile-notification-choice{
    grid-template-columns:1fr!important;
    justify-items:stretch!important;
    gap:12px!important;
  }
  #settingsAdjustmentsPanel .privacy-choice-control{
    justify-self:start!important;
  }
  .app-footer > span{text-align:left!important}
}

@media(max-width:420px){
  #settingsAdjustmentsPanel .card.profile{padding:14px!important}
  #settingsAdjustmentsPanel .profile-notifications{padding:12px!important;border-radius:16px!important}
  #settingsAdjustmentsPanel .profile-notification-choice{padding:13px!important}
}


/* V79 — rodapé desconta a largura real da lateral e não cria rolagem horizontal. */
html[data-auth-state="authenticated"] #appFooter{
  width:calc(100vw - 100px)!important;
  max-width:calc(100vw - 100px)!important;
  margin-right:12px!important;
  margin-left:76px!important;
}
html[data-auth-state="authenticated"].nav-expanded #appFooter{
  width:calc(100vw - 300px)!important;
  max-width:calc(100vw - 300px)!important;
  margin-left:276px!important;
}
@media(max-width:780px){
  html[data-auth-state="authenticated"] #appFooter{
    width:calc(100vw - 88px)!important;
    max-width:calc(100vw - 88px)!important;
    margin-left:64px!important;
  }
  html[data-auth-state="authenticated"].nav-expanded #appFooter{
    width:calc(100vw - 260px)!important;
    max-width:calc(100vw - 260px)!important;
    margin-left:236px!important;
  }
}
@media(max-width:420px){
  html[data-auth-state="authenticated"] #appFooter{
    width:calc(100vw - 76px)!important;
    max-width:calc(100vw - 76px)!important;
    margin-left:56px!important;
  }
  html[data-auth-state="authenticated"].nav-expanded #appFooter{
    width:calc(100vw - 24px)!important;
    max-width:calc(100vw - 24px)!important;
    margin-left:12px!important;
  }
}
