/* Forja dos Mundos v4.6 — bundle de consolidação de performance.
   Fontes mantidas abaixo na ordem original para preservar a cascata. */

/* ===== origem: pwa-mobile.css ===== */
/* Forja dos Mundos — PWA/mobile */
:root{
  --forge-safe-top:env(safe-area-inset-top,0px);
  --forge-safe-bottom:env(safe-area-inset-bottom,0px);
}
html{-webkit-text-size-adjust:100%;text-size-adjust:100%}
body{padding-bottom:var(--forge-safe-bottom)}
button,a,input,select,textarea{touch-action:manipulation}
button,a{min-height:44px}
img,svg,video,canvas{max-width:100%;height:auto}

/* O instalador é parte do Painel, não existe mais botão flutuante. */
.forge-pwa-install{display:none!important}
.dashboard-install-action[hidden]{display:none!important}
.dashboard-install-action:not([hidden]){display:flex!important}

.forge-offline-badge{
  position:fixed;
  left:50%;
  top:calc(8px + var(--forge-safe-top));
  transform:translateX(-50%);
  z-index:9999;
  display:none;
  padding:8px 12px;
  border-radius:8px;
  background:#110e0c;
  color:#ece6d9;
  border:1px solid rgba(199,154,59,.28);
  font-size:.78rem;
}
.forge-offline-badge.is-visible{display:block}

@media(max-width:760px){
  body{overflow-x:hidden}
  .app-shell,.page,.panel,.modal,.card{max-width:100%}
  input,select,textarea{font-size:16px!important}
  .modal,.dialog,[role="dialog"]{
    max-width:calc(100vw - 20px)!important;
    max-height:calc(100dvh - 24px)!important
  }
  table{
    display:block;
    max-width:100%;
    overflow-x:auto;
    -webkit-overflow-scrolling:touch
  }
  .grid,.cards,.form-grid{grid-template-columns:1fr!important}
}
@media(display-mode:standalone){
  body{padding-top:var(--forge-safe-top)}
  .dashboard-install-action{display:none!important}
}

/* Forja v4.6 — estado offline/atualização */
.forge-offline-badge.is-restored{background:#0f1711;border-color:rgba(112,185,123,.42);color:#e9f5ea}
.forge-pwa-toast{display:flex;align-items:center;gap:.75rem;max-width:min(92vw,520px)}
.forge-pwa-toast__action{min-height:34px!important;padding:.38rem .72rem;border:1px solid rgba(199,154,59,.58);border-radius:7px;background:rgba(199,154,59,.14);color:inherit;font:inherit;font-weight:700;cursor:pointer}
.forge-pwa-toast__action:hover{background:rgba(199,154,59,.24)}
.forge-pwa-toast__action:disabled{opacity:.55;cursor:wait}

/* ===== origem: public-onboarding-policy.css ===== */
.forge-onboarding-hero{display:grid;grid-template-columns:110px 1fr;gap:1.2rem;align-items:center;margin:1rem 0 1.2rem;padding:1.3rem;border:1px solid rgba(122,187,229,.26);border-radius:18px;background:radial-gradient(circle at 10% 30%,rgba(93,164,211,.16),transparent 34%),rgba(255,255,255,.018)}
.forge-onboarding-ciel{width:92px;height:92px;border-radius:24px;display:grid;place-items:center;border:1px solid rgba(115,195,244,.42);background:linear-gradient(145deg,#15324a,#0c1723);box-shadow:0 12px 30px #0006}.forge-onboarding-ciel span{font-size:2.8rem;color:#ccecff;text-shadow:0 0 16px rgba(123,199,243,.7)}
.forge-onboarding-hero h3{margin:.1rem 0 .35rem;font-family:var(--font-display);font-size:1.45rem}.forge-onboarding-hero p{color:var(--parchment-300);line-height:1.65}.forge-onboarding-actions{display:flex;flex-wrap:wrap;gap:.55rem;margin-top:.8rem}
.forge-onboarding-grid,.forge-policy-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:.8rem}.forge-onboarding-grid article,.forge-policy-grid article{min-width:0;padding:1rem;border:1px solid var(--line-soft);border-radius:14px;background:rgba(255,255,255,.018)}.forge-onboarding-grid article>span{display:inline-grid;place-items:center;width:34px;height:34px;border-radius:10px;background:rgba(123,199,243,.1);border:1px solid rgba(123,199,243,.22);color:#a9dcfa;font-weight:800}.forge-onboarding-grid h3,.forge-policy-grid h3{margin:.65rem 0 .35rem;font-family:var(--font-display);font-size:1rem}.forge-onboarding-grid p,.forge-policy-grid p{margin:0 0 .8rem;color:var(--parchment-400);font-size:.83rem;line-height:1.6}
.forge-policy-grid article>span{font-size:1.35rem}.forge-policy-callout,.community-rules-banner{display:flex;align-items:center;justify-content:space-between;gap:1rem;margin-top:1rem;padding:1rem 1.1rem;border:1px solid rgba(199,154,59,.24);border-radius:14px;background:rgba(199,154,59,.055)}.forge-policy-callout h3{margin:0 0 .25rem}.forge-policy-callout p,.community-rules-banner p{margin:0;color:var(--parchment-400)}.forge-policy-callout>div:last-child{display:flex;gap:.5rem;flex-wrap:wrap}.community-rules-banner{margin:0 0 1rem}.community-rules-banner strong{color:var(--gold-300)}
@media(max-width:1000px){.forge-onboarding-grid,.forge-policy-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:620px){.forge-onboarding-hero{grid-template-columns:1fr}.forge-onboarding-ciel{width:70px;height:70px}.forge-onboarding-grid,.forge-policy-grid{grid-template-columns:1fr}.forge-policy-callout,.community-rules-banner{align-items:flex-start;flex-direction:column}}

/* ===== origem: site-hotfix-20260906.css ===== */
/* Forja dos Mundos — hotfix 2026-09-06
   Cabeçalho, login/cadastro, Tags e percepção de carregamento. */

/* ===== Cabeçalho desktop compacto e sem quebra de linha ===== */
@media (min-width: 1451px) {
  .topbar {
    min-height: 72px;
    height: 72px;
    padding-inline: clamp(.75rem, 1.35vw, 1.55rem) !important;
    display: grid !important;
    grid-template-columns: minmax(205px, auto) minmax(0, 1fr) auto !important;
    align-items: center;
    gap: clamp(.5rem, .8vw, 1rem) !important;
  }

  .brand {
    min-width: 205px !important;
    gap: .62rem;
  }

  .brand-crest {
    width: 44px;
    height: 44px;
    flex: 0 0 44px;
  }

  .brand strong {
    font-size: clamp(.84rem, .9vw, 1rem);
    white-space: nowrap;
  }

  .brand small {
    font-size: .7rem;
    white-space: nowrap;
  }

  .desktop-nav {
    min-width: 0;
    display: flex !important;
    justify-content: center;
    align-items: center;
    flex-wrap: nowrap;
    gap: clamp(.02rem, .15vw, .16rem) !important;
    overflow: visible !important;
    white-space: nowrap;
  }

  .desktop-nav a {
    flex: 0 0 auto;
    padding: .62rem clamp(.38rem, .44vw, .64rem) !important;
    font-size: clamp(.72rem, .72vw, .84rem) !important;
    line-height: 1.08;
    white-space: nowrap !important;
  }

  .topbar-actions {
    flex: 0 0 auto;
    gap: .45rem !important;
  }

  #loginButton {
    max-width: 180px;
    min-width: 0;
  }

  #loginButton span {
    max-width: 135px;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
  }
}

/* Quando não há espaço real, usa o menu em vez de esmagar os links. */
@media (min-width: 1021px) and (max-width: 1450px) {
  .topbar {
    min-height: 68px;
    height: 68px;
    padding-inline: .9rem !important;
    display: grid !important;
    grid-template-columns: minmax(0,1fr) auto !important;
  }
  .desktop-nav { display: none !important; }
  .mobile-only { display: inline-grid !important; }
  .brand { min-width: 0 !important; }
  .brand small { display: none !important; }
}

/* ===== Login e cadastro: tudo visível sem precisar diminuir o navegador ===== */
.auth-dialog {
  width: min(860px, calc(100% - 1rem)) !important;
  max-width: 860px !important;
  max-height: min(680px, calc(100dvh - 1rem)) !important;
}

.auth-layout {
  min-height: 0 !important;
  height: min(650px, calc(100dvh - 1rem));
  grid-template-columns: minmax(200px,.52fr) minmax(0,1.48fr) !important;
}

.auth-panel {
  min-height: 0;
  padding: 1rem 1.25rem .75rem !important;
  overflow-y: auto !important;
  overscroll-behavior: contain;
}

.auth-header { padding-right: 2.5rem !important; }
.auth-header .eyebrow { margin-bottom: .2rem !important; font-size: .62rem; }
.auth-header h2 { font-size: 1.55rem !important; line-height: 1.05; }
.auth-header p:last-child { margin: .35rem 0 0 !important; font-size: .82rem; line-height: 1.35 !important; }

.auth-tabs {
  margin: .65rem 0 !important;
  padding: 3px !important;
}

.auth-tab { min-height: 34px !important; font-size: .78rem; }

.auth-form { gap: .55rem !important; }
.auth-form .field { gap: .28rem !important; }
.auth-form .field > span:first-child,
.auth-form label > span:first-child { font-size: .72rem; }

.auth-form input,
.auth-form select {
  min-height: 38px !important;
  padding-top: .52rem !important;
  padding-bottom: .52rem !important;
}

.auth-row { min-height: 30px; font-size: .75rem; }
.auth-form .btn { min-height: 38px !important; padding-block: .55rem !important; }

.form-grid { gap: .55rem !important; }
.register-step { gap: .55rem !important; padding-top: .75rem !important; }

.register-progress {
  margin: 0 0 .15rem !important;
  gap: .55rem !important;
}
.register-progress > span { width: 28px !important; height: 28px !important; font-size: .72rem; }
.register-progress > span small { top: 32px !important; font-size: .56rem !important; }

.role-picker { gap: .4rem !important; }
.role-picker legend { margin-bottom: .05rem !important; font-size: .75rem !important; }
.role-picker label > span {
  min-height: 64px !important;
  padding: .5rem !important;
}
.role-picker strong { font-size: .76rem; }
.role-picker small { font-size: .62rem; line-height: 1.2 !important; }

.password-strength { gap: .2rem !important; }
.password-strength small,
.auth-footnote,
.auth-mode { font-size: .66rem !important; line-height: 1.35 !important; }

.auth-mode { margin-top: .55rem !important; padding-top: .5rem !important; }
.auth-footnote { margin: .3rem 0 0 !important; }
.register-actions { gap: .5rem !important; }

.auth-art-copy h2 { font-size: 1.2rem !important; }
.auth-art-copy p { font-size: .78rem !important; line-height: 1.35 !important; }

@media (max-height: 720px) and (min-width: 761px) {
  .auth-dialog { max-height: calc(100dvh - .5rem) !important; }
  .auth-layout { height: calc(100dvh - .5rem) !important; }
  .auth-art-copy p { display:none; }
  .auth-header p:last-child { display:none; }
  .auth-tabs { margin:.4rem 0 !important; }
  .auth-form { gap:.4rem !important; }
  .register-step { gap:.4rem !important; padding-top:.55rem !important; }
}

@media (max-width: 760px) {
  .auth-dialog {
    width: min(96vw, 560px) !important;
    max-height: 94dvh !important;
  }
  .auth-layout {
    display:block !important;
    height:auto !important;
    min-height:0 !important;
  }
  .auth-art { display:none !important; }
  .auth-panel {
    max-height: 94dvh !important;
    padding: .9rem .85rem .7rem !important;
  }
  .auth-header h2 { font-size:1.35rem !important; }
  .form-grid { grid-template-columns:1fr !important; }
  .role-picker { grid-template-columns:repeat(3,minmax(0,1fr)) !important; }
  .role-picker label > span { min-height:58px !important; }
  .role-picker small { display:none; }
}

/* ===== Tags ===== */
.cpt-footer > span {
  display:flex;
  flex-direction:column;
  gap:.16rem;
}
.cpt-footer > span b { font-weight:600; }
#cptSyncStatus {
  color:#7f96a5;
  font-size:.66rem;
  line-height:1.25;
}
#cptSyncStatus[data-state="ok"] { color:#77c997; }
#cptSyncStatus[data-state="warning"] { color:#e4b465; }
#cptSyncStatus[data-state="local"] { color:#8aa8ba; }

