/* ==========================================================================
   NOSTALGAR — template MyAAC "Dia de Taverna" (claro, minimalista).
   Sobre tokens.css + identidade.css (que seguem noturnos p/ a marca):
   o corpo remapeia as variáveis para papel/creme — mesma técnica do wiki —
   e topo/banner/rodapé redeclaram a noite (página clara, moldura escura).
   Layout de fansite clássico: menu lateral em caixas + conteúdo + status.
   ========================================================================== */

/* ------------------------------------------------ transição entre páginas */
@view-transition { navigation: auto; }
::view-transition-old(root) { animation: ns-sair 160ms ease-in both; }
::view-transition-new(root) { animation: ns-vir 240ms ease-out both; }
@keyframes ns-sair { to { opacity: 0; } }
@keyframes ns-vir  { from { opacity: 0; transform: translateY(8px); } }
@media (prefers-reduced-motion: reduce) {
  ::view-transition-old(root), ::view-transition-new(root) { animation: none; }
}

/* -------------------------------------------------------- tema claro base */
body.ns-dia {
  /* superfícies de papel */
  --pedra-0: #eee5cd;
  --pedra-1: #f6f1e4;
  --pedra-2: #fffdf6;
  --pedra-3: #fbf6ea;
  --pedra-4: #f2ead6;
  --linha-1: #e3d8ba;
  --linha-2: #c9b98e;
  /* tinta escura sobre papel */
  --tinta-0: #1f1808;
  --tinta-1: #2f2412;
  --tinta-2: #64522f;
  --tinta-3: #8f7c57;
  /* acentos com contraste sobre claro */
  --ouro-claro: #8a5c10;
  --brasa-1: #b8761a;
  --brasa-2: #9a5f0e;
  --brasa-3: #7c4d0e;
  --brasa-veu: rgba(184, 118, 26, 0.09);
  --musgo-1: #5f8433; --musgo-2: #47701c; --musgo-3: #a8c184;
  --lacre-1: #a62b21; --lacre-2: #a33528; --lacre-3: #dcaaa1;
  --mana-1: #4a6c9e;  --mana-2: #38609c;  --mana-3: #aec2dc;
  --bisel-luz: rgba(255, 255, 255, 0.8);
  --bisel-sombra: rgba(107, 84, 45, 0.18);
  --sombra-baixa: 0 1px 0 rgba(107, 84, 45, 0.10);
  --sombra-card: 0 1px 0 rgba(107, 84, 45, 0.08), 0 6px 18px rgba(107, 84, 45, 0.12);
  --brilho-tocha: 0 0 14px rgba(184, 118, 26, 0.22);

  --ns-largura: min(1400px, 96vw);

  margin: 0;
  background: #f6f1e4;
  color: var(--tinta-1);
}

/* papel + a taverna dos 20 anos quase marca-d'água atrás de tudo */
body.ns-dia::before {
  background:
    radial-gradient(1100px 400px at 50% -140px, rgba(184, 118, 26, 0.05), transparent 60%),
    repeating-linear-gradient(0deg, transparent 0 3px, rgba(107, 84, 45, 0.025) 3px 4px);
}
body.ns-dia::after {
  content: '';
  position: fixed;
  inset: 0;
  z-index: -2;
  background:
    linear-gradient(180deg, rgba(246, 241, 228, 0.88), rgba(246, 241, 228, 0.94) 55%, rgba(246, 241, 228, 0.97)),
    url('identidade/fundos/arte-taverna.jpg') center 24% / cover no-repeat,
    #f6f1e4;
}

/* ilhas escuras de marca */
.ns-topo-barra, .ns-banner, .ns-rodape {
  --pedra-0: #1c150c; --pedra-1: #271d10; --pedra-2: #322515;
  --pedra-3: #3d2e1a; --pedra-4: #493720;
  --linha-1: #5c4729; --linha-2: #755b36;
  --tinta-0: #fdf8ea; --tinta-1: #f5ecd6; --tinta-2: #dccdab; --tinta-3: #b5a381;
  --ouro-claro: #e8c56e;
  --brasa-1: #f2a93b; --brasa-2: #ffc565; --brasa-3: #b87818;
  --brasa-veu: rgba(242, 169, 59, 0.08);
  --musgo-1: #85ac59; --musgo-2: #a3c878; --musgo-3: #4c6630;
  --lacre-1: #a62b21; --lacre-2: #c6473a; --lacre-3: #711a12;
  --bisel-luz: rgba(255, 233, 185, 0.16);
  --bisel-sombra: rgba(0, 0, 0, 0.45);
  color: var(--tinta-1);
}

