/* NOLINKDABIO — painel, cadastro e login (sempre no visual Impacto + Dourado). */
.nlb-painel, .nlb-auth { --acc: var(--nlb-acc); --bg: var(--nlb-bg); --card: var(--nlb-card); --line: var(--nlb-line); --txt: var(--nlb-txt); --mut: var(--nlb-mut);
	font-family: var(--nlb-fb), system-ui, sans-serif; color: var(--txt); max-width: 560px; margin: 0 auto; padding: 18px 16px 40px; line-height: 1.35; }
.nlb-painel *, .nlb-auth * { box-sizing: border-box; }
.nlb-disp { font-family: var(--nlb-fd), sans-serif; font-weight: 400; text-transform: uppercase; letter-spacing: .02em; }
.nlb-painel a, .nlb-auth a { color: var(--acc); }
.nlb-logo { display: inline-block; color: var(--txt); line-height: 0; }

/* Auth */
.nlb-auth { text-align: center; padding-top: 40px; }
.nlb-auth h1 { font-size: 42px; margin: 22px 0 4px; line-height: 1; }
.nlb-sub { color: var(--mut); margin: 0 0 20px; }
.nlb-alt { color: var(--mut); font-size: 14px; margin-top: 18px; }

/* Topo do painel */
.nlb-painel-topo { display: flex; justify-content: space-between; align-items: center; margin-bottom: 18px; }
.nlb-painel-user { display: flex; align-items: center; gap: 8px; }
.nlb-painel-user .nlb-btn, .nlb-painel-user .nlb-link { white-space: nowrap; }
.nlb-painel-titulo { font-size: 36px; line-height: 1; margin: 0 0 12px; }
.nlb-abas { display: flex; gap: 5px; margin-bottom: 16px; overflow-x: auto; -webkit-overflow-scrolling: touch; padding-bottom: 0; scrollbar-width: none; -ms-overflow-style: none; }
.nlb-abas::-webkit-scrollbar { display: none; } /* a barrinha aparecia como um risco sob o título em algumas abas */
.nlb-abas a { flex: 1 0 auto; text-align: center; padding: 9px 12px; border-radius: 10px; font-size: 12px; font-weight: 700; background: var(--card); border: 1px solid var(--line); color: var(--mut); text-decoration: none; white-space: nowrap; }
.nlb-abas a.on { background: var(--acc); color: #111; border-color: var(--acc); }
.nlb-abas a.nlb-aba-icone { flex: 0 0 auto; display: flex; align-items: center; justify-content: center; padding: 7px 14px; }
.nlb-abas a.nlb-aba-icone svg { display: block; }

/* Mensagens */
.nlb-msg { border-radius: 10px; padding: 11px 14px; margin-bottom: 14px; font-size: 14px; background: var(--card); border: 1px solid var(--line); }
.nlb-msg-ok { border-color: #2f7a4b; background: #12291a; color: #9be6b5; }
.nlb-msg-erro { border-color: #8a2f2f; background: #2b1212; color: #f2a3a3; }

/* Cards e formulários */
.nlb-card { background: var(--card); border: 1px solid var(--line); border-radius: 14px; padding: 14px; margin-bottom: 12px; text-align: left; }
.nlb-card h3 { font-size: 20px; color: var(--acc); margin: 0 0 10px; }
.nlb-form label { display: block; font-size: 12px; color: var(--mut); text-transform: uppercase; letter-spacing: .06em; margin-bottom: 12px; }
.nlb-form label small { display: block; text-transform: none; letter-spacing: 0; margin-top: 4px; font-size: 12px; }
.nlb-form input[type=text], .nlb-form input[type=email], .nlb-form input[type=password], .nlb-form input[type=url], .nlb-form input[type=date], .nlb-form input[type=time], .nlb-form select, .nlb-form textarea {
	display: block; width: 100%; margin-top: 5px; background: var(--bg); color: var(--txt); border: 1px solid var(--line); border-radius: 10px; padding: 11px 12px; font: inherit; font-size: 15px; text-transform: none; letter-spacing: 0; }
.nlb-form input:focus, .nlb-form select:focus { outline: 2px solid var(--acc); border-color: var(--acc); }
.nlb-form input[type=file] { font: inherit; font-size: 13px; color: var(--mut); text-transform: none; letter-spacing: 0; margin-top: 6px; }
.nlb-grid2 { display: grid; grid-template-columns: 1fr 1fr; gap: 10px; }
.nlb-check { display: flex !important; align-items: center; gap: 8px; text-transform: none !important; letter-spacing: 0 !important; font-size: 14px !important; color: var(--txt) !important; }
.nlb-check input { width: 18px; height: 18px; accent-color: var(--acc); }
.nlb-dica { font-size: 12px; color: var(--mut); margin: 6px 0 0; }
.nlb-btn { display: inline-block; border: 0; cursor: pointer; font: inherit; font-weight: 700; font-size: 14px; padding: 12px 16px; border-radius: 11px; text-decoration: none !important; }
.nlb-btn-acc { background: var(--acc); color: #111 !important; }
.nlb-btn-sec { background: var(--card); color: var(--txt) !important; border: 1px solid var(--line); padding: 8px 12px; font-size: 12px; }
.nlb-btn-full { display: block; width: 100%; text-align: center; font-size: 16px; padding: 14px; margin-bottom: 14px; }
.nlb-link { background: none; border: 0; padding: 0; color: var(--acc); font: inherit; font-weight: 700; cursor: pointer; text-decoration: none; }
.nlb-perigo { color: #e36b6b; }
.nlb-inline { display: inline; }
.nlb-center { display: block; text-align: center; margin: -6px 0 14px; }

/* Slug */
.nlb-slug-field { display: flex; align-items: center; background: var(--bg); border: 1px solid var(--line); border-radius: 10px; padding: 0 12px; margin-top: 5px; }
.nlb-slug-field .nlb-slug-pre { color: var(--mut); font-size: 14px; text-transform: none; letter-spacing: 0; white-space: nowrap; }
.nlb-slug-field input { border: 0 !important; background: transparent !important; padding-left: 2px !important; margin-top: 0 !important; flex: 1; min-width: 0; }
.nlb-slug-field input:focus { outline: none !important; }
.nlb-slug-status { font-size: 12px; font-weight: 700; text-transform: none; letter-spacing: 0; white-space: nowrap; }
.nlb-slug-status.ok { color: #5ee38a; }
.nlb-slug-status.erro { color: #e36b6b; }

/* Foto */
.nlb-foto-row { display: flex; align-items: center; gap: 12px; margin-top: 6px; }
.nlb-foto-prev { width: 64px; height: 64px; border-radius: 50%; object-fit: cover; flex: none; }
.nlb-foto-story-prev { width: 90px; height: 160px; object-fit: cover; border-radius: 10px; flex: none; }

/* Ordem */
.nlb-ordem { list-style: none; margin: 0; padding: 0; }
.nlb-ordem li { display: flex; align-items: center; gap: 10px; background: var(--bg); border: 1px solid var(--line); border-radius: 10px; padding: 11px 12px; margin-bottom: 8px; font-size: 14px; font-weight: 700; cursor: grab; }
.nlb-ordem li.arrastando { border-color: var(--acc); opacity: .6; }
.nlb-grip { color: var(--mut); letter-spacing: -2px; }
.nlb-ordem-btns { margin-left: auto; display: flex; gap: 4px; }
.nlb-ordem-btns button { background: var(--card); border: 1px solid var(--line); color: var(--txt); border-radius: 6px; width: 30px; height: 28px; cursor: pointer; }

/* Redes */
.nlb-rede-row { display: flex; gap: 6px; margin-bottom: 8px; }
.nlb-rede-row select { width: 40%; margin-top: 0 !important; }
.nlb-rede-row input { margin-top: 0 !important; flex: 1; }
.nlb-remover-row { background: var(--bg); border: 1px solid var(--line); color: var(--mut); border-radius: 10px; width: 40px; cursor: pointer; flex: none; }
.nlb-add { display: block; width: 100%; border: 1.5px dashed var(--line); background: none; color: var(--mut); border-radius: 10px; padding: 11px; font: inherit; font-size: 13px; font-weight: 700; cursor: pointer; }

/* Itens (shows/produtos) */
.nlb-item { display: flex; gap: 12px; align-items: center; background: var(--bg); border: 1px solid var(--line); border-radius: 10px; padding: 10px 12px; margin-bottom: 8px; }
.nlb-item.nlb-passado { opacity: .5; }
.nlb-item-info { flex: 1; min-width: 0; font-size: 13px; }
.nlb-item-info b { display: block; font-size: 14px; }
.nlb-item-info span { color: var(--mut); font-size: 12px; }
.nlb-cliques { display: block; font-size: 12px; color: var(--acc); font-weight: 700; margin-top: 2px; }
.nlb-item-acts { flex: none; display: flex; flex-direction: column; align-items: flex-end; gap: 5px; font-size: 12px; text-align: right; }
.nlb-item-acts .nlb-inline { display: block; }
.nlb-item-thumb { width: 54px; height: 54px; border-radius: 8px; overflow: hidden; background: var(--card); flex: none; }
.nlb-item-thumb img { width: 100%; height: 100%; object-fit: cover; display: block; }
.nlb-tag { font-style: normal; font-size: 10px; background: var(--line); color: var(--mut); border-radius: 4px; padding: 1px 6px; vertical-align: middle; }
.nlb-data { width: 50px; flex: none; text-align: center; background: var(--acc); color: #111; border-radius: 9px; padding: 5px 0 6px; font-family: var(--nlb-fd), sans-serif; line-height: 1; }
.nlb-data b { display: block; font-size: 24px; font-weight: 400; }
.nlb-data small { display: block; font-size: 10px; letter-spacing: .06em; margin-top: 1px; }

/* Visual */
.nlb-fontes { display: grid; grid-template-columns: 1fr 1fr; gap: 8px; }
.nlb-fonte-op { background: var(--bg); border: 1.5px solid var(--line); border-radius: 12px; padding: 12px 10px 10px; position: relative; cursor: pointer; text-transform: none !important; letter-spacing: 0 !important; margin: 0 !important; }
.nlb-fonte-op input { position: absolute; opacity: 0; }
.nlb-fonte-op b { display: block; font-family: var(--fd), sans-serif; font-weight: 400; font-size: 30px; line-height: 1; text-transform: uppercase; color: var(--txt); }
.nlb-fonte-op span { display: block; font-family: var(--fb), sans-serif; font-size: 12px; color: var(--mut); margin-top: 4px; }
.nlb-fonte-op.on { border-color: var(--acc); }
.nlb-fonte-op.on::after { content: "✓"; position: absolute; top: 8px; right: 8px; width: 20px; height: 20px; border-radius: 50%; background: var(--acc); color: #111; font-size: 12px; font-weight: 700; display: flex; align-items: center; justify-content: center; }
.nlb-cores { display: grid; grid-template-columns: repeat(3, 1fr); gap: 8px; }
.nlb-cor-op { border-radius: 12px; padding: 10px; border: 1.5px solid; position: relative; height: 96px; display: flex; flex-direction: column; justify-content: space-between; cursor: pointer; text-transform: none !important; letter-spacing: 0 !important; margin: 0 !important; }
.nlb-cor-op input { position: absolute; opacity: 0; }
.nlb-cor-op i { display: block; width: 36px; height: 12px; border-radius: 6px; }
.nlb-cor-op b { font-size: 12px; display: block; }
.nlb-cor-op span { display: block; font-size: 10px; opacity: .7; }
.nlb-cor-op.on { outline: 2px solid #fff; outline-offset: -1px; }
.nlb-previa { border-radius: 12px; padding: 18px; text-align: center; background: var(--p-bg, var(--bg)); color: var(--p-txt, var(--txt)); border: 1px solid var(--line); }
.nlb-previa-nome { font-family: var(--p-fd, var(--nlb-fd)), sans-serif; font-size: 36px; text-transform: uppercase; line-height: 1; }
.nlb-previa-data { display: inline-block; background: var(--p-acc, var(--acc)); color: var(--p-acctxt, #111); font-family: var(--p-fd, var(--nlb-fd)), sans-serif; padding: 6px 14px; border-radius: 9px; margin-top: 10px; line-height: 1; }
.nlb-previa-data b { display: block; font-size: 26px; font-weight: 400; }
.nlb-previa-data small { display: block; font-size: 11px; letter-spacing: .06em; margin-top: 2px; }
.nlb-datas { display: grid; grid-template-columns: 1fr 1fr; gap: 8px; }
.nlb-data-op { background: var(--bg); border: 1.5px solid var(--line); border-radius: 12px; padding: 12px; display: flex !important; flex-direction: column; align-items: center; gap: 8px; cursor: pointer; position: relative; text-transform: none !important; letter-spacing: 0 !important; margin: 0 !important; }
.nlb-data-op input { position: absolute; opacity: 0; }
.nlb-data-op.on { border-color: var(--acc); }
.nlb-data-nome { font-size: 13px; color: var(--txt); }
.nlb-data-mostra { width: 54px; text-align: center; background: var(--acc); color: #111; border-radius: 10px; padding: 6px 0 7px; font-family: var(--nlb-fd), sans-serif; line-height: 1; }
.nlb-data-mostra.vazada { background: transparent; color: var(--acc); box-shadow: inset 0 0 0 2px var(--acc); }
.nlb-data-mostra b { display: block; font-size: 26px; font-weight: 400; }
.nlb-data-mostra small { display: block; font-size: 11px; letter-spacing: .06em; margin-top: 2px; }
.nlb-previa-data.vazada { background: transparent; color: var(--p-acc, var(--acc)); box-shadow: inset 0 0 0 2px var(--p-acc, var(--acc)); }
.nlb-previa p { font-family: var(--p-fb, var(--nlb-fb)), sans-serif; font-size: 12px; color: var(--p-mut, var(--mut)); margin: 10px 0 0; }

/* Story */
.nlb-modos { display: grid; grid-template-columns: 1fr 1fr; gap: 8px; margin-bottom: 12px; }
.nlb-modo { background: var(--bg); border: 1.5px solid var(--line); border-radius: 12px; padding: 12px; cursor: pointer; text-transform: none !important; letter-spacing: 0 !important; margin: 0 !important; position: relative; }
.nlb-modo input { position: absolute; opacity: 0; }
.nlb-modo b { display: block; font-size: 15px; color: var(--txt); }
.nlb-modo span { display: block; font-size: 11px; color: var(--mut); margin-top: 3px; }
.nlb-modo.on { border-color: var(--acc); }
.nlb-modo-opts { padding-top: 4px; }
.nlb-show-op { padding: 8px 0; border-top: 1px solid var(--line); margin: 0 !important; }
.nlb-show-op b { margin-right: 2px; }
.nlb-story-pronto { text-align: center; }
.nlb-story-img { width: 100%; max-width: 300px; border-radius: 14px; margin: 6px auto 14px; display: block; box-shadow: 0 10px 30px rgba(0,0,0,.5); }
.nlb-story-abrir { display: block; cursor: zoom-in; }

/* Lightbox do story: imagem grande por cima de tudo, com o botão de baixar. */
.nlb-lb { position: fixed; inset: 0; z-index: 99999; display: flex; align-items: center; justify-content: center; padding: 16px; }
.nlb-lb[hidden] { display: none !important; }
.nlb-lb-fundo { position: absolute; inset: 0; background: rgba(0,0,0,.88); backdrop-filter: blur(2px); }
.nlb-lb-caixa { position: relative; display: flex; flex-direction: column; align-items: center; gap: 12px; width: 100%; max-width: 420px; max-height: 100%; }
.nlb-lb-img { display: block; width: auto; max-width: 100%; max-height: 72vh; border-radius: 14px; box-shadow: 0 20px 60px rgba(0,0,0,.7); }
.nlb-lb-acoes { width: 100%; text-align: center; }
.nlb-lb-acoes .nlb-dica { margin: 8px 0 0; }
.nlb-lb-x { position: absolute; top: -10px; right: -4px; transform: translateY(-100%); background: var(--card); color: var(--txt); border: 1px solid var(--line); border-radius: 50%; width: 38px; height: 38px; font-size: 16px; line-height: 1; cursor: pointer; }
@media (max-height: 640px) { .nlb-lb-img { max-height: 60vh; } }

@media (max-width: 420px) {
	.nlb-cores { grid-template-columns: 1fr 1fr; }
}

/* Autosave */
.js .nlb-so-sem-js { display: none; }
.nlb-autosave { position: fixed; left: 50%; bottom: 18px; transform: translateX(-50%); background: var(--card, #18181c); color: var(--txt, #f4f4f5); border: 1px solid var(--line, #2a2a30); border-radius: 999px; padding: 9px 16px; font-size: 13px; font-weight: 700; box-shadow: 0 8px 24px rgba(0,0,0,.4); z-index: 50; opacity: 0; transition: opacity .2s; pointer-events: none; font-family: var(--nlb-fb), system-ui, sans-serif; }
.nlb-autosave.on { opacity: 1; }
.nlb-autosave.ok { border-color: #2f7a4b; color: #9be6b5; }
.nlb-autosave.erro { border-color: #8a2f2f; color: #f2a3a3; pointer-events: auto; }
.nlb-form-opcao { margin-bottom: 12px; }
.nlb-form-opcao .nlb-check { margin: 0 !important; }
.nlb-passados summary { cursor: pointer; font-size: 20px; color: var(--mut); list-style: none; display: flex; align-items: center; gap: 8px; }
.nlb-passados summary::-webkit-details-marker { display: none; }
.nlb-passados summary::before { content: "▸"; font-size: 14px; }
.nlb-passados[open] summary::before { content: "▾"; }
.nlb-passados[open] summary { margin-bottom: 10px; }

/* Administrador editando a página de outra conta */
.nlb-editando { background: var(--card); border: 1px solid var(--acc); border-radius: 10px; padding: 9px 12px; margin-bottom: 12px; font-size: 13px; color: var(--mut); }
.nlb-editando b { color: var(--txt); }
.nlb-item-link { text-decoration: none; color: inherit; align-items: center; }
.nlb-item-link .nlb-item-info b { color: var(--txt); }
.nlb-item-link .nlb-item-info span { word-break: break-all; }

.nlb-versao { text-align: center; font-size: 11px; color: var(--mut); opacity: .6; margin: 18px 0 0; }

/* A barra de rolagem da página vive sumindo e voltando conforme a aba é mais
   curta ou mais longa. Reservando o espaço dela, o painel não desliza de lado
   ao trocar de aba — fica sempre no mesmo lugar. */
html:has(body.nlb-app) { scrollbar-gutter: stable; }

/* Troca de aba sem recarregar: só um apagão rápido enquanto o bloco novo chega. */
.nlb-painel.nlb-trocando { opacity: .4; pointer-events: none; }
.nlb-painel { transition: opacity .12s linear; }

/* ---------------------------------------------------------------------------
   Página do painel em qualquer tema.
   Temas genéricos empilham wrappers com fundo e largura próprios (folha branca,
   layout "boxed", article, etc). Em vez de adivinhar nomes de classe, aqui todo
   elemento que CONTÉM o painel — e só ele — fica transparente e sem limite de
   largura. Nenhuma outra parte do tema é afetada.
   --------------------------------------------------------------------------- */
html:has(body.nlb-app) { background: var(--nlb-bg); }
body.nlb-app { background: var(--nlb-bg); color: var(--nlb-txt); max-width: none; width: auto; margin: 0; border: 0; box-shadow: none; }
body.nlb-app *:has(.nlb-painel),
body.nlb-app *:has(.nlb-auth) {
	background: transparent !important;
	background-image: none !important;
	border: 0 !important;
	box-shadow: none !important;
	max-width: none !important;
	width: auto !important;
	margin-left: 0 !important;
	margin-right: 0 !important;
	padding-left: 0 !important;
	padding-right: 0 !important;
	color: var(--nlb-txt);
}
body.nlb-app :is(.entry-title, .page-title, .entry-header, .page-header) { display: none; }

/* Escolha de colunas no story "Próximos shows". */
.nlb-colunas { display: flex; flex-wrap: wrap; align-items: center; gap: 6px 14px; margin: 10px 0 2px; padding-top: 10px; border-top: 1px solid var(--line); }
.nlb-colunas .nlb-check { margin: 0; }
.nlb-colunas-tit { font-size: 12px; text-transform: uppercase; letter-spacing: .06em; color: var(--mut); width: 100%; }

/* Ajuste de enquadramento das fotos (perfil e fundo do story). */
.nlb-ajuste { display: flex; gap: 14px; align-items: flex-start; margin-top: 12px; }
.nlb-ajuste[hidden] { display: none !important; }
.nlb-ajuste-quadro { position: relative; flex: none; overflow: hidden; background: var(--bg); border: 1px solid var(--line); touch-action: none; cursor: grab; }
.nlb-ajuste-quadro.arrastando { cursor: grabbing; }
.nlb-ajuste-circulo { width: 124px; height: 124px; border-radius: 50%; }
.nlb-ajuste-916 { width: 124px; height: 220px; border-radius: 12px; }
.nlb-ajuste-img { width: 100%; height: 100%; object-fit: cover; display: block; pointer-events: none; user-select: none; }
.nlb-ajuste-mascara { position: absolute; left: 0; right: 0; bottom: 0; height: 46%; background: linear-gradient(to bottom, rgba(0,0,0,0), rgba(0,0,0,.72)); pointer-events: none; }
.nlb-ajuste-ctrl { flex: 1; min-width: 0; display: flex; flex-direction: column; gap: 8px; }
.nlb-ajuste-dica { color: var(--mut); font-size: 12px; }
.nlb-zoom { display: flex; align-items: center; gap: 8px; font-size: 12px; color: var(--mut); text-transform: uppercase; letter-spacing: .06em; }
.nlb-zoom input[type=range] { flex: 1; min-width: 80px; accent-color: var(--acc); }
.nlb-ajuste-reset { align-self: flex-start; }

/* Aceite dos termos no cadastro. */
/* O texto vai dentro de um <span> para ser UM item do flex — solto, cada palavra virava
   um item e o text-align:center do bloco de login espalhava tudo. */
.nlb-aceite { align-items: flex-start; justify-content: flex-start; text-align: left; font-size: 13px !important; line-height: 1.35; margin: 4px 0 16px; }
.nlb-aceite input { margin-top: 2px; flex: none; }
.nlb-aceite span { flex: 1; }
.nlb-aceite a { color: var(--acc); text-decoration: underline; }

/* Lista de agendas do artista. */
.nlb-agendas { list-style: none; margin: 0 0 12px; padding: 0; display: flex; flex-direction: column; gap: 8px; }
.nlb-agendas li { display: flex; gap: 10px; align-items: center; justify-content: space-between; background: var(--bg); border: 1px solid var(--line); border-radius: 10px; padding: 10px 12px; }
.nlb-agendas li.on { border-color: var(--acc); }
.nlb-agenda-info { min-width: 0; font-size: 13px; }
.nlb-agenda-info b { display: block; font-size: 14px; }
.nlb-agenda-info span { color: var(--mut); font-size: 12px; word-break: break-all; }
.nlb-agenda-acts { flex: none; display: flex; flex-direction: column; align-items: flex-end; gap: 4px; font-size: 12px; text-align: right; }
.nlb-agenda-acts .nlb-inline { display: block; }
.nlb-nova-agenda { display: flex; gap: 10px; align-items: flex-end; flex-wrap: wrap; }
.nlb-nova-agenda label { flex: 1; min-width: 180px; margin: 0; }

/* Parceiros no formulário de show. */
.nlb-parceiros { border-top: 1px solid var(--line); margin-top: 14px; padding-top: 12px; }
.nlb-parceiros-tit { display: block; font-size: 12px; text-transform: uppercase; letter-spacing: .06em; color: var(--mut); margin-bottom: 8px; }
.nlb-parceiros-lista { list-style: none; margin: 0 0 8px; padding: 0; display: flex; flex-direction: column; gap: 6px; }
.nlb-parceiros-lista li { display: flex; align-items: center; gap: 8px; background: var(--bg); border: 1px solid var(--line); border-radius: 9px; padding: 8px 10px; }
.nlb-parceiro-nome { flex: 1; min-width: 0; font-size: 14px; }
.nlb-parceiro-busca { position: relative; }
.nlb-parceiro-result { list-style: none; margin: 4px 0 0; padding: 0; position: absolute; left: 0; right: 0; z-index: 20; background: var(--card); border: 1px solid var(--line); border-radius: 10px; overflow: hidden; box-shadow: 0 12px 30px rgba(0,0,0,.5); }
.nlb-parceiro-result[hidden] { display: none; }
.nlb-parceiro-result li { padding: 9px 12px; cursor: pointer; display: flex; flex-direction: column; gap: 1px; }
.nlb-parceiro-result li:hover { background: var(--bg); }
.nlb-parceiro-result b { font-size: 14px; }
.nlb-parceiro-result span { font-size: 12px; color: var(--mut); }
.nlb-parceiro-vazio { color: var(--mut); font-size: 13px; cursor: default; }

/* Parceria na lista de shows e nos convites. */
.nlb-item-parceria { border-left: 3px solid var(--acc); }
.nlb-parceria-de, .nlb-parceria-com { display: block; font-size: 12px; color: var(--acc); }
.nlb-convites .nlb-item { border-color: var(--acc); }
.nlb-aceitar { color: var(--acc) !important; font-weight: 700; }

/* Escolha do tipo de item na aba Parceiros. */
.nlb-tipos { display: flex; gap: 10px; margin: 4px 0 14px; }
.nlb-tipo-op {
	flex: 1; display: flex; flex-direction: column; align-items: center; gap: 6px;
	padding: 12px 6px; border: 2px solid var(--nlb-line); border-radius: 14px; cursor: pointer;
	background: var(--nlb-card); text-align: center;
}
/* O selecionado é marcado sem JS: a classe .on vem do PHP, o :has cobre a troca ao vivo. */
.nlb-tipo-op.on, .nlb-tipo-op:has(input:checked) { border-color: var(--nlb-acc); }
.nlb-tipo-op:has(input:checked) b { color: var(--nlb-txt); }
.nlb-tipos:has(input:checked) .nlb-tipo-op:not(:has(input:checked)) { border-color: var(--nlb-line); }
.nlb-tipo-op input { position: absolute; opacity: 0; pointer-events: none; }
.nlb-tipo-op b { font-size: 13px; }
.nlb-tipo-ico { color: var(--nlb-acc); display: flex; }
.nlb-item-ico { display: flex; align-items: center; justify-content: center; color: var(--nlb-acc); }