/* ===== Percepção de desempenho ===== */
.page:not(.active) { content-visibility:hidden; }
.page.active { content-visibility:visible; }
img[loading="lazy"] { content-visibility:auto; }

/* O carregamento de módulos usa somente a barra dourada de performance-loader.css. */

/* Evita flash preto durante troca de páginas pesadas. */
.app-shell.is-ready,
main,
.page.active {
  background-color:#090807;
}


/* Usuário que já entrou antes não espera a animação nem vê flash preto. */
.forja-returning-user .arrival {
  display:none !important;
}
.forja-returning-user .app-shell {
  opacity:1 !important;
  visibility:visible !important;
  transition:none !important;
}


.forge-tag-global-alert {
  position:fixed;
  z-index:100500;
  top:max(84px, calc(env(safe-area-inset-top) + 72px));
  right:max(1rem, env(safe-area-inset-right));
  max-width:min(360px, calc(100vw - 2rem));
  padding:.85rem 1rem;
  border:1px solid rgba(108,167,212,.48);
  border-radius:12px;
  background:rgba(10,18,25,.97);
  color:#d8eefb;
  box-shadow:0 18px 50px rgba(0,0,0,.42);
  font:600 .8rem/1.4 Inter,system-ui,sans-serif;
  opacity:0;
  transform:translateY(-10px);
  pointer-events:none;
  transition:opacity .2s ease, transform .2s ease;
}
.forge-tag-global-alert.is-visible {
  opacity:1;
  transform:none;
}


/* =========================================================
   CABEÇALHO FINAL — navegação normal + menu secundário
   Manutenção 2026-09-06
   ========================================================= */
:root{--forja-header-h:72px}

