:root {
    --ad-menu-size: 360px;
    
}

.label-default {
    display: inline-block;
    padding: 0.35em 0.65em;
    font-size: var(--ad-font-size-less);
    font-weight: 700;
    line-height: 1;
    color: #fff;
    text-align: center;
    white-space: nowrap;
    vertical-align: baseline;
    border-radius: 0.25rem;
}

.card-item-content {
    padding: 0px !important;
}

[data-bs-theme=dark] {
    color-scheme: dark;
    --bs-border-color-translucent: rgba(255, 255, 255, 0.05) !important;
    --bs-border-style: #000 !important;
    --bs-body-color: #999 !important;
}


/*******Menu Novo ***********/

#side-menu-part{
    display: flex !important;
    flex-direction: row !important;
    flex-wrap: wrap !important;
    justify-content: space-evenly !important;
    text-align: center !important;
    margin-top: 30px;
}

a.sidebar-link {
    height: 80px !important;
    width: 110px !important;
    background-color: #9999992f !important;
    text-align: center !important;
    display: flex !important;
    align-content: center !important;
    flex-direction: column !important;
    align-items: center !important;
    justify-content: center !important;
    margin-bottom: 15px !important;
}

/*******Menu Novo ***********/

[data-bs-theme=dark] footer {
    background-color: #081525 !important;
    border-color: #000 !important;
}

[data-bs-theme=light] footer {
    background-color: #f0f0fa !important;
}

[data-bs-theme=light] .navbar {
    background: #f0f0fa !important;
 }

[data-bs-theme=dark] .navbar {
    background-color: #081525 !important;
 }
 
.btnnovacontalogin {
    background-color: #03A9F4 !important;
    width: 100% !important;
    color: #FFFFFF !important;
    border: 1px solid #03A9F4 !important;
    font-size: 14px !important;
    padding: 4px 8px !important;
    border-radius: 6px !important;
}
.btnnovacontalogin:hover {
    background-color: #03A9F4 !important;
    color: #FFFFFF !important;
    border: 1px solid #03A9F4 !important;
    box-shadow: 3px 3px 8px 0px  !important;
}
.btnnovacontalogin i {
    color: #FFFFFF !important;
    font-size: 14px !important;
}
.btnnovacontalogin:hover i {
    color: #FFFFFF !important;
}

.product {
    width: 300px;
    height: 325px;
    float: left;
    border: 1px solid #c9c9c9;
    border-radius: 3px;
    padding: 10px;
    margin: 10px;
    text-align: center;
    vertical-align: middle;
    display: table-cell;
}
.product:hover {
    box-shadow: rgba(0, 0, 0, .15) 0 0 20px;
}
.tpagestep {
    list-style: none;
    display: table;
    width: 100%;
    padding: 0;
    margin: 0;
    position: relative;
}

.tpagestep li {
    display: table-cell;
    text-align: center;
    width: 1%;
}

.p-5 {
    padding: 1rem !important;
}

[data-bs-theme=dark] .table tbody, td, tfoot, th, thead, tr {
    border-width: 0;
    border-color: #9999995c !important;
}

/**.table tr {
    border-style: none !important;
}*/

[data-bs-theme=dark] .btnJaTemConta{
    color: var(--text-color);
}

[data-bs-theme=dark] .public-view-container{
    max-width: 1000px;
    margin: auto;
    padding-top: 40px;
}

[data-bs-theme=dark] .public-view-container .container-live{
    overflow-y: none;
}

.planos, .ultimos_pagamentos, .cartoes {
    display: flex;
    flex-direction: row;
    gap: 10px;
    margin-bottom: 25px;
    flex-wrap: wrap;
}

.datagrid-header-actions-left-actions  {
	margin-bottom: 5px !important;
}

/* ========================================
   Área do Cliente / Afiliado — botões nav
   ======================================== */
.btn_links_area_cliente {
    width: 100% !important;
    padding: 12px 16px !important;
    font-size: 15px !important;
    font-weight: 600 !important;
    text-align: center !important;
    display: block !important;
    box-sizing: border-box !important;
    min-height: 48px !important;
    line-height: 24px !important;
}

.btn_links_area_cliente span {
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    gap: 6px !important;
}

/* ========================================
   Painel Cliente/Afiliado — form-group wrapper
   ======================================== */
