.mobile-bottom-nav,
.fab-btn {
display: none;
}

@media (max-width: 991px) {
body {
background: #f5f6fa !important;
overflow-x: hidden;
}

.sidebar {
display: none !important;
}

.system-wrapper {
display: block !important;
}

.main-content {
margin-left: 0 !important;
width: 100% !important;
padding: 12px !important;
padding-bottom: 100px !important;
}

.topbar {
position: sticky;
top: 0;
z-index: 999;
background: #fff !important;
border-radius: 0 0 22px 22px !important;
padding: 16px !important;
margin: -12px -12px 16px -12px !important;
box-shadow: 0 6px 20px rgba(0,0,0,.08) !important;
}

.page-card,
.card,
.card-resumo,
.finance-card {
border-radius: 22px !important;
box-shadow: 0 6px 20px rgba(0,0,0,.07) !important;
border: none !important;
}

.btn,
.form-control,
.form-select {
min-height: 48px !important;
border-radius: 16px !important;
font-size: 16px !important;
}

.mobile-bottom-nav {
position: fixed;
left: 10px;
right: 10px;
bottom: 10px;
height: 70px;
background: #fff;
display: flex !important;
justify-content: space-around;
align-items: center;
border-radius: 24px;
box-shadow: 0 -4px 24px rgba(0,0,0,.18);
z-index: 99999;
}

.mobile-bottom-nav a {
flex: 1;
text-decoration: none;
color: #6b7280;
font-size: 11px;
text-align: center;
font-weight: 700;
}

.mobile-bottom-nav i {
display: block;
font-size: 20px;
margin-bottom: 4px;
}

.fab-btn {
position: fixed;
right: 20px;
bottom: 92px;
width: 58px;
height: 58px;
background: var(--cor-primaria);
color: #fff !important;
border-radius: 50%;
display: flex !important;
align-items: center;
justify-content: center;
font-size: 24px;
box-shadow: 0 8px 24px rgba(0,0,0,.25);
z-index: 99999;
text-decoration: none;
}
}

@media (max-width: 768px) {
.table-responsive {
overflow: visible !important;
}

table.mobile-card-table {
min-width: 100% !important;
width: 100% !important;
border-collapse: separate !important;
border-spacing: 0 !important;
}

table.mobile-card-table thead {
display: none !important;
}

table.mobile-card-table,
table.mobile-card-table tbody,
table.mobile-card-table tr,
table.mobile-card-table td {
display: block !important;
width: 100% !important;
}

table.mobile-card-table tbody tr {
background: #fff !important;
border-radius: 20px !important;
padding: 16px !important;
margin-bottom: 16px !important;
box-shadow: 0 6px 18px rgba(0,0,0,.08) !important;
border: 1px solid #eef0f4 !important;
}

table.mobile-card-table tbody td {
display: flex !important;
justify-content: space-between !important;
gap: 14px !important;
padding: 8px 0 !important;
border: none !important;
background: transparent !important;
white-space: normal !important;
text-align: right !important;
font-size: 15px !important;
}

table.mobile-card-table tbody td::before {
content: attr(data-label);
flex: 0 0 100px;
text-align: left;
font-weight: 800;
color: #6b7280;
}

table.mobile-card-table tbody td:last-child {
justify-content: flex-end !important;
border-top: 1px solid #eef0f4 !important;
padding-top: 14px !important;
margin-top: 10px !important;
}

table.mobile-card-table tbody td:last-child::before {
display: none !important;
}

table.mobile-card-table .btn {
width: 46px !important;
height: 46px !important;
min-height: 46px !important;
border-radius: 14px !important;
padding: 0 !important;
}

#tabelaItens {
min-width: 100% !important;
}

#tabelaItens,
#tabelaItens tbody,
#tabelaItens tr,
#tabelaItens td {
display: block !important;
width: 100% !important;
}

#tabelaItens thead {
display: none !important;
}

#tabelaItens tbody tr {
background: #fff !important;
border-radius: 20px !important;
padding: 16px !important;
margin-bottom: 16px !important;
box-shadow: 0 6px 18px rgba(0,0,0,.08) !important;
}

#tabelaItens td {
border: none !important;
padding: 8px 0 !important;
background: transparent !important;
}

#tabelaItens td:nth-child(1)::before { content: "Descrição"; }
#tabelaItens td:nth-child(2)::before { content: "Tipo"; }
#tabelaItens td:nth-child(3)::before { content: "Quantidade"; }
#tabelaItens td:nth-child(4)::before { content: "Valor unitário"; }
#tabelaItens td:nth-child(5)::before { content: "Total"; }

#tabelaItens td::before {
display: block;
font-weight: 800;
margin-bottom: 6px;
color: #6b7280;
}

#tabelaItens td:nth-child(6)::before {
display: none;
}
}

/* ===== AJUSTE BOTÃO SAIR MOBILE ===== */

.mobile-slide-menu {
    display: flex;
    flex-direction: column;
    height: 100vh;
    overflow-y: auto;
    padding-bottom: 80px;
}

/* EMPURRA O SAIR PRA BAIXO */
.mobile-slide-menu .logout {
    margin-top: auto;
}