/* Uma única barra global. Não reduzimos a escala nem a fonte do site. */
.topbar{
  min-height:var(--forja-header-h)!important;
  height:var(--forja-header-h)!important;
  width:100%!important;
  display:grid!important;
  grid-template-columns:auto minmax(0,1fr) auto!important;
  align-items:center!important;
  gap:clamp(.55rem,1vw,1rem)!important;
  padding:0 clamp(.75rem,1.15vw,1.3rem)!important;
  overflow:visible!important;
}
.brand{
  min-width:0!important;
  max-width:230px!important;
  flex:0 0 auto!important;
}
.brand strong{font-size:.94rem!important;white-space:nowrap!important}
.brand small{font-size:.68rem!important;white-space:nowrap!important}
.desktop-nav{
  min-width:0!important;
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
  flex-wrap:nowrap!important;
  gap:.05rem!important;
  overflow:visible!important;
  white-space:nowrap!important;
}
.desktop-nav a{
  flex:0 0 auto!important;
  padding:.58rem .58rem!important;
  font-size:.88rem!important;
  line-height:1.05!important;
  white-space:nowrap!important;
}
.topbar-actions{
  min-width:0!important;
  display:flex!important;
  align-items:center!important;
  justify-content:flex-end!important;
  gap:.48rem!important;
  flex:0 0 auto!important;
}

/* Evita os dois ícones de menu concorrentes. Ferramentas continuam acessíveis
   por “Ferramentas e configurações” dentro do menu de navegação. */
#forgeToolsButton{display:none!important}
#menuButton{
  display:inline-grid!important;
  width:44px!important;
  height:44px!important;
  min-width:44px!important;
  place-items:center!important;
  flex:0 0 44px!important;
}
#loginButton{
  min-width:0!important;
  max-width:190px!important;
  min-height:42px!important;
}
#loginButton span{
  max-width:145px!important;
  overflow:hidden!important;
  text-overflow:ellipsis!important;
  white-space:nowrap!important;
}

/* Monitor amplo: mostra toda a navegação normal. */
@media(min-width:1600px){
  .brand{max-width:245px!important}
  .desktop-nav a{padding-inline:.72rem!important}
}

/* Notebook e desktop comum (inclui 1366/1440 em zoom 100%):
   mantém as áreas principais e deixa Painel/Motores/Studio no Menu. */
@media(min-width:1180px) and (max-width:1599px){
  .desktop-nav a[data-route="painel"],
  .desktop-nav a[data-route="motores"],
  .desktop-nav a[data-route="studio"]{display:none!important}
}

/* Notebook estreito: ainda preserva o menu normal essencial. */
@media(min-width:1021px) and (max-width:1179px){
  .brand small{display:none!important}
  .desktop-nav a[data-route="painel"],
  .desktop-nav a[data-route="motores"],
  .desktop-nav a[data-route="studio"],
  .desktop-nav a[data-route="loja"],
  .desktop-nav a{padding-inline:.48rem!important}
  #loginButton{max-width:160px!important}
  #loginButton span{max-width:112px!important}
}

/* Tablet/celular usa apenas o menu lateral. */
@media(max-width:1020px){
  :root{--forja-header-h:68px}
  .topbar{
    grid-template-columns:minmax(0,1fr) auto!important;
    padding-inline:.75rem!important;
  }
  .desktop-nav{display:none!important}
  .brand{max-width:max-content!important}
  .brand small{display:none!important}
}

/* Menu secundário/navegação completa: sempre começa abaixo do cabeçalho. */
.mobile-menu{
  position:fixed!important;
  z-index:96!important;
  top:var(--forja-header-h)!important;
  right:0!important;
  width:min(430px,94vw)!important;
  height:calc(100dvh - var(--forja-header-h))!important;
  max-height:calc(100dvh - var(--forja-header-h))!important;
  padding:.85rem 1rem calc(2rem + env(safe-area-inset-bottom))!important;
  overflow-y:auto!important;
  overflow-x:hidden!important;
  overscroll-behavior:contain!important;
  scrollbar-gutter:stable!important;
  scrollbar-color:#9d6a32 #0a0807!important;
  border-left:1px solid rgba(199,154,59,.28)!important;
  background:linear-gradient(180deg,rgba(11,9,8,.995),rgba(6,5,4,.995))!important;
  box-shadow:-24px 0 70px rgba(0,0,0,.56)!important;
}
.mobile-menu a,
.mobile-menu > button:not(.beta-mobile-diagnostics){
  width:100%!important;
  min-height:50px!important;
  display:flex!important;
  align-items:center!important;
  padding:.78rem .75rem!important;
  margin:0!important;
  border:0!important;
  border-bottom:1px solid rgba(199,154,59,.12)!important;
  background:transparent!important;
  color:#e4dbcb!important;
  font-size:.92rem!important;
  line-height:1.25!important;
  text-align:left!important;
}
.mobile-menu a:hover,
.mobile-menu > button:not(.beta-mobile-diagnostics):hover,
.mobile-menu a:focus-visible,
.mobile-menu > button:not(.beta-mobile-diagnostics):focus-visible{
  background:rgba(199,154,59,.07)!important;
  color:#f0cf88!important;
}
.mobile-menu .menu-section-title{
  margin:.8rem 0 .2rem!important;
  padding:.35rem .75rem!important;
  color:#b88a43!important;
  font-size:.66rem!important;
  font-weight:800!important;
  letter-spacing:.14em!important;
  text-transform:uppercase!important;
}
.mobile-menu .menu-section-title:first-child{margin-top:0!important}
#adminMobileButton:not([hidden]),#forgeToolsMobileButton{display:flex!important}
/* Elementos protegidos continuam fora do layout até autorização positiva. */
.mobile-menu > [hidden],
.mobile-menu #adminMobileButton[hidden],
.mobile-menu #notificationMobileButton[hidden]{display:none!important}

.forge-tools-drawer{overflow:hidden!important}
.forge-tools-scroll{
  overflow-y:auto!important;
  max-height:calc(100dvh - 110px)!important;
  padding-bottom:2rem!important;
}

@media(max-width:720px){
  :root{--forja-header-h:64px}
  .topbar{padding-inline:.6rem!important}
  .brand-crest{width:40px!important;height:40px!important;flex:0 0 40px!important}
  .brand strong{font-size:.8rem!important}
  #soundToggle{display:inline-grid!important}
  #loginButton{width:auto!important;max-width:150px!important;min-height:40px!important}
  #loginButton span{max-width:95px!important}
  #menuButton{width:40px!important;height:40px!important;min-width:40px!important}
}

/* =========================================================
   PERFORMANCE HOTFIX v2 — 2026-09-07
   - Mobile uses a 960px AVIF background for the arrival screen.
   - Hidden dialogs do not participate in paint until opened.
   ========================================================= */
@media (max-width: 900px) {
  .arrival-backdrop {
    background-image:
      linear-gradient(180deg, rgba(0,0,0,.1), rgba(0,0,0,.3)),
      image-set(
        url('assets/images/forja-dos-mundos-cover-960.avif') type('image/avif'),
        url('assets/images/forja-dos-mundos-cover.webp') type('image/webp')
      ) !important;
  }
}

dialog:not([open]) {
  content-visibility: hidden;
}


/* =========================================================
   CABEÇALHO RESPONSIVO — CORREÇÃO 2026-09-10
   Desktop largo: navegação principal visível.
   Larguras menores: um único menu lateral complementar.
   ========================================================= */
