.miu-container, .miu-container * { box-sizing: border-box; }
.miu-container { display: flex; flex-direction: column; gap: 24px; margin: 24px 0; font-size: 13px; color: #333; }

#miu-mapa { width: 100%; height: 450px; background: #fff; border: 1px solid #e0e8eb; border-radius: 12px; box-shadow: 0 4px 24px rgba(0, 0, 0, .08); z-index: 1; }
.miu-tabela-container { overflow-x: auto; background: #fff; border: 1px solid #e0e8eb; border-radius: 12px; box-shadow: 0 4px 24px rgba(0, 0, 0, .08); }

#miu-tabela { width: 100%; min-width: 800px; border-collapse: collapse; background: #fff; text-align: left; }
#miu-tabela th, #miu-tabela td { padding: 16px 20px; border-bottom: 1px solid #e0e8eb; vertical-align: middle; font-size: 14px; }
#miu-tabela th:nth-child(2), #miu-tabela td:nth-child(2) { white-space: nowrap; text-align: right; }
#miu-tabela th:nth-child(3), #miu-tabela td:nth-child(3),
#miu-tabela th:nth-child(4), #miu-tabela td:nth-child(4),
#miu-tabela th:nth-child(5), #miu-tabela td:nth-child(5) { white-space: nowrap; text-align: center; }

#miu-tabela th { background: #f6f8f9; font-weight: 700; text-transform: uppercase; letter-spacing: 0.3px; color: #444; position: relative; transition: background-color 0.2s; }
#miu-tabela th:first-child { border-top-left-radius: 12px; }
#miu-tabela th:last-child { border-top-right-radius: 12px; }
#miu-tabela th:hover { background: #e2e8eb; }

/* Reset de Botão */
#miu-tabela th button { background: transparent !important; border: none !important; padding: 0 !important; margin: 0 !important; font-family: inherit; font-size: inherit; font-weight: inherit; color: inherit; cursor: pointer; width: 100%; text-align: inherit; outline: none; box-shadow: none !important; }
#miu-tabela th button:hover, #miu-tabela th button:focus { color: #0d6efd; }

#miu-tabela tbody tr { cursor: pointer; transition: background-color 0.2s ease, border-left 0.2s ease; border-left: 4px solid transparent; }
#miu-tabela tbody tr:hover { background: #fafbfc; }
#miu-tabela tbody tr:last-child td { border-bottom: none; }
#miu-tabela tbody tr.ativo { background-color: #f0f7ff; border-left: 4px solid #0d6efd; }

.miu-badge { padding: 6px 10px; }

#miu-tabela th::after { content: '↕'; position: absolute; right: 8px; top: 50%; transform: translateY(-50%); color: #cbd5e1; font-size: 14px; pointer-events: none;}
#miu-tabela th.sort-asc::after { content: '↑'; color: #0d6efd; font-weight: bold; }
#miu-tabela th.sort-desc::after { content: '↓'; color: #0d6efd; font-weight: bold; }

/* Mobile */
@media (max-width: 768px) {
    .miu-tabela-container { background: transparent; border: none; box-shadow: none; overflow: visible; }
    #miu-tabela, #miu-tabela tbody { display: block; width: 100%; min-width: 0; }
    #miu-tabela thead { display: none; }
    #miu-tabela tbody tr { display: flex; flex-direction: column; background: #fff; border: 1px solid #e0e8eb; border-radius: 12px; box-shadow: 0 4px 16px rgba(0, 0, 0, .06); margin-bottom: 20px; overflow: hidden; }
    
    #miu-tabela td { display: block; border: none !important; padding: 10px 20px; text-align: left !important; white-space: normal !important; }
    #miu-tabela td:nth-child(1) { background: #f6f8f9; border-bottom: 1px solid #e0e8eb !important; padding: 14px 20px; }
    #miu-tabela td:nth-child(2) { padding-top: 18px; font-size: 16px; color: #0d6efd; font-weight: bold; }
    #miu-tabela td:nth-child(5) { padding-bottom: 20px; }

    #miu-tabela td:nth-child(2)::before { content: "Área (m²): "; font-weight: 700; color: #111; font-size: 14px; }
    #miu-tabela td:nth-child(3)::before { content: "Localização: "; font-weight: 700; color: #111; }
    #miu-tabela td:nth-child(4)::before { content: "Proprietário: "; font-weight: 700; color: #111; }
    #miu-tabela td:nth-child(5)::before { content: "Regime de Uso: "; font-weight: 700; color: #111; margin-right: 8px; }
}