/* Faz o form-group dentro dos painéis preencher 100% da coluna */
#form_PainelClienteForm  .form-group,
#form_PainelAfiliadoForm .form-group {
    margin-bottom: 6px !important;
    padding: 0 !important;
    width: 100% !important;
    display: block !important;
}

/* Garante que o botão dentro do form-group preencha 100% */
#form_PainelClienteForm  .form-group > button.btn_links_area_cliente,
#form_PainelAfiliadoForm .form-group > button.btn_links_area_cliente {
    width: 100% !important;
    display: flex !important;
    box-sizing: border-box !important;
}

/* Remove padding horizontal das colunas dos botões de nav */
#form_PainelClienteForm  .row [class*="col-sm"],
#form_PainelAfiliadoForm .row [class*="col-sm"] {
    padding-left: 4px !important;
    padding-right: 4px !important;
}

/* Título da área (h2 no painel) */
#form_PainelAfiliadoForm h2,
#form_PainelClienteForm h2 {
    color: var(--ad-primary-color, #333);
    font-weight: 700;
    margin-bottom: 8px;
    text-align: center;
}

/* ========================================
   Modo tela cheia — Área do Cliente / Afiliado
   Oculta sidebar, navbar e footer para
   exibir apenas o conteúdo do painel
   ======================================== */
body.portal-fullscreen #sidebar {
    display: none !important;
}
body.portal-fullscreen .main {
    margin-left: 0 !important;
    width: 100% !important;
}
body.portal-fullscreen nav.navbar {
    display: none !important;
}
body.portal-fullscreen footer.footer {
    display: none !important;
}
body.portal-fullscreen #adianti_div_content_wrapper {
    padding: 0 !important;
    min-height: 100vh !important;
}

/* ========================================
   LoginClienteForm — tela cheia
   ======================================== */
/* Remove margens/padding do container-fluid dentro do wrapper */
body.portal-fullscreen #adianti_div_content_wrapper > .container-fluid {
    padding: 0 !important;
    margin: 0 !important;
    max-width: 100% !important;
}

/* Painel direito no contexto do portal (login.html não tem sidebar/navbar)
   precisa de position:fixed para sobrepor o formulário de login em fullscreen */
body.portal-fullscreen #adianti_right_panel {
    position: fixed !important;
    top: 0 !important;
    right: 0 !important;
    height: 100vh !important;
    overflow-y: auto !important;
    z-index: 9990 !important;
    background: var(--bs-body-bg, #fff);
    box-shadow: -4px 0 24px rgba(0,0,0,.18);
}

/* ========================================
   IBMenuEditor — Drag & Drop
   ======================================== */

/* Container sortável: min-height para aceitar drops em grupos vazios */
.ibmenu-sortable {
    min-height: 30px;
    position: relative;
}

.menu-sort-ph,
.menu-sortable-placeholder {
    background: #e8f4fd !important;
    border: 2px dashed #4a90d9 !important;
    border-radius: 4px !important;
    visibility: visible !important;
    display: block !important;
    min-height: 38px;
}

.menu-drag-handle {
    cursor: grab !important;
    cursor: -webkit-grab !important;
    opacity: 0.55;
    transition: opacity .15s;
    user-select: none;
    -webkit-user-select: none;
}
.menu-drag-handle:active {
    cursor: grabbing !important;
    cursor: -webkit-grabbing !important;
}
.menu-drag-handle:hover { opacity: 1; }

/* Item sendo arrastado */
#ibmenu-editor .ui-sortable-helper {
    background: var(--bs-body-bg, #fff) !important;
    box-shadow: 0 4px 16px rgba(0,0,0,.18) !important;
    border-radius: 4px !important;
    opacity: 0.92 !important;
    z-index: 9999 !important;
    width: 100% !important;
}

/* Garante que os itens level-N ocupem largura total dentro do sortable */
.ibmenu-sortable > div[class*="level-"] {
    width: 100%;
    box-sizing: border-box;
}

/* ========================================
   Card do modal centralizado com largura máxima */
#form_login_portal.modal .modal-dialog {
    max-width: 460px !important;
    width: 100% !important;
    margin: 0 auto !important;
}

#form_login_portal.modal {
    width: 100% !important;
}