:root{--forja-header-h:72px}
.topbar{
  min-height:var(--forja-header-h)!important;
  height:var(--forja-header-h)!important;
  display:grid!important;
  grid-template-columns:auto minmax(0,1fr) auto!important;
  align-items:center!important;
  gap:clamp(.45rem,1vw,1rem)!important;
  padding:0 clamp(.72rem,1.4vw,1.35rem)!important;
  overflow:visible!important;
}
.topbar .brand{min-width:0!important;max-width:210px!important;margin:0!important}
.topbar .brand strong{font-size:.88rem!important;white-space:nowrap!important}
.topbar .brand small{font-size:.64rem!important;white-space:nowrap!important}
.desktop-nav{
  min-width:0!important;
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
  gap:.08rem!important;
  overflow:visible!important;
}
.desktop-nav a{padding:.58rem .5rem!important;font-size:.76rem!important;white-space:nowrap!important}
.topbar-actions{
  min-width:0!important;display:flex!important;align-items:center!important;justify-content:flex-end!important;
  gap:.38rem!important;flex:0 0 auto!important;
}
/* Há somente um menu adicional. Ferramentas técnicas ficam dentro dele. */
.topbar #forgeToolsButton,.topbar #announcementButton,.topbar #eventButton,.topbar #supportButton,.topbar #adminCenterButton{display:none!important}
.topbar #notificationButton:not([hidden]){display:inline-grid!important}
#soundToggle{display:inline-grid!important;width:42px!important;height:42px!important;min-width:42px!important;padding:0!important;place-items:center!important}
#soundToggle::after{display:none!important}
#menuButton{display:inline-grid!important;width:42px!important;height:42px!important;min-width:42px!important;place-items:center!important;flex:0 0 42px!important}
#loginButton{display:inline-flex!important;min-width:0!important;max-width:150px!important;min-height:40px!important;padding-inline:.65rem!important}
#loginButton span{max-width:102px!important;overflow:hidden!important;text-overflow:ellipsis!important;white-space:nowrap!important}
.mobile-menu{top:var(--forja-header-h)!important;height:calc(100dvh - var(--forja-header-h))!important;max-height:calc(100dvh - var(--forja-header-h))!important}

/* Notebook/tablet: preserva a barra, mas usa o único menu quando os links não cabem. */
@media(max-width:1179px){
  .topbar{grid-template-columns:minmax(0,1fr) auto!important}
  .desktop-nav{display:none!important}
  .topbar .brand{max-width:none!important}
}
@media(min-width:1180px) and (max-width:1380px){
  .topbar .brand{max-width:175px!important}
  .topbar .brand small{display:none!important}
  .desktop-nav a{padding:.55rem .38rem!important;font-size:.7rem!important}
  #soundToggle::after{display:none!important}
  #loginButton{max-width:118px!important}
  #loginButton span{max-width:72px!important}
}
@media(max-width:720px){
  :root{--forja-header-h:64px}
  .topbar{padding-inline:.6rem!important;gap:.4rem!important}
  .brand-crest{width:40px!important;height:40px!important;flex:0 0 40px!important}
  .topbar .brand strong{font-size:.8rem!important}
  .topbar .brand small{display:none!important}
  #soundToggle{width:40px!important;height:40px!important;min-width:40px!important;padding:0!important}
  #soundToggle::after{display:none!important}
  #loginButton{max-width:132px!important;min-height:40px!important;padding-inline:.62rem!important}
  #loginButton span{max-width:82px!important}
  #menuButton{width:40px!important;height:40px!important;min-width:40px!important}
}
@media(max-width:460px){
  .topbar .brand strong{font-size:.74rem!important}
  #loginButton{max-width:108px!important;padding-inline:.5rem!important}
  #loginButton span{max-width:62px!important}
}

/* =========================================================
   MENU LATERAL APRIMORADO + ATALHO DE MENSAGENS — 2026-09-07
   ========================================================= */
.mobile-menu{
  padding:.72rem .68rem calc(1rem + env(safe-area-inset-bottom))!important;
  gap:.18rem!important;
}
.mobile-menu a,
.mobile-menu > button:not(.beta-mobile-diagnostics){
  position:relative!important;
  min-height:48px!important;
  display:flex!important;
  align-items:center!important;
  gap:.62rem!important;
  padding:.58rem .66rem!important;
  margin:0 0 .14rem!important;
  border:1px solid rgba(199,154,59,.08)!important;
  border-radius:12px!important;
  background:linear-gradient(180deg,rgba(255,255,255,.03),rgba(255,255,255,.015))!important;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.03)!important;
}
.mobile-menu a::after,
.mobile-menu > button:not(.beta-mobile-diagnostics)::after{
  content:'›';
  margin-left:auto;
  color:rgba(239,207,135,.6);
  font-size:1.1rem;
}
.mobile-menu a:hover,
.mobile-menu > button:not(.beta-mobile-diagnostics):hover,
.mobile-menu a:focus-visible,
.mobile-menu > button:not(.beta-mobile-diagnostics):focus-visible,
.mobile-menu a.active,
.mobile-menu > button.is-active{
  border-color:rgba(219,180,90,.36)!important;
  background:linear-gradient(180deg,rgba(199,154,59,.14),rgba(255,255,255,.04))!important;
  color:#f5ead5!important;
  box-shadow:0 8px 24px rgba(0,0,0,.22), inset 0 1px 0 rgba(255,255,255,.06)!important;
}
.mobile-menu .menu-section-title{
  margin:.95rem 0 .3rem!important;
  padding:.25rem .35rem!important;
}
.mobile-menu .menu-item-icon{
  width:34px;
  height:34px;
  flex:0 0 34px;
  display:grid;
  place-items:center;
  border:1px solid rgba(219,180,90,.24);
  border-radius:12px;
  color:#f0c879;
  background:radial-gradient(circle at 50% 30%, rgba(199,154,59,.14), rgba(255,255,255,.02));
  box-shadow:inset 0 1px 0 rgba(255,255,255,.05);
}
.mobile-menu .menu-item-icon svg{
  width:17px;
  height:17px;
  fill:none;
  stroke:currentColor;
  stroke-width:1.8;
  stroke-linecap:round;
  stroke-linejoin:round;
}
.mobile-menu .menu-item-text{
  flex:1 1 auto;
  min-width:0;
  font-weight:600;
  letter-spacing:.01em;
}
.mobile-menu .notification-mobile-count,
.mobile-menu .announcement-mobile-count,
.mobile-menu .private-message-badge{
  margin-left:auto;
  min-width:24px;
  height:24px;
  padding:0 7px;
  display:grid;
  place-items:center;
  border-radius:999px;
  background:rgba(163,38,33,.26)!important;
  color:#ffd6cd!important;
  font-size:.74rem!important;
  font-weight:800!important;
}
.mobile-menu .notification-mobile-count[hidden],
.mobile-menu .announcement-mobile-count[hidden],
.mobile-menu .private-message-badge[hidden]{display:none!important}

.private-message-fab{
  left:1rem!important;
  right:auto!important;
  bottom:max(1rem, env(safe-area-inset-bottom))!important;
  min-height:48px!important;
  padding:.78rem 1.08rem!important;
  border:1px solid rgba(212,175,55,.45)!important;
  background:linear-gradient(180deg, rgba(46,41,36,.96), rgba(23,20,17,.98))!important;
  color:#f4e3be!important;
  font-weight:700!important;
  letter-spacing:.02em!important;
  box-shadow:0 14px 40px rgba(0,0,0,.38)!important;
}
.private-message-fab:hover{
  border-color:rgba(239,207,135,.72)!important;
  transform:translateY(-1px);
}
.private-message-fab::before{
  content:'✉';
  margin-right:.5rem;
  font-size:1rem;
}

