/* ==========================================================================
   III BBC Brazil - painel do participante
   Adaptado de coner2026/static/css/meucongresso_n.css para a identidade BBC.
   Tokens que o site.css nao fornece ficam aqui.
   ========================================================================== */
:root{
  --bbc-radius:14px;
  --bbc-shadow:0 10px 22px rgba(27,74,27,.16);
  --bbc-shadow-strong:0 14px 28px rgba(27,74,27,.22);
  --bbc-transition:all .2s ease;
  --bbc-danger:#B3261E;
  --bbc-danger-bg:#FBEDEC;
  --bbc-notice-bg:#FBF3E2;
}
.tc, .ql-align-center {
    text-align: center;
}

.tr {
    text-align: right;
}

.tj, .ql-align-justify {
    text-align: justify;
}

.fontArial {
    font-family: Arial, Helvetica, sans-serif;
}

.ql-size-small {
    font-size: 0.7em;
}

.cb {
    clear: both;
}

.red {
    color: var(--bbc-danger);
}

.green {
    color: var(--bbc-leaf);
}

.fontSize12 {
    font-size: 12px;
}

.fontSize14 {
    font-size: 14px;
}

.fontSize16 {
    font-size: 16px;
}

div.table {
    overflow-x: auto;
}

form input.erro {
    border-color: var(--bbc-danger);
}

.ajax-upload-dragdrop {
    margin: 10px auto;
    display: block;
}

.ajax-file-upload-statusbar {
    margin: 10px auto;
    display: block;
}

.ql-showHtml:after {
    content: "[source]";
}



div.msg {
    position: relative;
    display: block;
    margin: 10px 0;
    padding: 10px;
    border-radius: var(--bbc-radius);
    border: 1px solid var(--bbc-leaf);
    background: var(--bbc-leaf-pale);
}

div.msg a.close {
    position: absolute;
    top: 3px;
    right: 3px;
    width: 16px;
    height: 16px;
    padding: 0;
    margin: 0;
    background: transparent url(//static.conference.net.br/image/icon-fechar16.png) center center no-repeat;
}

div.msg p:first-child, div.aviso p:first-child {
    margin-top: 0;
    padding-top: 0;
    margin-bottom: 5px;
    padding-bottom: 5px;
}

div.sucesso {
    border-color: var(--bbc-leaf);
    background: var(--bbc-paper) url(//static.conference.net.br/image/icon-sucesso24.png) 3px 10px no-repeat;
    padding: 10px 0;
    padding-left: 32px;
}

div.erro {
    border-color: var(--bbc-danger);
    background: var(--bbc-danger-bg) url(//static.conference.net.br/image/icon-erro24.png) 3px 10px no-repeat;
    padding-left: 32px;
}

div.edicao-atalho {
    border-color: var(--bbc-line-strong);
    background: var(--bbc-paper) url(//static.conference.net.br/image/icon-editar24.png) 3px center no-repeat;
    padding-left: 36px;
    font-size: .9em;
    transition: var(--bbc-transition);
}

div.aviso {
    display: block;
    padding: 10px 10px;
    padding-left: 36px;
    margin: 15px 0;
    border: 1px solid var(--bbc-line-strong);
    border-radius: var(--bbc-radius);
    background: var(--bbc-leaf-pale) url(//static.conference.net.br/image/icon-alerta24.png) 3px 10px no-repeat;
    transition: var(--bbc-transition);
    color: var(--bbc-soft);
}

div.aviso:hover {
    border-color: var(--bbc-forest);
    color: var(--bbc-ink);
}

div.edicao-atalho:hover {
    border-color: var(--bbc-amber);
    background: var(--bbc-paper) url(//static.conference.net.br/image/icon-editar24.png) 3px center no-repeat;
}

table#tbl-apresentacao-trabalho * {
    cursor: default;
}

table tbody tr.linha-selecionada {
    color: var(--bbc-forest);
    font-weight: bold;
}

table.tbl-borda {
    margin: 10px auto;
    width: 100%;
    padding: 0;
    border-collapse: collapse;
    border: 1px solid var(--bbc-line-strong);
}

table.tbl-borda th, table.tbl-borda td {
    border: 1px solid var(--bbc-line-strong);
    padding: 7px 5px;
}

div#form-login {
    display: none;
    position: fixed;
    inset: 0;
    width: 100%;
    height: 100%;
    background: rgba(15, 46, 16, 0.82);
    z-index: 10000;
}

div#form-login form {
    position: fixed;
    width: 400px;
    max-width: calc(100% - 2rem);
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    background: var(--bbc-forest);
    color: var(--bbc-dark-text);
    padding: 30px;
    border: 1px solid var(--bbc-line-dark);
    border-radius: var(--bbc-radius);
    box-shadow: var(--bbc-shadow-strong);
}

div#form-login form h3 {
    margin-bottom: 15px;
    color: var(--bbc-dark-text);
    font-family: var(--font-sans);
    text-align: center;
}

div#form-login form a {
    color: var(--bbc-dark-link);
    text-decoration: none;
    font-weight: 600;
}

div#form-login form a:hover { text-decoration: underline; }

div#form-login form button {
    margin: 10px auto;
}

div#form-login form input {
    margin-bottom: 5px;
}

div#form-login form p {
    margin: 3px 0;
    padding: 3px 0;
    color: var(--bbc-dark-soft);
}

section#submissao-coautor input {
    margin: 10px 0;
}

/* Menu Intranet */
div#menuToggle ul#menu ul.evento-usuario-lista-acesso {
    margin: 0;
    padding: 0;
}

div#menuToggle ul#menu ul.evento-usuario-lista-acesso li {
    list-style: none;
    display: inline-block;
    margin: 5px 0;
    padding: 0 10px;
    border-bottom: none;
}

ul.evento-usuario-lista-acesso li.categoria-divisa {
    border-right: 1px solid var(--bbc-line-strong);
}

ul.evento-usuario-lista-acesso li {
    text-align: center;
}

div.evento-usuario-lista ul.evento-usuario-lista-acesso li {
    list-style: none;
    display: block;
    float: left;
    margin: 5px 10px;
    min-width: 80px;
}

div.evento-usuario-lista ul.evento-usuario-lista-acesso:after {
    content: ".";
    display: block;
    height: 0;
    visibility: hidden;
    clear: both;
    padding: 0;
}

div.evento-usuario-lista ul.evento-usuario-lista-acesso li a {
    display: block;
    min-height: 64px;
    min-width: 64px;
}

div.evento-usuario-lista ul.evento-usuario-lista-acesso li a:hover {
    text-decoration: none;
    color: var(--bbc-leaf);
}

div.evento-usuario-lista ul.evento-usuario-lista-acesso li a img {
    margin: 0 auto;
    padding: 0;
}

div.evento-usuario-lista ul.evento-usuario-lista-acesso li a small {
    display: block;
    padding: 0;
    margin: 2px 0;
}

nav.link-lista ul {
    margin: 10px 0;
    padding: 0;
}

nav.link-lista ul li {
    list-style: none;
    display: inline-block;
    margin: 0 10px;
    padding: 10px 5px;
}

nav.link-lista ul li a {
    display: block;
}

.mobilew {
    display: none;
}

/* ================================================
   Classes de ícones — mantidas sem alteração pois
   referenciam imagens externas do sistema legado
   ================================================ */