.ns-pular {
  position: absolute;
  left: -9999px;
  top: 0;
  z-index: 100;
  padding: 8px 14px;
  background: var(--brasa-1);
  color: #241503;
}
.ns-pular:focus { left: 8px; }

/* -------------------------------------------------------- barra do topo */
.ns-topo-barra {
  background: linear-gradient(180deg, #1c150c, #271d10);
  border-bottom: 1px solid #755b36;
  box-shadow: 0 2px 0 rgba(0, 0, 0, 0.35);
}
.ns-topo-barra::before {
  content: '';
  display: block;
  height: 2px;
  background: linear-gradient(90deg, transparent, #b87818 18%, #f2a93b 50%, #b87818 82%, transparent);
}
.ns-topo-barra__inner {
  max-width: var(--ns-largura, 1400px);
  margin: 0 auto;
  padding: 8px 16px;
  display: flex;
  align-items: center;
  gap: 18px;
}
.ns-topo-barra__marca {
  display: flex;
  align-items: center;
  gap: 9px;
  text-decoration: none;
  white-space: nowrap;
}
.ns-topo-barra__marca b {
  font-family: var(--fonte-display);
  font-weight: 900;
  font-size: 1rem;
  letter-spacing: 0.12em;
  color: #e8c56e;
  text-shadow: 0 1px 0 #000;
}
.ns-topo-barra__atalhos { display: flex; gap: 4px; }
.ns-topo-barra__atalhos a {
  font-family: var(--fonte-ui, 'Alegreya Sans', sans-serif);
  font-weight: 500;
  font-size: 0.82rem;
  letter-spacing: 0.07em;
  text-transform: uppercase;
  color: #dccdab;
  text-decoration: none;
  padding: 6px 10px;
  transition: color 140ms ease-out, background 140ms ease-out;
}
.ns-topo-barra__atalhos a:hover { color: #ffc565; background: rgba(242, 169, 59, 0.08); }
.ns-topo-barra__direita {
  margin-left: auto;
  display: flex;
  align-items: center;
  gap: 14px;
}

/* bandeiras de idioma */
.ns-bandeiras { display: inline-flex; gap: 5px; }
.ns-bandeira {
  display: inline-flex;
  padding: 3px;
  background: none;
  border: 1px solid transparent;
  cursor: pointer;
  opacity: 0.55;
  filter: saturate(0.8);
  transition: opacity 140ms ease-out, border-color 140ms ease-out, transform 140ms ease-out;
}
.ns-bandeira:hover { opacity: 1; transform: translateY(-1px); }
.ns-bandeira--ativa {
  opacity: 1;
  filter: none;
  border-color: #b87818;
  box-shadow: 0 0 8px rgba(242, 169, 59, 0.35);
}
.ns-bandeira svg { display: block; }

/* ------------------------------------------------------------- banner */
.ns-banner {
  position: relative;
  overflow: hidden;
  border-bottom: 1px solid #755b36;
  background:
    linear-gradient(180deg, rgba(28, 21, 12, 0.38), rgba(28, 21, 12, 0.55)),
    url('identidade/fundos/arte-taverna.jpg') center 30% / cover no-repeat,
    #271d10;
}
.ns-banner__veu {
  position: absolute;
  inset: 0;
  pointer-events: none;
  background:
    radial-gradient(120% 100% at 50% 10%, transparent 45%, rgba(28, 21, 12, 0.6) 100%),
    repeating-linear-gradient(0deg, transparent 0 3px, rgba(0, 0, 0, 0.06) 3px 4px);
}
.ns-banner__inner {
  position: relative;
  max-width: var(--ns-largura, 1400px);
  margin: 0 auto;
  padding: clamp(40px, 7vh, 84px) 16px;
  text-align: center;
}
.ns-banner__inner--faixa { padding: 18px 16px 16px; }
.ns-banner__logo {
  max-width: min(460px, 82vw);
  height: auto;
  filter: drop-shadow(0 4px 14px rgba(0, 0, 0, 0.6));
}
.ns-banner__tagline {
  margin: 10px auto 22px;
  font-family: var(--fonte-corpo);
  font-style: italic;
  font-size: var(--texto-lg);
  color: #f5ecd6;
  text-shadow: 0 1px 3px rgba(0, 0, 0, 0.85);
  text-wrap: balance;
}
.ns-banner__acoes {
  display: flex;
  gap: 12px;
  justify-content: center;
  flex-wrap: wrap;
}
.ns-banner__titulo {
  margin: 0;
  font-family: var(--fonte-display);
  font-weight: 700;
  font-size: var(--texto-xl);
  letter-spacing: var(--caps-espaco);
  text-transform: uppercase;
  color: #e8c56e;
  text-shadow: 0 1px 0 #000, 0 0 24px rgba(242, 169, 59, 0.3);
}

/* -------------------------------------------- palco: 3 colunas clássicas */
.ns-palco {
  max-width: var(--ns-largura, 1400px);
  margin: 0 auto;
  padding: 24px 16px 48px;
  display: grid;
  grid-template-columns: 235px minmax(0, 1fr) 255px;
  gap: 20px;
  align-items: start;
}

/* caixas do menu lateral (e da coluna direita) */
.ns-lateral { display: grid; gap: 16px; }
.ns-direita { display: grid; gap: 16px; }
.ns-lateral__caixa {
  background: var(--pedra-2);
  border: 1px solid var(--linha-2);
  box-shadow: var(--sombra-card);
}
.ns-lateral__cabeca {
  margin: 0;
  padding: 9px 14px 8px;
  font-family: var(--fonte-display);
  font-weight: 700;
  font-size: 0.82rem;
  letter-spacing: 0.11em;
  text-transform: uppercase;
  color: #fff8e8;
  background: linear-gradient(180deg, #4a3417, #33240f);
  border-bottom: 2px solid #b8761a;
  text-shadow: 0 1px 0 #000;
}
.ns-lateral__caixa ul {
  list-style: none;
  margin: 0;
  padding: 6px 0;
}
.ns-lateral__caixa li a {
  display: block;
  padding: 6px 14px 6px 24px;
  font-family: var(--fonte-ui, 'Alegreya Sans', sans-serif);
  font-size: 0.95rem;
  color: var(--tinta-1);
  text-decoration: none;
  position: relative;
  transition: color 140ms ease-out, background 140ms ease-out, padding-left 140ms ease-out;
}
.ns-lateral__caixa li a::before {
  content: '';
  position: absolute;
  left: 12px; top: 50%;
  width: 5px; height: 5px;
  transform: translateY(-50%) rotate(45deg);
  background: var(--linha-2);
  transition: background 140ms ease-out, box-shadow 140ms ease-out;
}
.ns-lateral__caixa li a:hover {
  color: var(--brasa-2);
  background: var(--brasa-veu);
  padding-left: 27px;
}
.ns-lateral__caixa li a:hover::before { background: var(--brasa-1); }
.ns-lateral__caixa li a.ns-lateral__ativo {
  color: var(--brasa-2);
  font-weight: 700;
  background: var(--brasa-veu);
  box-shadow: inset 3px 0 0 var(--brasa-1);
}
.ns-lateral__caixa li a.ns-lateral__ativo::before {
  background: var(--brasa-1);
  box-shadow: 0 0 6px rgba(184, 118, 26, 0.6);
}

/* coluna direita */
.ns-direita__status { padding: 12px 14px; }
.ns-direita__farol {
  margin: 0 0 4px;
  font-family: var(--fonte-ui, 'Alegreya Sans', sans-serif);
  font-weight: 700;
  color: var(--lacre-2);
}
.ns-direita__farol--on { color: var(--musgo-2); }
.ns-direita__farol .ns-num { font-size: 1.3em; }
.ns-direita__meta {
  margin: 0;
  font-family: var(--fonte-ui, 'Alegreya Sans', sans-serif);
  font-size: 0.85rem;
  color: var(--tinta-3);
}
.ns-direita__passos {
  margin: 0;
  padding: 10px 14px 12px 30px;
  font-family: var(--fonte-ui, 'Alegreya Sans', sans-serif);
  font-size: 0.95rem;
  color: var(--tinta-2);
}
.ns-direita__passos li { margin: 4px 0; }
.ns-direita__passos li::marker { color: var(--brasa-1); font-weight: 700; }
.ns-direita__passos a { color: var(--ouro-claro); }

/* --------------------------------------------------------- conteúdo */
.ns-conteudo { min-width: 0; }
.ns-miolo {
  background: var(--pedra-2);
  border: 1px solid var(--linha-2);
  box-shadow: var(--sombra-card);
  padding: 22px 26px 28px;
  font-size: var(--texto-md);
  line-height: 1.65;
}

.ns-miolo h1, .ns-miolo h2, .ns-miolo h3, .ns-miolo h4 {
  font-family: var(--fonte-display);
  font-weight: 700;
  letter-spacing: var(--caps-espaco);
  text-transform: uppercase;
  color: #3a2b10;
  line-height: 1.25;
}
.ns-miolo h1 { font-size: var(--texto-xl); }
.ns-miolo h2 { font-size: 1.35rem; color: #8a5c10; }
.ns-miolo h3, .ns-miolo h4 { font-size: var(--texto-md); color: #6b4c10; }

.ns-miolo a {
  color: var(--ouro-claro);
  text-decoration: underline;
  text-underline-offset: 3px;
  text-decoration-color: color-mix(in srgb, var(--ouro-claro) 35%, transparent);
  transition: color 140ms ease-out;
}
.ns-miolo a:hover { color: var(--brasa-1); text-decoration-color: var(--brasa-1); }

.ns-miolo small { color: var(--tinta-3); }
.ns-miolo hr { border: 0; border-top: 1px solid var(--linha-1); margin: var(--esp-5) 0; }
.ns-miolo img { max-width: 100%; }

/* ----- tabelas do core (bgcolor do config.ini: claro) ---------------------- */
.ns-miolo table { border-collapse: collapse; font-family: var(--fonte-ui, 'Alegreya Sans', sans-serif); font-size: var(--texto-sm); }
.ns-miolo tr[bgcolor] > td,
.ns-miolo .myaac-table > tbody > tr > td {
  padding: 8px 12px;
  border-bottom: 1px solid var(--linha-1);
  vertical-align: middle;
}
.ns-miolo tr[bgcolor]:hover { background-color: var(--brasa-veu); }

/* linha de cabeçalho: o core pinta com vdarkborder (#eee5cd) */
.ns-miolo tr[bgcolor="#eee5cd"] > td,
.ns-miolo .myaac-table > thead > tr > td,
.ns-miolo .myaac-table > thead > tr > th {
  font-family: var(--fonte-display);
  font-size: var(--texto-xs);
  font-weight: 700;
  letter-spacing: 0.1em;
  text-transform: uppercase;
  color: #8a5c10 !important;
  border-bottom: 2px solid #b8761a;
  white-space: nowrap;
}
.ns-miolo tr[bgcolor="#eee5cd"]:hover { background-color: #eee5cd; }
.ns-miolo .white, .ns-miolo .white b, .ns-miolo td.white { color: #8a5c10 !important; }

/* ----- caixas Tibia-style do core ------------------------------------------ */
.ns-miolo [class*="TableShadow"],
.ns-miolo [class*="TableBottom"],
.ns-miolo [class*="CaptionEdge"],
.ns-miolo [class*="CaptionBorder"],
.ns-miolo [class*="CaptionVertical"],
.ns-miolo [class*="BoxFrame"],
.ns-miolo .TableContentAndRightShadow { background-image: none !important; }
.ns-miolo .TableShadowContainer,
.ns-miolo .TableShadowContainerRightTop,
.ns-miolo .TableShadowRightTop,
.ns-miolo .TableBottomShadow,
.ns-miolo .TableBottomLeftShadow,
.ns-miolo .TableBottomRightShadow { display: none; }
.ns-miolo .TableContainer { margin: var(--esp-4) 0; }
.ns-miolo .TableContent {
  width: 100%;
  background: var(--pedra-3);
  border: 1px solid var(--linha-1);
}
.ns-miolo .TableContent td { padding: 6px 10px; }
.ns-miolo .CaptionContainer .Text,
.ns-miolo .CaptionInnerContainer .Text {
  font-family: var(--fonte-display);
  font-weight: 700;
  letter-spacing: var(--caps-espaco);
  text-transform: uppercase;
  color: #8a5c10;
  font-size: var(--texto-md);
}

/* ----- formulários ---------------------------------------------------------- */
.ns-miolo input[type="text"],
.ns-miolo input[type="password"],
.ns-miolo input[type="email"],
.ns-miolo input[type="number"],
.ns-miolo input[type="search"],
.ns-miolo select,
.ns-miolo textarea {
  background: #fff;
  color: var(--tinta-1);
  border: 1px solid var(--linha-2);
  padding: 8px 10px;
  font-family: var(--fonte-ui, 'Alegreya Sans', sans-serif);
  font-size: var(--texto-sm);
  box-shadow: inset 0 1px 3px rgba(107, 84, 45, 0.12);
  transition: border-color 140ms ease-out, box-shadow 140ms ease-out;
}
.ns-miolo input:focus,
.ns-miolo select:focus,
.ns-miolo textarea:focus {
  outline: 2px solid var(--brasa-1);
  outline-offset: 1px;
  border-color: var(--brasa-3);
}
.ns-miolo option { background: #fff; color: var(--tinta-1); }
.ns-miolo label { color: var(--tinta-2); }
.ns-miolo .LabelV, .ns-miolo .LabelV120, .ns-miolo .LabelV150,
.ns-miolo .LabelV200, .ns-miolo .LabelH { color: var(--tinta-2); font-weight: 700; }
.ns-miolo .FormFieldError { color: var(--lacre-2); font-size: var(--texto-xs); }

/* botões do core viram ns-btn (claros; primário continua brasa viva) */
.ns-miolo input[type="submit"],
.ns-miolo input[type="button"],
.ns-miolo button,
.ns-miolo .btn,
.ns-miolo .BigButton {
  display: inline-block;
  cursor: pointer;
  font-family: var(--fonte-display);
  font-weight: 700;
  font-size: var(--texto-sm);
  letter-spacing: var(--caps-espaco);
  text-transform: uppercase;
  text-decoration: none;
  padding: 10px 22px 9px;
  color: var(--tinta-1);
  background: linear-gradient(180deg, var(--pedra-4), var(--pedra-2));
  border: 1px solid var(--linha-2);
  box-shadow:
    inset 1px 1px 0 var(--bisel-luz),
    inset -1px -1px 0 var(--bisel-sombra),
    0 2px 0 rgba(107, 84, 45, 0.25);
  transition: color 140ms ease-out, border-color 140ms ease-out,
              box-shadow 140ms ease-out, transform 140ms ease-out;
}
.ns-miolo input[type="submit"]:hover,
.ns-miolo input[type="button"]:hover,
.ns-miolo button:hover,
.ns-miolo .btn:hover,
.ns-miolo .BigButton:hover {
  color: var(--brasa-2);
  border-color: var(--brasa-1);
  box-shadow:
    inset 1px 1px 0 var(--bisel-luz),
    inset -1px -1px 0 var(--bisel-sombra),
    0 2px 0 rgba(107, 84, 45, 0.25), var(--brilho-tocha);
}
.ns-miolo input[type="submit"]:active,
.ns-miolo button:active { transform: translateY(2px); }

/* ----- mensagens do core ---------------------------------------------------- */
.ns-corpo .error, .ns-corpo .success, .ns-corpo .note, .ns-corpo .warning {
  font-family: var(--fonte-ui, 'Alegreya Sans', sans-serif);
  font-size: var(--texto-sm);
  font-weight: 400;
  padding: var(--esp-3) var(--esp-4);
  border: 1px solid var(--linha-2);
  background-image: none;
}
.ns-corpo .error   { background-color: rgba(166, 43, 33, 0.08);  border-left: 3px solid #a33528; color: #8c2a1f; }
.ns-corpo .success { background-color: rgba(95, 132, 51, 0.10);  border-left: 3px solid #5f8433; color: #3c5d18; }
.ns-corpo .note    { background-color: rgba(74, 108, 158, 0.08); border-left: 3px solid #4a6c9e; color: #2f5183; }
.ns-corpo .warning { background-color: rgba(184, 118, 26, 0.10); border-left: 3px solid #b8761a; color: #7c4d0e; }

.ns-miolo .SmallBox { border: 1px solid #dcaaa1; background: rgba(166, 43, 33, 0.06); margin: var(--esp-4) 0; }
.ns-miolo .SmallBox .MessageContainer { padding: var(--esp-3) var(--esp-4); }
.ns-miolo .SmallBox .AttentionSign { display: none; }

/* ----- notícias -------------------------------------------------------------- */
.ns-noticia {
  margin: 0 0 var(--esp-5);
  padding: var(--esp-5) var(--esp-6);
  background: var(--pedra-3);
  border: 1px solid var(--linha-1);
  border-top: 3px solid #b8761a;
}
.ns-noticia__cabecalho {
  border-bottom: 1px solid var(--linha-1);
  padding-bottom: var(--esp-3);
  margin-bottom: var(--esp-4);
}
.ns-noticia__meta {
  display: flex;
  align-items: baseline;
  gap: var(--esp-3);
  color: var(--tinta-3);
  font-family: var(--fonte-ui, 'Alegreya Sans', sans-serif);
  font-size: var(--texto-sm);
}
.ns-noticia__meta .ns-num { color: var(--brasa-1); }
.ns-noticia__autor { font-style: italic; }
.ns-noticia__titulo { margin: var(--esp-1) 0 0; }
.ns-noticia__conteudo { color: var(--tinta-1); }
.ns-noticia__rodape { margin-top: var(--esp-4); text-align: right; font-size: var(--texto-sm); }

/* ----- menu móvel ------------------------------------------------------------ */
.ns-nav__movel { display: none; position: relative; margin-left: auto; }
.ns-nav__movel summary {
  list-style: none;
  cursor: pointer;
  font-family: var(--fonte-display);
  font-weight: 700;
  font-size: 0.82rem;
  letter-spacing: 0.1em;
  text-transform: uppercase;
  color: #e8c56e;
  padding: 6px 12px;
  border: 1px solid #755b36;
}
.ns-nav__movel summary::-webkit-details-marker { display: none; }
.ns-nav__movel-painel {
  position: absolute;
  right: 0;
  top: calc(100% + 6px);
  z-index: 60;
  min-width: 240px;
  max-height: 70vh;
  overflow-y: auto;
  background: #fffdf6;
  color: #2f2412;
  border: 1px solid #c9b98e;
  box-shadow: 0 10px 30px rgba(0, 0, 0, 0.35);
  padding: 8px 0;
}
.ns-nav__movel-cat {
  margin: 8px 0 2px;
  padding: 4px 14px;
  font-family: var(--fonte-display);
  font-weight: 700;
  font-size: 0.72rem;
  letter-spacing: 0.1em;
  text-transform: uppercase;
  color: #8a5c10;
}
.ns-nav__movel-painel a {
  display: block;
  padding: 6px 14px;
  color: #2f2412;
  text-decoration: none;
  font-family: var(--fonte-ui, 'Alegreya Sans', sans-serif);
  font-size: 0.95rem;
}
.ns-nav__movel-painel a:hover { background: rgba(184, 118, 26, 0.09); color: #9a5f0e; }

/* ----- rodapé ----------------------------------------------------------------- */
.ns-rodape {
  margin-top: var(--esp-8);
  padding: var(--esp-7) 0 var(--esp-6);
  background:
    radial-gradient(700px 200px at 50% 0%, rgba(242, 169, 59, 0.05), transparent 70%),
    #1c150c;
  border-top: 1px solid #755b36;
}
.ns-rodape__inner {
  max-width: var(--ns-largura, 1400px);
  margin: 0 auto;
  padding: 0 16px;
  text-align: center;
}
.ns-rodape__selo { height: 52px; width: auto; }
.ns-rodape__promessas {
  margin: var(--esp-3) 0 var(--esp-2);
  font-family: var(--fonte-pixel);
  font-size: var(--texto-md);
  letter-spacing: 0.06em;
  color: #dccdab;
}
.ns-rodape__links { margin: 0 0 var(--esp-3); color: #b5a381; }
.ns-rodape__links a {
  color: #e8c56e;
  text-decoration: none;
  border-bottom: 1px solid rgba(232, 197, 110, 0.35);
}
.ns-rodape__links a:hover { color: #ffc565; border-bottom-color: #ffc565; }
.ns-rodape__cipsoft {
  margin: 0 0 var(--esp-3);
  font-family: var(--fonte-ui, 'Alegreya Sans', sans-serif);
  font-size: var(--texto-xs);
  color: #8f7c57;
}
.ns-rodape__creditos { font-size: var(--texto-xs); color: #8f7c57; }
.ns-rodape__creditos a { color: #b5a381; }
.ns-rodape__creditos a:hover { color: #ffc565; }
.ns-rodape__troca-template { margin-top: var(--esp-4); color: #8f7c57; }
.ns-rodape__troca-template select {
  background: #271d10;
  color: #f5ecd6;
  border: 1px solid #755b36;
  padding: 4px 8px;
}

/* ----- LGPD: banner de consentimento ------------------------------------------ */
.ns-lgpd {
  position: fixed;
  inset: auto 0 0 0;
  z-index: 90;
  padding: 12px;
  pointer-events: none;
}
.ns-lgpd__caixa {
  pointer-events: auto;
  max-width: 720px;
  margin: 0 auto;
  padding: 16px 20px;
  background: #fffdf6;
  color: #2f2412;
  border: 1px solid #c9b98e;
  border-top: 3px solid #b8761a;
  box-shadow: 0 -4px 30px rgba(0, 0, 0, 0.25);
  animation: ns-vir 300ms ease-out both;
}
.ns-lgpd__titulo {
  margin: 0 0 4px;
  font-family: var(--fonte-display);
  font-weight: 700;
  font-size: 0.9rem;
  letter-spacing: 0.08em;
  text-transform: uppercase;
  color: #8a5c10;
}
.ns-lgpd__texto {
  margin: 0 0 12px;
  font-family: var(--fonte-ui, 'Alegreya Sans', sans-serif);
  font-size: 0.92rem;
  line-height: 1.5;
}
.ns-lgpd__texto a { color: #8a5c10; }
.ns-lgpd__acoes { display: flex; gap: 10px; flex-wrap: wrap; }
.ns-lgpd .ns-btn { color: #2f2412; background: linear-gradient(180deg, #f2ead6, #eee5cd); border-color: #c9b98e; }
.ns-lgpd .ns-btn--primario {
  color: #241503;
  background: linear-gradient(180deg, #ffd489, #f2a93b 45%, #b87818);
  border-color: #b87818;
}

/* ----- responsivo -------------------------------------------------------------- */
@media (max-width: 1200px) {
  .ns-palco { grid-template-columns: 225px minmax(0, 1fr); }
  .ns-direita { display: none; }
}
@media (max-width: 900px) {
  .ns-palco { grid-template-columns: 1fr; padding-top: 16px; }
  .ns-lateral { display: none; }
  .ns-nav__movel { display: block; }
  .ns-topo-barra__atalhos { display: none; }
  .ns-miolo { padding: 16px; }
  .ns-noticia { padding: var(--esp-4); }
}