@media(min-width:1021px){
  .mobile-menu{width:min(360px,28vw)!important;min-width:300px!important}
}
@media(max-width:720px){
  .mobile-menu .menu-item-icon{width:36px;height:36px;flex-basis:36px}
  .mobile-menu .menu-item-icon svg{width:18px;height:18px}
  .mobile-menu a,
  .mobile-menu > button:not(.beta-mobile-diagnostics){min-height:46px!important;padding:.54rem .62rem!important}
  .private-message-fab{left:.8rem!important;bottom:calc(4.8rem + env(safe-area-inset-bottom))!important}
}


/* =========================================================
   MENU LATERAL PREMIUM v2 — 2026-09-07
   Organização, identidade e navegação visual.
   ========================================================= */
.forja-side-menu-backdrop{
  position:fixed;
  inset:var(--forja-header-h) 0 0 0;
  z-index:95;
  border:0;
  padding:0;
  background:rgba(0,0,0,.58);
  backdrop-filter:blur(3px);
  opacity:0;
  visibility:hidden;
  pointer-events:none;
  transition:opacity .22s ease,visibility .22s ease;
}
.forja-side-menu-backdrop.is-open{opacity:1;visibility:visible;pointer-events:auto}
.mobile-menu{z-index:96!important;padding-top:.5rem!important;overflow-y:auto!important;overscroll-behavior:contain!important}
.forja-side-menu-brand{
  position:sticky;
  top:-.7rem;
  z-index:3;
  margin:-.1rem -.15rem .45rem;
  padding:.72rem .45rem .9rem;
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:.8rem;
  border-bottom:1px solid rgba(199,154,59,.2);
  background:linear-gradient(180deg,rgba(11,9,8,.998) 72%,rgba(11,9,8,.92));
  backdrop-filter:blur(12px);
}
.forja-side-menu-brand__identity{display:flex;align-items:center;gap:.7rem;min-width:0}
.forja-side-menu-brand__identity img{
  width:48px;height:48px;flex:0 0 48px;border-radius:50%;
  filter:drop-shadow(0 0 12px rgba(199,154,59,.18));
}
.forja-side-menu-brand__identity small{
  display:block;margin-bottom:.18rem;color:#a98247;font-size:.62rem;font-weight:800;letter-spacing:.14em;text-transform:uppercase
}
.forja-side-menu-brand__identity strong{
  display:block;color:#f0e6d4;font-family:var(--font-display);font-size:.94rem;white-space:nowrap;overflow:hidden;text-overflow:ellipsis
}
.forja-side-menu-close{
  width:38px;height:38px;flex:0 0 38px;border:1px solid rgba(199,154,59,.26);border-radius:11px;
  background:rgba(255,255,255,.025);color:#e9cb8d;font-size:1.35rem;cursor:pointer
}
.forja-side-menu-close:hover{border-color:rgba(239,207,135,.58);background:rgba(199,154,59,.09)}
.mobile-menu .menu-section-title{
  display:flex!important;align-items:center!important;gap:.55rem!important;
  margin:.7rem .2rem .24rem!important;padding:.2rem .26rem!important;color:#c89a50!important;font-size:.68rem!important
}
.mobile-menu .menu-section-title::before{
  content:'';width:16px;height:1px;background:linear-gradient(90deg,#c79a3b,transparent)
}
.mobile-menu a,
.mobile-menu > button:not(.beta-mobile-diagnostics):not(.forja-side-menu-close){
  overflow:hidden!important;
  isolation:isolate!important;
}
.mobile-menu a::before,
.mobile-menu > button:not(.beta-mobile-diagnostics):not(.forja-side-menu-close)::before{
  content:'';position:absolute;inset:0 auto 0 0;width:3px;background:var(--menu-accent,#c79a3b);opacity:.18;transition:opacity .2s ease,width .2s ease;z-index:-1
}
.mobile-menu a:hover::before,
.mobile-menu > button:not(.beta-mobile-diagnostics):not(.forja-side-menu-close):hover::before,
.mobile-menu a.active::before{opacity:.7;width:5px}
.mobile-menu [data-menu-key="ciel"]{--menu-accent:#b78cff}
.mobile-menu [data-menu-key="mesas"]{--menu-accent:#d87342}
.mobile-menu [data-menu-key="personagens"],.mobile-menu [data-menu-key="biblioteca"],.mobile-menu [data-menu-key="cartas"]{--menu-accent:#5f9fd0}
.mobile-menu [data-menu-key="atelie"]{--menu-accent:#c77ccf}
.mobile-menu [data-menu-key="loja"]{--menu-accent:#7ea768}
.mobile-menu [data-menu-key="comunidade"]{--menu-accent:#6f7cff}
.mobile-menu [data-menu-key="privateMessageMobileButton"]{--menu-accent:#e0b150}
.mobile-menu [data-menu-key="adminMobileButton"],.mobile-menu [data-menu-key="forgeToolsMobileButton"]{--menu-accent:#d8883c}
.mobile-menu [data-menu-key="politicas"],.mobile-menu [data-menu-key="supportMobileButton"]{--menu-accent:#75a98d}
.mobile-menu [data-menu-key="ciel"] .menu-item-icon{color:#d6b5ff;border-color:rgba(183,140,255,.35);background:rgba(183,140,255,.08)}
.mobile-menu [data-menu-key="mesas"] .menu-item-icon{color:#f0a070;border-color:rgba(216,115,66,.34);background:rgba(216,115,66,.08)}
.mobile-menu [data-menu-key="personagens"] .menu-item-icon,
.mobile-menu [data-menu-key="biblioteca"] .menu-item-icon,
.mobile-menu [data-menu-key="cartas"] .menu-item-icon{color:#9ed1f5;border-color:rgba(95,159,208,.34);background:rgba(95,159,208,.08)}
.mobile-menu [data-menu-key="privateMessageMobileButton"] .menu-item-icon{color:#ffd680;border-color:rgba(224,177,80,.42);background:rgba(224,177,80,.09)}
#privateMessageMobileButton .private-message-badge{margin-left:.2rem!important;margin-right:.2rem!important}

/* Mensagens fica discreto, mas funcional e coerente com a Forja. */
.private-message-fab{
  position:fixed!important;
  z-index:65!important;
  display:inline-flex!important;
  align-items:center!important;
  cursor:pointer!important;
  border-radius:14px!important;
  background:linear-gradient(180deg,rgba(40,31,22,.98),rgba(18,15,12,.99))!important;
  color:#f0d6a1!important;
}
.private-message-fab::before{content:'✉'!important;color:#efc66f!important}
.private-message-fab:focus-visible{outline:3px solid rgba(239,198,111,.42);outline-offset:3px}

@media(max-width:720px){
  .forja-side-menu-brand__identity img{width:42px;height:42px;flex-basis:42px}
  .forja-side-menu-brand__identity strong{font-size:.84rem}
  .forja-side-menu-brand__identity small{font-size:.56rem}
}


/* INTRO REPLAY DEFINITIVO — 2026-09-07
   O modo returning-user acelera visitas seguintes, mas nunca pode bloquear
   o comando manual "Rever entrada". */
html.forja-intro-replay .arrival{
  display:grid!important;
  opacity:1!important;
  visibility:visible!important;
  pointer-events:auto!important;
}
html.forja-intro-replay .app-shell:not(.is-ready){
  opacity:0!important;
  visibility:hidden!important;
}


/* =========================================================
   CABEÇALHO CLEAN + IDENTIDADE — P11 2026-09-10
   Uma única barra: marca | navegação | volume/playlist/conta/notificações/menu.
   ========================================================= */
.topbar{
  grid-template-columns:minmax(205px,auto) minmax(0,1fr) auto!important;
  min-height:72px!important;height:72px!important;
  padding-inline:clamp(.8rem,1.6vw,1.6rem)!important;
  gap:clamp(.55rem,1.1vw,1.15rem)!important;
  flex-wrap:nowrap!important;
}
.topbar .brand{min-width:205px!important;max-width:245px!important;overflow:visible!important}
.topbar .brand-crest{
  width:48px!important;height:48px!important;flex:0 0 48px!important;
  display:grid!important;place-items:center!important;overflow:visible!important;
  border-radius:50%!important;background:#070605!important;
}
.topbar .brand-crest img{
  width:48px!important;height:48px!important;max-width:48px!important;max-height:48px!important;
  aspect-ratio:1/1!important;object-fit:contain!important;object-position:center!important;
  display:block!important;border-radius:50%!important;transform:none!important;
}
.topbar .brand strong{font-size:.94rem!important;line-height:1.15!important}
.topbar .brand small{display:none!important}
.desktop-nav{display:flex!important;flex-wrap:nowrap!important;justify-content:center!important;align-items:center!important;gap:.12rem!important;overflow:hidden!important}
.desktop-nav a{padding:.62rem .55rem!important;font-size:.78rem!important;line-height:1!important;white-space:nowrap!important}
.topbar-actions{display:flex!important;flex-wrap:nowrap!important;align-items:center!important;gap:.42rem!important}
#soundToggle,#notificationButton,#menuButton{width:42px!important;height:42px!important;min-width:42px!important;flex:0 0 42px!important;padding:0!important}
#soundToggle::after{display:none!important}
#headerPlaylistButton{min-height:42px!important}
.topbar #notificationButton[hidden]{display:none!important}
.topbar #notificationButton:not([hidden]){display:inline-grid!important}
#menuButton{display:inline-grid!important}
.topbar #forgeToolsButton,.topbar #announcementButton,.topbar #eventButton,.topbar #supportButton,.topbar #adminCenterButton{display:none!important}
/* O menu lateral é o único menu adicional visível no cabeçalho. */
@media(min-width:1180px) and (max-width:1320px){
  .topbar{grid-template-columns:minmax(170px,auto) minmax(0,1fr) auto!important;gap:.5rem!important;padding-inline:.7rem!important}
  .topbar .brand{min-width:170px!important;max-width:190px!important}
  .topbar .brand-crest,.topbar .brand-crest img{width:42px!important;height:42px!important;max-width:42px!important;max-height:42px!important;flex-basis:42px!important}
  .topbar .brand strong{font-size:.8rem!important}
  .desktop-nav a{padding-inline:.38rem!important;font-size:.7rem!important}
  #headerPlaylistButton span{display:none!important}
  #headerPlaylistButton{width:42px!important;min-width:42px!important;padding:0!important}
  #loginButton{max-width:118px!important}
}
@media(max-width:1179px){
  .topbar{grid-template-columns:minmax(0,1fr) auto!important}
  .desktop-nav{display:none!important}
  .topbar .brand{min-width:0!important;max-width:none!important}
}
@media(max-width:720px){
  .topbar{height:64px!important;min-height:64px!important;padding-inline:.55rem!important;gap:.35rem!important}
  .topbar .brand-crest,.topbar .brand-crest img{width:40px!important;height:40px!important;max-width:40px!important;max-height:40px!important;flex-basis:40px!important}
  .topbar .brand strong{font-size:.78rem!important}
  #headerPlaylistButton{width:40px!important;min-width:40px!important;height:40px!important;min-height:40px!important;padding:0!important}
  #headerPlaylistButton span{display:none!important}
  #soundToggle,#notificationButton,#menuButton{width:40px!important;height:40px!important;min-width:40px!important;flex-basis:40px!important}
  #loginButton{max-width:116px!important;min-height:40px!important}
}
@media(max-width:520px){
  .topbar .brand span:last-child{display:none!important}
  .topbar .brand{flex:0 0 40px!important;width:40px!important}
  #loginButton{max-width:105px!important}
}
@media(max-width:390px){
  #headerPlaylistButton{display:none!important}
  #loginButton{max-width:92px!important;padding-inline:.42rem!important}
}

/* ===== origem: correcoes-mesas-amigos-mobile.css ===== */
/* Correções de formulários, conversas e telas pequenas. */
.forja-form-status{grid-column:1/-1;padding:.7rem .85rem;border:1px solid #c49a4b60;border-radius:10px;background:#c49a4b12;color:#f5dfa8;line-height:1.5;overflow-wrap:anywhere}
.forja-form-status[data-type="error"],.forja-form-status[data-type="warning"]{border-color:#ef818170;background:#bc303018;color:#ffbbbb}
.forja-form-status[hidden]{display:none!important}
.character-folio .runtime-folio-status{position:static;display:inline-flex;margin-top:.5rem;font-size:.75rem}
.dice-shell>.dice-skins{grid-column:1/-1;padding:1.2rem;border:1px solid #c49a4b45;border-radius:18px;background:#100e0a}
.private-message-icon{font-size:1.15rem}
body #privateMessagesOpen::before,body #privateMessagesOpen::after{content:none!important}
#privateMessageDialog[open]{display:flex;flex-direction:column;overflow:hidden}
#privateMessageDialog .private-message-shell{flex:1;min-height:0;height:auto}
#privateMessageDialog>.forja-form-status{margin:.5rem .75rem;flex:none}
.private-message-chat{min-height:0}
.private-message-compose textarea{min-width:0;width:100%;font-size:16px}
.private-message-head strong,.private-friend strong{overflow-wrap:anywhere;min-width:0}
.private-message-log{overscroll-behavior:contain}
.private-bubble{white-space:pre-wrap;overflow-wrap:anywhere}
.private-bubble small{display:block;opacity:.65;font-size:.7rem;margin-top:.35rem}
.private-tabs{display:flex;gap:.35rem;padding:.7rem;position:sticky;top:0;background:#111522;z-index:1}
.private-tabs button[aria-pressed="true"]{outline:1px solid #d6b66a}
#privateFriendsPane{padding:0 .8rem 1rem}
#privateFriendsPane[hidden],#privateMessageThreads[hidden]{display:none!important}
#privateFriendsPane h4{margin:1rem 0 .55rem}
.private-friend{display:flex;flex-direction:column;gap:.6rem;padding:.8rem 0;border-bottom:1px solid #ffffff18}
.private-friend>div{display:flex;gap:.45rem;flex-wrap:wrap;align-items:center}
.private-friend-search{display:grid;gap:.55rem}
.private-friend-search input{min-width:0;width:100%;font-size:16px;padding:.7rem;background:#090b12;color:#f8f0dd;border:1px solid #c49a4b65;border-radius:8px}
.private-friend-help{font-size:.8rem;line-height:1.55;opacity:.8;margin-top:1rem}
#privateMessageTitle{font-size:1rem}
@media(max-width:720px){
  body #privateMessagesOpen.private-message-fab{left:auto!important}
  body #privateMessagesOpen.private-message-fab{width:52px!important;min-width:52px!important;max-width:52px!important;height:52px!important;min-height:52px!important;padding:0!important;border-radius:50%!important;display:flex!important;align-items:center!important;justify-content:center!important;gap:0!important;font-size:0!important;right:max(12px,env(safe-area-inset-right))!important;bottom:calc(76px + env(safe-area-inset-bottom))!important;box-shadow:0 6px 22px #0009!important}
  body #privateMessagesOpen::before,body #privateMessagesOpen::after{content:none!important;display:none!important}
  body #privateMessagesOpen .private-message-label{display:none!important}
  body #privateMessagesOpen .private-message-icon{font-size:24px!important;line-height:1!important}
  body #privateMessagesOpen .private-message-badge{position:absolute;top:-4px;right:-3px;font-size:11px;line-height:1.4;margin:0}
  #privateMessageDialog{margin:0;width:100%;max-width:100%;height:100dvh;max-height:100dvh;border-radius:0}
  #privateMessageDialog .private-message-shell{min-height:0}
  .private-message-compose{padding:.7rem .7rem calc(.7rem + env(safe-area-inset-bottom));align-items:flex-end}
  .private-message-compose button,.private-tabs button{min-height:44px}
  .private-message-head{padding:.7rem}
  .dice-shell{gap:.8rem}
  .dice-shell>.dice-skins{padding:.85rem}
  .dice-result-panel{scroll-margin-top:80px}
}

/* 2026-09-20 — Salão das Mesas por contexto */
.tables-view-tabs{display:flex;gap:.65rem;align-items:center;margin:1.15rem 0 .9rem;padding:.35rem;border:1px solid rgba(199,154,59,.22);border-radius:14px;background:rgba(255,255,255,.025);width:max-content;max-width:100%}
.tables-view-tabs button{appearance:none;border:1px solid transparent;border-radius:10px;background:transparent;color:#c9c0b2;padding:.72rem 1rem;font:700 .82rem Inter,sans-serif;cursor:pointer}
.tables-view-tabs button.is-active{color:#f4d77f;border-color:rgba(199,154,59,.42);background:linear-gradient(180deg,rgba(199,154,59,.16),rgba(199,154,59,.06));box-shadow:inset 0 0 0 1px rgba(255,255,255,.025)}
.tables-view-panel[hidden]{display:none!important}.tables-archived-section{margin-top:1.4rem;padding-top:1rem;border-top:1px dashed rgba(199,154,59,.22)}
.workspace-member__sheet-actions{display:flex;gap:.45rem;align-items:center;justify-content:flex-end;flex-wrap:wrap}.workspace-request .workspace-row__actions{display:flex;gap:.45rem;align-items:center;flex-wrap:wrap;justify-content:flex-end}
.workspace-control-stack .btn-danger{border-color:rgba(198,73,66,.55);color:#ffb0aa;background:rgba(198,73,66,.08)}
@media(max-width:720px){.tables-view-tabs{width:100%;display:grid;grid-template-columns:1fr 1fr}.tables-view-tabs button{width:100%;padding:.72rem .5rem}.workspace-request,.workspace-member{align-items:flex-start}.workspace-request .workspace-row__actions,.workspace-member__sheet-actions{width:100%;justify-content:flex-start;margin-left:0}}

/* ===== origem: community-updates.css ===== */
/* Community, privacy and language UI. Scoped to avoid changing existing tools. */
.forge-language {display:flex;gap:.25rem;align-items:center;flex-wrap:wrap}
.forge-language-menu {position:relative;flex:none;color:#ead7a4}
.forge-language-menu summary {cursor:pointer;list-style:none;font-size:.8rem;border:1px solid #75602e;border-radius:8px;padding:.6rem .4rem;min-height:36px}
.forge-language-menu[open] .forge-language {position:absolute;right:0;top:calc(100% + 8px);width:170px;padding:.5rem;background:#17130d;border:1px solid #75602e;border-radius:10px;z-index:120}
.forge-language button {background:#17130d;color:#ead7a4;border:1px solid #75602e;border-radius:8px;padding:.4rem .55rem;min-height:36px;cursor:pointer}
.forge-language button[aria-pressed="true"] {background:#5e4619;color:#fff;border-color:#dfb64e}
.forge-language button:focus-visible,.forge-community a:focus-visible,.forge-community button:focus-visible {outline:3px solid #e3bb56;outline-offset:3px}
.forge-dialog {width:min(840px,calc(100vw - 24px));max-height:calc(100dvh - 32px);padding:0;border:1px solid #94743a;border-radius:16px;background:#13110f;color:#ece6da}
.forge-dialog::backdrop {background:#000b}
.forge-dialog>header {display:flex;align-items:center;justify-content:space-between;gap:1rem;padding:1rem;border-bottom:1px solid #5e4a29}
.forge-dialog h2 {font-size:1.4rem;margin:0}
.forge-dialog__body {padding:1rem;overflow:auto;max-height:calc(100dvh - 150px)}
.forge-dialog .forge-policy-grid {display:block}
.forge-dialog .forge-policy-grid article {margin:0 0 1rem}
.privacy-link {text-decoration:underline;color:#efd07b;text-underline-offset:3px}
.forge-community {max-width:1240px;margin:auto;padding:2rem 1rem 6rem}
.forge-community__hero {padding:1.5rem;border:1px solid #77602f;border-radius:18px;background:linear-gradient(120deg,#302418,#0b0a09);margin-bottom:1rem}
.forge-community__hero h2 {margin:.3rem 0;font-size:clamp(1.8rem,4vw,3rem)}
.forge-community__tabs,.forge-community__search,.forge-community__actions {display:flex;flex-wrap:wrap;gap:.65rem;align-items:center}
.forge-community__tabs {margin:1.25rem 0}
.forge-community__tabs [aria-pressed="true"] {outline:2px solid #d9b452}
.forge-community__search label {flex:1 1 220px}
.forge-community__search input {width:100%;min-height:46px}
.forge-community__list {display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,350px),1fr));gap:1rem;margin:1rem 0}
.forge-community__person {display:flex;align-items:center;gap:1rem;padding:1rem;border:1px solid #594626;border-radius:14px;background:#171410;min-width:0}
.forge-community__person>div {min-width:0;flex:1}
.forge-community__person strong {overflow-wrap:anywhere;display:block;margin-bottom:.5rem}
.forge-community__avatar {display:grid;place-items:center;flex:none;width:44px;height:44px;border-radius:50%;background:#302714;color:#ecc45d;font-weight:700}
.forge-community__notice {padding:.8rem;border-left:3px solid #c6a04b;background:#282116;overflow-wrap:anywhere}
.forge-community [hidden],.forge-dialog [hidden] {display:none!important}
.ciel-sheet-review {border:1px solid #9871be;border-radius:12px;padding:1rem;margin:1rem 0;background:#1d1426}
.ciel-sheet-review textarea {width:100%;min-height:180px}
.ciel-sheet-review label {display:block;margin:.7rem 0}
.ciel-sheet-actions {display:flex;gap:.6rem;flex-wrap:wrap;margin:1rem 0}
.ciel-sheet-note {font-size:.9rem;line-height:1.5}
.workspace-state-help {margin:.6rem 0;color:#c5bda9;font-size:.9rem;line-height:1.5}
@media(max-width:600px){.forge-community{padding-top:1rem}.forge-community__person{align-items:flex-start}.forge-community__search button{width:100%}.forge-language{gap:.2rem}.forge-language button{padding:.3rem .4rem}.forge-dialog__body{max-height:calc(100dvh - 130px)}}
@media print {.forge-language,.forge-dialog{display:none!important}}

/* Forja v4.6 — Central Social própria */
.social-hub{padding-top:2.25rem}.social-hub__hero{display:flex;align-items:center;justify-content:space-between;gap:1rem;background:radial-gradient(circle at 88% 20%,rgba(70,111,175,.2),transparent 35%),linear-gradient(120deg,#302418,#0b0a09)}.social-hub__hero>div:first-child{max-width:760px}.social-hub__hero-actions{display:flex;gap:.55rem;flex-wrap:wrap;justify-content:flex-end}.social-hub__login{display:flex;align-items:center;justify-content:space-between;gap:1rem;padding:1.1rem 1.2rem;border:1px solid #594626;border-radius:16px;background:#15120f}.social-hub__login p{margin:.25rem 0 0;color:var(--muted)}
.social-hub__metrics{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:.75rem;margin:1rem 0}.social-hub__metrics article{display:flex;align-items:center;gap:.7rem;padding:.9rem;border:1px solid rgba(199,154,59,.2);border-radius:15px;background:linear-gradient(145deg,rgba(255,255,255,.035),rgba(255,255,255,.012))}.social-hub__metrics article>span{width:40px;height:40px;display:grid;place-items:center;border-radius:12px;background:rgba(199,154,59,.08);font-size:1.2rem}.social-hub__metrics small,.social-hub__metrics strong{display:block}.social-hub__metrics small{color:var(--muted);font-size:.72rem}.social-hub__metrics strong{margin-top:.1rem;color:var(--gold-300);font-size:1.15rem}.social-hub__tabs{padding:.5rem;border:1px solid rgba(199,154,59,.14);border-radius:14px;background:rgba(255,255,255,.018)}.social-hub__countline{color:var(--muted);font-size:.82rem}.social-hub__discover{display:grid;gap:.7rem;padding:.85rem;border:1px solid rgba(199,154,59,.14);border-radius:15px;background:rgba(255,255,255,.018)}.social-hub__search{margin:0}.social-hub__filters{display:flex;align-items:center;gap:1rem;flex-wrap:wrap}.social-hub__filters label{display:flex;align-items:center;gap:.45rem;color:var(--muted);font-size:.82rem}.social-hub__filters select{min-width:170px;min-height:38px;padding:.4rem .6rem;border:1px solid #594626;border-radius:9px;background:#100d0a;color:var(--text)}
.social-hub__person{align-items:flex-start;min-height:180px;background:linear-gradient(145deg,#181410,#100e0b)}.social-hub__avatar{width:58px;height:58px;overflow:hidden;border:1px solid rgba(199,154,59,.38);box-shadow:0 0 0 4px rgba(199,154,59,.035)}.social-hub__avatar img{width:100%;height:100%;object-fit:cover}.social-hub__person-copy{min-width:0;flex:1}.social-hub__person-title{display:flex;align-items:center;gap:.5rem;flex-wrap:wrap}.social-hub__person-title strong{margin:0}.social-hub__looking{display:inline-flex;padding:.2rem .45rem;border:1px solid rgba(87,196,130,.32);border-radius:999px;color:#9be6b4;background:rgba(87,196,130,.08);font-size:.66rem;font-weight:800}.social-hub__meta{display:block;margin-top:.15rem;color:#c6b89e}.social-hub__person p{margin:.45rem 0;color:var(--muted);font-size:.82rem;line-height:1.45}.social-hub__chips{display:flex;gap:.35rem;flex-wrap:wrap;margin:.45rem 0}.social-hub__chip{display:inline-flex;padding:.22rem .45rem;border:1px solid rgba(199,154,59,.16);border-radius:999px;background:rgba(199,154,59,.06);color:#d8c59f;font-size:.68rem}.social-hub__actions{margin-top:.65rem}.social-hub__pending{color:#d8ba72;font-size:.75rem;align-self:center}.social-hub__empty{grid-column:1/-1;min-height:180px;display:grid;place-items:center;align-content:center;gap:.45rem;padding:1.4rem;border:1px dashed rgba(199,154,59,.25);border-radius:16px;color:var(--muted);text-align:center}.social-hub__empty>span{font-size:2rem}.social-hub__empty strong{color:var(--text)}.social-hub__empty small{max-width:520px}
@media(max-width:900px){.social-hub__hero{align-items:flex-start;flex-direction:column}.social-hub__hero-actions{justify-content:flex-start}.social-hub__metrics{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:560px){.social-hub{padding-top:1rem}.social-hub__metrics{grid-template-columns:1fr 1fr;gap:.5rem}.social-hub__metrics article{padding:.7rem}.social-hub__hero-actions{width:100%}.social-hub__hero-actions .btn{flex:1;min-width:120px}.social-hub__login{align-items:flex-start;flex-direction:column}.social-hub__list{grid-template-columns:1fr}.social-hub__person{min-height:0}.social-hub__filters{align-items:flex-start;flex-direction:column}.social-hub__filters label,.social-hub__filters select{width:100%}}

/* ===== origem: interface-languages.css ===== */
/* Scoped language picker, with vector flags that also work on Windows. */
#forgeLanguageMenu{position:relative;display:block!important;flex:0 0 auto;z-index:90;margin-inline:4px;font:500 14px/1.3 system-ui,sans-serif;color:#f3ead8}
#forgeLanguageMenu summary{display:flex;align-items:center;justify-content:center;gap:6px;min-width:64px;min-height:44px;padding:8px 10px;border:1px solid #8c6c30;border-radius:12px;background:#17130e;color:inherit;cursor:pointer;list-style:none;box-sizing:border-box}
#forgeLanguageMenu summary::-webkit-details-marker{display:none}
#forgeCurrentLocale{display:inline-flex;align-items:center;gap:6px}
#forgeLanguageMenu .forge-locale-flag{display:inline-flex;width:26px;height:18px;flex:none;overflow:hidden;border-radius:2px;box-shadow:0 0 0 1px #ffffff30}
#forgeLanguageMenu svg{display:block;width:100%;height:100%;max-width:none}
#forgeLanguageMenu .forge-language{position:absolute;top:calc(100% + 8px);inset-inline-end:0;width:200px;max-width:calc(100vw - 24px);display:grid;gap:5px;padding:8px;background:#17130e;border:1px solid #b18b46;border-radius:12px;box-shadow:0 12px 35px #0009;box-sizing:border-box}
#forgeLanguageMenu:not([open]) .forge-language{display:none}
#forgeLanguageMenu .forge-language button{display:flex;align-items:center;justify-content:flex-start;gap:10px;min-height:44px;width:100%;padding:8px 10px;border:1px solid transparent;border-radius:8px;background:transparent;color:#f3ead8;text-transform:none;letter-spacing:normal;font:inherit;cursor:pointer}
#forgeLanguageMenu button:hover,#forgeLanguageMenu button[aria-pressed=true]{background:#b1893026;border-color:#b18b46}
#forgeLanguageMenu :focus-visible{outline:3px solid #ecd496;outline-offset:3px}
#forgeLanguageMenu .forge-locale-check{margin-inline-start:auto;visibility:hidden}
#forgeLanguageMenu [aria-pressed=true] .forge-locale-check{visibility:visible}
@media(max-width:480px){#forgeLanguageMenu{margin-inline:0}#forgeLanguageMenu summary{min-width:52px;padding:7px 5px;font-size:12px}#forgeLanguageMenu .forge-locale-flag{width:22px;height:16px}.topbar-actions{gap:4px!important}}
@media print{#forgeLanguageMenu{display:none!important}}