.add16 { background: transparent url(//static.conference.net.br/image/icon-add16.png) 3px center no-repeat; padding-left: 24px; }
.apagar16 { background: transparent url(//static.conference.net.br/image/icon-apagar16.png) 3px 3px no-repeat; padding-left: 24px; }
.aprovado16 { background: transparent url(//static.conference.net.br/image/icon-aprovado16.png) 3px 3px no-repeat; padding-left: 24px; }
.buscar16 { background: transparent url(//static.conference.net.br/image/icon-buscar16.png) 3px 3px no-repeat; padding-left: 24px; }
.calendario16 { background: transparent url(//static.conference.net.br/image/icon-calendario16.png) 3px 3px no-repeat; padding-left: 24px; }
.cartao16 { background: transparent url(//static.conference.net.br/image/icon-cartao16.png) 3px 3px no-repeat; padding-left: 32px; }
.configuracao16 { background: transparent url(//static.conference.net.br/image/icon-configuracao16.png) 3px 3px no-repeat; padding-left: 24px; }
.detalhe16 { background: transparent url(//static.conference.net.br/image/icon-detalhe16.png) 3px 3px no-repeat; padding-left: 24px; }
.docx16 { background: transparent url(//static.conference.net.br/image/icon-docx16.png) 3px 3px no-repeat; padding-left: 24px; }
.erro16 { background: transparent url(//static.conference.net.br/image/icon-erro16.png) 3px 3px no-repeat; padding: 3px 0; padding-left: 24px; }
.editar16 { background: transparent url(//static.conference.net.br/image/icon-editar16.png) 3px 3px no-repeat; padding-left: 24px; }
.especie16 { background: transparent url(//static.conference.net.br/image/icon-especie16.png) 3px 3px no-repeat; padding-left: 24px; }
.eventonome16 { background: transparent url(//static.conference.net.br/image/icon-eventonome16.png) 3px 3px no-repeat; padding: 3px 0; padding-left: 24px; }
.fechar16 { background: transparent url(//static.conference.net.br/image/icon-fechar16.png) 3px 3px no-repeat; padding: 3px 0; padding-left: 24px; }
.forgot16 { background: transparent url(//static.conference.net.br/image/icon-forgot16.png) 3px 3px no-repeat; padding: 3px 0; padding-left: 24px; }
.home16 { background: transparent url(//static.conference.net.br/image/icon-home16.png) 3px 3px no-repeat; padding-left: 24px; }
.livrocaixa16 { background: transparent url(//static.conference.net.br/image/icon-livrocaixa16.png) 3px 3px no-repeat; padding: 3px 0; padding-left: 24px; }
.livrocaixaconta16 { background: transparent url(//static.conference.net.br/image/icon-livrocaixaconta16.png) 3px 3px no-repeat; padding: 3px 0; padding-left: 24px; }
.local16 { background: transparent url(//static.conference.net.br/image/icon-local16.png) 3px 3px no-repeat; padding-left: 24px; }
.pdf16 { background: transparent url(//static.conference.net.br/image/icon-pdf16.png) 3px 3px no-repeat; padding-left: 24px; }
.pptx16 { background: transparent url(//static.conference.net.br/image/icon-pptx16.png) 3px 3px no-repeat; padding-left: 24px; }
.profilemf16 { background: transparent url(//static.conference.net.br/image/icon-profilemf16.png) 3px 3px no-repeat; padding-left: 24px; }
.relatorio16 { background: transparent url(//static.conference.net.br/image/icon-relatorio16.png) 3px 3px no-repeat; padding: 3px 0; padding-left: 24px; }
.relogio16 { background: transparent url(//static.conference.net.br/image/icon-relogio16.png) 3px 3px no-repeat; padding: 3px 0; padding-left: 24px; }
.sucesso16 { background: transparent url(//static.conference.net.br/image/icon-sucesso16.png) 3px 3px no-repeat; padding: 3px 0; padding-left: 24px; }
.transporte16 { background: transparent url(//static.conference.net.br/image/icon-transporte16.png) 3px 3px no-repeat; padding: 3px 0; padding-left: 24px; }
/* 24px */
.add24 { background: transparent url(//static.conference.net.br/image/icon-add24.png) 3px 3px no-repeat; padding: 5px 0; padding-left: 32px; }
.adm24 { background: transparent url(//static.conference.net.br/image/icon-adm24.png) 3px 3px no-repeat; padding: 5px 0; padding-left: 32px; }
.aguardando24 { background: transparent url(//static.conference.net.br/image/icon-aguardando24.png) 3px 3px no-repeat; padding: 5px 0; padding-left: 32px; }
.apagar24 { background: transparent url(//static.conference.net.br/image/icon-apagar24.png) 3px 3px no-repeat; padding: 5px 0; padding-left: 32px; }
.apresentacaosessao24 { background: transparent url(//static.conference.net.br/image/icon-apresentacaosessaosubmissao24.png) 3px 3px no-repeat; padding: 5px 0; padding-left: 32px; }
.aprovado24 { background: transparent url(//static.conference.net.br/image/icon-aprovado24.png) 3px 3px no-repeat; padding: 5px 0; padding-left: 32px; }
.arquivolista24 { background: transparent url(//static.conference.net.br/image/icon-arquivolista24.png) 3px 3px no-repeat; padding: 5px 0; padding-left: 32px; }
.arquivos24 { background: transparent url(//static.conference.net.br/image/icon-arquivos24.png) 3px 3px no-repeat; padding: 5px 0; padding-left: 32px; }
.atencao24 { background: transparent url(//static.conference.net.br/image/icon-atencao24.png) 3px 3px no-repeat; padding: 5px 0; padding-left: 32px; }
.avaliacao24 { background: transparent url(//static.conference.net.br/image/icon-avaliacao24.png) 3px 3px no-repeat; padding: 5px 0; padding-left: 32px; }
.avaliador24 { background: transparent url(//static.conference.net.br/image/icon-avaliador24.png) 3px 3px no-repeat; padding: 5px 0; padding-left: 32px; }
.buscar24 { background: transparent url(//static.conference.net.br/image/icon-buscar24.png) 3px 3px no-repeat; padding: 5px 0; padding-left: 32px; }
.calendario24 { background: transparent url(//static.conference.net.br/image/icon-calendario24.png) 3px 3px no-repeat; padding: 5px 0; padding-left: 32px; }
.carrinhocheio24 { background: transparent url(//static.conference.net.br/image/icon-carrinhocheio24.png) 3px 3px no-repeat; padding: 5px 0; padding-left: 32px; }
.cartao24 { background: transparent url(//static.conference.net.br/image/icon-cartao24.png) 3px 3px no-repeat; padding: 5px 0; padding-left: 32px; }
.certificado24 { background: transparent url(//static.conference.net.br/image/icon-certificado24.png) 3px center no-repeat; padding: 5px 0; padding-left: 32px; }
.comentario24 { background: transparent url(//static.conference.net.br/image/icon-comentario24.png) 3px 3px no-repeat; padding: 5px 0; padding-left: 32px; }
.configuracao24 { background: transparent url(//static.conference.net.br/image/icon-configuracao24.png) 3px 3px no-repeat; padding: 5px 0; padding-left: 32px; }
.detalhamento24 { background: transparent url(//static.conference.net.br/image/icon-detalhamento24.png) 3px 3px no-repeat; padding: 5px 0; padding-left: 32px; }
.detalhe24 { background: transparent url(//static.conference.net.br/image/icon-detalhe24.png) 3px 3px no-repeat; padding: 5px 0; padding-left: 32px; }
.docx24 { background: transparent url(//static.conference.net.br/image/icon-docx24.png) 3px 3px no-repeat; padding: 5px 0; padding-left: 32px; }
.email24 { background: transparent url(//static.conference.net.br/image/icon-email24.png) 3px center no-repeat; padding: 5px 0; padding-left: 32px; }
.erro24 { background: transparent url(//static.conference.net.br/image/icon-erro24.png) 3px 3px no-repeat; padding: 5px 0; padding-left: 32px; }
.especie24 { background: transparent url(//static.conference.net.br/image/icon-especie24.png) 3px 3px no-repeat; padding: 5px 0; padding-left: 32px; }
.editar24 { background: transparent url(//static.conference.net.br/image/icon-editar24.png) 3px 3px no-repeat; padding: 5px 0; padding-left: 32px; }
.fluxo24 { background: transparent url(//static.conference.net.br/image/icon-fluxo24.png) 3px 3px no-repeat; padding: 5px 0; padding-left: 32px; }
.forgot24 { background: transparent url(//static.conference.net.br/image/icon-forgot24.png) 3px 3px no-repeat; padding: 5px 0; padding-left: 32px; }
.home24 { background: transparent url(//static.conference.net.br/image/icon-home24.png) 3px 3px no-repeat; padding-left: 32px; }
.inscricao24 { background: transparent url(//static.conference.net.br/image/icon-inscricao24.png) 3px 3px no-repeat; padding: 5px 0; padding-left: 32px; }
.inscrito24 { background: transparent url(//static.conference.net.br/image/icon-inscrito24.png) 3px 3px no-repeat; padding: 5px 0; padding-left: 32px; }
.local24 { background: transparent url(//static.conference.net.br/image/icon-local24.png) 3px 3px no-repeat; padding: 5px 0; padding-left: 32px; }
h1 .local24 { background: transparent url(//static.conference.net.br/image/icon-local24.png) 3px center no-repeat; }
.loja24 { background: transparent url(//static.conference.net.br/image/icon-loja24.png) 3px 3px no-repeat; padding: 5px 0; padding-left: 32px; }
.paypal24 { background: transparent url(//static.conference.net.br/image/icon-pagamentopaypal24.png) 3px 3px no-repeat; padding: 5px 0; padding-left: 32px; }
.pagar24 { background: transparent url(//static.conference.net.br/image/icon-pagar24.png) 3px 3px no-repeat; padding-left: 32px; min-height: 30px; }
.paper24 { background: transparent url(//static.conference.net.br/image/icon-paper24.png) 3px 3px no-repeat; padding: 5px 0; padding-left: 32px; }
.permissao24 { background: transparent url(//static.conference.net.br/image/icon-permissao24.png) 3px 3px no-repeat; padding: 5px 0; padding-left: 32px; }
.pdf24 { background: transparent url(//static.conference.net.br/image/icon-pdf24.png) 3px 3px no-repeat; padding: 5px 0; padding-left: 32px; }
.pptx24 { background: transparent url(//static.conference.net.br/image/icon-pptx24.png) 3px 3px no-repeat; padding: 5px 0; padding-left: 32px; }
.printer24 { background: transparent url(//static.conference.net.br/image/icon-printer24.png) 3px 3px no-repeat; padding: 5px 0; padding-left: 32px; }
.profilemf24 { background: transparent url(//static.conference.net.br/image/icon-profilemf24.png) 3px 3px no-repeat; padding: 5px 0; padding-left: 32px; }
.programacao24 { background: transparent url(//static.conference.net.br/image/icon-programacao24.png) 3px 3px no-repeat; padding: 5px 0; padding-left: 32px; }
.proximo24 { background: transparent url(//static.conference.net.br/image/icon-proximo24.png) 3px 3px no-repeat; padding: 5px 0; padding-left: 32px; }
.questionario24 { background: transparent url(//static.conference.net.br/image/icon-questionario24.png) 3px center no-repeat; padding: 5px 0; padding-left: 32px; }
h2.proximo24 { background-position: 3px center; }
.relatorio24 { background: transparent url(//static.conference.net.br/image/icon-relatorio24.png) 3px 3px no-repeat; padding: 5px 0; padding-left: 32px; }
.relogio24 { background: transparent url(//static.conference.net.br/image/icon-relogio24.png) 3px 3px no-repeat; padding: 5px 0; padding-left: 32px; }
.resumofinal24 { background: transparent url(//static.conference.net.br/image/icon-resumofinal24.png) 3px 3px no-repeat; padding: 5px 0; padding-left: 32px; }
.status24 { background: transparent url(//static.conference.net.br/image/icon-status24.png) 3px 3px no-repeat; padding: 5px 0; padding-left: 32px; }
.sucesso24 { background: transparent url(//static.conference.net.br/image/icon-sucesso24.png) 3px 3px no-repeat; padding: 5px 0; padding-left: 32px; }
.suporte24 { background: transparent url(//static.conference.net.br/image/icon-suporte24.png) 3px 3px no-repeat; padding: 5px 0; padding-left: 32px; }
.transporte24 { background: transparent url(//static.conference.net.br/image/icon-transporte24.png) 3px 3px no-repeat; padding: 5px 0; padding-left: 32px; }
.vermais24d { background: transparent url(//static.conference.net.br/image/icon-vermais24.png) right bottom no-repeat; padding: 5px 0; padding-right: 32px; }
.wirecard24 { background: transparent url(//static.conference.net.br/image/icon-wirecard24.png) 3px 3px no-repeat; padding: 5px 0; padding-left: 128px; }
.xlsx24 { background: transparent url(//static.conference.net.br/image/icon-excel24.png) 3px 3px no-repeat; padding: 5px 0; padding-left: 32px; }
/* 32px */
.add32 { background: transparent url(//static.conference.net.br/image/icon-add32.png) 3px 3px no-repeat; padding: 8px 0; padding-left: 40px; }
.apagar32 { background: transparent url(//static.conference.net.br/image/icon-apagar32.png) 3px 3px no-repeat; padding: 8px 0; padding-left: 40px; }
.buscar32 { background: transparent url(//static.conference.net.br/image/icon-buscar32.png) 3px 3px no-repeat; padding: 5px 0; padding-left: 40px; }
.calendario32 { background: transparent url(//static.conference.net.br/image/icon-calendario32.png) 3px 3px no-repeat; padding: 5px 0; padding-left: 40px; }
.cartao32 { background: transparent url(//static.conference.net.br/image/icon-cartao32.png) 3px 3px no-repeat; padding: 8px 0; padding-left: 40px; }
.configuracao32 { background: transparent url(//static.conference.net.br/image/icon-configuracao32.png) 3px 3px no-repeat; padding: 8px 0; padding-left: 40px; }
.detalhe32 { background: transparent url(//static.conference.net.br/image/icon-detalhe32.png) 3px 3px no-repeat; padding: 8px 0; padding-left: 40px; }
.docx32 { background: transparent url(//static.conference.net.br/image/icon-docx32.png) 3px 3px no-repeat; padding-left: 40px; }
.erro32 { background: transparent url(//static.conference.net.br/image/icon-erro32.png) 3px 3px no-repeat; padding: 8px 0; padding-left: 40px; }
.editar32 { background: transparent url(//static.conference.net.br/image/icon-editar32.png) 3px 3px no-repeat; padding: 8px 0; padding-left: 40px; }
.especie32 { background: transparent url(//static.conference.net.br/image/icon-especie32.png) 3px 3px no-repeat; padding: 8px 0; padding-left: 40px; }
.home32 { background: transparent url(//static.conference.net.br/image/icon-home32.png) 3px 3px no-repeat; padding: 8px 0; padding-left: 40px; }
.livrocaixaconta32 { background: transparent url(//static.conference.net.br/image/icon-livrocaixaconta32.png) 3px 3px no-repeat; padding: 5px; padding-left: 40px; }
.local32 { background: transparent url(//static.conference.net.br/image/icon-local32.png) 3px 3px no-repeat; padding: 8px 0; padding-left: 40px; }
.pdf32 { background: transparent url(//static.conference.net.br/image/icon-pdf32.png) 3px 3px no-repeat; padding: 5px; padding-left: 40px; }
.pptx32 { background: transparent url(//static.conference.net.br/image/icon-pptx32.png) 3px 3px no-repeat; padding: 8px 0; padding-left: 40px; }
.relatorio32 { background: transparent url(//static.conference.net.br/image/icon-relatorio32.png) 3px 3px no-repeat; padding: 5px; padding-left: 40px; }
.status32 { background: transparent url(//static.conference.net.br/image/icon-status32.png) 3px 3px no-repeat; padding: 5px; padding-left: 40px; }
.sucesso32 { background: transparent url(//static.conference.net.br/image/icon-sucesso32.png) 3px 3px no-repeat; padding-left: 40px; }
.transporte32 { background: transparent url(//static.conference.net.br/image/icon-transporte32.png) 3px 3px no-repeat; padding: 5px; padding-left: 40px; }
.aprovado32 { background: transparent url(//static.conference.net.br/image/icon-aprovado32.png) 3px 3px no-repeat; padding-left: 40px; }
/* 48px */
.cartao48 { background: transparent url(//static.conference.net.br/image/icon-cartao48.png) 3px 3px no-repeat; padding-left: 56px; }
.especie48 { background: transparent url(//static.conference.net.br/image/icon-especie48.png) 3px 3px no-repeat; padding-left: 56px; }

/* Programação */
.pabertura { background: transparent url(//static.conference.net.br/image/icon-abertura24.png) left 5px no-repeat; padding-left: 40px; }
.pcafe { background: transparent url(//static.conference.net.br/image/icon-cafe24.png) left 5px no-repeat; padding-left: 40px; }
.prefeicao { background: transparent url(//static.conference.net.br/image/icon-refeicao24.png) left 5px no-repeat; padding-left: 40px; }
.ppalco { background: transparent url(//static.conference.net.br/image/icon-palco24.png) left 5px no-repeat; padding-left: 40px; }
.pmesaredonda { background: transparent url(//static.conference.net.br/image/icon-mesaredonda24.png) left 5px no-repeat; padding-left: 40px; }
.pcomercial { background: transparent url(//static.conference.net.br/image/icon-comercial24.png) left 5px no-repeat; padding-left: 40px; }
.pmaterial { background: transparent url(//static.conference.net.br/image/icon-cadastramento24.png) left 5px no-repeat; padding-left: 40px; }
.pcurso { background: transparent url(//static.conference.net.br/image/icon-minicurso24.png) left 5px no-repeat; padding-left: 40px; }
.pspeaker { background: transparent url(//static.conference.net.br/image/icon-speaker24.png) left 5px no-repeat; padding-left: 40px; }
.paporal { background: transparent url(//static.conference.net.br/image/icon-aporal24.png) left 5px no-repeat; padding-left: 40px; }
.pposter { background: transparent url(//static.conference.net.br/image/icon-poster24.png) left 5px no-repeat; padding-left: 40px; }
.pvisita { background: transparent url(//static.conference.net.br/image/icon-visita24.png) left 5px no-repeat; padding-left: 40px; }

div.opcao-inline {
    display: inline-block;
    margin: 5px 0;
    padding: 5px 10px;
}

div.form-evento-item {
    margin: 10px 0;
}

div.g-recaptcha div {
    margin: 10px auto;
    transform: scale(0.98);
}

.ui-tooltip {
    padding: 10px 20px;
    border-radius: 20px;
    box-shadow: var(--bbc-shadow);
    font-family: var(--font-sans);
    font-size: 0.95em;
    background: var(--bbc-paper);
}

.arrow {
    width: 70px;
    height: 16px;
    overflow: hidden;
    position: absolute;
    left: 50%;
    margin-left: -35px;
    bottom: -16px;
}

.arrow.top { top: -16px; bottom: auto; }
.arrow.left { left: 20%; }

.arrow:after {
    content: "";
    position: absolute;
    left: 20px;
    top: -20px;
    width: 25px;
    height: 25px;
    transform: rotate(45deg);
    box-shadow: 0 0 7px var(--bbc-line-strong);
    background: var(--bbc-paper);
}

.arrow.top:after { bottom: -20px; top: auto; }

/* Listagem de cadastro */
section.cadastro-info div:after {
    content: ".";
    display: block;
    height: 0;
    visibility: hidden;
    clear: both;
    padding: 0;
}

section.cadastro-info div {
    padding: 10px 0;
    display: block;
    width: 100%;
}

section.cadastro-info div:hover {
    background: var(--bbc-leaf-pale);
}

section.cadastro-info div strong {
    float: left;
    display: block;
    min-width: 150px;
    max-width: 30%;
    margin-right: 20px;
}

/* Galeria de fotos */
section#home-foto-galeria {
    background: var(--bbc-forest-deep);
    max-height: 340px;
    overflow: hidden;
}

section#home-foto-galeria .gallery { margin: 0 auto; max-width: 1100px; padding: 0; }
section#home-foto-galeria .crsl-item { height: 340px; margin: 0; padding: 0; }
section#home-foto-galeria .crsl-item img { height: 340px; margin: 0; padding: 0; }
section#home-foto-galeria .crsl-wrap { max-height: 360px; overflow-y: hidden; margin: 0; padding: 0; }

/* Programação */
.minicurso24 {
    background: transparent url(//static.conference.net.br/image/icon-minicurso24.png) left 5px no-repeat;
    padding-left: 40px;
}

div.programacao-descricao {
    display: none;
}

h3.programacao-data {
    margin: 0;
    padding-top: 15px;
    padding-bottom: 10px;
    border-bottom: 1px solid var(--bbc-line-strong);
}

h3.calendario24 {
    background: transparent url(//static.conference.net.br/image/icon-calendario24.png) left center no-repeat;
    padding-left: 40px;
}

table.programacao {
    width: 100%;
    border-spacing: 0;
    border-collapse: separate;
    padding-bottom: 20px;
    padding-top: 10px;
    margin: 0;
    font-size: 0.90em;
}

table.programacao tr {
    padding: 10px 0;
    transition: var(--bbc-transition);
    clear: both;
}

table.programacao tr td {
    vertical-align: top;
    border-bottom: 1px solid var(--bbc-line-strong);
    padding: 7px 0;
    margin: 0;
}

table.programacao tr td:nth-child(1) { margin-right: 10px; }

table.programacao tr td.programacao-data {
    vertical-align: top;
    text-align: center;
}

table.programacao tr td.programacao-data * { padding: 0; margin: 0; }

table.programacao tr:not(:nth-child(1)) td.data-nova {
    border-top: 5px solid var(--bbc-line-strong);
}

table.programacao tr td.pabertura { background: transparent url(//static.conference.net.br/image/icon-abertura24.png) left 8px no-repeat; padding-left: 40px; }
table.programacao tr td.pcafe { background: transparent url(//static.conference.net.br/image/icon-cafe24.png) left 8px no-repeat; padding-left: 40px; }
table.programacao tr td.ppalco { background: transparent url(//static.conference.net.br/image/icon-palco24.png) left 8px no-repeat; padding-left: 40px; }
table.programacao tr td.pmesaredonda { background: transparent url(//static.conference.net.br/image/icon-mesaredonda24.png) left 8px no-repeat; padding-left: 40px; }
table.programacao tr td.pcomercial { background: transparent url(//static.conference.net.br/image/icon-comercial24.png) left 8px no-repeat; padding-left: 40px; }
table.programacao tr td.prefeicao { background: transparent url(//static.conference.net.br/image/icon-refeicao24.png) left 8px no-repeat; padding-left: 40px; }
table.programacao tr td.pmaterial { background: transparent url(//static.conference.net.br/image/icon-cadastramento24.png) left 8px no-repeat; padding-left: 40px; }
table.programacao tr td.pcurso { background: transparent url(//static.conference.net.br/image/icon-minicurso24.png) left 8px no-repeat; padding-left: 40px; }
table.programacao tr td.pspeaker { background: transparent url(//static.conference.net.br/image/icon-palestrante24.png) left 8px no-repeat; padding-left: 40px; }
table.programacao tr td.paporal { background: transparent url(//static.conference.net.br/image/icon-aporal24.png) left 8px no-repeat; padding-left: 40px; }
table.programacao tr td.pposter { background: transparent url(//static.conference.net.br/image/icon-poster24.png) left 8px no-repeat; padding-left: 40px; }
table.programacao tr td.pvisita { background: transparent url(//static.conference.net.br/image/icon-visita24.png) left 8px no-repeat; padding-left: 40px; }

table.programacao tr td div.programacao-palestrante {
    display: block;
    width: 100%;
    clear: both;
}

table.programacao tr td div.programacao-palestrante a {
    display: block;
    float: left;
    max-width: 120px;
    margin-right: 10px;
}

table.programacao tr td div.programacao-palestrante p {
    display: block;
    float: left;
}

table.programacao tr td img { border-radius: var(--bbc-radius); }

table.programacao tr td h3,
table.programacao tr td h4,
table.programacao tr td p {
    margin-top: 0;
    padding-top: 0;
    margin-bottom: 8px;
    padding-bottom: 0;
}

table.programacao tr td div.inscricao {
    display: block;
    padding: 8px 15px;
    margin: 5px 0;
    margin-right: 10px;
    border: 1px solid var(--bbc-leaf-pale);
    background: var(--bbc-paper);
    transition: var(--bbc-transition);
    box-shadow: var(--bbc-shadow);
    clear: both;
    font-size: 0.95em;
}

table.programacao tr td div.inscricao:hover {
    border-color: var(--bbc-forest);
    box-shadow: var(--bbc-shadow-strong);
}

table.programacao tr td div.inscricao form { margin: 0 auto; width: auto; }
table.programacao tr td div.inscricao form select { width: auto; display: inline; padding-right: 20px; margin-right: 20px; }
table.programacao tr td div.inscricao form input[type=submit] { width: auto; display: inline; }
table.programacao tr td div.inscricao p { margin: 3px 0; }

table.programacao tr:hover {
    background: var(--bbc-leaf-pale);
}

nav.apresentacao-sessao-trabalho-lista { padding-bottom: 15px; }
nav.apresentacao-sessao-trabalho-lista ul { margin: 0; padding: 0; list-style-type: none; }

nav.apresentacao-sessao-trabalho-lista ul li {
    display: block;
    border-left: 1px solid var(--bbc-line-strong);
    border-bottom: 1px solid var(--bbc-line-strong);
    margin: 0;
    padding: 0 0 10px 10px;
}

nav.apresentacao-sessao-trabalho-lista ul li h4 { margin-bottom: 0; padding-bottom: 5px; }
nav.apresentacao-sessao-trabalho-lista ul li p { margin: 0; padding: 5px; font-size: .95em; }

section.programacao-apresentacao-sessao h4 { font-size: 1.1em; }
section.programacao-apresentacao-sessao h4 small { font-size: 0.75em; }

section.programacao-apresentacao-sessao div {
    border: 0;
    border-bottom: 1px solid var(--bbc-leaf-bright);
    background: transparent;
    transition: var(--bbc-transition);
    padding: 5px 10px;
}

section.programacao-apresentacao-sessao div:hover {
    background: var(--bbc-leaf-pale);
}

/* Notícias */
nav#noticia-lista ul { margin: 0; padding: 0; }

nav#noticia-lista ul li {
    display: block;
    margin: 15px 0;
    padding: 0 0 10px 36px;
    list-style: none;
    background: transparent url(//static.conference.net.br/image/icon-noticia24.png) left 4px no-repeat;
    border-bottom: 1px solid var(--bbc-line-strong);
}

/* Palestrantes */
main section#palestrante-lista { display: block; }

main section#palestrante-lista ul { 
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(270px, 1fr));
    gap: 20px;
    margin: 0; 
    padding: 0;
    justify-items: center;
}

main section#palestrante-lista ul li {
    display: flex;
    flex-direction: column;
    align-items: center;
    list-style-type: none;
    margin: 0;
    padding: 15px 20px;
    transition: var(--bbc-transition);
    width: 230px;
    min-height: 350px;
    font-size: 0.85em;
    text-align: center;
    color: var(--bbc-soft);
    border-radius: var(--bbc-radius);
    box-sizing: border-box;
}

main section#palestrante-lista ul li a {
    display: block;
    text-align: center;
}

main section#palestrante-lista ul li a img {
    display: block;
    margin: 0 auto;
    max-width: 230px;
    max-height: 230px;
    border-radius: 10%;
    margin-bottom: 10px;
    transition: var(--bbc-transition);
}

main section#palestrante-lista ul li:hover {
    color: var(--bbc-forest);
}

main section#palestrante-lista ul li:hover img { filter: none; }
main section#palestrante-lista ul li h3 { 
    margin: 10px 0 0 0; 
    padding: 0; 
    text-align: center;
    width: 100% !important;
    line-height: 1.2;
    display: block;
}

main section#palestrante-lista ul li h3 a {
    text-decoration: none;
    margin: 0;
    padding: 0;
}

main section#palestrante-lista ul li h3 br {
    display: none;
}

main section#palestrante-lista ul li h3 small {
    display: block;
    font-size: 0.85em;
    font-weight: normal;
    margin-top: 5px;
    text-align: center;
}

main section#palestrante-perfil h2 { margin-top: 20px; margin-bottom: 10px; padding: 0; text-align: center; }
main section#palestrante-perfil h2 div { margin-top: 15px; text-align: center; }
main section#palestrante-perfil h2 div small { display: inline-block; }
main section#palestrante-perfil h2 div small img { display: inline-block; vertical-align: middle; border-radius: 0; }
main section#palestrante-perfil img { border-radius: var(--bbc-radius); }

main section#palestrante-perfil blockquote {
    font-size: 0.95em;
    color: var(--bbc-soft);
    text-align: justify;
}

/* Submissão de trabalhos */
div#submissao-tabs {
    margin-bottom: 15px;
    font-family: var(--font-sans);
    font-size: 16px;
}

div#submissao-tabs:after {
    content: "."; display: block; height: 0; visibility: hidden; clear: both; padding: 0;
}

div#submissao-tabs ul li.ui-state-active {
    background: var(--bbc-forest);
    border-color: var(--bbc-forest-deep);
    color: var(--bbc-paper);
}

div#submissao-tabs ul li.ui-state-active a {
    color: var(--bbc-paper);
}

div#submissao-tabs div.ui-widget,
div#submissao-tabs div.ui-widget-content {
    border-color: var(--bbc-line-strong);
}

div#submissao-tabs ul.ui-widget-header {
    background: var(--bbc-leaf-pale);
}

div#submissao-tabs div.tab-form {
    color: var(--bbc-forest);
}

div#submissao-tabs div.tab-form div.next {
    display: block;
    clear: both;
    margin-top: 25px;
}

div#submissao-tabs div.tab-form div.next a {
    display: block;
    margin: 10px;
    color: var(--bbc-paper);
    padding: 5px 25px;
    float: right;
    background: var(--bbc-forest);
    border: 1px solid var(--bbc-forest-deep);
    border-radius: 5px;
    transition: var(--bbc-transition);
}

div#submissao-tabs div.tab-form div.next a.ant { float: left; }
div#submissao-tabs div.tab-form div.next a.prox { float: right; }

div#submissao-tabs div.tab-form div.next a:hover {
    background: var(--bbc-leaf);
    border-color: var(--bbc-forest);
}

div#submissao-tabs div.tab-form div.next a.prox::after { content: " >>"; color: var(--bbc-paper); }
div#submissao-tabs div.tab-form div.next a.ant::before { content: "<< "; color: var(--bbc-paper); }
div#submissao-tabs div.tab-form label { font-size: 16px; }

section#submissao-coautor div {
    border: 1px solid var(--bbc-line-strong);
    background: var(--bbc-paper);
    border-radius: var(--bbc-radius);
    margin: 10px 5px;
    padding: 10px;
}

div#submissao-countdown {
    display: block;
    text-align: center;
    padding: 15px 10px;
    border: 1px solid var(--bbc-line-strong);
    border-radius: var(--bbc-radius);
}

div#submissao-countdown strong { font-size: 1.2em; }

.input-file-container {
    position: relative;
    width: 500px;
    max-width: 90%;
    margin: 5px auto;
}

.js .input-file-trigger {
    display: block;
    padding: 14px 45px;
    background: var(--bbc-paper);
    color: var(--bbc-forest);
    font-size: 1em;
    transition: var(--bbc-transition);
    cursor: pointer;
    text-align: center;
    border: 1px solid var(--bbc-line-strong);
    border-radius: var(--bbc-radius);
}

.js .input-file {
    position: absolute;
    top: 0;
    left: 0;
    width: 500px;
    max-width: 90%;
    opacity: 0;
    padding: 14px 0;
    cursor: pointer;
}

.js .input-file:hover + .input-file-trigger,
.js .input-file:focus + .input-file-trigger,
.js .input-file-trigger:hover,
.js .input-file-trigger:focus {
    background: var(--bbc-leaf-pale);
    color: var(--bbc-forest);
    border: 1px solid var(--bbc-ink);
}

.file-return { margin: 0; }
.file-return:not(:empty) { margin: 1em 0; }
.js .file-return { font-style: italic; font-size: .9em; font-weight: bold; text-align: center; }
.js .file-return:not(:empty):before { content: "Selected file: "; font-style: normal; font-weight: normal; }

nav.arquivo-lista ul { margin: 10px 0; padding: 0; }

nav.arquivo-lista ul li {
    list-style-type: none;
    margin: 10px 0;
    padding: 10px 0 10px 36px;
    background: transparent url(//static.conference.net.br/image/icon-arquivolista24.png) 3px center no-repeat;
}

nav.arquivo-lista ul li:hover {
    background-color: var(--bbc-leaf-pale);
}

nav.navegacao_pagina ul { margin: 0; padding: 0; }
nav.navegacao_pagina ul li { list-style-type: none; margin: 0 15px; display: inline; }
nav.navegacao_pagina ul li a { display: inline-block; }

section.avaliacao-lista ul { margin: 0; padding: 0; }

section.avaliacao-lista ul li {
    list-style-type: none;
    margin: 6px 0;
    padding: 10px 10px 15px;
    border: 1px solid var(--bbc-line-strong);
    border-radius: var(--bbc-radius);
}

section.avaliacao-lista ul li h4:nth-child(1) { margin-top: 0; }

section.avaliacao-lista ul li h4:not(:nth-child(1)) {
    border-top: 1px solid var(--bbc-line-strong);
    padding-top: 15px;
}

section.avaliacao-lista ul li:hover {
    background: var(--bbc-leaf-pale);
    border-color: var(--bbc-forest);
}

section.submissao-timeline {
    clear: both;
    display: flex;
    justify-content: center;
    margin: 30px 0;
}

section.submissao-timeline ul { margin: 0; padding: 0; }

section.submissao-timeline ul li {
    list-style-type: none;
    margin: 15px 0;
    padding: 0;
    display: block;
    float: left;
    width: 108px;
    height: 108px;
    font-size: .8em;
    text-align: center;
    position: relative;
    z-index: 0;
}

section.submissao-timeline ul li div { display: block; width: 100%; height: 100%; position: relative; z-index: 2; }
section.submissao-timeline ul li div.statussim24 { background: transparent url(//static.conference.net.br/image/icon-statussim24.png) 50% 100% no-repeat; }
section.submissao-timeline ul li div.statusnao24 { background: transparent url(//static.conference.net.br/image/icon-statusnao24.png) center bottom no-repeat; }
section.submissao-timeline ul li div.statusaguardando24 { background: transparent url(//static.conference.net.br/image/icon-statusaguardando24.png) center bottom no-repeat; }

section.submissao-timeline ul li.linha-final::after,
section.submissao-timeline ul li.linha-inicio::after,
section.submissao-timeline ul li.linha-meio::after {
    border-top: 3px solid var(--bbc-amber);
    content: "";
    position: absolute;
    top: 95px;
    bottom: 0;
    z-index: -1;
}

section.submissao-timeline ul li.linha-final::after { left: -50%; right: 0; width: 50%; margin: 0 auto; }
section.submissao-timeline ul li.linha-inicio::after { left: 50%; right: 0; width: 50%; margin: 0 auto; }
section.submissao-timeline ul li.linha-meio::after { left: 0; right: 0; width: 100%; margin: 0 auto; }

section.submissao-resumo-exibe {
    display: block;
    margin: 0 auto;
    font-family: var(--font-sans);
    max-width: 768px;
}

section.submissao-resumo-exibe h2 p { font-size: .7em; margin: 0; padding-bottom: 6px; }
section.submissao-resumo-exibe h2 { margin-bottom: 0; padding-bottom: 0; }
section.submissao-resumo-exibe h4 { margin: 0; padding: 10px 0; font-size: 1em; }
section.submissao-resumo-exibe h5 { margin-top: 0; padding-top: 0; line-height: 1.5em; }
.submissao-resumo { line-height: 1.7em; margin: 10px 0; }

/* Loja */
section#produto-lista ul { margin: 0; margin-top: 25px; padding: 0; }
section#produto-lista:after { content: "."; display: block; height: 0; visibility: hidden; clear: both; padding: 0; }

section#produto-lista ul li {
    display: block;
    float: left;
    list-style-type: none;
    width: 300px;
    min-height: 300px;
    padding: 10px;
    margin-right: 15px;
    margin-bottom: 15px;
    border: 1px solid var(--bbc-line-strong);
    border-radius: var(--bbc-radius);
}

section#produto-lista ul li.categoria-novo {
    float: none;
    clear: both;
    width: 100%;
    border: 0;
    height: auto;
    min-height: 0;
    font-size: 0.8em;
}

section#produto-lista ul li.categoria-novo h2 { margin: 0; padding: 0; }
section#produto-lista ul li.indisponivel,
main section#homeChamada0 div ul li.indisponivel * { color: var(--bbc-soft); text-decoration: line-through; }
main section#homeChamada0 div ul li.indisponivel img { filter: grayscale(100%); }
section#produto-lista ul li h3 { margin: 5px; margin-bottom: 10px; padding: 0; text-align: center; }
section#produto-lista ul li h4 { margin: 5px; padding: 0; text-align: center; }
p.desconto { font-size: 0.9em; text-decoration: line-through; }
section#produto-lista ul li h4 p.pagar16 { font-size: 1.1em; }

form#loja-produto, form.loja-produto-lista { padding-bottom: 15px; }

form#loja-produto div,
form.loja-produto-lista div { display: block; width: 220px; float: left; }

form#loja-produto div label { font-weight: bold; float: left; width: 110px; margin: 0; }

form#loja-produto input[type=number],
form.loja-produto-lista input[type=number] {
    float: left;
    display: block;
    margin: 0 0 0 20px;
    margin-top: -10px;
    text-align: center;
    font-size: 1.2em;
    width: 70px;
}

form#loja-produto input[type=image],
form.loja-produto-lista input[type=image] {
    display: block;
    width: 32px;
    float: left;
    cursor: pointer;
    margin-top: -10px;
    margin-left: 15px;
}

form#form-cupom button[type=submit] {
    display: block;
    width: auto;
    margin: 10px auto;
    background: transparent url(//static.conference.net.br/image/icon-cupomok24.png) 5px center no-repeat;
    padding: 10px 10px 10px 36px;
    font-weight: bold;
    box-shadow: none;
    color: var(--bbc-danger);
    text-shadow: none;
}

form#loja-produto div.carrinho-add,
form.loja-produto-lista div.carrinho-add { padding-top: 20px; margin-left: 30px; }

form#form-cupom {
    display: block;
    margin: 20px auto;
    padding: 15px;
    max-width: 50%;
    border-radius: var(--bbc-radius);
    border: 1px solid var(--bbc-line-strong);
    transition: var(--bbc-transition);
}

form#form-cupom:hover {
    background: var(--bbc-leaf-pale);
    border-color: var(--bbc-soft);
}

form#form-cupom h2 { margin-top: 0; }
form#form-cupom input { display: block; margin: 10px auto; }
form#form-cupom small strong { color: var(--bbc-danger); }

hr {
    display: block;
    clear: both;
    padding-top: 10px;
    border: 0;
    border-bottom: 1px solid var(--bbc-line-strong);
    height: 1px;
}

table#loja-carrinho { margin: 20px 0; }
table#loja-carrinho tbody td { padding: 10px; }
table#loja-carrinho tfoot td { padding: 7px; }
table#loja-carrinho tfoot tr.cupom-desconto-indica td { color: var(--bbc-danger); }
table#loja-carrinho tfoot tr:nth-last-child(1) td { padding: 10px; font-weight: bold; }

h3#compra-finalizar,
h3.pagamento-local-selecionar { padding: 20px 0; }

h3#compra-finalizar a,
h3.pagamento-local-selecionar a {
    clear: both;
    background: var(--bbc-paper) url(//static.conference.net.br/image/icon-caixarecebe24.png) 20px center no-repeat;
    padding: 15px 20px 15px 66px;
    margin: 25px 15px 15px;
    border-radius: var(--bbc-radius);
    border: 1px solid var(--bbc-leaf);
    box-shadow: inset 0 1px 0 rgba(255,255,255,0.4), 0 1px 1px rgba(0,0,0,0.2);
    color: var(--bbc-forest);
    transition: var(--bbc-transition);
}

h3.pagamento-local-selecionar a.nao {
    background: var(--bbc-danger-bg) url(//static.conference.net.br/image/icon-erro24.png) 20px center no-repeat;
    color: var(--bbc-danger);
    border: 1px solid var(--bbc-danger);
}

h3.pagamento-local-selecionar a.pagamento-paypal24 { background: var(--bbc-paper) url(//static.conference.net.br/image/icon-pagamentopaypal24.png) 20px center no-repeat; }
h3.pagamento-local-selecionar a.pagamento-boleto24 { background: var(--bbc-paper) url(//static.conference.net.br/image/icon-pagamentoboleto24.png) 20px center no-repeat; }
h3.pagamento-local-selecionar a.pagamento-local24 { background: var(--bbc-paper) url(//static.conference.net.br/image/icon-local24.png) 20px center no-repeat; }
h3.pagamento-local-selecionar a.pagamento-deposito24 { background: var(--bbc-paper) url(//static.conference.net.br/image/icon-pagamentodeposito24.png) 20px center no-repeat; }

h3#compra-finalizar a:hover,
h3.pagamento-local-selecionar a:hover {
    box-shadow: 0 0 15px 1px rgba(48, 116, 47, 0.4);
    text-decoration: none;
}

h3.pagamento-local-selecionar a.nao:hover {
    box-shadow: 0 0 15px 1px rgba(204, 0, 0, 0.3);
    text-decoration: none;
}

.item-cancelado { color: var(--bbc-danger); text-decoration: line-through; }

/* Questionário */
nav.questionario { display: block; margin: 15px 0; padding: 0; }
nav.questionario ul { list-style: none; margin: 0; padding: 0; }
nav.questionario ul li { padding-bottom: 0; }
nav.questionario ul li h4 { margin-bottom: 10px; padding-bottom: 0; }
nav.questionario ul li div.opcao-inline { text-align: center; width: auto; }
nav.questionario ul li div.opcao-inline input[type=checkbox] { display: inline-block; width: auto; }
nav.questionario ul li div.opcao-inline input[type=checkbox] ~ label { font-weight: bold; }
nav.questionario ul li div.opcao-inline label { display: inline-block; width: auto; }
div.opcao-inline input[type=checkbox] { display: inline-block; width: auto; }
div.opcao-inline input[type=checkbox]:checked ~ label { font-weight: bold; font-size: 16px; }
div.opcao-inline label { display: inline-block; width: auto; }

/* Paginação */
div.paginacaop { display: flex; justify-content: center; clear: both; }
div.paginacaop nav.paginacao ul { list-style-type: none; margin: 0 auto; padding: 15px 0; }
div.paginacaop nav.paginacao ul li { display: inline-block; margin: 0 10px; }

div.paginacaop nav.paginacao ul li a {
    padding: 15px;
    border: 1px solid var(--bbc-forest);
    border-radius: var(--bbc-radius);
    transition: var(--bbc-transition);
}

form#form-paginacao { display: block; max-width: 300px; margin: 10px auto; text-align: center; }
form#form-paginacao input[type=number],
form#form-paginacao button[type=submit] { display: inline-block; width: auto; margin: 0 10px; }

div#privacidade-aviso {
    display: block;
    position: fixed;
    bottom: 0;
    left: 0;
    width: 100%;
    text-align: center;
    background: var(--bbc-forest);
    color: var(--bbc-paper);
    z-index: 10000;
}

div#privacidade-aviso p:nth-last-child(1) { padding: 10px; }
div#privacidade-aviso a { color: var(--bbc-leaf-bright); }

div#privacidade-aviso a#privacidade-aviso-aceito {
    margin: 15px;
    padding: 10px 15px;
    border-radius: var(--bbc-radius);
    border: 1px solid var(--bbc-leaf-bright);
    background: var(--bbc-leaf);
    color: var(--bbc-paper);
}

div#privacidade-aviso a#privacidade-aviso-fechar { margin-right: 15px; }

div#resumo-editor .ql-editor { min-height: 150px; }

@media screen and (max-width: 640px) {
    .mobilew { display: inline; }
}

/* ================================================
   Carrinho, formulários e tabelas — identidade ConER
   ================================================ */
table#loja-carrinho {
    width: 97%;
    margin: 1.5rem auto;
    border-collapse: collapse;
    background-color: var(--bbc-paper);
    box-shadow: 0 5px 15px rgba(0,0,0,0.1);
    border-radius: var(--bbc-radius);
    overflow: hidden;
}

table#loja-carrinho th {
    background: var(--bbc-forest);
    color: var(--bbc-paper);
    padding: 12px 15px;
    text-align: left;
    font-weight: 600;
    font-family: var(--font-sans);
}

table#loja-carrinho td {
    padding: 12px 15px;
    border-bottom: 1px solid var(--bbc-leaf-pale);
}

table#loja-carrinho tr:nth-child(even) { background-color: var(--bbc-sand-paper); }
table#loja-carrinho tr:hover { background-color: var(--bbc-sand-deep); }

/* Ícone de remover: sem borda e na mesma linha da quantidade */
table#loja-carrinho a.excluir {
    display: inline-flex;
    align-items: center;
    margin-left: .6rem;
    vertical-align: middle;
    line-height: 1;
}

table#loja-carrinho a.excluir img {
    display: inline-block;
    margin: 0;
    border: 0;
    border-radius: 0;
    vertical-align: middle;
}

h3#compra-finalizar a,
h3.pagamento-local-selecionar a {
    color: var(--bbc-forest);
    border-color: var(--bbc-forest);
    font-weight: 600;
}

a.inscricao-atalho {
    background: var(--bbc-leaf);
    color: var(--bbc-paper);
    border-radius: 5px;
    padding: 10px 25px;
    margin: 15px auto;
    display: inline-block;
    font-weight: 600;
    font-family: var(--font-sans);
    text-decoration: none;
    transition: var(--bbc-transition);
    box-shadow: 0 4px 10px rgba(0,0,0,0.15);
}

a.inscricao-atalho:hover {
    background: var(--bbc-leaf-bright);
    transform: translateY(-3px);
    box-shadow: 0 6px 15px rgba(0,0,0,0.2);
}

a.aviso-destaque {
    border-radius: 5px;
    padding: 15px 30px;
    margin: 15px auto;
    background: var(--bbc-notice-bg);
    color: var(--bbc-forest);
    display: inline-block;
    font-weight: 600;
    border: 2px solid var(--bbc-leaf);
}

main section#main-inscricao a.inscricao-atalho {
    background: var(--bbc-leaf);
    color: var(--bbc-paper);
    border-radius: 30px;
    padding: 12px 35px;
    margin: 20px 0;
    font-size: 1.1rem;
}

div#footer-pagamento-aviso,
div#footer-login-aviso {
    display: block;
    position: fixed;
    bottom: 0;
    left: 0;
    width: 100%;
    padding: 15px 0;
    background: var(--bbc-forest);
    z-index: 9999;
    color: var(--bbc-paper);
    font-size: 16px;
    text-align: center;
    box-shadow: 0 -3px 10px rgba(0,0,0,0.2);
}

div#footer-login-aviso h4,
div#footer-login-aviso a { color: var(--bbc-dark-text); margin: 0; }
div#footer-login-aviso a { color: var(--bbc-dark-link); text-decoration: underline; font-weight: 600; }
div#footer-login-aviso big { color: var(--bbc-danger-bg); font-weight: 600; }

form label {
    display: block;
    font-size: .9em;
    padding: 5px 0 8px;
    margin: 0 auto;
    width: 95%;
}

/* ─── Inputs de texto, email, senha, número, etc. ───────────────── */
form input:not([type="image"]):not([type="checkbox"]):not([type="radio"]):not([type="range"]):not([type="file"]):not([type="submit"]):not([type="button"]):not([type="reset"]):not([type="hidden"]),
form textarea,
form div.tab-form input:not([type="image"]):not([type="checkbox"]):not([type="radio"]):not([type="range"]):not([type="file"]):not([type="submit"]):not([type="button"]):not([type="reset"]):not([type="hidden"]),
form div.tab-form textarea {
    display: block;
    width: 95%;
    margin: 0 auto;
    padding: 12px;
    outline: none;
    font-family: var(--font-sans);
    font-size: 1rem;
    border-radius: var(--bbc-radius);
    border: 2px solid var(--bbc-line-strong);
    color: var(--bbc-ink);
    transition: var(--bbc-transition);
    background: var(--bbc-paper);
}

form input:not([type="image"]):not([type="checkbox"]):not([type="radio"]):not([type="range"]):not([type="file"]):not([type="submit"]):not([type="button"]):not([type="reset"]):not([type="hidden"]):focus,
form textarea:focus,
form div.tab-form input:not([type="image"]):not([type="checkbox"]):not([type="radio"]):not([type="range"]):not([type="file"]):not([type="submit"]):not([type="button"]):not([type="reset"]):not([type="hidden"]):focus,
form div.tab-form textarea:focus {
    border-color: var(--bbc-leaf);
    box-shadow: 0 0 0 3px rgba(48, 116, 47, 0.2);
    outline: none;
}

/* ─── Input type="image" ─────────────────────────────────────────── */
form input[type="image"] {
    display: block;
    margin: 0 auto;
    cursor: pointer;
    border: none;
    background: none;
    padding: 0;
    transition: var(--bbc-transition);
}

form input[type="image"]:hover {
    opacity: 0.85;
    transform: translateY(-2px);
}

form input[type="image"]:active {
    transform: translateY(1px);
}

/* ─── Checkbox ───────────────────────────────────────────────────── */
form input[type="checkbox"],
form input[type="radio"] {
    appearance: none;
    -webkit-appearance: none;
    display: inline-block;
    width: 20px;
    height: 20px;
    min-width: 20px;
    margin: 0;
    padding: 0;
    vertical-align: middle;
    border: 2px solid var(--bbc-line-strong);
    background: var(--bbc-paper);
    cursor: pointer;
    transition: var(--bbc-transition);
    position: relative;
    flex-shrink: 0;
}

form input[type="checkbox"] {
    border-radius: 6px;
}

form input[type="radio"] {
    border-radius: 50%;
}

form input[type="checkbox"]:hover,
form input[type="radio"]:hover {
    border-color: var(--bbc-leaf);
    box-shadow: 0 0 0 3px rgba(48, 116, 47, 0.15);
}

form input[type="checkbox"]:checked,
form input[type="radio"]:checked {
    background: var(--bbc-leaf);
    border-color: var(--bbc-leaf);
}

/* Checkmark ✓ */
form input[type="checkbox"]:checked::after {
    content: "";
    display: block;
    position: absolute;
    top: 2px;
    left: 6px;
    width: 5px;
    height: 10px;
    border: 2px solid var(--bbc-paper);
    border-top: none;
    border-left: none;
    transform: rotate(45deg);
}

/* Bolinha central */
form input[type="radio"]:checked::after {
    content: "";
    display: block;
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    width: 8px;
    height: 8px;
    border-radius: 50%;
    background: var(--bbc-paper);
}

/* Foco acessível (teclado) */
form input[type="checkbox"]:focus-visible,
form input[type="radio"]:focus-visible {
    outline: 2px solid var(--bbc-leaf);
    outline-offset: 3px;
}

/* Label inline com checkbox/radio */
form label:has(input[type="checkbox"]),
form label:has(input[type="radio"]) {
    display: flex;
    align-items: center;
    gap: 8px;
    cursor: pointer;
    width: 95%;
    padding: 4px 0;
    font-size: .9em;
}

/* ─── Botões ─────────────────────────────────────────────────────── */
form button[type=submit],
form button.btn {
    display: block;
    margin: 20px auto;
    padding: 14px 32px;
    background: var(--bbc-amber);
    color: #13250F;
    border: 0;
    border-radius: 20px 20px 20px 5px;
    font-family: var(--font-sans);
    font-size: .82rem;
    font-weight: 700;
    letter-spacing: .1em;
    text-transform: uppercase;
    cursor: pointer;
    text-decoration: none;
    transition: var(--bbc-transition);
    box-shadow: var(--bbc-shadow);
}

form button[type=submit]:hover,
form button.btn:hover {
    color: #13250F;
    transform: translateY(-2px);
    box-shadow: var(--bbc-shadow-strong);
}

form button[type=submit]:focus-visible,
form button.btn:focus-visible {
    outline: 2px solid var(--bbc-forest);
    outline-offset: 3px;
}

form button[type=submit]:active,
form button.btn:active { transform: translateY(1px); }


form select,
form div.tab-form select {
    font-family: var(--font-sans);
    margin: 15px auto;
    font-size: 1rem;
    padding: 12px;
    border-radius: var(--bbc-radius);
    border: 2px solid var(--bbc-line-strong);
    width: 95%;
    background: var(--bbc-paper);
    color: var(--bbc-ink);
}

/* ================================================================
   FORM SHOWN — floating label no padrao da estrutura base
   Marcacao: form.form-shown > .field > (input|textarea) + label
   ================================================================ */

form.form-shown input[type="hidden"],
form.form-shown .field input[type="hidden"] {
    display: none !important;
}

form.form-shown .field,
#layout-interno form.form-shown .field {
    position: relative;
    display: block;
    margin-bottom: 1.6em;
}

form.form-shown .field input,
form.form-shown .field textarea {
    all: unset !important;
    box-sizing: border-box !important;
    display: block !important;
    width: 100% !important;
    margin: 0 !important;
    padding: 1.4rem 0 .55rem !important;
    border: none !important;
    border-bottom: 1px solid var(--bbc-line-strong) !important;
    border-radius: 0 !important;
    background: transparent !important;
    font-family: var(--font-sans) !important;
    font-size: 1rem !important;
    line-height: 1.4 !important;
    color: var(--bbc-ink) !important;
    box-shadow: none !important;
    outline: none !important;
    transition: border-color .2s ease !important;
}

form.form-shown .field textarea {
    min-height: 3.4rem !important;
    resize: none !important;
    overflow: hidden !important;
}

form.form-shown .field input:focus,
form.form-shown .field textarea:focus {
    border-bottom-color: var(--bbc-leaf) !important;
    box-shadow: none !important;
    outline: none !important;
}

form.form-shown .field input::placeholder,
form.form-shown .field textarea::placeholder {
    color: var(--bbc-soft) !important;
    opacity: 0 !important;
    transition: opacity .2s ease !important;
}

form.form-shown .field input:focus::placeholder,
form.form-shown .field textarea:focus::placeholder {
    opacity: 1 !important;
}

form.form-shown .field label {
    all: unset !important;
    position: absolute !important;
    left: 0 !important;
    top: 1.4rem !important;
    display: block !important;
    width: 100% !important;
    font-family: var(--font-sans) !important;
    font-size: 1rem !important;
    font-weight: 600 !important;
    line-height: 1.4 !important;
    text-transform: uppercase !important;
    letter-spacing: .04em !important;
    color: var(--bbc-soft) !important;
    pointer-events: none !important;
    transition: top .18s ease, font-size .18s ease, color .18s ease, letter-spacing .18s ease !important;
}

form.form-shown .field input:required + label::after,
form.form-shown .field textarea:required + label::after {
    content: " *" !important;
    color: var(--bbc-danger) !important;
}

form.form-shown .field input:focus + label,
form.form-shown .field input:not(:placeholder-shown) + label,
form.form-shown .field textarea:focus + label,
form.form-shown .field textarea:not(:placeholder-shown) + label {
    top: 0 !important;
    font-size: .72rem !important;
    letter-spacing: .08em !important;
    text-transform: uppercase !important;
    color: var(--bbc-forest) !important;
}


hr.pagina-interno-hr {
    border: 0;
    border-bottom: 1px solid var(--bbc-leaf-pale);
    margin: 30px 0;
}

div#submissao-tabs table#rascunho-tabela,
div#submissao-tabs table#trabalho-enviado-tabela {
    display: table;
    border-collapse: collapse;
    width: 95%;
    margin: 20px auto;
    border: 1px solid var(--bbc-leaf);
    border-radius: var(--bbc-radius);
    overflow: hidden;
    box-shadow: 0 5px 15px rgba(0,0,0,0.05);
}

div#submissao-tabs table#rascunho-tabela tbody td,
div#submissao-tabs table#rascunho-tabela thead th,
div#submissao-tabs table#trabalho-enviado-tabela tbody td,
div#submissao-tabs table#trabalho-enviado-tabela thead th {
    border: 1px solid var(--bbc-line-strong);
    padding: 12px 15px;
}

div#submissao-tabs table thead th {
    background: var(--bbc-forest);
    color: var(--bbc-paper);
    font-weight: 600;
    font-family: var(--font-sans);
}

div#submissao-tabs table tbody tr:nth-child(even) {
    background: var(--bbc-sand-paper);
}

/* ================================================================
   PAGAMENTO PIX INFO — genérico, responsivo
   ================================================================ */

.pagamento-pix-info {
    max-width: 480px;
    width: 100%;
    margin: 0 auto;
    padding: 32px 28px;
    border-radius: 16px;
    border: 1px solid var(--bbc-line);
    color: var(--bbc-ink);
    box-sizing: border-box;
}

/* ─── Título principal ───────────────────────────────────────────── */
.pagamento-pix-info > h2 {
    font-size: clamp(1.1rem, 3vw, 1.35rem);
    font-weight: 800;
    color: var(--bbc-forest);
    display: flex;
    align-items: center;
    gap: 10px;
    margin: 0 0 8px;
}

.pagamento-pix-info > h2 i {
    color: var(--bbc-leaf);
    font-size: 1.1em;
}

.pagamento-pix-info > p {
    font-size: clamp(0.85rem, 2vw, 0.92rem);
    color: var(--bbc-soft);
    margin: 0 0 24px;
    line-height: 1.5;
}

/* ─── QR Code ────────────────────────────────────────────────────── */
.pagamento-pix-info-qrcode {
    display: flex;
    justify-content: center;
    margin-bottom: 24px;
}

.pagamento-pix-info-qrcode img {
    width: clamp(140px, 40vw, 200px);
    height: clamp(140px, 40vw, 200px);
    border-radius: 12px;
    border: 1px solid var(--bbc-line);
    padding: 8px;
    display: block;
}

/* ─── Copia e Cola ───────────────────────────────────────────────── */
.pagamento-pix-info-codigo {
    margin-bottom: 28px;
}

.pagamento-pix-info-codigo label {
    display: flex;
    align-items: center;
    gap: 6px;
    font-size: 0.78rem;
    font-weight: 700;
    text-transform: uppercase;
    letter-spacing: 0.06em;
    color: var(--bbc-forest);
    margin-bottom: 6px;
}

.pagamento-pix-info-codigo label i {
    color: var(--bbc-leaf);
}

/* Input do código: fonte monospace para facilitar leitura */
.pagamento-pix-info-codigo input {
    display: block;
    width: 100%;
    box-sizing: border-box;
    padding: 10px 14px;
    border-radius: 8px;
    border: 1px solid var(--bbc-line);
    font-size: clamp(0.68rem, 1.8vw, 0.78rem);
    font-family: 'Courier New', Courier, monospace;
    color: var(--bbc-ink);
    background: var(--bbc-sand-paper);
    cursor: text;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
    outline: none;
    transition: border-color 0.2s ease, box-shadow 0.2s ease;
}

.pagamento-pix-info-codigo input:focus {
    border-color: var(--bbc-leaf);
    box-shadow: 0 0 0 3px rgba(48, 116, 47, 0.15);
}

/* ─── Instruções ─────────────────────────────────────────────────── */
.pagamento-pix-info-instrucoes {
    border-top: 1px solid var(--bbc-line);
    padding-top: 20px;
}

.pagamento-pix-info-instrucoes h3 {
    font-size: clamp(0.88rem, 2.5vw, 0.95rem);
    font-weight: 700;
    color: var(--bbc-forest);
    display: flex;
    align-items: center;
    gap: 8px;
    margin: 0 0 14px;
}

.pagamento-pix-info-instrucoes h3 i {
    color: var(--bbc-leaf);
}

.pagamento-pix-info-instrucoes ol {
    list-style: none;
    padding: 0;
    margin: 0 0 14px;
    display: flex;
    flex-direction: column;
    gap: 10px;
}

.pagamento-pix-info-instrucoes ol li {
    font-size: clamp(0.82rem, 2vw, 0.88rem);
    color: var(--bbc-soft);
    line-height: 1.4;
}

.pagamento-pix-info-instrucoes ol li i {
    color: var(--bbc-leaf);
    font-size: 0.85rem;
    width: 16px;
    text-align: center;
    margin-top: 2px;
    flex-shrink: 0;
}

.pagamento-pix-info-instrucoes > p {
    font-size: clamp(0.78rem, 2vw, 0.82rem);
    color: var(--bbc-leaf);
    margin: 0;
    font-weight: 600;
}

.pagamento-pix-info-instrucoes > p i {
    color: var(--bbc-amber);
}

/* ─── Dados manuais ──────────────────────────────────────────────── */
.pagamento-pix-info-manual {
    border-top: 1px solid var(--bbc-line);
    margin-top: 24px;
    padding-top: 20px;
}

.pagamento-pix-info-manual h3 {
    font-size: clamp(0.88rem, 2.5vw, 0.95rem);
    font-weight: 700;
    color: var(--bbc-forest);
    margin: 0 0 8px;
}

.pagamento-pix-info-manual h3 i {
    color: var(--bbc-leaf);
    margin-right: 8px;
}

.pagamento-pix-info-manual > p {
    font-size: clamp(0.82rem, 2vw, 0.88rem);
    color: var(--bbc-soft);
    margin: 0 0 16px;
    line-height: 1.5;
}

.pagamento-pix-info-manual ul {
    list-style: none;
    padding: 0;
    margin: 0 0 16px;
    border-radius: 10px;
    border: 1px solid var(--bbc-line);
    overflow: hidden;
}

.pagamento-pix-info-manual ul li {
    display: block;
    padding: 12px 16px;
    border-bottom: 1px solid var(--bbc-line);
    font-size: clamp(0.82rem, 2vw, 0.88rem);
}

.pagamento-pix-info-manual ul li:last-child {
    border-bottom: none;
}

.pagamento-pix-info-manual ul li:nth-child(even) {
    background: var(--bbc-sand-paper);
}

.pagamento-pix-info-manual ul li span {
    display: block;
    color: var(--bbc-soft);
    font-size: 0.78rem;
    text-transform: uppercase;
    letter-spacing: 0.04em;
    margin-bottom: 2px;
}

.pagamento-pix-info-manual ul li span i {
    color: var(--bbc-leaf);
    margin-right: 5px;
}

.pagamento-pix-info-manual ul li strong {
    display: block;
    color: var(--bbc-ink);
    font-family: 'Courier New', Courier, monospace;
    font-size: 0.9rem;
    word-break: break-all;
}

/* Alerta de confirmação */
.pagamento-pix-info-manual > p:last-child {
    display: block;
    font-size: 0.8rem;
    color: var(--bbc-amber-deep);
    background: var(--bbc-notice-bg);
    border: 1px solid var(--bbc-amber);
    border-radius: 8px;
    padding: 10px 14px;
    margin: 0;
    line-height: 1.5;
}

.pagamento-pix-info-manual > p:last-child i {
    color: var(--bbc-amber);
    margin-right: 6px;
}

/* ─── Parcelamento no cartão ─────────────────────────────────────── */
.pagamento-pix-info-cartao {
    border-top: 1px solid var(--bbc-line);
    margin-top: 24px;
    padding-top: 20px;
}

.pagamento-pix-info-cartao h3 {
    font-size: clamp(0.88rem, 2.5vw, 0.95rem);
    font-weight: 700;
    color: var(--bbc-forest);
    margin: 0 0 8px;
}

.pagamento-pix-info-cartao h3 i {
    color: var(--bbc-leaf);
    margin-right: 8px;
}

.pagamento-pix-info-cartao > p {
    font-size: clamp(0.82rem, 2vw, 0.88rem);
    color: var(--bbc-soft);
    margin: 0 0 14px;
    line-height: 1.5;
}

.pagamento-pix-info-cartao ul {
    list-style: none;
    padding: 0;
    margin: 0 0 16px;
}

.pagamento-pix-info-cartao ul li {
    display: block;
    font-size: clamp(0.82rem, 2vw, 0.88rem);
    color: var(--bbc-soft);
    line-height: 1.5;
    padding: 4px 0;
}

.pagamento-pix-info-cartao ul li i {
    color: var(--bbc-leaf);
    margin-right: 8px;
}

/* Alerta de encargos */
.pagamento-pix-info-cartao > p:last-child {
    display: block;
    font-size: 0.8rem;
    color: var(--bbc-amber-deep);
    background: var(--bbc-notice-bg);
    border: 1px solid var(--bbc-amber);
    border-radius: 8px;
    padding: 10px 14px;
    margin: 0;
    line-height: 1.5;
}

.pagamento-pix-info-cartao > p:last-child i {
    color: var(--bbc-amber-deep);
    margin-right: 6px;
}

/* ─── Responsivo ─────────────────────────────────────────────────── */
@media (max-width: 480px) {
    .pagamento-pix-info {
        padding: 24px 16px;
        border-radius: 12px;
    }

    .pagamento-pix-info-codigo input {
        font-size: 0.65rem;
        padding: 10px;
    }
}

/* ==========================================================================
   ALTO CONTRASTE (html.hc)
   Os tokens --bbc-* do site.css ja invertem a maior parte do painel.
   Aqui fica so o que depende de cores fixas.
   ========================================================================== */
html.hc div#form-login { background: rgba(0, 0, 0, 0.9); }

html.hc div#form-login form {
    background: #000;
    border: 2px solid #FFF;
    color: #FFF;
}

html.hc div#form-login form a { color: #FFD400; }

html.hc form button[type=submit],
html.hc form button.btn {
    background: #FFD400;
    color: #000;
    border: 2px solid #FFF;
    box-shadow: none;
}

html.hc form input[type="checkbox"]:checked,
html.hc form input[type="radio"]:checked {
    background: #FFD400;
    border-color: #FFD400;
}

html.hc form input[type="checkbox"]:checked::after { border-color: #000; }
html.hc form input[type="radio"]:checked::after { background: #000; }
